Curriculum Learning
- También llamado: curriculum training, task curriculum
- Categoría: Learning & autonomy › RL & simulation
- Etiquetas: reinforcement-learning, robot-learning, training, simulation, locomotion
Una estrategia de entrenamiento que da primero a un sistema de aprendizaje tareas o ejemplos más fáciles y aumenta la dificultad de forma gradual, para que pueda dominar habilidades demasiado difíciles de aprender desde cero.
Definición
Aprendizaje por currículo (curriculum learning) es la práctica de ordenar la experiencia de entrenamiento de lo fácil a lo difícil en lugar de presentarla toda a la vez. La idea refleja cómo se enseña a las personas: un estudiante aprende aritmética antes que cálculo. En el aprendizaje automático lo formalizaron Bengio et al. en 2009, que mostraron que un orden bien elegido de los ejemplos puede acelerar el entrenamiento y mejorar el resultado final.
En robótica, los currículos son más comunes en el aprendizaje por refuerzo, donde un agente que empieza con una tarea muy por encima de su capacidad puede no recibir nunca una señal de recompensa útil. Un currículo mantiene al agente en el límite de su competencia. La dificultad puede aumentarse a lo largo de muchos ejes: la rugosidad y la pendiente del terreno para un robot con patas, la altura de los escalones para subir escaleras, la distancia al objetivo para la navegación, la variedad de objetos para el agarre, la fuerza de los empujones externos o lo dispersa que sea la recompensa.
Los currículos pueden diseñarse a mano, con etapas fijas y umbrales para avanzar, o ser automáticos. Los currículos automáticos ajustan la dificultad según el rendimiento del agente, por ejemplo promoviendo a un robot simulado a un terreno más difícil cuando tiene éxito y descendiéndolo cuando falla. Entre las ideas relacionadas están la generación automática de objetivos, en la que el sistema de entrenamiento propone objetivos de dificultad adecuada, y el autojuego (self-play), en el que los oponentes mejoran juntos.
Un currículo añade decisiones de diseño que pueden salir mal. Si la dificultad sube demasiado rápido, el aprendizaje se estanca; si sube demasiado despacio, se desperdicia cómputo. Un currículo que nunca llega a todo el rango de condiciones que se dan en el despliegue puede dejar a la política sin preparación para ellas.
Por qué importa
Muchas habilidades de los robots, como trepar, saltar o caminar sobre terreno irregular, no pueden aprenderse por ensayo y error desde cero porque un comportamiento aleatorio casi nunca tiene éxito. El aprendizaje por currículo hace que estas habilidades se puedan aprender construyéndolas por pasos, y es un ingrediente estándar de los controladores de locomoción entrenados en simulación.
Aplicaciones clave
- Entrenamiento de locomoción con patas sobre terrenos cada vez más difíciles
- Aprendizaje de habilidades de escalada y de subida de escaleras
- Tareas de navegación con una distancia al objetivo o un desorden que aumentan gradualmente
- Tareas de manipulación con una variedad de objetos o unos requisitos de precisión crecientes
En la práctica
En el entrenamiento de locomoción basado en GPU, una configuración habitual es un currículo de terreno: miles de robots simulados se reparten sobre una cuadrícula de losetas de terreno ordenadas por dificultad, como pendientes, escaleras y zonas irregulares de altura creciente. Cada robot empieza en losetas fáciles; si recorre suficiente distancia en un episodio pasa a losetas más difíciles, y si falla retrocede. Los equipos suelen ejecutar currículos paralelos sobre la velocidad ordenada y la fuerza de las perturbaciones, y registran cómo se distribuyen los robots entre los niveles de dificultad como medida directa del progreso del entrenamiento. Antes del despliegue, evalúan la política final en los niveles más difíciles y en condiciones fuera del currículo, para comprobar que no se ha ajustado solo a la escalera de entrenamiento.
Ideas erróneas comunes
- Un currículo siempre ayuda — un currículo mal diseñado puede ralentizar el entrenamiento o sesgar la política hacia las condiciones que enfatizó
- Los currículos deben diseñarse a mano — muchos sistemas ajustan la dificultad automáticamente según el rendimiento medido del agente
- El aprendizaje por currículo es solo para el aprendizaje por refuerzo — se formalizó primero para el aprendizaje supervisado y también se aplica allí
Quién debería saberlo
- Profesionales del aprendizaje por refuerzo
- Ingenieros de control de robots con patas
- Diseñadores de simulaciones y de entornos de entrenamiento
- Estudiantes de aprendizaje automático que trabajan en aprendizaje de robots
Tecnologías relacionadas
- Aprendizaje por refuerzo (Reinforcement Learning)
- Isaac Lab
- Aleatorización de dominio (Domain Randomization)
- Modelado de recompensas (Reward Shaping)
- Aprendizaje por currículo automático (Automatic Curriculum Learning)
- Autojuego (Self-Play)
Términos relacionados
Proyectos relacionados
- GENESIS: World's fastest physics engine: 43M FPS for embodied AI learning
- LeRobot: HuggingFace ML library for real-world robotics in PyTorch
- MuJoCo: DeepMind physics engine for robotics and ML research
- PyBullet: Python physics simulator for robotics and RL research with fast CPU-based simulation
- OpenPI: Physical Intelligence VLA foundation models for general robot control
- Microduck: Pollen Robotics' $399 walking duck robot: open-source software, closed hardware
Vídeos
- Curriculum Learning in Deep Neural Networks: Connor Shorten
- Teacher-Student Curriculum Learning: Connor Shorten