Chronique de l’IA #2

Tout un été a passé depuis la dernière chronique de l'IA, mais sans trêve estivale ! En effet, l'actualité du domaine n'a qu'à peine marqué le pas, si bien qu'il faut de nouveau faire des choix déchirants pour retenir ce qu'il convient de mentionner sans fatiguer le lecteur.
Toutefois, puisque votre serviteur y a consacré un temps, il n'en réservera pas moins quelques lignes finales pour vous présenter une sélection draconienne de ressources si, comme lui, loin de vous contenter de regarder le DL se déployer partout, vous souhaitez comprendre un peu comment ça marche...
NB : Ce billet a été rédigé début octobre par un humain et non une boîte de conserve, et une version publiée dans Programmez! #260 de novembre 2023.

Toujours plus fort !

La séquence d’ouverture de la série Secret Invasion générée avec l'IA
Comme prévu, l'idée d'imposer un moratoire sur les développements de l'IA a fait long feu. Anthropic, Open AI, Google et autres ont largement fait progresser leurs modèles, notamment en ouvrant ces derniers plus sur le monde. Fin septembre, Hard Fork, le podcast tech et rigolo du New York Times, rapporte que ChatGPT peut désormais analyser le contenu d'images, rechercher sur Internet, et vous répondre en parlant.
Du côté des usages, l'on n'est pas en reste. Mi-juin, en plein grève des auteurs à Hollywood, Polygon nous apprend que la séquence d'ouverture de la série Secret Invasion a été générée avec l'aide d'outils exploitant l'IA. Pour ce qui concerne l'audio, fin août, Hard Fork nous rapporte que le buzz suscité en avril par la chanson Heart on my Sleeve à partir d'une imitation de la voix du rapper Drake n'a été que le début. Désormais, les clips imitant des chanteurs célèbres décédés ou non pullulant désormais sur YouTube, leur qualité en faisant des hits en puissance – de fait, Johny Cash chantant Barbie Girl est très réussi ! Quant à l'écrit, n'en parlons pas : fin septembre, c'en est au point que The Guardian rapporte qu'Amazon a décidé de limiter à trois par jour le nombre de livres qu'un auteur peut publier sur son site.
Dans ces conditions, l'on se doute que certains veulent écraser non pas le champignon, mais la pédale de frein. Fin septembre, les auteurs de Hollywood ont adopté un accord avec les studios pour sortir d'une grève démarrée début mai. Comme l'explique un article de Vox, s'ils ont cessé le travail, c'est notamment, mais pas essentiellement, non pas par rejet radical de l'IA, mais par crainte que l'IA ne soit utilisée sans qu'ils aient leur mot à dire, à la manière dont ils ont été pris de court par le streaming. Analysant les clauses de l'accord relatives au sujet, The Guardian, pour qui "Hollywood writers triumphed over AI", relève que le recours à l'IA sera libre pour les auteurs, mais encadré pour les studios de sorte que les auteurs puissent en tirer profit. Reste que cela ne concerne que les auteurs. Les acteurs, eux, sont toujours en grève depuis mi-juillet...

Ballon d'oxygène pour la tech

Fin des suppressions d'emploi dans la tech
Fin mars, The Economist pose la question de savoir "Where have all the laid-off tech workers gone?" De fait, un coup d'œil sur l'historique maintenu par TechCrunch permet de constater que plus de 200 000 personnes ont été let go dans la tech en 2023... La réponse est que ce sont surtout dans les fonctions support que l'on a dégraissé le mammouth, notamment les RH, recrutées en masse à l'époque pour recruter en masse des techies – 1 millions de postes créés entre l'été 2020 et début 2023, est-il rappelé. Les RH dans la tech, ça rentre et ça sort avec la machine à café...
Reste que la tendance est à l'apaisement. A quoi l'attribuer ? Début juin, le Washington Post fait le constat optimiste que "The tech industry was deflating. Then came ChatGPT." Après l'explosion de la bulle des cryptomonnaies, l'argent coule de nouveau à flot, cette fois en direction de la moindre entreprise qui, petite ou grande, prétend développer ses activités dans l'IA. Ce serait plus d'une dizaine de milliards de dollars qui auraient déjà été investis. Bref, c'est l'"AI gold rush" actuellement.
Chacun s'organise donc pour profiter de l'occasion. Fin mai, le New York Times consacre un long article sur la question – à écouter sur The Daily, pour ceux qui préfèrent. Dans "A Week With the Wild Children of the A.I. Boom", les journalistes restituent l'ambiance dans l'incubateur Hacker Fellowship Zero, ou HF0 pour les intimes – zéro à la fin. C'est à lire ! Très Silicon Valley sous certains aspects, la série rigolote de mi-2010, même si le truculent Erlich Bachman n'est pas dans le coin.
La France fait même pour une fois l'actualité dans le domaine. TechCrunch rapporte que Mistral, une start-up de quatre semaines à peine, a levé 105 millions d'euros à l'occasion d'un premier tour de table. Fondée par un trio de transfuges de Deepmind et de Meta, son projet est pour l'heure encore flou : produire des modèles en veillant à n'utiliser que du libre de droit ? Pourquoi pas, et tant mieux. Après tout, les cerveaux formés en France ont tellement contribué aux derniers progrès de l'IA qu'il serait temps que le pays en touche quelques dividendes. Reste que les success stories à la Hugging Face ont plutôt tendance à vite se déplacer outre-Atlantique. Bon vent !

