adam121 - Fotolia
OpenAI s’attaque à la difficile détection des textes générés par son IA
OpenAI a lancé un outil pour tenter de détecter les textes écrits par les modèles NLG/NLP. L’institut de recherche étudie également les moyens pour apposer une marque invisible aux contenus générés par ses IA. Une tâche complexe à automatiser qui oppose les chercheurs sur la méthode à employer.
Au vu de la popularité de ChatGPT, et de l’impossibilité de contrôler systématiquement les travaux des étudiants, certaines universités et responsables de groupe scolaire, dont le département de l’éducation à New-York, aux États-Unis et Sciences-Po en France, ont interdit par principe le recours à l’agent conversationnel pour rédiger des devoirs, des articles de recherche ou des mémoires.
Un modèle de génération de texte peut produire de fausses informations. Surtout, de tels modèles peuvent favoriser la malhonnêteté intellectuelle, justement dans le cas où un étudiant utiliserait une telle IA pour rédiger tout ou partie d’un devoir. Cela pourrait être considéré comme du plagiat (suivant la nature du contenu généré) ou de la triche.
En la matière, les sanctions sont strictes en France : interdiction d’examen pendant 5 ans, annulation du diplôme, voire amende et peine d’emprisonnement pour les cas les plus graves.
Des journalistes et des politiques ont également exprimé leur peur que de telles intelligences artificielles soient utilisées pour mener de grandes campagnes de désinformation.
Rapidement, OpenAI a réagi en indiquant qu’il cherchait une solution pour identifier les contenus générés par son service d’intelligence artificielle et d’autres. Le 31 janvier 2023, l’entreprise soutenue financièrement par Microsoft a dévoilé un outil de classification pour détecter si un texte a été généré par un modèle de deep learning comme les siens, ou par un humain.
Une IA pour détecter la prose des IA
L’outil peut effectuer ces détections sur des portions de textes de plus de 1 000 caractères (entre 150 et 250 mots, précise l’entreprise). Celui-ci doit déterminer s’il est « très peu probable », « peu probable », « possible » ou « probable » qu’un texte soit le fruit d’une IA. Une dernière étiquette permet d’indiquer que l’outil n’a pas réussi à déterminer si l’auteur est humain ou non.
Ce classificateur est lui-même une version affinée (fine tuned en VO) d’un modèle GPT, sans qu’OpenAI en précise la variante exacte.
D’un côté, il a été entraîné à partir de textes générés par « 34 modèles NLP/NLG provenant de 5 organisations différentes, dont OpenAI ». De l’autre, OpenAI a utilisé trois sources de production humaine : un corpus de textes tiré de Wikipédia, un jeu de données WebText collecté en 2019 et des textes écrits par des annotateurs dans le cadre de l’entraînement d’InstructGPT, le modèle qui a inspiré le développement de ChatGPT.
Ainsi, le data set du classificateur serait « équilibré » : la moitié du jeu d’entraînement final est générée par des modèles NLG, l’autre moitié est attribuée à des auteurs humains. Environ 90 % du corpus est rédigé en anglais.
« Pour minimiser les corrélations fallacieuses (par exemple, le sujet), nous jumelons chaque échantillon de texte écrit par un modèle avec un échantillon similaire de texte écrit par l’homme », précisent les chercheurs d’OpenAI. Ainsi, pour InstructGPT, chaque invite générée a été couplée avec la réponse qu’aurait faite un annotateur.
Les textes en provenance de Wikipédia ont été sélectionnés « au hasard » et ont été tronqués, puis les chercheurs ont développé un modèle de complétion dont ils ont comparé les résultats avec la fin des échantillons de texte rédigé par des humains.
Un outil « pas totalement fiable »
Ce n’est pas la première fois que les chercheurs mènent cet exercice. « Nous constatons que notre classificateur est plus performant que celui que nous avons précédemment publié, avec un score AUC de 0,97 sur l’ensemble de validation et de 0,66 sur le jeu de données de test (comparé à 0,95 sur l’ensemble de validation et 0,43 sur l’ensemble de tests pour notre classificateur précédemment publié) », écrivent les responsables du projet.
L’AUC – Area under the ROC Curve en VO ou fonction d’efficacité du récepteur en français – est une mesure synthétique de performance d’un modèle de classification, généralement comprise entre 0 et 1. Or, un modèle d’IA affichant un score AUC de 0,66 sur 1 sur un jeu de données de test est souvent jugé inefficient.
« Notre classificateur n’est pas totalement fiable », traduisent les chercheurs. « Lors de nos évaluations sur un ensemble de textes en anglais, notre classificateur a correctement identifié 26 % des textes écrits par l’IA (vrais positifs) comme étant “probablement écrits par l’IA”, alors qu’il a incorrectement étiqueté des textes écrits par des humains comme étant écrits par l’IA dans 9 % des cas (faux positifs) ».
Par ailleurs, les employés d’OpenAI observent que le classificateur s’améliore quand les textes sont longs, mais a tendance à perdre en efficacité face aux modèles NLG les plus sophistiqués (ceux qui reposent sur un très grand nombre de paramètres).
OpenAI identifie plusieurs difficultés. Il se peut que dans les jeux de données d’entraînement attribués aux humains, certains textes soient générés par des IA. En outre, le modèle de classification n’est efficace que pour les textes écrits en langue anglaise. Les documents dont le contenu est prévisible (par exemple une suite de nombres primaires) rendent difficile l’identification de l’auteur.
En outre, il serait complexe de généraliser l’apprentissage d’un tel classificateur en dehors de son jeu de données d’entraînement (ce qui explique le faible score AUC sur l’ensemble de tests). Enfin et surtout, un utilisateur « malveillant » peut se servir d’un tel outil pour évaluer si un texte généré par une IA sera reconnu comme tel et auquel cas le modifier pour faire échouer ce test.
Marquer les contenus produits par ChatGPT
Ce classificateur n’est donc qu’un outil parmi d’autres pour tenter de reconnaître un contenu produit par une intelligence artificielle, indique OpenAI. Il cible pour l’instant le monde de l’éducation et les journalistes anglo-saxons. Tout comme il a donné accès à ChatGPT, OpenAI l’a rendu public pour tenter de l’améliorer. Dans un même temps, les chercheurs de l’institut privé planchent sur une technique pour apposer un filigrane (watermark en VO) – à la manière d’un système DRM – aux contenus générés par GPT-3 et ses variantes.
Le rôle d’un modèle de génération de langage est de prédire le prochain mot, la syllabe suivante ou le signe de ponctuation dans une phrase. Cet élément est appelé token (ou jeton en français). « Au fond, GPT génère constamment une distribution de probabilité sur le prochain jeton à générer, en fonction de la chaîne de jetons précédents », décrit un billet de blog Scott Aaranson, chercheur spécialisé en informatique quantique au MIT ayant rejoint OpenAI en juin dernier. « Une fois que le réseau neuronal a généré la distribution, le serveur OpenAI échantillonne un jeton en fonction de cette distribution - ou d’une version modifiée de la distribution, en fonction d’un paramètre appelé “température” », poursuit-il.
Selon ce principe, si le paramètre température est réglé sur zéro, le modèle effectuera toujours la même réponse à une question. Si le curseur est placé sur 1, l’algorithme sélectionnera le prochain jeton de manière (très) aléatoire.
Pour tenter de signer les résultats de modèles tels ChatGPT, OpenAI imagine un système où le prochain token dans une phrase est sélectionné de manière pseudo-aléatoire à l’aide d’un algorithme de chiffrement « dont la clé n’est connue que d’OpenAI ».
Pour l’utilisateur final, cela ne changerait rien, mais en introduisant un biais de score invisible à l’œil nu à travers cet algorithme de chiffrement, OpenAI aurait ainsi la possibilité de vérifier qu’une séquence de tokens consécutifs a bien été produite par un de ses agents conversationnels. Cela ne nécessiterait pas de modifier les paramètres du réseau de neurones : cette technique consisterait à ajouter une enveloppe par-dessus le modèle sous-jacent. Cela éviterait également de passer par une solution plus simple, mais beaucoup plus radicale et bien plus problématique au regard de la protection des données personnelles : l’enregistrement de toutes les invites et des réponses dans une base de données.
Les premiers tests de ce système de marquage sont concluants. Reste à savoir si OpenAI arrivera à l’introduire en production et s’il n’affecte pas les performances de l’application.
D’autres méthodes en préparation
De leur côté, quatre chercheurs de l’Université de Stanford ont présenté DetectGPT. Au lieu d’entraîner un autre modèle de langage pour tenter de détecter les articles générés par GPT-NeoX (20 milliards de paramètres) ou de marquer le contenu, les chercheurs se penchent, eux aussi, sur la probabilité qu’une séquence spécifique de mots soit « écrite » par un modèle.
Ils ont réussi à prouver qu’un modèle tel GPT-2 produit déjà son propre signal quand il génère une portion de texte et qu’il est possible de la détecter en accédant aux probabilités logarithmiques d’un tel algorithme. L’outil permettrait même de détecter des documents dont le texte a été modifié à hauteur de 10-15 % par un humain. Cette méthode pourrait être complémentaire au watermarking et obtiendrait déjà de meilleurs résultats que le classificateur proposé par OpenAI.