Human-gated DAgger, от край до край

Поемете контрола, когато policy сгреши, и тренирайте точно тази корекция.

Policy, трениран чрез behavior cloning, познава само състоянията, посетени в демонстрациите. DAgger затваря тази празнина с данни от състоянията, до които policy стига сам. AY-Robots изпълнява целия цикъл на SO-100: карайте checkpoint, поемайте контрола по средата на пробега, запазвайте коригираните епизоди, съставете сместа и продължете обучението от последния каран checkpoint.

  • HG-DAgger, с човешки контрол
  • SO-100 / SO-101
  • ACT, SmolVLA, Pi0, GR00T N1.5 / N1.7
  • Процент на интервенциите на рунд

Защо трениран policy прави нещо, което никога не е било демонстрирано

Behavior cloning третира управлението като обикновено supervised обучение: наблюдение на входа, целева позиция на ставите на изхода, напаснато върху кадрите, записани от човек. Това е валидно само докато роботът остава в състоянията, посетени от този човек, а той не остава. Захват, който се затваря четиридесет милисекунди по-рано, измества кубчето с два милиметра от демонстрираната поза. Следващото наблюдение не присъства в тренировъчния набор, действието там е екстраполация, а състоянието след него е още по-встрани. Тренировъчното разпределение и разпределението, което самата научена policy поражда, са две различни неща, и второто се отдалечава от първото с напредването на епизода.

Ross, Gordon и Bagnell описват точно този провал на редукцията през 2011 г. и остойностяват щетата: класификатор, който греши с вероятност e при разпределението на експерта, може да направи от порядъка на T на квадрат по e грешки за хоризонт от T стъпки при разпределението, което сам поражда, защото една грешка произвежда наблюдения, каквито експертът никога не е генерирал, и грешките се натрупват. Тяхното решение е алгоритъмът, за който става дума на тази страница: карай текущата policy, събирай експертни етикети за състоянията, които тя посещава, обединявай ги с всичко събрано дотук, тренирай наново, повтаряй. Повече демонстрации от същия вид не помагат, защото извличат проба от същото разпределение. Етикети от състоянията, до които policy стига, помагат. Реализираният тук вариант е с човешки контрол (human-gated, HG-DAgger, Kelly и др.): policy запазва контрола, докато човек прецени, че нещо върви накриво, и поеме управлението, така че корекции се произвеждат само там, където са нужни, а ръката никога не бива карана в състояние, което операторът не би допуснал.

  • Behavior cloning е валиден само върху разпределението от състояния, върху което е трениран.
  • Провалът се самоусилва: малко отклонение поражда непознато състояние, което поражда по-голямо отклонение.
  • Лекарството не са повече демонстрации, а етикети от състоянията, до които policy стига сам.
  • Human-gated означава, че операторът решава кога да се намеси, а не показател за автономност.

Защо грешката се натрупва

Преместете хоризонта. При behavior cloning очакваният допълнителен разход расте приблизително с квадрата на броя стъпки, защото всяка грешка поражда състояния, никога непокрити от демонстрациите; цикъл на агрегиране задържа растежа близо до линеен (Ross и др., 2011).

200
1.0 %
Behavior cloning
400
DAgger
2.00
200×
Behavior cloning ÷ DAgger
0.000100200300400050100150200Очакван допълнителен разход (граница)
Хоризонт на задачата (стъпки)

Илюстративни криви от границите в Ross и др. (2011), не измервания от вашия робот. Важна е формата, не числата.

Един DAgger рунд, шест стъпки

Така изглежда цикълът на практика на платформата, а не като схема. Всяка стъпка по-долу отговаря на елемент за управление в кокпита.

Цикълът стъпка по стъпка

Същите шест стъпки, една по една, с това, което се случва с ръката и с набора от данни при всяка от тях.

01

Карайте policy и записвайте

Стартирайте inference пробег срещу трениран от вас checkpoint. Пробегът се записва в реално време, заедно с текста на задачата на самия пробег, така че кадрите по-късно да стават годни за тренировъчни данни, а не просто видео за гледане.

1 от 6

Какво платформата поема вместо вас

Всяка точка тук е стъпка от цикъла, която иначе би трябвало сами да изградите и поддържате.

Поемане без leader ръка

