Les exemples contradictoires sont des entrées conçues pour tromper les modèles d'IA, généralement en introduisant de petites perturbations, souvent imperceptibles, dans des données légitimes, ce qui amène un modèle d'apprentissage automatique à mal classer ou à se comporter de manière incorrecte. Ces entrées exploitent les hypothèses statistiques qui sous-tendent la plupart des algorithmes d'apprentissage, lesquels s'attendent généralement à ce que les données d'entraînement et de test proviennent de la même distribution. En pratique, des adversaires peuvent intentionnellement fournir des données fabriquées qui violent cette hypothèse, entraînant des défaillances dans des applications à enjeux élevés telles que le filtrage du courrier indésirable, la sécurité informatique, la reconnaissance biométrique et la conduite autonome.
L'étude des exemples contradictoires relève du domaine plus large de l'apprentissage automatique contradictoire, qui examine à la fois les attaques contre les algorithmes d'apprentissage automatique et les défenses contre ces attaques. Les catégories d'attaques courantes incluent les attaques d'évasion, où les entrées sont modifiées au moment de l'inférence pour éviter la détection ; les attaques d'empoisonnement des données, où les données d'entraînement sont corrompues ; les attaques byzantines, qui ciblent les systèmes d'apprentissage distribués ; et l'extraction de modèles, où un attaquant tente de voler ou de répliquer la fonctionnalité d'un modèle.
Développement historique
L'intérêt pour les exemples contradictoires est né des premiers travaux sur le filtrage du courrier indésirable. Lors de la conférence MIT Spam en janvier 2004, John Graham-Cumming a démontré qu'un filtre anti-spam basé sur l'apprentissage automatique pouvait être utilisé pour vaincre un autre filtre de ce type en apprenant automatiquement quels mots ajouter à un courriel indésirable pour qu'il soit classé comme non-spam. Plus tard cette année-là, Nilesh Dalvi et ses collègues ont noté que les classificateurs linéaires utilisés dans les filtres anti-spam pouvaient être vaincus par de simples attaques d'évasion, car les spammeurs inséraient des « bons mots » dans leurs courriels. Vers 2007, certains spammeurs ont ajouté du bruit aléatoire pour brouiller les mots dans le spam d'images afin de contourner les filtres basés sur l'OCR.
En 2006, Marco Barreno et d'autres ont publié « Can Machine Learning Be Secure? », décrivant une large taxonomie des attaques. Jusqu'en 2013, de nombreux chercheurs espéraient que des classificateurs non linéaires tels que les machines à vecteurs de support et les réseaux de neurones pourraient être robustes face aux adversaires. Cet espoir a diminué lorsque Battista Biggio et d'autres ont démontré les premières attaques basées sur le gradient contre de tels modèles en 2012 et 2013. À partir de 2014, Christian Szegedy et d'autres ont montré que les réseaux de neurones profonds pouvaient être trompés par des adversaires, en utilisant encore des méthodes basées sur le gradient pour élaborer des perturbations contradictoires.
Mécanismes et propriétés
Les exemples contradictoires sont généralement générés en ajoutant une petite perturbation, soigneusement calculée, à une entrée. Pour les classificateurs d'images, cela implique souvent de modifier les valeurs des pixels de manière imperceptible pour les humains, mais qui amène le modèle à produire une classe différente avec une grande confiance. Les méthodes basées sur le gradient, telles que la méthode du signe du gradient rapide, utilisent la fonction de perte du modèle pour déterminer la direction de la perturbation qui maximise l'erreur de classification.
Des recherches supplémentaires ont révélé que les exemples contradictoires sont plus difficiles à produire dans des environnements non contrôlés, car des contraintes environnementales telles que de petites rotations ou de légers changements d'éclairage peuvent annuler l'effet du bruit. Par exemple, une image contradictoire qui trompe un modèle dans des conditions de laboratoire peut perdre son caractère contradictoire lorsqu'elle est vue sous un angle différent ou sous un éclairage différent. Cette observation a des implications pour les attaques dans le monde réel, où les conditions physiques introduisent de la variabilité.
Les chercheurs de Google Brain, dont Nick Frosst, ont souligné qu'il est souvent plus facile de faire manquer les panneaux d'arrêt aux voitures autonomes en retirant physiquement le panneau lui-même plutôt qu'en créant des exemples contradictoires. Frosst a également fait valoir que la communauté de l'apprentissage automatique contradictoire suppose à tort que des modèles entraînés sur une certaine distribution de données fonctionneront bien sur une distribution complètement différente. Il a suggéré d'explorer de nouvelles approches de l'apprentissage automatique qui intègrent des caractéristiques plus proches de la perception humaine.
Démonstrations notables
Plusieurs démonstrations très médiatisées ont illustré la puissance des exemples contradictoires. Des chercheurs ont montré que changer un seul pixel dans une image pouvait tromper les algorithmes d'apprentissage profond. Dans un autre cas, une tortue jouet imprimée en 3D avec une texture conçue pour faire classer l'IA de détection d'objets de Google comme un fusil, quel que soit l'angle sous lequel la tortue était vue. La création de la tortue n'a nécessité que la technologie d'impression 3D disponible dans le commerce à faible coût.
Une image de chien modifiée par machine s'est révélée ressembler à un chat à la fois pour les ordinateurs et les humains, et une étude de 2019 a rapporté que les humains peuvent deviner comment les machines classeront les images contradictoires. Des chercheurs ont également découvert des méthodes pour perturber l'apparence d'un panneau d'arrêt afin qu'un véhicule autonome le classe comme un panneau de fusion ou de limitation de vitesse. Dans un incident séparé, McAfee a attaqué l'ancien système Mobileye de Tesla, le trompant pour qu'il conduise à 80 km/h au-dessus de la limite de vitesse en ajoutant une bande de ruban adhésif noir de cinq centimètres sur un panneau de limitation de vitesse.
Des motifs contradictoires sur des lunettes ou des vêtements conçus pour tromper les systèmes de reconnaissance faciale ou les lecteurs de plaques d'immatriculation ont conduit à une industrie de niche de « vêtements de rue furtifs ». Ces exemples contradictoires physiques démontrent que le phénomène s'étend au-delà des entrées numériques.
Applications en sécurité et logiciels malveillants
Les exemples contradictoires ont des implications significatives pour la sécurité informatique. Dans la détection de logiciels malveillants, des chercheurs ont proposé des méthodes de génération de logiciels malveillants contradictoires qui élaborent automatiquement des binaires pour échapper aux détecteurs basés sur l'apprentissage tout en préservant la fonctionnalité malveillante. Des attaques basées sur l'optimisation telles que GAMMA utilisent des algorithmes génétiques pour injecter du contenu bénin, comme du remplissage ou de nouvelles sections PE, dans des exécutables Windows. Cette approche encadre l'évasion comme un problème d'optimisation sous contraintes qui équilibre le succès de la mauvaise classification avec la taille de la charge utile injectée, et elle a montré une transférabilité aux produits antivirus commerciaux.
Des travaux complémentaires utilisent des réseaux antagonistes génératifs (GAN) pour apprendre des perturbations dans l'espace des caractéristiques qui amènent les logiciels malveillants à être classés comme bénins. Mal-LSGAN, par exemple, remplace la perte GAN standard par un objectif des moindres carrés et des fonctions d'activation modifiées pour améliorer la stabilité de l'entraînement. Cette méthode produit des exemples de logiciels malveillants contradictoires qui réduisent considérablement les taux de vrais positifs sur plusieurs détecteurs.
Les algorithmes de clustering, utilisés dans les applications de sécurité pour l'analyse des logiciels malveillants et des virus informatiques, sont également vulnérables. Ces algorithmes visent à identifier les familles de logiciels malveillants et à générer des signatures de détection spécifiques, mais les adversaires peuvent manipuler les entrées pour échapper au clustering ou induire en erreur les signatures résultantes.
Attaques audio et physiques
Les attaques contradictoires ne se limitent pas aux images. Des chercheurs ont créé des entrées audio contradictoires qui déguisent des commandes destinées aux assistants intelligents dans un audio d'apparence bénigne. Ces attaques peuvent être utilisées pour injecter des algorithmes dans un système cible ou déclencher des actions non intentionnelles. Une littérature parallèle explore la perception humaine de tels stimuli, examinant si les personnes peuvent détecter ou comprendre les commandes cachées.
Dans le domaine de la reconnaissance d'actions humaines, les attaques contradictoires émergentes sont très efficaces. Ces systèmes sont utilisés pour la surveillance, les véhicules autonomes et la surveillance en interne. Les attaquants introduisent du bruit dans la représentation des caractéristiques humaines pour tromper les systèmes de reconnaissance. Notamment, ces attaques ne nécessitent pas nécessairement l'accès aux systèmes de reconnaissance eux-mêmes, et elles peuvent être imperceptibles pour les utilisateurs humains.
Défenses et atténuations
Se défendre contre les exemples contradictoires reste un défi ouvert. Des techniques telles que l'entraînement contradictoire, où les modèles sont entraînés sur des exemples contradictoires pour améliorer la robustesse, ont montré un certain potentiel mais réduisent souvent la précision sur les entrées propres. D'autres approches incluent le prétraitement des entrées, la détection des entrées contradictoires et des défenses certifiées qui fournissent des garanties formelles.
Bien que l'apprentissage automatique contradictoire continue d'être fortement ancré dans le milieu académique, de grandes entreprises technologiques telles que Google, Microsoft et IBM ont commencé à organiser la documentation et les bases de code open source pour permettre à d'autres d'évaluer concrètement la robustesse des modèles d'apprentissage automatique et de minimiser le risque d'attaques contradictoires. Ces ressources visent à normaliser les méthodes d'évaluation et à encourager le développement de systèmes plus résilients.
Empoisonnement des données et protections créatives
Une menace connexe est l'empoisonnement des données, où les attaquants corrompent les données d'entraînement pour influencer le comportement du modèle. En 2023, des chercheurs de l'Université de Chicago ont publié un filtre d'empoisonnement des données appelé Nightshade. Il a été créé pour être utilisé par des artistes visuels sur leurs œuvres afin de corrompre l'ensemble de données des modèles texte-à-image, qui récupèrent généralement leurs données sur Internet sans le consentement du créateur de l'image. Cet outil représente une utilisation défensive des techniques contradictoires, permettant aux individus de protéger leur propriété intellectuelle contre une utilisation non autorisée dans l'entraînement de modèles d'IA générative.
Recherche en cours et orientations futures
Le domaine des exemples contradictoires continue d'évoluer, les chercheurs explorant à la fois de nouveaux vecteurs d'attaque et des mécanismes de défense plus robustes. L'hypothèse selon laquelle des modèles entraînés sur une certaine distribution de données fonctionneront bien sur une distribution complètement différente est de plus en plus remise en question. Certains chercheurs préconisent une nouvelle approche de l'apprentissage automatique qui imite mieux la perception humaine, généralement plus robuste aux petites perturbations.
Alors que les modèles d'apprentissage profond sont déployés dans des applications plus critiques, comprendre et atténuer les exemples contradictoires devient de plus en plus important. L'interaction entre l'attaque et la défense stimule la recherche en cours, chaque nouvelle défense inspirant souvent des attaques plus sophistiquées. L'objectif ultime est de créer des systèmes d'apprentissage automatique qui sont non seulement précis sur des données propres, mais aussi fiables en présence d'adversaires.