Human-gated DAgger, de principio a fin

Toma el control cuando la política se equivoca, y entrena exactamente esa corrección.

Una política entrenada mediante behavior cloning solo conoce los estados que visitaron tus demostraciones. DAgger cierra esa brecha con datos de los estados que la propia política alcanza. AY-Robots ejecuta el bucle completo en un SO-100: conducir un checkpoint, tomar el control a mitad de la ejecución, conservar los episodios corregidos, componer la mezcla y continuar el entrenamiento desde el checkpoint que acabas de conducir.

  • HG-DAgger, human-gated
  • SO-100 / SO-101
  • ACT, SmolVLA, Pi0, GR00T N1.5 / N1.7
  • Tasa de intervención por ronda

Por qué una política entrenada hace algo que nunca se demostró

Behavior cloning trata el control como aprendizaje supervisado ordinario: entra una observación, sale un objetivo articular, ajustado a los fotogramas que grabó un humano. Eso solo es válido mientras el robot permanezca en los estados que ese humano visitó, y no permanece. Un gripper que cierra cuarenta milisegundos antes de tiempo desplaza el cubo dos milímetros fuera de la pose demostrada. La siguiente observación es una que el conjunto de entrenamiento no contiene, así que la acción allí es una extrapolación, y el estado siguiente queda aún más alejado. La distribución de entrenamiento y la distribución que la política aprendida realmente induce son dos cosas distintas, y la segunda se aleja de la primera a medida que avanza el episodio.

Ross, Gordon y Bagnell describieron exactamente este fallo de reducción en 2011 y cuantificaron el daño: un clasificador que se equivoca con probabilidad e bajo la distribución del experto puede cometer del orden de T al cuadrado por e errores a lo largo de un horizonte de T pasos bajo la distribución que él mismo induce, porque un error produce observaciones que el experto nunca generó y los errores se acumulan. Su solución es el algoritmo del que trata esta página. Ejecutar la política actual, recoger etiquetas del experto para los estados que visita, agregarlas a todo lo recogido hasta el momento, reentrenar, repetir. Más demostraciones del mismo tipo no ayudan, porque vuelven a muestrear la misma distribución. Las etiquetas sobre los estados que la política alcanza sí. La variante implementada aquí es human-gated (HG-DAgger, Kelly et al.): la política conserva el control hasta que una persona decide que algo va mal y toma el control, de modo que las correcciones se producen solo donde se necesitan, y nunca se le pide al brazo que entre en un estado que el operador no permitiría.

  • Behavior cloning solo es válido sobre la distribución de estados con la que se entrenó.
  • El fallo se autoamplifica: una pequeña desviación produce un estado desconocido, que produce una desviación mayor.
  • El remedio no son más demostraciones, son etiquetas sobre los estados que la propia política alcanza.
  • Human-gated significa que el operador decide cuándo intervenir, no una puntuación de autonomía.

Por qué el error se acumula

Arrastra el horizonte. Bajo behavior cloning, el coste extra esperado crece aproximadamente con el cuadrado del número de pasos, porque cada error produce estados que las demostraciones nunca cubrieron; un bucle de agregación mantiene el crecimiento cerca de lineal (Ross et al., 2011).

200
1.0 %
Behavior cloning
400
DAgger
2.00
200×
Behavior cloning ÷ DAgger
0.000100200300400050100150200Coste extra esperado (cota)
Horizonte de la tarea (pasos)

Curvas ilustrativas a partir de las cotas de Ross et al. (2011), no mediciones de tu robot. Lo importante es la forma, no las cifras.

Una ronda de DAgger, seis pasos

Así es como la plataforma ejecuta realmente el bucle, no un esquema. Cada paso de abajo corresponde a un control del cockpit.

Recorrer el bucle

Los mismos seis pasos, uno por uno, con lo que ocurre en el brazo y en el dataset en cada uno de ellos.

01

Ejecutar la política y grabarla

Iniciar una ejecución de inferencia contra un checkpoint que hayas entrenado. La ejecución se graba mientras ocurre, con el texto de tarea de la propia ejecución, de modo que los fotogramas sirven después como datos de entrenamiento y no solo como un vídeo para ver.

1 de 6

Lo que la plataforma te quita de encima

Cada punto de aquí es un paso del bucle que, de otro modo, tendrías que construir y mantener tú mismo.

Toma de control sin brazo líder

Elige entrada por teclado o deslizadores al iniciar la ejecución y podrás corregir con solo un portátil. Los impulsos de teclado se limitan en el servidor a dos grados por articulación y cuatro en el gripper; los objetivos de los deslizadores son absolutos y el servidor avanza hacia ellos como máximo seis grados por llamada. Los límites los impone el servidor, no la interfaz, así que una tecla atascada no puede descontrolar el brazo.

