Human-gated DAgger, od začiatku do konca

Prevezmite riadenie, keď policy zlyhá, a natrénujte presne túto korekciu.

Policy natrénovaná pomocou behavior cloning pozná len tie stavy, ktoré navštívili vaše demonštrácie. DAgger túto medzeru uzatvára dátami zo stavov, do ktorých sa policy dostane sama. AY-Robots beží celý cyklus na SO-100: spustite checkpoint, prevezmite riadenie počas behu, ponechajte si korigované epizódy, zostavte mix a trénujte ďalej z checkpointu, ktorý ste práve riadili.

  • HG-DAgger, riadené človekom
  • SO-100 / SO-101
  • ACT, SmolVLA, Pi0, GR00T N1.5 / N1.7
  • Miera intervencie za kolo

Prečo natrénovaná policy robí niečo, čo nikdy nebolo demonštrované

Behavior cloning zaobchádza s riadením ako s bežným učením s učiteľom: na vstupe pozorovanie, na výstupe cieľová poloha kĺbov, natrénované na snímkach, ktoré zaznamenal človek. To platí len dovtedy, kým robot zostáva v stavoch, ktoré tento človek navštívil, a presne to sa nedeje. Čeľusť, ktorá sa zavrie o štyridsať milisekúnd skôr, posunie kocku o dva milimetre mimo demonštrovanej polohy. Nasledujúce pozorovanie sa v trénovacej množine nenachádza, akcia je teda extrapoláciou a stav po nej leží ešte ďalej mimo. Trénovacia distribúcia a distribúcia, ktorú skutočne vytvára natrénovaná policy, sú dve odlišné veci a tá druhá sa počas priebehu epizódy od prvej čoraz viac vzďaľuje.

Ross, Gordon a Bagnell presne toto zlyhanie redukcie opísali v roku 2011 a škodu aj vyčíslili: klasifikátor, ktorý sa pod expertnou distribúciou mýli s pravdepodobnosťou e, môže na horizonte T krokov pod vlastnou vytvorenou distribúciou urobiť rádovo T na druhú krát e chýb, pretože jedna chyba vytvorí pozorovania, aké expert nikdy nevygeneroval, a chyby sa tak kumulujú. Ich riešením je práve algoritmus, o ktorom je táto stránka: spustiť aktuálnu policy, zbierať expertné labely pre stavy, ktoré navštívi, agregovať ich so všetkým doteraz nazbieraným, znova natrénovať, opakovať. Ďalšie demonštrácie rovnakého druhu nepomôžu, pretože vzorkujú tú istú distribúciu. Pomáhajú labely zo stavov, ktoré dosiahne policy. Tu implementovaný variant je riadený človekom (HG-DAgger, Kelly et al.): policy si drží riadenie, kým sa človek nerozhodne, že to ide zle, a prevezme kontrolu, takže korekcie vznikajú len tam, kde sú potrebné, a rameno sa nikdy nedostane do stavu, ktorý by operátor nedovolil.

  • Behavior cloning platí len na distribúcii stavov, na ktorej bol natrénovaný.
  • Zlyhanie sa samo zosilňuje: malá odchýlka vytvorí neznámy stav, ktorý vytvorí väčšiu odchýlku.
  • Náprava nespočíva vo viacerých demonštráciách, ale v labeloch zo stavov, ktoré dosiahne samotná policy.
  • Riadené človekom znamená, že o zásahu rozhoduje operátor, nie skóre autonómie.

Prečo sa chyba kumuluje

Posuňte horizont. Pri behavior cloning rastie očakávaná dodatočná cena približne s druhou mocninou počtu krokov, pretože každá chyba vytvára stavy, ktoré demonštrácie nikdy nepokryli; agregačná slučka udržuje rast blízko lineárneho (Ross et al., 2011).

200
1.0 %
Behavior cloning
400
DAgger
2.00
200×
Behavior cloning ÷ DAgger
0.000100200300400050100150200Očakávaná dodatočná cena (hranica)
Horizont úlohy (kroky)

Ilustračné krivky z hraníc uvedených v Ross et al. (2011), nie merania z vášho robota. Podstatný je tvar, nie čísla.

Jedno kolo DAgger, šesť krokov

Toto je slučka presne tak, ako ju platforma skutočne beží, nie schéma. Každý krok nižšie zodpovedá ovládaciemu prvku v kokpite.

Prejsť si slučku krok za krokom

Tých istých šesť krokov, jeden po druhom, s tým, čo sa pri každom z nich deje na ramene a v datasete.

01

Spustiť policy a nahrávať

Spustite inferenčný beh proti checkpointu, ktorý ste natrénovali. Beh sa nahráva priebežne, spolu s textom úlohy daného behu, takže snímky sú neskôr použiteľné ako trénovacie dáta a nie sú len videom, na ktoré sa dá len pozerať.

1 z 6

Čo za vás platforma rieši

Každá položka tu je krok slučky, ktorý by ste si inak museli postaviť a udržiavať sami.

Prevzatie riadenia bez leader ramena

