OpenAIs nye tilnærming for læring av imitasjonslære med et skudd, et blikk inn i AIs fremtid

One-Shot Imitation Learning Yan Duan, Marcin Andrychowicz, Bradly C. Stadie, Jonathan Ho, Jonas Schneider, Ilya Sutskever, Pieter Abbeel, Wojciech Zaremba

16. mai delte OpenAI-forskere en video av et av prosjektene sine sammen med to papirer av betydning som utforsket løsninger på tre viktige flaskehalser i dagens AI-utvikling: metallæring, læring med én skutt og automatisert datautvikling. I mitt forrige innlegg lovet jeg en artikkel dedikert til det fascinerende problemet med læring med ett skudd, så her går det. Du kan begynne med å se på videoen de ga ut som forklarer deres fantastiske arbeid:

I denne videoen ser du en fysisk robot med en arm stable terninger oppå hverandre. Å kjenne til de komplekse oppgavene som industriroboter for øyeblikket er i stand til å utføre, hvis forskeren ikke prøvde å forklare hva som skjer, på mange kontoer ville dette være veldig overveldende. I kontrollerte omgivelser er oppgaven enkel, prosessuelle (hardkodede) tilnærminger har løst disse problemene allerede, det som er lovende og revolusjonerende er hvor mye det generelle rammeverket under kan skalere opp til flere, mer komplekse og tilpasningsdyktige oppførsel i støyende omgivelser.

Forskjellen i tankene mellom mennesket og de høyere dyrene, stor som den er, er absolutt en grad og ikke av slag.
- Charles Darwin

Analogt sett er denne artikkelen et sterkt bevis på at forskjellene i kognitive systemer mellom nåværende legemliggjort AI (kunstig intelligens av fysiske systemer) og roboter fra det 22. århundre vil være av skala og ikke av slag. Siden 2012 ImageNet-konkurranse * har dyp læringsforskning hatt en stor økning, ikke så mye for å endre arten av den distribuerte beregningen gjort av et nevralt nettverk, men ved å finne nye måter å strukturere nettverk på for at de skal lære en spesifikk oppgave. For en nevral nettverksfunksjon er struktur, denne strukturen er ikke hardkodet (ikke designet for hånd), men det er resultatene fra atomberegningsenheter som først er koblet mellom innganger og utganger, som er i stand til å endre strukturen og forbindelsene. Det er ved å endre den generelle strukturen i nettverket at det lærer seg en spesifikk funksjon.

I denne artikkelen bygde de et generelt rammeverk som var i stand til å trene en agent til å representere oppgaver på en abstrakt måte, og lære å overføre denne kunnskapen til nye usettede oppgaver (transfer learning) etter bare en demonstrasjon av den nye oppgaven (one shot imitasjonslæring).

Oppgavene

Selv om den eksakte arkitektoniske implementeringen er forskjellig, tar de to oppgaver som eksempler for å vise ytelsen til den generelle tilnærmingen.

Partikkel når

I det første eksemplet mottar systemet innganger av fargede målposisjoner i et fly og en enkelt videodemonstrasjon av den simulerte agenten som går til det spesifiserte målet.

Figur 2. Roboten er en punktmasse kontrollert med todimensjonal kraft. Familien med oppgaver er å nå et mål landemerke. Landemerkets identitet skiller seg fra oppgave til oppgave, og modellen må finne ut hvilket mål man skal forfølge basert på demonstrasjonen. (venstre) illustrasjon av roboten; (midt) oppgaven er å nå den oransje boksen, (til høyre) oppgaven er å nå den grønne trekanten.

Under trening må systemet reprodusere den samme oppgaven (nå oransje), men fra en annen konfigurasjon, med forskjellige startposisjoner for roboten og målene. Det er ikke klart om under testingen agenten ble testet på oppgaven han ble trent på (rekke oransje) eller på oppgave han aldri før hadde sett (rekke grønt for eksempel) eller begge deler.

Den trente politikken blir evaluert på nye scenarier og betinget av nye demonstrasjonsbaner som ikke er sett under trening.

Det er sikkert at agenten må utlede målmålet fra en unik demonstrasjon og igjen starte fra en annen konfigurasjon. Dette innebærer at den eksakte motoriske sekvensen ikke kunne blitt lært før testing og måtte utledes gjennom abstraksjon (strukturert representasjon på høyere nivå) av oppgaven og motorisk planlegging.

Blokkstabling

I det andre eksemplet må agenten lære å stable kuber (identifisert av forskjellige farger) i samme rekkefølge som den som er vist i en enkelt simulert demonstrasjon. Denne simulerte demonstrasjonen er en serie med 2D-bilder generert av en 3D-fysikkmotor der egenskapene til robotenes motor og sensoriske apparater modelleres.

En-shot-politikk. En enkelt policy som er opplært til å løse mange oppgaver. Toppoppgave: {abc, def}, bunnoppgave: {ab, cd, ef}

I begge eksemplene er startposisjonene til kubene i demonstrasjonen og i den virkelige testen forskjellige, hver oppgave starter fra en annen startposisjon. Roboten prøver ikke å bytte ut kubene for å samsvare med startposisjonen til demonstrasjonen, den overfører oppgaven på høyere nivå med å pelle kuben uansett hvilken tilstand han starter i.

Opplæring ved bruk av domenevaluering

