Human-gated DAgger, od početka do kraja

Preuzmite kontrolu kad policy pogriješi i trenirajte upravo tu ispravku.

Policy trenirana pomoću behavior cloninga poznaje samo stanja koja su posjetile vaše demonstracije. DAgger tu prazninu zatvara podacima iz stanja do kojih dolazi sama policy. AY-Robots vodi cijelu petlju na SO-100: vozite checkpoint, preuzmite kontrolu usred vožnje, zadržite ispravljene epizode, sastavite mješavinu i nastavite trening od checkpointa koji ste upravo vozili.

  • HG-DAgger, pod ljudskim nadzorom
  • SO-100 / SO-101
  • ACT, SmolVLA, Pi0, GR00T N1.5 / N1.7
  • Stopa intervencije po rundi

Zašto trenirana policy radi nešto što nikad nije demonstrirano

Behavior cloning tretira upravljanje kao obično nadzirano učenje: opažanje na ulazu, ciljni položaj zgloba na izlazu, prilagođeno frameovima koje je zabilježio čovjek. To vrijedi samo dok robot ostaje na stanjima koja je taj čovjek posjetio, a on ne ostaje. Hvataljka koja se zatvori četrdeset milisekundi prerano gurne kocku dva milimetra izvan demonstrirane pozicije. Sljedeće opažanje takvo je da ga skup za treniranje ne sadrži, pa je akcija ondje ekstrapolacija, a stanje nakon toga leži još dalje izvan poznatog. Distribucija za treniranje i distribucija koju stvarno stvara naučena policy dvije su različite stvari, i druga se s odvijanjem epizode sve više udaljava od prve.

Ross, Gordon i Bagnell opisali su točno ovaj problem redukcije 2011. i brojčano ga odredili: klasifikator koji pod ekspertnom distribucijom griješi s vjerojatnošću e može pod distribucijom koju sam stvara, tijekom horizonta od T koraka, napraviti reda veličine T na kvadrat puta e pogrešaka, jer jedna pogreška stvara opažanja koja ekspert nikad nije generirao, pa se pogreške akumuliraju. Njihovo rješenje je algoritam o kojem govori ova stranica: vozite trenutnu policy, prikupite ekspertne oznake za stanja koja posjećuje, agregirajte ih sa svime prikupljenim do sada, ponovno trenirajte, ponovite. Više demonstracija iste vrste ne pomaže, jer se time samo ponovno uzorkuje ista distribucija. Oznake na stanjima do kojih policy dolazi pomažu. Ovdje implementirana varijanta je pod ljudskim nadzorom (HG-DAgger, Kelly et al.): policy zadržava kontrolu dok osoba ne odluči da nešto ide krivo i preuzme, tako da ispravke nastaju samo ondje gdje su potrebne, a od ruke se nikad ne traži da vozi u stanje koje operater ne bi dopustio.

  • Behavior cloning vrijedi samo na distribuciji stanja na kojoj je treniran.
  • Pogreška se sama pojačava: malo odstupanje stvara nepoznato stanje, koje stvara veće odstupanje.
  • Lijek nisu dodatne demonstracije, nego oznake na stanjima do kojih dolazi sama policy.
  • Pod ljudskim nadzorom znači da operater odlučuje kada intervenirati, a ne rezultat autonomije.

Zašto se pogreška akumulira

Povucite horizont. Kod behavior cloninga očekivani dodatni trošak raste otprilike s kvadratom broja koraka, jer svaka pogreška stvara stanja koja demonstracije nikad nisu pokrile; petlja agregacije drži taj rast blizu linearnog (Ross et al., 2011).

200
1.0 %
Behavior cloning
400
DAgger
2.00
200×
Behavior cloning ÷ DAgger
0.000100200300400050100150200Očekivani dodatni trošak (granica)
Horizont zadatka (koraci)

Ilustrativne krivulje iz granica u Ross et al. (2011), ne mjerenja na vašem robotu. Bitan je oblik krivulje, ne brojke.

Jedna DAgger runda, šest koraka

Ovo je petlja onakva kakvu platforma stvarno provodi, ne shema. Svaki korak niže odgovara jednoj kontroli u kokpitu.

Prođite kroz petlju

Istih šest koraka, jedan po jedan, s onim što se u svakom od njih događa na ruci i u skupu podataka.

01

Vozite policy i snimajte

Pokrenite vožnju s inferencijom na checkpointu koji ste sami trenirali. Vožnja se snima dok traje, zajedno s tekstom zadatka te vožnje, tako da frameovi kasnije budu upotrebljivi kao podaci za treniranje, umjesto da budu samo video koji se može gledati.

1 od 6

Što platforma preuzima umjesto vas

Svaka stavka ovdje korak je petlje koji biste inače sami morali izgraditi i održavati.

Preuzimanje bez leader ruke