Na začiatku behu zvoľte vstup cez klávesnicu alebo slidery a na korekciu vám stačí notebook. Posuny klávesnicou server obmedzuje na dva stupne na kĺb a štyri na čeľusti; cieľové hodnoty sliderov sú absolútne a server sa k nim pri každom volaní priblíži najviac o šesť stupňov. Obmedzenia vynucuje server, nie rozhranie, takže zaseknutá klávesa nemôže rameno vychýliť.

Dokumentácia k teleoperácii

Intervencie označené pri každom snímku

Každý snímok nahratý počas toho, čo držíte rameno, nesie príznak intervencie, a stĺpec action obsahuje kompletnú zadanú polohu. Stĺpec s príznakom nemusíte spravovať ručne ani ho dodatočne zarovnávať s indexmi snímkov.

Formát LeRobot datasetu

Roztriedenie: korekcia, evaluácia alebo kôš

Každý beh dostane na karte uloženia jedno rozhodnutie. Korekčné behy napájajú ďalšie kolo trénovania, evaluačné behy zostávajú mimo trénovania, aby ostali čistým meraním, a nepodarené behy zmiznú namiesto toho, aby potichu znehodnotili mix.

Sessions a epizódy

Zostavte mix explicitne

Trénovaciu množinu pre kolo n zostavujete vy: pôvodný dataset plus korekcie, epizódy vybrané podľa zdroja. Žiadne automatické miešanie, žiadne skryté simulačné dáta, a zostavený výsledok sa správa ako každý iný dataset.

Datasety

Pokračovať od checkpointu

Nasmerujte trénovací beh na checkpoint, ktorý ste práve riadili, namiesto základného modelu, aby každé kolo začínalo tam, kde skončilo predošlé. Inicializujú sa len váhy; stav optimizéra sa neobnovuje, preto sa prvé kolo oplatí brať ako test uskutočniteľnosti.

Trénovanie

GPU prenajaté na kolo

ACT a SmolVLA na 4090, Pi0 a GR00T N1.5 alebo N1.7 na A100 s 80 GB. Spustíte kolo, pod sa naštartuje, checkpointy pristanú vo vašom buckete, a platíte za hodiny, ktoré kolo trvalo.

Ceny GPU

Naplánujte si kolá

Miera intervencie je metrika pokroku slučky: korigované snímky delené počtom snímkov behu. Nastavte, kde začínate a koľko vám prinesie každé kolo, a uvidíte, koľko kôl potrebujete na dosiahnutie cieľa.

30 %
25 %
3 000
KoloMiera intervencieKorigované snímky
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, nie prognóza. Skutočné kolá sú nerovnomerné a kolo, ktoré nehýbe mierou, vám neprinieslo nič; presne to je signál, ktorý sa oplatí sledovať.

Postaviť si slučku sami, alebo ju spustiť tu

Nič z toho nie je ručne nemožné. Je to otázka, koľko večerov padne na inštalatérstvo namiesto kôl, a je tu jeden riadok, kde je vlastné riešenie jednoznačne lepšou voľbou.

Krok slučkyRučné zostavenieNa AY-Robots
Prevzatie riadenia počas behuLeader rameno alebo vlastný kód na servo zbernici. Prevzatie cez klávesnicu a slidery vrátane bezpečných limitov si napíšete a odladíte na skutočnom hardvéri sami.Leader rameno, klávesnica alebo slidery, zvolené pri štarte behu. Uhlové obmedzenia sú v serveri.
Označovanie intervenciíPridáte stĺpec s príznakom, udržiavate ho zarovnaný s indexom snímku a znova ho kontrolujete pri každej zmene formátu nahrávania.Každý snímok nahratý počas prevzatia je označený automaticky, so zadanou polohou v stĺpci action.
Triedenie behovKonvencie adresárov a shell skripty. Zamrznuté snímky okolo odovzdania riadenia si musíte sami nájsť a vyfiltrovať.Jedno rozhodnutie na beh na karte uloženia. Snímky odovzdania zostávajú v raw adresári.
Zostavenie zmiešaného datasetuMerge skripty pre každú verziu formátu. Zladiť indexy epizód, metadáta a odkazy na video je tá zdĺhavá časť.Zostavenie z pôvodných dát plus korekcií s výberom epizód podľa zdroja; výsledkom je bežný dataset.
Začať ďalšie kolo od poslednej policyCheckpoint si do trénera zapojíte sami a môžete obnoviť aj stav optimizéra, ak chcete skutočné pokračovanie.Jedno pole pre základný checkpoint. Len váhy: inicializuje sa z checkpointu, nie je to obnovenie optimizéra.
Kontrola nad trénovacou slučkouÚplná. Vlastná loss, vlastný harmonogram, vlastné ablácie, vlastná inštrumentácia, žiadna platforma navyše. Ak je výskumnou otázkou samotná trénovacia slučka, urobte to ručne.Pevná cesta s pevným zoznamom policies a hyperparametrami, ktoré ponúka formulár, nie ľubovoľný kód.

Práce, na ktorých to stojí