Изберете вход от клавиатура или плъзгачи при старта на пробега и коригирате само с лаптоп. Стъпките от клавиатурата се ограничават от сървъра твърдо до два градуса на става и четири градуса на захвата; целите от плъзгачите са абсолютни и сървърът се придвижва към тях с най-много шест градуса на извикване. Ограничението седи в сървъра, не в интерфейса, така че заседнал клавиш не може да „хвърли" ръката.

Телеоперация в Docs

Интервенции, маркирани на кадър

Всеки кадър, записан докато държите ръката, носи маркировка за интервенция, а колоната action съдържа пълната зададена поза. Не поддържате колона с флагове на ръка и не я подравнявате после спрямо индексите на кадрите.

Форматът на LeRobot набора от данни

Сортиране: корекция, оценка или кошче

Всеки пробег получава едно решение на картата за запис. Корекционните пробеги захранват следващия тренировъчен рунд, оценъчните пробеги остават извън обучението и така остават чисто измерване, а неуспешните пробеги изчезват, вместо тихо да развалят сместа.

Sessions и епизоди

Съставете сместа изрично

Тренировъчния набор за рунд n съставяте вие: оригинален набор плюс корекции, епизоди, избрани по източник. Без автоматично примесване, без скрити симулационни данни, а съставеният резултат се държи като всеки друг набор от данни.

Набори от данни

Продължете от checkpoint

Насочете тренировъчния пробег към checkpoint-а, който току-що карахте, вместо към базовия модел, така всеки рунд започва там, където е приключил предишният. Инициализират се само теглата, състоянието на optimizer-а не се възстановява, затова първия рунд е добре да се третира като тест за приложимост.

Обучение

GPU под наем на рунд

ACT и SmolVLA на 4090, Pi0 и GR00T N1.5 или N1.7 на A100 с 80 GB. Стартирате рунд, pod-ът се вдига, checkpoint-ите кацат в bucket-а ви, а плащате за часовете, които рундът е отнел.

Цени на GPU

Планирайте рундовете си

Процентът на интервенциите е метриката за напредък на цикъла: коригирани кадри, разделени на кадрите на пробега. Задайте начална стойност и подобрение на рунд и вижте колко рунда са нужни, за да стигнете целта.

30 %
25 %
3 000
РундПроцент на интервенциитеКоригирани кадри
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

Модел, не прогноза. Реалните рундове са неравномерни, а рунд, който не помръдва процента, не е донесъл нищо; точно това си струва да следите.

Изграждане на цикъла сами срещу изпълнението му тук

Нищо от това не е невъзможно на ръка. Въпросът е колко вечери отиват в инфраструктура вместо в рундове, и има един ред, в който собствената работа е ясно по-добрият отговор.

Стъпка от цикълаИзграждане на ръкаНа AY-Robots
Поемане по средата на пробегаLeader ръка или собствен код на servo bus-а. Поемане с клавиатура и плъзгачи, включително безопасни граници, пишете и дебъгвате сами на истински хардуер.Leader ръка, клавиатура или плъзгачи, избрани при старта на пробега. Ограниченията на ъглите седят в сървъра.
Маркиране на интервенцииДобавяте колоната с флагове, поддържате я подравнена спрямо индекса на кадъра и я проверявате отново при всяка промяна на формата за запис.Всеки кадър, записан по време на поемане, се маркира автоматично, със зададената поза в колоната action.
Сортиране на пробегитеКонвенции за директории и shell скриптове. Замръзналите кадри около предаването сами трябва да намерите и отсеете.Едно решение на пробег на картата за запис. Кадрите от предаването остават в raw директорията.
Изграждане на смесения набор от данниMerge скриптове за всяка версия на формата. Поддържането на индексите на епизодите, метаданните и видео връзките в синхрон е досадната част.Съставяне от оригинал плюс корекции с избор на епизоди по източник; резултатът е обикновен набор от данни.
Започване на следващия рунд от последната policyСами включвате checkpoint-а в trainer-а и по желание можете да възстановите и състоянието на optimizer-а, тоест истинско продължаване.Едно поле за базовия checkpoint. Само тегла: инициализира от checkpoint-а, не е optimizer resume.
Контрол над тренировъчния цикълПълен. Собствен loss, собствен график, собствени аблации, собствена инструментация, без платформа по средата. Ако изследователският въпрос е самият тренировъчен цикъл, направете го на ръка.Фиксиран път с определен списък от policies и хиперпараметрите, които формата излага, не произволен код.

Изследванията, върху които стъпва това

