Poceni robotska roka SO-100 na mizi, pripravljena za teleoperacijo in učenje politike
DAggerSO-100Učenje s posnemanjemVLATeleoperacija

Izvajanje zanke DAgger na roki SO-100 s politiko VLA

AY-Robots ResearchAugust 27, 202615 min branja

Korak za korakom opisan en krog DAgger z nadzorom človeka na roki SO-100: poženemo politiko in jo posnamemo, prevzamemo nadzor, ko gre kaj narobe, posnetek shranimo kot korekcijo, sestavimo mešan nabor podatkov in nadaljujemo učenje iz kontrolne točke. Vključuje pot prevzema prek tipkovnice in drsnikov za tiste brez vodilne roke ter štiri napake, zaradi katerih je krog neuporaben.

Vaša politika teče. Roka seže po kocki, prijemalo zapre en centimeter prezgodaj in nadaljuje, kot da bi kocko že držala. Nič ne javi napake, in še tako dolgo strmenje v učno izgubo tega ne pojasni. Rešitev ni še 20.000 korakov gradienta na istih demonstracijah. Rešitev je, da roko znova primete natanko tam, kjer gre kaj narobe, posnamete, kaj ste naredili namesto tega, in naslednjo kontrolno točko naučite na starih podatkih plus tej korekciji. To je krog DAgger, in tako en krog poteka na roki SO-100 z vizualno-jezikovno-akcijsko politiko.

Teorija je opisana drugje: zakaj agregacija nabora podatkov sploh deluje in kaj pri tem spremeni nadzor človeka. To je navodilo za uporabo in predpostavlja naučeno kontrolno točko, delujoč nabor kamer in roko, ki se premika. Spodnjih šest korakov je zanka, kot je implementirana na strani DAgger te platforme, vendar je zaporedje enako, tudi če uporabljate lastne skripte.

En krog na kratko
  • •Poženite naučeno politiko in jo posnemite z besedilom naloge tega poganjanja, ne s splošno oznako teleoperacije.
  • •Prevzemite nadzor v trenutku, ko gre vedenje narobe: zrcalna predaja z vodilno roko, brez nje pa takojšen in ročen prevzem prek tipkovnice ali drsnikov.
  • •Vsako poganjanje razvrstite: shranite ga kot korekcijo, obdržite kot evalvacijsko epizodo ali zavrzite.
  • •Mešanico sestavite ročno - izvirne demonstracije plus korekcije, epizode izbrane po viru. Nikoli ne učite samo na korekcijah.
  • •Nadaljujte učenje iz zadnje kontrolne točke in zabeležite, katera kontrolna točka je nastala iz katere mešanice.
  • •Številka, ki pove, ali je bil krog sploh vreden truda, je delež intervencij, ne učna izguba.

Zakaj drugi krog ni le več podatkov

Kloniranje vedenja uči na stanjih, ki jih je obiskal človek. Ob testiranju politika obišče stanja, ki jih sama povzroči, majhne napake pri akcijah pa se seštevajo v stanja, ki jih nobena demonstracija ni pokrila. Ross, Gordon in Bagnell so to napako formalizirali za AISTATS 2011 in nanjo odgovorili z iterativnim algoritmom, ki uči stacionarno deterministično politiko in mora pod njihovo redukcijo dobro delovati pod porazdelitvijo stanj, ki jo sama povzroči: poženeš trenutno politiko, ekspert označi stanja, ki jih je politika dejansko dosegla, ta dodaš v nabor podatkov, ponovno naučiš, ponoviš. Kelly in sodelavci so poizvedbo naredili praktično s HG-DAgger, kjer se človek odloči, kdaj prevzeti nadzor, namesto da bi označeval stanja, ne da bi držal krmilne elemente; poročajo o boljši uspešnosti kot pri DAgger in kloniranju vedenja tako pri simulirani kot pri resnični nalogi avtonomne vožnje. Nadzor človeka je tisto, kar naredi zanko znosno na namizni roki - roke premaknete le, ko gre kaj narobe.

