Human-gated DAgger, od začátku do konce

Převezměte řízení, když se policy splete, a natrénujte přesně tuto opravu.

Policy natrénovaná pomocí behavior cloning zná jen stavy, které se vyskytly ve vašich demonstracích. DAgger tuto mezeru uzavírá daty ze stavů, do kterých se policy dostane sama. AY-Robots spouští celou smyčku na SO-100: spustíte checkpoint, uprostřed běhu převezmete řízení, ponecháte si opravené epizody, sestavíte směs a pokračujete v tréninku od checkpointu, který jste právě řídili.

  • HG-DAgger, člověkem řízené
  • SO-100 / SO-101
  • ACT, SmolVLA, Pi0, GR00T N1.5 / N1.7
  • Míra intervencí za kolo

Proč natrénovaná policy dělá něco, co nikdy nebylo demonstrováno

Behavior cloning zachází s řízením jako s obyčejným učením s učitelem: na vstupu pozorování, na výstupu cílové úhly kloubů, natrénováno na snímcích, které zaznamenal člověk. To platí jen tehdy, dokud robot zůstává ve stavech, které tento člověk navštívil, a to se neděje. Úchop, který se zavře o čtyřicet milisekund dřív, posune kostku o dva milimetry mimo demonstrovanou polohu. Další pozorování pak v trénovací sadě vůbec není, takže akce v něm je extrapolací, a stav, který následuje, leží ještě dál mimo. Trénovací distribuce a distribuce, kterou natrénovaná policy skutečně vyvolává, jsou dvě různé věci, a ta druhá se v průběhu epizody stále víc vzdaluje od té první.

Ross, Gordon a Bagnell přesně toto selhání redukce popsali v roce 2011 a číselně vyjádřili škodu: klasifikátor, který se pod expertní distribucí mýlí s pravděpodobností e, může na horizontu T kroků pod vlastní vyvolanou distribucí udělat řádově T na druhou krát e chyb, protože jedna chyba vytváří pozorování, která expert nikdy nevygeneroval, a chyby se tím kumulují. Jejich řešením je algoritmus, o kterém je tato stránka: spustit aktuální policy, sbírat expertní labely pro stavy, které navštíví, agregovat je se vším dosud nasbíraným, přetrénovat, opakovat. Další demonstrace stejného druhu nepomáhají, protože jen znovu vzorkují tutéž distribuci. Pomáhají labely na stavech, do kterých se policy skutečně dostane. Zde implementovaná varianta je člověkem řízená (HG-DAgger, Kelly et al.): policy si drží kontrolu, dokud člověk nerozhodne, že se něco kazí, a nepřevezme řízení, takže korekce vznikají jen tam, kde jsou potřeba, a rameno není nikdy nuceno zajet do stavu, který by operátor nepovolil.

  • Behavior cloning platí jen na distribuci stavů, na které byl natrénován.
  • Selhání se samo zesiluje: malá odchylka vytvoří neznámý stav, který vyvolá odchylku ještě větší.
  • Řešením nejsou další demonstrace, ale labely na stavech, do kterých se policy dostane sama.
  • Člověkem řízené znamená, že o zásahu rozhoduje operátor, ne skóre autonomie.

Proč se chyba kumuluje

Posuňte horizont. Pod behavior cloning roste očekávaný dodatečný náklad zhruba s druhou mocninou počtu kroků, protože každá chyba vytváří stavy, které demonstrace nikdy nepokryly; agregační smyčka drží růst blízko lineárnímu (Ross et al., 2011).

200
1.0 %
Behavior cloning
400
DAgger
2.00
200×
Behavior cloning ÷ DAgger
0.000100200300400050100150200Očekávaný dodatečný náklad (mez)
Horizont úlohy (kroky)

Ilustrativní křivky odvozené z mezí v Ross et al. (2011), nejde o měření na vašem robotovi. Podstatný je tvar křivky, ne čísla.

Jedno kolo DAgger, šest kroků

Takto smyčka na platformě skutečně běží, nejde o schéma. Každý krok níže odpovídá konkrétnímu ovládacímu prvku v cockpitu.

Projít smyčku krok za krokem

Stejných šest kroků, jeden po druhém, s tím, co se u každého z nich děje na rameni a v datové sadě.

01

Spustit policy a nahrávat

Spusťte inferenční běh proti vlastnímu natrénovanému checkpointu. Běh se nahrává průběžně, včetně textu úkolu daného běhu, takže snímky lze později použít jako trénovací data, a ne jen jako video k pouhému sledování.

1 z 6

Co za vás platforma odvede

Každá položka tady je krok smyčky, který byste jinak museli postavit a udržovat sami.

Převzetí bez leader ramene

