Un nouvel « Entretien autour de l’informatique ». Yann LeCun est un informaticien, chercheur en intelligence artificielle, et plus particulièrement en « apprentissage automatique » (machine learning). Il est internationalement reconnu notamment pour ses résultats sur la reconnaissance de caractères et la vision par ordinateur en s’appuyant sur les réseaux de neurones convolutifs (son invention). Il est professeur à l'Université de New York et directeur du laboratoire d’Intelligence Artificielle de Facebook. Il a été titulaire de la Chaire « Informatique et sciences numériques » au Collège de France (2015-2016). Cet article est publié en collaboration avec le blog Binaire.

Binaire : Pourrais-tu nous parler de l’ « apprentissage machine » ?

Yann LeCun : On écrit un programme informatique pour réaliser une tâche particulière comme faire une recherche dans une base de données. Mais parfois la tâche est trop compliquée. On ne sait pas expliquer à l’ordinateur comment la réaliser. On utilise alors un programme d’apprentissage, un programme simple mais avec de nombreux paramètres. A partir de données qu'on lui fournit en entrée (par exemple une image), le programme calcule des valeurs de sortie (c’est un chien, un chat, etc.) et le résultat dépend fortement des paramètres qu’on ne sait pas a priori fixer. On fournit beaucoup d’images de chats et de chiens avec des annotations qui précisent de quel animal il s'agit. On va ensuite faire des tas de calculs pour déterminer les paramètres du programme, ceux qui donnent les résultats les plus proches des valeurs des annotations. Et on arrive ce cette façon à un programme qui distingue très bien les images de chats de celles de chiens.

Le programme d’apprentissage qui les distingue est relativement simple (quelques pages de code). Il utilise des maths du 18 ème siècle, et de l’informatique du siècle dernier. Ce qui a véritablement fait marcher tout cela, ce sont des puissances de calcul considérable, la disponibilité de grands corpus de données numériques, et le développement de nouveaux algorithmes dans les années 1980 : les réseaux neuronaux artificiels multicouche et la rétropropagation du gradient de l’erreur.

Est-ce que tu peux nous expliquer un peu comment ils fonctionnent ?

Y. L. : ce sont des algorithmes inspirés (mais de loin) du fonctionnement des neurones biologiques. Imaginez des couches de petits calculateurs très simples commandés par des paramètres ; chaque calculateur décide de ses sorties à partir de ses entrées… et de ses paramètres. On fournit des entrées au réseau global (une image) et il propose une sortie (c’est un chat, c’est un chien). Si le système ne donne pas le résultat que nous espérons obtenir sur un exemple particulier, on calcule une « différence » entre ce qu’on obtient et ce qu’on voudrait obtenir et on propage cette différence pour modifier les paramètres de tous les petits calculateurs. La difficulté est d'arriver à régler efficacement les paramètres pour minimiser l’erreur que le réseau fait sur l’ensemble des exemples annotés.

C’est en réalité bien plus compliqué que ce que tu dis. De nombreux algorithmes ont été proposés. Il a fallu pas mal de temps avant d'obtenir de bons résultats.

Y. L. : oui. L’idée est simple mais sa mise au point a pris du temps.

Et il existe d’autres types d’apprentissage…

Y. L. : Ce que je viens de décrire c’est de l’apprentissage supervisé. Dans ce cadre, j’ai par exemple proposé des algorithmes de réseaux convolutifs qui donnent d’excellents résultats et qui sont très utilisés.

Et puis, on peut aussi considérer l’apprentissage par renforcement. Pour battre le champion du monde de Go, DeepMind s’est appuyé sur un grand nombre de techniques. Leur programme a, de manière classique, appris d’une énorme quantité de parties de Go jouées par des grands maîtres, c’est de l’apprentissage supervisé. Mais il a aussi joué des millions de parties contre lui-même. Une des versions du programme-joueur essaie de faire varier un paramètre dans un sens ou dans un autre. Si cette version gagne plus souvent que l’autre, cela renforce la conviction que c’était une bonne idée de faire varier ainsi le paramètre. C’est ce qu’on appelle l’apprentissage par renforcement.

<figure><img src="image_1.png" /><figcaption>Stylo. Fourni par l'auteur, CC BY</figcaption></figure>

