Il s'appelle Compas. Un acronyme pour Correctional Offender Management Profiling for Alternative Sanctions. En clair : un logiciel qui indique aux tribunaux américains la probabilité de récidive pour chaque détenu susceptible de bénéficier d'une libération conditionnelle. Autant dire que l'avis de l'algorithme va peser lourd dans la décision du juge et dans la vie du justiciable. Problème : quel crédit accorder à cet outil ? Ne va-t-il pas se nourrir des préjugés sociaux ? Arbitrer, par exemple, selon la couleur de peau ? Pour s'assurer du contraire, encore faut-il pouvoir suivre les méandres algorithmiques qui fondent sa décision. Et c'est là qu'apparaît un travers des algorithmes les plus performants d’apprentissage automatique : il demeure souvent difficile pour le profane de comprendre sur quelle base ils opèrent leurs choix.
D'où la nécessité d'introduire de l'interprétabilité dans ces modèles. C'est l'objectif d'HyAIAI, un projet qui associe six équipes Inria spécialisées dans le domaine : Lacodam (Rennes), Magnet (Lille), Multispeech (Nancy), Orpailleur (Nancy), SequeL (Lille) et TAU (Saclay).
Mises en correspondance
“Les modèles appris sont des fonctions mathématiques opérant des mises en correspondance d'une entrée vers une sortie, explique Élisa Fromont. Exemple : un modèle pourrait prédire la météo de demain à partir de ce qu'indiquent des capteurs aujourd’hui. L’algorithme permet d’apprendre le modèle (la fonction) en se servant des correlations entre la météo des jours passés et les mesures des capteurs à ce moment-là. Le modèle appris permet ensuite, à partir de nouvelles mesures de capteurs, d’effectuer une prédiction.”
Le type d’apprentissage automatique le plus connu est ce que l'on appelle l'apprentissage supervisé.
Pour apprendre, l'algorithme a besoin à la fois d'exemples d'entrées (ex: les mesures des capteurs) mais aussi des sorties attendues pour ces entrées (ex: la météo connue du jour suivant). On le nourrit avec ces données et il va apprendre la correspondance. Cette fonction de mise en correspondance peut être plus ou moins complexe et plus ou moins interprétable. Il peut s'agir d'une composition de fonctions possédant des millions de paramètres, comme par exemple dans le cas des réseaux de neurones profonds.
Arbre de décision
L’apprentissage par réseaux de neurones profonds n’est pas la seule forme d’apprentissage automatique (supervisé). D’autres algorithmes bien connus permettent, par exemple, d’apprendre des ‘arbres de décision’.
“Un arbre de décision fonctionne un peu comme ce jeu d'enfants, ‘qui est-ce?’ où l'on doit deviner un personnage à partir de questions. Est-ce une femme ou un homme ? Réponse : un homme (on peut supprimer toutes les femmes de l’ensemble des solutions possibles). Question suivante : porte-t-il une moustache ? À chaque itération, on découpe ainsi l'espace des personnages cibles possibles. On finit par arriver à une solution. Ces arbres sont plus faciles à interpréter. Pour savoir pourquoi une décision a été prise, il suffit de suivre une branche de l’arbre pour comprendre ce qui a été utilisé pour la décision. En revanche, dans le cas des réseaux de neurones, si j'ai un modèle qui me dit qu'il a pris telle décision car le neurone 8433 connecté au neurone 8326 avec le poids 36 a été particulièrement activé, l’explication pêche…”
Noyade des mangeurs de glace
Dans le projet HyAIAI, l'une des approches considérée (par les équipes Lacodam et Sequel notamment) cherche à “comprendre la décision prise étant donnée une donnée particulière présentée au modèle. Prenons l'exemple de Compas. Lorsque le logiciel attribue un score à un détenu particulier, nous aimerions savoir quelles sont les caractéristiques du détenu (ce que l’on nomme les ‘attributs’ des données) qui ont conduit à cette décision.”
Derrière la question se profile un problème classique de ‘machine learning’ : “l'algorithme se base essentiellement sur des corrélations.” Au risque de déraper. “Il pourrait vouloir, par exemple, corréler la probabilité de récidive d'un détenu à sa couleur de peau, alors qu'en réalité il faut en chercher les vraies causes dans tout un contexte social : le fait de vivre dans un quartier défavorisé, de subir plus de contrôles de police, etc. Certes, il y a des corrélations, mais elles sont dues à des facteurs extérieurs. Statistiquement, les gens qui viennent de manger une glace ont une probabilité plus grande de mourir de noyade le jour même et un algorithme trouverait que c’est un très bon attribut pour décrire un individu susceptible de se noyer. En réalité, ce n'est pas parce qu'ils ont mangé une glace, mais tout simplement parce qu'ils ont plus de chance d’être au bord de la mer l’été (la saison des glaces !) et lorsqu’on est près de la mer, on risque plus la noyade qu’en pleine ville. Nos collègues de l'équipe TAU travaillent à découvrir ces mécanismes de causalité.”
Débogage
La recherche de l'explication comporte aussi un aspect inspection et debuggage. C'est l'un des axes explorés par l'équipe Lacodam. “Nous ouvrons la boîte noire pour essayer de comprendre et, éventuellement, invalider la décision. Les réseaux de neurones sont connus pour être particulièrement “vantards” dans le sens où ils se montrent toujours très sûrs de leur décision. Et parfois, ils sont très sûrs de quelque-chose de... vraiment très faux ! Nous étudions ces réseaux et leurs motifs d’activation interne pour pouvoir ensuite essayer de prédire quand ces réseaux vont ainsi se tromper.”
Injecter de la connaissance
Autre objectif des chercheurs : “pouvoir injecter de la connaissance a priori pour orienter ou contraindre la décision. Par exemple, un algorithme de météo qui prédirait la couverture nuageuse au cours de la journée pourrait se servir d’un modèle physique sur le déplacement des nuages pour l’aider dans sa prédiction. Autre exemple en chimie : si on veut prédire la configuration de certaines molécules, il peut être nécessaire d’ajouter de l’information experte sur les liens possibles que peuvent faire les atomes entre eux. Certains algorithmes permettent assez bien d’ajouter ce type de contraintes. C'est le cas de ceux fonctionnant sur des systèmes logiques. Pas aussi simple en revanche sur un réseau de neurones. À Nancy, l'équipe Orpailleur travaille sur ces sujets.”
Dans tous ces travaux, l'une des difficultés provient du fait que “l'interprétabilité est une notion mal définie. Il n'existe pas encore de métrique évaluable pour dire à quel degré quelque chose est interprétable. Ce qui semble interprétable pour quelqu'un constitue-t-il pour autant une bonne explication d'un point de vue général ? Prenons la détection automatique d’arythmies cardiaques. Un modèle les détecte en observant les motifs du signal temporel. Très bien, mais est-ce une bonne explication pour prendre une décision ? Est-ce celle que souhaitent les experts? En l'occurrence, on pourrait se dire que oui car les médecins, eux aussi, cherchent à détecter ces petits signaux caractéristiques dans les données. Mais cela marche-t-il pour tous les types de données ? Sur une installation électrique défaillante, à partir de la séquence de motifs, peut-on dire que ce petit bout ici et ce petit bout là fournissent une bonne explication ? Il n'est pas si simple d'avoir un processus d'explication générique fonctionnant pour tout et pour tout le monde.”
Et ce n'est pas qu'un problème technique. Il y a un facteur humain dans la boucle. Nous devrons donc travailler avec des chercheurs en sciences humaines pour étudier comment l'utilisateur perçoit notre explication. Et pour nous qui venons des sciences dures, nous arrivons en terra incognita.
Vers un logiciel Scikit-Explain
Le projet de recherche HyAIAI finance six postes comprenant des doctorants et des post-doctorants. Un ingénieur a aussi été recruté. “Dans le domaine du machine learning, il existe une librairie open source très utilisée qui s'appelle Scikit-Learn. Dans notre équipe, Lacodam, nous avons actuellement un ingénieur travaillant sur un ‘Scikit-Mine’ qui sera notre version pour faire, non plus du machine learning, mais du data mining au sens plus général incluant la fouille de motifs. Dans la même lignée, nous envisageons maintenant un ‘Scikit-Explain’ consacré à l'interprétabilité. Il permettrait d'implémenter nos techniques, mais aussi d'autres proposées plus largement par la communauté de recherche.”
À noter d'ailleurs que des scientifiques de l'université de Bristol ont travaillé sur un prototype allant dans le même sens et baptisé FAT-Forensics (Fairness Accountability and Transparency). “En l'occurrence, ils n'ont plus de financement pour ce logiciel. Nous allons donc peut-être prendre la suite.”
Ce projet fait partie des Défis Inria : des actions d'envergure dont l'objectif est de regrouper plusieurs équipes sur un thème de recherche majeur. Débuté en septembre 2019, HyAIAI va durer jusqu'en septembre 2022.