CVPR 2019 : les grandes tendances en Computer Vision
CVPR 2019 : les grandes tendances en Computer Vision
Il y a un peu plus d’un mois, du 13 au 19 juin 2019, se tenait CVPR à Long Beach, proche de Los Angeles. Etienne, responsable scientifique de Neovision, y a assisté. Il nous a récemment fait part de ses retours et nous souhaitions vous en faire profiter au travers de cet article.
Après avoir élucidé ce qu’est CVPR, nous reviendrons sur les tendances fortes de cette édition 2019.
CVPR, c’est quoi ?
CVPR, pour Computer Vision and Pattern Recognition (Vision par ordinateur et reconnaissance de formes), est la plus grande conférence scientifique sur la Vision par Ordinateur. A côté de cela, un espace dédié aux entreprises leur permet de présenter leurs nouveaux produits mais aussi de recruter de nouveaux talents.
S’il ne s’agit pas là du seul événement centré sur la vision par ordinateur, présenter un papier à CVPR représente le Graal pour les chercheurs et doctorants du domaine. En atteste l’affluence, puisque l’événement draine plus de 9000 personnes chaque année.
L’audience est majoritairement composée de scientifiques issus des meilleures équipes de recherche mondiales, publiques comme privées. Nous retrouvons également de nombreuses sociétés de la tech venues présenter leurs dernières avancées technologiques telles que Tesla, Apple, Google, Uber, IBM, Lyft, Facebook ou encore Nvidia.
En parlant de papiers, environ 1300 ont été retenus et présentés cette année sur les quelques 5000 papiers soumis et étudiés par les critiques (reviewers) scientifiques.
Deux tendances qui se démarquent
Revenu en France, Etienne a pu faire un retour détaillé à tout l’équipe Neovision quant aux tendances identifiées à Long Beach. Ce dernier a notamment pu faire ressortir deux grandes tendances : la première concerne l’adaptation de domaines et donc l’utilisation de jeux de données variés pour l’apprentissage, la seconde, elle, tourne autour de l’intégration des graphes dans les réseaux de neurones.
L’adaptation de domaine
Si nous savons d’ores et déjà passer d’un jeu de données à un autre entre l’apprentissage et la mise en production d’une IA, la moindre différence entre les deux jeux entraîne systématiquement une baisse des performances du modèle.
Pourquoi ? Parce que les données utilisées lors de l’apprentissage ne sont pas représentatives des données qui seront ensuite analysées par le modèle. C’est pour cela qu’il convient, dans la mesure du possible, d’entraîner les algorithmes sur des données représentatives et réelles. Il est donc nécessaire de travailler assidûment sur les données avant de vouloir entraîner quelque algorithme qu’il soit.
Une partie de la solution pourrait avoir été trouvée avec les recherches concernant l’adaptation de domaine. L’adaptation de domaine répond à la problématique induite par l’apprentissage sur des données non -ou pas totalement – représentatives. Lorsque l’apprentissage se fait sur des données qui diffèrent des données observées, il est ensuite plus difficile de généraliser le modèle sur des données réelles.
Concrètement, l’adaptation de domaines permet d’améliorer les performances de transfert quand on passe d’un jeu de données à un autre. Les modèles deviennent donc plus généralisables. Prenons l’exemple d’une technologie de reconnaissance faciale. Nous pourrions entraîner les algorithmes sur des photos d’identité pour ensuite utiliser le modèle sur des selfies (les deux types de photos n’ont rien à voir, les premières sont normées, les autres non et sont sujettes à la déformation (en fonction de la lentille de votre smartphone notamment).
Ce domaine de recherche pourrait donc permettre de faciliter la création d’une IA. Les data scientists pourraient entraîner leurs algorithmes sur des données de synthèses ou publiques, souvent plus facile d’accès que les données réelles qu’ils souhaitent étudier. Il s’agit donc là d’une vraie avancée face au manque de données (problématique la plus fréquente).
En parlant de données représentatives, intéressons nous aux données générées (et donc de synthèse) par les GANs (Generative Adversorial Network : deux IA “s’affrontent” dans le but de créer les données les plus réalistes possibles). Ces dernières ont joui d’une belle visibilité. Etienne a d’ailleurs retenu les papiers Stylegan et Finegan et les place parmi les meilleurs papiers de l’édition. Ces papiers scientifiques permettraient de rendre plus contrôlable les GANs et amélioreraient la qualité des données générées. Ces progrès sur les GANs promettent des progrès futurs sur l’adaptation de domaine, qui pourra réutiliser les techniques développées pour les GAN.
Les réseaux de neurones passent aux graphes
Jusqu’à présent, les réseaux de neurones travaillaient principalement sur des données denses et structurées (images, tableaux de données, sons, etc.).
Toutefois, lorsqu’ils travaillent sur ce type de données, les réseaux de neurones ne reproduisent pas vraiment notre façon de comprendre le monde. Mais cela devrait quelque peu changer avec l’intégration des graphes.
Mais qu’est ce que cela veut bien dire ? Les graphes permettent de représenter des entités et les relations liant ces différentes entités. Ce que notre cerveau fait constamment. D’ailleurs, les modélisations humaines de nombreuses situations le prouvent allègrement (réseaux de connaissances, internet, chaîne alimentaire, modèles climatiques, etc).
une image, une photo, d’une salle où se trouve une fenêtre, une plante devant la fenêtre mais derrière une table, une chaise sous la table et une tasse sur la table. Si nous pouvions déjà détecter et reconnaître les différents objets sur la photo, il est difficile de comprendre les relations entre eux. Avec l’utilisation de graphes, nous pouvons expliciter les différentes relations entre les objets et donc mieux comprendre le contexte : la fenêtre est derrière toutes les entités, la plante se situe entre la fenêtre et la table, la table est posée sur le sol, tout comme la chaise et la plante, mais la chaise est aussi sous la table tandis que la tasse est posée sur la table.
Bien entendu, il ne s’agit là que d’un cas d’application. Nous ne pourrions tous les énumérer tant il en existe.