Pour un responsable de la sûreté de fonctionnement d’un système intégrant de l’IA, une des préoccupations légitimes est son manque de robustesse. L’instabilité des systèmes d’IA et plus particulièrement des systèmes à base d’apprentissage, a été illustrée de façon remarquable par les attaques adverses qui arrivent à tromper un réseau de neurones capable de reconnaître des animaux : en ne changeant que quelques pixels sur la photo d’un panda, l’attaque adverse arrive à faire changer la décision du réseau qui va désormais reconnaître un gibbon. Pourtant, notre œil humain voit toujours un panda.

Figure 1 : Attaque adverse d’une fonction de reconnaissance d’animaux

 

Cette illustration de la fragilité de l’IA est assez extrême (les perturbations apportées aux entrées ont été calculées avec le plus grand soin par un réseau de neurones spécifiquement conçu à cet effet) et ne se rencontrera pas souvent dans des applications industrielles. De façon plus quotidienne, les systèmes de perception sont soumis à toutes sortes de perturbations (des « bruits ») qui peuvent mettre en défaut l’intelligence artificielle.

 

 

 

 

Garantir un système de perception fiable dans le temps

Pour illustrer les travaux faits sur la robustesse dans le programme Confiance.ai, nous allons utiliser le cas d’usage proposé par Renault sur la vérification de la qualité des soudures. Grâce à l’apprentissage, au cours duquel des bonnes et des mauvaises soudures lui ont été montrées, un réseau de neurones est capable de classifier si l’image qu’on lui présente est celle d’une soudure valide ou à retoucher.

 

Figure 2 : Classification des soudures

 

Lors de l’apprentissage, les images sont de bonne qualité, la caméra est bien réglée, en bon état et l’éclairage est bon : le système apprend sur des images non bruitées. Mais, au cours de la vie du système, la caméra va vieillir, s’abimer, se dérégler et les conditions d’éclairage vont changer. Comment garantir que le système de perception fonctionnera toujours aussi bien quand les conditions d’exploitation varieront ?

 

 

 

Bien décrire les variations de conditions d’exploitation

La première étape consiste à évaluer, avec le porteur du cas d’usage, dans quelle mesure les conditions d’exploitation peuvent varier : c’est l’ODD (Operational Domain Design). Tous les paramètres sont alors explorés : la luminosité, le déplacement de la caméra, le flou des images, des pixels qui ne répondent plus… Une fois ce domaine défini, des outils comme AIMOS (AI Metamorphism Observing Software) du CEA ou la méthode d’amplification développée par le LNE permettent de générer, à partir d’images réelles et de bonne qualité, tous les types de dégradation que le système pourra rencontrer au cours de son exploitation.

 

Figure 3 : Exemples de perturbations d’intensité croissante pouvant affecter les images

 

En faisant varier l’amplitude de l’attaque entre zéro (pas de perturbation) et une valeur maximum déterminée avec le porteur du cas d’usage, il est possible de voir varier la performance du modèle de classification réalisé par apprentissage.

Notamment grâce à AIMOS du CEA, il est possible de comparer la sensibilité aux bruits de différents modèles réalisant la même tâche. Sur la Figure 4 ci-dessous, six modèles développés par Renault (avec Auto ML ou « à la main ») ont été évalués par cette méthode quant à leur sensibilité à des modifications de luminosité allant du sous-exposé au surexposé. Si tous les modèles fonctionnent très bien (zéro erreur) lorsque la luminosité est naturelle, on voit leurs performances (évaluées ici par la précision) se dégrader plus ou moins vite quand on s’écarte de cette valeur centrale. Les performances restent bonnes dans l’absolu (80% de bonnes réponses alors que la valeur de luminosité a été baissé de 100) mais peuvent ne pas correspondre aux exigences de l’application.

 

Figure 4 : Comparaison de la sensibilité de différents modèles à la variation de la luminosité

Enrichir les données d’apprentissage grâce à des images bruitées artificiellement

Si les performances mesurées sur les modèles proposés ne correspondent pas aux exigences des ingénieurs qualité, il est possible de concevoir des modèles pour qu’ils résistent spécifiquement aux bruits qu’ils pourront subir lors de l’exploitation. Parmi les méthodes utilisables, celle du randomized smoothing consiste simplement à enrichir les données d’apprentissage avec des images bruitées. Le système, entrainé à fonctionner avec des données bruitées synthétiquement, donne alors des résultats d’une grande stabilité sur les données bruitées qu’il pourra rencontrer lors de son exploitation. Sur la Figure 5, on voit les résultats obtenus sur des modèles entrainés avec la méthode du randomized smoothing sur les mêmes perturbations que celles utilisées sur la Figure 4 . Si on voit que deux des modèles (vanilla laplace 0.1 et vanilla uniform 0.1) ont des résultats moins bons que le réseau développé par Renault (SVM NN), les trois autres sont complètement imperturbables aux perturbations (à tel point que leurs trois tracés se superposent à l’ordonnée 100%).

Le randomized smoothing peut donc donner des résultats très spectaculaires au prix d’un apprentissage plus lourd et aussi d’une inférence plus coûteuse car la méthode nécessite, pour chaque image à classifier d’en proposer de multiples copies bruitées qui permettront de calculer une moyenne qui sera le résultat final.

Figure 5 : Mesure de la robustesse de modèles entrainés par randomized smoothing

A retenir

Des méthodes existent pour évaluer et améliorer la robustesse de composants de perception à base d’Apprentissage Machine . Les méthodes d’évaluation peuvent s’appliquer à des modèles « boite noire » venant d’un fournisseur. Il est alors possible de lui imposer certaines performances en fonction de la nature et de l’intensité des bruits qu’il aura à tester. Cela nécessite pour le donneur d’ordre d’être capable de spécifier le domaine d’utilisation de son système (ODD). Dans le cas d’une boite blanche, si les données et le processus d’apprentissage sont connus, des méthodes comme le randomized smoothing permettent de générer des modèles robustes aux perturbations par conception mais au prix d’un apprentissage et d’un usage plus lourds qui devront être justifiés par l’exigence de l’application. 

Autres actualités
Portrait d’Adrien Le Coz – Doctorant de première année

Portrait d’Adrien Le Coz – Doctorant de première année

"Si je parviens à développer une méthode pour mieux définir le domaine de validité de modèles d'IA, cela permettra de mieux les comprendre et les évaluer ainsi que de mieux garantir leur bon fonctionnement pour des applications réelles.", Adrien Le Coz, doctorant au...

lire plus

Inscrivez-vous à la newsletter de Confiance.ai

pour en savoir plus sur les actualités du collectif et de l’IA de confiance

Centre de préférences de confidentialité

Analytics

Mesure d'audience

Google Analytics