Documentación de teleoperación

Intervenciones marcadas por fotograma

Cada fotograma grabado mientras controlas el brazo lleva una marca de intervención, y la columna action lleva la pose completa ordenada. No mantienes una columna de marcas a mano ni la alineas después con los índices de fotograma.

Formato de dataset LeRobot

Clasificación: corrección, evaluación o papelera

Cada ejecución recibe una decisión en la tarjeta de guardado. Las ejecuciones de corrección alimentan la siguiente ronda de entrenamiento, las de evaluación quedan fuera del entrenamiento para seguir siendo una medición limpia, y las ejecuciones malas desaparecen en lugar de contaminar la mezcla en silencio.

Sesiones y episodios

Componer la mezcla explícitamente

El conjunto de entrenamiento de la ronda n lo ensamblas tú: dataset original más correcciones, con episodios seleccionados por fuente. Sin mezcla automática, sin datos de simulación ocultos, y el resultado compuesto se comporta como cualquier otro dataset.

Datasets

Continuar desde un checkpoint

Apunta una ejecución de entrenamiento al checkpoint que acabas de conducir en lugar de al modelo base, de modo que cada ronda empiece donde terminó la anterior. Solo inicializa los pesos; el estado del optimizador no se restaura, por lo que conviene tratar la primera ronda como una prueba de viabilidad.

Entrenamiento

GPUs alquiladas por ronda

ACT y SmolVLA en una 4090, Pi0 y GR00T N1.5 o N1.7 en una A100 con 80 GB. Inicias una ronda, el pod se levanta, los checkpoints llegan a tu bucket, y pagas las horas que ha durado la ronda.

Precios de GPU

Planifica tus rondas

La tasa de intervención es la métrica de progreso del bucle: fotogramas corregidos dividido entre fotogramas de la ejecución. Fija tu punto de partida y cuánto aporta cada ronda, y comprueba cuántas rondas hacen falta para llegar donde quieres.

30 %
25 %
3 000
RondaTasa de intervenciónFotogramas corregidos
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

Un modelo, no una previsión. Las rondas reales son irregulares, y una ronda que no mueve la tasa no te ha aportado nada; esa es exactamente la señal que vale la pena vigilar.

Construir el bucle tú mismo frente a ejecutarlo aquí

Nada de esto es imposible a mano. Es cuestión de cuántas noches se van en fontanería en lugar de en rondas, y hay una fila en la que hacerlo tú mismo es claramente la mejor opción.

Paso del bucleMontado a manoEn AY-Robots
Tomar el control a mitad de la ejecuciónUn brazo líder, o tu propio código en el bus de servos. La toma de control por teclado y deslizadores, incluidos los límites seguros, la escribes y depuras tú en hardware real.Brazo líder, teclado o deslizadores, elegidos al iniciar la ejecución. Los límites de ángulo residen en el servidor.
Marcar intervencionesAñades la columna de marca, la mantienes alineada con el índice de fotograma y la revisas cada vez que cambia el formato de grabación.Cada fotograma grabado durante una toma de control se marca automáticamente, con la pose ordenada en la columna action.
Clasificar las ejecucionesConvenciones de directorios y scripts de shell. Los fotogramas congelados alrededor de una entrega los encuentras y filtras tú.Una decisión por ejecución en la tarjeta de guardado. Los fotogramas de entrega se quedan en el directorio raw.
Construir el dataset mixtoScripts de fusión por versión de formato. Mantener coherentes los índices de episodio, los metadatos y las referencias de vídeo es la parte tediosa.Componer a partir del original más correcciones con selección de episodios por fuente; el resultado es un dataset normal.
Empezar la siguiente ronda desde la última políticaConectas tú mismo el checkpoint al entrenador, y también puedes restaurar el estado del optimizador si quieres una reanudación real.Un campo para el checkpoint base. Solo pesos: inicializa desde el checkpoint, no es una reanudación del optimizador.
Control sobre el bucle de entrenamientoTotal. Tu loss, tu programación, tus ablaciones, tu instrumentación, sin ninguna plataforma de por medio. Si la pregunta de investigación es el propio bucle de entrenamiento, hazlo a mano.Un camino fijo con una lista establecida de políticas y los hiperparámetros que expone el formulario, no código arbitrario.

Los papers en los que se basa esto

