
Een stap-voor-stap verslag van één menselijk-gated DAgger-ronde op een SO-100 arm: voer het beleid uit en neem het op, neem over wanneer het fout gaat, dien de run in als correctie, stel een gemengde dataset samen en ga verder met trainen vanuit een checkpoint. Inclusief het keyboard- en schuifregelaartakeover-pad voor mensen zonder leidarme, en de vier fouten die een ronde waardeloos maken.
Je beleid werkt. Het reikt naar de kubus, sluit de grijper een centimeter te vroeg, en gaat verder alsof het hem heeft. Niets geeft een fout, en geen hoeveelheid naar het trainingsgedrag staren verklaart het. De oplossing is niet nog 20 000 gradiëntstappen op dezelfde demonstraties. Het is je hand precies daar terug op de arm zetten waar het fout gaat, opnemen wat je in plaats daarvan deed, en de volgende checkpoint trainen op de oude gegevens plus die correctie. Dat is een DAgger-ronde, en dit is hoe men er een uitvoert op een SO-100 met een vision-language-action beleid.
De theorie staat elders: waarom dataset-aggregatie überhaupt werkt en wat menselijk gating erover verandert. Dit is de bedieningshandleiding, en het gaat ervan uit dat je een getrainde checkpoint hebt, een werkende cameraverzameling, en een arm die beweegt. De zes stappen hieronder zijn de lus zoals geïmplementeerd op de DAgger-pagina van dit platform, maar de volgorde is dezelfde vanuit je eigen scripts.
Één ronde in het kort
- •Voer het getrainde beleid uit en neem het op, met de taaktekst van de run in plaats van een generiek teleopersatie-label.
- •Neem over op het moment dat het gedrag fout gaat: een spiegelhandover met een leidarme, onmiddellijk en handmatig via keyboard of schuifregelaars zonder een.
- •Sorteer elke run: dien het in als correctie, behoud het als evaluatie-episode, of verwijder het.
- •Stel de mix handmatig samen - originele demonstraties plus correcties, episodes gekozen per bron. Train nooit alleen op correcties.
- •Ga verder met trainen vanuit de laatste checkpoint, en noteer welke checkpoint welke mix produceerde.
- •Het getal dat aangeeft of de ronde iets waard was is de interventiefrequentie, niet het trainingsgedrag.
Waarom de tweede ronde niet zomaar meer gegevens is
Behavior cloning traint op de staten die een mens heeft bezocht. Bij testuitvoering bezoekt het beleid de staten die het veroorzaakt, en kleine actiefouten samenstellen in staten die geen demonstratie heeft bestreken. Ross, Gordon en Bagnell formaliseerden die mislukking voor AISTATS 2011 en beantwoordden deze met een iteratief algoritme dat een stationaire deterministische policy traint en, onder hun reductie, goed moet presteren onder de toestandverdeling die het induceert: voer het huidige beleid uit, laat de expert de staten labelen die het werkelijk heeft bereikt, voeg die toe aan de dataset, train opnieuw, herhaal. Kelly et al. maakten de query praktisch met HG-DAgger, waarbij de mens besluit wanneer controle over te nemen in plaats van staten te labelen zonder de controles vast te houden; zij melden verbeterde prestaties ten opzichte van zowel DAgger als behavior cloning op een gesimuleerde en een echte autonome rijdtaak. Menselijk gating is wat de lus draagbaar maakt op een bureauarm - je beweegt je handen alleen wanneer iets fout gaat.
Twee gevolgen zijn praktischer dan de theorie. Correcties zijn geen gewone demonstraties: zij concentreren zich op de knelpuntstrejonen die Mandlekar et al. beschrijven, waar een kleine afwijking het beleid in staten stuwt die de demonstraties nooit hebben bestreken. En een dataset die alleen uit die moeilijke onderdelen bestaat, is een slecht gevormde dataset - Belkhale, Cui en Sadigh betogen vanuit de gegevenszijde dat toestandsdiversiteit niet altijd voordelig is, en dat actiedivergentie en overgangsdiversiteit samen datasetskwaliteit bepalen. De gemengde dataset is geen compromis, het is het doel.
Vriezen deze in voor ronde een
Een DAgger-ronde vergelijkt een beleid met zichzelf in de loop der tijd. Alles wat je tussen rondes verandert dat niet de dataset is, maakt die vergelijking zinloos.
- Camerapositie en bevestigingen, polsamera inbegrepen. Ontgrendel één klem en je hebt de observatieverdeling veranderd, niet het beleid.
- Belichting en witbalans, als je capturestack het je toestaat deze vast te zetten. Auto-exposure die tussen rondes wegdrijft is een langzame, onzichtbare domeinverschuiving.
- Armkalibratie en servo-nulposities. Als je opnieuw moet kalibreren, behandel alles wat voor het is opgenomen als een aparte dataset.
- De taaktekst. Elke VLA hier werkt eraan mee; het herformuleren ervan mid-loop is een ander karwei.
- Verlichting, tafeloppervlak, objectset. Een nieuw object is een nieuw experiment, niet de volgende ronde.
- De recording framerate. Het vergelijken van interventiefrequenties in twee bemonsterrasters produceert verschillen die uit het raster komen.
Hsu et al. vergeleken een handmatig-centrische weergave met de gebruikelijke third-person-weergave en vonden dat het eye-in-hand perspectief consistent trainingsefficiëntie en out-of-distributionalisatie verbeterde, ondanks minder van het tafereel te zien. Op een vijf-gewricht arm is gripertiming meestal wat je correcties repareren, en gripertiming is wat de polsweergave vervoert.
De ronde, van begin tot eind
- 1Voer inferentie uit en neem het op
Start de run tegen de checkpoint die je wilt verbeteren, start vervolgens de recording in de inferentie root. Opgenomen op die manier erft het de eigen taaktekst van de run, wat het beleid werd getraind, in plaats van het standaard teleopersatie-label. Zonder de recording kun je de mislukking bekijken maar niet trainen.
bash# two calls, not one: the run, then its recording POST /inference/start # model_id, and hf_repo_id = the checkpoint to drive POST /recording/start # root=inference # root=inference also makes the recording inherit the run's task text - 2Neem over wanneer het fout gaat
Druk op Takeover en kies de invoermodus: leidarme, keyboard of schuifregelaars. De runner pauzeer, je corrigeert, je geeft terug. Frames die opgenomen zijn terwijl je reed, zijn automatisch gemarkeerd als interventies.
bashPOST /inference/takeover/start # input = leader | keyboard | sliders POST /inference/takeover/nudge # keyboard, relative delta per call POST /inference/takeover/set # sliders, absolute target POST /inference/takeover/stop # back to the policy - 3Sorteer de episodes
Beslis per episode: dien in als correctie, behoud als evaluatie, of verwijder. Een run die het beleid zonder hulp heeft voltooid, is evaluatiedata.
- 4Synchroniseer de correctiedataset
Correcties verzamelen zich in een lokale dataset per beleid en gaan naar cloudbewaring via de automatische synchronisatie. Niets wordt gemixt dat je daar niet hebt geplaatst.
- 5Stel de gemengde dataset samen
Combineer de originele dataset met de correctiedataset, en kies episodes expliciet per bron. Het resultaat is vanaf dat moment een normale dataset.
bashPOST /training/datasets/compose sources = [ original_dataset, korrekturen_<policy> ] episodes = explicit selection per source - 6Ga verder met trainen vanuit de checkpoint
Train de mix vanuit de vorige checkpoint in plaats van het basismodel. Noteer welke checkpoint en welke mix; zonder dat paar is de ronde niet reproduceerbaar.
bash# field on the training job base_checkpoint = s3://ay-robots/checkpoints/<run>/<checkpoint> # the platform passes it to the training pod as BASE_CKPT_S3
Stap 2 in detail: de twee manieren om over te nemen
Met een leidarme
In leader-follower modus is de handover een handover tussen twee armen die zich niet in dezelfde pose bevinden. Als je Takeover indrukt, pauzeer je de runner en stuur je de leidarme naar de huidige pose van de follower, zodat niets springt wanneer koppel overbrengt. Als dat uitlijningsdrijf een time-out heeft, lijn je de leidarme handmatig uit en laat je los zodra de twee binnen vijf graden van elkaar liggen. Van daar af teleopereer je normaal en de actiekolom registreert wat je commande.
Wees eerlijk over dit pad: het uitlijningsdrijf en de koppelhandover zijn het minst geteste onderdeel van de lus op echte hardware. Test de handover op een langzame, onschadelijke pose voordat je er op een run waarop je geeft, op vertrouwt. Een leidarme produceert de vloeiendste correcties van de drie modi, en heeft ook het meest dat mechanisch fout kan gaan.
Zonder een leidarme: keyboard en schuifregelaars
De meeste mensen die dit lezen bezitten één arm. Dat is genoeg. Kies keyboard- of slider-invoer op het moment dat je Takeover indrukt, en de handover is onmiddellijk en handmatig - er is geen tweede arm om uit te lijnen, dus er is geen uitlijningsstap. De follower houdt zijn pose en wacht op invoer.
| Invoermodus | Hoe de arm beweegt | Per-call limiet afgedwongen door de server | Vergrendeld wanneer |
|---|---|---|---|
| Leidarme | De spiegeling drijft de follower aan vanuit de gewrichthoeken van de leidarme | Geen nudge- of setaanroepen in deze modus; de spiegeling schrijft follower-doelen continu | Nooit vergrendeld, en de standaardinstelling als geen invoermodus is gegeven - maar het heeft een tweede arm nodig; zonder leid-id wordt de handover geweigerd |
| Toetsenbord | Relatieve nudge per toetsaanslag, verzonden naar het handover-nudge-eindpunt | Harde klem op 2 graden per gewricht, 4 graden voor de grijper | Afgewezen met 409 als de handover in leader-modus is gestart |
| Schuifregelaars | Absolute doelpose, verzonden naar het handover-set-eindpunt | Maximaal 6 graden reizen naar het doel per aanroep; de interface houdt ongeveer tien keer per seconde verzenden | Afgewezen met 409 als de handover in leader-modus is gestart |
De klemmen worden serverside afgedwongen, niet in de interface, omdat een onjuiste delta op een busspanning-servrobot een botsing is. Toetsenbordherstel komt stap voor stap en enigszins grof uit; slider-correcties zijn vloeiender, omdat de server naar het doel gaat terwijl de interface blijft streamen. Hoe het ook zij, de actiekolom ontvangt de volledige opgestelde posevektor en de interventiemarking is identiek aan het leiderpad, dus toetsenbordherstel landt in dezelfde dataset zonder formaatverschi.
Q / A joint 1 R / F joint 4
W / S joint 2 T / G joint 5
E / D joint 3 Z / X gripper
Wanneer op de knop drukken
Eerder in plaats van later. Een correctie die begint nadat de grijper op niets is gesloten, leert herstel van een mislukking die het beleid niet had moeten binnengaan, en herstelgegevens zijn veel minder waard dan vermijdingsgegevens. Onderbreek op het eerste moment dat je zeker bent dat het traject fout is, corrigeer het moeilijke gedeelte, geef het terug zodra de toestand er een is die het beleid eerder heeft afgehandeld. ThriftyDAgger automatiseert die beslissing door interventies in te passen op basis van nieuwheid en geschatte risico onder een vaste menselijk budget, maar op een enkele arm met een mens die al kijkt, is de menselijk gate goedkoper en beter gekalibreerd dan alles wat je zult instellen.
Haalbaar met de open-source stapel en enkele scripts. Wat het kost is boekhouding, en boekhouding is waar DAgger-rondes sterven.
- Schrijf frames van uw eigen gevolgtrekkingsscript naar een LeRobot-dataset, met de taakstring waarop het beleid werd getraind.
- Pauzeer de beleidslus, wissel de opdrachtbron om, en markeer elk frame dat je uitvoert als een interventie. Zonder de vlag zien correcties er als normale demonstraties uit.
- Beslis opzettelijk wat er gebeurt met de overgangsframes tussen het beleid dat controle vrijgeeft en je eerste invoer.
- Houd correcties in hun eigen dataset per beleid, en volg episodeindexen handmatig zodat de mix kan worden gereconstrueerd.
- Wijs het fine-tuning-ingangspunt naar de vorige checkpoint, en controleer in het logboek dat het die gewichten heeft geladen.
Dezelfde zes stappen bestaan als knoppen. Wat is geautomatiseerd is wat gemakkelijk fout kan gaan met de hand: de per-frame-interventiemarkerig, de splitsing tussen correcties en evaluaties, en het record van welke checkpoint welke mix produceerde. Niets voert een samengestelde dataset in die je niet hebt geselecteerd.
Het beslist niet voor je. Welke run telt als correctie, welke episodes gaan in de mix, en wanneer de interventiefrequentie is gestopt met dalen, blijven beoordelingskwesties. De velden worden gedocumenteerd onder training, de invoermodi onder teleoperatie.
Stap 3 in detail: triage bepaalt de kwaliteit
Na de run heb je een opname met enkele frames gemarkeerd als interventies. Drie bestemmingen bestaan, en de verkeerde bepoezelt stilzwijgend de volgende ronde.
- Dien in als correctie wanneer de interventie een echte fix was: het beleid ging ergens verkeerd heen en je invoer toonde het juiste uit een toestand die het beleid zelf produceerde.
- Behoud als evaluatie voor schone autonome runs en voor runs die je uit voorzorg hebt overgenomen. Evaluatie-episodes zijn hoe je de volgende checkpoint meet, en ze mogen nooit worden getraind.
- Verwijder runs verpest door iets dat er niet mee te maken heeft - een gevallen camerakader, een vastgelopen servo, een object dat je hebt omvergeworpen. Een rommelcorrectie is erger dan geen correctie.
Tussen het beleid dat controle vrijgeeft en je eerste invoer, houdt de arm stil terwijl de recorder blijft schrijven - een reeks identieke poses gekoppeld aan enigszins verschillende afbeeldingen. Hier blijven die handoverframes in de ruwe opname en uit de correctiedataset. Als je de lus zelf bouwt, snij je ze opzettelijk: een beleid dat op hen is getraind, leert pauseren waar het moet handelen.
Stap 5 in detail: de mix samenstellen
Compositie neemt de originele dataset plus de correctiedataset en produceert een nieuwe, normale LeRobot dataset die treint als elke ander. De belangrijke eigenschap is dat de episodeselectie expliciet per bron is - niets wordt automatisch vermengd. Dat klinkt klein totdat de eerste keer dat een beleid zich vreemd gedraagt en je moet reconstrueren waarmee het werd getraind.
De open vraag is de verhouding, en niemand heeft een getal dat draagt. Wat de literatuur inderdaad eens is, is dat correcties meer moeten tellen dan hun frameshare. Mandlekar et al. trainen iteratief op de gegevens die hun interventiessysteem verzamelt, zodat het beleid leert de knelpunten te doorkruisen, en melden dat agenten die op die manier worden getraind, agenten overtreffen die worden getraind op een gelijkwaardig aantal steekproeven van non-interventiële demonstratoren. Sirius gaat nog verder en herweegt trainingssteekproeven door benaderde menselijk vertrouwen, meldend een winst van 8 procent in simulatie en 27 procent op echte hardware in beleidssucces tegen de methoden waarmee het vergelijkt, op tweemaal de convergentiesnelheid. Geen van de trainings ingangspunten hier stellen een steekproefgewicht-knop bloot, dus het grove substituut is om elke correctie-episode te behouden terwijl je de originele demonstraties subsamples - en om op te schrijven wat je hebt gedaan.

