Neuroverkkojen ymmärtäminen harvojen piirikytkentöjen kautta
Koulutimme malleja ajattelemaan yksinkertaisemmilla, helpommin seurattavilla vaiheilla, jotta voimme paremmin ymmärtää niiden toimintaa.
Neuroverkot ovat nykyään tehokkaimpien tekoälyjärjestelmien voimanlähde, mutta niitä on yhä vaikea ymmärtää. Emme kirjoita näitä malleja selkeillä, vaiheittaisilla ohjeilla. Sen sijaan ne oppivat säätämällä miljardeja sisäisiä yhteyksiä eli ”painotuksia”, kunnes ne hallitsevat tehtävän. Suunnittelemme koulutuksen säännöt, mutta emme sitä, millaisia käyttäytymismalleja syntyy. Tuloksena on tiheä yhteyksien verkosto, jota kukaan ihminen ei pysty helposti tulkitsemaan.
Kun tekoälyjärjestelmät kehittyvät yhä kyvykkäämmiksi ja vaikuttavat reaalimaailman päätöksiin tieteessä, koulutuksessa ja terveydenhuollossa, on olennaisen tärkeää ymmärtää, miten ne toimivat. Tulkittavuus viittaa menetelmiin, jotka auttavat ymmärtämään, miksi malli tuotti tietyn tuloksen. On monia tapoja, joilla voimme saavuttaa tämän.
Esimerkiksi päättelymalleja kannustetaan selittämään toimintansa lopullisen vastauksen löytämiseksi. Ajatusketjun tulkittavuus käyttää näitä selityksiä mallin käyttäytymisen seuraamiseen. Tästä on heti hyötyä: nykyisten päättelymallien ajatusketjut näyttävät antavan tietoa huolestuttavasta käyttäytymisestä, kuten petoksesta. Tähän ominaisuuteen luottaminen on kuitenkin hauras strategia, ja se voi romahtaa ajan myötä.
Toisaalta mekaaninen tulkittavuus, johon tässä työssä keskitytään, pyrkii täysin käänteissuunnittelemaan mallin laskelmat. Se ei ole toistaiseksi ollut välittömästi hyödyllinen, mutta periaatteessa se voisi tarjota täydellisemmän selityksen mallin käyttäytymiselle. Pyrkimällä selittämään mallin käyttäytymistä mahdollisimman tarkasti, mekanistinen tulkittavuus voi tehdä vähemmän oletuksia ja tarjota enemmän luottamusta. Mutta tie matalan tason yksityiskohdista monimutkaisten käyttäytymisten selittämiseen on paljon pidempi ja vaikeampi.
Tulkittavuus tukee useita keskeisiä tavoitteita, kuten paremman valvonnan mahdollistamista ja varhaisten varoituksen antamista vaarallisesta tai strategisesti väärästä käyttäytymisestä. Se täydentää myös muita turvallisuustoimiamme, kuten skaalautuvaa valvontaa, vastakkainasettelun harjoittelua ja red teaming -menetelmää.
Tässä työssä osoitamme, että voimme usein kouluttaa malleja siten, että niitä on helpompi tulkita. Pidämme työtämme lupaavana täydennyksenä tiheiden verkostojen jälkianalyysille.
Tämä on hyvin kunnianhimoinen veto; on pitkä matka siihen, että voimme täysin ymmärtää tehokkaimpien malliemme monimutkaista käyttäytymistä. Silti yksinkertaisten käyttäytymisten osalta huomaamme, että menetelmällämme koulutetut harvat mallit sisältävät pieniä, erillisiä piirejä, jotka ovat sekä ymmärrettäviä että riittäviä käyttäytymisen toteuttamiseen. Tämä viittaa siihen, että voi olla olemassa helpommin ratkaistava polku kohti suurempien järjestelmien kouluttamista, joiden mekanismeja voimme ymmärtää.
Aikaisemmat mekanistiset tulkintatyöt ovat alkaneet liikkeelle tiheistä, sekavista verkostoista ja yrittäneet selvittää niitä. Näissä verkoissa kukin yksittäinen neuroni on yhteydessä tuhansiin muihin neuroneihin. Useimmat neuronit näyttävät suorittavan monia eri toimintoja, mikä tekee niiden ymmärtämisestä näennäisesti mahdotonta.
Mutta entä jos kouluttaisimme kietoutumattomia neuroverkkoja, joissa on paljon enemmän neuroneja, mutta joissa kullakin neuronilla on vain muutamia kymmeniä yhteyksiä? Silloin tuloksena oleva verkosto on ehkä yksinkertaisempi ja helpompi ymmärtää. Tämä on tutkimuksemme keskeinen panos.
Tämän periaatteen mukaisesti koulutimme kielimalleja, joiden arkkitehtuuri on hyvin samanlainen kuin nykyisten kielimallien, kuten GPT‑2:n, mutta teimme yhden pienen muutoksen: pakotimme suurimman osan mallin painoista nolliksi. Tämä rajoitti mallia käyttämään vain hyvin harvoja mahdollisia yhteyksiä sen neuronien välillä. Tämä on yksinkertainen muutos, jonka väitämme merkittävästi selkeyttävän mallin sisäisiä laskutoimituksia.
Tavallisissa tiheissä neuroverkoissa jokainen neuroni on yhteydessä jokaiseen seuraavan kerroksen neuroniin. Harvoissa malleissamme jokainen neuroni yhdistyy vain muutamaan seuraavan kerroksen neuroniin. Toivomme, että tämä helpottaa neuronien ja koko verkon ymmärtämistä.
Haluamme mitata, missä määrin harvojen malliemme laskelmat ovat eriytyneitä. Harkitsimme erilaisia yksinkertaisia mallikäyttäytymisiä ja tarkistimme, voimmeko eristää mallista kunkin käyttäytymisen vastuulliset osat, joita kutsumme piireiksi.
Olemme koonneet joukon yksinkertaisia algoritmitehtäviä. Kunkin osalta karsimme mallin pienimpään piiriin, joka pystyy edelleen suorittamaan tehtävän, ja tutkimme, kuinka yksinkertainen kyseinen piiri on. (Lisätietoja on julkaisussamme(avautuu uudessa ikkunassa).) Havaitsimme, että kouluttamalla suurempia ja harvempia malleja voimme tuottaa yhä suorituskykyisempiä malleja yhä yksinkertaisemmilla piireillä.
Kuvaamme tulkittavuuden ja kyvykkyyden suhdetta eri malleissa (alempi vasen on parempi). Kun mallin koko on kiinteä, harvuuden lisääminen – asettamalla useampia painoja nollaan – vähentää kyvykkyyttä mutta lisää tulkittavuutta. Mallin koon suurentaminen siirtää tätä rajaa ulospäin, mikä viittaa siihen, että voimme rakentaa suurempia malleja, jotka ovat sekä tehokkaita että helposti tulkittavia.
Tämän konkretisoimiseksi tarkastellaan tehtävää, jossa Python-koodilla koulutettu malli joutuu täydentämään merkkijonon oikean tyyppisellä lainausmerkillä. Pythonissa 'hello' on lopetettava yksittäisellä lainausmerkillä ja ”hello” on lopetettava kaksoislainausmerkillä. Malli voi ratkaista tämän muistamalla, mikä lainausmerkki avasi merkkijonon ja toistamalla sen lopussa.
Tulkinnanvaraisimmat mallit näyttävät sisältävän eriytyneitä piirejä, jotka toteuttavat juuri kyseisen algoritmin.

