Grasp2Vec: apprendre à représenter des objets grâce à la capture d'auto-apprentissage



Les personnes d'un âge étonnamment jeune sont déjà capables de reconnaître leurs objets préférés et de les ramasser, malgré le fait qu'elles ne soient pas spécifiquement enseignées. Selon des études sur le développement des capacités cognitives, la possibilité d'interagir avec des objets du monde qui nous entoure joue un rôle essentiel dans le développement de capacités telles que la détection et la manipulation d'objets - par exemple, la capture ciblée. En interagissant avec le monde extérieur, les gens peuvent apprendre en corrigeant leurs propres erreurs: nous savons ce que nous avons fait et nous apprenons des résultats. En robotique, ce type de formation avec auto-correction des erreurs est activement étudié, car il permet aux systèmes robotiques d'apprendre sans une énorme quantité de données de formation ou d'ajustement manuel.

Chez Google, inspiré par le concept de persistance des objets , nous proposons le système Grasp2Vec - un algorithme simple mais efficace pour construire la représentation des objets. Grasp2Vec est basé sur une compréhension intuitive qu'une tentative de lever un objet nous donnera des informations - si le robot attrape l'objet et le ramasse, alors l'objet doit être à cet endroit avant d'être capturé. De plus, le robot sait que si l'objet capturé est en cours de capture, cela signifie que l'objet n'est plus à l'endroit où il se trouvait. En utilisant cette forme d'auto-apprentissage, le robot peut apprendre à reconnaître un objet en raison du changement visuel dans la scène après sa capture.

Sur la base de notre collaboration avec X Robotics , où plusieurs robots ont été formés simultanément pour capturer des objets domestiques en utilisant une seule caméra comme source de données d'entrée, nous utilisons la capture robotique pour capturer «par inadvertance» des objets, et cette expérience nous permet d'avoir une idée riche de l'objet. Cette idée peut déjà être utilisée pour acquérir la capacité de «capture intentionnelle», lorsque le bras du robot peut élever des objets à la demande.



Création d'une fonction de récompense perceptuelle


Sur une plateforme d' apprentissage par renforcement, le succès d'une tâche est mesuré par une fonction de récompense. En maximisant les récompenses, les robots apprennent diverses compétences de capture à partir de zéro . La création d'une fonction de récompense est facile lorsque le succès peut être mesuré avec de simples lectures de capteur. Un exemple simple est un bouton qui transfère une récompense directement à l'entrée d'un robot en cliquant dessus.

Cependant, la création d'une fonction de récompense est beaucoup plus compliquée lorsque le critère de réussite dépend d'une compréhension perceptuelle de la tâche. Considérez le problème de capture dans un exemple où le robot reçoit une image de l'objet souhaité contenu dans la capture. Une fois que le robot a tenté de capturer l'objet, il examine le contenu de la capture. La fonction de récompense pour cette tâche dépend de la réponse à la question de la reconnaissance des formes: les objets coïncident-ils?


A gauche, la poignée tient le pinceau, et plusieurs objets sont visibles en arrière-plan (une tasse jaune, un bloc plastique bleu). À droite, la poignée tient la tasse et la brosse est en arrière-plan. Si l'image de gauche représentait le résultat souhaité, une bonne fonction de récompense serait de «comprendre» que ces deux photos correspondent à deux objets différents.

Pour résoudre le problème de reconnaissance, nous avons besoin d'un système perceptuel qui extrait des concepts significatifs d'objets à partir d'images non structurées (non signées par des personnes) et apprend à visualiser des objets sans professeur. Essentiellement, les algorithmes d'apprentissage sans enseignant fonctionnent en créant des hypothèses structurelles sur les données. On suppose souvent que les images peuvent être compressées dans un espace avec moins de dimensions et que les images vidéo peuvent être prédites à partir des précédentes . Cependant, sans hypothèses supplémentaires sur le contenu des données, cela ne suffit généralement pas pour tirer des enseignements des représentations non liées des objets.

