Human-gated DAgger, elejétől a végéig

Vegye át az irányítást, ha a policy hibázik, majd tanítsa be pontosan erre a korrekcióra.

A behavior cloning módszerrel betanított policy csak azokat az állapotokat ismeri, amelyeket a demonstrációk érintettek. A DAgger ezt a rést zárja be: adatokat gyűjt azokból az állapotokból, amelyeket maga a policy ér el. Az AY-Robots a teljes ciklust lefuttatja egy SO-100 karon: checkpointot vezet, futtatás közben átveszi az irányítást, megtartja a korrigált epizódokat, összeállítja a keveréket, és onnan folytatja a tanítást, ahol az imént vezetett checkpointnál abbahagyta.

  • HG-DAgger, emberi döntés
  • SO-100 / SO-101
  • ACT, SmolVLA, Pi0, GR00T N1.5 / N1.7
  • Intervenciós arány körönként

Miért tesz a betanított policy olyasmit, amit sosem demonstráltak neki

A behavior cloning a szabályozást hagyományos felügyelt tanulásként kezeli: bemenet a megfigyelés, kimenet az ízületi célérték, illesztve azokra a frame-ekre, amelyeket egy ember rögzített. Ez csak addig állja meg a helyét, amíg a robot azokon az állapotokon marad, amelyeket az ember bejárt - és nem marad ott. Egy markoló, amely negyven ezredmásodperccel korábban zár, két milliméterrel arrébb tolja a kockát a demonstrált pózból. A következő megfigyelés olyan, amely nincs benne a tanítóhalmazban, tehát az ott adott akció extrapoláció, és az utána következő állapot még távolabb esik. A tanítóeloszlás és az az eloszlás, amelyet a betanított policy ténylegesen létrehoz, két különböző dolog, és a második az epizód lefutása közben egyre messzebb sodródik az elsőtől.

Ross, Gordon és Bagnell pontosan ezt a redukciós hibát írta le 2011-ben, és számszerűsítette is a kárt: egy osztályozó, amely a szakértői eloszlás alatt e valószínűséggel téved, T lépéses horizonton, a saját maga által előidézett eloszlás alatt nagyságrendileg T négyzet szorozva e hibát követhet el, mert egy hiba olyan megfigyeléseket hoz létre, amelyeket a szakértő sosem produkált, és a hibák felhalmozódnak. Az ő megoldásuk az az algoritmus, amelyről ez az oldal szól: futtassuk az aktuális policyt, gyűjtsünk szakértői címkéket az általa meglátogatott állapotokhoz, aggregáljuk mindazzal, amit eddig gyűjtöttünk, tanítsuk újra, és ismételjük. Ugyanolyan típusú demonstrációból több nem segít, mert ugyanabból az eloszlásból mintavételez. Az viszont segít, ha az állapotokhoz, amelyeket a policy elér, vannak címkék. Az itt megvalósított változat human-gated (HG-DAgger, Kelly et al.): a policy addig tartja az irányítást, amíg egy ember el nem dönti, hogy elromlik a helyzet, és át nem veszi azt - így korrekció csak ott keletkezik, ahol tényleg szükséges, és a kart sosem kell olyan állapotba vezetni, amelyet a kezelő nem engedélyezne.

  • A behavior cloning csak azon az állapoteloszláson érvényes, amelyen tanították.
  • A hiba önerősítő: egy kis eltérés ismeretlen állapotot hoz létre, amely nagyobb eltérést szül.
  • A megoldás nem több demonstráció, hanem címkék azokra az állapotokra, amelyeket maga a policy ér el.
  • Human-gated azt jelenti: a kezelő dönt a beavatkozásról, nem egy megbízhatósági érték.

Miért halmozódik fel a hiba

Húzza el a horizontot. Behavior cloning esetén a várható többletköltség nagyjából a lépésszám négyzetével nő, mert minden hiba olyan állapotokat hoz létre, amelyeket a demonstrációk sosem fedtek le; egy aggregációs ciklus a növekedést közel lineárisan tartja (Ross et al., 2011).

