Illustration par DALL-E (+PJ)
Dans le cadre de cet article sur ce que l’IA peut apporter à la science, l’auteur Michael Nielsen s’interroge sur la possibilité d’étudier après coup le fonctionnement d’un réseau neuronal (un « transformeur ») afin de découvrir comment il est parvenu à une conclusion donnée. Le problème est difficile dans le cas général, à cause de la taille et de la complexité du genre de réseau neuronal à la base d’agents conversationnels comme ChatGPT et ses confrères : comprendre quelle solution le réseau a trouvé au problème qui lui était posé suppose d’étudier un à un les liens (« poids ») entre les neurones de ce réseau, ce qui devient bien vite un travail de Romain.
Nielsen rapporte cependant un cas spécifique où un réseau neuronal beaucoup plus petit (une seule couche) a pu être étudié et son fonctionnement élucidé. Au prix de plusieurs semaines de travail, deux personnes ont pu reconstituer comment au juste ce réseau très simple avait pu apprendre à faire l’addition modulaire de deux nombres. Et la manière dont le réseau s’y est pris est décidément tout sauf humaine. Si c’était un extra-terrestre qui s’y était pris, ça n’aurait sans doute pas été beaucoup plus étrange !
Il faut d’abord rappeler ce qu’est l’addition modulaire, en l’occurrence modulo 113. Il s’agit tout bonnement de l’addition classique, mais avec la règle supplémentaire que si le résultat est supérieur à 113, on lui retire 113 pour conserver un résultat compris entre 0 et 112. Par exemple, 12+20 donne 32. Mais 112+20 donne 19, puisqu’il faut enlever 113 au résultat de l’addition « ordinaire » soit 132 qui dépasse 113. Nous pratiquons couramment l’addition modulaire modulo 24 lorsqu’à la question « Il est 23 heures, quelle heure sera t il dans 2 heures ? », nous répondons « Ben, 1 heure du matin ». Le genre d’opération mentale que l’on apprend en primaire.
Un être humain programmera facilement un petit logiciel pour faire une addition modulaire, avec une méthode très simple : « Ajoute les deux nombres, puis si le résultat est supérieur à 113 soustrais 113 ». Une méthode tout naturellement dérivée de notre manière de penser – puisque le programmeur est un être humain.
Mais voici quelles mathématiques le réseau neuronal avait utilisées :
Pour les personnes peu familières avec la notation exponentielle imaginaire, le calcul du réseau neuronal était équivalent à essayer d’annuler la somme de deux ondes par une troisième – pensez à un ingénieur du son qui « bidouille » des sons pour essayer d’annuler l’un par l’autre. Ou encore, on peut rapprocher le calcul du réseau de la théorie des représentations d’un groupe fini, des maths beaucoup plus avancées que les simples addition et soustraction.
De notre point de vue humain, c’est utiliser un marteau piqueur, voire une bombe atomique, pour écraser une mouche. Pourquoi ne pas utiliser addition, test et soustraction, des maths de niveau collège voire primaire, pourquoi passer par des maths de niveau licence ou par un bidouillage d’ingénieur du son ? Pourquoi faire compliqué (très), alors qu’on peut faire si simple ?
Seulement voilà, les réseaux neuronaux arrivent à leurs résultats par des moyens très différents des nôtres ! Du moins très différemment de notre pensée consciente.
Laisser un commentaire