Stap 6 in detail: wat voortduren vanuit een checkpoint echt betekent
Training de mix van het basismodel werkt maar gooit de vorige ronde weg en kost een volledige run. Voortduren van de vorige checkpoint is sneller en meestal beter. Het is ook meer beperkt dan de zin suggereert.
Een checkpoint met alleen gewichten bevat de parameters en niets anders. Het laden ervan geeft de volgende run een beter beginpunt dan het basismodel, maar optimisator momenten, leersnelheid-schemapositie en gegevensorde beginnen allemaal vanaf nul. Verwacht een verliesstijging aan het begin van de voortgezette run, lees het niet als een mislukking, en noem de ronde niet een hervatting. Het is een warme start.
| Beleid | Grootte | GPU-laag | Gevolgtrekking per actiestap | Gegevensvorm | Episodes voordat het de moeite waard is te proberen |
|---|---|---|---|---|---|
| GR00T N1.7 | ongeveer 3 B, ongeveer 40 M getraind tijdens fine-tuning | A100 80 GB of H100 80 GB | ongeveer 152 ms | LeRobot v2.0 of v2.1 | 50 |
| GR00T N1.5 | ongeveer 3 B | A100 80 GB of H100 80 GB | ongeveer 165 ms | LeRobot v2.0 of v2.1 | 50 |
| Pi0.5 | ongeveer 3 B op een PaliGemma-ruggengraat | A100 80 GB of H100 80 GB | ongeveer 485 ms | LeRobot v3.0 | 50 |
| SmolVLA | ongeveer 450 M | RTX 4090 of elke 24 GB kaart | ongeveer 245 ms | LeRobot v3.0 | 30 |
| ACT | ongeveer 80 M, getraind van nul | RTX 4090 of elke 24 GB kaart | ongeveer 20 ms | LeRobot v3.0 | 50 |
Latentie stapelt zich in een DAgger-lus op een manier die het niet doet tijdens een demo: op ruwweg 485 ms per actiestap neem je over omdat de arm aarzelde, niet omdat het fout was, en aarzeling-correcties zijn geen bruikbare trainingsgegevens. Als je herhaalt met gegevens in plaats van een eindslag, itereer op een snel model. Shukor et al. beschrijven SmolVLA als ontworpen om op een enkele GPU te trainen en op consument-GPU's of CPU's in te zetten, met een asynchrone gevolgtrekking-stapel die actievoorspelling van uitvoering ontcoppelt om hogere besturingssnelheden toe te staan - de eigenschap die een takeover-lus responsief houdt.
De gegevensformaten zijn ook niet uitwisselbaar. GR00T neemt LeRobot v2.0 of v2.1, en de Isaac-GR00T-bibliotheek beschrijft zijn invoer als een smaak van het LeRobot v2-formaat met een toegevoegd modaliteitsbeschrijvingsbestand; de nieuwere trainers hier verwachten v3.0. Een mix samengesteld in de verkeerde versie mislukt bij het laden in plaats van een slecht beleid te produceren - de betere mislukking wijze, nog steeds een verspilde wachtrij-plaats. De gegevensdocumentatie geeft een overzicht van welk formaat elke trainer nodig heeft.
De lus, met de boekhouding al klaar
Handover met een leidarme, keyboard of schuifregelaars; per-frame interventiemarkerig; runs indienen als correcties of evaluaties; een gemengde dataset samenstellen met een expliciete episodeselectie per bron; en voortduren trainen vanuit een checkpoint in plaats van het basismodel. Wat je beslissing blijft is welke run telt als correctie, wat gaat in de mix, en wanneer de interventiefrequentie is gestopt met dalen.
Zie hoe de DAgger-lus is bedraadVier manieren om een ronde te verspillen
1. Training alleen op de correcties
De meest voorkomende mislukking en het meest verleidelijke shortcut. Een alleen-correctie-dataset is bijna geheel het moeilijke midden van de taak, met benadering en terugtrekking ontbrekend; het beleid wordt beter in het lastige onderdeel en vergeet hoe je daar komt. Aggregatie is niet een implementatiedeeltail van de methode, het is het mechanisme: de oude gegevens zijn wat de rest van het gedrag op zijn plaats houdt terwijl de correcties een deel ervan verplaatsen.
2. Een camera tussen rondes verplaatsen
Een camera die twee centimeter tussen rondes verschuift produceert een beleid erger dan waar je mee begon, en een diagnose die een dag kost. Elke VLA hier werkt met afbeeldingen mee; gewrichtbeschrijving alleen onderscheidt niet waar het object is. Fotografeer de opstelling voor de eerste ronde en controleer dat fotorapport voor elke latere.
3. Handover-artefacten in training laten
Hierboven behandeld, en op de lijst omdat het onzichtbaar is. Het symptoom is een beleid dat precies waar de vorige operator van de vorige ronde overnam, een fractie van een seconde stilhoud. Het ziet er als aarzeling uit; het is imitatie.
4. Een warme start een hervatting noemen
Als je gelooft dat optimiseertoestand meekwam, leest de initiële verliesstijging als een bug en ga je jagen op corrupte gegevens. Als je weet dat de optimisator vers begon, is de piek verwacht en kijk je naar wat erop volgt. Dezelfde getallen, tegengestelde conclusies.
De ronde meten
De metriek voor een menselijk-gated lus is de interventiefrequentie: frames opgenomen terwijl je in controle was, gedeeld door totale frames van de run. Het staat in de handover-status, en het is het enige getal dat de vraag beantwoordt die de ronde heeft gesteld. Trainingsgedrag daalt of het beleid verbeterd is of niet; succes-percentage is binair en luidruchtig bij de steekproefgroottes die een bureauram produceert. Interventiefrequentie is continu, gemeten op de toestanden die het beleid zelf veroorzaakte, en daalt naarmate het beleid je minder nodig heeft.
Vergelijk het alleen over runs opgenomen onder identieke voorwaarden. Het volledige argument, en hoe je een evaluatieset bouwt die meer dan twee rondes overleeft, staat in het artikel over het meten van een DAgger-lus. Ronde één is realistisch gezien een haalbaarheidstest: je controleert dat de handover op je hardware werkt, dat correcties met hun markeringen landen, en dat de voortgezette run de checkpoint laadt die je hebt genoemd. Rondes twee en drie zijn waar het tarief zou moeten beginnen te bewegen. Als het tegen ronde vier niet is verplaatst, ligt het probleem stroomopwaarts van DAgger.
| Schrijf per ronde op | Waarom het later belangrijk is |
|---|---|
| Checkpoint die werd gereden | Zonder het kun je een verbetering niet aan een mix toeschrijven |
| Gebruikte invoermodus voor de handover | Toetsenbordherstel is grover dan leiderherstel, en het toont zich in de gegevens |
| Aantal runs en hoe elk werd gesorteerd | Of de ronde voldoende correcties had om uit te maken |
| Interventiefrequentie per run, en het gemiddelde | De voortgangsmaatstaf van de lus |
| Exacte episodeselectie per bron | De enige manier om een ronde te reproduceren of ongedaan te maken |
| Warme start of vers trainen | Verklaart de verliedcurve die je over een week gaat bekijken |
Als je nog geen checkpoint hebt
De lus heeft geen ingang zonder er één. Neem een eerste dataset op, train een eerste beleid, voer het uit - recording, training en het beleid uitvoeren dekt dat pad. De recordingclient staat op de downloadpagina, GPU-lagen en uurlijkse tarieven op de prijzenpagina, en wat een bruikbare episode eruit ziet in de SO-100 gegevensverzamelingsgids. Zorg dat de demonstraties goed zijn voordat de correcties: DAgger is een reparatiemechanisme, en het werkt veel beter op iets dat al bijna goed was.
Kan ik een DAgger-lus zonder een leidarme uitvoeren?▾
Ja. Kies keyboard- of slider-invoer wanneer je Takeover indrukt: de handover is onmiddellijk en handmatig, zonder tweede arm om uit te lijnen. Toetsenbord stuurt relatieve nudges die de server hard kleeft op 2 graden per gewricht en 4 voor de grijper; schuifregelaars sturen een absoluut doel en de server beweegt maximaal 6 graden ernaar toe per aanroep, terwijl de interface blijft streamen. Actiekolom en interventiemarking zijn hetzelfde als in leader-modus, dus de correcties zijn niet te onderscheiden in de dataset.
Hoeveel correcties heeft één ronde nodig?▾
Er is geen verdedigbaar universeel getal, en frametal is meer van belang dan episodetal. De werkingsregel is dat de correcties niet in de mix verloren mogen gaan: met 200 originele episodes en drie correctie-episodes gaat niets bewegen. Streef naar correcties die het falende gedrag van verschillende beginningsconfigs bestrijken in plaats van drie repetities van dezelfde redding.
Waarom is training alleen op correcties zo'n slecht idee?▾
Omdat correcties bijna geheel het lastige middel van de taak zijn. Benadering, uitlijning en terugtrekking ontbreken, dus het beleid verliest wat het al goed deed terwijl het verbetert in het deel dat je hebt gerepareerd. Het behouden van de oude gegevens en eraan toevoegen is het mechanisme zelf, niet een optioneel extra.
Hervatten voortduren vanuit een checkpoint het vorige trainingsronde?▾
Nee. Een checkpoint met alleen gewichten herstelt parameters en niets anders: optimiseermomenten, leersnelheid-schemapositie en gegevensorde beginnen vers. Het is een warme start, en een initiële verliesstijging is verwacht in plaats van een symptoom. Schrijf op welk van de twee je werkelijk hebt gedaan, dus je leest de curve correct een week later.
Wat als de interventiefrequentie niet daalt?▾
Stop met rondes toevoegen. Een vlak tarief betekent dat de correcties niet leren wat je denkt. De gebruikelijke oorzaken zijn stroomopwaarts: een camera verplaatst, de correcties beginnen te laat om vermijdingsgegevens te zijn, handoverframes zitten in de trainingsset, of de taak is onderbepald vanuit de observaties die het beleid werkelijk krijgt.
Geen van dit is een opgelost probleem en geen van dit is één klik. Interactief imitatief leren is een actief onderzoeksgebied precies omdat zijn vragen - wanneer interveniëren, hoe weeg wat de mens deed, hoeveel oude gegevens houden - geen vastgestelde antwoorden hebben; de enquête van Celemin et al. brengt in kaart wat nog open is. Wat de lus wel heeft, is meetbare convergentie wanneer het voorzichtig wordt uitgevoerd, op hardware die een paar honderd euro kost. Bevries de opstelling, intervenieer vroeg, sorteer eerlijk, meng opzettelijk, en registreer de interventiefrequentie elke keer.
Sources
- Ross, Gordon, Bagnell (AISTATS 2011): A Reduction of Imitation Learning and Structured Prediction to No-Regret Online Learning
- Kelly, Sidrane, Driggs-Campbell, Kochenderfer (2019): HG-DAgger - Interactive Imitation Learning with Human Experts
- Mandlekar et al. (2020): Human-in-the-Loop Imitation Learning using Remote Teleoperation
- Liu, Nasiriany, Zhang, Bao, Zhu (2022): Robot Learning on the Job - Human-in-the-Loop Autonomy and Learning During Deployment (Sirius)
- Hoque et al. (2021): ThriftyDAgger - Budget-Aware Novelty and Risk Gating for Interactive Imitation Learning
- Celemin et al. (2022): Interactive Imitation Learning in Robotics - A Survey
- Belkhale, Cui, Sadigh (2023): Data Quality in Imitation Learning
- Hsu et al. (2022): Vision-Based Manipulators Need to Also See from Their Hands
- Zhao et al. (2023): Learning Fine-Grained Bimanual Manipulation with Low-Cost Hardware (ACT / ALOHA)
- Black et al. (2024): Pi0 - A Vision-Language-Action Flow Model for General Robot Control
- Bjorck et al. (2025): GR00T N1 - An Open Foundation Model for Generalist Humanoid Robots
- Shukor et al. (2025): SmolVLA - A Vision-Language-Action Model for Affordable and Efficient Robotics
- LeRobot documentation (Hugging Face)
- NVIDIA Isaac-GR00T repository
Ready for high-quality robotics data?
AY-Robots connects your robots to skilled operators worldwide.
Get Started