I begge tilfeller er alle bildene som ble brukt under trening oppnådd gjennom simulering ved bruk av domenetil randomisering der de vil randomisere følgende aspekter av prøvene:

Antall og form på distraheringsobjekter på bordet Plassering og tekstur av alle objekter på bordet Teksturer på bordet, gulvet, skybox og robot Posisjon, orientering og synsfelt for kameraet Antall lys i scenen Posisjon, retning, og spekulære egenskaper til lysene Type og mengde tilfeldig støy lagt til bilder

Treningssett for partikkel nå

Vi vurderer et stadig vanskeligere sett med oppgavefamilier, der antall landemerker øker fra 2 til 10. For hver oppgavefamilie samler vi inn 10000 bane for trening, der posisjonene til landemerker og startposisjonen til poengroboten er tilfeldig. Vi bruker en hardkodet ekspertpolitikk for å effektivt generere demonstrasjoner. Vi legger støy til banene ved å forstyrre de beregnede handlingene før vi bruker dem på miljøet, og vi bruker enkel atferdskloning for å trene neurale nettverkspolitikk

Treningssett for blokkstabling

Konkret samler vi 140 treningsoppgaver, og 43 testoppgaver, hver med en annen ønsket utforming av blokkene. Antall blokker i hver oppgave kan variere mellom 2 og 10. Vi samler 1000 baner per oppgave for trening, og opprettholder et eget sett med baner og innledende konfigurasjoner som skal brukes til evaluering. I likhet med den partikkelnærende oppgaven, injiserer vi støy i baneinnsamlingsprosessen. Banene er samlet ved hjelp av en hardkodet policy.

Vellykkede demonstrasjoner samles ved hjelp av en hardkodet policy

Merk at under læring blir de riktige banene generert av en prosessuell "hardkodet" policy, som jeg tror er avhengig av klassiske teknikker for systemidentifikasjon og kontroll. Så under trening og testing har agenten to innganger: a) en demonstrasjon i en konfigurasjon A, og b) en startkonfigurasjon B. Bare under trening har læringsalgoritmen også tilgang til en ideell respons: en bane som starter fra konfigurasjon B som svarer på problemet og som responsen fra agenten vil bli sammenlignet med i løpet av læring - noe som gjør det til et overvåket læringsproblem.

For hver treningsoppgave antar vi tilgjengeligheten av et sett med vellykkede demonstrasjoner.

Hvis det ikke er klart, vil jeg gå over forskjellene mellom de forskjellige typene læringsparadigmer i neste avsnitt.

Optimaliseringsalgoritme og tapsfunksjon

Veiledet læring viser til treningsparadigmer der nettverket ved hver avgjørelse har tilgang til det riktige valget han burde tatt, og derav til en forestilling om feil. For eksempel i en klassifiseringsoppgave mellom hunder og katter, er merkingen av bilder av hunder og katter under trening kjent på forhånd, og feilene oppdages umiddelbart. I den forstand er det forskjellig fra uovervåket læring der agenten generelt blir bedt om å finne en tidligere ukjent struktur i innspillene han mottar, og uten merkelapper av katter og hunder ville måtte oppdage at det er to klynger med forskjellige gjenstander bare basert på informasjonen i dataene. Det er også forskjellig fra Forsterkningslæring som ofte gjelder for sanntidssystem der den eksakte beslutningsrekkefølgen som fører til et mål er ukjent, men bare en endelig "belønning" vil avgjøre om sekvensen var riktig eller ikke. Ved å bruke imitasjonslæring forvandler de et klassisk forsterkningsinnlæringsproblem til et overvåket læringsproblem, der feilen beregnes fra avstand til en observert bane.

Som det er tilfelle for ethvert veiledet opplæringsoppsett, er oppgaven som er tilgjengelig, definert fullstendig av tapsfunksjonen, som har som mål å kvantifisere hvor langt var agenten fra den tiltenkte oppførselen. Å definere denne funksjonen er ofte det kritiske trinnet, da det avgjør hvordan optimaliseringsalgoritmer oppdaterer parametrene til modellen. Disse algoritmene er viktige når det gjelder beregningstid, og krever ofte litt finjustering for å kunne konvergere, om i det hele tatt. Faktisk ligger løsningene som vil minimere funksjonen i veldig høy dimensjon i et veldig lite skall i parameterrommet, med en liten hammingsavstand mellom dem, så snart du kommer bort fra det lille domenet, vokser avstanden mellom løsningene raskt. Det er mye veldig interessant arbeid om det emnet som er gjort blant andre av den veldig fantastiske Jennifer Chayes, hun børster emnet i et veldig interessant intervju på den siste episoden av Talking Machines.

Under opplæring av policy-nettverkene (hele nettverket, i stand til å bestemme ut fra hvilke innspill de skal ta), behandler de først den vellykkede demonstrasjonsbanen. For denne delen vil de sammenligne to tilnærminger, den klassiske Atferdskloning (ikke helt sikker på implementeringen de brukte) og DAGGER-algoritmer. Dette vil da tillate iterativ minimering av tapsfunksjonen enten gjennom l2 eller tverr-entropitap basert på om handlinger er kontinuerlige eller diskrete (basert på fordelinger av hendelser i sekvensen). I alle eksperimenter brukte de Adamax-algoritmen til å utføre optimaliseringen med en læringshastighet på 0,001.

Trinnstørrelsen starter liten og forfaller eksponentielt.