Esimerkkipiiri harvassa muuntajassa, joka ennustaa, lopetetaanko merkkijono yksinkertaiseen vai kaksinkertaiseen lainausmerkkiin. Tämä piiri käyttää vain viittä jäännöskanavaa (pystysuorat harmaat viivat), kahta MLP-neuronia kerroksessa 0 sekä yhtä huomiokyselyavainkanavaa ja yhtä arvokanavaa kerroksessa 10. Malli (1) koodaa yksittäiset lainausmerkit yhteen jäännöskanavaan ja kaksinkertaiset lainausmerkit toiseen; (2) käyttää MLP-kerrosta muuntaakseen tämän yhdeksi kanavaksi, joka havaitsee minkä tahansa lainauksen, ja toiseksi, joka luokittelee yksittäisten ja kaksinkertaisten lainausmerkkien välillä; (3) käyttää huomio-operaatiota ohittaakseen välissä olevat tunnisteet, löytääkseen edellisen lainauksen ja kopioidakseen sen tyypin lopulliseen tunnisteeseen; ja (4) ennustaa vastaavan sulkevan lainausmerkin.
Määritelmässämme edellä esitetyt tarkat kytkennät riittävät tehtävän suorittamiseen – jos poistamme mallin loput osat, tämä pieni piiri toimii edelleen. Ne ovat myös välttämättömiä – näiden muutamien reunojen poistaminen aiheuttaa mallin epäonnistumisen.
Tarkastelimme myös joitakin monimutkaisempia käyttäytymisiä. Näiden käyttäytymisten piirit (esimerkiksi alla esitetty muuttujien sitominen) on vaikeampi selittää kokonaan. Silloinkin voimme saada aikaan suhteellisen yksinkertaisia osittaisia selityksiä, jotka ennustavat mallin käyttäytymistä.
Toinen esimerkkipiiri vähemmän yksityiskohtaisesti. Määrittääksesi muuttujan current tyypin, yksi huomio-operaatio kopioi muuttujan nimen set() -tunnisteeseen sen määrittelyn yhteydessä, ja toinen myöhempi operaatio kopioi tyypin set() -tunnisteesta muuttujan myöhempään käyttöön, jolloin malli voi päätellä oikean seuraavan tunnisteen.
Tämä työ on varhainen askel kohti suurempaa tavoitetta: mallilaskelmien ymmärtämisen helpottamista. Mutta vielä on pitkä matka kuljettavana. Harvat mallimme ovat paljon pienempiä kuin edistyneimmät mallit, ja suuri osa niiden laskennasta jää tulkitsematta.
Seuraava tavoitteemme on laajentaa tekniikoitamme suurempiin malleihin ja selittää tarkemmin mallien käyttäytymistä. Luettelemalla piiriteemoja, jotka ovat monimutkaisemman päättelyn taustalla kyvykkäissä harvoissa malleissa, voisimme kehittää ymmärryksen, joka auttaa meitä kohdistamaan paremmin edistyneimpien mallien tutkimuksia.
Harvojen mallien koulutuksen tehottomuuden voittamiseksi näemme kaksi polkua eteenpäin. Yksi tapa on purkaa harvoja piirejä olemassa olevista tiheistä malleista sen sijaan, että koulutettaisiin harvat mallit alusta alkaen. Tiheät mallit ovat periaatteessa tehokkaampia ottaa käyttöön kuin harvat mallit. Toinen vaihtoehto on kehittää tehokkaampia tekniikoita mallien tulkittavuuden kouluttamiseksi, mikä saattaa olla helpompi toteuttaa tuotannossa.
Huomaa, että tuloksemme eivät takaa, että tämä lähestymistapa laajenee tehokkaampiin järjestelmiin, mutta nämä alustavat tulokset ovat lupaavia. Tavoitteenamme on vähitellen laajentaa sitä, kuinka suuren osan mallista voimme luotettavasti tulkita, ja kehittää työkaluja, jotka tekevät tulevien järjestelmien analysoinnista, virheenkorjauksesta ja arvioinnista helpompaa.
Tekijät
Leo Gao, Achyuta Rajaram, Jacob Coxon, Soham V. Govande, Bowen Baker ja Dan Mossing


