Débutant6 min de lectureMis à jour
Qu'est-ce qu'un classificateur de texte et comment décide-t-il ?
Un classificateur de texte lit une phrase et donne une probabilité par catégorie. Comment il est construit, ce que veut dire le score et où il se trompe.
L'idée en une phrase
Un classificateur de texte est un programme qui lit un texte et indique à quelles catégories il appartient. Un filtre anti-spam est un classificateur à deux catégories (spam, pas spam). Un modèle de modération est un classificateur à plusieurs catégories : toxique, insulte, haine, menace, contenu sexuel, automutilation, etc.
Des règles à l'apprentissage
Les premiers classificateurs étaient des listes de règles : « si le message contient ce mot, bloque-le ». Ils sont rapides et faciles à expliquer, mais ils échouent dans deux directions :
- ils laissent passer tout ce qui n'est pas dans la liste (une nouvelle insulte, une faute de frappe, une autre langue) ;
- ils bloquent des messages innocents qui contiennent par hasard un mot de la liste (« l'orque tueuse », une citation, une blague entre amis).
On ne donne pas de règles à un classificateur par apprentissage automatique. On lui donne des milliers d'exemples avec la bonne réponse, écrite par des personnes, et il apprend tout seul quels indices comptent. C'est pour cela qu'il peut reconnaître une insulte qu'il n'a jamais vue, dans une phrase tournée d'une façon que personne n'avait prévue.
Ce qui en sort : un score, pas un verdict
Pour chaque catégorie, le classificateur renvoie une probabilité entre 0 et 1 :
| Message | toxic | insult | threat |
|---|---|---|---|
| « super match ce soir » | 0.01 | 0.00 | 0.00 |
| « t'es un idiot » | 0.98 | 0.97 | 0.01 |
| « je vais t'écraser en finale 😄 » | 0.12 | 0.03 | 0.08 |
Un score n'est pas une décision. Pour décider, on le compare à un seuil : au-dessus le message est signalé, en dessous il ne l'est pas. Choisir le seuil, c'est arbitrer entre laisser passer des messages nuisibles et signaler des messages corrects, et cela mérite son propre guide.
Plusieurs catégories à la fois
Un message peut être à la fois une insulte et une menace. Les modèles de modération sont en général multi-étiquettes : chaque catégorie reçoit son propre score indépendant, au lieu de désigner un seul gagnant. Dans VigiMod par exemple, une insulte, une attaque haineuse ou une menace comptent aussi comme toxiques.
Comment il apprend
L'entraînement se déroule à peu près ainsi :
- Le modèle lit un exemple et produit des scores.
- Ses scores sont comparés à l'étiquette donnée par des personnes.
- Ses nombres internes (les poids) sont légèrement ajustés pour que la réponse soit un peu plus juste la fois suivante.
- On recommence sur des centaines de milliers d'exemples.
À la fin, le modèle n'a pas mémorisé les exemples : il s'est construit une représentation interne de ce qui rend un message insultant, menaçant ou inoffensif. Les classificateurs modernes partent d'un modèle de langage qui comprend déjà le texte en général (voir comment les modèles de langage lisent le texte) puis sont affinés (fine-tuning) sur des exemples de modération.
Où les classificateurs se trompent
- Des données jamais vues. Un modèle entraîné surtout sur des discussions en anglais est plus faible en turc ou en coréen.
- Des exemples biaisés. Si les phrases innocentes contenant certains noms ou identités étaient rares à l'entraînement, le modèle peut associer ces noms à quelque chose de nuisible. Le biais a son propre guide.
- Le contexte manquant. « Il meurt à la fin » est anodin seul et devient un spoiler dans une discussion sur une série. Les classificateurs qui lisent la conversation font mieux.
- De mauvaises étiquettes. Si les exemples d'entraînement sont mal étiquetés, le modèle apprend les erreurs.
En pratique
Un bon classificateur est un premier lecteur rapide et constant. Il note chaque message en quelques millisecondes, si bien que les personnes n'ont à regarder que les cas douteux. Traitez ses scores comme des indices, choisissez des seuils adaptés à votre communauté et gardez un humain dans la boucle pour les actions graves comme les bannissements.
Testez-vous
Répondez aux questions, puis vérifiez vos réponses.
Continuer à apprendre
Voyez-le sur de vrais messages
Essayez la démo en direct ou lisez comment fonctionne l'API.