Algoritmen i seg selv tillater ikke overføring, det er hvordan du bygger treningssettet ditt og tapsfunksjonen din som vil gi rom for overføring.

To typer overføring finnes i oppgavene. Den første typen blir referert til som "å bygge bro mellom virkelighetsgapet", det er en generalisering i læring som muliggjør overføring mellom trening på simulerte innganger til testing av naturlige stimuli. Simuleringsdata er ofte en fattig tilnærming av den virkelige verden, for perfekt, og mangler kompleksiteten til det virkelige objektet. I den virkelige verden kan kameraet være feil og bråkete, motorstyringen vil være mindre presis, fargene endres, teksturene blir rikere osv. For å tillate denne første overføringen bruker de en metode de omtaler som "domene randomisering" : det er ved å legge støy til inngangene at nettverket kan lære den vanlige relevante strukturen som gjør at det kan generaliseres riktig til den virkelige verden. De vil for eksempel endre vinkelen på kameraet mellom treningseksempler, endre teksturer eller gjøre banene mindre perfekte. Ved å legge til støy under trening legger vi til robusthet.

Den andre overføringen som testes her, er muligheten til å produsere en relevant motorsekvens i tidligere usett sett med konfigurasjon og mål, basert på en enkelt demonstrasjon som starter i en annen initial konfigurasjon, men med et lignende sluttmål. Igjen her vil overføring bli muliggjort av hvordan vi konstruerer treningssettet, og modellerer tapsfunksjonen. Ved å presentere demonstrasjoner under trening som ikke starter fra samme utgangspunkt for å nå et lignende mål, lar du nettverket lære å legge til en representasjon av målet på høyere nivå uten å bruke absolutte posisjoner, samt en representasjon av høyere orden av motorsekvensen som ikke er en enkel etterligning. Den naive initialarkitekturen gjør det mulig for trening å endre strukturen på en relevant måte, og denne trente strukturen innebærer den endelige funksjonen.

Mål

For blokkstabelparadigmet hadde de flere begrensninger de ønsket at læringsagenten skulle møte.

Det skal være enkelt å bruke på oppgaveforekomster som har varierende antall blokker.
Det bør naturlig generaliseres til forskjellige permutasjoner av samme oppgave. For eksempel bør policyen fungere bra på oppgave {dcba}, selv om den bare er trent på oppgave {abcd}.
Den skal romme demonstrasjoner av variabel lengde.

De hadde flere spørsmål de ønsket svar på for denne oppgaven.

Hvordan sammenligner trening med atferdskloning med DAGGER, gitt at tilstrekkelig med data kan samles offline?
Hvordan sammenlignes kondisjonering på hele demonstrasjonen med kondisjonering på den endelige ønskede konfigurasjonen, selv når den endelige konfigurasjonen har nok informasjon til å spesifisere oppgaven fullt ut?
Hvordan sammenlignes kondisjonering på hele demonstrasjonen med kondisjonering på et “øyeblikksbilde” av banen, som er en liten delmengde rammer som er mest informative
Kan vårt rammeverk generalisere til typer oppgaver som det aldri har sett under trening? (++)
Hva er dagens begrensninger av metoden?

Arkitektur

Partikkel nå

For dette første eksemplet sammenlignet de tre arkitekturer som alle er basert på nevrale nettverk (Long Short Term Memory). En beskrivelse av nettverket vil komme i et fremtidig innlegg om minne og oppmerksomhet, som er absolutt fascinerende fag både innen kognitive og beregningsvitenskapelige fag. I hovedsak mater en LSTM tidligere nettverksutganger (i tide) som en del av inngangen til nettverket på hvert nytt tidspunkt, slik at informasjon fra tidligere stater kan informere nåtiden (derav navnet på korttidshukommelsesnettverk). De er roten til mange topp moderne teknologier som omhandler tidsserier (Alexa, Siri osv.).

Her bruker de de tre spesifikke forholdene:

  1. Vanlig LSTM: lærer å legge ned banen og gjeldende tilstand for å mate den til et flerlags perceptron som vil produsere den motoriske handlingen
  2. LSTM med oppmerksomhet: produser en vektet representasjon over landemerkene i banen
  3. Slutttilstand med oppmerksomhet: bruk kun i opplæring av den endelige tilstanden for å produsere en vekting over landemerker, lik den forrige arkitekturen

Blokkstabling

Selv om et generisk nevralt nettverk i prinsippet kunne lære kartleggingen fra demonstrasjon og nåværende observasjon til passende handling, fant vi det viktig å bruke en passende arkitektur. Vår arkitektur for stabling av blokkering av læring er et av hovedbidragene i denne artikkelen, og vi mener at den er representativ for hvordan arkitekturer for en-shot imitasjonslæring av mer komplekse oppgaver kan se ut i fremtiden.

Oppmerksomhetsmoduler

