Hallucinations, influence des humains, les défis de cybersécurité à relever
Au menu aujourd’hui :
💭 Les risques réels d’hallucination des IAs
🔓 Les défis de la sécurité : comment les humains influencent l’IA ?
🐵 Comment distinguer ce qui est fait par l'homme de ce qui est fait par la machine ?
🔭 Les tendances de recherche
👀 Où se renseigner - les sources recommandées par Léonard
🍰 MF : Hello Léonard, les Large Language Models (LLM) sont de plus en plus performants et utilisés au quotidien. Quels sont les problèmes de fiabilité pour de ce type d’outils et leurs conséquences ?
👉 Leonard :
Un des problèmes les plus en vue c’est celui des “hallucinations”: comme les modèles sont entraînés à compléter des phrases de la manière la plus statistiquement probable, ils ont tendance à toujours trouver une suite plausible pour le texte, peu importe qu’elle soit vraie ou fausse. 😬
Si on y réfléchit, essayer de statistiquement prédire le prochain mot — la manière dont les LLM apprennent — n’implique pas facilement la capacité de faire la distinction entre des faits et de l’information inventée mais plausible.
💶 Ca peut avoir un certain nombre de conséquences regrettables, par exemple quand des avocats ne vérifient pas des informations données par chatGPT pour leur dossier - deux avocats américains ont été condamnés pour cette raison !
👩⚖️ Ou quand chatGPT invente de l’information diffamatoire envers des individus, ce qui résulte en une attaque en justice contre OpenAI.
🏴☠️ Ce phénomène est aussi exploité par des acteurs malveillants qui, par exemple, examinent les noms de librairies de code “hallucinées” par chatGPT, et enregistrent du code contenant un virus à ces noms.
Les utilisateurs qui copient-collent du code de chatGPT sont alors en risque de télécharger des virus sur leur système via l’import de ces librairies de code nuisibles.
Ce type d’attaque (nommée attaque de “supply chain”) a été tellement utilisé que le site répertoire de librairies Python pypi.org a dû mettre en pause la mise en ligne de nouvelles librairies sur son site pendant un weekend, le temps de pouvoir examiner quelles demandes étaient légitimes (👉 cet article en parle).
🍰 MF : certaines personnes essaient d’exploiter les faiblesses des LLM pour créer des vulnérabilités de cyber-sécurité chez leurs utilisateurs. Est-ce qu’il y a aussi des attaques pour affecter les LLM directement ?
👉 Leonard :
Oui tout à fait, comme le modèle apprend de manière purement statistique, en quelque sorte c’est la loi des grands nombres qui dicte la vérité 🔢 : si on apprend à de multiples reprises une information fausse ou une opinion tranchée au modèle, il est probable qu’il ressortira ce contenu dans un contexte similaire.
Dans le cas d’un chatbot qui interagit avec des millions de personnes, et où il y a une mécanique de “feedback” où les utilisateurs peuvent donner des “thumbs up 👍 /down 👎”, c’est une opportunité pour des entités malveillantes d’essayer de faire changer d’avis le chatbot sur une question par exemple, en donnant un feedback malveillant. On appelle ça le “data poisoning” quand un acteur malveillant modifie les données pour essayer de diminuer la performance du modèle, et le “data backdooring” quand il essaie de déclencher une réponse dans un cas particulier — imaginons par exemple des groupes de personnes se coordonnant sur leur feedback à chatGPT pour essayer de lui faire dire que la Terre est plate. 🌎😬
🍰 MF : Tout ça risque d’affecter la qualité générative des LLM. On voit aussi que leur utilisation crée des problèmes de confiance dans la technologie. C’est de plus en plus difficile de distinguer du texte écrit par un humain de celui généré par un LLM. Alors comment peut-on faire la distinction et savoir si l’essai d’un étudiant a bien été écrit par l’étudiant en question par exemple et pas par un LLM?
👉 Leonard :
C’est très difficile de faire la différence entre le texte généré par un LLM et celui écrit par un humain, parce que c’est précisément l'objectif d'un LLM d'écrire ce texte de manière naturelle. Ces dernières années, les modèles sont devenus extrêmement performants dans cette tâche, au moins en ce qui concerne le style.
Il y a des approches qui ont été publiées pour essayer de faire cette détection de manière automatique, à la fois par OpenAI 👉 ici “new AI identifier” et par d’autres chercheurs indépendants 👉 GPTzero.me.
En réalité cette détection ne marche pas de manière très fiable, et la piste la plus prometteuse à l’heure actuelle, c’est plutôt d’utiliser du watermarking.
C’est un poil technique mais en gros cette technique permet au propriétaire de cacher un “secret” dans le texte généré par son modèle — le secret est caché dans la manière dont les mots sont sélectionnés par le modèle pendant la génération mot par mot. Ensuite c’est possible pour l’entreprise propriétaire du LLM, qui connaît le “secret”, d’essayer de retrouver son secret dans un texte, afin de savoir s’il vient de son modèle ou non. Mais à nouveau même cette approche n’est pas 100% fiable en pratique.
Le texte avec watermark si écrit par un humain devrait contenir 9 tokens vert. Pourtant il en contient 28. La probabilité que ca arrive par hasard est de l’ordre de 10^-14 ce qui nous fait dire de manière extrêmement certaine que le texte a été généré par une machine.
En tout cas, il faut garder en tête que c’est un problème qui n’est pas bien résolu à l’heure actuelle, et il vaut mieux prendre avec une pincée de sel 🧂 les résultats des outils qui disent pouvoir détecter automatiquement le texte généré par un LLM — et d’autant plus ne pas faire confiance par exemple à chatGPT pour dire lui-même s’il est l’auteur d’un paragraphe de texte, il a de grandes chances d’halluciner sa réponse ! 😁
"En janvier 2023, OpenAI a lancé un outil pour détecter ce qui est produit par l'IA, mais a rapidement dû l'arrêter en raison de sa faible précision, ne réussissant à être correct que 26% du temps."
🍰 MF : On a vu récemment la sortie de plus en plus de LLM en open-source / téléchargement libre, quels défis est-ce que cela crée en terme de sécurité ?
👉 Leonard :
Il est impossible de contrôler l’usage de ces modèles. On arrive à un niveau de compétences des LLM qui les rend tout à fait capables d’écrire des emails plausibles et personnalisés pour faire du “phishing” à grande échelle, et ils commencent aussi à devenir parfois compétents à trouver des vulnérabilités dans du code. Ça abaisse énormément la barrière à l’entrée pour des attaquants, 🏴☠️ et on voit déjà que les LLM sont largement utilisés pour ces usages malveillants (ex: WormGPT).
C’est un sujet sur lequel les régulateurs se penchent déjà, et ce n’est probablement que le début du débat …
🍰 MF : de ton côté qu’est-ce qui te paraît intéressant dans ces directions de recherche ?
👉 Leonard :
Traditionnellement, la communauté de la sécurité utilisait des approches formelles pour essayer de prouver qu’un système ne peut pas faire d’erreur (ou en faire peu). C’est l’approche par exemple de la vérification formelle des modèles de machine learning.
Le problème c’est que le temps de calcul des algorithmes pour effectuer ce genre de vérification croît exponentiellement avec la taille du modèle (en terme de nombre de neurones). Avec la taille gargantuesque des LLM produits ces dernières années, ce type d’approche devient complètement hors de portée.
La conséquence, c’est qu’au lieu d’essayer de prouver formellement que le modèle fonctionne correctement même dans les pires cas possibles, la communauté doit s’appuyer sur des approches plus empiriques, et donc mesurer la performance sur les cas d’usage connus. Ce qui devient faisable en termes de puissance de calcul, mais ne garantit pas la fiabilité sur des exemples auxquels les créateurs du modèle n’auraient pas pensé.
Une exception à cette tendance empirique cela dit, c’est la “differential privacy” (confidentialité différentielle), qui garantit mathématiquement l’absence de mémorisation de données individuelles ; c’est un sujet sur lequel je travaille, et sur lequel on voit pas mal de progrès y compris dans le cadre des LLM.
🍰 MF : canon merci Léonard ! Est-ce que tu peux nous laisser les sources que tu recommandes pour aller plus loin sur le sujet ?
👉 Leonard :
- 💻 un blog - https://simonwillison.net/, qui écrit régulièrement du contenu très pertinent sur le machine learning, et a en particulier des posts intéressants sur les attaques par prompt injection.
- 🎓 un chercheur - Tom Goldstein. Un professeur prolifique, dont les articles récents sont particulièrement intéressants, et portent sur de multiples sujets couvrant le data poisoning, le watermarking, l’optimisation etc. 👍
- 📄 un papier de recherche - le papier séminal pour la “differential privacy” en deep learning.
Très belle semaine à tous !
— l’équipe millefeuille.ai
La meilleure façon de prendre goût à l'IA.
Applications concrètes. Actualités. Analyses d'experts.
Si comme près de 5'000 personnes tu veux tout comprendre à l'IA, abonne-toi.