Forskere fra ETH Zürich har funnet ut at store språkmodeller (Large Language Models, LLM) bare trenger å bruke en liten del av nevronene sine til individuelle slutninger. Den nye tilnærmingen deres lover å få LLM-er til å kjøre mye raskere.
For å forstå hvordan de har klart å øke hastigheten på AI-modeller, må vi få en grov oversikt over noen av de tekniske tingene som utgjør en AI-språkmodell.
AI-modeller som GPT eller Llama består av feedforward-nettverk, en type kunstig nevrale nettverk.
Feedforward-nettverk (FF) er vanligvis organisert i lag, der hvert lag med nevroner mottar input fra det forrige laget og sender output til neste lag.
Dette innebærer tett matrisemultiplikasjon (DMM), som krever at hvert nevron i FF utfører beregninger på alle inndataene fra det forrige laget. Og dette er grunnen til at Nvidia selger så mange av sine GPU-er fordi denne prosessen krever mye prosessorkraft.
Forskerne brukte Fast Feedforward Networks (FFF) for å gjøre denne prosessen mye raskere. Et FFF tar hvert lag med nevroner, deler det opp i blokker og velger deretter bare de mest relevante blokkene basert på inndataene. Denne prosessen tilsvarer å utføre betinget matrisemultiplikasjon (CMM).
Det betyr at i stedet for at alle nevronene i et lag er involvert i beregningen, er det bare en svært liten del som er involvert.
Tenk på det som å sortere en haug med post for å finne et brev som er ment for deg. I stedet for å lese navn og adresse på hvert eneste brev, kan du først sortere dem etter postnummer og deretter bare fokusere på dem som gjelder ditt område.
På samme måte identifiserer FFF-er bare de få nevronene som kreves for hver beregning, noe som resulterer i bare en brøkdel av prosesseringen som kreves sammenlignet med tradisjonelle FF-er.
Hvor mye raskere?
Forskerne testet metoden sin på en variant av Googles BERT-modell som de kalte UltraFastBERT. UltraFastBERT består av 4095 nevroner, men engasjerer selektivt bare 12 nevroner for hver laginferens.
Dette betyr at UltraFastBERT krever at rundt 0,03% av nevronene er involvert i prosesseringen under inferens, mens vanlig BERT trenger 100% av nevronene for å utføre beregningen.
I teorien betyr dette at UltraFastBERT vil være 341 ganger raskere enn BERT eller GPT-3.
Hvorfor sier vi "teoretisk" når forskerne forsikrer oss om at metoden deres fungerer? Fordi de måtte lage en programvareløsning for å få FFF til å fungere med BERT, og bare oppnådde en 78 ganger så stor hastighetsforbedring under testing i virkeligheten.
Det er en hemmelighet
I forskningsrapporten forklares det at "tett matrisemultiplikasjon er den mest optimaliserte matematiske operasjonen i databehandlingens historie. Det er lagt ned en enorm innsats i å utforme minner, brikker, instruksjonssett og programvarerutiner som kan utføre den så raskt som mulig. Mange av disse fremskrittene har vært... hemmeligholdt og kun eksponert for sluttbrukeren gjennom kraftige, men restriktive programmeringsgrensesnitt."
I bunn og grunn sier de at ingeniørene som har funnet ut de mest effektive måtene å behandle matematikken som kreves for tradisjonelle FF-nettverk, holder programvaren og algoritmene på lavt nivå hemmelig og ikke vil la deg se på koden deres.
Hvis hjernene bak designen av Intels eller Nvidias GPU-er gjorde det mulig å få tilgang til lavnivåkode for å implementere FFF-nettverk i AI-modeller, kunne hastighetsforbedringen på 341x bli en realitet.
Men vil de gjøre det? Hvis du kunne konstruere GPU-ene dine slik at folk kunne kjøpe 99,7% færre av dem for å gjøre samme mengde prosessering, ville du gjort det? Økonomien vil ha noe å si her, men FFF-nettverk kan være det neste store spranget innen kunstig intelligens.