Zephyrnet-logo

Hoe 'Grok'-gegevens door machines? | Quanta-tijdschrift

Datum:

Introductie

Ondanks al hun briljantheid blijven kunstmatige neurale netwerken even ondoorgrondelijk als altijd. Naarmate deze netwerken groter worden, exploderen hun capaciteiten, maar het ontcijferen van hun innerlijke werking is altijd vrijwel onmogelijk geweest. Onderzoekers zijn voortdurend op zoek naar inzichten die ze in deze modellen kunnen vinden.

Een paar jaar geleden ontdekten ze een nieuwe.

In januari 2022 hebben onderzoekers van OpenAI, het bedrijf achter ChatGPT, gerapporteerd dat deze systemen, wanneer ze per ongeluk veel langer dan normaal op gegevens mochten knabbelen, unieke manieren ontwikkelden om problemen op te lossen. Wanneer ingenieurs machine learning-modellen bouwen op basis van neurale netwerken – samengesteld uit rekeneenheden die kunstmatige neuronen worden genoemd – hebben ze doorgaans de neiging om de training op een bepaald punt te stoppen, het zogenaamde overfitting-regime. Dit is het moment waarop het netwerk feitelijk zijn trainingsgegevens begint te onthouden en vaak niet zal generaliseren naar nieuwe, onzichtbare informatie. Maar toen het OpenAI-team per ongeluk een klein netwerk ver voorbij dit punt trainde, leek het een begrip van het probleem te ontwikkelen dat verder ging dan alleen het onthouden: het kon plotseling alle testgegevens overtreffen.

De onderzoekers noemden het fenomeen ‘grokking’, een term die door sciencefictionauteur Robert A. Heinlein werd bedacht om te betekenen dat je iets ‘zo grondig begrijpt dat de waarnemer onderdeel wordt van het proces dat wordt waargenomen’. Het overtrainde neurale netwerk, ontworpen om bepaalde wiskundige bewerkingen uit te voeren, had de algemene structuur van de getallen geleerd en het resultaat geïnternaliseerd. Het was de oplossing geworden.

“Dit [was] erg spannend en tot nadenken stemmend,” zei Michail Belkin van de Universiteit van Californië, San Diego, die de theoretische en empirische eigenschappen van neurale netwerken bestudeert. “Het heeft veel vervolgwerk opgeleverd.”

Anderen hebben de resultaten zelfs gerepliceerd en zelfs aan reverse-engineering onderworpen. De meest recente artikelen verduidelijkten niet alleen wat deze neurale netwerken doen als ze in beweging zijn, maar boden ook een nieuwe lens waardoor ze hun ingewanden konden onderzoeken. "De Grokking-opstelling is als een goed modelorganisme voor het begrijpen van veel verschillende aspecten van deep learning", zegt hij Erik Michaud van het Massachusetts Institute of Technology.

Kijken in dit organisme is soms behoorlijk onthullend. “Je kunt niet alleen een mooie structuur vinden, maar die mooie structuur is ook belangrijk om te begrijpen wat er intern aan de hand is”, zegt hij Neel Nanda, nu bij Google DeepMind in Londen.

Voorbij limieten

Fundamenteel lijkt de taak van een machine learning-model eenvoudig: een gegeven input omzetten in een gewenste output. Het is de taak van het leeralgoritme om te zoeken naar de best mogelijke functie die dat kan doen. Elk gegeven model heeft slechts toegang tot een beperkte reeks functies, en die reeks wordt vaak bepaald door het aantal parameters in het model, wat in het geval van neurale netwerken ongeveer gelijk is aan het aantal verbindingen tussen kunstmatige neuronen.

Introductie

Naarmate een netwerk traint, heeft het de neiging complexere functies te leren, en de discrepantie tussen de verwachte output en de werkelijke output begint te dalen voor trainingsgegevens. Sterker nog, deze discrepantie, bekend als verlies, begint ook te dalen voor testgegevens, wat nieuwe gegevens zijn die niet in de training worden gebruikt. Maar op een gegeven moment begint het model overmatig te passen, en terwijl het verlies aan trainingsgegevens blijft dalen, begint het verlies aan testgegevens te stijgen. Meestal stoppen onderzoekers dan met het trainen van het netwerk.

Dat was de heersende wijsheid toen het team van OpenAI begon te onderzoeken hoe een neuraal netwerk wiskunde kon doen. Ze gebruikten een kleine transformator – een netwerkarchitectuur die onlangs een revolutie teweeg heeft gebracht in grote taalmodellen – om verschillende soorten modulaire rekenkunde uit te voeren, waarbij je werkt met een beperkt aantal getallen die op zichzelf terugkomen. Module 12 kan bijvoorbeeld op een wijzerplaat worden uitgevoerd: 11 + 2 = 1. Het team liet de netwerkvoorbeelden zien van het optellen van twee getallen, a en b, om een ​​output te produceren, c, in modulo 97 (equivalent aan een wijzerplaat met 97 cijfers). Vervolgens testten ze de transformator op ongeziene combinaties van a en b om te zien of het correct kon voorspellen c.

