💬 Classificateur d'Intention de Chatbot — Similarité TF-IDF en Direct
Observez un véritable vectoriseur TF-IDF et un comparateur de similarité cosinus noter un message utilisateur synthétique entrant contre une banque de modèles d'intention, classant en direct la meilleure intention correspondante pendant que vous tapez.
À propos de cette simulation
Ce simulateur exécute un véritable vectoriseur TF-IDF (fréquence de terme, fréquence inverse de document) et un comparateur de similarité cosinus entièrement dans le navigateur — la même famille d'algorithme qui alimente le routage d'intention de chatbot léger et explicable, avant ou en complément d'un modèle neuronal. Chaque modèle d'intention — « vérifier le statut de commande », « demander un remboursement », « réinitialiser mon mot de passe » etc. — est traité comme un document ; le vocabulaire du corpus et les poids IDF sont recalculés en direct à partir de ces documents, et une véritable projection ACP montre comment le vecteur de requête se situe par rapport à chaque intention dans l'espace vectoriel.
🔬 Ce que ça montre
Un graphique à barres classé des scores de similarité cosinus pour chaque modèle d'intention, une projection ACP 2D des vecteurs TF-IDF de l'intention et de la requête (calculée avec un véritable centrage de moyenne, covariance et vecteurs propres par itération de puissance), et un graphique de contribution par terme qui détaille exactement quels mots partagés ont conduit à la correspondance gagnante.
🎮 Comment utiliser
Tapez n'importe quel message dans la zone de texte en direct, ou appuyez sur Lire le flux pour faire passer un ensemble tournant de messages utilisateur synthétiques à travers le classificateur à une vitesse ajustable. Ajoutez votre propre modèle d'intention avec un libellé et des énoncés d'exemple pour voir le vocabulaire, les poids IDF et la disposition ACP se recalculer en direct, ou supprimez-en un pour observer la frontière se déplacer. Réinitialiser restaure le corpus par défaut de cinq intentions.
💡 Le saviez-vous ?
Comme la similarité cosinus est bornée par le vocabulaire partagé, un message n'utilisant aucun des mots du corpus obtient un faible score contre chaque intention — l'écart de confiance entre la meilleure et la deuxième meilleure intention se réduit en conséquence. Cet écart qui se réduit est un signal réel et bien connu que les modèles de base TF-IDF en production utilisent pour détecter les requêtes hors périmètre ou ambiguës.
Questions fréquentes
Les calculs TF-IDF sont-ils réellement effectués, ou est-ce une démo précalculée ?
Ils sont calculés en direct. La tokenisation, les comptages de fréquence terme-document, la formule IDF lissée ln((1+N)/(1+df))+1, et les vecteurs TF-IDF normalisés L2 sont tous construits à partir des modèles d'intention actuellement présents dans le corpus, y compris ceux que vous ajoutez vous-même.
Comment le graphique de l'espace vectoriel est-il généré ?
Le vecteur TF-IDF de chaque intention est centré sur sa moyenne, et les deux principaux vecteurs propres de la matrice de covariance résultante sont trouvés par itération de puissance et déflation — une implémentation standard et réelle de l'analyse en composantes principales. Les positions 2D sont les projections de chaque vecteur de haute dimension sur ces deux vecteurs propres.
Pourquoi un message inhabituel obtient-il parfois un faible score de confiance pour toutes les intentions ?
La similarité cosinus est bornée et dépend entièrement du vocabulaire partagé. Si un message tapé ne partage presque aucun mot avec les énoncés d'exemple d'une intention quelconque, chaque score de similarité sera faible et l'écart de confiance se réduira — un signal fidèle que le classificateur est incertain, exactement comme se comporterait un modèle de base TF-IDF en production.
Que se passe-t-il quand j'ajoute un nouveau modèle d'intention ?
Le vocabulaire et les comptages de fréquence de document sont reconstruits pour toutes les intentions (y compris la nouvelle), ce qui change légèrement les poids IDF de chaque intention existante. Tous les vecteurs, la projection ACP et les scores de similarité de la requête actuelle sont ensuite recalculés contre le nouveau corpus.
Observez un véritable vectoriseur TF-IDF et un comparateur de similarité cosinus noter un message utilisateur synthétique entrant contre une banque de modèles d'intention, classant en direct la meilleure intention correspondante pendant que vous tapez.
3D · Three.js / WebGL renderer · 60 FPS target · runs fully client-side, no install