Naujas „OpenAI“ požiūris į mokymąsi iš vieno kadro, žvilgsnį į AI ateitį

Vieno kadro imitacijų mokymasis Yanas Duanas, Marcinas Andrychowiczas, Bradly C. Stadie, Jonathanas Ho, Jonas Schneideris, Ilja Sutskeveris, Pieteris Abbeelis, Wojciechas Zaremba

Gegužės 16 d. „OpenAI“ tyrėjai pasidalino vieno iš savo projektų vaizdo įrašu ir dviem svarbiais dokumentais, kuriuose nagrinėjami trys pagrindiniai dabartinės PG plėtros trūkumai: meta mokymasis, vieno šūvio mokymas ir automatinis duomenų generavimas. Ankstesniame savo įraše aš pažadėjau straipsnį, skirtą žaviajai vieno šūvio mokymosi problemai, taigi, čia yra. Galite pradėti pažiūrėję į jų išleistą vaizdo įrašą, kuriame paaiškinamas jų nuostabus darbas:

Šiame vaizdo įraše matote vienos rankos fizinį robotą, sudedantį kubus vienas ant kito. Žinant sudėtingas užduotis, kurias šiuo metu sugeba atlikti pramoniniai robotai, jei tyrėjas nemėgino paaiškinti, kas vyksta, daugelyje paskyrų tai būtų labai blogai. Kontroliuojamoje aplinkoje uždavinys yra paprastas, procedūriniai (užkoduoti) metodai jau išsprendė šias problemas. Daug žadanti ir revoliucinga yra tai, kiek bendra sistema gali pritaikyti įvairius, sudėtingesnius ir adaptyvesnius veiksmus triukšmingesnėje aplinkoje.

Žmogaus ir aukštesnių gyvūnų skirtumai, be abejo, yra ne laipsnio, o rūšies.
- Charlesas Darwinas

Pagal analogiją šis straipsnis yra tvirtas įrodymas, kad pažintinių sistemų skirtumai tarp dabartinio įkūnijamo AI (dirbtinio fizinių sistemų intelekto) ir 22-ojo amžiaus robotų bus masto, o ne pobūdžio. Nuo 2012 m. „ImageNet“ konkurso * klesti giluminio mokymosi tyrimai ne tik tam, kad būtų pakeistas nervų tinklo atlikto paskirstytojo skaičiavimo pobūdis, bet surasti nauji tinklų struktūrizavimo būdai, kad jie galėtų išmokti konkrečią užduotį. Neuroninio tinklo funkcija yra struktūra, todėl ši struktūra nėra užkoduota (nekonstruota ranka), bet tai yra atominių skaičiavimo vienetų, iš pradžių sujungtų tarp įėjimų ir išėjimų, rezultatai, galintys pakeisti savo struktūrą ir jungtis. Modifikuodamas bendrą tinklo struktūrą jis išmoksta konkrečios funkcijos.

Šiame straipsnyje jie sukūrė bendrąją sistemą, galinčią išmokyti atstovą abstrakčiai perteikti užduotis ir išmokti šias žinias perkelti į naujas nematytas užduotis (perduoti mokymąsi) atlikus tik vieną naujos užduoties demonstravimą (mokymąsi imituojant vieną kadrą).

Uždaviniai

Nors tikslus architektūrinis įgyvendinimas skiriasi, jie imasi dviejų užduočių kaip pavyzdžių, kad parodytų bendro požiūrio efektyvumą.

Dalelių pasiekimas

Pirmajame pavyzdyje sistema gauna spalvotų taikinių padėčių įvestis plokštumoje ir vieną vaizdo įrašą, kuriame vaizduojama, kad imituotas agentas eina į nurodytą taikinį.

2 pav. Robotas yra taškinė masė, valdoma 2 dimensijų jėga. Užduočių šeima yra tikslo orientyro pasiekimas. Orientyro tapatumas įvairiose užduotyse skiriasi, o modelis turi išsiaiškinti, kurio tikslo reikia siekti remiantis demonstracija. (kairėje) roboto iliustracija; (viduryje) užduotis yra pasiekti oranžinį langelį, (dešinėje) užduotis yra pasiekti žalią trikampį.

Treniruotės metu sistema turi pakartoti tą pačią užduotį (pasiekti oranžinę spalvą), bet iš kitos konfigūracijos, su skirtingomis pradinėmis roboto ir taikinių padėtimis. Neaišku, ar bandymo metu agentas yra tikrinamas atliekant užduotį, su kuria jis buvo apmokytas (pasiekti oranžinę), ar užduotį, kurios jis dar niekada nebuvo matęs (pavyzdžiui, pasiekti žalią), ar abi.

Apmokyta politika vertinama atsižvelgiant į naujus scenarijus ir sąlygojama naujų demonstravimo trajektorijų, nematytų mokymo metu.

Akivaizdu, kad agentas turi išvesti unikalų demonstravimą tikslą ir vėl pradėti nuo kitos konfigūracijos. Tai reiškia, kad tiksli variklio seka negalėjo būti išmokta prieš bandymą, ir ji turi būti nustatyta remiantis abstrakcija (aukštesnio lygio struktūriniu vaizdavimu) užduočiai ir variklio planavimu.

Blokuoti krovimą

Antrame pavyzdyje agentas turi išmokti sukrauti kubelius (žymimus skirtingomis spalvomis) ta pačia tvarka, kaip parodyta viename modeliuotame demonstracijoje. Ši modeliuojama demonstracija yra 3D dimensijos variklio sukurtų 2D vaizdų, kuriuose modeliuojamos roboto variklio ir jutimo aparato savybės, serija.

Vieno smūgio politika. Bendra strategija, išmokyta išspręsti daugelį užduočių. Viršutinė užduotis: {abc, def}, Pagrindinė užduotis: {ab, cd, ef}

Abiejuose pavyzdžiuose pradinė kubų padėtis demonstravimo ir realiame bandymuose skiriasi, kiekviena užduotis pradedama nuo kitos pradinės padėties. Robotas nemėgina pakeisti kubelių, kad jie atitiktų pradinę demonstravimo vietą, jis perduoda aukštesnio lygio užduotį piliuoti kubą bet kurioje būsenoje.

Mokymai naudojant domenų randomizavimą

