Ce que fait réellement l’apprentissage par imitation

Avant d'exécuter la commande d'entraînement, prenez deux minutes pour comprendre ce que le modèle apprend réellement. L'apprentissage par imitation entraîne un réseau politique pour mapper les observations (images de caméra + état commun actuel) aux actions (prochains angles communs). Le réseau ne reçoit jamais de signal de récompense : il voit uniquement vos démonstrations et apprend à reproduire la répartition des actions que vous avez effectuées dans des états similaires.

ACT (Action Chunking with Transformers) prédit un gros morceau de 100 actions futures à la fois plutôt que d'une seule étape. Cela évite l'accumulation d'erreurs tout au long de l'épisode : même si une prédiction individuelle est légèrement erronée, le fragment fournit un tampon de trajectoire stable. Il replanifie ensuite tous les 100 pas de temps (2 secondes à 50 Hz). C'est pourquoi ACT gère mieux les tâches plus longues que le simple clonage de comportement.

Pour le contexte théorique complet, lisez Fondamentaux de l'apprentissage par imitation dans la bibliothèque de robotique.

GPU ou CPU ?

La formation sur un GPU NVIDIA avec plus de 8 Go de VRAM prend environ 45 minutes pour 100 000 étapes. La formation sur le processeur prend 3 à 4 heures pour la même exécution. Les deux produisent une qualité de modèle équivalente – le GPU est juste plus rapide. Si vous ne disposez pas de GPU local, la commande d'entraînement fonctionne de manière identique sur une instance cloud (Lambda Labs ou Google Colab avec le runtime A100). Les instructions sont dans le README du dépôt LeRobot.

Entraînez ACT sur votre ensemble de données

Exécutez le script de formation à partir de votre environnement virtuel. Les valeurs de configuration ci-dessous sont calibrées pour des ensembles de données de sélection et de placement de 50 épisodes sur OpenArm — ne les modifiez pas lors de votre première exécution :

source ~/openarm-env/bin/activate python -m lerobot.scripts.train \ --dataset-path ~/openarm-datasets/pick-and-place \ --acte politique \ --batch-size 8 \ --lr 1e-5 \ --num-train-steps 100000 \ --eval-freq 5000 \ --save-freq 10000 \ --log-freq 500 \ --output-dir ~/openarm-policies/pick-and-place-v1 # Training will print loss every 500 steps and eval results every 5000 steps # Checkpoints saved every 10k steps to ~/openarm-policies/pick-and-place-v1/

Commencez la formation, puis surveillez le résultat. Vous n'avez pas besoin de le regarder tout le temps, mais revenez toutes les 20 à 30 minutes pour confirmer que la perte diminue et que la course ne s'est pas interrompue. L'entraînement peut se dérouler pendant la nuit pendant que vous dormez.

Comprendre les courbes d'entraînement

Les résultats de la formation d'ACT montrent deux indicateurs clés. Apprenez à les lire correctement : ils vous indiquent si votre entraînement est sain et quand l'arrêter.

Perte de formation

Devrait diminuer fortement au cours des 20 000 premières étapes, puis continuer à diminuer plus lentement. Une perte qui se maintient au-dessus de 0,05 indique généralement des problèmes de qualité des données : vérifiez votre ensemble de données. Une perte qui oscille considérablement suggère que votre taux d’apprentissage est trop élevé.

Taux de réussite de l'évaluation

Apparaît toutes les 5 000 étapes (nécessite un bras physique ou une carte SIM). C’est ce chiffre qui compte réellement. Vous voulez que cela soit supérieur à 70 % avant le déploiement. Il est souvent en retard par rapport à la perte d’entraînement – ​​la perte peut paraître bonne alors que le taux de réussite continue de s’améliorer.

Action MSE

Erreur quadratique moyenne entre les actions prédites et celles de la vérité terrain. Devrait descendre en dessous de 0,01 pour une politique de sélection et de placement bien entraînée. Un MSE à action élevée après 80 000 étapes signifie que le modèle a du mal à gérer la complexité de la tâche ou que vos données sont incohérentes.

Divergence KL (spécifique à ACT)

ACT utilise un CVAE avec un poids KL recuit de 0 à 10 pendant l'entraînement. Surveillez cette stabilisation autour du pas 40k. S'il ne converge jamais, le modèle ne parvient pas à encoder le style : essayez d'ajouter plus de données.

Quand arrêter l’entraînement

Ne vous contentez pas de courir jusqu'à 100 000 pas et de vous arrêter. Utilisez ces signaux pour décider quand votre point de contrôle est prêt à être déployé :

  • Le taux de réussite des évaluations a stagné pendant 3 évaluations consécutives — le modèle a convergé. Une formation continue ne sera pas utile sans des données supplémentaires ou différentes.
  • Le taux de réussite de l'évaluation est supérieur à 70 % — c'est le seuil de déploiement de l'unité 6. Si vous atteignez 70 % à 60 000 pas, vous pouvez vous arrêter plus tôt et déployer ce point de contrôle.
  • La perte de formation continue de diminuer mais l’évaluation est stable ou en baisse — le modèle est surajusté. Prenez le dernier checkpoint où l'eval était à son apogée. C'est le meilleur point de contrôle.
  • Après 100 000 pas — si le taux de réussite est inférieur à 40 %, retournez à l'unité 4. Le problème de données est plus probable qu'un problème de formation à ce stade.
Plongées approfondies facultatives

Au-delà d'ACT — Politique de diffusion et π₀

Une fois que vous avez une politique ACT fonctionnelle, la prochaine expérience naturelle est la politique de diffusion. Il gère mieux les tâches multimodales (par exemple, le bras peut approcher l'objet sous deux angles) au prix d'une inférence plus lente. La section Recherche SVRC couvre les deux. Parcourir les articles de recherche →

Unité 5 terminée quand...

La formation est terminée (ou vous l'avez arrêtée à un bon point de contrôle). Votre taux de réussite d'évaluation est supérieur à 70 % pour la tâche de sélection et de placement. Vous avez un point de contrôle enregistré à ~/openarm-policies/pick-and-place-v1/ et vous savez quel numéro d'étape a produit votre meilleur résultat. Vous êtes prêt à mettre cette politique sur le bras réel de l'unité 6.