Zoals verwacht, toen het netwerk in het overfitting-regime terechtkwam, was het verlies op de trainingsgegevens bijna nul (het begon te onthouden wat het had gezien) en begon het verlies op de testgegevens te stijgen. Het was niet generaliserend. “En op een dag hadden we geluk”, zegt teamleider Alethea Power. spreken in september 2022 op een conferentie in San Francisco. ‘En met geluk bedoel ik vergeetachtig.’

Het teamlid dat het netwerk trainde, ging op vakantie en vergat de training stop te zetten. Terwijl deze versie van het netwerk bleef trainen, werd het plotseling accuraat op basis van onzichtbare gegevens. Automatische tests onthulden deze onverwachte nauwkeurigheid bij de rest van het team, en ze beseften al snel dat het netwerk slimme manieren had gevonden om de cijfers te ordenen. a en b. Intern vertegenwoordigt het netwerk de getallen in een hoogdimensionale ruimte, maar toen de onderzoekers deze getallen naar de 2D-ruimte projecteerden en in kaart brachten, vormden de getallen een cirkel.

Dit was verbazingwekkend. Het team heeft het model nooit verteld dat het modulo 97-wiskunde deed, of zelfs maar wat modulo betekende; ze lieten het alleen rekenvoorbeelden zien. Het model leek op een diepere, analytische oplossing te zijn gestuit: een vergelijking die generaliseerde naar alle combinaties van a en b, zelfs buiten de trainingsgegevens. Het netwerk was kapot en de nauwkeurigheid van de testgegevens schoot omhoog naar 100%. “Dit is raar”, zei Power tegen haar publiek.

Het team verifieerde de resultaten met behulp van verschillende taken en verschillende netwerken. De ontdekking hield stand.

Van klokken en pizza's

Maar wat was de vergelijking die het netwerk had gevonden? Het OpenAI-artikel zei het niet, maar het resultaat trok Nanda's aandacht. “Een van de belangrijkste mysteries en vervelende dingen van neurale netwerken is dat ze heel goed zijn in wat ze doen, maar dat we standaard geen idee hebben hoe ze werken”, zegt Nanda, wiens werk zich richt op het reverse-engineeren van een getrainde computer. netwerk om erachter te komen welke algoritmen het heeft geleerd.

Nanda was gefascineerd door de OpenAI-ontdekking en hij besloot een neuraal netwerk uit elkaar te halen dat kapot was gegaan. Hij ontwierp een nog eenvoudigere versie van het OpenAI-neurale netwerk, zodat hij de parameters van het model nauwkeurig kon onderzoeken terwijl het modulaire rekenkunde leerde. Hij zag hetzelfde gedrag: overfitting die plaats maakte voor generalisatie en een abrupte verbetering van de testnauwkeurigheid. Zijn netwerk was ook bezig met het rangschikken van getallen in een cirkel. Het kostte wat moeite, maar Nanda kwam er uiteindelijk achter waarom.

Hoewel het de cijfers op een cirkel weergaf, telde het netwerk niet simpelweg cijfers af zoals een kleuter naar een klok kijkt: het voerde een aantal geavanceerde wiskundige manipulaties uit. Door de waarden van de netwerkparameters te bestuderen, Nanda en collega's onthulden het dat het de kloknummers optelde door er ‘discrete Fourier-transformaties’ op uit te voeren – de getallen te transformeren met behulp van trigonometrische functies zoals sinussen en cosinussen en deze waarden vervolgens te manipuleren met behulp van trigonometrische identiteiten om tot de oplossing te komen. Tenminste, dit was wat zijn specifieke netwerk deed.

Toen een team bij MIT opgevolgd Uit Nanda's werk bleek dat de krakende neurale netwerken dit 'klok'-algoritme niet altijd ontdekken. Soms vinden de netwerken in plaats daarvan wat de onderzoekers het ‘pizza’-algoritme noemen. Deze aanpak stelt zich een pizza voor die in plakjes is verdeeld en op volgorde is genummerd. Om twee getallen toe te voegen, stel je voor dat je pijlen tekent vanuit het midden van de pizza naar de betreffende getallen, en vervolgens de lijn berekent die de hoek doorsnijdt die wordt gevormd door de eerste twee pijlen. Deze lijn loopt door het midden van een stuk pizza: het nummer van het stuk pizza is de som van de twee cijfers. Deze bewerkingen kunnen ook worden opgeschreven in termen van trigonometrische en algebraïsche manipulaties van de sinussen en cosinussen van a en b, en ze zijn theoretisch net zo nauwkeurig als de klokbenadering.

Introductie

“Zowel [de] klok- als pizza-algoritmen hebben deze cirkelvormige representatie,” zei Ziming Liu, een lid van het MIT-team. ‘Maar … de manier waarop ze deze sinussen en cosinussen benutten, is verschillend. Daarom noemen we ze verschillende algoritmen.”

