Keele teke mitme agendi mängudega: sümbolijärjestustega suhtlemise õppimine

Serhii Havrylov ja Ivan Titov (Edinburghi ülikooli / Amsterdami ülikooli ML teaduspartnerid)

Keel on olnud inimtsivilisatsiooni oluline vahend teadmiste edasiandmiseks uutele põlvkondadele. Keele päritolu on inimeste meeli köitnud sajandeid ja see on andnud alust mitmele uurimusele.

Alles hiljuti pidid peaaegu kõik keele tekkimise uurimiseks mõeldud matemaatilised mudelid piirduma algoritmiliste ja arvutuslike piirangute tõttu madala mõõtmega lihtsate vaatlusruumidega. Viimastel aastatel on süvaõppe kogukond selle probleemi vastu üles näidanud märkimisväärset huvi. Järgnevas postituses kirjeldatakse meie peamist panust keeleteaduse ja masinõppe valdkonnas, mis kujunes meie ühises uurimisprojektis SAP-i masinõppe uurimisrühmaga.

Referentsmängu mängimine

Keele kasutamise üks põhilisi väljakutseid on osutamine täpsustatud asjadele. Seega ei ole üllatav, et soovituslik mäng on õppimiseks-suhtlemiseks väljamineku seade. Need mängud koosnevad paljudest piiratud interaktiivsetest mõttekäikudest ja nende mängude abil kontrollitakse masinate kontrollitavas keskkonnas praktilisi järeldusi. Kuigi peamise soovitusliku mängu laiendamine on võimalik, otsustasime jätkata mängu seadistamist:

  1. Sihtpilt valitakse piltide hulgast, kus on ((K)) tähelepanu tõmbavad pildid.
  2. Agente on kaks: saatja ja vastuvõtja.
  3. Pärast sihtpildi nägemist peab saatja välja tulema teatega, mida tähistab fikseeritud suurusega sõnavara sümbolite jada. Jada on maksimaalselt võimalik.
  4. Võttes arvesse genereeritud sõnumit ja segavate piltide ning sihtkujutise komplekti, peaks vastuvõtja tuvastama õige sihtpildi.

Järelikult peab saatja selle viitemängu õnnestumiseks valima sõnad hoolikalt ja panema need järjestusesse, mis võimaldab vastuvõtjal hõlpsalt tuvastada, millist pilti saatjale näidati. Seadistus erineb põhimõtteliselt selle valdkonna varasemate uuringutega, kuna meie lähenemisviis kasutab näiteks sõnumite genereerimiseks järjestusi, mitte üksikuid sümboleid, mis muudab meie seadistamise realistlikumaks ja õppeperspektiivist väljakutsuvamaks.

Agentid

Mõlemad agendid, nii saatja kui ka vastuvõtja, on rakendatud korduvate närvivõrkudena, nimelt pikaajaliste lühiajaliste mäluvõrkudena, mis on üks jadade genereerimise ja töötlemise tööriistadest. Alloleval joonisel on näidatud mudeli visand, kus kindlad nooled tähistavad deterministlikke arvutusi. Katkendjooned näitavad varem saadud sõna kopeerimist. Ja lõpuks tähistavad rombikujulised nooled sõna valimist sõnavarast.

Tõenäoliselt on see mudeli kõige olulisem ja tülikam osa. Ühelt poolt on see ülioluline element, sest see on koht, kus saatja otsustab, mida järgmisena öelda. Teisest küljest on see tülikas, kuna see on stohhastiline. Kahjuks tugineb üldlevinud tagasiulatuva algoritmi sellele, et närvivõrgu kõigis kihtides on pidevate eristatavate funktsioonide ahelad. See konkreetne arhitektuur sisaldab siiski diskreetse tõenäosusjaotuse põhjal eristamatuid valimid, mis tähendab, et me ei saa tagasiulatuvust kohe kasutada.

