Blog
Recherche

DetectGPT expliqué : comment la courbure de probabilité repère l'IA

DetectGPT repère un texte machine en vérifiant si de petites réécritures le rendent moins probable. Fonctionnement de la méthode, résultats obtenus et points faibles.

DetectGPT est une méthode zero-shot de détection des textes générés par IA qui pose une question simple : si l'on modifie légèrement un passage, un modèle de langage le juge-t-il moins probable ? Un texte écrit par une machine se situe généralement sur un pic local de la probabilité du modèle, si bien que presque toute modification fait baisser son score. Un texte humain ne présente généralement pas ce pic marqué.

L'idée vient d'un article de 2023 d'Eric Mitchell et de ses collègues, présenté à ICML 2023. Elle a orienté une grande partie des recherches sur la détection qui ont suivi, y compris les méthodes plus rapides sur lesquelles reposent aujourd'hui de nombreux outils. Cette explication présente la méthode en termes simples, les résultats rapportés par les auteurs, et ce que cela implique si vos propres textes sont soumis à un détecteur.

Le problème que DetectGPT voulait résoudre

Avant DetectGPT, les détecteurs se répartissaient en deux grandes familles. Les classifieurs entraînés apprennent à partir d'exemples étiquetés de textes humains et machine, ce qui fonctionne bien sur des données proches de l'ensemble d'entraînement et moins bien sur tout ce qui est nouveau. Les statistiques zero-shot, comme la log-probabilité moyenne ou le rang des tokens, ne demandent aucun entraînement mais restent grossières : un passage peut être très probable simplement parce que son sujet est courant ou son style formel.

Mitchell et ses collègues voulaient une solution intermédiaire. Leur détecteur n'utiliserait que les log-probabilités du modèle soupçonné d'avoir écrit le texte, plus un outil générique pour effectuer de petites modifications. Pas de jeu de données étiqueté, pas d'entraînement de classifieur, et pas de filigrane inséré à la génération. Si vous voulez d'abord le contexte général, notre présentation de comment fonctionnent les détecteurs d'IA décrit les principales familles de détecteurs.

Comment fonctionne DetectGPT : la courbure de probabilité en termes simples

Un modèle de langage attribue une probabilité à chaque passage. Imaginez l'ensemble des passages possibles comme un relief de collines et de vallées, où l'altitude correspond à la probabilité que le modèle attribue à un passage. Quand un modèle génère du texte, il choisit à chaque étape des mots de forte probabilité ; ses productions se retrouvent donc près des sommets.

Prenez maintenant un passage et faites-y quelques petites modifications qui préservent le sens. Si le passage se trouvait au sommet d'une colline, chaque pas vous fait descendre, et les versions modifiées obtiennent un score plus bas. S'il se trouvait sur une pente douce ou un terrain plat, comme c'est souvent le cas d'un texte humain, certaines modifications montent, d'autres descendent, et la variation moyenne est proche de zéro. L'article appelle cette forme une courbure négative : le sommet d'une colline s'incurve vers le bas de tous les côtés.

Le texte machine se situe près d'un pic, donc ses copies perturbées perdent en log-probabilité ; le texte humain se situe sur un terrain plus plat
  • Passage généré par un modèle
  • Passage écrit par un humain
Exemple illustratif de l'idée, pas des données de l'article

En pratique, la méthode se déroule en quatre étapes.

  1. Évaluer l'originalCalculer la log-probabilité du passage selon le modèle soupçonné de l'avoir écrit.
  2. Le perturberMasquer de courtes séquences de mots et laisser un modèle distinct, T5, les remplacer par des alternatives plausibles.
  3. Évaluer les copiesCalculer la log-probabilité de chaque copie perturbée selon le même modèle soupçonné.
  4. ComparerSi l'original obtient un score nettement supérieur à la moyenne des copies, signaler le passage comme probablement généré par une machine.

Le modèle de perturbation compte. Les auteurs ont utilisé T5, un modèle de remplissage de masques, pour remplacer de courtes séquences afin que les copies restent fluides et proches par le sens. Dans leur configuration principale, ils masquaient environ 15 % des mots par séquences de deux mots et tiraient 100 échantillons perturbés par passage. Le score final est l'écart entre l'original et la moyenne des copies perturbées, normalisé par la variabilité des scores perturbés.

Illustration abstraite sur DetectGPT : un passage posé au sommet d'une surface de probabilité incurvée, entouré de copies légèrement modifiées plus bas sur la pente

Ce que rapporte l'article DetectGPT

Le résultat phare porte sur la détection de fausses informations. Sur des articles de presse générés par le modèle GPT-NeoX de 20 milliards de paramètres, DetectGPT a atteint une AUROC de 0,95, contre 0,81 pour la meilleure méthode zero-shot de référence. L'AUROC mesure la capacité d'un score à séparer deux groupes sur l'ensemble des seuils possibles : 0,5 équivaut à un pile ou face et 1,0 à une séparation parfaite.

0,81AUROC, meilleure méthode zero-shot antérieure (articles de presse GPT-NeoX)
0,95AUROC, DetectGPT sur la même tâche
100perturbations T5 par passage dans la configuration principale

Les auteurs ont testé des modèles allant de 1,5 milliard de paramètres (GPT-2) à des modèles de 175 milliards comme GPT-3, sur des articles de presse (XSum), des paragraphes de Wikipédia (contextes SQuAD) et des amorces d'écriture créative issues de Reddit. Ils ont aussi mené un test simple de révision de type humain : remplacer des portions croissantes du texte machine par des réécritures T5. La détection est restée au-dessus de 0,8 d'AUROC même lorsque près d'un quart du texte avait été remplacé.

