• Aucun résultat trouvé

Aperçu général de notre approche

Symboles

1.2 Aperçu général de notre approche

Le système développé lors de cette thèse, illustré en figure 1.1, cherche à répondre de manière globale à chacune de ces problématiques. Les deux derniers points de la section précédente nous imposent d’avoir au moins deux modalités d’informations dans notre modèle : des données vi-suelles/géométriques (capteur RGBD) et des données sémantiques en langage naturel. Se faisant, nous remplissons également en partie le troisième point, avec une première modalité concrète et

l’autre fortement abstraite. Les données sensorielles ont une temporalité "nulle" alors que les don-nées sémantiques considérées ici sont généralement intemporelles.

En résumé, nous avons une représentationlocale/globale/concrèted’un côté etglobale/abstraite de l’autre. On s’aperçoit donc qu’il nous faut un modèlelocal/abstraitafin de passer "continûment"

d’une représentation à une autre. Celui-ci correspond à une description d’éléments concrets à partir de concepts abstraits. Autrement dit, ce modèle intermédiaire va décrire l’environnement courant3 en terme d’instances. Celles-ci ont leur propriétés visuelles/géométriques données par des capteurs mais également une description en langage naturel réutilisant les concepts abstraits de la représen-tation sémantique.

Plus précisément, notre modèle vise à une représentation d’un environnement ouvert4 et non défini en fonction de tâches précises. Ce modèle doit être une base sur laquelle on puisse ensuite greffer des modules spécifiques à l’exécution de tâches particulières. Il faut donc pouvoir être ca-pable à la fois d’utiliser chacune des modalités de façon indépendante mais également de façon conjointe si nécessaire. L’apport d’information d’une modalité vers une autre doit également pou-voir se faire dans les deux sens. On a vu précédemment que majoritairement, l’information allait de la sémantique vers la vision. Certains travaux, au contraire, transportaient l’information de la vi-sion vers la sémantique. Nous pensons que l’intégration de ces différentes méthodes dans un cadre commun permettra d’obtenir un modèle plus générique.

Bien sûr, une plus grande généricité implique de minimiser le nombre d’hypothèses faites. Cela limite fortement les méthodes applicables, notamment l’usage d’apprentissage automatique (pro-fond ou non). En effet l’apprentissage automatique atteint vite ses limites pour les applications sans cadre bien défini. Ces méthodes sont le plus souvent évaluées sur des données en monde fermé (nombre limité de classes). Que se passe-t-il lorsqu’une classe inconnue est vue ? C’est le problème du zero-shot learning (cf section 2.3.1). Ces approches peuvent paraître appropriées au premier abord, mais souffrent d’un gros défaut : elles supposent que les classes vues lors de la phase de test n’ont pas été vues lors de l’entraînement. Une hypothèse difficilement atteignable en pratique ! Deux autres problèmes se posent ensuite : l’ajout continu de nouvelles classes et la mise à l’échelle.

L’apprentissage profond est toutefois un outil intéressant via leTransfert learning: apprendre sur un grand ensemble de données afin d’obtenir une représentation générique exploitable sur des do-maines différents avec peu de données disponibles.

Enfin, l’accent est mis sur la structure générale de notre modèle et non sur les différents pro-cessus secondaires nécessaires en pratique. Par exemple, considérons la segmentation de scène non

3. Plus exactement, l’environnement connu du robot

4. Dans le sens d’univers non borné, pas d’environnement extérieur

supervisée. Ce problème, difficile, est toujours un sujet actif de recherche. Nous proposons l’utili-sation de certaines méthodes, mais elles peuvent être remplacées avec l’évolution de l’état de l’art sans affecter le modèle dans sa globalité.

Notre architecture est composée de trois unités : Perception, Instance et Connaissance, repré-sentées à la figure 1.1.

En commençant par le bas de ce schéma, nous avons les entrées en langage naturel de haut niveau qui peuvent provenir d’un utilisateur ou de sources extérieures comme Internet. Elles peuvent se décomposer en trois principaux types : connaissances générales, informations sur des instances, ou requêtes (tâches). Ceci sera détaillé dans le chapitre 5. Cette entrée est naturellement liée au modèle de connaissance. A l’opposé (haut de la figure), il y a les entrées capteurs du robot avec par exemple ici un LIDAR et une caméra RGBD. Ces données sont directement exploitées par le modèle de perception. Le modèle d’instance va lui faire le pont entre ces deux modalités.