Saatja visuaalne süsteem on rakendatud kui konvolutsioonne närvivõrk (CNN). Meie puhul esindavad pilte CNN-i eelviimase peidetud kihi väljundid. Nagu ülaltoodud jooniselt näete, saadakse teade järjestikuse valimiga, kuni saavutatakse maksimaalne võimalik pikkus või genereeritakse spetsiaalne märk "teate lõpp".

Õppimine

Võrdlusmängu kontekstis on vastuvõtjaagendi käitumist suhteliselt lihtne õppida. Kuna see on otsast otsani eristatav, saab efektiivselt hinnata kadumisfunktsiooni gradiente selle parameetrite osas. Tõeline väljakutse on saatjaagendi õppimine. Selle arvutusgraafik sisaldab valimit, mis muudab selle eristamatuks. Lähtealusena rakendasime REINFORCE algoritmi. See meetod pakub lihtsat viisi kadumisfunktsiooni gradientide hindamiseks stohhastilise poliitika parameetrite osas. Ehkki see on erapooletu, on sellel tavaliselt tohutu erinevus ja see aeglustab mudeli õppimist. Õnneks avastasid kaks gruppi eelmisel aastal iseseisvalt kallutatud, kuid madala dispersiooniga kalkulaatori - Gumbel-Softmaxi hinnangu (GS hinnang). See võimaldab lõdvestada originaalset diskreetset muutujat koos selle pideva vastaspoolega. See muudab kõik eristatavaks, mis võimaldab rakendada tagasitoomise algoritmi. Kuna see teema on üsna suur ja väärib oma postitust, soovitame teil lugeda selle meetodi ühe autori ajaveebi postitust.

Meie leiud

Esimene asi, mida pärast mudeli õppimist uurisime, oli suhtluse edukuse määr. Peame kahe agendi vahelist suhtlust õnnestunuks, kui sihtpilt on õigesti tuvastatud. Nagu allolevalt jooniselt võib näha, on Gumbel-Softmaxi hindajat (punane ja sinine kõver) kasutades saadud tulemused paremad kui REINFORCE algoritmi tulemused (kollane ja roheline kõver), välja arvatud juhul, kui agentidel lubatakse suhelda ainult ühe sõnaga.

Eeldame, et selles suhteliselt lihtsas olukorras ei ole REINFORCE'i variatsioon probleem ja erapooletu olemus tasub end ära. Samal ajal eemaldas GS-i hinnanguri kallutus selle optimaalsest lahendusest. Ka see süžee käib käsikäes intuitsiooniga ja näitab selgelt, et rohkemate sõnade abil saab pilti täpsemalt kirjeldada.

Uurisime ka seda, kui palju tuleb agentide vahel suhelda, et suhtlusprotokolli õppida. Suure üllatusena nägime, et GS-i hinnangulaatori (roheline kõver) abil koolituse lähendamiseks vajalike värskenduste arv väheneb, kui lubame saatjal kasutada pikemaid sõnumeid. See käitumine on veidi vastupidine, kuna võib eeldada, et kui protokollide otsinguruum on suurem, on protokolli õppimine raskem. Teisisõnu, pikemate järjestuste kasutamine aitab sideprotokolli kiiremini õppida. Kuid REINFORCE hinnanguri (punane kõver) puhul see nii pole: tavaliselt läheneb GS-i prognoosijaga lähenemiseks viis korda rohkem värskendusi. Samuti pole selget sõltuvust lähenemiseks vajalike värskenduste arvu ja sõnumi maksimaalse võimaliku pikkuse vahel.

Lisaks joonistame kodeerija hämmelduse, mis vaieldamatult mõõdab, kui palju valikuid saatja peab igas ajaetapis valima, valides tõenäosusjaotuse sõnavara vahel. Nägime, et GS-i hinnanguri (roheline kõver) korral on variantide arv suhteliselt suur ja lause pikkusega suureneb, samas kui REINFORCE-algoritmi (punane kõver) korral pole ülemeelitsemine nii kiire. See tähendab kodeeringutes koondamist, mis tähendab, et sama semantilist sisu kodeerivad mitmed parafraasid.

