Logotip Zephyrnet

Kako stroji "grok" podatke? | Revija Quanta

Datum:

Predstavitev

Kljub vsemu svojemu sijaju ostajajo umetne nevronske mreže tako nedoumljive kot kdaj koli prej. Ko se ta omrežja povečajo, njihove sposobnosti eksplodirajo, vendar je bilo dešifriranje njihovega notranjega delovanja vedno skoraj nemogoče. Raziskovalci nenehno iščejo kakršen koli vpogled v te modele.

Pred nekaj leti so odkrili novo.

Januarja 2022 so raziskovalci OpenAI, podjetja, ki stoji za ChatGPT, poročali da so ti sistemi razvili edinstvene načine za reševanje problemov, ko jim je pomotoma dovolilo, da podatke žvečijo dlje kot običajno. Običajno, ko inženirji gradijo modele strojnega učenja iz nevronskih mrež – sestavljenih iz računskih enot, imenovanih umetni nevroni – ponavadi ustavijo usposabljanje na določeni točki, ki se imenuje režim prekomernega opremljanja. Takrat si omrežje v bistvu začne zapomniti svoje podatke o usposabljanju in se pogosto ne posplošuje na nove, nevidene informacije. Toda ko je ekipa OpenAI pomotoma usposobila majhno omrežje daleč od te točke, se je zdelo, da je razvilo razumevanje težave, ki je preseglo preprosto pomnjenje - nenadoma bi lahko premagalo vse testne podatke.

Raziskovalci so pojav poimenovali »grokking«, izraz, ki ga je skoval avtor znanstvene fantastike Robert A. Heinlein in pomeni razumevanje nečesa »tako temeljito, da opazovalec postane del opazovanega procesa«. Pretrenirana nevronska mreža, zasnovana za izvajanje določenih matematičnih operacij, se je naučila splošne strukture števil in ponotranjila rezultat. Zamajalo se je in postalo rešitev.

"To [je bilo] zelo razburljivo in spodbudno k razmišljanju," je dejal Mihail Belkin Univerze v Kaliforniji v San Diegu, ki preučuje teoretične in empirične lastnosti nevronskih mrež. "To je spodbudilo veliko nadaljnjega dela."

Dejansko so drugi posnemali rezultate in jih celo obdelali z obratnim inženiringom. Najnovejši dokumenti niso samo razjasnili, kaj te nevronske mreže počnejo, ko groknejo, ampak so tudi zagotovili novo lečo, skozi katero lahko preučujemo njihovo notranjost. "Nastavitev grokkinga je kot dober model organizma za razumevanje številnih različnih vidikov globokega učenja," je dejal Eric Michaud Massachusetts Institute of Technology.

Pogled v notranjost tega organizma je včasih precej razkrivajoč. "Ne samo, da lahko najdete čudovito strukturo, ampak je ta čudovita struktura pomembna za razumevanje, kaj se dogaja v notranjosti," je dejal Neel Nanda, zdaj pri Google DeepMind v Londonu.

Izven meja

Načeloma se delo modela strojnega učenja zdi preprosto: pretvorite dani vhod v želeni izhod. Naloga učnega algoritma je, da poišče najboljšo možno funkcijo, ki to zmore. Vsak dani model lahko dostopa le do omejenega nabora funkcij, ta nabor pa pogosto narekuje število parametrov v modelu, ki je v primeru nevronskih mrež približno enako številu povezav med umetnimi nevroni.

Predstavitev

Ko se omrežje usposablja, se nagiba k učenju bolj zapletenih funkcij, razlika med pričakovanim izhodom in dejanskim pa začne padati zaradi podatkov o usposabljanju. Še bolje, to neskladje, znano kot izguba, začne padati tudi pri testnih podatkih, ki so novi podatki, ki se ne uporabljajo pri usposabljanju. Toda na neki točki se model začne preveč prilagajati in medtem ko se izguba podatkov o usposabljanju še naprej zmanjšuje, začne izguba testnih podatkov naraščati. Torej običajno takrat raziskovalci prenehajo usposabljati mrežo.

To je bila prevladujoča modrost, ko je ekipa OpenAI začela raziskovati, kako lahko nevronska mreža izvaja matematiko. Uporabljali so majhno transformator — omrežna arhitektura, ki je nedavno revolucionirala velike jezikovne modele — za izvajanje različnih vrst modularne aritmetike, v kateri delate z omejenim naborom števil, ki se vrnejo sama po sebi. Modulo 12, na primer, lahko naredite na številčnici ure: 11 + 2 = 1. Ekipa je omrežju pokazala primere seštevanja dveh števil, a in b, ustvariti rezultat, c, v modulu 97 (enakovredno številčnici ure s 97 številkami). Nato so preizkusili transformator na nevidenih kombinacijah a in b da vidim, ali lahko pravilno napoveduje c.

