Pojav jezika z igrami z več agenti: učenje komunikacije s zaporedji simbolov

Serhii Havrylov in Ivan Titov (ML Raziskovalni partnerji z Univerze v Edinburghu / Univerza v Amsterdamu)

Jezik je bil ključno orodje človeške civilizacije za prenos znanja na nove generacije. Izvor jezika že stoletja privlači človekove misli in sproži več študij.

Do nedavnega pa so morali biti skoraj vsi matematični modeli za preučevanje nastajanja jezika omejeni na majhne, ​​preproste opazovalne prostore zaradi algoritmičnih in računskih omejitev. V preteklih letih je skupnost poglobljenih učencev za to težavo pokazala veliko zanimanje. V naslednjem prispevku so predstavljeni naši glavni prispevki na področju jezikoslovja in strojnega učenja, nastali med našim skupnim raziskovalnim projektom z raziskovalno skupino za strojno učenje pri SAP.

Igranje referenčne igre

Eden najosnovnejših izzivov uporabe jezika je navajanje določenih stvari. Tako ni presenetljivo, da je referenčna igra usmeritev v polje učenja za komuniciranje. Te igre so sestavljene iz številnih omejenih interaktivnih nalog sklepanja, s katerimi se pregleduje pragmatično sklepanje o strojih v nadzorovanem okolju. Čeprav so možne številne razširitve primarne referenčne igre, smo se odločili, da nadaljujemo z naslednjo namestitvijo igre:

  1. Ciljna slika je izbrana iz zbirke slik z \ (K \) motečimi slikami.
  2. Obstajata dva agenta: pošiljatelj in prejemnik.
  3. Po ogledu ciljne slike mora pošiljatelj sestaviti sporočilo, ki ga predstavlja zaporedje simbolov iz besedišča določene velikosti. Obstaja največja možna dolžina zaporedja.
  4. Glede na ustvarjeno sporočilo in nabor slik, ki jih sestavljajo moteče slike in ciljno sliko, mora sprejemnik prepoznati pravilno ciljno sliko.

Posledično mora pošiljatelj za uspeh v tej referenčni igri skrbno izbrati besede in jih postaviti v zaporedje, ki bo sprejemniku olajšalo pravilno prepoznavanje slike, ki je bila prikazana pošiljatelju. Nastavitev je v bistvu drugačna od prejšnjih študij na tem področju, saj naš pristop na primer uporablja sekvence namesto posameznih simbolov za generiranje sporočil, zaradi česar je naša nastavitev bolj realna in zahtevna z vidika učenja.

Agenti

Oba agenta, pošiljatelj in sprejemnik, se izvajata kot ponavljajoča se nevronska omrežja, in sicer dolgotrajna spominska omrežja, ki so eno od standardnih orodij za generiranje in obdelavo zaporedij. Spodnja slika prikazuje skico modela, kjer trdne puščice predstavljajo determinirane izračune. Črtkane puščice prikazujejo kopiranje prej pridobljene besede. In nazadnje, puščice v obliki diamanta predstavljajo vzorčenje besede iz besedišča.

Verjetno je to najpomembnejši in najbolj težaven del modela. Po eni strani je ključni element, saj se na tem mestu pošiljatelj odloči, kaj bo povedal naprej. Po drugi strani je moteč, ker je stohastičen. Na žalost se vseprisotni algoritem povratnega razmnoževanja opira na to, da imajo verige neprekinjene diferencirane funkcije v vsaki od plasti nevronske mreže. Vendar ta posebna arhitektura vsebuje neločljivo vzorčenje iz diskretne porazdelitve verjetnosti, kar pomeni, da ne moremo takoj uporabiti povratnega širjenja.