V praksi sta pomembnejši dve posledici kot sama teorija. Korekcije niso navadne demonstracije: koncentrirajo se v ozkih grlih, ki jih opisujejo Mandlekar in sodelavci, kjer majhen odklon politiko potisne v stanja, ki jih demonstracije nikoli niso pokrile. Nabor podatkov, sestavljen samo iz teh težkih delov, pa je slabo oblikovan nabor podatkov - Belkhale, Cui in Sadigh s podatkovne strani argumentirajo, da raznolikost stanj ni vedno koristna in da o kakovosti nabora podatkov skupaj odločata odstopanje akcij in raznolikost prehodov. Mešan nabor podatkov ni kompromis, je bistvo.

To zamrznite pred prvim krogom

Krog DAgger primerja politiko samo s seboj skozi čas. Karkoli med krogi spremenite, kar ni nabor podatkov, naredi to primerjavo brezpomensko.

  • Položaji in nosilci kamer, vključno s kamero na zapestju. Če popustite eno objemko, ste spremenili porazdelitev opazovanj, ne politike.
  • Osvetlitev in beli balans, če vam vaš sistem zajema sliko to omogoča fiksirati. Samodejna osvetlitev, ki se med krogi počasi spreminja, je počasen, neviden premik domene.
  • Kalibracija roke in ničelni položaji servomotorjev. Če morate ponovno kalibrirati, obravnavajte vse, kar je bilo posneto pred tem, kot ločen nabor podatkov.
  • Besedilo naloge. Vsak VLA tukaj je pogojen nanj; če ga med zanko preoblikujete, gre za drugo nalogo.
  • Osvetlitev, površina mize, nabor predmetov. Nov predmet je nov eksperiment, ne naslednji krog.
  • Frekvenca snemanja. Primerjava deležev intervencij med dvema različnima vzorčnima rastroma ustvari razlike, ki izvirajo iz rastra samega.
Kamera na zapestju ni okrasek

Hsu in sodelavci so primerjali pogled, osredotočen na roko, z običajnim pogledom tretje osebe in ugotovili, da perspektiva oko-v-roki dosledno izboljša učinkovitost učenja in posplošitev zunaj porazdelitve učnih podatkov, kljub temu da vidi manj prizorišča. Na roki s petimi sklepi vaše korekcije večinoma popravljajo časovno usklajenost prijemala, tej pa je namenjen prav pogled iz zapestja.

Krog od začetka do konca

  1. 1
    Poženite sklepanje in ga posnemite

    Poženite poganjanje na kontrolni točki, ki jo želite izboljšati, nato pa začnite snemanje v koren sklepanja. Tako posneto podeduje besedilo naloge samega poganjanja, torej tisto, na čemer je bila politika naučena, namesto privzete oznake teleoperacije. Brez snemanja lahko napako opazujete, ne morete pa na njej učiti.

    bash
    # two calls, not one: the run, then its recording
    POST /inference/start      # model_id, and hf_repo_id = the checkpoint to drive
    POST /recording/start      # root=inference
    # root=inference also makes the recording inherit the run's task text
  2. 2
    Prevzemite nadzor, ko gre kaj narobe

    Pritisnite Prevzemi nadzor in izberite način vnosa: vodilna roka, tipkovnica ali drsniki. Izvajalnik se ustavi, vi popravite, nato vrnete nadzor. Sličice, posnete medtem ko ste krmilili vi, so samodejno označene kot intervencije.

    bash
    POST /inference/takeover/start   # input = leader | keyboard | sliders
    POST /inference/takeover/nudge   # keyboard, relative delta per call
    POST /inference/takeover/set     # sliders, absolute target
    POST /inference/takeover/stop    # back to the policy
  3. 3
    Razvrstite epizode

    Za vsako epizodo se odločite: shranite kot korekcijo, obdržite kot evalvacijo ali zavrzite. Poganjanje, ki ga je politika zaključila brez pomoči, je evalvacijski podatek.

  4. 4
    Sinhronizirajte nabor podatkov s korekcijami

    Korekcije se zbirajo v lokalnem naboru podatkov za posamezno politiko in gredo v oblačno shrambo prek samodejne sinhronizacije. Vanj se ne primeša nič, česar niste dali tja sami.

  5. 5
    Sestavite mešan nabor podatkov

    Združite izvirni nabor podatkov s korekcijami, pri čemer epizode izrecno izbirate po viru. Rezultat je od tega trenutka naprej navaden nabor podatkov.

    bash
    POST /training/datasets/compose
      sources  = [ original_dataset, korrekturen_<policy> ]
      episodes = explicit selection per source
  6. 6
    Nadaljujte učenje iz kontrolne točke

    Mešanico naučite iz prejšnje kontrolne točke, ne iz osnovnega modela. Zabeležite, katera kontrolna točka in katera mešanica; brez tega para krog ni ponovljiv.

    bash
    # field on the training job
    base_checkpoint = s3://ay-robots/checkpoints/<run>/<checkpoint>
    # the platform passes it to the training pod as BASE_CKPT_S3