Artikkelen er fortsatt relativt høyt når det gjelder å beskrive strukturen til nettverkene som brukes til å lære oppgaven. En sentral ingrediens i arkitekturen er oppmerksomhetsmodulen deres, men jeg tror at dette emnet trenger et spesifikt innlegg om fordypningen i detalj i sin essensielle rolle. I analogi med det kognitive vitenskapskonseptet vedvarende oppmerksomhet, brukes oppmerksomhetsmoduler for å holde og fokusere på relevant informasjon som finnes i forskjellige tidsrom og tidsspenn. Den produserer en fast størrelse som inneholder innebygging av informasjonsinnhold som ble strukket i tid og rom. I analogi med topologi, en gren av matematikk som jeg tror vil informere om hvordan vi forstår distribuerte representasjoner i fremtiden, utfører et oppmerksomhetsnettverk en topologisk isomorfisme av informasjon, samme krumning, annen form. Legg merke til at disse nettverkene ikke spiller en rolle som salektivitetsdetektor som kan fokusere på uventede eller sjeldne hendelser, som er en funksjon assosiert med forestillingen om oppmerksomhet i nevrovitenskap.

Her bruker de to typer oppmerksomhetsnettverk: a) et tidsmessig oppmerksomhetsnettverk som produserer en vektet sum i forhold til innhold (spørring, kontekst og minnevektorer) lagret i minnet, og b) et oppmerksomhetsnettverk i nabolaget som er i stand til å gjenopprette informasjon i forhold til å blokkere posisjoner avhengig av gjeldende spørring fra agenten.

Temporal oppmerksomhetsnettverk, med c: kontekstvektor, m: minnevektor, q: spørringsvektor, v: lært vektorvekt. Utgangen har samme størrelse som minnevektoren. Det er en lineær kombinasjon av den vektoren som gjør det mulig for noen minnevektorer å ha større innvirkning på utgangen basert på kontekst og spørringsvektorer.Den samme ideen her, konkurranse mellom romlig informasjon opprettholdes dynamisk av oppmerksomhetssystemet.

Politikknettverket

Det komplette nettverket er sammensatt av tre forskjellige undernettverk: demonstrasjonsnettverket, kontekstnettverket og manipulasjonsnettverket.

Demonstrasjonsnettverket mottar en demonstrasjonsbane som innspill, og produserer en innebygging av demonstrasjonen som skal brukes av politikken. Størrelsen på denne innebygningen vokser lineært som en funksjon av demonstrasjonens lengde så vel som antall blokker i miljøet.

Som vist her er demonstrasjonsnettverket i stand til å legge inn demonstrasjon av varierende kompleksitet og størrelse i et vanlig format som vil bli brukt av kontekstnettverket for å representere oppgaven. Det er sannsynligvis allerede på dette nivået at generalisering skjer, demonstrasjonsinnstøtningen bør utelate informasjon om den nøyaktige banen og absolutte posisjoner som ble sett under demonstrasjonene.

Ser vi på strukturen i kontekstnettverket, selv om vi fra et veldig høyt nivå ser vi grensesnittet med demonstrasjonsnettverket mate en innebygging av demonstrasjonen til de sentrale tidsmessige oppmerksomhetsmodulene. Vi ser også at tidligere handlinger (LSTM) og nåværende tilstand mates som innspill som er koblet sammen med demonstrasjonsinnlegging for å produsere en global kontekstinnlegging sendt til motornettet.

Deres beskrivelse av nettverksfunksjonen er etter min mening den viktigste delen av papiret:

Kontekstnettet starter med å beregne en spørringsvektor som en funksjon av den nåværende tilstanden, som deretter brukes til å delta på de forskjellige tidstrinnene i demonstrasjonsinnlegging. Oppmerksomhetsvektene over forskjellige blokker innen det samme tidstrinnet summeres sammen for å produsere en enkelt vekt per tidstrinn. Resultatet av denne tidsmessige oppmerksomheten er en vektor hvis størrelse er proporsjonal med antall blokker i miljøet. Vi bruker deretter oppmerksomhet i nabolaget for å formidle informasjonen på alle innbygninger i hver blokk. Denne prosessen gjentas flere ganger, der staten avanseres ved bruk av en LSTM-celle med ubundne vekter.
Den forrige operasjonssekvensen produserer en innebygning hvis størrelse er uavhengig av lengden på demonstrasjonen, men fortsatt avhengig av antall blokker. Vi bruker deretter standard myk oppmerksomhet for å produsere faste dimensjonsvektorer, der minneinnholdet bare består av posisjoner for hver blokk, som sammen med robotens tilstand danner inngangen som sendes til manipulasjonsnettverket.
Selv om antallet objekter i omgivelsene kan variere, er antallet intuitivt på hvert trinn i manipulasjonsoperasjonen lite og vanligvis fast. For stabling av blokkeringsmiljøet, bør roboten bare trenger å ta hensyn til posisjonen til blokken den prøver å plukke opp (kildeblokken), samt posisjonen til blokken den prøver å plassere på toppen av ( målblokken). Derfor kan et riktig trent nettverk lære å matche den nåværende tilstanden med det tilsvarende trinnet i demonstrasjonen, og utlede identiteten til kilden og målblokkene uttrykt som myke oppmerksomhetsvekter over forskjellige blokker, som deretter brukes til å trekke ut de tilsvarende posisjonene til overføres til manipulasjonsnettverket.

Måten de avslutter beskrivelsen på, er et perfekt eksempel på dagens drift av AI-forskning fra en ekspert systemtilnærming til en læringssystemtilnærming, og den antyder også diskusjonen rundt hvordan hjernen utviklet seg nedenfor.

Selv om vi ikke håndhever denne tolkningen under opplæring, støtter eksperimentanalysen denne tolkningen av hvordan den innlærte policyen fungerer internt.