Abiem atvejais visi mokymų metu naudojami vaizdai gaunami imituojant, naudojant domeno atsitiktinumą, kuriame jie atsitiktine tvarka atrenka šiuos imties aspektus:

Trikdžių elementų skaičius ir forma ant stalo Visų objektų ant stalo padėtis ir tekstūra Stalo, grindų, „skybox“ ir roboto tekstūros Fotoaparato padėtis, orientacija ir matymo laukas Šviesos kiekis scenoje Pozicija, orientacija, ir specifinės žibintų charakteristikos Atsitiktinio triukšmo tipas ir dydis, pridedami prie vaizdų

Treniruotės, skirtos dalelėms pasiekti

Mes manome, kad vis sudėtingesnis užduočių šeimų rinkinys, kai orientyrų skaičius padidėja nuo 2 iki 10. Kiekvienai užduočių šeimai mes renkame 10000 treniruočių trajektorijų, kur orientyrų padėtys ir taško roboto pradinė padėtis yra atsitiktinės atrankos būdu. Efektyviam demonstraciniam rengimui naudojame griežtai užkoduotą ekspertų politiką. Mes pridedame triukšmą prie trajektorijų, trikdydami apskaičiuotus veiksmus prieš pritaikydami juos aplinkai, ir mes naudojame paprastą elgesio klonavimą, kad mokytume neuroninio tinklo politiką.

Treniruočių komplektas blokų statymui

Konkrečiai, mes renkame 140 mokymo užduočių ir 43 testines užduotis, kurių kiekviena turi skirtingą norimą blokų išdėstymą. Kiekvienos užduoties blokų skaičius gali svyruoti nuo 2 iki 10. Kiekvienai užduočiai mokyti renkame 1000 trajektorijų ir prižiūrime atskirą trajektorijų rinkinį ir pradines konfigūracijas, kurios bus naudojamos vertinimui. Panašiai kaip dalelę pasiekianti užduotis, mes įpurškiame triukšmą į trajektorijos rinkimo procesą. Trajektorijos renkamos pagal užkoduotą politiką.

Sėkmingos demonstracijos renkamos griežtai koduojant politiką

Atminkite, kad mokantis teisingų trajektorijų sukuriama procedūrinė „užkoduota“ politika, kuri, manau, remiasi klasikiniais sistemos identifikavimo ir valdymo metodais. Taigi mokymų ir testavimo metu agentas turi du įėjimus: a) demonstraciją A konfigūracijoje ir b) pradinę konfigūraciją B. Tik treniruotės metu mokymosi algoritmas taip pat turi prieigą prie idealios reakcijos: trajektorijos, pradedančios nuo konfigūracijos B, atsako į problemą ir su tuo, kaip mokinio metu bus lyginamas agento atsakymas - tai tampa prižiūrima mokymosi problema.

Mes manome, kad kiekvienoje mokymo užduotyje yra sėkmingų demonstracijų rinkinys.

Jei neaišku, kitame skyriuje apžvelgsiu skirtingų tipų mokymosi paradigmų skirtumus.

Optimizavimo algoritmas ir nuostolių funkcija

Prižiūrimas mokymasis reiškia mokymo paradigmas, kai tinklas kiekviename sprendime gali pasirinkti teisingą pasirinkimą, kurį jis turėjo padaryti, taigi ir klaidos supratimą. Pavyzdžiui, atliekant šunų ir kačių klasifikavimo užduotį, šunų ir kačių atvaizdų etiketė mokymo metu yra iš anksto žinoma ir klaidos yra nedelsiant aptinkamos. Šiuo požiūriu tai skiriasi nuo neprižiūrimo mokymosi, kai agento paprastai prašoma surasti anksčiau nežinomą jo gaunamų duomenų struktūrą, be kačių ir šunų etikečių turėtumėte atrasti, kad yra dvi skirtingų objektų grupės, paremtos tik duomenyse esančią informaciją. Tai taip pat skiriasi nuo mokymosi sustiprinti, kuris dažnai taikomas realiojo laiko sistemai, kurioje nežinoma tiksli sprendimų, vedančių į tikslą, seka, tačiau tik galutinis „atlygis“ lems, ar seka buvo teisinga, ar ne. Naudodamiesi mokymosi imitacija, jie klasikinę pastiprinimo mokymosi problemą paverčia prižiūrimo mokymosi problema, kurioje paklaida apskaičiuojama nuo atstumo iki stebimos trajektorijos.

Kaip ir bet kurios prižiūrimos treniruotės atveju, užduotis yra visiškai apibrėžta praradimo funkcija, kurios tikslas yra įvertinti, kiek agentas atitiko numatytą elgesį. Šios funkcijos apibrėžimas dažnai yra kritinis žingsnis, nes jis nustato, kaip optimizavimo algoritmai atnaujina modelio parametrus. Šie algoritmai yra svarbūs skaičiavimo laiko atžvilgiu ir, jei reikia, reikia šiek tiek pataisyti, kad būtų galima suartėti. Iš tikrųjų sprendimai, kurie sumažins labai didelių matmenų funkciją, yra labai mažoje parametrų erdvės dalyje, o tarp jų yra mažas smūgio atstumas, kai tik atsikratysite tos mažos srities, atstumas tarp sprendimų greitai auga. Šiuo klausimu labai įdomų darbą, be kita ko, atliko pati nuostabi Jennifer Chayes, ji aprašo temą labai įdomiame interviu paskutiniame „Talking Machines“ epizode.

Mokydami politinių tinklų (visas tinklas, galintis nuspręsti, kokių veiksmų imtis), jie pirmiausia apdoroja sėkmingą demonstravimo trajektoriją. Šioje dalyje bus lyginami du požiūriai: klasikinis elgesio klonavimas (ne visai tikras dėl jų naudojamo diegimo) ir DAGGER algoritmai. Tai leis pakartotinai sumažinti nuostolių funkciją per l2 arba kryžminės entropijos nuostolius, atsižvelgiant į tai, ar veiksmai yra tęstiniai, ar diskretiniai (remiantis įvykių pasiskirstymu seka). Atlikdami visus eksperimentus, jie naudojo „Adamax“ algoritmą, norėdami optimizuoti naudodamiesi 0,001 mokymosi greičiu.