De l'espoir pour les Devs

Jensen Huang pense que l'IA permet à tous de programmer
Quant aux développeurs qui ne seront pas de la partie, ils auraient de moins en moins à craindre qu'un LLM vienne les remplacer. Sans doute, début août, lors du SIGGRAPH 2023, l'on a encore entendu Jensen Huang, le patron de Nvidia y revenir :
Human is the new programming language. We've democratized computer science. Everybody can be a programmer now because human language, natural language, is the best programming language. And that's the reason why ChatGPT has been so popular. Large Language Model is the new computing platform, because now the programming language is human, and what you program that computer understands large language models.
A l'étude, il semble que ce soit surtout pour vendre sa came. Ainsi, mi-septembre, Wired accueille une opinion selon laquelle "ChatGPT Isn't Coming for Your Coding Job". L'argument est que l'histoire de l'informatique montre que chaque fois que l'on montre aux développeurs la porte, l'on accroît la complexité des systèmes, ce qui rend nécessaire de les faire revenir. Et en l'espèce, ce n'est pas ChatGPT qui pourra alors les remplacer, car ses capacités sont bien trop limitées quand on lui demande de programmer.
D'ailleurs, début août, le papier Who Answers It Better? An In-Depth Analysis of ChatGPT and Stack Overflow Answers to Software Engineering Questions montre qu'interrogé sur 517 questions tirées de Stack Overflow, ChatGPT a sorti des bêtises plus de la moitié des fois. Et les auteurs du papier de conclure que "These findings underscore the need for meticulous error correction in ChatGPT". Passer du temps à déboguer le code produit par ChatGPT ? Non merci, diront beaucoup, qui préfèreront l'écrire eux-mêmes...

Auto-intoxication alimentaire

ChatGPT est intoxiqué par le contenu généré par des LLMs
Mi-avril, le CEO d'Open AI annonçait déjà que l'ère du gigantisme était passée ; "I think we're at the end of the era where it's going to be these, like, giant, giant models", était-il rapporté dans Wired. La suite semble lui avoir donné raison, si l'on en juge d'après ce que certains, exploitant des ressources minimales, ont pu tirer du plus léger des modèles de LLaMA. Aussi, peut-être Sam Altman, qui n'avait pas plus argumenté, avait-il à l'esprit certains enjeux qui se sont fait jour depuis, en premier lieu la fiabilité.
On le sait, certains ne sont pas privés de qualifier ChatGPT de "bullshit generator", le problème étant que l'outil semble être passé à l'école de Lénine, pour qui il n'y avait de meilleure recette pour conquérir les masses que "dites-leur ce qu'ils veulent entendre". Du coup, cela soulève un problème : si le LLM sous-jacent est entraîné sur la base des textes qui circulent, et que toujours plus de ces textes sont produits par des LLM, et que ces textes contiennent donc des inepties générées dans le seul objectif de plaire et charmer, le LLM ne risque-t-il pas d'être intoxiqué par ce que ses confrères produisent ?
Des chercheurs prétendent l'avoir vérifié. Mi-juin, dans un papier intitulé The Curse of Recursion: Training on Generated Data Makes Models Forget, ils expliquent que "use of model-generated content in training causes irreversible defects in the resulting models, where tails of the original content distribution disappear", ce qu'ils qualifient de "model collapse". Hard Fork ne manque pas de rapporter la nouvelle, en insistant sur ce point : "If you want to have a truly pristine model, you gonna wanna go get pre-2022 data". Autrement dit, pour échapper à la malédiction, sera-t-on condamné à ne pouvoir utiliser que les données pompées sur le Web avant l'apparition de ChatGPT ?

Bad mojo pour Nvidia ?

