Human-gated DAgger, deurlopend

Neem oor wanneer die policy verkeerd gaan, en train dit dan op jou korreksie.

'n Policy wat deur behavior cloning getrain is, ken slegs die toestande wat jou demonstrasies besoek het. DAgger sluit daardie gaping met data uit die toestande wat die policy self bereik. AY-Robots laat die hele lus op 'n SO-100 loop: bestuur 'n checkpoint, neem middel-in-die-lopie oor, behou die korrigeerde episodes, stel die mengsel saam, en train verder vanaf die checkpoint wat jy pas bestuur het.

  • HG-DAgger, human-gated
  • SO-100 / SO-101
  • ACT, SmolVLA, Pi0, GR00T N1.5 / N1.7
  • Intervensiekoers per ronde

Waarom 'n getrainde policy iets doen wat nooit gedemonstreer is nie

Behavior cloning behandel beheer as gewone toesighoudende leer: waarneming in, gewrigmikpunt uit, gepas op die frames wat 'n mens opgeneem het. Dit geld net solank die robot op die toestande bly wat dié mens besoek het, en dit bly nie daarop nie. 'n Gryper wat veertig millisekondes te vroeg sluit, skuif die kubus twee millimeter uit sy gedemonstreerde pose. Die volgende waarneming is een wat nie in die trainingstel voorkom nie, so die aksie daar is 'n ekstrapolasie, en die toestand daarna lê nog verder buite. Die trainingsverspreiding en die verspreiding wat die geleerde policy werklik voortbring, is twee verskillende dinge, en die tweede een dryf al hoe verder van die eerste weg soos die episode verloop.

Ross, Gordon en Bagnell het presies hierdie reduksiefout in 2011 beskryf en die skade bereken: 'n klassifiseerder wat met waarskynlikheid e onder die kundige-verspreiding faal, kan oor 'n horison van T stappe onder die verspreiding wat hy self voortbring in die orde van T in die kwadraat maal e foute maak, omdat een fout waarnemings oplewer wat die kundige nooit gegenereer het nie, en die foute mekaar opstapel. Hulle oplossing is die algoritme waaroor hierdie bladsy gaan: die huidige policy laat loop, kundige-etikette vir die toestande wat dit besoek versamel, dit saam met alles wat tot dusver versamel is aggregeer, herleer, herhaal. Meer demonstrasies van dieselfde soort help nie, want hulle bemonster weer dieselfde verspreiding. Etikette op die toestande wat die policy bereik, help wel. Die variant wat hier geïmplementeer is, is human-gated (HG-DAgger, Kelly et al.): die policy behou beheer totdat 'n mens besluit dit gaan verkeerd en oorneem, sodat korreksies slegs ontstaan waar hulle nodig is, en die arm word nooit na 'n toestand gestuur wat die operateur nie sou toelaat nie.

  • Behavior cloning geld slegs vir die verspreiding van toestande waarop dit getrain is.
  • Die fout versterk homself: 'n klein afwyking lewer 'n onbekende toestand, wat 'n groter afwyking lewer.
  • Die oplossing is nie meer demonstrasies nie, dit is etikette op die toestande wat die policy self bereik.
  • Human-gated beteken die operateur besluit wanneer om in te gryp, nie 'n outonomie-telling nie.

Waarom die fout opstapel

Sleep die horison. Onder behavior cloning groei die verwagte ekstra koste ongeveer met die kwadraat van die aantal stappe, omdat elke fout toestande oplewer wat die demonstrasies nooit gedek het nie; 'n aggregasielus hou die groei naby lineêr (Ross et al., 2011).

200
1.0 %
Behavior cloning
400
DAgger
2.00
200×
Behavior cloning ÷ DAgger
0.000100200300400050100150200Verwagte ekstra koste (grens)
Taakhorison (stappe)

Illustratiewe krommes uit die grense in Ross et al. (2011), nie metings van jou robot nie. Dit gaan oor die vorm, nie oor die syfers nie.

Een DAgger-ronde, ses stappe

Dit is die lus soos die platform dit werklik laat loop, nie 'n skema nie. Elke stap hieronder stem ooreen met 'n beheerelement in die cockpit.

Deurloop die lus

Dieselfde ses stappe, een op 'n slag, met wat op die arm en in die dataset by elkeen daarvan gebeur.

01

Laat die policy loop en neem dit op

Begin 'n inferensie-lopie teen 'n checkpoint wat jy self getrain het. Die lopie word opgeneem terwyl dit gebeur, saam met die taakteks van die lopie self, sodat die frames later as trainingsdata bruikbaar is in plaas daarvan om net 'n video te wees waarna jy kan kyk.

1 van 6

Wat die platform van jou hande neem

Elke item hier is 'n stap van die lus wat jy andersins self sou moes bou en onderhou.

Oorname sonder 'n leader arm

Kies sleutelbord- of skuifknop-toevoer aan die begin van die lopie, en jy kan met net 'n skootrekenaar korrigeer. Sleutelbord-stootjies word server-kant vasgeklem tot twee grade per gewrig en vier grade op die gryper; skuifknop-teikens is absoluut, en die server beweeg per oproep hoogstens ses grade daarheen. Die klemme word deur die server afgedwing, nie deur die koppelvlak nie, sodat 'n vasgehaakte sleutel nie die arm kan laat wegskiet nie.