Na začátku běhu zvolte ovládání klávesnicí nebo posuvníky a k opravě vám stačí notebook. Posuny klávesnicí server omezuje na dva stupně na kloub a čtyři stupně na úchopu; cíle posuvníků jsou absolutní a server se k nim při každém volání přiblíží nejvýš o šest stupňů. Omezení vynucuje server, ne rozhraní, takže zaseknutá klávesa nemůže rameno rozhodit.

Dokumentace k teleoperaci

Intervence označené po snímcích

Každý snímek zaznamenaný ve chvíli, kdy máte rameno pod kontrolou, nese příznak intervence, a sloupec action obsahuje kompletní zadanou pózu. Sloupec s příznakem nespravujete ručně ani ho dodatečně nezarovnáváte s indexy snímků.

Formát datové sady LeRobot

Roztřídění: korekce, evaluace, nebo koš

Každý běh dostane jedno rozhodnutí na kartě uložení. Korekční běhy živí další trénovací kolo, evaluační běhy zůstávají mimo trénink, takže tvoří čisté měření, a špatné běhy zmizí, místo aby tiše znehodnotily směs.

Sessions a epizody

Sestavte směs explicitně

Trénovací sadu pro kolo n sestavujete vy: původní datová sada plus korekce, epizody vybrané podle zdroje. Žádné automatické míchání, žádná skrytá simulační data, a sestavený výsledek se chová jako kterákoli jiná datová sada.

Datové sady

Pokračujte od checkpointu

Trénovací běh nasměrujte na checkpoint, který jste právě řídili, místo na základní model, takže každé kolo začíná tam, kde skončilo to poslední. Inicializují se jen váhy, stav optimizeru se neobnovuje, a proto se první kolo vyplatí brát jako test proveditelnosti.

Trénink

GPU pronajaté po kolech

ACT a SmolVLA na 4090, Pi0 a GR00T N1.5 nebo N1.7 na A100 s 80 GB. Spustíte kolo, pod naběhne, checkpointy přistanou ve vašem bucketu a platíte za hodiny, které kolo zabralo.

Ceny GPU

Naplánujte si kola

Míra intervencí je metrika pokroku smyčky: opravené snímky dělené počtem snímků běhu. Nastavte, kde začínáte a kolik vám přinese každé kolo, a uvidíte, kolik kol je potřeba k cíli.

30 %
25 %
3 000
KoloMíra intervencíOpravené 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, ne prognóza. Skutečná kola jsou nerovnoměrná, a kolo, které mírou nepohne, vám nic nepřineslo; přesně to je signál, na který se vyplatí dávat pozor.

Postavit smyčku sami, nebo ji spustit tady

Nic z toho není ručně nemožné. Je to otázka, kolik večerů padne do instalatérské práce místo do kol, a je tu jeden řádek, kde je vlastní řešení jednoznačně lepší volbou.

Krok smyčkyRučně postavenoNa AY-Robots
Převzetí uprostřed běhuLeader rameno, nebo vlastní kód na servo sběrnici. Převzetí klávesnicí a posuvníky včetně bezpečných limitů si napíšete a odladíte na skutečném hardwaru.Leader rameno, klávesnice nebo posuvníky, zvolené při startu běhu. Omezení úhlů sedí v serveru.
Označování intervencíSami přidáte sloupec s příznakem, držíte ho zarovnaný s indexem snímku a kontrolujete ho znovu při každé změně formátu nahrávky.Každý snímek zaznamenaný během převzetí se označí automaticky, se zadanou pózou ve sloupci action.
Třídění běhůAdresářové konvence a shellové skripty. Zamrzlé snímky kolem předání si musíte sami najít a odfiltrovat.Jedno rozhodnutí na běh na kartě uložení. Snímky předání zůstávají v raw adresáři.
Sestavení smíšené datové sadySlučovací skripty pro každou verzi formátu. Zdlouhavá je konzistence indexů epizod, metadat a odkazů na video.Sestavení z originálu plus korekcí s výběrem epizod podle zdroje; výsledkem je normální datová sada.
Start dalšího kola od poslední policyCheckpoint si sami zapojíte do traineru a můžete si obnovit i stav optimizeru, pokud chcete skutečné pokračování.Jedno pole pro základní checkpoint. Jen váhy: inicializace z checkpointu, ne obnovení optimizeru.
Kontrola nad trénovací smyčkouÚplná. Vaše loss funkce, váš rozvrh, vaše ablace, vaše instrumentace, žádná platforma navíc. Pokud je výzkumnou otázkou přímo trénovací smyčka, udělejte si ji sami.Pevná cesta s danou nabídkou policies a hyperparametry, které nabízí formulář, ne libovolný kód.