L’unité de connaissance, sujet du chapitre 3, est une représentation sémantique générale et in-temporelle de l’environnement sous forme de graphe ontologique. Celle-ci est initialement construite à partir de sources extérieures provenant d’Internet. Elle est basée sur l’ontologie WordNet [Mil95]

et enrichie de relations extraites de ses définitions. Elle peut être mise à jour automatiquement par l’analyse de données textuelles tirées d’Internet ou par des informations données par l’utilisateur.

Cette unité permet au robot de raisonner sur les concepts à travers la notion decontexte. Cela peut être la simple extension aux concepts parents/fils lorsque l’utilisateur emploie un terme mais en sous-entendant une spécialisation de celui-ci : Give me a knife signifie généralement Give me a table knifelors d’un repas. Le contexte sert également à désambiguïser des termes ayant plusieurs sens5 eg.fork (fourchette) etfork (fourche). Enfin, il intervient dans l’inférence d’objets dans une scène donnée. En effet, ce type d’inférence est typiquement basée sur la cooccurrence d’objets.

Hors, celle-ci n’est qu’une conséquence de l’existence d’un contexte commun plus ou moins expli-cite entre les entités composant une scène.

L’unité de perception est abordée au chapitre 4. C’est une représentation basée capteurs6 de l’environnement à l’instant courant. Elle traite les données capteurs bas niveau afin de structurer l’environnement en instances, que ce soit de manière passive (segmentation de scène non supervi-sée, suivi d’une instance connue) ou active (détection d’un objet précis).

L’unité d’instance représente l’ensemble des instances de l’environnement dont on connaît l’existence sous forme de graphe. C’est donc une représentation spécifique à l’environnement connu du robot sur une période de temps limitée. Une instance est définie selon chacune des modalités :

5. homographe

6. Dans notre cas, cela se limite à l’aspect visuelle et géométrique.

Id Type Args Status

0 SEARCH_CLASS Banana COMPLETED

1 SEARCH_INSTANCE My_cup IN_PROGRESS banana

cup container

handle is-a

has-a fruit

yellow prop is-a

Bring me a banana and my brown cup

Raw data Scene Seg. (LCCP)

Banana heatMap Cup heatMap

MaJ

Identi cation

Construction de connaissance

Tracking/

Localisation

Reconnaissance

My cup#001

Ht : o1 Observations O

o2ot

KFt:

Graph Gmy_cup

behind

banana#002

My cup

Cup Brown is-a prop

John is-a

belong-to

John

MaJ

Figure 1.1 – Structure générale de notre modèle global de représentation d’environnement une représentation géométrique (nuage de points 3D) / visuelle (vecteur de description image) et une représentation sémantique décrivant l’objet à partir des concepts du modèle de connaissance.

Les instances peuvent être initialement créées à partir d’une seule modalité : une détection du

mo-dèle de perception générera une instance avec une représentation sémantique vide.A contrario, les informations données en langage naturel commeMa tasse est rougegénéreront une instance définie sémantiquement mais sans représentation visuelle. Elle gère l’ajout/retrait/fusion/mise à jour d’ins-tance que ce soit par le biais du modèle de perception ou par des informations externes en langage naturel.

Enfin, on peut voir dans le schéma la présence d’un gestionnaire de tâches. La création de tâche est faite à partir de requête utilisateur egGive me my cupet le gestionnaire vérifie de manière asynchrone la complétion des tâches à mesure que le système évolue. Ceci sera abordé plus en détail dans la section 5.5. Les principaux processus reliant les unités et entrées entre elles ont également été notés sur la figure 1.1. Les passages du modèle d’instance au modèle de connaissance seront abordés dans le chapitre 5.

La suite de ce manuscrit est structurée de la façon suivante :

Le chapitre 2traite des différentes représentations d’environnements proposées dans la lit-térature robotique.

Le chapitre 3est consacrée à la définition et à la méthode de construction de notre modèle de connaissance sémantique.

Le chapitre 4 décrit la modalité visuelle de notre système. En particulier, elle se concentre sur l’analyse de propriétés des descripteurs image issus de couches intermédiaires de réseaux de neurones convolutifs.

Le chapitre 5est consacré aux processus entre les différentes unités du modèle : passage des données perceptuelles à la notion d’instance (section 5.4), des données sémantiques (modèle de connaissance et entrées utilisateurs) aux instances (section 5.2) et enfin le rattachement des instances au modèle de connaissance (section 5.3). La dernière section 5.5 détaille la représentation des tâches induites par les requêtes utilisateurs.

Le chapitre 6présente une validation expérimentale de l’implémentation de notre modèle.

Le chapitre 7est la conclusion de cette thèse.