Förstå neurala nätverk genom glesa kretsar
Vi har tränat modellerna att tänka i enklare, mer spårbara steg – så att vi bättre kan förstå hur de fungerar.
Neurala nätverk driver dagens mest kapabla AI-system, men de är fortfarande svåra att förstå. Vi skriver inte dessa modeller med uttryckliga, steg-för-steg-instruktioner. Istället lär de sig genom att justera miljarder interna kopplingar, eller ”vikter”, tills de behärskar en uppgift. Vi utformar reglerna för träningen, men inte de specifika beteenden som uppstår, och resultatet är ett tätt nätverk av kopplingar som ingen människa lätt kan tyda.
I takt med att AI-system blir mer kapabla och får en reell inverkan på beslut inom vetenskap, utbildning och hälso- och sjukvård, är det viktigt att förstå hur de fungerar. Tolkningsbarhet avser metoder som hjälper oss att förstå varför en modell har genererat ett visst resultat. Det finns många sätt att uppnå detta.
Till exempel uppmuntras resonemangsmodeller att förklara sitt arbete på vägen mot ett slutgiltigt svar. Tankekedjans tolkbarhet utnyttjar dessa förklaringar för att övervaka modellens beteende. Detta är omedelbart användbart: de nuvarande resonemangsmodellernas tankekedjor verkar vara informativa när det gäller beteenden som bedrägeri. Men att förlita sig helt på den här egenskapen är ett rätt svag strategi, och förr eller senare riskerar den att fallera.
Å andra sidan syftar mekanistisk tolkbarhet, som är fokus för detta arbete, till att helt och hållet bakåtkonstruera en modells beräkningar. Hittills har det varit mindre direkt användbart, men i princip skulle det kunna ge en mer fullständig förklaring av modellens beteende. Genom att försöka förklara modellens beteende på allra minsta detaljnivå kan mekanistisk tolkning luta sig på färre antaganden och därmed ge oss större trygghet i slutsatserna. Men vägen från detaljer på låg nivå till förklaringar av komplexa beteenden är mycket längre och mer utmanande.
Tolkbarhet stöder flera centrala mål, till exempel att möjliggöra bättre övervakning och att ge tidiga varningssignaler om osäkert eller strategiskt felriktat beteende. Det kompletterar också våra andra säkerhetsåtgärder, såsom skalbar övervakning, motståndsträning och red-teaming.
I det här arbetet visar vi att vi ofta kan träna modeller på sätt som gör dem lättare att tolka. Vi ser vårt arbete som ett lovande komplement till post-hoc-analys av täta nätverk.
Det här är ett väldigt djärvt åtagande; vägen från vårt nuvarande arbete till en fullständig förståelse av de mest avancerade modellernas komplexa beteenden är lång. Ändå finner vi att för enkla beteenden innehåller glesa modeller som tränats med vår metod små, åtskilda kretsar som är både begripliga och tillräckliga för att utföra beteendet. Detta tyder på att det kan finnas en lätthanterlig väg mot träning av större system vars mekanismer vi kan förstå.
Tidigare arbete med mekanistisk tolkningsbarhet har börjat med täta, trassliga nätverk och försökt att reda ut dem. I dessa nätverk är varje enskild neuron kopplad till tusentals andra neuroner. De flesta nervceller verkar utföra många olika funktioner, vilket gör det till synes omöjligt att förstå.
Men vad händer om vi tränar okomplicerade neurala nätverk, med många fler neuroner, men där varje neuron bara har några dussin kopplingar? Då kanske det resulterande nätverket blir enklare och lättare att förstå. Det här är den centrala forskningssatsningen i vårt arbete.
Med denna princip i åtanke tränade vi språkmodeller med en arkitektur som var mycket lik befintliga språkmodeller som GPT‑2, med en liten modifiering: vi tvingade den stora majoriteten av modellens vikter att vara nollor. Detta begränsade modellen till att använda bara ett fåtal av de möjliga kopplingarna mellan sina neuroner. Detta är en enkel förändring som vi menar i hög grad rätar ut trådarna i modellens interna beräkningar.
I normala täta neurala nätverk är varje neuron kopplad till alla neuroner i nästa lager. I våra glesa modeller är varje neuron endast kopplad till ett fåtal neuroner i nästa lager. Vi hoppas att detta gör det lättare att förstå neuronerna och nätverket som helhet.
Vi vill mäta i vilken utsträckning beräkningarna i våra glesa modeller är frikopplade och tydligt åtskilda. Vi undersökte olika enkla modellbeteenden och kontrollerade om vi kunde ringa in de delar av modellen som låg bakom varje enskilt beteende – det vi kallar kretsar.
Vi har handplockat en uppsättning enkla algoritmiska uppgifter. För var och en av dem beskärde vi modellen till den minsta krets som fortfarande kan utföra uppgiften och undersökte hur enkel den kretsen är. (För mer information, se vår rapport(öppnas i ett nytt fönster).) Vi upptäckte att genom att träna större och glesare modeller kunde vi producera allt mer kapabla modeller med allt enklare kretsar.
Vi visar tolkbarhet i förhållande till kapacitet för olika modeller (det nedre vänstra hörnet är bättre). För en given storlek på en gles modell innebär högre grad av gleshet – att fler vikter sätts till noll – lägre kapacitet men högre tolkbarhet. En ökning av modellstorleken förskjuter denna gräns utåt, vilket tyder på att vi kan bygga större modeller som är både kapabla och tolkningsbara.
Ett konkret exempel är en uppgift där en modell som tränats på Python-kod ska komplettera en sträng med rätt typ av citattecken. I Python måste ”hello” avslutas med ett enkelt citattecken och ”hello” måste avslutas med ett dubbelt citattecken. Modellen kan lösa detta genom att komma ihåg vilken citattyp som öppnade strängen och återge den i slutet.
Våra mest tolkningsbara modeller verkar innehålla frikopplade kretsar som implementerar exakt den algoritmen.

