Human-gated DAgger, od začetka do konca

Prevzemite nadzor, ko policy naredi napako, in na tem popravku nadaljujte trening.

Policy, treniran s pristopom behavior cloning, pozna le stanja, ki so jih obiskale vaše demonstracije. DAgger to vrzel zapolni s podatki iz stanj, ki jih doseže policy sam. AY-Robots izvede celotno zanko na SO-100: vozite checkpoint, med vožnjo prevzemite nadzor, obdržite popravljene epizode, sestavite mešanico in nadaljujte trening od checkpointa, ki ste ga pravkar vozili.

  • HG-DAgger, pod nadzorom človeka
  • SO-100 / SO-101
  • ACT, SmolVLA, Pi0, GR00T N1.5 / N1.7
  • Stopnja intervencij na krog

Zakaj trenirani policy naredi nekaj, kar nikoli ni bilo demonstrirano

Behavior cloning obravnava krmiljenje kot običajno nadzorovano učenje: opazovanje noter, ciljna vrednost sklepa ven, prilagojeno sličicam, ki jih je posnel človek. To drži le, dokler robot ostaja na stanjih, ki jih je obiskal ta človek, kar pa se ne zgodi. Prijemalo, ki se zapre štirideset milisekund prezgodaj, kocko premakne dva milimetra stran od demonstrirane lege. Naslednje opazovanje je tako eno, ki ga učna množica ne vsebuje, zato je akcija na tem mestu ekstrapolacija, stanje po njej pa leži še dlje stran. Učna porazdelitev in porazdelitev, ki jo dejansko ustvari naučeni policy, sta dve različni stvari, druga pa se med potekom epizode vse bolj oddaljuje od prve.

Ross, Gordon in Bagnell so točno to napako pri redukciji opisali leta 2011 in jo tudi ovrednotili: klasifikator, ki se pri porazdelitvi eksperta moti z verjetnostjo e, lahko pri lastni porazdelitvi na horizontu T korakov naredi za red velikosti T na kvadrat krat e napak, ker ena napaka ustvari opazovanja, ki jih ekspert nikoli ni proizvedel, napake pa se zato kopičijo. Njihova rešitev je algoritem, o katerem govori ta stran: pognati trenutni policy, za obiskana stanja zbrati ekspertne oznake, jih združiti z vsem, kar je bilo zbrano doslej, ponovno trenirati in postopek ponoviti. Več demonstracij iste vrste ne pomaga, saj vzorčijo isto porazdelitev. Oznake za stanja, ki jih doseže policy, pa pomagajo. Različica, uvedena tukaj, je pod nadzorom človeka (HG-DAgger, Kelly in sod.): policy obdrži nadzor, dokler se človek ne odloči, da gre kaj narobe, in prevzame nadzor, tako da popravki nastanejo samo tam, kjer so potrebni, roke pa nikoli ni treba peljati v stanje, ki ga operater ne bi dovolil.

  • Behavior cloning velja samo na porazdelitvi stanj, na kateri je bil treniran.
  • Napaka se sama krepi: majhno odstopanje ustvari neznano stanje, to pa ustvari še večje odstopanje.
  • Rešitev niso dodatne demonstracije, temveč oznake za stanja, ki jih doseže policy sam.
  • Pod nadzorom človeka pomeni, da o trenutku posredovanja odloča operater, ne pa ocena avtonomije.

Zakaj se napaka kopiči

Povlecite horizont. Pri behavior cloning pričakovani dodatni strošek narašča približno s kvadratom števila korakov, ker vsaka napaka ustvari stanja, ki jih demonstracije nikoli niso pokrile; zanka z agregacijo drži rast blizu linearne (Ross in sod., 2011).

200
1.0 %
Behavior cloning
400
DAgger
2.00
200×
Behavior cloning ÷ DAgger
0.000100200300400050100150200Pričakovani dodatni strošek (meja)
Horizont naloge (koraki)

Ponazoritvene krivulje iz mej v Ross in sod. (2011), ne meritve na vašem robotu. Pomembna je oblika, ne števila.

En krog DAgger v šestih korakih

Tako zanka dejansko poteka na platformi, ne gre za shemo. Vsak spodnji korak ustreza enemu ukazu v kokpitu.

Sprehodite se skozi zanko