Na početku vožnje odaberite unos tipkovnicom ili sliderima i za ispravljanje vam je dovoljan sam laptop. Pomaci tipkovnicom ograničeni su na strani servera na dva stupnja po zglobu i četiri na hvataljci; ciljevi slidera su apsolutni, a server se prema njima po pozivu pomiče najviše šest stupnjeva. Ograničenja provodi server, ne sučelje, pa zaglavljena tipka ne može baciti ruku.

Teleoperacija u dokumentaciji

Intervencije označene po frameu

Svaki frame snimljen dok držite ruku nosi oznaku intervencije, a stupac action nosi potpunu zadanu pozu. Ne morate ručno održavati stupac s oznakama niti ga naknadno usklađivati s indeksima frameova.

Format LeRobot skupa podataka

Razvrstavanje: ispravka, evaluacija ili koš

Svaka vožnja dobiva jednu odluku na kartici za spremanje. Vožnje s ispravkama hrane sljedeću rundu treninga, evaluacijske vožnje ostaju izvan treninga i tako ostaju čisto mjerenje, a loše vožnje nestaju umjesto da tiho zatruju mješavinu.

Sesije i epizode

Eksplicitno sastavite mješavinu

Skup za treniranje runde n sastavljate sami: izvorni skup podataka plus ispravke, epizode odabrane po izvoru. Bez automatskog miješanja, bez skrivenih simulacijskih podataka, a sastavljeni rezultat ponaša se kao svaki drugi skup podataka.

Skupovi podataka

Nastavite od checkpointa

Usmjerite trening na checkpoint koji ste upravo vozili umjesto na bazni model, tako da svaka runda počinje ondje gdje je prethodna završila. Inicijaliziraju se samo težine; stanje optimizatora se ne obnavlja, zato je prvu rundu vrijedno tretirati kao test izvedivosti.

Treniranje

GPU-ovi unajmljeni po rundi

ACT i SmolVLA na 4090, Pi0 i GR00T N1.5 ili N1.7 na A100 sa 80 GB. Pokrenete rundu, pod se digne, checkpointi završe u vašem bucketu, a plaćate sate koje je runda trajala.

Cijene GPU-a

Planirajte svoje runde

Stopa intervencije je metrika napretka petlje: ispravljeni frameovi podijeljeni s ukupnim frameovima vožnje. Postavite početnu vrijednost i koliko vam donosi svaka runda, pa pogledajte koliko je rundi potrebno da dođete do cilja.

30 %
25 %
3 000
RundaStopa intervencijeIspravljeni frameovi
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 prognoza. Stvarne runde su neravnomjerne, a runda koja ne pomakne stopu nije donijela ništa; upravo to je signal vrijedan praćenja.

Graditi petlju sami ili je voziti ovdje

Ništa od ovoga nije nemoguće napraviti ručno. Pitanje je koliko večeri ode u instalatersku infrastrukturu umjesto u runde, a postoji jedan redak u kojem je vlastita izrada jasno bolji odgovor.

Korak petljePostaviti ručnoNa AY-Robots
Preuzimanje usred vožnjeLeader ruka ili vlastiti kod na servo busu. Preuzimanje tipkovnicom i sliderima, uključujući sigurna ograničenja, morate sami napisati i zatim debugirati na pravom hardveru.Leader ruka, tipkovnica ili slideri, odabrani na početku vožnje. Ograničenja kutova žive u serveru.
Označavanje intervencijaSami dodajete stupac s oznakama, držite ga usklađenim s indeksom framea i ponovno provjeravate svaki put kad se format snimanja promijeni.Svaki frame snimljen tijekom preuzimanja automatski se označava, sa zadanom pozom u stupcu action.
Sortiranje vožnjiKonvencije direktorija i shell skripte. Zamrznute frameove oko predaje kontrole morate sami pronaći i izbaciti.Jedna odluka po vožnji na kartici za spremanje. Frameovi predaje ostaju u raw direktoriju.
Izgradnja mješovitog skupa podatakaSkripte za spajanje po verziji formata. Naporni dio je uskladiti indekse epizoda, metapodatke i reference na video.Sastavljanje od izvornog skupa plus ispravki s odabirom epizoda po izvoru; rezultat je normalan skup podataka.
Početak sljedeće runde od zadnje policyCheckpoint sami povezujete s trenerom, a možete i obnoviti stanje optimizatora ako želite pravi nastavak.Jedno polje za bazni checkpoint. Samo težine: inicijalizacija iz checkpointa, nije nastavak optimizatora.
Kontrola nad petljom treniranjaPotpuna. Vaš loss, vaš raspored, vaše ablacije, vaša instrumentacija, bez platforme na putu. Ako je istraživačko pitanje sama petlja treniranja, napravite je ručno.Fiksan put s određenim popisom policyja i hiperparametrima koje izlaže formular, ne proizvoljan kod.

Radovi na kojima se ovo temelji

