ipopba - stock.adobe.com
IA et systèmes critiques : l’industrie française en quête de confiance
Lors d’un webinaire organisé par l’Académie des technologies le 20 janvier, certains membres de confiance.ai ont partagé les avancées du programme R&D. Les difficultés rencontrées sont connues des data scientists, mais prennent une tout autre ampleur au regard de la criticité des systèmes qui embarquent des composants d’IA.
Que devient le programme confiance.ai ? Lancée officiellement en juillet 2021, confiance.ai est une initiative née en 2020 dans le cadre du Grand Défi « Sécuriser, certifier et fiabiliser les systèmes fondés sur l’intelligence artificielle », chapeauté par l’État français et dirigé par Julien Chiaroni au sein du Secrétariat général pour l’investissement (SGPI).
Confiance.ai est le pilier technologique de ce « défi ». « C’est sans doute le plus gros programme de R&D européen consacré à l’IA, avec ses 45 millions d’euros de financement répartis sur quatre ans », affirme le directeur, non sans une pointe de fierté dans la voix.
Le programme administré par l’IRT SystemX réunissait à l’origine 13 partenaires académiques et industriels : Air Liquide, Airbus, Atos, Naval Group, Renault, Sopra Steria, Safran, Thales, Valeo, le CEA, l’INRIA et les IRT Saint Exupéry et SystemX. Selon le directeur du Grand Défi IA, confiance.ai rassemble aujourd’hui plus de 40 partenaires, les nouveaux venus étant majoritairement des startups. Au total, 150 personnes participent à l’initiative.
Mais cela ne dit pas grand-chose des missions de confiance.ai.
« [Confiance.ai] se concentre sur l’ingénierie de la donnée, de la connaissance, de l’algorithmie (sic) et du système pour essayer de construire des méthodes et des outils afin de baliser les processus de développement », rappelle Julien Chiaroni lors du webinaire de l’Académie des technologies.
Un framework générique pour l’IA des systèmes embarqués
Ainsi, confiance.ai met au point un cadre de développement haut niveau capable de répondre aux exigences des industriels et des régulateurs.
Morayo Adedjouma, ingénieure et chercheuse au CEA, est responsable du projet IVVQ (intégration, vérification, validation et qualification). « Nous avons démarré sur les activités de qualification et de mise en conformité des processus. L’un de nos objectifs principaux est de définir un framework d’ingénierie permettant de supporter le cycle de vie du développement d’un système critique intégrant des composants IA ».
Pour cela, il faut identifier toutes les activités d’ingénierie « nécessaires et importantes », cela « inclut l’ingénierie des systèmes, la sécurité, la cybersécurité, mais également les interactions avec les humains et le data engineering », liste Morayo Adedjouma.
Puis, à chacune de ces étapes, l’ingénieure estime qu’il convient d’incorporer des métriques et des analyses pour évaluer le niveau de confiance dans ces activités, les risques qu’elles induisent et les moyens de mitigation potentiels. Cette approche est courante dans le développement de systèmes critiques, mais « il faut pouvoir prendre en compte les spécificités de l’IA ».
Cela implique de modéliser les parties prenantes, les items produits lors de ce cycle, ainsi que les méthodes et les outils qui composent cette chaîne complexe.
Pour mener à bien cette mission, confiance.ai a besoin de s’appuyer sur des projets bien réels de l’industrie. « Les cas d’usage des industriels nous permettent à la fois d’assurer le développement des outils et des méthodes et de prouver la généricité sur d’autres cas d’usage », indique Julien Chiaroni.
Jusqu’alors, les participants n’avaient pas véritablement fait part des études en cours. Entre 2020 et 2021, sept projets portés par Thales, Safran, Air Liquide, Renault, Valeo et Airbus ont vu le jour.
Air Liquide tente ainsi de prévoir la demande en gaz et de suivre l’efficacité énergétique d’une de ses usines à partir de séries de données chronologiques. Renault et Safran se servent de la computer vision pour réaliser des inspections visuelles. Le premier mène un projet d’inspection des soudures sur ses véhicules, le second ne dévoile pas la teneur exacte du cas d’usage.
Valeo conçoit lui aussi un modèle basé sur la vision par ordinateur pour interpréter la profondeur dans une image 2D. Ce projet de recherche doit aider à améliorer le système de conduite autonome de l’équipementier automobile.
L’avionneur Airbus a mis au point un modèle de substitution (surrogate model) conçu pour théoriser un système aérien de détection et d’évitement de collisions (ACAS XU).
Enfin, Thales met au point un système de détection d’objets s’appuyant sur des images satellites. Celui-ci permet, entre autres, de connaître la position d’un camion sur le tarmac d’un aéroport.
IA : cerner les difficultés des industriels
Ces projets à la « criticité faible » ont permis d’identifier différentes problématiques spécifiques au développement de l’IA dans l’industrie.
L’un d’entre eux concerne la confiance dans les jeux de données d’entraînement. « Pendant quelques années, l’on s’est beaucoup concentrés sur les étapes d’entraînement et de validation des modèles, mais les phases de traitement des données en amont étaient un peu sous-estimées », déclare Flora Dellinger, Machine Learning Software engineer chez Valeo. « C’est en particulier lié au fait que dans le monde académique, les chercheurs s’appuient sur des bases de données publiques et ne se confrontent pas réellement à l’acquisition, la préparation et la sélection des données ».
Flora DellingerMachine Learning Software Engineer, Valeo
Or comme le rappelle l’ingénieure logiciel, ce n’est pas du tout le cas dans le monde industriel. « Nous sommes obligés d’acquérir nos propres données pour des raisons de confidentialité, mais surtout pour répondre à nos cas d’usage spécifiques », précise-t-elle.
Ainsi, un capteur placé sur un prototype de voiture autonome peut recueillir beaucoup de données, « mais lesquelles choisir ? », s’interroge Flora Dellinger. « Nous n’allons pas toutes les annoter, lesquelles sont les plus pertinentes à conserver dans nos jeux de données pour entraîner nos modèles ? Finalement, le jeu ou la base de données, en quoi est-elle représentative du modèle que l’on souhaite développer et surtout des conditions opérationnelles de notre composant IA ? ».
Puis il y a la question de la fiabilité des données. Dans le cadre de l’entraînement d’un modèle de computer vision, l’utilisation de plusieurs centaines de milliers d’images est la norme. « Comment s’assurer de la qualité de l’image en elle-même, mais aussi de l’annotation associée ? », poursuit-elle.
Pour répondre à ces questions, Flora Dellinger participe à un projet de confiance.ai visant à améliorer la confiance dans le cycle de vie des données. « Nous voulons faire en sorte de ne pas nous limiter à la prise en compte des données comme entrées, mais de les mettre en relation avec le domaine opérationnel du composant IA ».
Ce domaine opérationnel correspond à la définition des conditions réelles dans lesquelles un modèle de machine learning ou de deep learning sera utilisé. Par exemple, un véhicule autonome doit pouvoir rouler sur des routes sèches ou mouillées, mais ne pas démarrer sur des chaussées enneigées. « Il faut construire les jeux de données suivant le domaine opérationnel : dans les faits, l’on peut acquérir énormément de données, si l’on ne le fait pas de manière guidée et intelligente, l’on n’arrivera jamais à couvrir les cas d’usage que l’on souhaite construire ».
Flora DellingerMachine Learning Software Engineer, Valeo
Cela passe par la création d’une plateforme de gestion de données permettant de concevoir des jeux de données fiables liés aux cas d’usage finaux, en s’appuyant sur des métriques clairement définies. « Dans le monde industriel, il y a un vrai besoin de ce côté-là, mais il n’existe au mieux que des bribes de méthodes », déplore la Machine Learning Software engineer.
Généraliser le principe d’Operational Design Domain
Comment ? En tentant de généraliser le principe d’Operational Design Domain (ODD), une méthode d’ingénierie spécifique au développement de systèmes de conduite autonome visant à décrire les conditions dans lesquelles un véhicule autonome peut fonctionner en toute sécurité. « Ensuite, il est nécessaire de faire dialoguer ce domaine opérationnel avec d’un côté le monde réel dans lequel on va acquérir les données et intégrer notre composant IA et de l’autre le monde synthétique », ajoute-t-elle.
En clair, il faut pouvoir prendre en compte les données générées depuis un logiciel de simulation et celles produites par l’IA. « Le domaine synthétique est très intéressant pour nous, car l’on peut s’assurer de la qualité et de la fiabilité des données. C’est un domaine que nous pouvons contrôler, par exemple en spécifiant les conditions météorologiques et les situations de conduite », affirme Flora Dellinger. Dans l’aéronautique, ce monde synthétique serait très important pour le développement de systèmes de pilotage autonome, car il est très difficile d’obtenir des données en conditions réelles.
Cet ODD généraliste doit donner lieu à un langage de spécification du domaine opérationnel permettant de couvrir tout type de données.
Mais une méthode d’ingénierie ne suffira pas, estime-t-elle. « Il est important d’avoir des outils afin de pouvoir analyser, préparer et sélectionner les données permettant de vérifier que l’on couvre bien le domaine opérationnel. La plateforme est ainsi composée d’outils open source de préparation, d’analyse, d’annotation et de sélection de données à partir de requêtes.
« En parallèle, nous avons besoin de méthodes pour générer et augmenter des données avec de la simulation ».
Les membres de confiance.ai ont déjà sélectionné plusieurs startups en décembre 2021 proposant des outils de génération de données synthétiques dans le cadre d’un AMI (Appel à Manifestation d’Intérêt).
Car les données issues des simulations permettent d’entraîner les algorithmes sur des cas complexes, souvent rares ou accidentels dans le monde réel, par exemple la présence d’obstacles sur une voie de chemin de fer.
Rodolphe Gelin, expert pour le groupe Renault et ancien directeur de recherche pour Softbank Robotic Europe, lui s’occupe du projet de supervision des composants à base d’IA pour le consortium confiance.ai. « Nous essayons de définir la manière d’évaluer et de qualifier les performances et la robustesse d’un système d’IA », indique-t-il.
Il s’agit en premier lieu de savoir si les résultats obtenus par un algorithme sont bons ou non. « Par exemple chez Renault, nous avons développé un système pour évaluer la charge d’un véhicule. Les essais que nous avons effectués ont finalement montré que le système considérait que la charge du véhicule était plus élevée de nuit que de jour. C’est parce qu’au cours d’une journée d’essai, nous ajoutions des poids dans le véhicule. Ce type de biais peut être détecté par des outils et des méthodes d’explicabilité ».
Un problème similaire peut intervenir avec un véhicule autonome incapable d’éviter certains obstacles comme un panneau publicitaire ou un conteneur tombé sur la route, car il n’aura pas été entraîné à les détecter au niveau du sol.
La calibration, source potentielle de confiance
Dans ce cas-là, il s’agit de fournir en sortie des explications qu’un développeur peut interpréter pour détecter s’il y a des biais dans la conception du modèle ou dans les jeux d’entraînement. Pour cela, il convient de rendre visible les poids de l’algorithme qui influe le plus dans la prise de décision.
Par exemple, le système de vérification de soudures de Renault doit entourer le point de soudure et indiquer s’il est bon ou mauvais. « C’est un moyen de donner confiance aux opérateurs qui peuvent vérifier eux-mêmes si le système d’IA a sélectionné la bonne zone ».
Mais dans d’autres cas, le résultat délivré est une valeur numérique. « Dans quelle mesure peut-on lui faire confiance ? », s’interroge Rodolphe Gelin. « Nous allons adapter et utiliser des systèmes de calibration en observant le taux d’erreur du modèle lors de son entraînement afin de prédire l’importance de l’erreur à l’avenir ».
Rodolphe GelinExpert, Renault
Un tel dispositif permettrait d’intégrer une marge d’erreur influant directement sur la prise de décision automatique d’un système. Si la marge d’erreur est trop importante, une stratégie secondaire pourrait être mise en place. Dans le cas du système détection d’objets sur des images satellites, il s’agit d’évaluer si le modèle a reconnu la bonne classe d’images, par exemple s’il n’a pas confondu une voiture et un camion.
Enfin, l’évaluation de la robustesse revient à se poser la question : « Pour une petite variation des données en entrée, de combien varie le résultat en sortie ? ». Rodolphe Gelin perçoit une première application liée aux qualités des images en entrée des modèles de computer vision. Si une image est floue, pixellisée, légèrement altérée, comment s’assurer que le modèle prenne la bonne décision ? Là encore les données synthétiques seront convoquées pour générer des jeux de données bruitées, afin de réentraîner un réseau de neurones dans ces cas spécifiques. Mais c’est aussi un moyen d’optimiser la prise de décision en incluant une fonctionnalité pour améliorer l’évaluation de la confiance dans les données en entrée.
Mais les travaux des membres de confiance.ai ne concerneront pas seulement la computer vision. Une douzaine de cas d’usage en cours de sélection seront consacrés au NLP, au traitement des données time series et à la symbolique de l’IA (l’ensemble des méthodes d’ingénierie de l’IA). Airbus, Thales, Atos, Renault et Naval Group ont soumis différents projets allant de la détection d’anomalies, en passant par le traitement des données textuelles d’homologation, au développement d’un train autonome.
« Au cours de cette deuxième année, nous allons travailler davantage sur l’amélioration de la confiance dans les composants IA, puis sur la caractérisation, la validation, la supervision des applications, jusqu’à l’optimisation et le déploiement des modèles d’IA sur des cibles embarquées », résume Julien Chiaroni. « Enfin, nous avons deux grands axes, l’un sur la méthode et les indicateurs clés de la confiance dans l’IA, l’autre sur la certification de systèmes et leur interopérabilité. »