Istih šest korakov, enega po enega, s tem, kaj se pri vsakem zgodi na roki in v naboru podatkov.

01

Poženite policy in ga posnemite

Zaženite inferenčni tek na checkpointu, ki ste ga sami trenirali. Tek se snema med samim potekom, skupaj z besedilom naloge tega teka, tako da so sličice kasneje uporabne kot učni podatki in ne le kot video za gledanje.

1 od 6

Kaj platforma opravi namesto vas

Vsaka točka tukaj je korak zanke, ki bi ga sicer morali zgraditi in vzdrževati sami.

Prevzem nadzora brez leader roke

Ob začetku teka izberite tipkovnico ali drsnike, in za popravljanje zadošča že prenosnik. Premike s tipkovnico strežnik omeji na dve stopinji na sklep in štiri stopinje na prijemalu; cilji drsnikov so absolutni, strežnik pa se jim na klic približa za največ šest stopinj. Omejitve uveljavlja strežnik, ne vmesnik, zato zataknjena tipka ne more vreči roke iz tira.

Dokumentacija o teleoperaciji

Intervencije označene za vsako sličico

Vsaka sličica, posneta medtem ko imate roko v rokah, nosi oznako intervencije, stolpec action pa vsebuje celotno ukazano pozo. Stolpca z oznako ni treba vzdrževati ročno niti ga naknadno usklajevati z indeksi sličic.

Format nabora podatkov LeRobot

Razvrščanje: popravek, evalvacija ali koš

Vsak tek dobi eno odločitev na kartici za shranjevanje. Popravkovni teki hranijo naslednji krog treninga, evalvacijski teki ostanejo zunaj treninga in tako ostanejo čista meritev, slabi teki pa izginejo, namesto da bi tiho zastrupljali mešanico.

Seje in epizode

Izrecno sestavite mešanico

Učno množico za krog n sestavite sami: izvirni nabor podatkov plus popravki, epizode izbrane po viru. Brez samodejnega mešanja, brez skritih podatkov iz simulacije, sestavljeni rezultat pa se obnaša kot vsak drug nabor podatkov.

Nabori podatkov

Nadaljujte od checkpointa

Trening usmerite na checkpoint, ki ste ga pravkar vozili, namesto na osnovni model, tako da se vsak krog začne tam, kjer se je končal prejšnji. Inicializirajo se samo uteži; stanje optimizatorja se ne obnovi, zato je prvi krog najbolje obravnavati kot preizkus izvedljivosti.

Trening

GPU-ji, najeti po krogih

ACT in SmolVLA na 4090, Pi0 ter GR00T N1.5 ali N1.7 na A100 z 80 GB. Zaženete krog, pod se zažene, checkpointi pristanejo v vašem bucketu, plačate pa ure, ki jih je krog porabil.

Cene GPU

Načrtujte svoje kroge

Stopnja intervencij je metrika napredka zanke: popravljene sličice deljene s sličicami teka. Nastavite začetno vrednost in koliko vam prinese vsak krog, nato poglejte, koliko krogov je potrebnih do cilja.

30 %
25 %
3 000
KrogStopnja intervencijPopravljene sličice
1
30.0%
900
2
22.5%
675
3
16.9%
506
4
12.7%
380
5
9.5%
285
6
7.1%
214
Σ2 960

Model, ne napoved. Pravi krogi so neenakomerni, krog, ki ne premakne stopnje, pa vam ni prinesel nič; ravno to je signal, ki si ga velja ogledati.

Zgraditi zanko sami ali jo poganjati tukaj

Nič od tega ni nemogoče narediti ročno. Gre za vprašanje, koliko večerov gre v infrastrukturo namesto v kroge, pri čemer je ena vrstica, kjer je ročno delo jasno boljši odgovor.