Žingsnio dydis prasideda nuo mažo ir mažėja eksponentiškai.

Pats algoritmas neleidžia perduoti, būtent tai, kaip jūs sukursite savo treniruočių rinkinį ir praradimo funkciją, leis perduoti.

Dviejų rūšių užduotys yra perduodamos. Pirmoji rūšis yra vadinama „realybės atotrūkio mažinimu“, tai yra mokymosi apibendrinimas, leidžiantis pereiti nuo treniruotės imituojamais įėjimais prie bandymų su natūraliais dirgikliais. Modeliavimo duomenys dažnai yra per daug nepriekaištingi realaus pasaulio apytiksliai aprašymai, kuriems trūksta realaus objekto sudėtingumo. Realiame pasaulyje fotoaparatas gali būti sugedęs ir triukšmingesnis, variklio valdymas bus ne toks tikslus, spalvos pasikeis, tekstūros bus turtingesnės ir tt Kad būtų galima pirmą kartą perduoti, jie naudoja metodą, kurį jie vadina „domeno atsitiktinumu“. : tinklas gali išmokti atitinkamos bendros struktūros, pridedant prie įėjimų triukšmą, kuris leis jį tinkamai apibendrinti realiame pasaulyje. Pavyzdžiui, jie pakeis fotoaparato kampą tarp treniruočių pavyzdžių, pakeis tekstūras arba trajektorijas padarys ne tokias tobulas. Pridėdami triukšmą treniruočių metu, pridedame tvirtumo.

Antrasis čia išbandytas perdavimas yra galimybė sukurti atitinkamą variklio seką anksčiau nematytu konfigūracijos ir tikslo rinkiniu, remiantis vienu demonstravimu pradedant kitą pradinę konfigūraciją, bet turint panašų galutinį tikslą. Vėlgi perkėlimą įgalins tai, kaip sukonstravome treniruočių rinkinį ir modeliuosime praradimo funkciją. Pateikdami demonstracijas treniruotėse, kurios prasideda ne nuo tos pačios pradinės sąlygos, kad būtų pasiektas panašus tikslas, jūs leidžiate tinklui išmokti įterpti aukštesnio lygio tikslo vaizdus nenaudojant absoliučių pozicijų, taip pat aukštesnės eilės vaizdus apie variklio seka, kuri nėra paprasta imitacija. Naivi pradinė architektūra leidžia treniruotis atitinkamai modifikuoti struktūrą, o ši treniruota struktūra reiškia galutinę funkciją.

Tikslai

Dėl blokinio krovimo paradigmos jie turėjo keletą suvaržymų, kuriuos jie norėjo atitikti.

Tai turėtų būti lengva pritaikyti užduočių egzemplioriuose, turinčiuose skirtingą blokų skaičių.
Tai turėtų natūraliai apibendrinti skirtingomis tos pačios užduoties permutacijomis. Pvz., Politika turėtų gerai atlikti užduotį {dcba}, net jei ji mokoma tik atliekant {abcd} užduotį.
Jame turėtų būti įvairaus ilgio demonstracijų.

Jie turėjo keletą klausimų, į kuriuos norėjo atsakyti atlikdami šią užduotį.

Kaip treniruotės su elgesio klonavimu palyginamos su DAGGER, atsižvelgiant į tai, kad pakankamai duomenų galima surinkti neprisijungus?
Kaip visos demonstracijos kondicionavimas palyginamas su galutinės norimos konfigūracijos kondicionavimu, net kai galutinėje konfigūracijoje yra pakankamai informacijos, kad užduotis būtų tiksliai apibrėžta?
Kaip visos demonstracijos kondicionavimas palyginamas su kondicionavimo trajektorijos momentiniu vaizdu, kuris yra mažas kadrų, kurie yra labiausiai informatyvūs, pogrupis
Ar mūsų sistemą galima sėkmingai apibendrinti pagal užduotis, kurių ji niekada nematė mokymo metu? (++)
Kokie yra metodo apribojimai?

Architektūra

Dalelių pasiekimas

Šiame pirmame pavyzdyje jie palygino tris architektūras, kurių pagrindą sudaro ilgojo laikotarpio atminties (LSTM) neuroniniai tinklai. To tinklo aprašymas bus pateiktas būsimame pranešime apie atmintį ir dėmesį, kurie yra be galo patrauklūs dalykai tiek pažinimo, tiek skaičiavimo moksluose. Iš esmės LSTM tiekia ankstesnius tinklo išėjimus (laiku) kaip tinklo įvesties dalį kiekvienu nauju laiko momentu, suteikdama praeities būsenoms informaciją apie dabartį (taigi ir jų trumpalaikės atminties tinklų pavadinimą). Jie yra daugelio moderniausių technologijų, susijusių su laiko eilutėmis, pagrindas („Alexa“, „Siri“ ir kt.).

Čia jie naudoja šias tris specifines sąlygas:

  1. Paprastas LSTM: išmoksta įterpti trajektoriją ir esamą būseną, kad padėtų ją į daugiasluoksnį perceptroną, kuris sukels variklio veiksmą
  2. LSTM su dėmesiu: sukurkite svertinę trajektorijos orientyrų atvaizdą
  3. Galutinė būsena, į kurią reikia atkreipti dėmesį: treniruotėse naudokite tik galutinę būseną, kad gautumėte orientyrų svorį, panašų į ankstesnę architektūrą

Blokuoti krovimą

Nors iš principo bendras neuroninis tinklas galėtų išmokti atvaizdavimo nuo demonstravimo ir dabartinio stebėjimo iki tinkamų veiksmų, mums atrodė svarbu naudoti tinkamą architektūrą. Mūsų architektūra, skirta mokymosi blokų kaupimui, yra vienas iš pagrindinių šio darbo indėlių, ir mes manome, kad ji atspindi tai, kokia ateityje galėtų atrodyti sudėtingesnių užduočių vienkartinio imitavimo mokymosi architektūra.

Dėmesio moduliai