Et si nous utilisions un robot pour séparer physiquement les objets lors de la collecte des données? La robotique offre une excellente occasion d'apprendre à représenter des objets, car les robots peuvent les manipuler, ce qui donnera les facteurs de variation nécessaires. Notre méthode est basée sur l'idée que la capture d'un objet le retire de la scène. Le résultat est 1) une image de la scène avant la capture, 2) une image de la scène après la capture et 3) une vue séparée de l'objet capturé.


Gauche - objets à capturer. Au centre - après la capture. À droite, l'objet capturé.

Si nous considérons une fonction intégrée qui extrait un «ensemble d'objets» d'images, elle devrait conserver la relation de soustraction suivante:


objets avant capture - objets après capture = objet capturé

Nous atteignons cette égalité avec une architecture convolutionnelle et un algorithme d'apprentissage métrique simple. Pendant la formation, l'architecture illustrée ci-dessous intègre des images avant et après la capture dans une carte dense des propriétés spatiales . Ces cartes se transforment en vecteurs grâce à une union moyenne, et la différence entre les vecteurs «avant capture» et «après capture» représente un ensemble d'objets. Ce vecteur et la représentation correspondante du vecteur de cet objet perçu sont assimilés par la fonction de N-paires.



Après l'entraînement, notre modèle possède naturellement deux propriétés utiles.

1. Similitude des objets


Le coefficient cosinus de la distance entre les plongements vectoriels nous permet de comparer des objets et de déterminer s'ils sont identiques. Cela peut être utilisé pour implémenter la fonction de récompense pour un apprentissage renforcé et permet aux robots d'apprendre à capturer avec des exemples sans baliser les données par les humains.



2. Trouver des cibles


Nous pouvons combiner des cartes spatiales de la scène et l'incorporation d'objets pour localiser «l'objet souhaité» dans l'espace image. En effectuant une multiplication par élément des cartes de caractéristiques spatiales et de la correspondance vectorielle de l'objet souhaité, nous pouvons trouver tous les pixels sur la carte spatiale qui correspondent à l'objet cible.


Utilisation d'incrustations Grasp2Vec pour localiser des objets dans la scène. Au-dessus à gauche se trouvent des objets dans le panier. En bas à gauche - l'objet à capturer. Le produit scalaire du vecteur de l'objet cible et les caractéristiques spatiales de l'image nous donne une «carte d'activation» par pixel (en haut à droite) de la similitude d'une section donnée de l'image avec la cible. Cette carte peut être utilisée pour se rapprocher de la cible.

Notre méthode fonctionne également lorsque plusieurs objets correspondent à la cible, ou même lorsque la cible est constituée de plusieurs objets (la moyenne de deux vecteurs). Par exemple, dans ce scénario, le robot identifie plusieurs blocs orange dans la scène.


La «carte thermique» qui en résulte peut être utilisée pour planifier l'approche du robot vers le ou les objets cibles. Nous combinons la localisation à partir de Grasp2Vec et la reconnaissance d'exemples avec notre politique de «capture de tout», et réussissons dans 80% des cas lors de la collecte de données et dans 59% avec de nouveaux objets que le robot n'a pas rencontrés auparavant.

Conclusion


Dans notre travail, nous avons montré comment les compétences de préhension robotique peuvent créer des données utilisées pour enseigner les représentations d'objets. Ensuite, nous pouvons utiliser la formation de présentation pour acquérir rapidement des compétences plus complexes, telles que la capture par exemple, tout en préservant toutes les propriétés de la formation des non-enseignants dans notre système de capture autonome.

En plus de notre travail, plusieurs autres travaux récents ont également étudié comment l'interaction sans professeur peut être utilisée pour obtenir des représentations d'objets, en capturant , poussant et d'autres types d' interactions avec des objets dans l'environnement. Nous anticipons avec joie non seulement ce que l'apprentissage automatique peut apporter à la robotique en termes de meilleure perception et contrôle, mais aussi ce que la robotique peut apporter à l'apprentissage automatique en termes de nouveaux paradigmes d'auto-apprentissage.

Source: https://habr.com/ru/post/fr434898/


All Articles