200
1.0 %
Behavior cloning
400
DAgger
2.00
200×
Behavior cloning ÷ DAgger
0.000100200300400050100150200Várható többletköltség (korlát)
Feladathorizont (lépések)

Szemléltető görbék a Ross et al. (2011) korlátai alapján, nem az ön robotján mért adatok. A lényeg a görbe alakja, nem a számok.

Egy DAgger-kör hat lépésben

Így fut a ciklus valójában a platformon, nem csak vázlatosan. Az alábbi lépések mindegyike egy vezérlőelemnek felel meg a cockpitben.

Járja végig a ciklust

Ugyanaz a hat lépés, egyenként, azzal, hogy mi történik közben a karon és az adathalmazban.

01

Policy futtatása és rögzítése

Indítson egy inferenciafuttatást egy saját maga betanított checkpointtal szemben. A futtatás közben rögzítésre kerül, a lefutás saját feladatszövegével együtt, így a frame-ek utólag tanítási adatként is használhatók, nem csak megnézhető videóként.

1 / 6

Amit a platform leveszi a válláról

Minden itt felsorolt elem a ciklus egy olyan lépése, amelyet egyébként önnek kellene megépítenie és karbantartania.

Átvétel leader kar nélkül

Válasszon billentyűzetes vagy csúszkás bemenetet a futtatás indításakor, és egy laptoppal is korrigálhat. A billentyűzetes finomítást a szerver ízületenként két fokra, a markolónál négy fokra korlátozza; a csúszkás célértékek abszolútak, és a szerver hívásonként legfeljebb hat fokot mozdul feléjük. A korlátozás a szerverben van, nem a felületen, így egy beragadt billentyű nem tudja megdobni a kart.

Teleoperáció a dokumentációban

Intervenciók frame-enként megjelölve

Minden frame, amely az átvétel alatt keletkezik, intervenciós jelölést kap, az action oszlop pedig a teljes kért pózt tartalmazza. Nem kell kézzel karbantartania egy jelzőoszlopot, sem utólag frame-indexekhez igazítania.

LeRobot adathalmaz-formátum

Szűrés: korrekció, kiértékelés vagy kuka

Minden futtatás egyetlen döntést kap a mentés kártyán. A korrekciós futtatások táplálják a következő tanítási kört, a kiértékelő futtatások kimaradnak a tanításból és így tiszta mérést adnak, a rossz futtatások pedig eltűnnek ahelyett, hogy csendben megmérgeznék a keveréket.

Sessions és epizódok

A keverék explicit összeállítása

Az n. kör tanítóhalmazát ön állítja össze: eredeti adathalmaz plusz korrekciók, forrásonként kiválasztott epizódokkal. Nincs automatikus bekeverés, nincs rejtett szimulációs adat, és az összeállított eredmény úgy viselkedik, mint bármely más adathalmaz.

Adathalmazok

Folytatás checkpointtól

Egy tanítási futtatást az imént vezetett checkpointra irányíthat a base modell helyett, így minden kör ott indul, ahol az előző véget ért. Csak a súlyokat inicializálja; az optimizer állapota nem áll helyre, ezért az első kört érdemes megvalósíthatósági tesztként kezelni.

Tanítás

GPU-k körönként bérelve

ACT és SmolVLA egy 4090-en, Pi0 és GR00T N1.5 vagy N1.7 egy 80 GB-os A100-on. Elindít egy kört, a pod elindul, a checkpointok a bucketbe kerülnek, és csak azokért az órákért fizet, amíg a kör tartott.

GPU-árak

Tervezze meg a köröket

Az intervenciós arány a ciklus haladási mutatója: korrigált frame-ek osztva a futtatás frame-jeivel. Állítsa be, honnan indul és mennyit hoz körönként, majd nézze meg, hány kör kell a célig.

30 %
25 %
3 000
KörIntervenciós arányKorrigált frame-ek
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

