Depuis que l’engouement actuel pour tout ce qui est généré par l’IA s’est installé, je me demande : que se passera-t-il lorsque le monde sera si rempli de choses générées par l’IA (textes, logiciels, images, musique) que nos ensembles de formation à l’IA seront dominés par contenu créé par l’IA. Nous en voyons déjà des indices sur GitHub : en février 2023, GitHub dit que 46 % de tout le code enregistré a été écrit par Copilot. C’est bon pour l’entreprise, mais qu’est-ce que cela signifie pour les futures générations de Copilot ? Dans un avenir proche, de nouveaux modèles seront formés sur le code qu’ils ont écrit. Il en va de même pour toutes les autres applications d’IA générative : DALL-E 4 sera formé sur des données comprenant des images générées par DALL-E 3, Stable Diffusion, Midjourney et autres ; GPT-5 sera formé sur un ensemble de textes comprenant du texte généré par GPT-4 ; et ainsi de suite. C’est inévitable. Qu’est-ce que cela signifie pour la qualité des résultats qu’ils génèrent ? Cette qualité s’améliorera-t-elle ou en souffrira-t-elle ?
Je ne suis pas le seul à me poser cette question. Au moins un groupe de recherche a expérimenté la formation d’un modèle génératif sur le contenu généré par l’IA générative et a constaté que le résultat, au fil des générations successives, était plus étroitement contraint et moins susceptible d’être original ou unique. La production de l’IA générative est devenue plus semblable à elle-même au fil du temps, avec moins de variations. Ils ont rapporté leurs résultats dans «La malédiction de la récursion», un article qui vaut la peine d’être lu. (Andrew Ng bulletin a un excellent résumé de ce résultat.)
Je n’ai pas les ressources nécessaires pour entraîner de manière récursive de grands modèles, mais j’ai pensé à une expérience simple qui pourrait être analogue. Que se passerait-il si vous preniez une liste de nombres, calculiez leur moyenne et leur écart type, les utilisiez pour générer une nouvelle liste, et faisiez cela à plusieurs reprises ? Cette expérience ne nécessite que de simples statistiques, pas d’IA.
Même si elle n’utilise pas l’IA, cette expérience pourrait néanmoins démontrer comment un modèle peut s’effondrer lorsqu’il est entraîné sur les données qu’il a produites. À bien des égards, un modèle génératif est un moteur de corrélation. À partir d’une invite, il génère le mot le plus susceptible de venir ensuite, puis le mot qui viendra le plus souvent après, et ainsi de suite. Si les mots « Être » apparaissent, le mot suivant est raisonnablement susceptible d’être « ou » ; le mot suivant est encore plus susceptible d’être « non » ; et ainsi de suite. Les prédictions du modèle sont plus ou moins des corrélations : quel mot est le plus fortement corrélé à ce qui l’a précédé ? Si nous entraînons une nouvelle IA sur ses résultats et répétons le processus, quel est le résultat ? Est-ce qu’on se retrouve avec plus de variation, ou moins ?
Pour répondre à ces questions, j’ai écrit un programme Python qui générait une longue liste de nombres aléatoires (1 000 éléments) selon la distribution gaussienne de moyenne 0 et d’écart type 1. J’ai pris la moyenne et l’écart type de cette liste et je les ai utilisés pour générer une autre liste de nombres aléatoires. J’ai itéré 1 000 fois, puis j’ai enregistré la moyenne finale et l’écart type. Ce résultat était suggestif : l’écart type du vecteur final était presque toujours beaucoup plus petit que la valeur initiale de 1. Mais il variait considérablement, j’ai donc décidé de réaliser l’expérience (1 000 itérations) 1 000 fois et de faire la moyenne de l’écart type final de chaque expérience. (1 000 expériences, c’est exagéré ; 100, voire 10, donneront des résultats similaires.)
Lorsque j’ai fait cela, l’écart type de la liste a gravi (je ne dirai pas « convergé ») à environ 0,45 ; même si elle varie encore, elle se situe presque toujours entre 0,4 et 0,5. (J’ai également calculé l’écart type des écarts types, même si ce n’était pas aussi intéressant ou suggestif.) Ce résultat était remarquable ; mon intuition m’a dit que l’écart type ne s’effondrerait pas. Je m’attendais à ce qu’il reste proche de 1, et l’expérience ne servirait à rien d’autre qu’à faire fonctionner le ventilateur de mon ordinateur portable. Mais avec ce premier résultat en main, je ne pouvais m’empêcher d’aller plus loin. J’ai augmenté le nombre d’itérations encore et encore. À mesure que le nombre d’itérations augmentait, l’écart type de la liste finale devenait de plus en plus petit, tombant à 0,0004 après 10 000 itérations.
Je pense que je sais pourquoi. (Il est très probable qu’un vrai statisticien examinerait ce problème et dirait : « C’est une conséquence évidente du loi des grands nombres. ») Si vous regardez les écarts types une itération à la fois, il y a beaucoup d’écart. Nous générons la première liste avec un écart type de un, mais lors du calcul de l’écart type de ces données, nous obtiendrons probablement un écart type de 1,1 ou 0,9 ou presque n’importe quoi d’autre. Lorsque vous répétez le processus plusieurs fois, les écarts types inférieurs à un, bien qu’ils ne soient pas plus probables, dominent. Ils rétrécissent la « queue » de la distribution. Lorsque vous générez une liste de nombres avec un écart type de 0,9, vous avez beaucoup moins de chances d’obtenir une liste avec un écart type de 1,1 et plus de chances d’obtenir un écart type de 0,8. Une fois que la queue de la distribution commence à disparaître, il est très peu probable qu’elle repousse.
Qu’est-ce que cela signifie, le cas échéant ?
Mon expérience montre que si vous réinjectez la sortie d’un processus aléatoire dans son entrée, l’écart type s’effondre. C’est exactement ce que les auteurs de « The Curse of Recursion » ont décrit en travaillant directement avec l’IA générative : « les queues de distribution ont disparu », presque complètement. Mon expérience fournit une manière simplifiée de penser l’effondrement et démontre que l’effondrement du modèle est quelque chose auquel nous devons nous attendre.
L’effondrement du modèle pose un sérieux problème au développement de l’IA. En apparence, l’empêcher est simple : il suffit d’exclure les données générées par l’IA des ensembles d’entraînement. Mais ce n’est pas possible, du moins maintenant, car les outils de détection du contenu généré par l’IA ont s’est avéré inexact. Le filigrane pourrait aider, même si le filigrane apporte son propre ensemble de problèmes, y compris si les développeurs d’IA générative la mettront en œuvre. Aussi difficile que puisse être l’élimination du contenu généré par l’IA, la collecte de contenu généré par l’homme pourrait devenir un problème tout aussi important. Si le contenu généré par l’IA remplace le contenu généré par l’homme, il pourrait être difficile de trouver un contenu généré par l’homme de qualité.
Si tel est le cas, l’avenir de l’IA générative pourrait être sombre. À mesure que les données d’entraînement seront de plus en plus dominées par les résultats générés par l’IA, leur capacité à surprendre et à ravir diminuera. Cela deviendra prévisible, ennuyeux, ennuyeux et probablement tout aussi susceptible de « halluciner » qu’il ne l’est actuellement. Pour être imprévisibles, intéressants et créatifs, nous avons encore besoin de nous-mêmes.