Kuidas õpitud keel välja näeb? Selle keele olemuse paremaks mõistmiseks vaatasime läbi mudeli loodud väikese lausekomplekti, mille maksimaalne võimalik sõnumi pikkus oli 5 ühikut. Esiteks tegime objektist juhusliku foto ja genereerisime teate. Seejärel korrati andmebaasi ja juhuslikult valitud piltidega sõnumeid, millel on genereeritud teatega 1, 2 ja 3 sümboli eesliited.

Näiteks vasakpoolses joonise esimeses reas, kus kasutatakse loomapiltide alamhulka, kuvatakse mõned näidised, mis vastavad koodile (5747 * * * *). “*” Tähendab siin sõna, mis pärineb sõnavarast või lause lõpus olevast polsterdusest.

Kuid tundub, et koodi (* * * 5747 *) pildid ei vasta ühelegi eelnevalt määratletud kategooriale. See viitab sellele, et sõnajärjestus on arenenud keeles ülioluline. Täpsemalt, sõna 5747 esimeses positsioonis kodeerib looma olemasolu pildil. Sama joonis näitab, et teade (5747 5747 7125 * *) vastab konkreetsele karuliigile, mis viitab sellele, et arenenud keel rakendab mingisugust hierarhilist kodeeringut. See pakub suurt huvi, kuna mudelil ei olnud hierarhilise kodeerimisskeemi kasutamist selgesõnaliselt piiratud. Eeldatavasti võib see skeem aidata mudelil nähtamatuid pilte tõhusalt kirjeldada. Sellegipoolest kasutab loomulik keel kompositsioonilisuse tagamiseks teisi põhimõtteid. Näib, et mudel on üldiselt rakendatav, kuna see näitab sarnaselt käitumist toidupiirkonnas olevate piltide puhul (parem pilt ülaltoodud joonisel).

Oma uuringus näitasime, et närvivõrkude abil modelleeritud ained suudavad edukalt leiutada efektiivse keele, mis koosneb diskreetsete märkide jadadest. Samuti leidsime, et agendid saavad sideprotokolli kiiremini välja töötada, kui lubame neil kasutada pikemaid sümbolijadasid. Lisaks täheldasime, et indutseeritud keel rakendab hierarhilist kodeerimisskeemi ja eksisteerib mitu parafraasi, mis kodeerivad sama semantilist sisu. Edaspidises töös sooviksime laiendada seda lähenemist eesmärgile orienteeritud dialoogisüsteemide modelleerimisele.

Vestlusbotid ja jutukas AI-platvormid on muutunud ettevõtlussfääris üha olulisemaks, eriti panganduse, kindlustuse ja telekommunikatsiooni valdkonnas. Praegused lähenemisviisid nende tehnoloogiate loomiseks tuginevad siiski endiselt ulatuslikule inimjärelevalvele. Inimesed peavad koostama reeglid või pakkuma näiteid edukatest dialoogidest, mida kasutatakse intelligentsete abiliste koolitamiseks. Seda on keeruline keerukate ülesanneteni viia, kuna kvaliteedijärelevalve on kallis ja aeganõudev. Lisaks võivad inimeste lähenemisviisid olla ebajärjekindlad või võib olla tõhusamaid viise ülesannete lahendamiseks. Meie lähenemisviisil on paljulubav potentsiaal seda standardstsenaariumi asendada või täiendada: vestlusprogrammid võiksid seejärel kasutada tagasisidet ülesande täitmise kohta, võimaldades täiendavat kulutõhusat järelevalvet. Mingil hetkel võib see aidata luua edukaid digiassistendid lühema ajaga ja väiksemate kulutustega. Samuti loodame, et see võimaldaks masinatel hakkama saada uute stsenaariumide ja olemasolevate seadete muudatustega ilma selgesõnalise inimese sekkumiseta või uute andmekogumite vajaduseta.

Tutvustasime oma tööd NIPS’17-s. Lisateavet ja meie uuringu tehnilisi üksikasju leiate järgmiselt: Keele teke mitme agendi mängudega: sümbolijärjestustega suhtlemise õppimine.