En dat was nog niet alles. Nadat ze talloze netwerken hadden getraind in modulo-wiskunde, ontdekten Liu en collega's dat ongeveer 40% van de door deze netwerken ontdekte algoritmen varianten waren van de pizza- of klokalgoritmen. Het team heeft de rest van de tijd niet kunnen ontcijferen wat de netwerken doen. Voor de pizza- en klokalgoritmen “komt het gewoon voor dat er iets wordt gevonden dat wij mensen kunnen interpreteren”, zei Liu.

En welk algoritme een netwerk ook leert als het een probleem oplost, het is nog krachtiger in het generaliseren dan onderzoekers vermoedden. Toen een team van de Universiteit van Maryland gevoed door een eenvoudig neuraal netwerk trainingsgegevens met willekeurige fouten, gedroeg het netwerk zich aanvankelijk zoals verwacht: overfitte de trainingsgegevens, met fouten en al, en presteerde slecht op niet-corrupte testgegevens. Maar toen het netwerk eenmaal op gang kwam en de testvragen correct begon te beantwoorden, kon het zelfs voor de verkeerde inzendingen correcte antwoorden produceren, de uit het hoofd geleerde onjuiste antwoorden vergeten en zelfs generaliseren naar de trainingsgegevens. “De grokking-taak is eigenlijk behoorlijk robuust tegen dit soort corrupties,” zei Darshil Doshi, een van de auteurs van het artikel.

Strijd om controle

Als gevolg hiervan beginnen onderzoekers nu het proces te begrijpen dat leidt tot een netwerk dat zijn gegevens verprutst. Nanda ziet de schijnbare uiterlijke plotselingheid van grokking als het resultaat van een geleidelijke interne overgang van memoriseren naar generaliseren, waarbij twee verschillende algoritmen binnen het neurale netwerk worden gebruikt. Wanneer een netwerk begint te leren, zegt hij, zoekt het eerst het algoritme uit dat gemakkelijker te onthouden is; Hoewel het algoritme eenvoudiger is, vereist het echter aanzienlijke hulpbronnen, omdat het netwerk elk exemplaar van de trainingsgegevens moet onthouden. Maar zelfs tijdens het onthouden beginnen delen van het neurale netwerk circuits te vormen die de algemene oplossing implementeren. De twee algoritmen strijden om middelen tijdens de training, maar generalisatie wint uiteindelijk als het netwerk wordt getraind met een extra ingrediënt dat regularisatie wordt genoemd.

“Regularisatie drijft de oplossing langzaam richting de generalisatie-oplossing”, zegt Liu. Dit is een proces dat de functionele capaciteit van het model vermindert: de complexiteit van de functie die het model kan leren. Terwijl regularisatie de complexiteit van het model terugdringt, zegeviert het generaliserende algoritme, dat minder complex is, uiteindelijk. “Generalisatie is eenvoudiger voor hetzelfde prestatieniveau”, zegt Nanda. Ten slotte negeert het neurale netwerk het geheugenalgoritme.

Dus hoewel het vertraagde vermogen om te generaliseren plotseling lijkt op te duiken, leren de parameters van het netwerk gestaag het generaliserende algoritme aan. Pas als het netwerk zowel het generaliserende algoritme heeft geleerd als het memoriserende algoritme volledig heeft verwijderd, krijg je een probleem. “Het is mogelijk dat dingen die plotseling lijken zich onder de oppervlakte geleidelijk afspelen,” zei Nanda – een probleem dat ook naar voren is gekomen in ander machine learning-onderzoek.

Ondanks deze doorbraken is het belangrijk om te onthouden dat het onderzoek nog in de kinderschoenen staat. Tot nu toe hebben onderzoekers alleen extreem kleine netwerken bestudeerd, en het is niet duidelijk of deze bevindingen stand zullen houden bij grotere, krachtigere netwerken. Belkin waarschuwt ook dat modulaire rekenkunde “een druppel op de gloeiende plaat” is vergeleken met alle verschillende taken die door de hedendaagse neurale netwerken worden uitgevoerd. Het reverse-engineeren van de oplossing van een neuraal netwerk voor dergelijke wiskunde is misschien niet voldoende om de algemene principes te begrijpen die deze netwerken in de richting van generalisatie drijven. "Het is geweldig om de bomen te bestuderen", zei Belkin. “Maar we moeten ook het bos bestuderen.”

Niettemin heeft het vermogen om binnen deze netwerken te kijken en ze analytisch te begrijpen enorme implicaties. Voor de meesten van ons zijn Fourier-transformaties en het in tweeën delen van cirkelbogen een heel vreemde manier om modulo-optelling uit te voeren; menselijke neuronen denken gewoon niet zo. “Maar als je uit lineaire algebra bent opgebouwd, is het eigenlijk heel logisch om het op deze manier te doen”, zegt Nanda.

“Deze vreemde [kunstmatige] hersenen werken anders dan de onze,” zei hij. “[Ze] hebben hun eigen regels en structuur. We moeten leren denken hoe een neuraal netwerk denkt.”

spot_img

Laatste intelligentie

spot_img