Korak 2 podrobneje: dva načina prevzema nadzora

Z vodilno roko

V načinu vodilne in sledilne roke je prevzem predaja med dvema rokama, ki nista v istem položaju. Pritisk na Prevzemi nadzor ustavi izvajalnik in vodilno roko premakne v trenutni položaj sledilne roke, tako da ob predaji navora nič ne poskoči. Če ta poravnalni premik poteče, vodilno roko poravnate ročno in jo sprostite šele, ko sta obe roki znotraj petih stopinj druga od druge. Od takrat naprej teleoperirate normalno, stolpec akcij pa beleži, kar ste ukazali.

Bodimo iskreni glede te poti: poravnalni premik in predaja navora sta na resnični strojni opremi najmanj preizkušen del zanke. Predajo preizkusite na počasnem, neškodljivem položaju, preden se nanjo zanesete v poganjanju, ki vam je pomembno. Vodilna roka od vseh treh načinov ustvari najgladkejše korekcije, hkrati pa ima tudi največ možnosti, da mehansko kaj odpove.

Brez vodilne roke: tipkovnica in drsniki

Večina bralcev tega besedila ima eno roko. To zadošča. V trenutku, ko pritisnete Prevzemi nadzor, izberite vnos prek tipkovnice ali drsnikov, prevzem pa je takojšen in ročen - druge roke, ki bi jo bilo treba poravnati, ni, zato tudi koraka poravnave ni. Sledilna roka obdrži svoj položaj in čaka na vnos.

Način vnosaKako se roka premikaOmejitev na klic, ki jo uveljavlja strežnikZaklenjeno, kadar
Vodilna rokaZrcaljenje krmili sledilno roko na podlagi kotov sklepov vodilne rokeV tem načinu ni klicev za rahel premik ali nastavitev; zrcaljenje neprekinjeno zapisuje ciljne vrednosti sledilne rokeNikoli zaklenjeno in privzeto, če način vnosa ni podan - a potrebuje drugo roko; brez ID-ja vodilne roke je prevzem zavrnjen
TipkovnicaRelativen rahel premik na pritisk tipke, poslan na končno točko za rahle premike pri prevzemuTrda omejitev pri 2 stopinjah na sklep, 4 stopinje za prijemaloZavrnjeno s kodo 409, če je bil prevzem začet v načinu vodilne roke
DrsnikiAbsoluten ciljni položaj, poslan na končno točko za nastavitev pri prevzemuNajveč 6 stopinj premika proti cilju na klic; vmesnik jih pošilja naprej približno desetkrat na sekundoZavrnjeno s kodo 409, če je bil prevzem začet v načinu vodilne roke

Omejitve se uveljavljajo na strani strežnika, ne v vmesniku, ker lahko napačno vnesena delta na roki s servomotorji, povezanimi prek skupnega vodila, povzroči trčenje. Korekcije s tipkovnico so stopničaste in nekoliko grobe; korekcije z drsniki so gladkejše, ker se strežnik pomika proti cilju, medtem ko vmesnik neprekinjeno pošilja podatke. V obeh primerih stolpec akcij prejme celoten ukazani vektor položaja, označevanje intervencij pa je enako kot pri poti z vodilno roko, zato korekcije s tipkovnico pristanejo v istem naboru podatkov brez razlike v formatu.

text
Q / A   joint 1      R / F   joint 4
W / S   joint 2      T / G   joint 5
E / D   joint 3      Z / X   gripper
Enaka razporeditev tipk kot povsod drugod v sistemu, tako da se mišični spomin iz snemanja prenese naprej.
Vodnik za učenje, ki prikazuje zaporedne korake poganjanja finega prilagajanja GR00T na naboru podatkov SO-100
Del kroga, ki se nanaša na učenje, je isto vodeno zaporedje kot pri prvem poganjanju; razlikuje se le polje kontrolne točke.