Straipsnyje išlieka gana aukštas apibūdinant tinklų, naudojamų užduočiai išmokti, struktūrą. Pagrindinis architektūros ingredientas yra jų dėmesio modulis, tačiau aš manau, kad šiam dalykui reikia konkretaus pranešimo, kuriame būtų išsamiai išnagrinėtas jo esminis vaidmuo. Pagal analogiją kognityvinei mokslo nuolatinio dėmesio koncepcijai, dėmesio moduliai yra naudojami norint išlaikyti ir sutelkti dėmesį į svarbią informaciją, esančią įvairiuose erdvės ir laiko diapazonuose. Tai sukuria fiksuoto dydžio išvestį, kurioje yra laiko ir erdvės ištempto informacijos turinio įdėjimas. Remiantis analogija topologijai, matematikos šaka, kuri, manau, labai informuos, kaip mes suprantame paskirstytas reprezentacijas ateityje, dėmesio tinklas atlieka topologinę informacijos izomorfizmą, tą patį kreivumą, kitokią formą. Atkreipkite dėmesį, kad šis tinklas neveikia noro detektoriaus, galinčio sutelkti dėmesį į netikėtus ar retus įvykius, o tai yra funkcija, susijusi su dėmesiu neuromoksle.

Čia jie naudoja dviejų tipų dėmesio tinklą: a) laikinojo dėmesio tinklas, kuris sukuria svertinę sumą už atmintyje saugomą turinį (užklausą, kontekstą ir atminties vektorius), ir b) apylinkių dėmesio tinklas, galintis atkurti informaciją, susijusią su bloku. pozicijas, atsižvelgiant į esamą agento užklausą.

Laiko dėmesio tinklas, kuriame c: konteksto vektorius, m: atminties vektorius, q: užklausos vektorius, v: išmokto vektoriaus svoris. Išvestis yra tokio paties dydžio kaip atminties vektorius. Tai yra tiesinė tų vektorių kombinacija, leidžianti tam tikram atminties vektoriui turėti didesnį poveikį išvesties pagrindui, atsižvelgiant į kontekstą ir užklausos vektorius.Ta pati idėja, kad erdvinės informacijos konkurenciją dinamiškai palaiko dėmesio sistema.

Politikos tinklas

Visas tinklas yra sudarytas iš trijų skirtingų antrinių tinklų: demonstracinio tinklo, konteksto tinklo ir manipuliavimo tinklo.

Demonstracinis tinklas gauna įvesties demonstracinę trajektoriją ir sukuria demonstracijos įterpimą, kuris bus naudojamas politikoje. Šio įdėjimo dydis auga tiesiškai, atsižvelgiant į demonstravimo ilgį ir aplinkoje esančių blokų skaičių.

Kaip parodyta čia, demonstracinis tinklas gali įterpti įvairaus sudėtingumo ir dydžio demonstracijas į bendrą formatą, kurį kontekstinis tinklas naudos užduoties pateikimui. Tikriausiai šiame lygmenyje jau įvyksta apibendrinimas, demonstravimo įterpimas neturėtų palikti informacijos apie tikslią demonstracijos trajektoriją ir kubo absoliučią padėtį.

Žvelgdami į kontekstinio tinklo struktūrą, nors iš labai aukšto lygio, mes matome sąsają su demonstraciniu tinklu, pateikiančiu demonstracijos įterpimą į centrinius laikinojo dėmesio modulius. Taip pat matome, kad ankstesni veiksmai (LSTM) ir dabartinė būsena pateikiami kaip įvestis sujungta su demonstravimo įterpimu, kad būtų sukurtas globalus konteksto įterpimas, išsiųstas į variklio tinklą.

Jų tinklų funkcijos aprašymas, mano nuomone, yra pati svarbiausia darbo dalis:

Konteksto tinklas pradedamas skaičiuojant užklausos vektorių kaip esamos būklės funkciją, kuri vėliau naudojama dalyvauti skirtinguose demonstravimo įterpimo etapuose. Vieno laiko žingsnio skirtingų blokų dėmesio svarmenys yra sudedami, kad būtų gautas vienas svoris per laiko žingsnį. Šio laikino dėmesio rezultatas yra vektorius, kurio dydis yra proporcingas blokų skaičiui aplinkoje. Tada mes kreipiame dėmesį į kaimynystę, kad informacija būtų skleidžiama įterpiant kiekvieną bloką. Šis procesas kartojamas kelis kartus, kai būsena ištobulinama naudojant LSTM langelį su nesusijusiais svoriais.
Ankstesnė operacijų seka sukuria įterpimą, kurio dydis nepriklauso nuo demonstravimo trukmės, tačiau vis tiek priklauso nuo blokų skaičiaus. Tada mes taikome standartinį švelnųjį dėmesį, kad gautume fiksuotų matmenų vektorius, kur atminties turinį sudaro tik kiekvieno bloko vietos, kurios kartu su roboto būsena sudaro įvestį, perduodamą manipuliavimo tinklui.
Intuityviai tariant, nors objektų skaičius aplinkoje gali skirtis, kiekviename manipuliacijos etape atitinkamų objektų skaičius yra mažas ir paprastai būna fiksuotas. Konkrečiai kalbant apie blokų klojimo aplinką, robotui reikia atkreipti dėmesį tik į bloko, kurį jis bando paimti, padėtį (šaltinio bloką), taip pat į bloko, kurį jis bando pastatyti, vietą ( tikslo blokas). Todėl tinkamai apmokytas tinklas gali išmokti suderinti esamą būseną su atitinkamu demonstravimo etapu ir nustatyti šaltinio ir tikslinių blokų tapatumą, išreikštą švelniais dėmesio svarmenimis per skirtingus blokus, kurie vėliau naudojami atitinkamoms pozicijoms išgauti. būti perduotas manipuliavimo tinklui.

Tai, kaip jie baigia apibūdinti, yra puikus dabartinio PG tyrimų poslinkio nuo ekspertų sistemos požiūrio į mokymosi sistemos požiūrį pavyzdys. Tai taip pat užsimena apie diskusiją apie tai, kaip toliau vystėsi smegenys.

Nors mes neįtvirtiname šio aiškinimo mokyme, mūsų eksperimento analizė palaiko šį aiškinimą, kaip išmokta politika veikia viduje.

Jie nežino, kaip tai veikia! Jie sukuria struktūrą, galinčią atlikti tam tikrus skaičiavimus ir kaupti tam tikrą informaciją, kuri, mūsų manymu, yra a priori naudinga, ir pateikia ją mokymo komplektu, tikėdamiesi, kad visa struktūra išmoks! Yra tam tikra dalis dirbtinio intelekto tyrimų, susijusių su voodoo, menas, būdas nukreipti euristinę paiešką tinkama linkme. Ir panašu, kad daugybė tų magų dabar dirba „OpenAI“.