Ez egy modell, nem előrejelzés. A valós körök egyenetlenek, és egy kör, amely nem mozdítja az arányt, semmit nem hozott - pontosan ezt érdemes figyelni.

Saját megépítés vagy futtatás itt

Ebből semmi nem lehetetlen kézzel. Csak arról szól, hány este megy el infrastruktúrára körök helyett, és van egy sor, ahol a kézi megoldás egyértelműen jobb.

A ciklus lépéseKézzel felépítveAz AY-Robots-on
Átvétel futtatás közbenLeader kar, vagy saját kód a szervóbuszon. A billentyűzetes és csúszkás átvételt, beleértve a biztonságos korlátokat is, önnek kell megírnia és élő hardveren debuggolnia.Leader kar, billentyűzet vagy csúszkák, a futtatás indításakor kiválasztva. A szögkorlátok a szerverben élnek.
Intervenciók megjelöléseÖn adja hozzá a jelzőoszlopot, tartja frame-indexhez igazítva, és minden formátumváltáskor újra ellenőrzi.Minden, az átvétel alatt rögzített frame automatikusan megjelölésre kerül, a kért pózzal az action oszlopban.
Futtatások rendszerezéseKönyvtár-konvenciók és shell-szkriptek. Az átadás körüli állóképeket önnek kell megtalálnia és kiszűrnie.Egy döntés futtatásonként a mentés kártyán. Az átadási frame-ek a raw könyvtárban maradnak.
A kevert adathalmaz felépítéseFormátumverziónkénti merge-szkriptek. Az epizódindexek, a metaadatok és a videóhivatkozások konzisztenssé tétele a fáradságos rész.Összeállítás eredetiből plusz korrekciókból, forrásonkénti epizódválasztással; az eredmény egy normál adathalmaz.
A következő kör indítása az utolsó policybőlÖn maga köti be a checkpointot a trainerbe, és akár az optimizer állapotát is helyreállíthatja, ha valódi folytatást szeretne.Egy mező a bázis-checkpointhoz. Csak súlyok: a checkpointból inicializál, nem optimizer-resume.
Kontroll a tanítási ciklus felettTeljes. Saját loss, saját ütemezés, saját abláció, saját instrumentáció, semmilyen platform nincs útban. Ha a kutatási kérdés maga a tanítási ciklus, csinálja kézzel.Egy rögzített útvonal egy meghatározott policy-listával és a formon elérhető hiperparaméterekkel, nem tetszőleges kód.

Az írások, amelyekre ez épül

A ciklussal való vitatkozás előtt olvassa el ezeket. Minden link az absztrakt oldalára visz, nem egy fizetőfal mögé.

  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)

    Az eredeti DAgger-cikk: kimondja a hibafelhalmozódás problémáját, megadja a T-négyzet korlátot a tisztán felügyelt megközelítésre, és javasolja, hogy a tanuló által maga meglátogatott állapotokból gyűjtsünk adatot.

  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

    A human-gated változat: a szakértő dönti el, mikor veszi át az irányítást, ahelyett hogy a policy által választott állapotokról kérdeznék - ez az a mód, amelyet ez a platform megvalósít.

  3. EnsembleDAgger: A Bayesian Approach to Safe Imitation Learning

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

    A beavatkozások kapuzásának másik módja: az ensemble-en belüli egyet nem értés mint megbízhatósági jel arra, hogy a tanuló mikor cselekedhet egyedül. Tanulságos ellenpont ahhoz képest, ha ezt egy emberre bízzuk.

  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

    Az emberi figyelmet szűkös erőforrásként kezeli, és csak új vagy kockázatos állapotoknál kér segítséget - ez a helyes keret, ha egy ember felügyeli a kart egy egész délutánon át.

  5. DART: Noise Injection for Robust Imitation Learning

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

    A becsületes alternatíva: ahelyett, hogy a policyt menet közben korrigálnánk, a demonstrációkat zajosítjuk, hogy a szakértő mutassa be a visszatalálást. Érdemes ismerni, mielőtt elköteleződünk a beavatkozások mellett.

  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

    A terület térképe: milyen emberi visszajelzési formák léteznek, milyen felületeken keresztül jutnak érvényre, és hol helyezkedik el közöttük a DAgger-jellegű beavatkozás.

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

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

    Az ACT-cikk. Az action chunking az oka annak, hogy egy olcsó kart egyáltalán vezérelni lehet imitációs policyvel, és az ACT az a policy, amellyel a leggyorsabban végig lehet futtatni egy DAgger-kört.

  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

    Egy flow matchingre épülő VLA, amely egy előre betanított vision-language modellre épül, és az egyik olyan checkpoint, amelyet itt finomhangolhat; a cikk kifejezetten kimondja, hogy az új képességek a finomhangolásból erednek, nem magából a base modellből.

