Des chercheurs du MIT et du Qatar Computing Research Institute (QCRI) examinent à la loupe les systèmes d'apprentissage automatique connus sous le nom de réseaux de neurones. Crédit :Nouvelles du MIT
Des chercheurs du MIT et du Qatar Computing Research Institute (QCRI) examinent à la loupe les systèmes d'apprentissage automatique connus sous le nom de réseaux de neurones.
Dans une étude qui met en lumière la manière dont ces systèmes parviennent à traduire du texte d'une langue à une autre, les chercheurs ont développé une méthode qui identifie les nœuds individuels, ou "neurones, " dans les réseaux qui capturent des caractéristiques linguistiques spécifiques.
Les réseaux de neurones apprennent à effectuer des tâches de calcul en traitant d'énormes ensembles de données d'entraînement. En traduction automatique, un réseau croque des données linguistiques annotées par des humains, et vraisemblablement « apprend » des caractéristiques linguistiques, comme la morphologie des mots, structure de phrase, et le sens des mots. Étant donné le nouveau texte, ces réseaux correspondent à ces caractéristiques apprises d'une langue à l'autre, et produire une traduction.
Mais, dans la formation, ces réseaux ajustent essentiellement les paramètres et les valeurs internes d'une manière que les créateurs ne peuvent pas interpréter. Pour la traduction automatique, cela signifie que les créateurs ne savent pas nécessairement quelles caractéristiques linguistiques le réseau capture.
Dans un article présenté cette semaine à la conférence de l'Association pour l'avancement de l'intelligence artificielle, les chercheurs décrivent une méthode qui identifie les neurones les plus actifs lors de la classification de caractéristiques linguistiques spécifiques. Ils ont également conçu une boîte à outils permettant aux utilisateurs d'analyser et de manipuler la façon dont leurs réseaux traduisent le texte à diverses fins, comme compenser tout biais de classification dans les données d'apprentissage.
Dans leur papier, les chercheurs identifient les neurones qui sont utilisés pour classer, par exemple, mots genrés, passé et présent, chiffres au début ou au milieu des phrases, et les mots au pluriel et au singulier. Ils montrent également comment certaines de ces tâches nécessitent de nombreux neurones, tandis que d'autres n'en nécessitent qu'un ou deux.
"Notre recherche vise à rechercher le langage à l'intérieur des réseaux de neurones et à voir quelles informations ils apprennent, " déclare le co-auteur Yonatan Belinkov, un post-doctorat au Laboratoire d'Informatique et d'Intelligence Artificielle (CSAIL). "Ce travail consiste à acquérir une compréhension plus fine des réseaux de neurones et à mieux contrôler le comportement de ces modèles."
Les co-auteurs de l'article sont :le chercheur principal James Glass et l'étudiant de premier cycle Anthony Bau, du CSAIL; et Hassan Sajjad, Nadir Durrani, et Fahim Dalvi, de l'IRQC.
Mettre un microscope sur les neurones
Les réseaux de neurones sont structurés en couches, où chaque couche se compose de plusieurs nœuds de traitement, chacun connecté à des nœuds dans les couches ci-dessus et ci-dessous. Les données sont d'abord traitées dans la couche la plus basse, qui transmet une sortie à la couche ci-dessus, etc. Chaque sortie a un "poids" différent pour déterminer combien elle figure dans le calcul de la couche suivante. Pendant la formation, ces poids sont constamment réajustés.
Les réseaux de neurones utilisés pour la traduction automatique s'entraînent sur des données linguistiques annotées. Dans la formation, chaque couche apprend différentes "incorporations de mots" pour un mot. Les plongements de mots sont essentiellement des tableaux de plusieurs centaines de nombres combinés de manière à correspondre à un mot et à la fonction de ce mot dans une phrase. Chaque nombre dans l'inclusion est calculé par un seul neurone.
Dans leurs travaux passés, les chercheurs ont formé un modèle pour analyser les sorties pondérées de chaque couche afin de déterminer comment les couches classaient une intégration donnée. Ils ont découvert que les couches inférieures classaient des caractéristiques linguistiques relativement plus simples, telles que la structure d'un mot particulier, et que les niveaux supérieurs aidaient à classer des caractéristiques plus complexes, comme la façon dont les mots se combinent pour former un sens.
Dans leur nouveau travail, les chercheurs utilisent cette approche pour déterminer comment les plongements de mots appris font une classification linguistique. Mais ils ont aussi mis en place une nouvelle technique, appelée « analyse de corrélation linguistique, " qui entraîne un modèle à se concentrer sur les neurones individuels dans chaque mot englobant qui étaient les plus importants dans la classification.
La nouvelle technique combine toutes les intégrations capturées à partir de différentes couches, qui contiennent chacune des informations sur la classification finale du mot, en une seule intégration. Comme le réseau classe un mot donné, le modèle apprend des poids pour chaque neurone qui a été activé au cours de chaque processus de classification. Cela donne un poids à chaque neurone dans chaque mot englobant qui s'est déclenché pour une partie spécifique de la classification.
"L'idée est, si ce neurone est important, il devrait y avoir un poids élevé qui est appris, " Belinkov dit. "Les neurones avec des poids élevés sont les plus importants pour prédire la certaine propriété linguistique. Vous pouvez considérer les neurones comme de nombreux boutons que vous devez tourner pour obtenir la bonne combinaison de nombres dans l'intégration. Certains potards sont plus importants que d'autres, la technique est donc un moyen d'attribuer de l'importance à ces boutons."
Ablation de neurones, manipulation de modèle
Parce que chaque neurone est pondéré, il peut être classé par ordre d'importance. À cette fin, les chercheurs ont conçu une boîte à outils, appelé NeuroX, qui classe automatiquement tous les neurones d'un réseau de neurones en fonction de leur importance et les visualise dans une interface Web.
Les utilisateurs téléchargent un réseau qu'ils ont déjà formé, ainsi qu'un nouveau texte. L'application affiche le texte et, à côté de cela, une liste de neurones spécifiques, chacun avec un numéro d'identification. Lorsqu'un utilisateur clique sur un neurone, le texte sera mis en surbrillance en fonction des mots et des phrases pour lesquels le neurone s'active. De là, les utilisateurs peuvent complètement assommer - ou "ablate" - les neurones, ou modifier l'étendue de leur activation, pour contrôler la façon dont le réseau se traduit.
La tâche d'ablation a été utilisée pour déterminer si la méthode des chercheurs a identifié avec précision les bons neurones de haut rang. Dans leur papier, les chercheurs ont utilisé l'outil pour montrer que, en supprimant des neurones de haut rang dans un réseau, sa performance dans la classification des caractéristiques linguistiques corrélées a considérablement diminué. Alternativement, quand ils ont enlevé des neurones de rang inférieur, les performances ont souffert, mais pas aussi dramatiquement.
« Après avoir obtenu tous ces classements, vous voulez voir ce qui se passe lorsque vous tuez ces neurones et voir à quel point cela affecte les performances, " Belinkov dit. " C'est un résultat important prouvant que les neurones que nous trouvons sont, En réalité, important pour le processus de classification.
Une application intéressante de la boîte à outils aide à limiter les biais dans les données linguistiques. Modèles de traduction automatique, comme Google Traduction, peut se former sur des données comportant des préjugés sexistes, ce qui peut être problématique pour les langues avec des mots genrés. Certains métiers, par exemple, peut être plus souvent appelé homme, et d'autres en tant que femmes. Lorsqu'un réseau traduit un nouveau texte, il peut seulement produire le genre appris pour ces mots. Dans de nombreuses traductions en ligne de l'anglais vers l'espagnol, par exemple, "docteur" se traduit souvent dans sa version masculine, tandis que « nurse » se traduit par sa version féminine.
"Mais nous trouvons que nous pouvons tracer des neurones individuels responsables de propriétés linguistiques comme le genre, " dit Belinkov. " Si vous êtes capable de les retrouver, peut-être pouvez-vous intervenir d'une manière ou d'une autre et influencer la traduction pour traduire davantage ces mots au genre opposé… pour supprimer ou atténuer les préjugés."
Dans des expériences préliminaires, les chercheurs ont modifié les neurones d'un réseau pour changer le texte traduit du passé au présent avec une précision de 67%. Ils ont fait une ablation pour changer le genre des mots avec une précision de 21%. "C'est encore un travail en cours, " dit Belinkov. Une prochaine étape, il ajoute, peaufine l'application Web pour obtenir une ablation et une manipulation plus précises.
Cette histoire est republiée avec l'aimable autorisation de MIT News (web.mit.edu/newsoffice/), un site populaire qui couvre l'actualité de la recherche du MIT, innovation et enseignement.