Jų pačių žodžiais tariant, manipuliavimo tinklas yra paprasčiausia struktūra, pradedant konteksto įterpimu ir baigiant daugiasluoksniu perceptronu, sukuriamas motorinis veiksmas.

Rezultatai

Rezultatai dažnai yra ta dalis, kuria aš mažai domiuosi, ypač dėl tokių nuostabiai puikių techninių dokumentų. Eisiu greitai, nes šis požiūris veikia, jis vykdomas tiksliai tokiu pat tikslumu, kaip ir užkoduota ekspertų politika, ir, priešingai nei tas specifinis procedūrinis požiūris, yra apibendrinamas daugeliui užduočių.

Dalelių pasiekimas

Blokuoti krovimą

Šiuose eksperimentuose jie taip pat išbandė skirtingas sąlygas. Naudodamiesi DAGGER, jie palygino tris skirtingas įvesties sąlygas, paimdami parodytą trajektoriją: visas trajektorijas, trajektorijos momentinį vaizdą arba tik naudodamiesi galutine būsena. Jie taip pat palygino elgesio klonavimo algoritmą su visa demonstracijos trajektorija.

Puikus įrodymas, kad sistema gali apibendrinti kubo tapatumą

Diskusija

Skaitydamas „OpenAI“ pastaruosius mėnesius padarytus sparčius progresus, jaučiu vis didėjantį norą kalbėti apie jų darbą ir pasidalyti mintimis apie tai, kuo tikiu, kad jų darbas, ir visos AI srities pažangą, padeda suprasti mūsų supratimą apie tai, kaip biologinės smegenys veikia. Visų pirma ši auganti mintis, kad tariamai bendros pažintinės funkcijos tarp žmonių yra ne tiek dėl bendros struktūros, kuri iš prigimties žino, kaip atlikti užduotį, o yra sąlygiškai panašių naivių struktūrų, susidūrusių su ta pačia aplinka, rezultatas, išmokti atlikti panašias užduotis. Funkcija yra nefunkcionuojančios struktūros, galinčios išmokti konkrečią užduotį tik dėl specifinės aplinkos, o ne struktūros, galinčios atlikti užduotį natūraliai, rezultatas, tiesiog pritaikant aplinką pora parametrų.

Užduotys ir konfigūracijos: atrodytų savavališkas apibrėžimas

Turiu pripažinti, kad nesuprantu, kodėl jie pasirinko kalbėti apie skirtingas užduotis taip, kaip tai darė jie. Užduotis apibrėžta blokų klojimo eksperimente kaip stygų rinkinys, vaizduojantis blokų padėtį vienas kito atžvilgiu, rinkinio elementų skaičius nusako krūvų skaičių, o ženklų skaičius - blokų, kuriuos reikia išdėstyti, skaičių. . Tada užduotis yra blokų išdėstymas krūvose, neatsižvelgiant į absoliučią krūvos vietą.

Kai kurie blokai gali būti ant stalo, bet ne užduoties dalis

Jų pasirinktas santykinės padėties ir krūvų skaičiaus apibrėžimas kaip atskiros užduoties kriterijus atrodo savavališkas. Iš tikrųjų taip pat gali būti prasminga kalbėti apie skirtingas užduotis, remiantis absoliučiomis pradinėmis blokų padėtimis (tai, ką jie vadina konfigūracija). Manau, kad jiems akivaizdus bendras problemos pobūdis, tačiau aiškumo sumetimais jie renkasi ne gilintis į detales. Politinį mokymąsi prasmingiau apibrėžti kaip dviejų tipų apibendrinimus, kaip jie vėliau daromi:

Atminkite, kad apibendrinimas vertinamas keliais lygiais: išmoktą politiką reikia ne tik apibendrinti iki naujų konfigūracijų ir naujų jau matytų užduočių demonstravimo, bet ir apibendrinti naujoms užduotims.

Tiesiog pakeiskite „užduotis“ „krūvų užsakymais“. Teisingai išmokti užduotį reiškia, kad agentas išmoksta įterpimą, galintį atskirti kubelių padėtį (konfigūracija), bet taip pat ir jų tapatumą (užduotis), šūsnių skaičių (užduotis) ir demonstravimo trajektoriją (trumpai aprašyta citata) pateikti atitinkamą variklio reakciją.

Tie apibendrinimai atrodo prieštaringi, kaip tas pats tinklas gali atskirti pradinę kubo konfigūraciją ar jo tapatumą ir vis dėlto atkurti absoliučią variklio atsako padėtį?

Tai paaiškina skirtingų bendradarbiavimo potinklinių tinklų poreikį mokymosi metu, gaunant skirtingus įvestis, ir paaiškinama, kad kontekstiniame tinkle abstrakčiai užduoties reprezentacijai tiekiama žemesnės eilės informacija, pavyzdžiui, kubelių absoliučiosios pozicijos, prieš mažėjančią komandą.

Galbūt manote, kad komentuoti šį skirtumą tarp užduoties ir konfigūracijos yra kvaila, tačiau būtina suprasti, kad tai iš esmės yra tas pats abstrakcijos procesas žaidžiant skirtinguose objektuose (ir tai atveriama kitam skyriui).

Neįmanoma mokytis be invariancijos

Perkėlimas yra galbūt pati patraukliausia pažinimo koncepcija, nesvarbu, ar tai būtų in-silico, ar in vivo. Tai labai aktuali tema tiek AI tyrinėtojams, tiek neuromokslininkams, ir tai yra mano disertacijos tema. Atminkite, kad glaudžiai susijusios sąvokos buvo ištirtos daugelyje sričių prieš mašininį mokymąsi, ir ši abstrakti ir visada iš dalies apibrėžta sąvoka turi daugybę pavadinimų. Filosofai, antropologai ir sociologai gali tai vadinti (post) struktūralizmu (Claude Levi-Strauss, Michel Foucault), kalbininkas kalbės apie sintagmas ir „Nested Tree“ struktūras (Noam Chomsky), matematikai tikriausiai pagalvos apie homeomorfizmą ar invariantus ir švietimą. tyrinėtojai ar neuromokslininkai gali tai vadinti struktūriniu mokymusi. Taip pat galite pamatyti susijusias sąvokas mašininio mokymosi srityje, pvz., Reprezentacinį mokymąsi ir meta mokymąsi, kurie, atsižvelgiant į autorių, gali reikšti perkėlimo mokymąsi arba mokymosi paradigmą, naudojamą perkėlimo mokymui. Kalbant apie giluminius neuroninius tinklus, šie skirtumai yra neryškūs, nes iš esmės neuroninis tinklas mokosi įterpti tam tikrą problemą (reprezentacinis mokymasis), modifikuodamas jos struktūrą (meta mokymasis), paprastai triukšmingoje aplinkoje, kuri reiškia perkėlimo mokymosi formą.