Korak zankeRočna izvedbaNa AY-Robots
Prevzem nadzora med tekomLeader roka ali lastna koda na servo vodilu. Prevzem s tipkovnico in drsniki, vključno z varnostnimi mejami, morate napisati in nato razhroščiti na pravi strojni opremi.Leader roka, tipkovnica ali drsniki, izbrani ob začetku teka. Omejitve kotov živijo v strežniku.
Označevanje intervencijDodate stolpec z oznako, ga usklajujete z indeksom sličic in ga preverite vsakič, ko se spremeni format snemanja.Vsaka sličica, posneta med prevzemom nadzora, je samodejno označena, z ukazano pozo v stolpcu action.
Razvrščanje tekovDogovori o imenih map in lupinski skripti. Zamrznjene sličice ob predaji nadzora morate poiskati in izločiti sami.Ena odločitev na tek na kartici za shranjevanje. Sličice predaje ostanejo v mapi raw.
Gradnja mešanega nabora podatkovSkripti za združevanje za vsako različico formata. Usklajevanje indeksov epizod, metapodatkov in video referenc je zamuden del.Sestavite iz izvirnika plus popravkov z izbiro epizod po viru; rezultat je navaden nabor podatkov.
Začeti naslednji krog pri zadnjem policyjuCheckpoint sami povežete s trainerjem, po želji pa lahko obnovite tudi stanje optimizatorja za pravo nadaljevanje.Eno polje za osnovni checkpoint. Samo uteži: inicializira iz checkpointa, ni pa nadaljevanje stanja optimizatorja.
Nadzor nad učno zankoPopoln. Lastna funkcija izgube, lastni urnik, lastne ablacije, lastna instrumentacija, brez platforme vmes. Če je raziskovalno vprašanje prav učna zanka sama, jo zgradite ročno.Fiksna pot z določenim seznamom policyjev in hiperparametri, ki jih ponuja obrazec, ne poljubna koda.

Članki, na katerih to temelji

Preberite jih, preden se prepirate o zanki. Vsaka povezava vodi na stran s povzetkom, ne za plačilni zid.

  1. A Reduction of Imitation Learning and Structured Prediction to No-Regret Online Learning

    Stephane Ross, Geoffrey J. Gordon, J. Andrew Bagnell · 2011 · AISTATS 2011 (PMLR 15)

    Izvirni članek o DAgger: opredeli problem kopičenja napak, poda mejo T na kvadrat za povsem nadzorovani pristop in predlaga agregacijo podatkov iz stanj, ki jih obišče učeči se sistem sam.

  2. HG-DAgger: Interactive Imitation Learning with Human Experts

    Michael Kelly, Chelsea Sidrane, Katherine Driggs-Campbell, Mykel J. Kochenderfer · 2019 · arXiv:1810.02890, ICRA 2019

    Različica pod nadzorom človeka: ekspert se odloči, kdaj prevzeti nadzor, namesto da bi ga spraševali o stanjih, ki jih je izbral policy; to je način, ki ga izvaja ta platforma.

  3. EnsembleDAgger: A Bayesian Approach to Safe Imitation Learning

    Kunal Menda, Katherine Driggs-Campbell, Mykel J. Kochenderfer · 2019 · arXiv:1807.08364, IROS 2019

    Drug način za nadzorovanje intervencij: nesoglasje znotraj ansambla kot signal zaupanja za to, kdaj lahko učeči se sistem deluje sam. Koristen kontrast temu, da o tem presoja človek.

  4. ThriftyDAgger: Budget-Aware Novelty and Risk Gating for Interactive Imitation Learning

    Ryan Hoque, Ashwin Balakrishna, Ellen Novoseller, Albert Wilcox, Daniel S. Brown, Ken Goldberg · 2021 · CoRL 2021

    Pozornost človeka obravnava kot omejeni vir in za pomoč prosi le pri novih ali tveganih stanjih, kar je pravi okvir, kadar en sam človek roko nadzoruje cel popoldan.

  5. DART: Noise Injection for Robust Imitation Learning

    Michael Laskey, Jonathan Lee, Roy Fox, Anca Dragan, Ken Goldberg · 2017 · CoRL 2017

    Poštena alternativa: namesto sprotnega popravljanja policyja se demonstracije zmotijo, tako da ekspert pokaže okrevanje. Vredno poznati, preden se odločite za intervencije.

  6. Interactive Imitation Learning in Robotics: A Survey

    Carlos Celemin, Rodrigo Perez-Dattari, Eugenio Chisari, Giovanni Franzese, Leandro de Souza Rosa, Ravi Prakash, Zlatan Ajanovic, Marta Ferraz, Abhinav Valada, Jens Kober · 2022 · arXiv:2211.00600

    Zemljevid področja: katere oblike človeške povratne informacije obstajajo, kateri vmesniki jih prenašajo in kam med njimi sodijo intervencije v slogu DAgger.

  7. Learning Fine-Grained Bimanual Manipulation with Low-Cost Hardware

    Tony Z. Zhao, Vikash Kumar, Sergey Levine, Chelsea Finn · 2023 · arXiv:2304.13705

    Članek o ACT. Action chunking je razlog, da lahko poceni roko sploh poganja imitacijski policy, ACT pa je policy, s katerim se krog DAgger najhitreje ponavlja.

  8. π0: A Vision-Language-Action Flow Model for General Robot Control

    Kevin Black, Noah Brown, Danny Driess, Adnan Esmail, Michael Equi, Chelsea Finn et al. · 2024 · arXiv:2410.24164

    VLA na osnovi flow matching, zgrajen na vnaprej treniranem vision-language modelu, in eden od checkpointov, ki jih lahko tu fine-tunirate; članek izrecno pove, da nove spretnosti izhajajo iz fine-tuninga in ne iz samega osnovnega modela.