Vizualni sistem pošiljatelja je izveden kot konvolucijsko nevronsko omrežje (CNN). V našem primeru so slike predstavljene z izhodi predzadnje skrite plasti CNN. Kot lahko vidite na zgornji sliki, sporočilo dobimo z zaporednim vzorčenjem, dokler ni dosežena največja možna dolžina ali ustvarjen poseben žeton "konec sporočila".

Učenje

Relativno enostavno se je naučiti obnašanja sprejemniškega agenta v okviru referenčne igre. Ker je ločljiv od konca do konca, je mogoče gradiente funkcije izgube glede na njene parametre učinkovito oceniti. Pravi izziv je, da se naučite pošiljatelja. Njen računski graf vsebuje vzorčenje, zaradi česar je nedosegljiv. Kot izhodišče smo implementirali algoritem REINFORCE. Ta metoda omogoča preprost način ocenjevanja gradientov izgubne funkcije glede na parametre stohastične politike. Kljub temu, da je nepristranski, ima običajno veliko odstopanja in to dejstvo upočasni učenje modela. Na srečo sta lani dve skupini neodvisno odkrili pristranski, a nizko variance ocenjevalec - ocenjevalec Gumbel-Softmax (GS estimator). Omogoča sprostitev originalne diskretne spremenljivke s svojim stalnim kolegom. Zaradi tega je vse diferencirano, kar omogoča uporabo algoritma povratnega širjenja. Ker je ta tema precej velika in si zasluži svojo objavo, vas pozivamo, da preberete objavo na blogu katerega od avtorjev te metode.

Naše ugotovitve

Prva stvar, ki smo jo preučili po učenju modela, je bila stopnja uspešnosti komunikacije. Komunikacija med dvema agentoma se nam zdi uspešna, če je ciljna slika pravilno prepoznana. Kot je razvidno iz spodnje slike, so rezultati z uporabo ocenjevalca Gumbel-Softmax (rdeče in modre krivulje) boljši od rezultatov algoritma REINFORCE (rumena in zelena krivulja), razen kadar agenti lahko komunicirajo samo z eno besedo.

Domnevamo, da v tej razmeroma preprosti nastavitvi odstopanje REINFORCE ni težava in lastnost nepristranskosti se izplača. Hkrati je pristranskost ocenjevalca GS oddaljila od optimalne rešitve. Tudi ta zaplet gre z roko v roki z intuicijo in jasno kaže, da lahko z uporabo več besed natančneje opišemo sliko.

Raziskali smo tudi, koliko interakcij med agenti je treba izvesti, da se naučimo komunikacijskega protokola. Na naše presenečenje smo videli, da se število posodobitev, potrebnih za doseganje konvergence treninga z ocenjevalnikom GS (zelena krivulja), zmanjšuje, ko pošiljatelju dovolimo uporabo daljših sporočil. To vedenje je nekoliko kontratuktivno, saj lahko pričakujemo, da je težje naučiti protokol, ko je iskalni prostor komunikacijskih protokolov večji. Z drugimi besedami, uporaba daljših zaporedij pomaga hitrejše učenje komunikacijskega protokola. Vendar pa to ne velja za ocenjevalnik REINFORCE (rdeča krivulja): običajno je potrebnih petkrat več posodobitev za konverzijo v primerjavi z ocenjevalcem GS. Prav tako ni jasne odvisnosti med številom posodobitev, potrebnih za zbliževanje, in največjo možno dolžino sporočila.

Poleg tega narišemo zmedo dajalnika, ki mero meri, koliko možnosti mora izbrati pošiljatelj v vsakem časovnem koraku med vzorčenjem iz porazdelitve verjetnosti po besedišču. Lahko bi videli, da je pri ocenjevalcu GS (zelena krivulja) število možnosti sorazmerno veliko in se z dolžino stavka povečuje, medtem ko pri algoritmu REINFORCE (rdeča krivulja) povečanje zmede ni tako hitro. To pomeni odvečnost kodrov, kar pomeni, da obstaja več parafrazov, ki kodirajo isto pomensko vsebino.

