LeRobot documentation
ACT (Action Chunking con Transformers)
ACT (Action Chunking con Transformers)
ACT es una política ligera y eficiente para el aprendizaje por imitación, especialmente adecuada para tareas de manipulación de gran precisión. Es el primer modelo que recomendamos cuando se empieza con LeRobot debido a su rápido tiempo de entrenamiento, sus bajos requisitos computacionales y su sólido rendimiento.
Mira este tutorial del equipo de LeRobot para aprender cómo funciona ACT: Tutorial de ACT de LeRobot
Resumen del modelo
Action Chunking with Transformers (ACT) se introdujo en el artículo Learning Fine-Grained Bimanual Manipulation with Low-Cost Hardware de Zhao et al. La política fue diseñada para permitir tareas de manipulación precisas y con abundante contacto, utilizando hardware asequible y datos de demostración mínimos.
Por qué ACT es ideal para principiantes
ACT destaca como un excelente punto de partida por varias razones:
- Entrenamiento rápido: Entrena en pocas horas en una sola GPU
- Ligero: Solo ~80M parámetros, lo que lo hace eficiente y fácil de usar
- Alto rendimiento con pocos datos: A menudo logra tasas de éxito elevadas con solo 50 demostraciones
Arquitectura
ACT utiliza una arquitectura basada en transformers con tres componentes principales:
- Tronco de visión: ResNet-18 procesa imágenes de múltiples puntos de vista de las cámaras
- Transformer Encoder: Sintetiza información de las características de la cámara, las posiciones de las articulaciones y una variable latente aprendida
- Decodificador Transformer: Genera secuencias de acciones coherentes mediante atención cruzada
La política toma como entrada:
- Varias imágenes RGB (p. ej., de cámaras de muñeca, cámaras frontales/superiores)
- Posiciones actuales de las articulaciones del robot
- Una variable de estilo latente
z(aprendida durante el entrenamiento y establecida en cero durante la inferencia)
Y genera un fragmento de k secuencias de acciones futuras.
Requisitos de instalación
- Instala LeRobot siguiendo nuestra Guía de instalación.
- ACT está incluido en la instalación base de LeRobot, ¡por lo que no se necesitan dependencias adicionales!
Entrenamiento de ACT
ACT funciona a la perfección con el pipeline de entrenamiento estándar de LeRobot. A continuación, se muestra un ejemplo completo para entrenar ACT en tu conjunto de datos:
lerobot-train \
--dataset.repo_id=${HF_USER}/your_dataset \
--policy.type=act \
--output_dir=outputs/train/act_your_dataset \
--job_name=act_your_dataset \
--policy.device=cuda \
--trackio.enable=true \
--policy.repo_id=${HF_USER}/act_policyConsejos de entrenamiento
- Comience con los valores predeterminados: los hiperparámetros predeterminados de ACT funcionan bien para la mayoría de las tareas
- Duración del entrenamiento: Espera unas pocas horas para 100k pasos de entrenamiento en una sola GPU
- Tamaño del lote: Comience con un tamaño de lote de 8 y ajústelo según la memoria de su GPU
Entrenar usando Google Colab
Si tu computadora local no cuenta con una GPU potente, puedes utilizar Google Colab para entrenar tu modelo siguiendo el cuaderno de entrenamiento ACT.
Evaluación de ACT
Una vez completado el entrenamiento, puedes evaluar tu política ACT en tu robot con lerobot-rollout. El comando siguiente ejecuta la política durante 60 segundos sin grabar nada (--task se puede omitir para ACT). Consulta Despliegue de la política para conocer estrategias que graben episodios de evaluación.
lerobot-rollout \
--strategy.type=base \
--policy.path=${HF_USER}/act_policy \
--robot.type=so101_follower \
--robot.port=/dev/ttyACM0 \
--robot.cameras="{ front: {type: opencv, index_or_path: 0, width: 640, height: 480, fps: 30}}" \
--display_data=true \
--task="Your task description" \
--duration=60