De vet ikke hvordan det fungerer! De bygger en struktur som er i stand til å utføre viss beregning og lagre visse opplysninger som vi synes er a-priori nyttige, og gir den et treningssett i håp om at hele strukturen vil lære! Det er en slags kunstig intelligens-forskningsvoodoo på vei oppover, en kunst, en måte å rette det heuristiske søket i riktig retning. Og det virker som om en hel masse av disse magikerne nå jobber for openAI.

Med egne ord er manipulasjonsnettverket den enkleste strukturen, fra kontekstinnlegging matet til flerlags perceptron, produseres en motorisk handling.

resultater

Resultater er ofte en del som jeg har liten interesse for, spesielt for de slags utrolig strålende tekniske papirer. Jeg vil gå raskt, og på den grunn at denne tilnærmingen fungerer, den utfører med en nøyaktighet som ligner på den hardkodede ekspertpolitikken, og i motsetning til den spesifikke prosedyremessige tilnærmingen, kan generaliseres til en lang rekke oppgaver.

Partikkel nå

Block Stacking

I disse eksperimentene testet de også forskjellige forhold. Ved å bruke DAGGER sammenlignet de tre forskjellige inngangsforhold ved å nedprøve den demonstrerte banen: fulle bane, øyeblikksbilde av banen, eller bare ved å bruke den endelige tilstanden. De sammenlignet også atferdskloningsalgoritmen med demonstrasjonens hele bane.

Et sterkt bevis på systemets evne til å generalisere over kubens identitet

Diskusjon

Når jeg leser de fremskritt som er gjort raskt i OpenAI de siste månedene, føler jeg en økende trang til å snakke om arbeidet deres og dele tankene mine om hva jeg tror deres arbeid, og fremskrittene innen AI-feltet som helhet, informere vår forståelse av hvordan biologiske hjerner fungerer. Spesielt denne voksende ideen om at de tilsynelatende delte kognitive funksjonene mellom mennesker ikke er så mye på grunn av en delt struktur som medfødt vet hvordan man utfører en oppgave, men i stedet er et resultat av relativt like naive strukturer som, konfrontert med det samme miljøet, lære å utføre lignende oppgaver. Funksjonen er resultatet av en funksjonsløs struktur som bare er i stand til å lære en spesifikk oppgave på grunn av et spesifikt miljø i stedet for en struktur som er i stand til å gjøre oppgaven innfødt, bare ved å finjustere et par parametere for å tilpasse seg miljøet.

Oppgaver kontra konfigurasjoner: en tilsynelatende vilkårlig definisjon

Jeg må innrømme at jeg ikke forstår hvorfor de valgte å snakke om forskjellige oppgaver slik de gjorde. En oppgave er definert i blokkstabeleksperimentet som et sett med strenger som representerer posisjonen til blokker i forhold til hverandre, antall elementer i settet definerer antall stabler og antall tegn antallet blokker som må ordnes . En oppgave er da et arrangement av blokker i stabler uavhengig av den absolutte plasseringen av stabelen.

Noen blokker kan være på bordet, men ikke en del av oppgaven

Valget av å definere relativ posisjon og antall stabler som kriterier for egen oppgave virker vilkårlig. Faktisk kan det også være fornuftig å snakke om forskjellige oppgaver basert på de absolutte startposisjonene til blokkene (det de omtaler som konfigurasjon). Jeg tror problemets vanlige natur er tydelig for dem, men for klarhetshensyn foretrekker de å ikke gå inn på detaljene. Det er mer fornuftig å ramme politikkinnlæringen som to typer generaliseringer, slik de gjør senere:

Merk at generalisering blir evaluert på flere nivåer: den innlærte policyen trenger ikke bare å generalisere til nye konfigurasjoner og nye demonstrasjoner av oppgaver som allerede er sett, men trenger også å generalisere til nye oppgaver.

Bytt bare ut "oppgaver" med "stabelbestillinger". Hvis du skal lære oppgaven riktig, betyr det at agenten lærer en innebygning som er i stand til å abstrahere posisjonen til kubene (konfigurasjon), men også deres identitet (oppgave), antall stabler (oppgave) og banen til demonstrasjonen (introdusert kort i sitatet) for å produsere en relevant motorisk respons.

Disse generaliseringene virker motstridende, hvordan kan det samme nettverket abstraherer terningens opprinnelige konfigurasjon eller identitet og likevel gjenopprette sin absolutte posisjon for motorisk respons?

Dette forklarer behovet for forskjellige kooperative undernettverk under læring, mottar forskjellige innganger, og det forklarer at i kontekstnettverket blir en abstrakt representasjon av oppgaven matet til lavere ordreinformasjon, som kuber absolutte posisjoner, før den fallende kommandoen.

Du kan tenke at det å kommentere denne skillet mellom oppgave og konfigurasjon er dumt, men det er viktig å forstå at det i hovedsak er den samme prosessen med abstraksjon som spilles på forskjellige objekter (og dette åpnes for den neste delen).

Det er ingen læring uten invarians