AI tyrinėtojai ir kognityvinis mokslininkas dažnai turi labai konkretų perkėlimo mokymosi apibrėžimą, tai yra procesas, leidžiantis sistemai panaudoti tam tikroje užduotyje įgytas žinias kitai užduočiai, kuriai būdinga bendra kompozicinė struktūra (kaip aprašyta straipsnyje). Kognityvinis mokslas turi šią artimojo ir tolimojo perdavimo sąvoką, atsižvelgiant į tai, kaip atrodo, kaip skiriasi dvi užduotys. Bet abstrakčiau žiūrint, triukšmingoje ir sudėtingoje aplinkoje visas mokymasis yra mokymosi perkėlimo forma, o skirtumas tarp labai artimo ir labai tolimo perdavimo yra tik bendros informacijos dalykas - vėlgi masto, o ne gamtos dalykas.

Kontroliuojamoje aplinkoje iš anksto stengiamasi sukurti sunkiai užkoduotą tikrovės diskretizaciją, tačiau iš tikrųjų ši diskretizacija procedūriniu būdu atkartoja tai, ką daro perkėlimo mokymasis, ji vienija begalinį būstą realybėje esančių būrių pagal bendrą uždaroje struktūroje. Iš esmės perkėlimas į mokymąsi tiesiogiai arba pratęsiant yra susijęs su procesu, per kurį mokymosi agentai naudoja invariantus pasaulio modeliams kurti. Tai procesas, kurio metu naudojami panašumai, pasikartojimai ir variacijos, siekiant suformuoti vis abstraktesnį ir sudėtingesnį vaizdavimą, kuris struktūrą sudarys ansambliams per įvesties dispersijos intervalą. Bendrąja prasme tai leidžia sukurti pagrindines operacijas, per kurias mes manipuliuojame informacijos grupėmis, panašiai kaip matematikoje tai leidžia sujungti ir susikirtimus. Tai leidžia tapatybėms, tai paaiškina mūsų galimybę klasifikuoti objektus. Joshas Tenembaumas pateikia pavyzdį, kuris iš tikrųjų kalbėjo su manimi: įsivaizduokite, kad mokote dvejų metų vaiką pirmą kartą atpažinti arklį, parodote jam porą skirtingų žirgų paveikslėlių ir tada parodote jam kito arklio nuotrauką ir namo nuotrauką ir paprašykite jo pasakyti, kuris yra arklys. Vaikas šią užduotį atliks gana lengvai, tačiau kompiuteris vis tiek negali to atlikti su tiek mažai įvestų duomenų (vieno šūvio mokymasis).

Kaip vaikas tai padarė?

Gyvūnų atpažinimas buvo tiriamas su vaikais ir yra susijęs su mūsų sugebėjimu dekonstruoti daiktus į atitinkamas dalis, kailio spalvų gamą, kaklo dydį, bendrą formą ir tt. Šis gebėjimas taip pat leidžia atidaryti duris dar niekada nematėte, išmokote motorinę seką, apibendrinančią bet kokią situaciją (srities apibendrinimas). Tai taip pat yra tai, ką naudojate kurdami aiškinamuosius modelius, kurie supaprastina pasaulį, iš pradžių jus gali nustebinti staigus gegutės pasirodymas garsiajame Šveicarijos laikrodyje, tačiau jau po antrojo pasirodymo to tikėsitės. Invariancijos nustatymas yra tai, kaip mokosi neuroninis tinklas, ir tie modeliai yra sukurti nesąmoningai. Pavyzdys yra tai, kaip intuityviai mokomės fizikos, net prieš tai negirdėdami apie matematiką ir skaičius.

Galima paklausti, pavyzdžiui, kaip greitai mikrogravitacijoje gimęs vaikas prisitaikytų prie žemės gravitacijos ir intuityviai išmoktų, kad nukritę daiktai kris ant žemės?

Galime kelti hipotezę, kad kūdikiai ir dauguma gyvūnų nesąmoningai peržiūrės savo modelį, panašiai kaip tada, kai užsidėsite kojines ant šuns kojų ir reikės šiek tiek laiko prisitaikyti prie naujos informacijos.

Bet mažam vaikui bus sąmoningai tardoma ir jo intuityvusis modelis bus keičiamas iš smalsumo, per kalbą, simbolius ir įsitikinimus. Mūsų sugebėjimas sąmoningai tardyti ir keisti savo modelius yra žavus, ir, kaip svarbų ženklą, žmogus gali būti vienintelė rūšis, galinti atlikti proceso verbalizavimą, tačiau kitos rūšys gali atlikti panašius sąmoningus pakeitimus.

Invariancija yra privaloma laiko savybė, jei viskas visada buvo nauja ir niekaip nenuspėjama, vis tiek išliks tas unikalus invariantas, kad viskas visada yra nauja ir nenuspėjama. Neįmanoma įsivaizduoti pasaulio be invariancijos, nes negali būti pasaulio, į kurį būtų galima remtis, be invariancijos gyvenimas būtų neįmanomas, o mūsų smegenys nenaudingos. Gyvenimas yra mašina, veikianti tik tada, kai numatomas įvykių pasikartojimas, priežasčių ir padarinių pasikartojimas, ciklinis energijos įvedimas į organizmą. „Life“ siekdamas pagerinti savo būtinų ciklų naudojimą, mūsų smegenys yra svarbiausia priemonė. Tai numatymo aparatas, prisitaikantis organas, galintis dinamiškai rasti pasikartojimą ir panaudoti jį geriau bendrauti su pasauliu.

