Open Source Robotics

Une collection organisée de projets, outils et logiciels robotiques open source de haute qualité.

Equivariance

  • Aussi appelé: equivariant networks, symmetry-aware learning, group equivariance
  • Catégorie: Learning & autonomy › Learning from demonstration
  • Mots-clés: geometric-deep-learning, symmetry, robot-learning, sample-efficiency, manipulation

Propriété d'une fonction ou d'un réseau de neurones dont la sortie se transforme de manière prévisible lorsque son entrée est transformée, par exemple une prédiction de saisie qui tourne quand la scène tourne.

Définition

Équivariance (equivariance) : propriété d'une fonction dont la sortie change de manière correspondante et prévisible lorsque son entrée est transformée. Formellement, une fonction f est équivariante pour un groupe de transformations si appliquer une transformation g avant la fonction donne le même résultat qu'appliquer la transformation correspondante après elle : f(g·x) = g·f(x). L'invariance (invariance) est le cas particulier où la sortie ne change pas du tout : f(g·x) = f(x).

La robotique regorge de telles symétries. Si une scène posée sur une table est tournée, la bonne saisie doit tourner avec elle ; si un objet est déplacé, le mouvement nécessaire pour le saisir doit se déplacer aussi. Les groupes de transformations pertinents sont généralement les rotations et translations dans le plan (SO(2), SE(2)) ou en trois dimensions (SO(3), SE(3)). Les réseaux convolutifs ordinaires sont déjà équivariants aux translations d'image, ce qui est l'une des raisons de leur efficacité en vision ; les réseaux équivariants étendent cette propriété aux rotations et à d'autres transformations.

Les architectures équivariantes intègrent la symétrie dans les couches du réseau au lieu d'espérer que le réseau l'apprenne à partir des données. Les réseaux convolutifs équivariants par groupe, les convolutions orientables (steerable convolutions) et les méthodes pour nuages de points comme les vector neurons en sont des exemples. Comme le réseau n'a pas besoin d'exemples distincts pour chaque orientation, les modèles équivariants peuvent apprendre à partir de moins de démonstrations et généraliser à des poses jamais vues à l'entraînement.

La principale question de conception est de savoir quelle symétrie est réellement vérifiée. La gravité et la surface de la table brisent la symétrie de rotation 3D complète, si bien que de nombreux systèmes de manipulation n'utilisent que la rotation autour de l'axe vertical. Choisir une symétrie que la tâche ne possède pas force le modèle à produire de mauvaises réponses, tandis qu'ignorer une symétrie qui est vérifiée gaspille des données.

Pourquoi c'est important

Les données robotiques coûtent cher à collecter, et l'équivariance est l'un des moyens les plus directs d'obtenir davantage de généralisation à partir de la même quantité de données. Elle permet à une politique entraînée sur quelques poses d'objet d'agir de façon sensée sur des versions tournées ou décalées de la même scène.

Applications principales

  • Prédiction de saisie et de prise-dépose (pick-and-place) à partir d'images ou de nuages de points
  • Apprentissage de politiques économe en échantillons à partir d'un petit nombre de démonstrations
  • Estimation de pose et perception centrée sur les objets
  • Tâches d'assemblage et de placement où l'orientation des pièces varie

En pratique

Une équipe qui entraîne une politique de manipulation sur table à partir de démonstrations peut utiliser un réseau équivariant aux rotations planes, de sorte qu'une démonstration enregistrée avec une tasse orientée dans un sens apprenne aussi à la politique quoi faire lorsque la tasse est orientée dans un autre. Elle vérifie d'abord quelles symétries la tâche possède réellement, par exemple si la pince ou le montage de la caméra brise la symétrie de rotation, puis choisit une bibliothèque équivariante et compare le résultat à un réseau standard entraîné avec augmentation de données par rotation, pris comme référence.

Idées reçues

  • L'équivariance et l'invariance sont la même chose — une sortie invariante reste fixe sous une transformation, alors qu'une sortie équivariante se transforme avec l'entrée
  • L'augmentation de données donne le même résultat — l'augmentation encourage une symétrie de manière approximative, alors qu'une architecture équivariante l'impose exactement
  • Plus de symétrie est toujours mieux — imposer une symétrie que la tâche ne possède pas, comme la rotation 3D complète sous la gravité, force le modèle à se tromper

Qui devrait le savoir

  • Chercheurs en apprentissage robotique travaillant sur des politiques de manipulation
  • Ingénieurs en perception travaillant avec des nuages de points et l'estimation de pose
  • Ingénieurs en apprentissage automatique qui conçoivent des architectures de réseau pour la robotique

Technologies associées

  • CNN équivariants par groupe (Group-Equivariant CNNs)
  • CNN orientables (Steerable CNNs)
  • Vector Neurons
  • Augmentation de données (Data Augmentation)
  • Diffusion Policy
  • Groupes de Lie (Lie Groups, SE(3))

Termes associés

  • Diffusion Policy
  • Imitation Learning
  • Transform

Projets associés

  • LeRobot: HuggingFace ML library for real-world robotics in PyTorch
  • OpenPI: Physical Intelligence VLA foundation models for general robot control
  • Isaac Lab: NVIDIA robot learning framework: one task API across Newton, PhysX and Isaac Sim
  • NVIDIA Isaac GR00T: NVIDIA open foundation model for humanoid robot reasoning and skills
  • OpenVLA: 7B-parameter Vision-Language-Action model for robotic manipulation
  • Drake: MIT robotics toolbox for model-based dynamics, optimization, and control system design

Vidéos

  • Equivariant Neural Networks | Part 1/3 - Introduction: DeepFindr

Wikipédia

  • Équivariance

Ce site nécessite JavaScript. Veuillez activer JavaScript pour explorer nos projets de robotique open source.