Forskare från ETH Zürich har upptäckt att stora språkmodeller (LLM) bara behöver använda en liten del av sina nervceller för individuella slutsatser. Deras nya metod lovar att få LLM att köra mycket snabbare.
För att börja förstå hur de lyckades snabba upp AI-modellerna måste vi få en grov uppfattning om några av de tekniska saker som utgör en AI-språkmodell.
AI-modeller som GPT eller Llama består av feedforward-nätverk, en typ av artificiella neurala nätverk.
Feedforward-nätverk (FF) är vanligtvis organiserade i lager, där varje lager av neuroner får input från det föregående lagret och skickar sin output till nästa lager.
Detta innebär tät matrismultiplikation (DMM) som kräver att varje neuron i FF utför beräkningar på alla ingångar från det föregående lagret. Och det är därför Nvidia säljer så många av sina GPU:er eftersom den här processen kräver mycket processorkraft.
Forskarna använder Fast Feedforward Networks (FFF) för att göra denna process mycket snabbare. Ett FFF tar varje lager av neuroner, delar upp det i block och väljer sedan endast de mest relevanta blocken baserat på indata. Den här processen är detsamma som att utföra villkorlig matrismultiplikation (CMM).
Det innebär att i stället för att alla neuroner i ett lager deltar i beräkningen, är det bara en mycket liten del som deltar.
Tänk på det som att sortera en hög med post för att hitta ett brev som är avsett för dig. Istället för att läsa namn och adress på varje enskilt brev kan du först sortera dem efter postnummer och sedan bara fokusera på dem som gäller ditt område.
På samma sätt identifierar FFF bara de få nervceller som krävs för varje beräkning, vilket innebär att endast en bråkdel av bearbetningen krävs jämfört med traditionella FF.
Hur mycket snabbare?
Forskarna testade sin metod på en variant av Googles BERT-modell som de kallade UltraFastBERT. UltraFastBERT består av 4095 neuroner men engagerar selektivt bara 12 neuroner för varje lagerinferens.
Detta innebär att UltraFastBERT kräver att cirka 0,03% av dess nervceller är involverade i bearbetningen under inferens medan vanliga BERT skulle behöva 100% av sina nervceller involverade i beräkningen.
Teoretiskt sett innebär detta att UltraFastBERT skulle vara 341 gånger snabbare än BERT eller GPT-3.
Varför säger vi "teoretiskt" när forskarna försäkrar oss om att deras metod fungerar? För att de var tvungna att skapa en mjukvarulösning för att få sin FFF att fungera med BERT och bara uppnådde en 78-faldig hastighetsförbättring under verkliga tester.
Det är en hemlighet
I forskningsrapporten förklaras att "tät matrismultiplikation är den mest optimerade matematiska operationen i databehandlingens historia. En enorm ansträngning har lagts ned på att utforma minnen, chip, instruktionsuppsättningar och programvarurutiner som utför den så snabbt som möjligt. Många av dessa framsteg har... hållits konfidentiella och exponerats för slutanvändaren endast genom kraftfulla men restriktiva programmeringsgränssnitt."
I grund och botten säger de att ingenjörerna som räknade ut de mest effektiva sätten att göra bearbetningen av den matematik som krävs för traditionella FF-nätverk håller sin programvara och algoritmer på låg nivå hemliga och inte låter dig titta på deras kod.
Om hjärnorna bakom designen av Intels eller Nvidias GPU:er möjliggjorde kodåtkomst på låg nivå för att implementera FFF-nätverk i AI-modeller, skulle den 341-faldiga hastighetsförbättringen kunna bli verklighet.
Men kommer de att göra det? Om du kunde konstruera dina GPU:er så att folk kunde köpa 99,7% färre av dem för att göra samma mängd bearbetning, skulle du göra det? Ekonomin kommer att ha ett visst inflytande på detta, men FFF-nätverk kan utgöra nästa stora steg inom AI.