Lee esto antes de discutir el bucle. Cada enlace lleva a la página del abstract, no a un muro de pago.

  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)

    El paper original de DAgger: plantea el problema de la acumulación de errores, da la cota de T al cuadrado para el enfoque puramente supervisado y propone agregar datos de los estados que el propio aprendiz visita.

  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

    La variante human-gated: el experto decide cuándo tomar el control en lugar de que se le consulte sobre estados elegidos por la política; este es el modo que implementa esta plataforma.

  3. EnsembleDAgger: A Bayesian Approach to Safe Imitation Learning

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

    La otra forma de controlar las intervenciones: el desacuerdo entre un ensemble como señal de confianza para saber cuándo el aprendiz puede actuar solo. Un contraste útil frente a dejar que lo juzgue una persona.

  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

    Trata la atención humana como el recurso escaso y solo pide ayuda en estados novedosos o arriesgados, el enfoque correcto cuando una sola persona supervisa el brazo toda la tarde.

  5. DART: Noise Injection for Robust Imitation Learning

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

    La alternativa honesta: en lugar de corregir la política en línea, perturbar las demostraciones para que el experto muestre cómo recuperarse. Conviene conocerla antes de comprometerse con las intervenciones.

  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

    El mapa del campo: qué formas de feedback humano existen, qué interfaces las transmiten y dónde encaja entre ellas la intervención al estilo DAgger.

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

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

    El paper de ACT. El action chunking es la razón por la que un brazo barato puede ser conducido por una política de imitación, y ACT es la política más rápida para iterar una ronda de 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

    Un VLA basado en flow matching construido sobre un modelo de visión y lenguaje preentrenado, y uno de los checkpoints que se pueden ajustar aquí; el paper es explícito en que las nuevas habilidades vienen del fine-tuning, no solo del modelo base.

Preguntas que la gente realmente hace

¿Necesito un brazo líder para DAgger?

No. Elige entrada por teclado o deslizadores al iniciar la ejecución y la toma de control es manual desde el primer fotograma, manejada desde el navegador. Un brazo líder resulta más cómodo para movimientos finos, y es el único modo en el que el brazo se alinea solo antes de la entrega, pero el bucle funciona sin él.

¿Cuántas rondas de DAgger necesito?

No hay un número fijo honesto. Vigila la tasa de intervención: si no baja de una ronda a la siguiente, esa ronda no ha aportado nada, y el problema suele estar en la configuración de la tarea, en las cámaras o en el dataset original, no en el número de rondas.

¿Es esto DAgger de verdad o algo más laxo?

Es HG-DAgger, la variante human-gated. El DAgger clásico consulta al experto sobre estados que eligió la política, incluidos estados a los que ningún operador razonable dejaría llegar a un brazo real. Aquí una persona decide cuándo intervenir, y solo esos segmentos se convierten en etiquetas.

¿Entreno solo con las correcciones?

No, y no deberías. Entrenar solo con correcciones da como resultado una política que únicamente sabe recuperarse. El dataset compuesto son los datos originales más las correcciones, con los episodios de cada fuente elegidos explícitamente.

¿Continuar desde un checkpoint reanuda la ejecución de entrenamiento?

Inicializa los pesos a partir de ese checkpoint. El estado del optimizador no se restaura, así que no es una reanudación en sentido estricto. En la práctica, los pesos son lo que transporta el comportamiento aprendido de una ronda a otra, pero conviene saber cuál de las dos cosas se obtiene.

¿Cómo se calcula la tasa de intervención?

Fotogramas marcados como intervención divididos entre el total de fotogramas de la ejecución. Se muestra en el estado de la toma de control, y es el único número que vale la pena anotar por ronda junto con el checkpoint conducido y la mezcla entrenada.

¿Con qué políticas puedo ejecutar este bucle?

ACT, SmolVLA, Pi0 y GR00T N1.5 o N1.7. El bucle en sí es independiente de la política porque solo produce datasets y checkpoints; la diferencia práctica está en cuánto dura una ronda y qué GPU necesita.

¿Puedo hacer esto sin tener un robot propio?

Puedes grabar y entrenar sin tenerlo comprando datasets en el marketplace o encargando el trabajo a operadores, y puedes conducir un SO-100 real desde el navegador en la página live. Una ronda de DAgger es distinta: necesita un brazo del que puedas tomar el control a mitad de la ejecución, así que para el bucle en sí conviene tener hardware en tu propia mesa.

Drive a real arm

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

Ejecuta tu primera ronda esta semana

Instala el cliente, conduce un checkpoint que ya tengas, y toma el control la primera vez que el brazo se pase de largo del cubo. Esa única ejecución es una ronda de DAgger en miniatura: todo lo que viene después es componer la mezcla y pagar las horas de GPU.