Fiabilité, performance et autonomie des utilisateurs : trois défis majeurs pour l'IA

En utilisant les technologies Ingedata, Marklogic, PostGreSQL, Docker et des développements en Python, Earthcube analyse les images par IA.
Publicité« Reconnaître avec 85 % de fiabilité des chats sur de belles images bien contrastées, c'est très facile, mais atteindre les 90 à 95 % sur des données complexes voire de qualité médiocre, c'est deux ans de R&D » avertit Renaud Allioux, CTO et co-fondateur de la start-up Earthcube. Cette société développe des outils d'analyse d'images pour des besoins critiques, notamment dans la défense (analyse d'images satellites...) mais aussi dans l'industrie (analyse de photographies de pipelines...). Ces secteurs ne peuvent supporter des taux d'erreur élevés.
Mais que change le « besoin critique » lorsque l'on fait de l'analyse d'image par IA ? Pour Renaud Allioux, « il y a trois impacts essentiels ». Le premier est une nécessité de performances élevées, impliquant l'impossibilité d'utiliser des solutions traditionnelles orientées vers d'autres usages. Plus contraignant encore est l'impératif de fiabilité. « La fiabilité est la grande difficulté lorsque l'on passe de l'expérimentation à l'usage réel et qui explique beaucoup des abandons de projets en matière d'IA » observe Renaud Allioux. Pour cela, l'entreprise doit totalement maîtriser le code de sa plate-forme et ne peut donc pas se contenter d'assembler des briques de frameworks. Renaud Allioux relève : « les bugs peuvent être dus soit à du code de framework (comme Keras et Tensorflow), soit à l'intégration des modules. Par exemple, nous avons eu jadis un soucis de différence de scoring entre l'entraînement et la prédiction. »
Le besoin critique avec des données sensibles, un double souci pour l'apprentissage
Enfin, le troisième impact du besoin critique, et peut-être le plus complexe, est la nécessité de l'autonomie de l'entreprise utilisatrice. En effet, pour entraîner une IA, il est en général nécessaire de labelliser a priori les données. Or, quand les images sont sensibles, elles ne peuvent pas sortir de chez le client. De ce fait, l'IA ne peut pas être entraîné sur des données réelles chez le prestataire, d'où des problèmes de performance. « Ce biais peut être réduit puis l'utilisateur doit pouvoir adapter sa propre base en travaillant sur ses propres images » spécifie Renaud Allioux.
Les outils développés par Earthcube utilisent une série de technologies assez classiques mais avec une recherche importante afin de garantir la maîtrise du code nécessaire pour couvrir les besoins critiques. Les données de base sont ainsi stockées, selon leur nature, dans PostGIS (une déclinaison de PostGreSQL destinée aux données géographiques) et dans Marklogic (NoSQL, pour les images). Les algorithmes sont développés en Python et les IHM en javascript. Le tout fonctionne sur un environnement Linux/Docker. Renaud Allioux souligne : « Docker est très utile en IA pour répliquer et déployer des systèmes complexes parfaitement identiques ». Pour ses besoins propres, notamment de développement, Earthcube a recours à des clouds variables selon la sensibilité des données traitées (AWS, Google, OVH, Scaleway...) mais aussi des serveurs locaux.
PublicitéLe défi de la labellisation des images
Earthcube travaille également en réel partenariat avec Ingedata sur l'alimentation en données de ses outils. La technologie d'Ingedata est ainsi utilisée pour construire des bases de données, vérifier les performances de reconnaissance et d'identification ainsi que vérifier la variété et la qualité des images. Earthcube a ainsi construit une plate-forme commune avec Ingedata où ce dernier peut intervenir en direct lorsque leur propre outil évolue. Mais c'est bien la plate-forme commune qui traite les images hébergées chez Earthcube et qui ne sortent donc pas.
Lorsque la plate-forme Earthcube est déployée chez un client, c'est souvent sur un environnement qui n'est même pas connecté à Internet pour des raisons de sécurité. Donc le cloud public est évidemment complètement exclu. Il peut s'agir de plates-formes de surveillance ou de détection d'objets ou de plates-formes plus complètes permettant au client de faire évoluer les algorithmes. « Aujourd'hui, nous sommes capables, d'une part, de fournir des moyens de surveillance évolués avec des performances proches de l'humain voire supérieures (par exemple pour reconnaître un modèle d'avion sur une image satellite), d'autre part, de mettre en production rapidement des technologies très évoluées grâce à notre framework avec une maîtrise de l'explication des résultats et des éventuels problèmes » se réjouit Renaud Allioux.
Usage de réseaux de capsules
Classiquement, les IA de reconnaissance d'images fonctionnent sur du réseau de neurones. Earthcube utilise les réseaux de capsules (capsule networks ou CapsNets), « le nouveau paradigme depuis deux ans en matière d'IA » selon Renaud Allioux. Les réseaux de capsules délivrent non pas un résultat binaire unique mais un groupe de données ayant un sens plus riche et contextuel, ce qui facilite l'apprentissage de l'IA. « Mais c'est très complexe » avertit Renaud Allioux.
A l'heure actuelle, Earthcube est capable de mettre en production un réseau de capsules en deux mois grâce à sa plate-forme garantissant une totale maîtrise du code et à ses équipes d'experts. Pour Renaud Allioux, il faut entre 15 et 30 tests en parallèle, gérés de façon industrielle et standardisée, pour obtenir un flux de traitement de données opérationnel au niveau de performance attendu.
Article rédigé par

Bertrand Lemaire, Rédacteur en chef de CIO
Commentaire
INFORMATION
Vous devez être connecté à votre compte CIO pour poster un commentaire.
Cliquez ici pour vous connecter
Pas encore inscrit ? s'inscrire