Kot je bilo pričakovano, ko je omrežje prešlo v režim prekomernega opremljanja, se je izguba podatkov o usposabljanju približala ničli (začelo si je zapomniti, kar je videlo), izguba na testnih podatkih pa je začela naraščati. Ni šlo za posploševanje. "In potem se nam je nekega dne posrečilo," je povedala vodja ekipe Alethea Power, govori septembra 2022 na konferenci v San Franciscu. "In s srečo mislim na pozabljivost."

Član ekipe, ki je treniral mrežo, je šel na dopust in pozabil prekiniti trening. Ko se je ta različica omrežja še naprej usposabljala, je nenadoma postala natančna pri nevidnih podatkih. Samodejno testiranje je ostalim članom ekipe razkrilo to nepričakovano natančnost in kmalu so ugotovili, da je omrežje našlo pametne načine za urejanje številk. a in b. Notranje omrežje predstavlja številke v nekem visokodimenzionalnem prostoru, a ko so raziskovalci te številke projicirali v 2D prostor in jih preslikali, so številke oblikovale krog.

To je bilo osupljivo. Ekipa nikoli ni povedala modelu, da izvaja matematiko po modulu 97, ali celo, kaj modulo pomeni - pokazali so mu samo primere aritmetike. Zdelo se je, da je model naletel na neko globljo, analitično rešitev – enačbo, ki je posploševala na vse kombinacije a in b, tudi zunaj podatkov o usposabljanju. Omrežje se je pokvarilo in natančnost testnih podatkov je dosegla 100 %. "To je čudno," je povedala Power svojemu občinstvu.

Ekipa je preverila rezultate z uporabo različnih nalog in različnih omrežij. Odkritje je obdržalo.

Ure in pice

Toda kakšna je bila enačba, ki jo je našlo omrežje? Dokument OpenAI tega ni povedal, vendar je rezultat pritegnil Nandino pozornost. »Ena od glavnih skrivnosti in nadležnih stvari pri nevronskih mrežah je, da so zelo dobre v tem, kar počnejo, vendar privzeto nimamo pojma, kako delujejo,« je dejal Nanda, čigar delo se osredotoča na obratno inženirstvo usposobljenega omrežja, da bi ugotovili, katerih algoritmov se je naučilo.

Nanda je bil očaran nad odkritjem OpenAI in odločil se je, da bo razločil nevronsko mrežo, ki se je pokvarila. Zasnoval je še enostavnejšo različico nevronske mreže OpenAI, da je lahko natančno preučil parametre modela, ko se je naučil izvajati modularno aritmetiko. Videl je enako vedenje: prekomerno opremljanje, ki se je umaknilo posploševanju in nenadnemu izboljšanju natančnosti testa. Njegovo omrežje je tudi razporejalo številke v krogu. Potreboval je nekaj truda, toda Nanda je sčasoma ugotovil, zakaj.

Medtem ko je predstavljalo števila v krogu, omrežje ni preprosto odštevalo števk kot vrtec, ki gleda na uro: izvajalo je nekaj sofisticiranih matematičnih manipulacij. S preučevanjem vrednosti parametrov omrežja, Nanda in sodelavci so razkrili da je sešteval številke ure tako, da je na njih izvajal "diskretne Fourierove transformacije" - preoblikoval številke z uporabo trigonometričnih funkcij, kot so sinusi in kosinusi, in nato manipuliral te vrednosti z uporabo trigonometričnih identitet, da bi prišel do rešitve. Vsaj to je bilo tisto, kar je počela njegova posebna mreža.

Ko ekipa na MIT Sledi pri Nandinem delu so pokazali, da živčne mreže, ki se zapletajo, ne odkrijejo vedno tega algoritma »ure«. Včasih omrežja namesto tega najdejo, čemur raziskovalci pravijo algoritem »pice«. Ta pristop si predstavlja pico, razdeljeno na rezine in oštevilčene po vrstnem redu. Če želite sešteti dve števili, si predstavljajte, da narišete puščice od sredine pice do zadevnih števil, nato pa izračunate črto, ki razpolovi kot, ki ga sestavljata prvi dve puščici. Ta črta poteka skozi sredino neke rezine pice: Številka rezine je vsota obeh števil. Te operacije je mogoče zapisati tudi v smislu trigonometričnih in algebraičnih manipulacij sinusov in kosinusov a in bin so teoretično enako natančni kot pristop ure.

Predstavitev

"Algoritma za uro in pico imata to krožno predstavitev," je dejal Ziming Liu, član ekipe MIT. »Toda ... načini, kako te sinuse in kosinuse izkoriščajo, so različni. Zato jih imenujemo različni algoritmi.«