Mojo de Modular, le Python pour l'AI
Nvidia n'a sans doute pas encore trop de souci à se faire, mais sa position dominante en tant que fournisseur de GPU pour entraîner et faire tourner les modèles semble devoir être toujours plus être contestée.
Mi-juin, AMD présente son MI300X et son petit-frère le MI300A, qui sont en soi comme des data centers concentrés. D'après Forbes, la route serait encore longue pour AMD avant de seulement pouvoir prétendre rivaliser, car c'est tout un écosystème qu'il lui faudrait être en capacité de détrôner. En effet, Nvidia ne se contente pas de fabriquer du matériel, elle livre tout un environnement logiciel pour l'exploiter. Tout de même, AWS a rapporté qu'elle étudiait la possibilité de recourir à AMD.
Par ailleurs, à l'autre bout du spectre, donc chez les Devs plutôt que les Ops, la question de la dépendance à Nvidia est aussi soulevée. Vers la même période, dans un entretien accordé à TWIML - un podcast tout à fait recommandé ! -, Chris Lattner revient dans le détail sur les origines et les objectifs du bébé de Modular, le langage Mojo. Pour faire court, Mojo est un Python sous stéroïdes qui offre de nouvelles possibilités – types et instructions – pour accélérer considérablement les calculs dont le DL est si gourmant. Modular annonce des gains de l'ordre de x35 000, mais Chris Lattner reconnaît lui-même que c'est du cherry picking – espérez tout de même des gains de plusieurs x100.
Or Modular, c'est aussi tout un moteur sous-jacent, conçu pour être hackable, contrairement à CUDA :
Putting a custom op into tensorflow or pytorch is very difficult. We talk about three layers problem, right ? Python, C++, CUDA. Well, if you want put a custom CUDA op into pytorch, you have to write C++. CUDA is like a C++ thing, right? That's a C++ thing that doesn't have a debugger. A whole bunch of weird constraints where you might wedge your GPU. And that complexity makes it so people don't do the kind of research they might otherwise do.
Et Chris Lattner d'espérer qu'avec un tel moteur, les chercheurs n'hésiteront pas à remettre en cause jusqu'à ce qui apparaît aujourd'hui comme incontournable : "Maybe there is a thing beyond transformers?", il ose interroger.
On le voit, il y a tout à espérer quand l'on s'attaque à un monopole, en premier lieu libérer une innovation qui peut trop rapidement être étouffée.

De précieuses ressources pour s'y mettre

Quelques lectures incontournables pour se lancer dans le deep learning
Par où aborder le DL pour comprendre comment ça marche ? Ecartez d'emblée les vulgaires vulgarisations comme Science Etonnante – le gars prétend "expliquer" le DL sans présenter la rétropropagation, ce qui est très fort... En fait, il ne faut pas avoir peur de rentrer dans les détails, sans se laisser rebuter par une complexité qui n'est qu'apparente, car s'il est un domaine où l'on bidouille d'abord et où l'on tente d'expliquer après – en noyant souvent le poisson, car l'on n'y arrive pas –, c'est bien celui-là ! Voici une sélection drastique de ressources testées et approuvées. Dans l'ordre :
  • StatQuest, la chaîne YouTube de Josh Starmer est absolument incontournable. Les explications qu'il prodigue dans la série de vidéos Neural Networks / Deep Learning sont limpides et permettent de s'approprier des mécanismes fondamentaux, tout particulièrement la rétropropagation qui est au cœur de l'apprentissage. Noter que Josh a publié tout cela dans un ouvrage, proposé sur son site.
  • Lecture Collection | Convolutional Neural Networks for Visual Recognition (Spring 2017) a beau dater un peu, c'est un cours de l'université de Stanford sur YouTube qui reste d'actualité et qui est tout aussi incontournable. Le visionner permet de parfaire l'appropriation des mécanismes fondamentaux et de s'engager sur la voie de leur mise en œuvre.
  • Deep learning with Python (2nd Edition) est l'ouvrage incontournable pour cette fois réellement mettre les mains à la pâte. Son auteur est François Chollet, à qui l'on doit Keras, une API de Python qui facilite considérablement la création de modèles de toute sorte, au point que l'on peut se demander s'il serait possible de faire plus simple.
  • Generative Deep Learning (2nd Edition) permet de compléter la lecture du précédent des plus heureusement. Comme son titre l'indique, cet ouvrage de David Foster se focalise sur ce qu'il y a de plus magique dans le DL, à savoir la génération de données.
Les "chercheurs" du domaine publient des articles à la pelle sur aXiv.org. S'y référer peut se révéler assez décevant, pour la raison évoquée plus tôt, à savoir que le DL, c'est de la technique, pas de la science. Toutefois, après un bon nombre de lectures, il apparaît qu'une catégorie d'articles présente un grand intérêt, surtout que certains sont régulièrement mis à jour : ce sont les surveys, qui dressent le panorama de ce qui se fait sur un sujet. Ainsi, sur les LLMs, on recommandera vivement A Survey of Large Language Models, qui vient d'ailleurs d'être mis à jour ce mois de septembre.
Chronique de l’IA #2