Transfer learning er kanskje det mest fascinerende erkjennelseskonseptet enten det er in-silico eller in-vivo, det er et veldig varmt tema både for AI-forskere og nevrovitenskapsmenn, og det hender at det er temaet for doktorgradsavhandlingen min. Legg merke til at nær beslektede konsepter har blitt utforsket på mange felt før maskinlæring, og dette abstrakte og alltid delvis definerte konseptet har mange navn. Filosofer, antropologer og sosiologer kan referere til det som (Post-) Strukturalisme (Claude Levi-Strauss, Michel Foucault), lingvist vil snakke om Syntagma og Nested Tree strukturer (Noam Chomsky), matematikere vil sannsynligvis tenke på Homeomorphism eller Invariants, og utdanning forskere eller nevrovitenskapsmenn kan referere til det som strukturell læring. Du kan også se beslektet konsept innen maskinlæring som representasjonslæring og metallæring, som avhengig av forfatteren kan referere til overføringslæring eller læringsparadigmet som brukes til å utføre overføringslæring. Når vi snakker om dype nevrale nettverk, er disse forskjellene uskarpe, ettersom et essensielt nettverk i det vesentlige lærer å legge inn et visst problem (representasjonslæring) ved å modifisere strukturen (metalæring) vanligvis i et støyende miljø som innebærer en form for overføringslæring.

AI-forskere og kognitiv vitenskapsmann har ofte en veldig konkret definisjon av transfer læring, det er prosessen som gjør at et system kan bruke kunnskapen som er tilegnet i en viss oppgave for å utføre en annen oppgave som deler en felles komposisjonsstruktur (som beskrevet i artikkelen). Kognitiv vitenskap har denne forestillingen om nær og fjern overføring, avhengig av hvordan de to oppgavene ser ut til å være forskjellige. Men fra et mer abstrakt perspektiv, i et støyende og sammensatt miljø, er all læring en form for overføringslæring, og forskjellen mellom veldig nær og veldig fjern overføring er bare et spørsmål om delt informasjon - igjen et spørsmål om skala ikke av natur.

I kontrollerte omgivelser arbeides det på forhånd for å bygge en hardkodet skjønnsmessighet av virkeligheten, men faktisk gjenspeiler denne skjønnsmessige prosedyren hva overføringslæring gjør, det forener et uendelig sett med tilstander som finnes i virkeligheten under en felles innelukkende struktur. I hovedsak refererer Transfer Learning direkte eller i forlengelse av prosessen som læringsagenter bruker invarianter for å bygge modeller av verden. Det er en prosess som bruker likheter, repetisjoner og varianter av det samme, for å danne stadig mer abstrakt og sammensatt representasjon som vil strukturere ensembler over variansspennet ved innspillet. I generell forstand tillater det å lage de grunnleggende operasjonene som vi manipulerer informasjonsgrupper, omtrent som i matematikk det tillater forening og kryss. Det tillater identiteter, det forklarer vår evne til å kategorisere objekter. Josh Tenembaum gir et eksempel som virkelig snakket til meg: forestill deg at du lærer et to år gammelt barn å kjenne igjen en hest for første gang, du viser ham et par bilder av forskjellige hester og så viser du ham bildet av en annen hest og bildet av et hus og be ham fortelle deg hvilken som er hesten. Et barn vil gjøre denne oppgaven ganske enkelt, men det er fremdeles noe en datamaskin ikke kan gjøre bra med så få innganger (læring med ett skudd).

Hvordan gjorde barnet det?

Dyreanerkjennelse er studert hos barn og forholder seg til vår evne til å dekonstruere gjenstander til relevante deler, pelsens fargeområde, størrelsen på nakken, den generelle formen osv. Denne evnen er også det som lar deg åpne en dør for deg har aldri sett før, har du lært en motorisk sekvens som generaliserer til enhver situasjon (domenegeneralisering). Det er også det du bruker for å lage forklaringsmodeller som forenkler verden, du kan faktisk bli overrasket først av den plutselige opptredenen av en gjøke i en berømt sveitsisk klokke, men etter det andre utseendet vil du forvente det. Å finne invarians er hvordan et nevralt nettverk lærer seg, og de modellene er bygget ubevisst. Et eksempel er hvordan vi lærer intuitivt om fysikk selv før vi har hørt om matematikk og tall.

Man kan spørre for eksempel hvor raskt vil et barn født i mikrogravitasjon tilpasse seg jordens tyngdekraft og lære intuitivt at gjenstander vil falle til bakken når de faller ned?

Vi kan antyde at spedbarn og de fleste dyr vil revidere modellen sin ubevisst, omtrent som når du legger sokker på labbene til en hund og det tar litt tid å tilpasse seg den nye informasjonen.

Men for et lite barn vil en bevisst avhør og revisjon av sin intuitive modell finne sted, fra nysgjerrighet, gjennom språk, symboler og livssyn. Vår evne til å bevisst avhøre og endre modellene våre er fascinerende, og som en sidote kan mennesker være den eneste arten som kan verbalisere prosessen, men andre arter kan utføre lignende bevisste revisjoner.

Invariance er en obligatorisk egenskap av tid, hvis alt alltid var nytt og på ingen måte forutsigbart, ville det fortsatt være denne unike invarianten at alt alltid er nytt og uforutsigbart. Det er umulig å forestille seg en verden uten invarians, siden det ikke kunne være en verden å referere til, uten invarians ville livet være umulig og hjernen vår ubrukelig. Livet er en maskin som bare fungerer ved forutsigbar gjentagelse av hendelser, repetisjon av årsaker og effekter, av syklisk gjeninnføring av energi i organismen. Og i Livets søken etter å forbedre bruken av de nødvendige syklusene, er hjernen vår det ultimate verktøyet. Det er en prediksjonsmaskin, et adaptivt organ som er i stand til å finne repetisjon dynamisk og bruke den til å samhandle bedre med verden.