Kdaj pritisniti gumb

Prej kot pozneje. Korekcija, ki se začne šele potem, ko se je prijemalo zaprlo okoli praznine, uči okrevanje po napaki, v katero politika sploh ne bi smela zaiti, okrevalni podatki pa so vredni bistveno manj kot podatki o izogibanju. Prekinite v prvem trenutku, ko ste prepričani, da je trajektorija napačna, popravite skozi težaven del in vrnite nadzor takoj, ko je stanje tako, kot ga je politika že obvladala prej. ThriftyDAgger to odločitev avtomatizira tako, da intervencije pogojuje z novostjo in ocenjenim tveganjem znotraj fiksnega človeškega proračuna, na eni sami roki, kjer človek že tako opazuje, pa je nadzor človeka cenejši in bolje umerjen kot karkoli, kar boste sami nastavili.

Izvedljivo z odprtokodnim sistemom in nekaj skriptami. Kar to stane, je vodenje evidence, in prav tam krogi DAgger najpogosteje propadejo.

  1. Sličice iz lastne skripte za sklepanje zapisujte v nabor podatkov LeRobot, z nizom naloge, na katerem je bila politika naučena.
  2. Ustavite zanko politike, preklopite vir ukazov in vsako sličico, ki jo krmilite sami, označite kot intervencijo. Brez oznake so korekcije videti kot navadne demonstracije.
  3. Zavestno se odločite, kaj se zgodi s prehodnimi sličicami med tem, ko politika sprosti nadzor, in vašim prvim vnosom.
  4. Korekcije hranite v lastnem naboru podatkov za vsako politiko in ročno sledite indeksom epizod, da je mešanico mogoče rekonstruirati.
  5. Vstopno točko za fino prilagajanje usmerite na prejšnjo kontrolno točko in v dnevniku preverite, da je naložila prav te uteži.

Korak 3 podrobneje: razvrščanje odloča o kakovosti

Po poganjanju imate posnetek, v katerem je nekaj sličic označenih kot intervencije. Obstajajo tri možne usode, napačna izbira pa tiho zastrupi naslednji krog.

  • Shranite kot korekcijo, kadar je bila intervencija resnično popravilo: politika je šla nekam narobe, vaš vnos pa je iz stanja, ki ga je povzročila politika sama, pokazal pravilno rešitev.
  • Obdržite kot evalvacijo pri čistih avtonomnih poganjanjih in pri poganjanjih, kjer ste prevzeli nadzor zgolj iz previdnosti. Evalvacijske epizode so način, kako izmerite naslednjo kontrolno točko, in nanje se nikoli ne sme učiti.
  • Zavrzite poganjanja, ki jih je pokvarilo nekaj nepovezanega - izpadla sličica kamere, obtičal servomotor, predmet, ki ste ga podrli. Neurejena korekcija je slabša kot nobena korekcija.
Zamrznjene sličice sodijo v surov posnetek, ne v učne podatke

Med tem, ko politika sprosti nadzor, in vašim prvim vnosom roka miruje, snemalnik pa vseeno naprej zapisuje - niz identičnih položajev, ki jih spremljajo rahlo drugačne slike. Tu te sličice predaje ostanejo v surovem posnetku in ne pridejo v nabor podatkov s korekcijami. Če zanko gradite sami, jih zavestno izrežite: politika, naučena na njih, se nauči zastati tam, kjer bi morala ukrepati.

Korak 5 podrobneje: sestavljanje mešanice

Sestavljanje vzame izvirni nabor podatkov skupaj z naborom podatkov s korekcijami in ustvari nov, navaden nabor podatkov LeRobot, na katerem se uči enako kot na katerem koli drugem. Pomembna lastnost je, da je izbira epizod izrecna za vsak vir posebej - nič se ne primeša samodejno. To se zdi nepomembno, dokler se politika prvič ne obnaša čudno in morate rekonstruirati, na čem je bila naučena.

