La puissance de calcul, encore et toujours
Le glissement s'est fait progressivement, au fil de l'eau et au fil des versions des modèles de génération de texte. Quand l'homme de la rue parle de modèle, il faut maintenant entendre modèle de système de génération, donc une version précise d'une suite d'algorithmes d'apprentissage automatique. Abus de langage révélateur.
Les progrès actuels en intelligence artificielle sont principalement une course à la puissance. Rien n'indique que cette stratégie soit la bonne pour construire des modèles réellement intelligents.
Le contexte
Voici les notes rédigées pour une intervention autour des modèles dits IA, dans
le cadre des journées de la R&D d'
Facile. Si vous demandez à un data scientist, ou à quelqu'un en maths appliquées, s'il a assez de puissance de calcul, il vous répondra toujours qu'il est vraiment limite et qu'il pourrait aisément en utiliser beaucoup plus.
La suite est plus intéressante, ô lecteur.
On a tous un agent conversationnel dans la poche
Cool.
On peut papoter avec un programme, maintenant.
En s'épargnant l'apprentissage d'un langage adapté.
On peut aussi jouer au Go contre un programme. Et perdre lamentablement, si vous
êtes un humain. Pour les échecs, c'est plié depuis 1997 et la défaite de
Linnainmaa et al, 1970
Vous connaissez tous le nom de la classe d'algorithmes d'apprentissage automatique qui bouscule le monde de l'innovation numérique, et de l'économie, depuis 2010 : les fameux réseaux de neurones, version deep learning. Ca ne marchait pas vraiment avant les algorithmes de rétroprogation (backprop) inventés et réinventés dans les années 1970.
Depuis 2010-2012, ces programmes marchent bien mieux, quand les chercheurs les ont branchés sur des processeurs de cartes graphiques (GPU). Et encore mieux avec l'idée simple du mécanisme d'attention et des transformers, en 2017. Je ne vais pas détailler plus les réseaux de neurones. Retenez qu'un réseau est une (monstrueusement) grande collection de diodes on/off reliées entre elles de manière astucieuse et gavées de données. L'ensemble est très gourmand en puissance de calcul et en espace mémoire.
Ce programme d'apprentissage marche bien dans certains cas : il faut pouvoir l'alimenter avec énormément de données étiquetées et avoir pas mal chance. Les données étiquetées sont en réalité un ensemble de faits ou d'exemples : « dans ce cas-là, voici ce qu'on attend » ou « quand l'entrée vaut X, on observe Y en sortie ». Rien de nouveau, vous avez déjà lu cette présentation douze fois.
Simple ?
Je me fais souvent reprendre quand j'écris que les idées autour des réseaux de neurones sont simples. J'écris parfois limitées. Je persiste : oui, le mécanisme d'attention, les transformers et toute la mécanique interne des réseaux profonds est conceptuellement simple. Les idées sont bonnes, parfois astucieuses, leur mise en oeuvre informatique peut être affreusement technique mais les idées sont simples. Allez jeter un coup d'oeil à la théorie de la turbulence fluide, la relativité générale ou à la mécanique quantique, si vous n'êtes pas convaincus.
Systèmes IA
Les algorithmes de deep learning permettent de construire des systèmes d'IA
faibles ou spécialisées. Ces systèmes essaient de résoudre un problème donné,
comme jouer aux échecs ou identifier un tank. On ne sait pas entraîner un réseau
de neurones capable de résoudre différents problèxmes (ex: jouer aux échecs et au
go, détecter des tanks et guider un missile). On sait encore moins construire un
système IA général, capable de résoudre l'ensemble des problèmes qu'un humain
rencontre habituellement. C'est ce que le patron d'
Croire en ses rêves
Regardons ChatGPT d'un peu plus près - lui, et les autres systèmes construits sur des grands modèles de langage (LLM). Ce sont des programmes complexes, souvent secrets, qui exploitent des réseaux de neurones entraînés sur du texte. C'est sympa, on peut leur parler et ils répondent. Je vais passer pour un rabat-joie, mais je retiens surtout la capacité à créer des IHM en langage naturel. On peut ainsi interroger une base de données textuelle avec des mots humains. Il semble possible d'intégrer ces programmes dans d'autres logiciels, et c'est cool.
ChatGPT is a fascinating technology that has the potential to transform the way we communicate with machines. Andrew Ng
Les LLM manipulent bien le texte. Les symboles, plus exactement. Ils sont utiles pour reformuler, rédiger des textes à partir de notes, changer de style, résumer dans certains cas. L'outil est convaincant.
L'outil n'est pas forcément toujours pertinent, cependant. La logique lui
échappe. Le
Quand on parle aujourd'hui de modèle IA, ou juste de modèle, on parle habituellement d'un réseau de neurones profond et entraîné. Notez que les données d'entraînement font partie du système IA, puisqu'elles fixent les poids internes. Les systèmes IA au coeur des agents dits généraux ou des modèles de fondation sont entrainés sur de vastes corpus (images, textes) puis ils sont réentrainés sur les données d'utilisation. Schématiquement, ils apprennent à parler puis ils améliorent leurs réponses.
Les performances des LLM sont remarquables
On pourrait tout à fait mettre d'autres algorithmes d'apprentissage automatique dans les modèles. Il en existe beaucoup. On pourrait aussi ne pas faire d'entrainement en utilisant des systèmes basés sur la connaissance, comme les systèmes experts ou des programmes qui s'appuient sur la logique symbolique. Ces algorithmes sont souvent moins efficaces que nos réseaux de neurones actuels, notamment parce qu'ils sont moins adaptés à l'exploitation de grandes bases de données. Les scientifiques et ingénieurs les étudient moins, car les budgets sont fléchés vers le deep learning. Pour faire un parallèle avec la physique, on peut dire que l'intelligence artificielle vit un moment analogue à ce que la physique théorique a vécu (et vit encore ?) avec la théorie des cordes*.
Pour plaire à tout le monde, il faut être le ciel bleu
Disait
Les performances remarquables - je le répète, car on me taxe souvent de réactionnaire ou d'incroyant - les performances remarquables, donc, des réseaux de neurones depuis 15 ans s'expliquent (un peu) par l'ingéniosité de leurs créateurs et (énormément) par la loi de Moore (pdf). Cette loi a organisé les progrès de l'industrie informatique depuis les années 70s. Elle indique que l'augmentation du nombre de transistors par processeur double tous les 18 mois. La puissance de calcul suit environ la même vitesse. Les gains sont difficiles à évaluer, je renvoie par exemple au top500. En 50 ans, on peut estimer qu'on a gagné entre 7 et 8 ordres de grandeur en puissance de calcul. On parle de facteurs multiplicatifs exprimés en millions. C'est massif.
Si on suit la loi de Moore, on a gagné un facteur 100 depuis 2010. Nombreux sont les gens qui affirment bruyamment que la loi ne tient plus, ou qu'elle tient encore. Nous le verrons dans quelques années.
Space is big. You just won’t believe how vastly, hugely, mind-bogglingly big it is. I mean, you may think it’s long way down the road to the chemist’s, but that’s just peanuts to space. Douglas Adams, A Hitchhiker’s Guide to the Galaxy
En un temps donné, les processeurs actuels font donc des millions de fois plus de calcul qu'en 1970. Et les méthodes de calcul ont été améliorées par les ingénieurs et chercheurs. La complexité algorithmique a été nettement réduite pour les opérations d'algèbre linéaire par exemple. On calcule donc bien mieux et beaucoup plus vite. Je ne connais pas d'autre industrie où de tels gains ont été observés en si peu de temps.
La leçon amère
Certains affirment d'ailleurs que les progrès en IA sont principalement dus à ces gains sur les calculs. Avec le recul, la bonne stratégie pour résoudre un problème est de concevoir un programme qui utilise des méthodes mathématiques générales, comme les calculs d'algèbre linéaire mentionnés plus haut ou les algorithmes de recherche en grande dimension. Autrement dit, pour résoudre un problème donné, être très intelligent et créer une méthode de calcul spécifique n'est pas forcément la meilleure stratégie ; il semble qu'il vaut mieux transformer ce problème pour se ramener à un cas qu'on sait bien résoudre. Calculer vite permet de s'affranchir (en partie) d'une réflexion trop poussée. Voir ce billet.
C'est ce qu'on voit avec le deep learning. On dispose d'une architecture générique qui permet de créer des systèmes qui apprennent à détecter des motifs et qui organisent leurs réponses en fonction de ce qu'ils ont détecté. La modélisation précise des problèmes peut être très basique - elle l'est souvent. C'est frustrant, mais c'est suffisant … si on dispose de suffisamment de données et de puissance de calcul.
Bilan
L'innovation numérique depuis 2010 s'appuie ainsi sur une vaste collection de neurones, ou plutot d'activateurs très simples, secs et pauvres, qui apprend un nombre énorme de micro-comportements, et qui fournit une prédiction à l'aide d'une manipulation astucieuse de symboles. Je rajoute une couche : nous ne sommes absolument pas certain qu'un réseau entraîné dispose, de manière interne, d'une quelconque forme de représentation de la connaissance extraite des données. C'est possible. Qui a dit probable ?
Le deep learning permet donc de construire des systèmes IA sur des taches précises. Mais sur des taches plus générales ? Les LLM manipulent bien le langage, mais infèrent-ils des fonctions plus complexes, comme le raisonnement ?
ChatGPT, LeChat, Claude etc
Ces systemes sont construits sur des LLM, donc à base de deep learning. Ils
sont décrits par pas mal de facheux (dont les techbros
d'
Pour les éventuelles capacités de raisonnement, c'est pareil : ces programmes manipulent des symboles sans forme de compréhension interne. Il y en a peut-être, proches peut-être des schémas de raisonnement humains ou biologiques, mais cela reste à démontrer.
Je sais que certains crient à l'émergence de fonctions cognitives de haut niveau. Ca reste à démontrer. Attendons que la bulle se calme, et faisons confiance aux scientifiques - et donnons-leur des moyens !
Conclusion
One might try to reach the moon by climbing a tree, reporting steady progress — but it’s still the wrong method. Edsger W. Dijkstra (attribué)
Le deep learning est une superbe avancée technique, qui permet de construire des systèmes IA efficaces et performants. Cette technologie ne résout pas le problème de l'IA générale, et de loin.
Retour aux sources ?
Au commencement était le Verbe La Génèse, Ancien Testament
Sommes-nous bien armés pour résister à des programmes qui manipulent le langage comme nous ?
Nous ne sommes toujours pas des machines. Nos textes sont pensés et écrits par des humains. Aucun texte n’est généré. Tout soutien sera le bienvenu.