Pročitajte ovo prije nego što se raspravljate s petljom. Svaka poveznica vodi na stranicu sažetka, ne iza paywalla.

  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)

    Izvorni DAgger rad: iznosi problem akumulacije pogrešaka, daje granicu T na kvadrat za čisto nadzirani pristup i predlaže agregiranje podataka iz stanja koja sam učenik posjećuje.

  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

    Varijanta pod ljudskim nadzorom: ekspert odlučuje kada preuzeti kontrolu umjesto da bude ispitivan o stanjima koja je odabrala policy; upravo taj način ova platforma provodi.

  3. EnsembleDAgger: A Bayesian Approach to Safe Imitation Learning

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

    Drugi način ograničavanja intervencija: neslaganje ansambla kao signal pouzdanosti za to kada učenik smije djelovati sam. Koristan kontrast prepuštanju te odluke čovjeku.

  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

    Tretira ljudsku pažnju kao oskudan resurs i traži pomoć samo kod novih ili rizičnih stanja, što je pravi okvir kad jedna osoba nadzire ruku cijelo popodne.

  5. DART: Noise Injection for Robust Imitation Learning

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

    Iskrena alternativa: umjesto ispravljanja policy uživo, poremetiti demonstracije tako da ekspert pokaže oporavak. Vrijedno znati prije nego što se odlučite na 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

    Karta područja: koji oblici ljudske povratne informacije postoje, koja im sučelja služe kao prijenosnik i gdje se među njima nalazi intervencija u DAgger stilu.

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

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

    ACT rad. Action chunking je razlog zašto jeftinu ruku uopće može voziti imitacijska policy, a ACT je policy s kojom se DAgger runda najbrže iterira.

  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 temeljen na flow matchingu i unaprijed treniranom vision-language modelu, jedan od checkpointova koje ovdje možete fine-tunati; rad izričito kaže da nove vještine dolaze iz fine-tuninga, ne iz samog baznog modela.

Pitanja koja ljudi stvarno postavljaju

Trebam li leader ruku za DAgger?

Ne. Na početku vožnje odaberite unos tipkovnicom ili sliderima i preuzimanje je ručno od prvog framea, vođeno iz preglednika. Leader ruka je ugodnija za fine pokrete i jedini je način u kojem se ruka sama poravna prije predaje kontrole, ali petlja radi i bez nje.

Koliko DAgger rundi trebam?

Poštenog fiksnog broja nema. Pratite stopu intervencije: ako ne padne iz runde u rundu, ta runda nije donijela ništa, a problem je obično u postavci zadatka, kamerama ili izvornom skupu podataka, ne u broju rundi.

Je li ovo pravi DAgger ili nešto labavije?

Ovo je HG-DAgger, varijanta pod ljudskim nadzorom. Klasični DAgger ispituje eksperta o stanjima koja je odabrala policy, uključujući stanja u koja nijedan pri zdravoj pameti operater ne bi pustio pravu ruku. Ovdje osoba odlučuje kada intervenirati, i samo ti segmenti postaju oznake.

Treniram li samo na ispravkama?

Ne, i to ne biste ni trebali. Treniranje samo na ispravkama daje policy koja zna samo oporavljati se. Sastavljeni skup podataka su izvorni podaci plus ispravke, s epizodama iz svakog izvora izričito odabranima.

Nastavlja li Nastavi od checkpointa prekinuti trening?

Inicijalizira težine iz tog checkpointa. Stanje optimizatora se ne obnavlja, pa u strogom smislu to nije nastavak. U praksi upravo težine nose naučeno ponašanje kroz rundu, ali vrijedi znati koje od to dvoje zapravo dobivate.

Kako se računa stopa intervencije?

Frameovi označeni kao intervencija podijeljeni s ukupnim brojem frameova vožnje. Prikazuje se u statusu preuzimanja i jedini je broj koji se isplati zapisati po rundi, uz checkpoint koji ste vozili i mješavinu na kojoj ste trenirali.

S kojim policy modelima mogu voziti ovu petlju?

ACT, SmolVLA, Pi0 te GR00T N1.5 ili N1.7. Sama petlja je neovisna o policy jer proizvodi samo skupove podataka i checkpointe; praktična razlika je u tome koliko runda traje i koji joj GPU treba.

Mogu li ovo raditi bez vlastitog robota?

Snimati i trenirati možete i bez njega, kupnjom skupova podataka na tržnici ili angažiranjem operatera, a pravi SO-100 možete voziti u pregledniku na live stranici. DAgger runda je nešto drugo: treba joj ruka koju možete preuzeti usred vožnje, pa za samu petlju trebate hardver na vlastitom stolu.

Drive a real arm

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

Odvozite prvu rundu ovaj tjedan

Instalirajte klijent, odvozite checkpoint koji već imate i preuzmite kontrolu prvi put kad ruka promaši kocku. Ta jedna vožnja je DAgger runda u malom: sve poslije toga je sastavljanje mješavine i plaćanje GPU sati.