Odprto vprašanje je razmerje, in nihče nima številke, ki bi se prenesla iz enega primera v drugega. V čemer se literatura strinja, je, da bi morale korekcije šteti več, kot je njihov delež sličic. Mandlekar in sodelavci iterativno ponovno učijo na podatkih, ki jih zbere njihov sistem intervencij, tako da se politika nauči prečkati ozka grla, in poročajo, da agenti, naučeni na ta način, prekašajo agente, naučene na enakem številu vzorcev neintervencijskih demonstratorjev. Sirius gre še dlje in učne vzorce preuteži glede na približano zaupanje človeka, pri čemer poroča o 8-odstotnem izboljšanju v simulaciji in 27-odstotnem na resnični strojni opremi pri stopnji uspešnosti politike v primerjavi z metodami, s katerimi se primerja, in to pri dvakrat večji hitrosti konvergence. Nobena od tukajšnjih vstopnih točk za učenje ne izpostavlja gumba za uteževanje vzorcev, zato je grob nadomestek, da obdržite vsako epizodo s korekcijo, izvirne demonstracije pa podvzorčite - in da si zapišete, kaj ste naredili.

Pogled snemanja nabora podatkov, ki prikazuje epizode nabora podatkov SO-100 s tokovi kamer
Epizode s korekcijami so navadne epizode z oznako intervencije za vsako sličico, zato jih je mogoče sestaviti z izvirnim naborom podatkov brez pretvorbe.

Korak 6 podrobneje: kaj nadaljevanje iz kontrolne točke dejansko pomeni

Učenje mešanice iz osnovnega modela deluje, a zavrže prejšnji krog in stane celotno poganjanje. Nadaljevanje iz prejšnje kontrolne točke je hitrejše in navadno boljše. Je pa tudi bolj omejeno, kot nakazuje sam izraz.

Inicializacija uteži ni nadaljevanje optimizatorja

Kontrolna točka samo z utežmi vsebuje parametre in nič drugega. Njeno nalaganje da naslednjemu poganjanju boljše izhodišče kot osnovni model, a momenti optimizatorja, položaj v urniku hitrosti učenja in vrstni red podatkov vsi začnejo znova od nič. Na začetku nadaljevanega poganjanja pričakujte skok izgube, tega ne berite kot napako in kroga ne imenujte nadaljevanje. Gre za topli zagon.

PolitikaVelikostRaven GPUSklepanje na korak akcijeFormat nabora podatkovEpizode, preden se ga splača preizkusiti
GR00T N1.7približno 3 B, od tega približno 40 M naučenih med finim prilagajanjemA100 80 GB ali H100 80 GBpribližno 152 msLeRobot v2.0 ali v2.150
GR00T N1.5približno 3 BA100 80 GB ali H100 80 GBpribližno 165 msLeRobot v2.0 ali v2.150
Pi0.5približno 3 B s hrbtenico PaliGemmaA100 80 GB ali H100 80 GBpribližno 485 msLeRobot v3.050
SmolVLApribližno 450 MRTX 4090 ali katera koli kartica z 24 GBpribližno 245 msLeRobot v3.030
ACTpribližno 80 M, naučeno iz ničRTX 4090 ali katera koli kartica z 24 GBpribližno 20 msLeRobot v3.050

Znotraj zanke DAgger se zakasnitev kopiči drugače kot med demonstracijo: pri približno 485 ms na korak akcije prevzamete nadzor, ker je roka omahovala, ne ker bi bila napačna, korekcije zaradi omahovanja pa niso uporaben učni podatek. Če iterirate na podatkih in ne lovite dokončne stopnje uspešnosti, iterirajte na hitrem modelu. Shukor in sodelavci SmolVLA opisujejo kot model, zasnovan za učenje na eni sami GPU in uvajanje na potrošniških GPU-jih ali CPU-jih, z asinhronim skladom za sklepanje, ki napoved akcije loči od izvedbe in tako omogoča višje frekvence krmiljenja - lastnost, zaradi katere zanka prevzema ostane odzivna.

Tudi formati naborov podatkov niso zamenljivi. GR00T sprejme LeRobot v2.0 ali v2.1, repozitorij Isaac-GR00T pa svoj vhod opisuje kot različico formata LeRobot v2 z dodano datoteko z opisom modalnosti; novejši trenerji tukaj pričakujejo v3.0. Mešanica, sestavljena v napačni različici, odpove že pri nalaganju, namesto da bi ustvarila slabo politiko - to je boljši način odpovedi, a še vedno zapravljeno mesto v čakalni vrsti. Dokumentacija nabora podatkov navaja, kateri format sprejme posamezni trener.

Zanka, pri kateri je vodenje evidence že opravljeno