Teleoperasie in die docs

Intervensies per frame gemerk

Elke frame wat opgeneem word terwyl jy die arm vashou, dra 'n intervensie-vlag, en die action-kolom dra die volledige beveelde pose. Jy hou nie self 'n vlagkolom by nie en belyn dit nie later met frame-indekse nie.

LeRobot-datasetformaat

Sorteer: korreksie, evaluasie of asblik

Elke lopie kry een besluit op die stoor-kaart. Korreksielopies voed die volgende trainingsronde, evaluasielopies bly buite die training sodat hulle 'n skoon meting bly, en swak lopies verdwyn in plaas daarvan om die mengsel stilweg te vergiftig.

Sessions en episodes

Stel die mengsel eksplisiet saam

Die trainingstel vir ronde n stel jy self saam: oorspronklike dataset plus korreksies, episodes per bron gekies. Geen outomatiese vermenging nie, geen verskuilde simulasiedata nie, en die saamgestelde resultaat gedra soos enige ander dataset.

Datasets

Train verder vanaf 'n checkpoint

Rig 'n trainingslopie op die checkpoint wat jy pas bestuur het in plaas van die basismodel, sodat elke ronde begin waar die vorige geëindig het. Dit inisialiseer slegs gewigte; die optimizer-toestand word nie herstel nie, en daarom is dit die moeite werd om ronde een as 'n haalbaarheidstoets te beskou.

Training

GPU's per ronde gehuur

ACT en SmolVLA op 'n 4090, Pi0 en GR00T N1.5 of N1.7 op 'n A100 met 80 GB. Jy begin 'n ronde, die pod kom op, checkpoints beland in jou bucket, en jy betaal vir die ure wat die ronde geneem het.

GPU-pryse

Beplan jou rondes

Intervensiekoers is die vorderingsmaatstaf van die lus: korrigeerde frames gedeel deur frames van die lopie. Stel waar jy begin en hoeveel elke ronde jou oplewer, en sien hoeveel rondes dit vat om te kom waar jy wil wees.

30 %
25 %
3 000
RondeIntervensiekoersKorrigeerde frames
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

'n Model, nie 'n voorspelling nie. Werklike rondes verloop hobbelrig, en 'n ronde wat die koers nie beweeg nie, het jou niks opgelewer nie; dit is presies die sein om op te let.

Self die lus bou teenoor dit hier laat loop

Niks hiervan is met die hand onmoontlik nie. Dit is 'n vraag van hoeveel aande in infrastruktuur gaan eerder as in rondes, en daar is een ry waar dit self doen duidelik die beter antwoord is.

Stap van die lusSelf opstelOp AY-Robots
Middel-in-die-lopie oorneem'n Leader arm, of jou eie kode op die servo-bus. Sleutelbord- en skuifknop-oorname, insluitend veilige grense, is iets wat jy self skryf en dan op werklike hardeware debug.Leader arm, sleutelbord of skuifknoppies, gekies wanneer die lopie begin. Hoekklemme sit in die server.
Intervensies merkJy voeg die vlagkolom self by, hou dit belyn met die frame-indeks, en gaan dit elke keer weer na wanneer die opnameformaat verander.Elke frame wat tydens 'n oorname opgeneem word, word outomaties gemerk, met die beveelde pose in die action-kolom.
Lopies sorteerGidskonvensies en shell-skripte. Die vasgevangde raampies rondom 'n oorhandiging moet jy self opspoor en uitfiltreer.Een besluit per lopie op die stoor-kaart. Oorhandigingsraampies bly in die raw-gids.
Die gemengde dataset bouMerge-skripte per formaatweergawe. Episode-indekse, metadata en video-verwysings konsekwent kry, is die vermoeiende deel.Stel saam uit oorspronklike plus korreksies met episode-seleksie per bron; die resultaat is 'n gewone dataset.
Die volgende ronde by die laaste policy beginJy verbind die checkpoint self in die trainer, en jy kan ook die optimizer-toestand herstel as jy 'n ware hervatting wil hê.Een veld vir die basis-checkpoint. Slegs gewigte: dit inisialiseer vanaf die checkpoint, dit is nie 'n optimizer-hervatting nie.
Beheer oor die trainingslusVolledig. Jou loss, jou skedule, jou ablasies, jou instrumentasie, geen platform in die pad nie. As die navorsingsvraag die trainingslus self is, doen dit met die hand.'n Vaste pad met 'n vaste lys policies en die hiperparameters wat die vorm bied, nie arbitrêre kode nie.

Die navorsingsartikels waarop dit gebou is

