Les réseaux de neurones sont parfois appelés boîtes noires parce que, malgré le fait qu'ils peuvent surpasser les humains sur certaines tâches, même les chercheurs qui les conçoivent ne comprennent souvent pas comment ni pourquoi ils fonctionnent si bien.Mais si un réseau de neurones est utilisé en dehors du laboratoire, peut-être pour classer les images médicales qui pourraient aider à diagnostiquer les maladies cardiaques, comment le modèle fonctionne aide les chercheurs à prédire comment il se comportera dans la pratique.
Les chercheurs du MIT ont maintenant développé une méthode qui éclaire le fonctionnement interne des réseaux de neurones noirs.Modélisé du cerveau humain, les réseaux de neurones sont disposés en couches de nœuds interconnectés, ou «neurones», qui traitent les données.Le nouveau système peut produire automatiquement des descriptions de ces neurones individuels, générés en anglais ou une autre langue naturelle.
Par exemple, dans un réseau neuronal formé pour reconnaître les animaux dans les images, leur méthode pourrait décrire un certain neurone comme détectant des oreilles de renards.Leur technique évolutive est capable de générer des descriptions plus précises et spécifiques pour les neurones individuels que les autres méthodes.
Dans un nouvel article, l'équipe montre que cette méthode peut être utilisée pour auditer un réseau de neurones pour déterminer ce qu'il a appris, ou même modifier un réseau en identifiant puis en désactivant les neurones inutiles ou incorrects.
«Nous voulions créer une méthode où un praticien d'apprentissage en machine peut donner à ce système leur modèle et il leur dira tout ce qu'il sait sur ce modèle, du point de vue des neurones du modèle, dans le langage.Cela vous aide à répondre à la question fondamentale: «Y a-t-il quelque chose que mon modèle sait que je ne m'attendais pas à ce qu'il sache?» », Explique Evan Hernandez, étudiante diplômée du MIT Informatique et Laboratoire d'intelligence artificielle (CSAIL) et auteur principaldu papier.
Les co-auteurs incluent Sarah Schwettmann, un postdoc à CSAIL;David Bau, un récent diplômé de CSAIL qui est un nouveau professeur adjoint d'informatique à la Northeastern University;Teona Bagashvili, ancienne étudiante en visite à CSAIL;Antonio Torralba, professeur d'électronique Delta en génie électrique et informatique et membre de CSAIL;et l'auteur principal Jacob Andreas, professeur adjoint du Consortium X à CSAIL.La recherche sera présentée à la Conférence internationale sur les représentations d'apprentissage.
Descriptions générées automatiquement
La plupart des techniques existantes qui aident les praticiens à l'apprentissage automatique à comprendre comment un modèle fonctionne soit décrit l'ensemble du réseau neuronal ou oblige les chercheurs à identifier les concepts sur lesquels les neurones individuels pourraient se concentrer sur.
Le système Hernandez et ses collaborateurs ont développé, surnommé Milan (annotation linguistique guidée par des informations mutuelles), améliore ces méthodes car elle ne nécessite pas une liste de concepts à l'avance et peut générer automatiquement les descriptions du langage naturel de tous les neurones dans un réseau.Ceci est particulièrement important car un réseau neuronal peut contenir des centaines de milliers de neurones individuels.
Milan produit des descriptions de neurones dans les réseaux de neurones formés pour des tâches de vision par ordinateur comme la reconnaissance d'objets et la synthèse d'image.Pour décrire un neurone donné, le système inspecte d'abord que le comportement du neurone sur des milliers d'images pour trouver l'ensemble des régions d'image dans lesquelles le neurone est le plus actif.Ensuite, il sélectionne une description du langage naturel pour chaque neurone afin de maximiser une quantité appelée information mutuelle ponctuelle entre les régions d'image et les descriptions.Cela encourage les descriptions qui capturent le rôle distinctif de chaque neurone dans le plus grand réseau.
«Dans un réseau de neurones qui est formé pour classer les images, il y aura des tonnes de neurones différents qui détectent les chiens.Mais il existe de nombreux types de chiens et de nombreuses parties différentes de chiens.Ainsi, même si le «chien» pourrait être une description précise de beaucoup de ces neurones, ce n'est pas très informatif.Nous voulons des descriptions très spécifiques à ce que fait ce neurone.Ce ne sont pas seulement des chiens;C'est le côté gauche des oreilles sur les bergers allemands », explique Hernandez.
L'équipe a comparé Milan à d'autres modèles et a constaté qu'elle générait des descriptions plus riches et plus précises, mais les chercheurs étaient plus intéressés à voir comment cela pourrait aider à répondre à des questions spécifiques sur les modèles de vision informatique.
Analyse, audit et modification des réseaux de neurones
Tout d'abord, ils ont utilisé Milan pour analyser quels neurones sont les plus importants dans un réseau neuronal.Ils ont généré des descriptions pour chaque neurone et les ont triés en fonction des mots des descriptions.Ils ont lentement retiré les neurones du réseau pour voir comment sa précision a changé et a constaté que les neurones qui avaient deux mots très différents dans leurs descriptions (vases et fossiles, par exemple) étaient moins importants pour le réseau.
Ils ont également utilisé Milan pour auditer des modèles pour voir s'ils ont appris quelque chose d'inattendu.Les chercheurs ont pris des modèles de classification d'image formés sur des ensembles de données dans lesquels les visages humains étaient flous, dirigeaient Milan et comptaient le nombre de neurones néanmoins sensibles aux visages humains.
«Frouiller les visages de cette manière réduit le nombre de neurones sensibles aux visages, mais loin de les éliminer.En fait, nous émettons l'hypothèse que certains de ces neurones en face sont très sensibles aux groupes démographiques spécifiques, ce qui est assez surprenant.Ces modèles n'ont jamais vu de visage humain auparavant, et pourtant toutes sortes de traitement du visage se produisent à l'intérieur », explique Hernandez.
Dans une troisième expérience, l'équipe a utilisé Milan pour modifier un réseau neuronal en trouvant et en supprimant les neurones qui détectaient de mauvaises corrélations dans les données, ce qui a entraîné une augmentation de 5% de la précision du réseau sur les entrées présentant la corrélation problématique.
Alors que les chercheurs ont été impressionnés par la performance de Milan dans ces trois applications, le modèle donne parfois des descriptions qui sont encore trop vagues, ou cela fera une supposition incorrecte quand elle ne connaît pas le concept qu'il est censé identifier.
Ils prévoient de traiter ces limites dans les travaux futurs.Ils veulent également continuer à améliorer la richesse des descriptions que Milan est capable de générer.Ils espèrent appliquer Milan à d'autres types de réseaux de neurones et l'utiliser pour décrire ce que font les groupes de neurones, car les neurones travaillent ensemble pour produire une sortie.
«C'est une approche de l'interprétabilité qui commence de bas.L'objectif est de générer des descriptions de composition ouvertes de fonction avec un langage naturel.Nous voulons exploiter le pouvoir expressif du langage humain pour générer des descriptions beaucoup plus naturelles et riches pour ce que font les neurones.Être capable de généraliser cette approche à différents types de modèles est ce qui est le plus excité », explique Schwettmann.
«Le test ultime de toute technique d'IA explicable est de savoir si cela peut aider les chercheurs et les utilisateurs à prendre de meilleures décisions sur le moment et la façon de déployer des systèmes d'IA», explique Andreas.«Nous sommes encore loin de pouvoir le faire de manière générale.Mais je suis optimiste que Milan - et l'utilisation du langage comme outil explicatif plus largement - sera une partie utile de la boîte à outils."
Ce travail a été financé, en partie, par le MIT-IBM Watson AI Lab et l'initiative SystemsHatlearn @ CSAIL.