Neironu tīklu izpratne, izmantojot retinātas ķēdes
Mēs apmācījām modeļus domāt vienkāršākos un izsekojamākos soļos, lai varētu labāk saprast, kā tie darbojas.
Neironu tīkli nodrošina mūsdienu visspējīgākās MI sistēmas, taču tos joprojām ir grūti saprast. Mēs nerakstām šos modeļus ar skaidrām, soli pa solim instrukcijām. Tā vietā viņi mācās, pielāgojot miljardiem iekšējo savienojumu jeb "svaru", līdz apgūst uzdevumu. Mēs izstrādājam mācību noteikumus, bet ne konkrētas uzvedības, kas rodas, un rezultāts ir blīvs savienojumu tīkls, kuru neviens cilvēks nevar viegli atšifrēt.
Tā kā MI sistēmas kļūst spējīgākas un tām ir reāla ietekme uz lēmumiem zinātnē, izglītībā un veselības aprūpē, ir svarīgi saprast, kā tās darbojas. Interpretējamība attiecas uz metodēm, kas palīdz mums saprast, kāpēc modelis ir radījis noteiktu izvadi. Ir daudz veidu, kā mēs to varētu sasniegt.
Piemēram, spriešanas modeļi tiek motivēti skaidrot savu darbu, lai nonāktu pie galīgās atbildes. Domu ķēdes interpretējamība izmanto šos skaidrojumus, lai uzraudzītu modeļa uzvedību. Tas ir noderīgi uzreiz: pašreizējo apsvērumu modeļu domu ķēdes šķietami sniedz informāciju par tādu uzvedību kā maldināšana. Tomēr pilnīga paļaušanās uz šo īpašību ir trausla stratēģija, un laika gaitā tā var nedarboties.
Savukārt mehānistiskā interpretējamība, kas ir šī darba uzmanības centrā, cenšas pilnībā izpētīt modeļa aprēķinus. Līdz šim tas ir bijis mazāk noderīgi, taču principā tas varētu sniegt pilnīgāku skaidrojumu par modeļa uzvedību. Mēģinot izskaidrot modeļa uzvedību visdetalizētākajā līmenī, mehānistiskā interpretējamība var veikt mazāk pieņēmumu un sniegt mums lielāku pārliecību. Taču ceļš no zemāka līmeņa detaļām līdz sarežģītas uzvedības skaidrojumiem ir daudz garāks un grūtāks.
Interpretējamība atbalsta vairākus galvenos mērķus, piemēram, nodrošināt labāku uzraudzību un sniegt agrīnas brīdinājuma zīmes par nedrošu vai stratēģiski neatbilstošu rīcību. Tā arī papildina citus mūsu drošības pasākumus, piemēram, mērogojamu uzraudzību, mācības ar uzbrukuma datiem un sarkano komandu veidošanu.
Šajā darbā mēs parādām, ka bieži varam apmācīt modeļus tā, lai tos būtu vieglāk interpretēt. Mēs redzam savu darbu kā daudzsološu papildinājumu blīvu tīklu post-hoc analīzei.
Tas ir ļoti ambiciozs solis; no mūsu darba līdz pilnīgai izpratnei par mūsu jaudīgāko modeļu sarežģīto uzvedību ir tāls ceļš. Tomēr mēs atklājam, ka ar vienkāršām uzvedībām daži modeļi, kas apmācīti ar mūsu metodi, satur mazas, atdalītas ķēdes, kas ir gan saprotamas, gan pietiekamas, lai veiktu uzvedību. Tas liecina, ka varētu būt iespējams atrast risinājumu lielāku sistēmu mācībām, kuru mehānismus mēs varam saprast.
Iepriekšējie mehānistiskās interpretējamības pētījumi sākušies ar blīviem, sapītiem tīkliem, mēģinot tos atšķetināt. Šajos tīklos katrs atsevišķs neirons ir savienots ar tūkstošiem citu neironu. Izskatās, ka lielākā daļa neironu pilda daudzas atšķirīgas funkcijas, padarot to visu šķietami neizprotamu.
Bet kā būtu, ja mēs apmācītu nesaistītus neironu tīklus ar daudz vairāk neironiem, bet kur katram neironam būtu tikai daži desmiti savienojumu? Tad varbūt iegūtais tīkls būtu vienkāršāks un saprotamāks. Šis ir mūsu darba centrālais pētniecības uzdevums.
Paturot prātā šo principu, mēs apmācījām valodas modeļus ar ļoti līdzīgu arhitektūru esošajiem valodas modeļiem, piemēram, GPT‑2, ar vienu nelielu modifikāciju: mēs lielāko daļu modeļa svara pārvērtām nullē. Tas ierobežoja modeli izmantot tikai ļoti nedaudzus no iespējamajiem savienojumiem starp tā neironiem. Tā ir vienkārša izmaiņa, kas, kā mēs apgalvojam, būtiski atvieglo modeļa iekšējos aprēķinus.
Parastos blīvos neironu tīklos katrs neirons ir savienots ar katru neironu nākamajā slānī. Mūsu retajos modeļos katrs neirons savienojas tikai ar dažiem neironiem nākamajā slānī. Mēs ceram, ka tas padarīs neironus un tīklu kopumā vieglāk saprotamus.
Mēs vēlamies novērtēt, cik lielā mērā mūsu reto modeļu aprēķini ir atdalīti. Mēs apsvērām dažādas vienkāršas modeļa uzvedības un pārbaudījām, vai varam izolēt modeļa daļas, kas ir atbildīgas par katru uzvedību — ko mēs saucam par ķēdēm.
Mēs rūpīgi atlasījām vienkāršu algoritmisku uzdevumu komplektu. Katram mēs samazinājām modeli līdz mazākajai shēmai, kas joprojām var veikt uzdevumu, un pārbaudījām, cik vienkārša ir šī shēma. (Sīkāku informāciju skati mūsu rakstu(atveras jaunā logā).) Mēs atklājām, ka, veicot mācības ar lielākiem un retākiem modeļiem, mēs varējām izveidot arvien spējīgākus modeļus ar arvien vienkāršākām ķēdēm.
Mēs attēlojam interpretējamību salīdzinājumā ar iespējām dažādos modeļos (jo zemāk un pa kreisi, jo labāk). Fiksētam retā modeļa lielumam, palielinot retumu—nosakot vairāk svaru nulles pozīcijā—samazinās iespējas, bet palielinās interpretējamība. Palielinot modeļa lielumu, šī robeža tiek pārvietota uz āru, kas liecina, ka mēs varam izveidot lielākus modeļus, kas ir gan spējīgi, gan interpretējami.
Lai to konkretizētu, izmēģini uzdevumu, kur modelim, kas apmācīts ar Python kodu, ir jāaizpilda virkne ar pareizo pēdiņu veidu. Python valodā 'hello' jābeidzas ar vienu pēdiņu, bet “hello” - ar dubultu pēdiņu. Modelis var atrisināt šo problēmu, atceroties, ar kāda veida pēdiņām tika atvērta virkne, un atveidojot tās beigās.
Mūsu visinterpretējamākie modeļi šķietami satur atšķetinātas shēmas, kas īsteno tieši šo algoritmu.