Denne metoden som livet valgte er ekstremt robust for små endringer i strukturen. Det som forblir det samme er verden, de statistiske egenskapene til miljøet, men den nevrale strukturen som møter den kan variere så lenge den kan legge inn relevant informasjon den utviklet seg til å behandle. Dette forklarer hvorfor hjernen vår kan være så forskjellig fra individ til individ, til og med primære cortices, og likevel dele de samme funksjonene.

Nervesystemer er tilpasningsdyktige, de trenger ikke evolusjon og langsomme genetiske mutasjoner for å endre atferd på relevante måter. Et enkelt nervesystem, som de som finnes i C. Elegans, fungerer som en medfødt intern koordinator og ekstern sensor: sanse mat og bevege deg mot den, flykte fra smerte, reprodusere. Disse enkle systemene var opprinnelig stive og utførte ekstrem tilnærming av vår svært støyende verden for å skjønne den i et lite sett med mulige tilstander (mat til venstre, varme under etc.). Våre motoriske og sensoriske evner utviklet seg hånd i hånd med nervesystemets prediktive evner. Etter hvert som sensorene våre ble mer presise, klarte nervesystemet sakte å endre strukturen for å lagre informasjon og lære av erfaring. Opprinnelig ble det i stand til å lære å gjenkjenne visse kategorier av innganger, for eksempel typer lukter eller lysmønstre, og også i stand til å lære gjennom prøving og feiling for å kontrollere det stadig mer komplekse motoriske systemet. Legg merke til at verden er så sammensatt at hjernen vår naturlig utviklet seg til et læringsparadigme i stedet for en medfødt prosessuell tilnærming. Computationally dette gir perfekt mening, et enkelt Go-spill har et tilstandsrom langt større (2,10¹⁷⁰) enn antall atomer i universet (10⁸⁰), og etter hvert som organismer blir mer komplekse og prøver å hardkode tilnærminger av alle mulige hevder det kan være raskt blir overførbart på grunn av kombinatorisk eksplosjon.

Noen mennesker kan tro at hjernen vår er bygd på en slik måte at den medfølgende representerer det rommet den skal utvikle seg i, at det i DNAet et sted er et gen for det som utgjør et ansikt, eller den tidsmessige organisasjonen av lydbølgene som lager opp ord. De kan tro at denne medfødte kunnskapen er kodet ved fødselen et sted. Andre kan tro, som filosofilæreren min da jeg gikk på videregående, at eksistensen går foran essensen, og at hjernen vår er fullstendig og utelukkende definert av møtet med organismen og verden. Virkeligheten er selvfølgelig mer sammensatt, og for de fleste telencefalsystemer som er studert så langt, koder ikke hjernen med innvendig funksjonen som den vil utføre, men vil lære den avhengig av informasjonen i inngangene. Hvis innspillet er for dårlig med relevant informasjon, kan kapasiteten til å lære i den strukturen ha en utløpsdato (f.eks. Amblyopia). Men hvis den medfødte strukturen ikke koder for den endelige funksjonen, har hjernen en spesifikk struktur. Denne strukturen er bevart på tvers av individer, og individer av samme art har felles funksjoner og stasjoner. DNA setter opp en viss struktur på plass, en struktur som ikke er i stand til å utføre sin endelige funksjon medfødt, men en struktur som kan lære kompleksiteten til spesifikke oppgaver basert på individuell erfaring. Det er ikke overraskende at evolusjonen førte til oppdagelsen av en meget effektiv blod-hjerne-barriere som isolerte hjernen fra resten av kroppen så vel som hjernehinnene og det harde beinskallet som beskyttet den fra omverdenen, fordi i motsetning til andre organer der strukturen er kodet i genomet, strukturen til en trent hjerne kan ikke regenereres fra en innlagt lagret modell. Det som er fascinerende er at vi ser de samme læringsmekanismene som oppstår ved analogi gjennom utviklingen av stadig mer komplekse dype nettverk som utfører stadig mer komplekse oppgaver.

Komposisjonsstrukturer er vanskelig å se, men overalt

Som en sidenote er det rart at selv forfatterne ikke er klar over at deres første oppgave med å nå målet har en komposisjonsstruktur.

Partikkelen som når oppgaver, demonstrerer pent utfordringene i generalisering i et forenklet scenario. Oppgavene deler imidlertid ikke en komposisjonsstruktur, noe som gjør evalueringen av generalisering til nye oppgaver utfordrende.

Selv om strukturen faktisk er lavere enn blokkstablingen, og ikke lett tilgjengelig for eksperimentell manipulering, er oppgaven virkelig sammensatt av delt struktur. Tilnærmet verden til et plan er en sammensetningsstruktur at kubens identitet (farge) bevares med oversettelse, og går fra blokk A -eller en tilfeldig startposisjon - ved posisjon (Xa1, Ya1) til blokk B på posisjon (Xb1, Yb2 ) er en del av den samme høyere ordens sammensetningsstruktur enn å gå fra blokk A ved posisjon (Xa2, Ya2) til blokk B på posisjon (Xb2, Yb2).

Grensesnitt mellom nettverk