Šis metodas, kurį pasirinko gyvenimas, yra ypač tvirtas, norint šiek tiek pakeisti struktūrą. Lieka tas pats pasaulis, statistinės aplinkos savybės, tačiau su juo susidurianti nervų struktūra gali skirtis tol, kol ji gali įterpti atitinkamą informaciją, kurią ji sukūrė, kad galėtų gydyti. Tai paaiškina, kodėl mūsų smegenys gali būti tokios skirtingos, kaip atskiros, net pirminės žievės, ir vis dėlto atlikti tas pačias funkcijas.

Nervų sistemos yra adaptyvios, joms nereikia evoliucijos ir lėtų genetinių mutacijų, kad būtų galima pakeisti elgesį tinkamais būdais. Paprasta nervų sistema, tokia, kokią randa C. Elegansas, tarnauja kaip įgimtas vidinis koordinatorius ir išorinis jutiklis: pajunti maistą ir juda jo link, bėga nuo skausmo, dauginasi. Iš pradžių tos paprastos sistemos buvo nelanksčios ir atlikdavo kraštutinį mūsų triukšmingo pasaulio apytikslį suderinimą, kad būtų įmanoma jį diskretizuoti esant nedidelėms galimoms būsenoms (maistas kairėje, šiluma žemiau ir kt.). Mūsų motoriniai ir jutimo sugebėjimai vystėsi kartu su mūsų nervų sistemos numatomomis galimybėmis. Tobulėjant jutikliams, nervų sistema pamažu sugebėjo modifikuoti savo struktūrą, kad kauptų informaciją ir mokytųsi iš patirties. Iš pradžių ji sugebėjo išmokti atpažinti tam tikras įvesties kategorijas, tokias kaip kvapų ar šviesos pobūdis, taip pat išmoko bandymų ir klaidų dėka valdyti vis sudėtingesnę variklio sistemą. Atkreipkite dėmesį, kad pasaulis yra toks sudėtingas, kad mūsų smegenys natūraliai vystėsi mokymosi paradigmos, o ne įgimto procedūrinio požiūrio link. Skaičiuojant tai yra visiškai prasminga, nesudėtingo Go žaidimo būsenos erdvė yra daug didesnė (2,10 ⁷⁰) nei atomų skaičius Visatoje (10 ⁸⁰), o organizmai tampa vis sudėtingesni, bandydami užkoduoti visų galimų apytikslių sumų derinimus. teigiama, kad tai greitai gali būti neginčijama dėl kombinatorinio sprogimo.

Kai kurie žmonės gali tikėti, kad mūsų smegenys yra pastatytos taip, kad jos įgimtai vaizduoja erdvę, kurioje ji vystysis, kad DNR kažkur yra genas tam, kas sudaro veidą, arba laikinas garso bangų, kurios sudaro bangas, organizavimas aukštyn žodžiai. Jie gali patikėti, kad šios įgimtos žinios kažkur užkoduotos gimus. Kiti, pavyzdžiui, mano filosofijos mokytojas, kai mokiausi vidurinėje mokykloje, gali patikėti, kad egzistencija viršija esmę ir kad mūsų smegenys yra visiškai ir išskirtinai apibrėžtos organizmo ir pasaulio susidūrimo. Realybė, be abejo, yra sudėtingesnė, ir daugumai iki šiol tirtų teletencefalinių sistemų smegenys įgimtai ne koduoja savo atliekamą funkciją, bet išmoks ją priklausomai nuo informacijos, esančios jo įvestyse. Jei trūksta tinkamos informacijos, gebėjimas mokytis toje struktūroje gali turėti galiojimo pabaigos datą (pvz., Amblyopia). Bet jei įgimta struktūra neužkoduoja galutinės funkcijos, smegenys iš tikrųjų turi specifinę struktūrą. Ši struktūra yra išsaugota tarp asmenų, o tos pačios rūšies individai turi bendras funkcijas ir pavaras. DNR iš tikrųjų sukuria tam tikrą struktūrą vietoje, struktūrą, kuri negali vidutiniškai atlikti savo galutinės funkcijos, bet struktūrą, kuri, remiantis individualia patirtimi, gali išmokti specifinių užduočių sudėtingumą. Nenuostabu, kad evoliucija privertė parodyti labai efektyvų kraujo ir smegenų barjerą, izoliuojantį smegenis nuo likusio kūno, taip pat meninges ir kietojo kaulo apvalkalą, saugantį jį nuo išorinio pasaulio, nes skirtingai nuo kitų organų, kuriuose struktūra užkoduota genome, treniruotų smegenų struktūros negalima atkurti iš įgimto modelio. Įspūdinga yra tai, kad tuos pačius mokymosi mechanizmus matome pagal analogiją, plėtojant vis sudėtingesnius gilius tinklus, atliekančius vis sudėtingesnes užduotis.

Kompozicines struktūras sunku pastebėti, bet visur

Sidenote yra keista, kad net autoriai nepripažįsta, kad jų pirmoji užduotis - tikslo siekimas - turi kompozicinę struktūrą.

Dalelės, pasiekiančios užduotis, gražiai parodo iššūkius, apibendrinančius supaprastintą scenarijų. Tačiau užduotys neturi skirtingos kompozicinės struktūros, todėl apibendrinimo vertinimas pagal naujas užduotis tampa sudėtingas.

Nors struktūra iš tikrųjų yra žemesnio lygio nei blokų sudėjimas ir nėra lengvai prieinama eksperimentams, užduotį iš tikrųjų sudaro pasidalijama struktūra. Artėjant prie pasaulio iki plokštumos, viena kompozicinė struktūra yra tokia, kad kubo tapatumas (spalva) išsaugomas su vertimu ir einant iš A bloko arba atsitiktinės pradinės padėties padėtyje (Xa1, Ya1) į B bloką padėtyje (Xb1, Yb2). ) yra tos pačios aukštesnės eilės kompozicinės struktūros dalis nei einant iš bloko A padėtyje (Xa2, Ya2) į bloką B padėtyje (Xb2, Yb2).

Tinklų sąsajos