Lees hierdie voordat jy oor die lus stry. Elke skakel gaan na die abstract-bladsy, nie na 'n betaalmuur nie.

  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)

    Die oorspronklike DAgger-artikel: dit stel die opstapelende-foutprobleem, gee die T-kwadraat-grens vir die gewone toesighoudende benadering, en stel voor om data uit die toestande wat die leerder self besoek, te aggregeer.

  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

    Die human-gated variant: die kundige besluit wanneer om oor te neem, in plaas daarvan om oor toestande wat die policy self gekies het ondervra te word; dit is die modus wat hierdie platform implementeer.

  3. EnsembleDAgger: A Bayesian Approach to Safe Imitation Learning

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

    Die ander manier om intervensies te reguleer: onenigheid binne 'n ensemble as 'n vertrouesein vir wanneer die leerder alleen mag optree. 'n Nuttige kontras met om 'n mens dit te laat beoordeel.

  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

    Behandel menslike aandag as die skaars hulpbron en vra slegs hulp by nuwe of riskante toestande; die regte raamwerk wanneer een persoon die hele middag oor die arm waak.

  5. DART: Noise Injection for Robust Imitation Learning

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

    Die eerlike alternatief: in plaas daarvan om die policy aanlyn te korrigeer, versteur die demonstrasies sodat die kundige herstel wys. Goed om te weet voordat jy jou op intervensies vaslê.

  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

    Die kaart van die veld: watter vorme van menslike terugvoer bestaan, watter koppelvlakke dit dra, en waar intervensie in DAgger-styl daartussen inpas.

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

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

    Die ACT-artikel. Action chunking is die rede waarom 'n goedkoop arm oorhoofs deur 'n imitasie-policy bestuur kan word, en ACT is die policy waarmee 'n DAgger-ronde die vinnigste deurloop kan word.

  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

    'n Flow-matching-VLA gebou op 'n vooraf-getrainde vision-language-model, en een van die checkpoints wat jy hier kan fine-tune; die artikel stel dit uitdruklik dat nuwe vaardighede uit fine-tuning kom, nie uit die basismodel alleen nie.

Vrae wat mense werklik vra

Het ek 'n leader arm nodig vir DAgger?

Nee. Kies sleutelbord- of skuifknop-toevoer wanneer jy die lopie begin, en die oorname is vanaf die eerste frame met die hand, bestuur vanuit die blaaier. 'n Leader arm is aangenamer vir fyn beweging, en dit is die modus waarin die arm homself belyn voordat dit oorhandig, maar die lus loop ook sonder een.

Hoeveel DAgger-rondes het ek nodig?

Daar is nie 'n eerlike vaste getal nie. Let op die intervensiekoers: as dit nie van een ronde na die volgende daal nie, het daardie ronde niks opgelewer nie, en die probleem lê gewoonlik in die taakopstelling, die kameras of die oorspronklike dataset, eerder as in die aantal rondes.

Is dit werklike DAgger of iets losers?

Dit is HG-DAgger, die human-gated variant. Klassieke DAgger ondervra die kundige oor toestande wat die policy self gekies het, insluitend toestande waarin geen verstandige operateur 'n werklike arm sou laat beland nie. Hier besluit 'n mens wanneer om in te gryp, en slegs daardie segmente word etikette.

Train ek net op die korreksies?

Nee, en dit behoort jy ook nie te doen nie. As jy net op korreksies train, kry jy 'n policy wat net weet hoe om te herstel. Die saamgestelde dataset is die oorspronklike data plus die korreksies, met die episodes van elke bron eksplisiet gekies.

Hervat Gaan voort vanaf checkpoint die trainingslopie?

Dit inisialiseer die gewigte vanaf daardie checkpoint. Die optimizer-toestand word nie herstel nie, so dit is nie in die streng sin 'n hervatting nie. In die praktyk is dit die gewigte wat die geleerde gedrag oor 'n ronde heen dra, maar dit is goed om te weet watter van die twee jy kry.

Hoe word die intervensiekoers bereken?

Frames wat as intervensie gemerk is, gedeel deur die totale frames van die lopie. Dit word in die oorname-status gewys, en dit is die een syfer wat die moeite werd is om per ronde neer te skryf, saam met die checkpoint wat jy bestuur het en die mengsel wat jy getrain het.

Met watter policies kan ek hierdie lus laat loop?

ACT, SmolVLA, Pi0, en GR00T N1.5 of N1.7. Die lus self is policy-agnosties, want dit lewer net datasets en checkpoints op; die praktiese verskil lê in hoe lank 'n ronde vat en watter GPU dit nodig het.

Kan ek dit doen sonder om 'n robot te besit?

Jy kan opneem en train sonder een deur datasets op die mark te koop of operateurs te bestel, en jy kan 'n werklike SO-100 in die blaaier op die live-bladsy bestuur. 'n DAgger-ronde is anders: dit het 'n arm nodig wat jy middel-in-die-lopie kan oorneem, so vir die lus self het jy hardeware op jou eie tafel nodig.

Drive a real arm

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

Laat jou eerste ronde vandeesweek loop

Installeer die kliënt, bestuur 'n checkpoint wat jy reeds het, en neem oor die eerste keer wat die arm verby die kubus gryp. Daardie een lopie is 'n DAgger-ronde in die klein: alles daarna is die mengsel saamstel en die GPU-ure betaal.