Amit az emberek valóban kérdeznek

Kell-e leader kar a DAgger-hez?

Nem. Válasszon billentyűzetes vagy csúszkás bemenetet a futtatás indításakor, és az átvétel az első frame-től kézi lesz, a böngészőből vezérelve. A leader kar kellemesebb a finom mozgásokhoz, és ez az egyetlen mód, amelyben a kar átadás előtt önmagát igazítja, de a ciklus nélküle is működik.

Hány DAgger-kör kell?

Nincs őszinte, rögzített szám. Figyelje az intervenciós arányt: ha az egyik körről a másikra nem csökken, az a kör semmit nem hozott, és az ok általában a feladat felépítésében, a kamerákban vagy az eredeti adathalmazban keresendő, nem a körök számában.

Ez valódi DAgger, vagy csak hasonló hozzá?

Ez HG-DAgger, a human-gated változat. A klasszikus DAgger a policy által választott állapotokról kérdezi a szakértőt, köztük olyanokról is, ahová egy épeszű kezelő sosem engedne egy valódi kart. Itt egy ember dönti el, mikor avatkozik be, és csak ezek a szakaszok válnak címkévé.

Csak a korrekciókon tanítok?

Nem, és nem is szabadna. Ha kizárólag korrekciókon tanít, olyan policyt kap, amely csak a visszatalálást ismeri. Az összeállított adathalmaz az eredeti adatokból plusz a korrekciókból áll, forrásonként explicit módon kiválasztott epizódokkal.

A checkpointtól való folytatás folytatja a tanítási futtatást?

A súlyokat inicializálja abból a checkpointból. Az optimizer állapota nem áll helyre, tehát szigorú értelemben nem folytatás. A gyakorlatban a súlyok viszik át a tanult viselkedést a körön át, de érdemes tudni, melyiket kapja a kettő közül.

Hogyan számítják az intervenciós arányt?

Intervencióként megjelölt frame-ek osztva a futtatás összes frame-jével. Megjelenik az átvétel-státuszban, és ez az az egy szám, amelyet körönként érdemes feljegyezni, a vezetett checkpoint és a betanított keverék mellett.

Milyen policykkel futtatható ez a ciklus?

ACT, SmolVLA, Pi0, valamint GR00T N1.5 vagy N1.7. Maga a ciklus policy-független, mert csak adathalmazokat és checkpointokat állít elő; a gyakorlatban a modellek a kör hosszában és a szükséges GPU-ban különböznek.

Megvan ez saját robot nélkül is?

Rögzíteni és tanítani robot nélkül is lehet, a piactéren vásárolt adathalmazokkal vagy megbízott operátorokkal, és egy valódi SO-100-at a böngészőből is vezethet a live oldalon. Egy DAgger-kör más: olyan kar kell hozzá, amelyet futtatás közben átvehet, tehát magához a ciklushoz hardver kell a saját asztalára.

Drive a real arm

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

Futtassa le az első kört ezen a héten

Telepítse a klienst, vezessen egy már meglévő checkpointot, és vegye át az irányítást, amint a kar először nyúl túl a kockán. Ez az egyetlen futtatás egy DAgger-kör kicsiben; minden, ami utána jön, a keverék összeállítása és a GPU-órák kifizetése.