Prečítajte si ich, skôr než sa pustíte do sporu o slučke. Každý odkaz vedie na stránku s abstraktom, nie za platenú stenu.

  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)

    Pôvodná práca o DAgger: formuluje problém kumulujúcej sa chyby, uvádza hranicu T na druhú pre čisto supervizovaný prístup a navrhuje agregovať dáta zo stavov, ktoré sám navštívi učiaci sa systém.

  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

    Variant riadený človekom: expert rozhoduje, kedy prevezme riadenie, namiesto toho, aby bol dopytovaný na stavy, ktoré si zvolila policy; presne tento režim táto platforma implementuje.

  3. EnsembleDAgger: A Bayesian Approach to Safe Imitation Learning

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

    Iný spôsob riadenia zásahov: nezhoda v ensemble ako signál dôvery na to, kedy môže systém konať sám. Užitočný kontrast k tomu, nechať posúdenie na človeku.

  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

    Pozornosť človeka chápe ako vzácny zdroj a o pomoc žiada len pri nových alebo rizikových stavoch, čo je správny rámec, keď jeden človek dohliada na rameno celé popoludnie.

  5. DART: Noise Injection for Robust Imitation Learning

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

    Čestná alternatíva: namiesto korigovania policy online narušiť demonštrácie tak, aby expert predviedol návrat do správneho stavu. Oplatí sa poznať pred tým, ako sa zaviažete k intervenciám.

  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

    Mapa odboru: aké formy ľudskej spätnej väzby existujú, cez aké rozhrania sa prenášajú a kam medzi nimi patrí zásah v štýle DAgger.

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

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

    Práca o ACT. Action chunking je dôvod, prečo lacné rameno vôbec môže riadiť imitačná policy, a ACT je najrýchlejšia policy na iteráciu kola DAgger.

  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 založený na flow matching, postavený na predtrénovanom vision-language modeli, a jeden z checkpointov, ktoré tu môžete fine-tunovať; práca výslovne uvádza, že nové zručnosti pochádzajú z fine-tuningu, nie zo samotného základného modelu.

Otázky, ktoré ľudia naozaj kladú

Potrebujem na DAgger leader rameno?

Nie. Pri štarte behu zvoľte vstup cez klávesnicu alebo slidery a prevzatie je manuálne od prvého snímku, riadené z prehliadača. Leader rameno je príjemnejšie pri jemných pohyboch a je to jediný režim, v ktorom sa rameno pred odovzdaním samo zarovná, ale slučka funguje aj bez neho.

Koľko kôl DAgger potrebujem?

Poctivé pevné číslo neexistuje. Sledujte mieru intervencie: ak neklesá z kola na kolo, dané kolo vám neprinieslo nič, a problém zvyčajne nie je v počte kôl, ale v nastavení úlohy, kamerách alebo pôvodnom datasete.

Je to skutočný DAgger, alebo niečo voľnejšie?

Je to HG-DAgger, variant riadený človekom. Klasický DAgger dopytuje experta na stavy, ktoré si zvolila policy, vrátane stavov, do ktorých by žiadny rozumný operátor nenechal ísť skutočné rameno. Tu rozhoduje o zásahu človek a labelmi sa stávajú len tieto úseky.

Trénujem len na korekciách?

Nie, a ani by ste nemali. Trénovanie len na korekciách vám dá policy, ktorá vie iba to, ako sa zotaviť. Zostavený dataset tvoria pôvodné dáta plus korekcie, s epizódami z každého zdroja vybranými explicitne.

Obnovuje pokračovanie od checkpointu trénovací beh?

Inicializuje váhy z daného checkpointu. Stav optimizéra sa neobnovuje, takže v prísnom zmysle to nie je pokračovanie. V praxi práve váhy nesú naučené správanie naprieč kolami, ale oplatí sa vedieť, ktorú z týchto dvoch vecí vlastne dostávate.

Ako sa počíta miera intervencie?

Snímky označené ako intervencia delené celkovým počtom snímkov behu. Zobrazuje sa v stave prevzatia riadenia a je to to jediné číslo, ktoré sa oplatí zapísať pri každom kole spolu s checkpointom, ktorý ste riadili, a mixom, na ktorom ste trénovali.

S ktorými policies môžem túto slučku spustiť?

ACT, SmolVLA, Pi0 a GR00T N1.5 alebo N1.7. Samotná slučka je voči policy nezávislá, pretože produkuje len datasety a checkpointy; praktický rozdiel je v tom, ako dlho kolo trvá a akú GPU potrebuje.

Dá sa to robiť aj bez vlastného robota?

Nahrávať a trénovať môžete aj bez neho, kúpou datasetov na marketplace alebo objednaním operátorov, a skutočný SO-100 môžete riadiť v prehliadači na stránke live. Kolo DAgger je iné: potrebuje rameno, ktoré môžete prevziať počas behu, takže na samotnú slučku potrebujete hardvér na vlastnom stole.

Drive a real arm

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

Spustite svoje prvé kolo tento týždeň

Nainštalujte klienta, spustite checkpoint, ktorý už máte, a prevezmite riadenie prvýkrát, keď rameno minie kocku. Tento jediný beh je kolo DAgger v miniatúre: všetko potom je už len zostavenie mixu a platenie za hodiny GPU.