Прочетете ги, преди да спорите за цикъла. Всеки линк води към страницата с abstract, не зад платена стена.

  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)

    Оригиналната работа за DAgger: формулира проблема с натрупването на грешки, дава T-на-квадрат границата за чисто supervised подхода и предлага агрегиране на данни от състоянията, посетени от самия обучаван модел.

  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

    Вариантът с човешки контрол: експертът решава кога да поеме контрола, вместо да бъде питан за състояния, избрани от policy; точно този режим е реализиран тук.

  3. EnsembleDAgger: A Bayesian Approach to Safe Imitation Learning

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

    Другият начин да се управляват интервенциите: несъгласие в ансамбъла като сигнал за увереност кога обучаваният модел може да действа сам. Поучителен контраст спрямо оставянето на решението на човек.

  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

    Третира човешкото внимание като оскъден ресурс и пита за помощ само при нови или рискови състояния; правилната рамка, когато един човек наблюдава ръката цял следобед.

  5. DART: Noise Injection for Robust Imitation Learning

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

    Честната алтернатива: вместо да коригирате policy онлайн, разбъркайте демонстрациите, така че експертът да покаже възстановяване. Полезно е да се знае, преди да се обвържете с интервенции.

  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

    Картата на областта: какви форми на човешка обратна връзка съществуват, през какви интерфейси преминават и къде сред тях стои интервенцията от типа на DAgger.

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

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

    Работата за ACT. Action chunking е причината евтина ръка изобщо да може да се кара от policy за имитационно обучение, а ACT е policy-то, с което 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, базиран на flow matching и предварително трениран vision-language модел, тук достъпен като checkpoint за fine-tuning; работата изрично посочва, че новите умения идват от fine-tuning-а, а не само от базовия модел.

Въпроси, които хората наистина задават

Нужна ли ми е leader ръка за DAgger?

Не. Изберете вход от клавиатура или плъзгачи при старта на пробега и поемането е ръчно от първия кадър, управлявано от браузъра. Leader ръка е по-приятна за фини движения и е единственият режим, в който ръката сама се подравнява преди предаването; цикълът обаче работи и без нея.

Колко DAgger рунда са ми нужни?

Честно фиксирано число няма. Следете процента на интервенциите: ако той не спада от рунд на рунд, рундът не е донесъл нищо, а причината обикновено е в устройството на задачата, в камерите или в оригиналния набор от данни, а не в броя рундове.

Това истинско DAgger ли е, или нещо по-хлабаво?

Това е HG-DAgger, вариантът с човешки контрол. Класическото DAgger пита експерта за състояния, избрани от policy, включително състояния, в които никой разумен оператор не би пуснал истинска ръка. Тук човек решава кога да се намеси, и само тези сегменти стават етикети.

Тренирам ли само върху корекциите?

Не, и не бива. Обучение само върху корекции дава policy, което умее единствено да се възстановява. Съставеният набор от данни е оригиналните данни плюс корекциите, с изрично избрани епизоди от всеки източник.

Продължаването от checkpoint възобновява ли тренировъчния пробег?

То инициализира теглата от този checkpoint. Състоянието на optimizer-а не се възстановява, така че в строг смисъл не е възобновяване. На практика теглата пренасят наученото поведение през рунда, но е добре да знаете кое от двете получавате.

Как се изчислява процентът на интервенциите?

Кадрите, маркирани като интервенция, разделени на общия брой кадри на пробега. Показва се в статуса на поемането и е числото, което си струва да се записва за всеки рунд, заедно с карания checkpoint и тренираната смес.

С кои policies работи този цикъл?

ACT, SmolVLA, Pi0, както и GR00T N1.5 или N1.7. Самият цикъл е независим от policy-то, защото произвежда само набори от данни и checkpoint-и; практическата разлика е в продължителността на рунда и нужния GPU.

Може ли без собствен робот?

Записване и обучение са възможни и без него: чрез закупени набори от данни на пазара или чрез поръчани оператори, а истинска SO-100 можете да карате в браузъра на live страницата. DAgger рундът е различен, той изисква ръка, която можете да поемете по средата на пробега. За самия цикъл значи трябва хардуер на собственото бюро.

Drive a real arm

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

Изпълнете първия си рунд тази седмица

Инсталирайте клиента, карайте вече наличен checkpoint и поемете контрола първия път, когато ръката пропусне кубчето. Този единствен пробег е DAgger рунд в миниатюра; всичко след него е съставяне на сместа и плащане на GPU часовете.