L'IA n'est pas sécurisée !

Écrit par Wilfried Kirschenmann, le 06 février 2018

Le 28 juillet, une lettre ouverte a été adressée aux dirigeants du monde par les plus grand chercheurs en intelligence artificielle et en robotique ainsi que par des personnalités (dont Elon Musk ou Stephen Hawking). Ils demandent l’interdiction des armes autonomes. Les arguments les plus importants sont d’ordre éthique, justement parce que l’arme autonome ne peut en avoir et donc se poser les questions de l’éventuel sacrifice avant de tirer. Toutefois, ici, c’est un argument technique que j’aimerais creuser.

Du point de vue de l'impact économique et sociétal, la grande avancée des dernières années en IA concerne les système apprenants. Ces systèmes sont entrainés pour reconnaitre, classifier, voire décider. Il existe alors différents moyens d'amener ces systèmes à ma reconnaitre ce qui leur est présenté. Le moyen le plus en vogue consiste à entraîner un réseau de neurones dit « profond », c’est-à-dire disposant de plusieurs couches superposées.

Prenons ici l'exemple d'un classifieur d'images. Les plus usités sont aujourd'hui basés sur des « réseaux de neurones convolutifs dits profonds » (Deep Convolutive Neural Network ou CNN en anglais). Il s'agit de réseaux de neurones contenant plusieurs couches de convolution. Si la mise au point n'a pas été triviale, l'idée est relativement simple. La première couche apprend à reconnaître des éléments remarquables dans l'image comme des arêtes verticales, horizontales, obliques ou des coins. Pour ce faire, un filtre convolutif est appliqué sur l'ensemble de l'image. Il s'agit donc de descripteurs très locaux. La seconde couche cherche à identifier des éléments remarquables dans la première couche. Ils correspondent dans l'image de départ à des courbes, des droites ou des formes plus complexes. Chaque couche cherche ainsi des éléments particuliers très locaux dans la couche précédente, ces éléments correspondant à des formes ou textures de plus en plus complexes.

Il y a deux choses à retenir :

  • Plusieurs images différentes peuvent donner les mêmes résultats sur la première couche. C'est également vrai pour les suivantes.
  • C'est une accumulation de détails permet au réseau de neurones de reconnaître un élément sur une photo et c'est uniquement dans les couches supérieures que l'information globale émerge

Dès lors, on comprend comment une image peut être altérée de façon imperceptible pour nous mais induire en erreur un réseau de neurone : il suffit de modifier quelques détails très locaux de sorte à ce que les résultats dans premières couches et donc les couches de haut niveaux soient différents. Ces images sont appelées des perturbations par les scientifiques du domaine. La figure suivante illustre comment l'ajout d'une perturbation savamment généré peut induire en erreur. Il est intéressant de noter que cette perturbation a les caractéristiques d’un bruit blanc et ne saurait être différencié par traitement d’image.

Un autre exemple plus proche de la thématique sécurité de cet article : ces méthodes peuvent être utilisées pour induire en erreur un système de reconnaissance facial. Ainsi, une paire de lunettes au goût discutable peut-elle permettre à une personne d’usurper une identité. Ses particularité locales induisent au fil des couches une confusion suffisamment importante pour que le réseau de neurones croie reconnaitre l’autre personne.

En haut : des chercheurs avec des lunettes trompeuses En bas : la personne dont ils ont pris l'identité
Source: Mahmood Sharif, Sruti Bhagavatula, Lujo Bauer, and Michael K. Reiter

Ces quelques exemples illustrent les questions de sécurité qui peuvent se poser avec la généralisation de systèmes s'appuyant sur des réseaux de neurones.

Dans le cas des armes autonomes, que se passerait-il si des ennemis décidaient de faire passer une école maternelle en camp militaire ? Ce serait faisable simplement en tendant une bâche avec des motifs du type de ceux retrouvés sur les lunettes ci-dessus.