Pourquoi DetectGPT compte pour les personnes dont les textes sont contrôlés

La plupart des détecteurs commerciaux ne publient pas leur fonctionnement interne, et beaucoup sont des classifieurs entraînés plutôt que des tests de type DetectGPT. L'article nomme pourtant le signal sur lequel repose une bonne partie de la détection : un texte trop prévisible pour un modèle. Cela a plusieurs conséquences pratiques pour les chercheurs.

  • La prose formelle est prévisible par nature. Les sections de méthodes, les précautions de langage standard et les expressions propres à un domaine se répètent dans des milliers d'articles. Un modèle les juge probables, ce qui rapproche une écriture humaine soignée du côté machine. Nous en parlons dans pourquoi une prose formelle peut sembler écrite par une IA.
  • Le score porte sur le passage, pas sur l'auteur. DetectGPT mesure une propriété du texte selon un modèle donné. Il ne voit ni vos brouillons, ni vos notes, ni vos intentions.
  • Un texte court est plus difficile à juger. Moins de tokens signifie une estimation de la courbure plus bruitée. Un résumé seul offre moins de matière au test qu'un chapitre entier.

Le détecteur dépend aussi du modèle précis utilisé pour évaluer le texte. Un texte situé sur un pic pour un modèle ne l'est pas forcément pour un autre, ce qui explique en partie pourquoi différents outils ne s'accordent pas sur un même paragraphe.

Les limites de DetectGPT

L'article expose franchement ses contraintes, et des travaux ultérieurs en ont révélé d'autres.

Il faut le bon modèle et beaucoup de calcul

DetectGPT fonctionne au mieux lorsqu'il peut interroger les log-probabilités du modèle qui a écrit le texte. Pour les modèles commerciaux fermés, cet accès est limité, et utiliser un autre modèle d'évaluation affaiblit le signal. Le coût est l'autre problème : chaque passage nécessite cent passes avant supplémentaires. L'article suivant, Fast-DetectGPT, a mesuré 79 113 secondes pour DetectGPT sur son benchmark contre 233 secondes pour sa propre méthode sur le même GPU A100, soit un écart d'environ 340 fois.

La paraphrase brise le signal de courbure

La méthode suppose que le passage se trouve toujours là où le modèle l'a laissé. Une paraphrase le déplace. Krishna et ses collègues l'ont testé directement dans leur article de NeurIPS 2023 sur le paraphraseur DIPPER : réécrire le texte machine a fait passer le taux de détection de DetectGPT de 70,3 % à 4,6 %, à un taux de faux positifs fixé à 1 %. Sadasivan et ses collègues ont ensuite rapporté que la paraphrase faisait chuter l'AUROC de ce type de détecteur zero-shot de 96,5 % à 25,2 %. C'est la même faiblesse qui explique le retour constant des astuces de prompt ; voir pourquoi de simples prompts rendent rarement un texte ChatGPT indétectable.

Taux de détection de DetectGPT avant et après paraphrase par DIPPER (à 1 % de faux positifs)
  • Texte machine original70,3 %
  • Après paraphrase DIPPER4,6 %
Source : Krishna et al., « Paraphrasing evades detectors of AI-generated text, but retrieval is an effective defense », NeurIPS 2023

Le modèle de perturbation influe sur le résultat

Les auteurs notent que leur approche nécessite une fonction de perturbation raisonnable. T5 fonctionne pour l'anglais, mais dans les domaines où un modèle de remplissage standard ne produit pas de réécritures réalistes, les performances peuvent baisser. Le langage scientifique spécialisé en est un cas plausible.

Ce qui a suivi DetectGPT

DetectGPT a ouvert une lignée de détecteurs zero-shot qui conservent l'intuition de départ tout en réduisant le coût. Fast-DetectGPT remplace les réécritures de passages entiers par un échantillonnage au niveau des tokens, et Binoculars compare deux modèles apparentés pour corriger l'effet des sujets surprenants en eux-mêmes. Nous présentons les deux dans Fast-DetectGPT et Binoculars expliqués. De l'autre côté, la recherche sur les attaques par paraphrase, résumée dans peut-on détecter de façon fiable un texte généré par IA ?, montre à quel point ces signaux dépendent d'un texte resté proche de ce qu'un modèle produirait.

La place d'Academic Humanizer

Les détecteurs fondés sur la prévisibilité réagissent généralement à des phrases isolées qui paraissent trop lisses ou trop génériques, y compris dans des brouillons dont les idées et les données appartiennent entièrement à l'auteur. Academic Humanizer travaille à ce niveau : il analyse un brouillon pour repérer les phrases signalées par les détecteurs, ne réécrit que celles-ci en conservant affirmations, chiffres, citations et terminologie, et laisse le reste exactement tel qu'il a été écrit. Le rapport de détection d'IA intégré affiche chaque phrase signalée à côté de sa réécriture pour que vous puissiez vérifier chaque modification avant de l'utiliser, et il est utile de confirmer à cette occasion la politique de votre établissement ou de votre revue en matière d'IA.

Vos idées, sans empreinte d’IA

Collez un brouillon, voyez quelles phrases les détecteurs d’IA signalent, puis humanisez seulement ces phrases.

Essayer Humanizer gratuitement

À lire ensuite