Agentur av nevrale nettverk som kan behandle innspill på forskjellige abstraksjonsnivåer vil trenge grensesnitt, et domene som jeg tror gir mye igjen å oppdage. Disse grensesnittene kan være av en rekke karakter. De kan for eksempel sees på som et vanlig språk mellom to nettverk, som demonstrert i artikkelen, et lavere nivå nettverk bevæpnet med et oppmerksomhetssystem (demonstrasjonsnettverk) kan oversette en demonstrasjon i en representasjon et annet nettverk (kontekstnettverket) kan bruke å dirigere handling uansett lengde eller initial konfigurasjon av demonstrasjonen.

Overflaten på dette språket er her et plan, fast størrelse, men man kan forestille seg mulige endringer som kan forbedre kommunikasjonen mellom nettverket. For eksempel kan overflatenes størrelse settes til å vokse eller krympe dynamisk når nettverkene samhandler under læring, og dermed komprimere eller utvide språkkompleksiteten. Vi kan også forestille oss mer dynamiske interaksjoner, for eksempel gjennom tilbakemelding. Vi kunne forestille oss eksistensen av fasilitatornettverk som ville lære å jevne kommunikasjonen mellom nettverk, eksisterende som et parallelt nettverk som lærer å modulere inngangen til det første nettverket basert på inngangen og utgangen fra det andre nettverket. Vi kan forestille oss komplekse kontekstnettverk som fungerer som tonic (sakte varierende) tilstrømning til flere mer spesialiserte nettverk ... Fascinerende fremtidig forskningsområde!

Feil i tilfeller antyder mulige roller nye moduler kan ha

Det er verdt å merke seg at feil ofte skyldes motoriske feil, og at antall feil øker med oppgavens kompleksitet.

Motorisk funksjon skal ikke forringes bare ved å øke antall mål, dette er et sterkt bevis på at måten reproduksjonsnettet lærer å snakke med motornettet er for abstrakt. Det er rart fordi de sier at testen deres viser at grensesnittet mellom kontekstnettet og motornettet er relativt konkret (robotens posisjon, målets posisjon).

Mulig løsning kan være, siden dette er en modulær arkitektur, å bruke forskjellige tapsfunksjoner, eller modulære tapsfunksjoner som representerer hvert et spesifikt aspekt av oppgaven. Det vil også bli hjulpet av en ekvivalent av hjernens førmotoriske områder for å sikre at demonstrasjonen og kontekstnettverket kan forbli abstrakt uten å forringe den motoriske kommandoen. Premotor-regioner er nødvendige for å bedre lokalisere objekter basert på målet (fra abstrakte nettverk) og sensoriske innganger, for å velge den beste motoriske kommandoen. Det ser ut til at kontekstnettet både prøver å overføre demonstrasjonen til et høyere nivå innebygging og forberede motoriske handlinger samtidig i en nåværende kontekst. En rolle som et førmotorisk nettverk vil være å lære å kommunisere med motoranlegget på en målrettet og tilpasningsdyktig måte, og kombinerer både funksjonene til premotoren og lillehjernen for motorisk læring og rask tilpasning.

Det er en interessant teori, Moravecs paradoks, som spår at det ikke vil være erkjennelse på høyere nivå som vil være beregningsbeskattende, men behandlingen av sensoriske innganger og motoriske systemutganger. Dette kan faktisk gjøre rede for den store mengden nevroner som er til stede i lillehjernen vår (mer enn i resten av hjernen vår) for å adaptivt kontrollere motorisk handling. Dette paradokset ble formulert i en tid (80-tallet) da vi fortsatt trodde vi kunne legge vår egen kunnskap inn i en maskin for å utføre komplekse oppgaver i ukontrollerte støyende miljøer. Dette paradokset er selvfølgelig fornuftig hvis maskinen på en eller annen måte er i stand til å representere verden i et diskretisert sett med stater, vil det være enklere å bygge funksjon på høyere nivå. Men jeg tror begge deler vil vise seg å være ekstremt beskattende, og den interne representasjonen som brukes i grensesnittet mellom nettverk, vil være langt fra noe som ligner våre egne bevisste fremstillinger.

Konklusjon

Ved å kombinere forskjellige nevrale nettverk som hver har ansvaret for en spesifikk behandling av problemet, viser denne artikkelen at ved å lage en oppgave som iboende trenger generalisering, og bygge et passende læringsmiljø gjennom domene randomisering, et nevralt nettverk med tilgang til et minne og en oppmerksomhetssystem kan lære å generalisere utover enkel reproduksjon. Den kan lære å oppdage et mål med høyere orden som bare er demonstrert en gang i en visuell informasjonsstrøm, og utfører beregning i et generalisert rom for å gjenopprette passende handlinger som kan gjengi dette målet i en annen kontekst.

I fremtiden vil vi se en økende kompleksitet av strukturer bygd på de atomare byggesteinene som er i stand til å lære å generalisere komplekse oppgaver, men enda viktigere utføre flere av slike oppgaver, i nye miljøer, med mindre avhengighet av hardkodede metoder som forbehandling av innganger eller minne lagring. Minnelagring vil bli erstattet av distribuerte representasjoner over et minnenettverk, oppmerksomhetssystemer vil bli erstattet av syklisk aktivitet i sanntids oppmerksomhetsnettverk. Spørsmålet gjenstår hvordan vi vil kunne tilpasse en sterk serieteknologi (Turing-maskiner) til vår økte avhengighet av distribuert databehandling i legemliggjort system.