La recherche en IA te passionne ?
Les papers et avancées qui comptent, expliqués simplement, chaque soir. Gratuit.
Inclus dès l'inscription : notre sélection des meilleurs guides & comparatifs IA.
Choisis ton rythme
Gratuit · Pas de spam · Désabonnement en 1 clic
Un tutoriel détaille comment générer des embeddings de 1 000 critiques IMDB avec un modèle local all-minilm et les soumettre à un diagnostic par régression logistique. Les performances atteignent 0,77 d’accuracy, tandis qu’UMAP et SHAP sont mobilisés pour examiner la structure sémantique et l’influence des dimensions latentes.
Un modèle linéaire obtient 0,77 d’accuracy sur 200 tests
Sur l’échantillon de test de 200 critiques, l’accuracy atteint 0,77. Pour la classe 0, la précision est de 0,77, le rappel de 0,76 et le F1 de 0,76, avec un support de 100. Pour la classe 1, la précision est de 0,76, le rappel de 0,77 et le F1 de 0,77, avec un support de 100. Les moyennes macro indiquent une précision de 0,77, un rappel de 0,77 et un F1 de 0,76, pour un support total de 200. Les moyennes pondérées affichent les mêmes niveaux de précision et de rappel (0,77) et un F1 de 0,76. Ces résultats sont présentés comme respectables pour une régression logistique, compte tenu d’un jeu de données de taille limitée par rapport à la dimension des embeddings.
UMAP et SHAP mobilisés pour l’interprétation des embeddings
La visualisation UMAP est utilisée pour inspecter la structure sémantique capturée par les embeddings. UMAP est décrite comme une technique de réduction de dimensionnalité par projection, couramment employée pour la visualisation, avec ici une projection en 2 dimensions et l’usage de la similarité cosinus comme métrique de distance, ce qui est standard pour des embeddings de texte. L’application des valeurs SHAP est prévue pour identifier les dimensions latentes qui influencent le plus les prédictions d’un classificateur.
Évaluer la qualité des vecteurs via un classificateur d’exploration
Le classificateur d’exploration sert d’outil de diagnostic afin d’inspecter les représentations apprises. La qualité des embeddings pour séparer les critiques positives et négatives est évaluée au moyen d’un modèle simple tel qu’une régression logistique et de métriques usuelles. Lorsque précision, rappel et F1 sont satisfaisants avec un modèle peu profond, cela indique que les vecteurs sont suffisamment riches pour la tâche. L’emploi d’un modèle simple aide à isoler la contribution des embeddings. Le tutoriel entraîne ainsi une LogisticRegression avec un random_state de 42 et un max_iter de 1000.
Jeu de données IMDB équilibré et partition stratifiée 80/20
Le corpus utilisé est l’ensemble public IMDB de critiques de films. Mille textes sont sélectionnés, répartis à parts égales entre 500 positifs et 500 négatifs pour constituer un échantillon équilibré, avec les labels 1 pour les positifs et 0 pour les négatifs. La préparation consiste à concaténer les deux sous-ensembles, les mélanger, puis extraire les textes et les labels. La division entre entraînement et test est stratifiée, avec 80 % des exemples pour l’apprentissage et 20 % pour l’évaluation, un test_size de 0,2 et un random_state de 42.
Chaîne locale gratuite : Ollama et Scikit-LLM pour 1 000 embeddings
Le tutoriel est exécutable sous Google Colab et requiert la dernière version de Scikit-LLM. Il propose une configuration locale et gratuite, avec l’installation via pip de scikit-llm, umap-learn et shap. Sous Colab, une installation de zstd par apt-get peut être nécessaire, à manier avec prudence selon l’environnement. Ollama est installé par script et lancé en arrière-plan, avec une attente de 5 secondes, puis le modèle d’embedding all-minilm est récupéré. Les bibliothèques numpy, pandas, matplotlib.pyplot, umap et shap sont importées, ainsi que SKLLMConfig et GPTVectorizer, et les utilitaires scikit-learn pour l’entraînement et l’évaluation, plus load_dataset. Scikit-LLM est configuré sur un serveur local à l’URL http://localhost:11434/v1/, avec une clé OpenAI factice utilisée pour le format mais ignorée localement. Les embeddings de 1 000 textes sont produits avec GPTVectorizer et le modèle all-minilm, en utilisant une API proche de scikit-learn (fit_transform pour l’entraînement, transform pour le test). Sur Colab, la génération peut durer environ 5 à 10 minutes car elle implique 1 000 appels à un LLM local. L’ensemble du dispositif sert à générer des embeddings à partir de critiques de films avec Scikit-LLM et un modèle Ollama local, puis à entraîner un classificateur de régression logistique pour en évaluer la qualité, en combinant classificateurs d’exploration, UMAP et SHAP afin d’interpréter la représentation textuelle produite par des LLM, dans un contexte où ces derniers sont puissants mais peu interprétables par nature et où la classification de texte a longtemps reposé sur l’apprentissage automatique et les réseaux profonds.


