Open Source Robotics

Uma coleção selecionada de projetos, ferramentas e software de robótica de código aberto de alta qualidade.

Equivariance

  • Também chamado: equivariant networks, symmetry-aware learning, group equivariance
  • Categoria: Learning & autonomy › Learning from demonstration
  • Tags: geometric-deep-learning, symmetry, robot-learning, sample-efficiency, manipulation

Uma propriedade de uma função ou rede neural cuja saída se transforma de forma previsível quando sua entrada é transformada, por exemplo uma previsão de preensão que rotaciona quando a cena rotaciona.

Definição

Equivariância (equivariance) descreve uma função cuja saída muda de forma correspondente e previsível quando sua entrada é transformada. Formalmente, uma função f é equivariante a um grupo de transformações se aplicar uma transformação g antes da função dá o mesmo resultado que aplicar a transformação correspondente depois dela: f(g·x) = g·f(x). A invariância é o caso especial em que a saída não muda de forma alguma: f(g·x) = f(x).

A robótica está cheia dessas simetrias. Se uma cena sobre uma mesa é rotacionada, a preensão correta deve rotacionar junto; se um objeto é deslocado, o movimento necessário para pegá-lo também deve se deslocar. Os grupos de transformações relevantes costumam ser rotações e translações no plano (SO(2), SE(2)) ou em três dimensões (SO(3), SE(3)). Redes convolucionais comuns já são equivariantes a translações da imagem, o que é um dos motivos pelos quais funcionam bem em visão; redes equivariantes estendem isso a rotações e outras transformações.

Arquiteturas equivariantes incorporam a simetria nas camadas da rede em vez de esperar que a rede a aprenda a partir dos dados. Redes convolucionais equivariantes a grupos, convoluções orientáveis (steerable) e métodos para nuvens de pontos como Vector Neurons são exemplos. Como a rede não precisa de exemplos separados de cada orientação, modelos equivariantes podem aprender com menos demonstrações e generalizar para poses nunca vistas no treinamento.

A principal questão de projeto é qual simetria realmente vale. A gravidade e a superfície da mesa quebram a simetria rotacional 3D completa, por isso muitos sistemas de manipulação usam apenas a rotação em torno do eixo vertical. Escolher uma simetria que a tarefa não tem força o modelo a produzir respostas erradas, enquanto ignorar uma simetria que vale desperdiça dados.

Por que importa

Dados de robôs são caros de coletar, e a equivariância é uma das formas mais diretas de obter mais generalização com a mesma quantidade de dados. Ela permite que uma política treinada com poucas poses de objetos aja de forma sensata em versões rotacionadas ou deslocadas da mesma cena.

Principais aplicações

  • Previsão de preensão e de pick-and-place a partir de imagens ou nuvens de pontos
  • Aprendizado de políticas eficiente em amostras a partir de poucas demonstrações
  • Estimativa de pose e percepção centrada em objetos
  • Tarefas de montagem e posicionamento em que a orientação das peças varia

Na prática

Uma equipe que treina uma política de manipulação sobre mesa a partir de demonstrações pode usar uma rede equivariante a rotações no plano, de modo que uma demonstração gravada com uma caneca virada para um lado também ensine à política o que fazer quando a caneca está virada para outro. Primeiro ela verifica quais simetrias a tarefa realmente tem, por exemplo se a garra ou a montagem da câmera quebram a simetria rotacional, depois escolhe uma biblioteca equivariante e a compara com uma rede padrão treinada com aumento de dados por rotação como referência.

Equívocos comuns

  • Equivariância e invariância são a mesma coisa — uma saída invariante permanece fixa sob uma transformação, enquanto uma saída equivariante se transforma junto com a entrada
  • Aumento de dados dá o mesmo resultado — o aumento incentiva uma simetria de forma aproximada, enquanto uma arquitetura equivariante a impõe exatamente
  • Mais simetria é sempre melhor — impor uma simetria que a tarefa não tem, como a rotação 3D completa sob a gravidade, força o modelo a errar

Quem deve saber

  • Pesquisadores de aprendizado de robôs que trabalham com políticas de manipulação
  • Engenheiros de percepção que trabalham com nuvens de pontos e estimativa de pose
  • Engenheiros de aprendizado de máquina que projetam arquiteturas de rede para robótica

Tecnologias relacionadas

  • CNNs equivariantes a grupos (Group-Equivariant CNNs)
  • CNNs orientáveis (Steerable CNNs)
  • Vector Neurons
  • Aumento de dados (Data Augmentation)
  • Diffusion Policy
  • Grupos de Lie (SE(3))

Termos relacionados

  • Diffusion Policy
  • Imitation Learning
  • Transform

Projetos relacionados

  • 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

Vídeos

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

Wikipédia

  • Aplicação equivariante

Este site requer JavaScript. Por favor, habilite o JavaScript para explorar nossos projetos de robótica.