AI Detection

Probabilité des tokens et log-vraisemblance dans la détection par IA

La perplexité attire l’attention, mais l’arithmétique qui la sous-tend est la probabilité des tokens, ce que la distribution du modèle contient pour le mot suivant, pourquoi les détecteurs utilisent le log-vraisemblance plutôt que la probabilité brute, et comment une suite de scores par token devient un seul nombre.

Mis à jour le 6 min
Diagram illustrating token probability ai detection: a language model's next-token distribution turning into a log-likelihood score

Si vous demandez à un détecteur comment il est parvenu à ce score, la plupart de ses interfaces utilisateur vous donneront la même réponse, un paragraphe avec certains mots ombrés plus foncés que d'autres. L'ombrage n'est pas une supposition. Il provient d'un nombre associé à chaque jeton du passage, calculé avant même que le détecteur n'aborde perplexity, burstiness, ou un pourcentage final.

Il s'agit d'une probabilité de jeton, et toute détection par probabilité de jeton repose là-dessus, dès le départ. Tout nombre de métriques qu'un détecteur va signaler, y compris les deux que nous abordons ailleurs sur ce site, n'est que de l'arithmétique appliquée à une série de ces nombres. La couche située sous celle à laquelle la plupart des explications s'arrêtent est celle où il faut réfléchir à ce qu'est réellement un jeton, à ce que signifie la distribution du modèle sur ce jeton, et à la raison pour laquelle l'arithmétique se déroule en espace logarithmique plutôt qu'en probabilité brute. La plupart des explications s'arrêtent là.

Rien de tout cela n'a besoin de rester opaque. Un jeton, une distribution de probabilité et un logarithme sont des outils ordinaires, non des secrets propriétaires, et les mêmes trois idées expliquent comment les détecteurs d'IA fonctionnent réellement, du texte brut à un seul nombre sur un rapport.

Détection par probabilité de jeton, de la distribution au score

La détection par probabilité de jeton fonctionne en trois étapes. Un modèle de langage attribue une probabilité à chaque jeton suivant possible compte tenu de ce qui précède. Ces probabilités par jeton sont converties en logarithmes puis additionnées sur l'ensemble du passage, ce qui contourne un problème numérique auquel la multiplication brute se heurte presque immédiatement. La somme obtenue, moyennée et remise à l'échelle, est ce qui finit par apparaître sous la forme d'une valeur de perplexity ou alimente la décision d'un classificateur. Chaque étape est une partie précise et vérifiable de l'arithmétique, non une boîte noire.

Ce qu'est réellement un jeton

Un token n’est pas un mot. Les modèles de langage modernes découpent le texte en sous-unités lexicales à l’aide d’un algorithme tel que le codage par paires d’octets, de sorte qu’un mot courant comme 'the' constitue généralement un seul token, qu’un mot moins fréquent comme 'perplexity' se divise en deux ou trois morceaux, et qu’un nom peu familier peut se fragmenter jusqu’aux caractères individuels. Un passage d’anglais ordinaire se tokenise de manière fiable en davantage de morceaux qu’il n’a de mots, ce qu’il est utile de savoir avant de faire confiance à tout décompte de mots qu’un outil vous renvoie.

Le modèle ne voit jamais les mots comme le fait un lecteur. Il voit une séquence d’entiers, chacun étant un indice dans un vocabulaire fixe avec lequel le modèle a été entraîné. Tout ce que fait token probability ai detection à partir de ce point repose sur cette séquence d’entiers, et non sur la chaîne de lettres originale, ce qui explique en partie pourquoi le fonctionnement interne d’un détecteur peut sembler déconnecté de la manière dont une personne lit réellement une phrase.

La distribution du modèle sur le token suivant

À chaque position d’une séquence, un modèle de langage autorégressif ne produit pas une seule prédiction. Il produit une distribution de probabilité complète sur l’ensemble de son vocabulaire, des dizaines de milliers de nombres qui somment à un, classant chaque token suivant possible du plus probable au moins probable compte tenu de tout ce qui précède. Si l’on donne à un modèle l’expression 'the results of the', il répartit l’essentiel de cette masse de probabilité entre quelques noms plausibles, 'study,' 'experiment,' 'analysis,' tout en attribuant une part infinitésimale à quelque chose comme 'marmalade.'

