
Science et Machine Learning : un nouveau paradigme
Pour les amateurs d’articles de vulgarisation, ce billet pourrait ressembler à un énième article comme on en lit tant sur le Big Data, généralement associé à ce qu’on appelle Machine Learning ou Apprentissage Statistique. Ces articles consistent souvent en un éloge des possibilités offertes par ces nouvelles technologies du numérique (voiture autonome, détection automatisée des cancers…), ou en une synthèse ambitieuse des débouchés économiques possibles (marketing ciblé, trading algorithmique…). D’autres mettent également en garde contre les abus que peuvent engendrés ces nouvelles possibilités (notamment les armes autonomes [1]). Cependant, peu parlent du rapport entre le Machine Learning et les sciences plus fondamentales, comme la physique ou la chimie. Le but de ce texte est tout d’abord de démystifier ce qu’on appelle le Machine Learning en expliquant les grandes lignes des méthodes utilisées, puis de justifier en quoi son apparition dans les sciences relève d’un changement de paradigme.
Big Data et Machine Learning en quelques mots
Il est difficile de donner une définition précise de ce domaine, tant il mélange d’aspects divers et tant de personnes s’en réclament ; l’avis suivant n’est donc qu’une opinion donnant un éclairage particulier de ce champ de connaissance. On peut dire que les tâches de l’apprentissage statistique se divisent en deux types : classification et régression.
La première consiste à relier un élément à une classe, un exemple simple étant la gestion des spam par les boites mail : un email est reçu et, selon son contenu, est classé comme étant un spam ou non. La deuxième tâche, généralement appelée régression, consiste à prévoir le résultat d’un calcul ; ainsi, une méthode de Machine Learning en finance pourra tenter de prévoir le cours d’une action en fonction de la valeur d’une autre. Ces deux méthodes entendent fournir des résultats à partir d’une base de données, ce qui est la base de l’apprentissage statistique : l'algorithme n’essaie pas de savoir si tel mot présent dans un mail indique qu’il s’agit de spam, mais à partir de mails « labélisés » comme étant du spam (c’est-à-dire des exemples), on peut classer le nouveau mail.
La question de la dimension
Jusqu’ici, de nombreuses méthodes entrent dans cette catégorie. La plus simple est certainement la régression linéaire, bien connue des économistes : à partir d’un nuage de points (les données), on construit une droite qui fournit une relation qu’on espère vérifiée entre de nouveaux points. Cependant, on comprend vite les limitations de la méthode : que faire si les points ne sont pas distribués selon une droite, mais selon une loi plus compliquée ? Comment faire si les points dépendent de très nombreuses variables (car l’approximation se détériore avec la taille de l’espace) ? Enfin, comment trouver la meilleure approximation si l’on possède des millions d'exemples ? C’est à ces trois questions qu’a essayé de répondre le Machine Learning depuis sa naissance, il y a cela une bonne trentaine d’années [2]. Par grande dimension (Big Data) on entend deux choses : la réponse dépend de beaucoup de paramètres pouvant être de nature très différentes (par exemple, un mail est caractérisé par chaque lettre successive, mais aussi son heure d’arrivée, son lieu d’envoi…), et l'algorithme dispose d'une grande base de données (plusieurs millions voire milliards d’exemples pour apprendre à reconnaître la solution).
En cela, le Machine Learning peut être conçu comme un ensemble de méthodes permettant l’approximation de résultats en grande dimension et à partir de données. Nous présentons maintenant deux exemples de méthodes afin de donner une idée plus précise de ce à quoi elles peuvent ressembler en pratique.
Une première classe de méthodes : les noyaux
De nombreuses méthodes (Ridge regression, SVM …), reposent sur la notion de noyau, qui peut être expliquée de différentes manières. Une idée simple est la suivante : un noyau est un moyen de comparer deux éléments. Si deux éléments se ressemblent, le noyau entre les deux est proche de 1 ; s’ils sont dissemblant, leur noyau est proche de 0 (penser au concept de distance en mathématiques : on peut dire si deux éléments sont loin ou proches). Pour reprendre l’exemple précédent, si un mail arrive dans votre boite, il peut être comparé à des mails déjà classés comme étant des spam. S’ils ressemble plutôt à des mails étiquetés comme spam, alors il sera classé comme tel, et inversement. L’avantage de ces méthodes est de pouvoir fournir un contrôle du résultat (je sais que le mail est un spam avec une probabilité de 90%). On voit cependant que la taille de la base de données peut être une limitation (il faut comparer ce nouveau mail à tous ceux de la base de données). La méthode possède de nombreuses variations, l’une des plus populaires consistant à isoler les éléments de la base de données les plus représentatifs. A titre de remarque, ces méthodes sont en fait très proches de la régression linéaire citée plus haut, mais l’introduction d’un noyau permet de traiter des cas fortement non-linéaires et en grande dimension.
Les réseaux de neurones : le choix de la complexité
Même si des liens avec les méthodes précédentes existent, les réseaux de neurones artificiels, dont on entend beaucoup parler reposent sur un principe assez différent [2]. Un réseau de neurones est construit comme une succession de couches dépendant de nombreux paramètres. Quand un élément arrive (par exemple une image), il passe à travers chaque couche, ses parties sont additionnées, multipliées, compressées… et un nombre est renvoyé. Par exemple, 1 si l’image est un chat, 0 si c’est un chien.
Le problème de ces réseaux est d’en construire un sachant effectuer une tâche spécifique : c’est ce qu’on appelle la phase d’entraînement, pour laquelle beaucoup de possibilités existent. L’idée est néanmoins toujours la même : si le réseau croît que l’image d’un chat est celle d’un chien, on modifie ses paramètres pour qu’il reconnaisse un chat. On comprend ici l’importance de la base de données : Google ou Facebook utilisent des millions d’images pour entraîner leurs réseaux de neurones. Ces réseaux reposent sur une hypothèse (qui a montré des succès surprenants [3]), que je qualifierais de pari de la complexité. L’idée est qu’avec une fonction arbitrairement complexe, on peut approcher n’importe quel résultat : la question est alors de trouver cette fonction, ce qu’on espère en utilisant des bases de données gigantesques.
Du paramétrique au non-paramétrique
Ces deux types de méthodes (et d’autres), bien que différents, sont caractéristiques du Machine Learning : il s’agit de construire un modèle à partir de données, sans information a priori. C’est un changement conceptuel profond par rapport à la régression linéaire, où l’on suppose a priori que la relation entre les données est linéaire, dont on cherche à estimer les paramètres (il y en a autant que la dimension du système plus un). Dans les méthodes proposées, le modèle statistique fournit une structure très large (dimension grande voire infinie), la contrepartie étant qu’il est plus difficile de trouver la bonne fonction : il y a un équilibre entre chercher la fonction la plus générale possible, et trouver tout de même une fonction. En cela, on peut voir le Machine Learning comme une branche de l’approximation de fonctions à partir de données, comme il est possible d’approcher une fonction par une série de Fourier tronquée. Encore une fois, il faut noter que ce n’est qu’une façon de voir les choses : les interprétations probabilistes et géométriques de ce domaine sont aussi très fructueuses, et les trois mondes cohabitent en pratique, la constante étant l’apprentissage à partir de données.
Sciences exactes : la notion de modèle
J’en arrive au cœur du thème que je souhaite développer : pourquoi le Machine Learning bouleverse l’évolution « habituelle » des sciences en imposant un nouveau paradigme. Pour cela, il faut selon moi rappeler que la plupart des sciences (hors mathématiques pures) se sont construites autour de la notion de modèle. Sans rentrer dans des détails inutiles ici, on peut dire que la démarche scientifique est généralement la suivante : observer un phénomène, en déduire un modèle, résoudre le modèle, confronter les résultats à la réalité observée, corriger le modèle, etc. On observe une pomme qui tombe, on tente d’expliquer cette chute par un modèle : la gravitation. La mécanique quantique peut ainsi se voir comme un ensemble de modèles dont la résolution permet la reproduction de phénomènes observés, que les modèles précédents se trouvaient incapables de reproduire. Ainsi, pour résoudre un problème de mécanique, on stipule un modèle (avec tenseurs de contraintes ou autre), et un logiciel de calcul numérique a pour but de résoudre au mieux ce modèle de la mécanique afin de produire un résultat vérifiable. Si les résultats observés ne correspondent pas au calcul, on peut enrichir le modèle (prise en compte d’effets hydrauliques ou thermiques par exemple).
Un nouveau paradigme pour la science
On peut maintenant mieux comprendre en quoi l’apprentissage statistique constitue une rupture fondamentale dans la pratique de la science. Jusque-là établie sur la mise en place d’un modèle supposé expliquer le monde, la science se retrouve capable de prédire uniquement à partir d’observations. Cela a deux conséquences immédiates. La première est de repousser les limites de la sciences : a priori, tout peut être appris à partir d’observations. La seconde est que, si les résultats sont là, leur explication reste le plus souvent absente. En effet, si l’on a réussi à produire par divers procédés une fonction donnant le résultat correct, on est le plus souvent incapable de savoir pourquoi.
C’est une question très excitante de savoir pourquoi ces algorithmes mathématiques fonctionnent, et à quel point ils peuvent être appliqués en pratique. Donnons un exemple concret qui anime la communauté scientifique : la prédiction de propriétés des molécules. On se donne une molécule (groupe d’atomes) et l’on cherche par exemple à savoir si elle est toxique, ou quelle est son énergie fondamentale. Un tel problème peut être résolu par l’équation de Schrödinger, mais celle-ci est très coûteuse en temps de calcul, typiquement de un à plusieurs jours sur quelques milliers de cœurs. Si on veut chercher une molécule ayant la meilleure propriété, on peut alors la chercher dans des bases de données accessibles en lignes [4] qui contiennent au minimum un milliard de molécules ; calculer toutes leurs propriétés prendrait alors plus d’un million d’année !
Les physiciens ont donc cherché depuis une dizaine d’années à calculer ces propriétés à partir d’observations : on connaît les propriétés de certaines molécules, qu’on utilise pour entraîner une méthode de Machine Learning et en déduire les propriétés de nouvelles molécules.
Une conséquence de cette approche est que l’on est capable de prédire les propriétés de molécules nouvelles, sans savoir pourquoi elles les possèdent ! Si certains travaux récents tentent de répondre à la question, une compréhension totale de ces méthodes reste hors de portée actuellement [5]. Cela peut poser de réels problèmes quand les prédictions ont des conséquences importantes (on souhaite éviter des médecins qui diraient « vous êtes malade mais je ne sais pas pourquoi »). C’est en cela que l’on qualifie souvent ces algorithmes de « boîte noire », même si cela n’est pas toujours complètement exact.
D’un point de vue scientifique, on a donc substitué les données aux modèles, ce qui permet une plus grande généralité (on peut a priori apprendre n’importe quel phénomène observable pourvu que l’on ait assez d’observations) au détriment de la compréhension et de l’explication des phénomènes.
Succès en sciences économiques
Cette particularité conceptuelle de l’apprentissage statistique au sein des sciences peut permettre d’expliquer l’intérêt qu’il suscite dans les sciences sociales (économie, marketing, finance, etc). En effet, dans ces domaines, il est difficile de construire un modèle que l’on résoudra ensuite, une raison étant qu’on ne sait pas représenter le comportement humain par des lois simples.
C’est tout le problème des organismes financiers qui utilisent par exemple le modèle de Black-Scholes (et dépensent de l’énergie à le résoudre) alors que ce modèle est connu comme étant faux [6]. L’apprentissage permet de pallier cette difficulté en cela qu’il ne suppose pas de modèle pour la prévision de résultats. Dans ce contexte, l’explication n’est pas nécessaire, ce qui rend ces méthodes, reposant uniquement sur les données, utiles en pratique. On voit ainsi un intérêt grandissant pour les réseaux de neurones, les joliment nommées « forêts aléatoires » et autres méthodes de ce type dans les secteurs de la finance ou de l’assurance.
Le biais, le marteau et la mouche
Ce changement de paradigme en science soulève deux points intéressants, le premier étant la question du biais. Si Henri Poincaré disait déjà en 1902, qu’il faudrait « expérimenter sans idée préconçue », c’est cette réalité qu’ont redécouvert des ingénieurs de Microsoft essayant d’apprendre à parler à une machine [7,8]. Le principe de ce « robot » était, à travers des discussions avec des humains, de lui enseigner comment tenir une conversation raisonnable. Après quelques heures de discussion, le programme, écrivant des propos racistes, révisionnistes, etc., a dû être fermé. S’il avait appris un tel langage, c’est que les internautes lui avaient fourni des messages de ce type : le robot avait donc appris a parler à partir de cette base de données. Mais si on l’avait nourri de Racine ou Hugo, il se serait peut-être mis à parler en alexandrins ! On comprend alors que ces algorithmes peuvent être biaisés à partir de la base de données sur laquelle ils s’entraînent.
Encore une fois, si ce problème peut être sans conséquence, il est primordial d’un point de vue scientifique. Essayons d’apprendre la loi de la pesanteur dans une soufflerie où les objets s’envolent. L’algorithme en déduira que les objets tombent vers le haut quand on les lâche, dans tous les cas : il ne verra pas le biais que les données proviennent d’une soufflerie, et apprendra un biais au lieu de la loi de la pesanteur. Si cet exemple est grossier, il met en lumière ce qui peut se cacher dans les données : sommes-nous en train d’apprendre un phénomène réel, une erreur de manipulation que nous ne comprenons pas, ou le biais d’un autre phénomène ? Cette question peut être particulièrement importante en mécanique quantique : qu’apprendre quand on a une incertitude fondamentale sur les quantités qu’on observe ?
Le second problème que l’on voit apparaître est que l’algorithme d’apprentissage peut passer à côté de l’essentiel. Essayons par exemple d’entraîner un réseau de neurones à reconnaître la chute d’un corps. On peut lui fournir des enregistrements de stylos qui tombent, avec des vitesses initiales différentes par exemple, et optimiser ses paramètres afin de reproduire cette chute. Combien de trajectoires faudra-t-il utiliser pour que le réseau de neurones ait appris cette chute, et reproduise des trajectoires très bruitées, alors qu’un modèle de coin de table résout parfaitement le problème ? On voit dans ce cas qu’un modèle simple marche mieux qu’une usine à gaz compliquée : c’est le marteau qui essaie d’écraser la mouche, on passe à côté de l’essentiel.
Conclusion
Cette note avait deux objectifs : donner une idées compréhensible de ce qu’on appelle Machine Learning, et montrer en quoi ce domaine constitue un changement de paradigme dans les sciences. D’un point de vue technique, nous avons vu que ces modèles reposent en général sur des bases mathématiques simples, utilisées de façon ingénieuse. Au niveau scientifique, nous avons mis en avant le fait que ces méthodes induisent un changement de paradigme, qui repose sur un certain abandon du concept de modèle au profit de l’utilisation de données. Si cette méthode est passionnante et peut permettre des avancées importantes, nous avons aussi vu certaines de ses limites, notamment liées au biais que peuvent contenir les données et au manque d’explications fournies par ces algorithmes. Nul doute que ces questions évolueront fortement au cours des années à venir, et recèlent des défis passionnants pour les ingénieurs !
[1] Voir l'interview de Stephen Hawking ou la lettre ouverte de Juillet 2015 sur les dangers des armes autonomes
[2] Pour plus d’informations, on peut lire l'article wikipédia à ce sujet. De nombreux articles de vulgarisations y font régulièrement référence.
[3] Par exemple au jeu de go.
[4] Notamment la base de données QM7 jusqu’à GDB11, contenant des molécules avec jusqu'à 7 atomes lourds.
[5] Par exemple ce papier d’une équipe allemande, ou ce papier d’un célèbre mathématicien français
[6] Le modèle de Black-Scholes fait entre autres l’hypothèse que les accroissements des cours de bourse sont Gaussiens, ce qui est connu comme étant faux. Pour une reflexion intéressante sur les mathématiques financières, on peut par exemple parcourir le blog de N. Bouleau.
[7] Henri Poincaré, La science et l’hypothèse, édition Champs sciences, Flammarion, p. 159.
[8] Voir par exemple cet article du journal Le Monde.
Aucun commentaire
Vous devez être connecté pour laisser un commentaire. Connectez-vous.