Vprašanja, ki jih ljudje res postavljajo

Ali za DAgger potrebujem leader roko?

Ne. Ob začetku teka izberite tipkovnico ali drsnike, in prevzem nadzora je ročen že od prve sličice, voden iz brskalnika. Leader roka je prijetnejša za fine gibe in edini način, pri katerem se roka pred predajo poravna sama, vendar zanka teče tudi brez nje.

Koliko krogov DAgger potrebujem?

Poštenega fiksnega števila ni. Spremljajte stopnjo intervencij: če se od enega kroga do naslednjega ne zniža, vam ta krog ni prinesel nič, težava pa je običajno v postavitvi naloge, kamerah ali izvirnem naboru podatkov, ne v številu krogov.

Ali je to pravi DAgger ali nekaj bolj ohlapnega?

Gre za HG-DAgger, različico pod nadzorom človeka. Klasični DAgger sprašuje eksperta o stanjih, ki jih izbere policy, tudi o stanjih, v katera noben razumen operater ne bi pustil priti prave roke. Tukaj o trenutku posredovanja odloča človek, in samo ti odseki postanejo oznake.

Ali treniram samo na popravkih?

Ne, in tega tudi ne bi smeli. Trening samo na popravkih da policy, ki zna zgolj okrevati. Sestavljeni nabor podatkov je izvirni nabor plus popravki, z epizodami iz vsakega vira izbranimi izrecno.

Ali nadaljevanje od checkpointa nadaljuje trening?

Inicializira uteži iz tega checkpointa. Stanje optimizatorja se ne obnovi, zato v strogem pomenu ne gre za nadaljevanje. V praksi prav uteži nosijo naučeno vedenje čez krog, vredno pa je vedeti, katero od obeh dejansko dobite.

Kako se izračuna stopnja intervencij?

Sličice, označene kot intervencija, deljene s skupnim številom sličic teka. Prikazana je v statusu prevzema nadzora in je edino število, ki si ga za vsak krog velja zapisati poleg vozenega checkpointa in trenirane mešanice.

S katerimi policyji lahko poganjam to zanko?

ACT, SmolVLA, Pi0 ter GR00T N1.5 ali N1.7. Zanka sama je neodvisna od policyja, saj ustvarja le nabore podatkov in checkpointe; praktična razlika je v tem, koliko časa krog traja in kateri GPU potrebuje.

Ali lahko to počnem brez lastnega robota?

Snemati in trenirati lahko tudi brez njega, tako da kupite nabore podatkov na tržnici ali najamete operaterje, pravi SO-100 pa lahko vozite v brskalniku na strani v živo. Krog DAgger je nekaj drugega: potrebuje roko, katere nadzor lahko prevzamete med tekom, zato za samo zanko potrebujete strojno opremo na lastni mizi.

Drive a real arm

A real SO-100, live in the browser. No signup, no hardware needed.

Ta teden izvedite prvi krog

Namestite odjemalec, poženite checkpoint, ki ga že imate, in prevzemite nadzor prvič, ko roka seže mimo kocke. Ta en sam tek je krog DAgger v malem: vse po njem je le še sestavljanje mešanice in plačevanje ur GPU.