Enfin, d'autres chercheurs travaillent sur l’apprentissage non supervisé. Un programme observe ce qui se passe autour de lui, et construit à partir de cette observation un modèle du monde. C’est essentiellement de cette façon que les oiseaux, les mammifères, que nous mêmes fonctionnons. Ce n’est pas si simple ; les algorithmes que nous concevons aujourd’hui attendent des prédictions du monde qui soient exactes, déterministes. Mais si vous laissez tomber un stylo (voir la photo ci-contre), vous ne pouvez pas prédire de quel côté il va tomber. Nos programmes d’apprentissage retiennent qu’il est tombé, par exemple, à gauche puis devant. Il faudrait apprendre qu’il peut tomber n’importe où aléatoirement. Il y a des travaux passionnants dans cette direction. Cela ouvre des portes pour de l’intelligence artificielle, au-delà de l’analyse de contenu.

Je t’ai entendu dire que certaines fonctions du cerveau comme le langage ou la mémoire étaient relativement simples, que la vraie difficulté résidait dans l’apprentissage.

Y. L. : au delà de l’inné qui est bien présent, l’apprentissage est essentiel. Une procédure d’apprentissage est présente dans le cortex d’animaux, identique dans plusieurs zones du cerveau. Si pour une raison quelconque, l'une de ces zones est abîmée, la fonction qu’elle abrite va se reconstruire ailleurs. Le même programme va recevoir dans une autre zone des entrées et va se spécialiser dans la tâche qui aurait dû être réalisée par la zone abîmée.

On peut proposer la thèse que de nombreuses parties du cerveau abritent le même principe d’apprentissage. On pourrait s’inspirer de cette idée en intelligence artificielle pour utiliser le même algorithme d’apprentissage pour de nombreuses fonctions. Les évolutions récentes confortent ce point de vue. Dans des domaines de l’informatique très séparés, comme la traduction, la reconnaissance de formes, la conduite de voiture, les mêmes principes des réseaux convolutifs, de l’apprentissage supervisé, donnent de très bons résultats, et sont aujourd’hui utilisés couramment.

Une inquiétude avec ces méthodes est que nous risquons de construire des systèmes informatiques que nous comprenons finalement assez mal, que nous maîtrisons mal.

Y. L. : oui. Le programme d’apprentissage automatique est simple et la difficulté réside souvent dans le choix des données qui sont fournies pour l’entraîner. On ne sait pas où on peut arriver et cela dépend des données d’apprentissage. Par exemple, ce n’est pas simple de complètement fiabiliser le comportement d’une voiture autonome. La masse de données est considérable, les risques le sont également. C’est compliqué mais on y arrive quand même. C’est surtout possible parce que les systèmes peuvent s’autocorriger. Un accident ou même un presque-accident apportent de l’expérience au système, l’améliorent. Si on ne peut pas promettre de construire un programme parfait du premier coup, on peut surveiller ce qui se passe, entraîner le programme pour le perfectionner continuellement.

Comme ces systèmes prennent une importance considérable dans notre société, ne doit-on pas attendre d’eux qu’ils aient des responsabilités, qu’ils obéissent à des règles éthiques ?

Y. L. : évidemment. Ce sujet est de plus en plus important. Les humains présentent des biais parfois conscients, souvent inconscients. Mal entraînée, une machine peut reproduire ces même biais. Google a par exemple proposé un système de reconnaissance des visages qui classifiait parfois des visages noirs comme des visages de gorille. Le logiciel n’était pas raciste. C’est qu’il avait été mal entraîné, avec trop peu de visages noirs.

Avec Facebook et des partenaires industriels, l’UNESCO et des ONG comme l’ACLU (Union américaine pour les libertés civiles), nous avons monté le Partnership on AI pour mettre cette technologie au service des gens et de la société.

Saura-t-on bientôt construire des machines avec l’intelligence générale d’un humain ?

Y. L. : un jour. Mais ça va prendre du temps. Les chercheurs dans les tranchées savent combien le problème est difficile.

Il est d’ailleurs passionnant de voir comment les programmes et les machines transforment la valeur des choses. Un lecteur Blue Ray super sophistiqué, bourré d’électronique et d’algorithmes coûte moins de 50 euros quand un saladier en céramique, utilisant des technologies très anciennes, peut en valoir des milliers. La valeur tient bien dans la réalisation par un humain. Les machines participent à la création de valeur, à l’augmentation de la productivité. Cela pose le problème du partage de toute cette valeur générée.