Neuroninių tinklų, galinčių apdoroti įvestis skirtingais abstrakcijos lygiais, planavimui bus reikalingos sąsajos - sritis, kuri, manau, turi dar daug ką atrasti. Tos sąsajos gali būti įvairaus pobūdžio. Jie, pavyzdžiui, gali būti vertinami kaip bendra dviejų tinklų kalba, kaip parodyta straipsnyje, žemesnio lygio tinklas, apsiginklavęs dėmesio sistema (demonstracinis tinklas), gali išversti demonstraciją vaizduojant kitą tinklą (konteksto tinklą), kurį gali naudoti nukreipti veiksmą nepriklausomai nuo demonstracinės trukmės ar pradinės konfigūracijos.

Šios kalbos paviršius yra plokštumas, fiksuoto dydžio, tačiau galima įsivaizduoti galimus pakeitimus, kurie galėtų pagerinti ryšį tarp tinklo. Pvz., Gali būti nustatyta, kad paviršiaus dydis dinamiškai auga ar traukiasi, kai tinklai sąveikauja mokymosi metu, taigi komplikuojama ar plečiama kalbos sudėtingumas. Taip pat galėtume įsivaizduoti dinamiškesnę sąveiką, pavyzdžiui, pateikdami grįžtamąjį ryšį. Galėtume įsivaizduoti, kad egzistuoja tarpininkų tinklai, kurie išmoktų sklandžiai bendrauti tarp tinklų, egzistuojančių kaip lygiagretus tinklas, mokantis moduliuoti pirmojo tinklo įvestį, remiantis antrojo tinklo įvestimi ir išėjimais. Galėtume įsivaizduoti sudėtingus konteksto tinklus, veikiančius kaip tonizuojantis (lėtai kintantis) antplūdis į kelis labiau specializuotus tinklus ... Įspūdinga ateities tyrimų sritis!

Gedimų atvejai užsimena apie galimus naujų modulių vaidmenis

Verta paminėti, kad klaidos dažnai kyla dėl motorinių klaidų, o klaidų skaičius didėja, nes užduotis sudėtinga.

Variklio funkcijos neturėtų pabloginti tik padidėjęs taikinių skaičius, tai yra tvirtas įrodymas, kad būdas, kuriuo reprodukcijos tinklas mokosi kalbėtis su motoriniu tinklu, yra per daug abstraktus. Keista, nes, jų teigimu, jų testas rodo, kad kontekstinio tinklo ir variklio tinklo sąsaja yra gana konkreti (roboto padėtis, taikinio padėtis).

Galimas sprendimas galėtų būti skirtingos praradimo funkcijos arba modulinės praradimo funkcijos, atspindinčios kiekvieną konkretų užduoties aspektą, kadangi tai yra modulinė architektūra. Tai taip pat padėtų smegenų ikimotorinių sričių ekvivalentas, kad būtų užtikrinta, jog demonstravimo ir konteksto tinklas gali likti abstraktus, nepažeidžiant variklio komandos. Premotoriniai regionai yra būtini norint geriau lokalizuoti objektus pagal tikslą (iš abstrakčių tinklų) ir jutiminius įėjimus, kad būtų galima pasirinkti geriausią variklio komandą. Atrodo, kad konteksto tinklas bando demonstraciją perkelti į aukštesnio lygio įterpimą ir tuo pačiu metu paruošia motorinius veiksmus dabartiniame kontekste. Priešmotorinio tinklo vaidmuo būtų išmokti bendrauti su variklio sistema į tikslą orientuotu ir adaptyviu būdu, derinant tiek priešvario, tiek smegenų funkcijas, kad būtų galima mokytis motorikos ir greitai adaptuotis.

Yra įdomi teorija, „Moravec“ paradoksas, prognozuojanti, kad apmokestinimas skaičiavimo būdu bus ne aukštesnio lygio pažinimas, o jutimo įėjimų ir motorinių sistemų išėjimų apdorojimas. Tai iš tikrųjų galėtų lemti didelį neuronų kiekį mūsų smegenyse (daugiau nei likusiose mūsų smegenyse), kad būtų galima prisitaikyti prie motorinio veikimo. Šis paradoksas buvo suformuluotas tuo metu (80-ųjų), kai mes vis dar tikėjome, kad savo žinias galime įterpti į mašiną, kad atliktume sudėtingas užduotis nekontroliuojamoje triukšmingoje aplinkoje. Šis paradoksas, be abejo, yra prasmingas, jei mašina kažkodėl sugeba reprezentuoti pasaulį diskretizuotų būsenų rinkinyje, tada būtų lengviau sukurti aukštesnio lygio funkciją. Bet aš tikiu, kad abu pasirodys labai apmokestinami, o vidinė reprezentacija, naudojama tinklų sąsajoje, toli gražu nebus panaši į mūsų pačių sąmoningą reprezentaciją.

Išvada

Derinant skirtingus neuroninius tinklus, atsakingus už specifinį problemos gydymą, šis straipsnis parodo, kad sukuriant užduotį, kuriai iš esmės reikalingas apibendrinimas, ir sukuriant tinkamą mokymosi aplinką atliekant domenų randomizavimą, neuroninį tinklą su prieiga prie atminties ir dėmesio sistema gali išmokti apibendrinti ne tik paprastą atgaminimą. Jis gali išmokti atrasti aukštesnio lygio tikslą, kuris tik kartą buvo parodytas vaizdiniame informacijos sraute, ir atlikti skaičiavimus bendroje erdvėje, kad būtų atkurti tinkami veiksmai, galintys atkurti tą tikslą kitame kontekste.

Ateityje pastebėsime vis sudėtingesnį statinių, pastatytų iš tų atominių konstrukcinių blokų, kurie gali išmokti apibendrinti sudėtingas užduotis, bet dar svarbiau atlikti keletą iš tokių užduočių, naujoje aplinkoje, mažiau pasikliaujant kietai užkoduotais metodais, tokiais kaip pirminis duomenų apdorojimas arba atminties saugojimas. Atminties saugojimas bus pakeistas paskirstytais atvaizdais per atminties tinklą, dėmesio sistemas pakeis ciklinė veikla realaus laiko dėmesio tinkluose. Lieka klausimas, kaip mes sugebėsime pritaikyti stiprią serijinę technologiją (Tiuringo mašinas) vis labiau pasitikėdami paskirstyta kompiuterija įkūnytoje sistemoje.