Prevzem nadzora z vodilno roko, tipkovnico ali drsniki; označevanje intervencij za vsako sličico; shranjevanje poganjanj kot korekcij ali evalvacij; sestavljanje mešanega nabora podatkov z izrecno izbiro epizod po viru; in nadaljevanje učenja iz kontrolne točke namesto iz osnovnega modela. Vaša odločitev ostaja, katero poganjanje šteje za korekcijo, kaj gre v mešanico in kdaj je delež intervencij prenehal padati.

Poglejte, kako je zanka DAgger sestavljena

Štirje načini, kako zapraviti krog

1. Učenje samo na korekcijah

Najpogostejša napaka in najbolj mikavna bližnjica. Nabor podatkov samo s korekcijami je skoraj v celoti sestavljen iz težkega srednjega dela naloge, pristop in umik pa manjkata; politika postane boljša pri težkem delu, pozabi pa, kako do njega sploh priti. Agregacija ni implementacijska podrobnost metode, temveč njen mehanizem: stari podatki so tisto, kar drži preostalo vedenje na mestu, medtem ko korekcije premikajo en njegov del.

2. Premikanje kamere med krogi

Kamera, ki se med krogi premakne za dva centimetra, ustvari politiko, ki je slabša od tiste, s katero ste začeli, diagnoza pa vas bo stala cel dan. Vsak VLA tukaj je pogojen na slikah; samo stanje sklepov ne razjasni, kje predmet dejansko je. Postavitev fotografirajte pred prvim krogom in to fotografijo preverite pred vsakim naslednjim.

3. Spuščanje artefaktov predaje v učenje

Omenjeno že zgoraj, na seznamu pa je zato, ker je neopazno. Simptom je politika, ki za delček sekunde obstane natanko tam, kjer je operater v prejšnjem krogu prevzel nadzor. Videti je kot omahovanje; v resnici je posnemanje.

4. Poimenovanje toplega zagona za nadaljevanje

Če verjamete, da se je stanje optimizatorja preneslo naprej, se začetni skok izgube bere kot napaka in začnete iskati poškodovane podatke. Če veste, da je optimizator začel znova, je skok pričakovan in pogledate, kaj sledi po njem. Iste številke, nasprotni sklepi.

Merjenje kroga

Metrika za zanko z nadzorom človeka je delež intervencij: sličice, posnete medtem ko ste imeli nadzor vi, deljeno s skupnim številom sličic poganjanja. Najdete jo v statusu prevzema in je edina številka, ki odgovori na vprašanje, ki ga je krog zastavil. Učna izguba pada ne glede na to, ali se je politika izboljšala; stopnja uspešnosti je binarna in šumna pri velikostih vzorcev, ki jih ustvari namizna roka. Delež intervencij je zvezen, merjen na stanjih, ki jih je povzročila politika sama, in pada, ko vas politika potrebuje vse manj.

Primerjajte ga le med poganjanji, posnetimi pod enakimi pogoji. Celoten argument, in kako zgraditi evalvacijski nabor, ki preživi več kot dva kroga, je v članku o merjenju zanke DAgger. Prvi krog je v resnici test izvedljivosti: preverjate, da prevzem deluje na vaši strojni opremi, da korekcije pristanejo s svojimi oznakami in da je nadaljevano poganjanje naložilo kontrolno točko, ki ste jo navedli. Drugi in tretji krog sta tista, kjer bi se delež moral začeti premikati. Če se do četrtega kroga ni premaknil, je težava pred DAgger, ne v njem.

Za vsak krog zapišiteZakaj je to pomembno pozneje
Kontrolna točka, ki je bila uporabljenaBrez tega izboljšave ne morete pripisati določeni mešanici
Način vnosa, uporabljen pri prevzemuKorekcije s tipkovnico so bolj grobe kot korekcije z vodilno roko, kar se pozna na podatkih
Število poganjanj in kako je bilo vsako razvrščenoAli je imel krog dovolj korekcij, da je sploh pomembno
Delež intervencij po poganjanju in njegovo povprečjeMetrika napredka zanke
Natančna izbira epizod po viruEdini način, da krog ponovite ali razveljavite
Topli zagon ali učenje iz ničPojasni krivuljo izgube, ki si jo boste ogledali čez teden dni

Če še nimate kontrolne točke