Le token qui apparaît effectivement ensuite dans un document réel se situe quelque part dans ce classement, et la probabilité qui lui est assignée est la matière première à partir de laquelle tout le reste est construit. Un modèle qui produit son propre texte peut s’appuyer directement sur cette distribution, en choisissant à plusieurs reprises parmi les éléments proches du sommet. Un détecteur qui lit le texte achevé de quelqu’un d’autre ne peut demander qu’après coup quelle probabilité le modèle aurait attribuée au choix qui a effectivement été fait.

La probabilité d’une séquence entière est le produit de la probabilité de chaque jeton, compte tenu de tout ce qui le précède, si l’on enchaîne cette question par jeton sur un document entier en utilisant la règle standard de la probabilité jointe, le résultat final est un seul nombre qui décrit à quel point le passage entier était attendu. C’est à ce produit que l’arithmétique commence à se dégrader, ce qui explique l’existence de la section suivante.

Humanisez votre propre article

Transformez votre texte assisté par IA et faites-le sonner humain, sans toucher aux mots importants ni aux citations.

Commencer gratuitement

Pourquoi la log-vraisemblance remplace la probabilité brute

Multiplier les probabilités entre elles est mathématiquement correct et pratiquement inutile au-delà de quelques dizaines de jetons. Chaque probabilité individuelle est une fraction inférieure à un, donc un produit cumulatif diminue à chaque fois qu’un jeton supplémentaire est multiplié, et il diminue rapidement. Au bout de quelques centaines de jetons, un produit brut peut tomber si loin en dessous du plus petit nombre qu’un ordinateur peut représenter qu’il s’arrondit à exactement zéro, un mode de défaillance appelé underflow.

Une fois cela arrivé, le nombre ne porte plus aucune information. Un document simplement improbable et un document extrêmement, chaotiquement improbable s’effondrent tous deux vers le même zéro, sans moyen de les distinguer ensuite. Les logarithmes résolvent ce problème parce que le logarithme d’un produit est égal à la somme des logarithmes, une identité de l’algèbre élémentaire. Additionner une suite de nombres négatifs ordinaires ne provoque pas d’underflow comme le fait la multiplication d’une suite de petites fractions, et c’est en outre moins coûteux à calculer.

Longueur du passage (illustrative)Probabilité brute, produit cumulatifSomme des log-probabilités
12 jetons à un 0.1 illustratif chacun1 x 10 to the power of -12, encore représentableenviron -27.6
350 jetons à un 0.1 illustratif chacun1 x 10 to the power of -350, underflows to exactly 0environ -805.9

Ceci est une illustration simplifiée. Les probabilités réelles par jeton varient énormément plutôt que de rester à un 0.1 plat, mais la direction du problème est exactement correcte. Dès qu’un produit brut sous-déborde jusqu’à zéro, la comparaison dont un détecteur a réellement besoin, savoir si ce document était plus ou moins attendu que celui-là, devient impossible. La somme des log-probabilités ne tombe jamais en panne de cette manière. Elle reste un nombre précis, ordinaire, comparable, quelle que soit la longueur du passage, ce qui est la raison réelle pour laquelle la détectabilité est mesurée dans l’espace logarithmique plutôt que dans l’espace des probabilités brutes.

Des scores par jeton à un score de détection

La somme des log-probabilités sur un passage produit la log-vraisemblance totale du document sous le modèle de référence. Diviser par le nombre de jetons supprime l’effet de la longueur et laisse la log-vraisemblance moyenne par jeton, un nombre enfin comparable entre une dissertation de cinq cents mots et un chapitre de thèse de cinq mille mots. Inversez cette moyenne et appliquez l’exponentielle, et ce qui en sort est le score de perplexité, une métrique que ce groupe couvre en détail dans un examen séparé de ce que la perplexité mesure réellement.

Les mêmes chiffres par phrase, suivis pour leurs variations à travers un document plutôt que réduits à une seule moyenne, sont ce dont la burstiness est constituée, un signal lié mais distinct de la perplexité. Les deux partent des mêmes nombres par jeton décrits ci-dessus. Ils effectuent simplement des calculs différents à partir d’eux.