Piemērs ķēdei retā transformatorā, kas paredz, vai virkni beigt ar vienu pēdiņu vai dubultajām pēdiņām. Šajā shēmā tiek izmantoti tikai pieci atlikuma kanāli (vertikālās pelēkās līnijas), divi MLP neironi 0. slānī un viens uzmanības vaicājuma-atslēgas kanāls un viens vērtības kanāls 10. slānī. Modelis (1) kodē vienkāršās pēdiņas vienā atlikušajā kanālā un dubultās pēdiņas citā; (2) izmanto MLP slāni, lai to pārvērstu vienā kanālā, kas nosaka jebkuruas pēdiņas, un citā, kas klasificē starp vienu pēdiņu un dubultajām pēdiņām; (3) izmanto uzmanības mehānismu, lai ignorētu starpā esošās tekstvienības, atrastu iepriekšējo pēdiņu un kopētu tās veidu uz pēdējo tekstvienību; un (4) prognozē atbilstošas noslēguma pēdiņas.
Mūsu definīcijā precīzi savienojumi, kas parādīti iepriekš, ir pietiekami, lai veiktu uzdevumu—ja mēs noņemam pārējo modeli, šī mazā shēma joprojām darbojas. Tās ir arī nepieciešamas – šo nedaudzo malu dzēšana izraisa modeļa kļūmi.
Mēs arī aplūkojām dažas sarežģītākas uzvedības. Mūsu shēmas šīm uzvedībām (piemēram, zemāk parādītā mainīgo saistīšana) ir grūtāk pilnībā izskaidrot. Pat tad mēs joprojām varam iegūt relatīvi vienkāršus daļējus skaidrojumus, kas prognozē modeļa uzvedību.
Vēl viens piemērs shēmai, mazāk detalizēti. Lai noteiktu mainīgā ar nosaukumu current tipu, viena uzmanības operācija kopē mainīgā nosaukumu set() tekstvienībā, kad tas ir definēts, un cita vēlāka operācija kopē tipu no set() tekstvienības nākamajā mainīgā lietojumā, ļaujot modelim secināt pareizo nākamo tekstvienību.
Šis darbs ir agrīns solis ceļā uz lielāku mērķi: padarīt modeļu aprēķinus vieglāk saprotamus. Taču vēl jāmēro tāls ceļš. Mūsu retie modeļi ir daudz mazāki nekā jaunākie modeļi, un liela daļa to aprēķinu paliek neinterpretēta.
Pēc tam mēs ceram paplašināt mūsu metodes uz lielākiem modeļiem un izskaidrot vairāk modeļu uzvedības. Uzskaitot ķēdes motīvus, kas ir sarežģītāku apsvērumu pamatā spējīgos retos modeļos, mēs varētu attīstīt izpratni, kas palīdz mums labāk orientēties uz jaunāko modeļu izpēti.
Lai pārvarētu retu modeļu mācību neefektivitāti, mēs saskatām divus turpmākos ceļus. Viens no tiem ir izvilkt retas ķēdes no esošajiem blīvajiem modeļiem, nevis veikt retu modeļu mācības no nulles. Blīvie modeļi ir būtiski efektīvāki ieviešanai nekā retie modeļi. Otrs ceļš ir izstrādāt efektīvākas metodes, lai apmācītu modeļus interpretējamībai, ko varētu būt vieglāk ieviest ražošanā.
Ņem vērā, ka mūsu atklājumi šeit negarantē, ka šī pieeja attieksies uz spējīgākām sistēmām, taču šie agrīnie rezultāti ir daudzsološi. Mūsu mērķis ir pakāpeniski paplašināt, cik lielu daļu modeļa mēs varam droši interpretēt, un izveidot rīkus, kas padara nākotnes sistēmas vieglāk analizējamas, atkļūdojamas un novērtējamas.
Autori
Leo Gao, Achyuta Rajaram, Jacob Coxon, Soham V. Govande, Bowen Baker un Dan Mossing