Práce, na kterých to stojí

Přečtěte si je, než se pustíte do sporu se smyčkou. Každý odkaz vede na stránku s abstraktem, ne za placenou zeď.

  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áce o DAgger: formuluje problém kumulace chyb, uvádí mez T na druhou pro čistě supervizovaný přístup a navrhuje agregovat data ze stavů, které učící se model sám navštíví.

  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

    Člověkem řízená varianta: expert rozhoduje, kdy převezme řízení, místo aby byl dotazován na stavy vybrané policy; přesně tento režim tato 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

    Jiný způsob řízení zásahů: neshoda v ensemblu jako signál důvěry pro to, kdy může model jednat sám. Užitečný protiklad k tomu nechat rozhodovat člověka.

  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 člověka bere jako vzácný zdroj a o pomoc žádá jen u nových nebo rizikových stavů, což je správný rámec, když jeden člověk dohlíží na rameno celé odpoledne.

  5. DART: Noise Injection for Robust Imitation Learning

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

    Poctivá alternativa: místo opravování policy za běhu perturbovat demonstrace tak, aby expert předvedl zotavení. Dobré vědět, než se zavážete k intervencí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 oboru: jaké formy lidské zpětné vazby existují, jaká rozhraní je přenášejí a kam mezi ně patří zásahy v duchu 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áce o ACT. Action chunking je důvod, proč levné rameno vůbec může řídit imitační policy, a ACT je nejrychlejší policy pro iterování 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 a předtrénovaném vision-language modelu, jeden z checkpointů, které lze zde fine-tunovat; práce výslovně uvádí, že nové dovednosti přicházejí z fine-tuningu, ne ze samotného základního modelu.

Otázky, které lidé skutečně kladou

Potřebuji pro DAgger leader rameno?

Ne. Při startu běhu zvolte ovládání klávesnicí nebo posuvníky a převzetí je manuální už od prvního snímku, ovládané z prohlížeče. Leader rameno je příjemnější pro jemné pohyby a je to jediný režim, ve kterém se rameno před předáním samo srovná, ale smyčka běží i bez něj.

Kolik kol DAgger potřebuji?

Poctivé pevné číslo neexistuje. Sledujte míru intervencí: pokud mezi koly neklesá, dané kolo vám nic nepřineslo, a příčina bývá spíš v nastavení úlohy, v kamerách nebo v původní datové sadě než v počtu kol.

Je to skutečný DAgger, nebo něco volnějšího?

Je to HG-DAgger, člověkem řízená varianta. Klasický DAgger se dotazuje experta na stavy, které vybrala policy, včetně stavů, do kterých by žádný soudný operátor skutečné rameno nepustil. Tady rozhoduje o zásahu člověk a labely vznikají jen z těchto úseků.

Trénuji jen na korekcích?

Ne, a ani byste neměli. Trénink jen na korekcích dá vzniknout policy, která umí jen zotavení. Sestavená datová sada je původní data plus korekce, s epizodami z každého zdroje vybranými explicitně.

Obnovuje pokračování od checkpointu trénovací běh?

Inicializuje váhy z daného checkpointu. Stav optimizeru se neobnovuje, takže v přísném smyslu to není pokračování. V praxi právě váhy nesou naučené chování napříč koly, ale je dobré vědět, které z toho ve skutečnosti dostáváte.

Jak se počítá míra intervencí?

Snímky označené jako intervence dělené celkovým počtem snímků běhu. Zobrazuje se ve stavu převzetí a je to to jedno číslo, které stojí za to si u každého kola poznamenat spolu s řízeným checkpointem a trénovanou směsí.

Se kterými policies mohu tuto smyčku spustit?

ACT, SmolVLA, Pi0 a GR00T N1.5 nebo N1.7. Smyčka samotná je vůči policy neutrální, protože produkuje jen datové sady a checkpointy; prakticky se liší v tom, jak dlouho kolo trvá a jakou GPU potřebuje.

Můžu to dělat bez vlastního robota?

Nahrávat a trénovat lze i bez něj, koupí datových sad na tržišti nebo objednáním operátorů, a skutečný SO-100 si můžete zkusit řídit v prohlížeči na stránce live. Kolo DAgger je jiná věc: potřebuje rameno, které lze uprostřed běhu převzít, takže pro samotnou smyčku chcete hardware na vlastním stole.

Drive a real arm

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

Spusťte první kolo ještě tento týden

Nainstalujte klienta, spusťte checkpoint, který už máte, a převezměte řízení hned napoprvé, kdy rameno mine kostku. Tenhle jediný běh je kolo DAgger v miniatuře: všechno další je jen sestavení směsi a placení hodin GPU.