In to še ni bilo vse. Potem ko so številna omrežja usposobili za modulo matematiko, so Liu in njegovi sodelavci odkrili, da je bilo približno 40 % algoritmov, ki so jih odkrila ta omrežja, različic algoritmov za pico ali uro. Ekipa ni mogla razvozlati, kaj omrežja počnejo preostali čas. Pri algoritmih za pico in uro se "samo zgodi, da najde nekaj, kar si ljudje lahko razlagamo," je dejal Liu.

In ne glede na algoritem, ki se ga omrežje nauči, ko naleti na težavo, je pri posploševanju celo močnejši, kot so raziskovalci domnevali. Ko ekipa na Univerzi v Marylandu napajal preprosto nevronsko mrežo podatke o usposabljanju z naključnimi napakami, se je omrežje sprva obnašalo po pričakovanjih: preobremenitve podatkov o usposabljanju, napak in vsega ter slabo delovalo na nepoškodovanih preskusnih podatkih. Ko pa je omrežje enkrat zašlo in začelo pravilno odgovarjati na testna vprašanja, je lahko ustvarilo pravilne odgovore tudi za napačne vnose, pri čemer je pozabilo zapomniti nepravilne odgovore in posplošilo celo svoje podatke o usposabljanju. "Naloga grokkinga je pravzaprav precej robustna za te vrste korupcije," je dejal Darshil Doshi, eden od avtorjev prispevka.

Bitka za nadzor

Posledično raziskovalci zdaj začenjajo razumeti proces, ki privede do tega, da omrežje zlorablja svoje podatke. Nanda vidi očitno zunanjo nenadnost grokkinga kot rezultat postopnega notranjega prehoda od pomnjenja k posploševanju, ki uporablja dva različna algoritma znotraj nevronske mreže. Ko se omrežje začne učiti, je dejal, najprej ugotovi algoritem za lažje pomnjenje; čeprav je algoritem enostavnejši, zahteva precej sredstev, saj si mora omrežje zapomniti vsak primerek podatkov o usposabljanju. Toda tudi med pomnjenjem začnejo deli nevronske mreže oblikovati vezja, ki izvajajo splošno rešitev. Oba algoritma tekmujeta za vire med usposabljanjem, vendar generalizacija na koncu zmaga, če je omrežje usposobljeno z dodatno sestavino, imenovano regularizacija.

"Regulacija počasi premakne rešitev k rešitvi posploševanja," je dejal Liu. To je proces, ki zmanjša funkcionalno zmogljivost modela – kompleksnost funkcije, ki se je lahko nauči model. Ko regulacija zmanjša kompleksnost modela, sčasoma zmaga generalizacijski algoritem, ki je manj kompleksen. "Posploševanje je enostavnejše za enako [nivo] uspešnosti," je dejal Nanda. Nevronska mreža nazadnje zavrže algoritem pomnjenja.

Torej, medtem ko se zdi, da se zakasnjena sposobnost posploševanja pojavi nenadoma, se notranji parametri omrežja vztrajno učijo generalizacijskega algoritma. Šele ko se je omrežje naučilo posploševalnega algoritma in popolnoma odstranilo algoritem za pomnjenje, se začnete tresti. "Možno je, da se stvari, ki se zdijo nenadne, pod površjem dejansko odvijajo postopoma," je dejal Nanda - vprašanje, ki se je pojavilo tudi v druge raziskave strojnega učenja.

Kljub tem prebojem je pomembno vedeti, da so raziskave grokkinga še vedno v povojih. Doslej so raziskovalci preučevali le izjemno majhna omrežja in ni jasno, ali bodo te ugotovitve držale tudi večja, močnejša omrežja. Belkin tudi opozarja, da je modularna aritmetika "kaplja v morje" v primerjavi z vsemi različnimi nalogami, ki jih opravljajo današnje nevronske mreže. Povratni inženiring rešitve nevronske mreže za takšno matematiko morda ne bo dovolj za razumevanje splošnih načel, ki vodijo ta omrežja k posploševanju. "Odlično je preučevati drevesa," je dejal Belkin. "Vendar moramo tudi preučevati gozd."

Kljub temu ima sposobnost vpogleda v ta omrežja in njihovega analitičnega razumevanja velike posledice. Za večino od nas so Fourierove transformacije in razpolovitev krožnih lokov zelo čuden način za modulo seštevanje – človeški nevroni preprosto ne razmišljajo tako. "Ampak če ste zgrajeni iz linearne algebre, je pravzaprav zelo smiselno, da to storite tako," je dejal Nanda.

"Ti čudni [umetni] možgani delujejo drugače kot naši," je dejal. »[Imajo] svoja pravila in strukturo. Naučiti se moramo razmišljati, kako razmišlja nevronska mreža.«

spot_img

Najnovejša inteligenca

spot_img