Une moyenne simple n’est pas la seule manière d’utiliser cette matière brute, et la recherche est allée bien au-delà. DetectGPT, publié à ICML 2023 par Mitchell, Lee, Khazatsky, Manning et Finn, part d’une propriété différente de la même fonction de probabilité, le texte échantillonné à partir d’un modèle de langage tend à se situer dans une région où de petites reformulations font baisser la log-probabilité plutôt que l’augmenter, un schéma que l’article appelle courbure négative.

Plutôt que d’entraîner un classifieur ou d’utiliser un filigrane, cette méthode perturbe un passage, produisant de petites variations dans la manière dont il est reformulé, puis recalcule le score de chaque variation avec le même modèle. L’article compare cela au meilleur point de référence zero-shot et constate que, sur un texte généré par un modèle de 20-billion-parameter, cette méthode atteint 0.95 AUROC tandis que le meilleur point de référence zero-shot atteint 0.81 AUROC.

La même distribution, utilisée pour filigraner au lieu de détecter

Jusqu’ici, tout a traité la distribution de probabilité comme quelque chose que l’on lit après coup. Elle peut aussi être touchée au moment de la génération, ce qui inverse entièrement le problème. Une méthode de 2023 de Kirchenbauer, Geiping, Wen, Katz, Miers et Goldstein sélectionne, avant que chaque mot ne soit produit, une liste restreinte aléatoire de jetons autorisés, à partir d’un hachage de ce qui précède, et oriente en douceur l’échantillonnage vers cette liste restreinte. Le biais est invisible pour un lecteur et peut ensuite être retrouvé au moyen d’un test statistique sur un court segment de texte, sans qu’il soit nécessaire d’accéder au modèle d’origine.

SynthID de Google DeepMind met en production une version de cette idée, il ajuste les scores de probabilité du jeton suivant au moment de la génération et est aujourd’hui disponible dans l’application Gemini et dans l’expérience web. OpenAI a construit un système comparable et ne l’a pas publié. Les comptes rendus attribuent cette décision en partie à une enquête dans laquelle près de 30 percent des utilisateurs de ChatGPT ont déclaré que le filigranage les amènerait à moins utiliser le produit, ainsi qu’à des inquiétudes sur la capacité d’un filigrane à résister au paraphrasage.

Le rapport d’un détecteur montre un mot ombré ou un seul pourcentage et s’arrête là, sans jamais montrer la distribution dont tout cela provient. Le vérificateur de perplexité gratuit de TextPulse exécute une version simplifiée du même calcul par jeton sur votre propre brouillon, ce qui constitue une manière plus directe de voir où se situe un passage que de lire un verdict de seconde main.

Deux pages voisines reprennent cela. La question de savoir si les détecteurs s’appuient encore sur la burstiness a évolué depuis 2023, et la manière dont GPTZero transforme ces mêmes probabilités en score est décrite sur sa propre page.

Il s’inscrit aux côtés des autres outils gratuits de TextPulse, de sorte que le même brouillon peut être examiné pour son rythme et sa structure, ainsi que pour la prévisibilité au niveau des mots, sans ouvrir une douzaine d’onglets séparés pour le faire.

XLinkedInFacebook

Questions fréquemment posées

La probabilité des tokens en détection par IA est la couche sous-jacente à toute autre métrique de détection. Un modèle de langue attribue une probabilité à chaque token d’une séquence, un morceau de mot à la fois, en fonction de tout ce qui le précède. La perplexité, les scores de classifieur et le pourcentage sur un rapport sont tous des calculs effectués ensuite sur cette suite de nombres, et non une mesure distincte et indépendante.

Moe

PhD in natural language processing, with years spent building NLP applications end to end. Moe works on text analysis: lexical and syntactic structure, and what separates machine-generated prose from human prose statistically. He has been experimenting with computational linguistics since the early days of NLTK, spaCy and WordNet, and still writes most of his tooling in Python.

Restez informé sur l'humanisation par IA

Recevez dans votre boîte de réception des conseils sur la rédaction académique, la détection de l'IA et l'humanisation.

Pas de spam. Désabonnement à tout moment.