Exempel på en krets i en gles transformator som förutsäger om en sträng ska avslutas med ett enkelt eller dubbelt citattecken. Denna krets använder bara fem residual-kanaler (de vertikala grå linjerna), två MLP-neuroner i lager 0 samt en query-key-kanal och en value-kanal i lager 10. Modellen (1) kodar enkla citattecken i en residual-kanal och dubbla citattecken i en annan, (2) använder ett MLP-lager för att omvandla detta till en kanal som upptäcker vilket citattecken som helst och en annan som skiljer på enkla och dubbla, (3) använder en attention-operation för att ignorera mellanliggande token, hitta det föregående citattecknet och kopiera dess typ till den sista token och (4) förutsäger det matchande avslutande citattecknet.
I vår definition är de exakta anslutningarna som visas ovan tillräckliga för att utföra uppgiften – om vi tar bort resten av modellen fungerar den här lilla kretsen fortfarande. De är också nödvändiga – att radera dessa få kanter gör att modellen misslyckas.
Vi tittade också på några mer komplicerade beteenden. Våra kretsar för dessa beteenden (till exempel variabelbindning som visas nedan) är svårare att förklara fullständigt. Även då kan vi fortfarande uppnå relativt enkla delförklaringar som förutsäger modellens beteende.
Ett annat exempel på en krets, med mindre detaljer. När modellen ska avgöra typen på variabeln current kopierar en attention-operation variabelnamnet till set()-token vid definitionen, och en senare operation kopierar typen från set()-token till ett senare användningstillfälle av variabeln, vilket gör att modellen kan förutsäga rätt nästa token.
Detta arbete är ett första steg mot ett större mål: att göra modellberäkningar lättare att förstå. Men det är fortfarande en lång väg kvar att gå. Våra glesa modeller är mycket mindre än frontier-modellerna, och stora delar av deras beräkningar förblir otydda.
Därefter hoppas vi kunna skala upp våra tekniker till större modeller och förklara mer av modellernas beteende. Genom att kartlägga de kretsmotiv som ligger till grund för mer avancerade resonemang i kapabla glesa modeller skulle vi kunna bygga upp en förståelse som hjälper oss att rikta våra undersökningar av de mest kraftfulla modellerna mer träffsäkert.
I syfte att komma runt ineffektiviteten i att träna glesa modeller ser vi två vägar framåt. En är att extrahera glesa kretsar från befintliga täta modeller, snarare än att träna glesa modeller från grunden. Täta modeller är i grunden mer effektiva att driftsätta än glesa modeller. Den andra vägen är att utveckla effektivare tekniker för att träna modeller för tolkningsbarhet, vilket kan vara lättare att implementera i produktionen.
Observera att våra resultat här inte garanterar att denna metod kommer att kunna tillämpas på mer kapabla system, men dessa tidiga resultat är lovande. Vårt mål är att steg för steg utöka hur stora delar av en modell vi på ett tillförlitligt sätt kan tolka, och att utveckla verktyg som gör framtida system enklare att analysera, felsöka och utvärdera.
Författare
Leo Gao, Achyuta Rajaram, Jacob Coxon, Soham V. Govande, Bowen Baker, Dan Mossing