Kako izgleda naučen jezik? Da bi bolje razumeli naravo tega jezika, smo pregledali majhen niz pod stavkov, katerih največja možna dolžina sporočila je enaka 5 enotam, ki jih je ustvaril model. Najprej smo posneli naključno fotografijo predmeta in ustvarili sporočilo. Nato smo iteratili nad nabor podatkov in naključno izbrali slike s sporočili, ki si delijo predpone 1, 2 in 3 simbola z ustvarjenim sporočilom.

Na primer, prva vrstica leve slike, ki uporablja podmnožico slik živali, prikazuje nekaj vzorcev, ki ustrezajo kodi (5747 * * * *). Tu „*“ pomeni katero koli besedo iz besedišča ali oblazinjenja ob koncu stavka.

Vendar se zdi, da slike za kodo (* * * 5747 *) ne ustrezajo nobeni vnaprej določeni kategoriji. To kaže, da je vrstni red besedil v razvitem jeziku ključnega pomena. Zlasti beseda 5747 v prvem položaju kodira prisotnost živali na sliki. Iz iste slike je razvidno, da sporočilo (5747 5747 7125 * *) ustreza določeni vrsti medvedov, kar navaja, da razviti jezik izvaja nekakšno hierarhično kodiranje. To je zelo zanimivo, saj model ni bil izrecno omejen pri uporabi katere koli hierarhične sheme kodiranja. Verjetno lahko ta shema pomaga modelu, da učinkovito opiše nevidne slike. Kljub temu naravni jezik uporablja druga načela za zagotavljanje kompozicijnosti. Zdi se, da je model splošno uporaben, saj kaže podobno vedenje za slike na področju hrane (desna slika na zgornji sliki).

V naši raziskavi smo pokazali, da lahko agenti, modelirani z uporabo nevronskih mrež, uspešno izumijo učinkovit jezik, ki je sestavljen iz zaporedij diskretnih žetonov. Ugotovili smo tudi, da lahko agenti hitreje razvijejo komunikacijski protokol, ko jim omogočimo uporabo daljših zaporedij simbolov. Poleg tega smo opazili, da inducirani jezik izvaja hierarhično shemo kodiranja in obstaja več parafrazov, ki kodirajo isto pomensko vsebino. V prihodnjem delu želimo ta pristop razširiti tudi na modeliranje ciljno usmerjenih sistemov dialoga.

Chatboti in pogovorne platforme AI postajajo vse pomembnejši na področju podjetij, zlasti v bančnem, zavarovalniškem in telekomunikacijskem sektorju. Vendar se sedanji pristopi za gradnjo teh tehnologij še vedno zanašajo na obsežen človeški nadzor. Ljudje morajo bodisi sestaviti pravila ali predložiti primere uspešnih dialogov, ki se uporabljajo za usposabljanje inteligentnih pomočnikov. To je težko določiti na zahtevne naloge, saj je nadzor kakovosti drag in dolgotrajen. Poleg tega so človeški pristopi morda nedosledni ali pa obstajajo učinkovitejši načini reševanja nalog. Naš pristop ima obetaven potencial za nadomestitev ali dopolnitev tega standardnega scenarija: chatboti lahko nato uporabijo povratne informacije o dokončanju nalog, kar omogoča dodaten stroškovno učinkovit nadzor. To bi lahko na nek način pripomoglo k izgradnji uspešnih digitalnih pomočnikov v krajšem času in z manj stroški. Pričakujemo tudi, da bi to omogočilo strojem, da se spopadejo z novimi scenariji in spremembami obstoječih nastavitev brez izrecnega človeškega posredovanja ali potrebe po novih naborih podatkov.

Svoje delo smo predstavili na NIPS’17. Za več informacij in tehnične podrobnosti naše študije, prosimo, preverite: Nastanek jezika z večagencijskimi igrami: Učenje komunikacije s zaporedji simbolov.