Brez nje zanka nima vstopne točke. Posnemite prvi nabor podatkov, naučite prvo politiko, jo poženite - snemanje, učenje in poganjanje politike pokrivajo to pot. Odjemalec za snemanje je na strani za prenos, ravni GPU in urne postavke na strani s cenami, in kako izgleda uporabna epizoda, v vodniku za zbiranje podatkov SO-100. Poskrbite, da bodo demonstracije v redu, še preden pridejo na vrsto korekcije: DAgger je mehanizem za popravljanje in deluje bistveno bolje na nečem, kar je bilo že skoraj pravilno.

Ali lahko zanko DAgger poganjam brez vodilne roke?▾

Da. Ko pritisnete Prevzemi nadzor, izberite vnos prek tipkovnice ali drsnikov: prevzem je takojšen in ročen, brez druge roke, ki bi jo bilo treba poravnati. Tipkovnica pošilja relativne rahle premike, ki jih strežnik trdo omeji na 2 stopinji na sklep in 4 stopinje za prijemalo; drsniki pošljejo absoluten cilj, strežnik pa se proti njemu na klic premakne za največ 6 stopinj, medtem ko vmesnik neprekinjeno pošilja podatke. Stolpec akcij in označevanje intervencij sta enaka kot v načinu vodilne roke, zato so korekcije v naboru podatkov neločljive.

Koliko korekcij potrebuje en krog?▾

Ni zagovorljivega univerzalnega števila, pomembnejše od števila epizod pa je število sličic. Praktično pravilo je, da se korekcije ne smejo izgubiti v mešanici: pri 200 izvirnih epizodah in treh epizodah s korekcijami se ne bo premaknilo nič. Ciljajte na korekcije, ki vedenje, ki odpove, pokrijejo iz več začetnih konfiguracij, namesto na tri ponovitve istega reševanja.

Zakaj je učenje samo na korekcijah tako slaba zamisel?▾

Ker so korekcije skoraj v celoti sestavljene iz težkega srednjega dela naloge. Pristop, poravnava in umik manjkajo, zato politika izgubi tisto, kar je že prej delala dobro, medtem ko se izboljša v delu, ki ste ga popravili. Ohranjanje starih podatkov in dodajanje k njim je sam mehanizem, ne neobvezen dodatek.

Ali nadaljevanje iz kontrolne točke nadaljuje prejšnje poganjanje učenja?▾

Ne. Kontrolna točka samo z utežmi obnovi parametre in nič drugega: momenti optimizatorja, položaj v urniku hitrosti učenja in vrstni red podatkov se začnejo znova od začetka. Gre za topli zagon, začetni skok izgube pa je pričakovan in ne simptom. Zapišite si, katero od obeh ste dejansko naredili, da boste krivuljo čez teden dni pravilno prebrali.

Kaj, če se delež intervencij ne zmanjšuje?▾

Prenehajte dodajati kroge. Nespremenjen delež pomeni, da korekcije ne učijo tega, kar mislite. Običajni vzroki ležijo prej v verigi: kamera se je premaknila, korekcije se začnejo prepozno, da bi bile podatki o izogibanju, sličice predaje so v učnem naboru, ali pa je naloga glede na opazovanja, ki jih politika dejansko dobi, nedoločena.

Nič od tega ni rešen problem in nič od tega ni en sam klik. Interaktivno učenje s posnemanjem je aktivno raziskovalno področje prav zato, ker njegova vprašanja - kdaj intervenirati, kako uteži tisto, kar je naredil človek, koliko starih podatkov obdržati - nimajo ustaljenih odgovorov; pregledni članek Celemina in sodelavcev zarisuje, kaj vse še ostaja odprto. Kar zanka ima, je merljiva konvergenca, kadar jo izvajate skrbno, na strojni opremi, ki stane nekaj sto evrov. Zamrznite postavitev, intervenirajte zgodaj, razvrščajte pošteno, mešajte premišljeno in vsakič zabeležite delež intervencij.

Če izvedba, ki jo nameravate popraviti, odpove na način, ki je videti mehanski in ne vedenjski, se ustavite in preberite, kako popraviti odstopajočo politiko najprej. Krog, porabljen za odpravljanje napake kamere, politiko nauči prav to napako.

Was this page helpful?

Ready for high-quality robotics data?

AY-Robots connects your robots to skilled operators worldwide.

Get Started