


Classification de texte zéro-shot et à quelques coups avec Scikit-llm
Analyser les commentaires des clients et identifier les thèmes clés des données textuelles est traditionnellement un processus laborieux. Elle implique la collecte de données, l'étiquetage manuel et le réglage fin des modèles spécialisés. Cependant, la classification du texte à tirs zéro offre une approche rationalisée, tirant parti de la puissance des modèles de grande langue (LLM) pour contourner la nécessité d'une formation de modèle approfondie. Cet article explore comment la classification des coups zéro simplifie l'analyse des sentiments à l'aide de la bibliothèque SKLLM (combinant Scikit-Learn et LLMS), démontrant son application sur les revues de vêtements de commerce électronique de Kaggle pour femmes.
Résultats d'apprentissage clés
Ce tutoriel couvrira:
- Le flux de travail de l'analyse des sentiments conventionnelle et ses limites.
- Les principes et les avantages de la classification de texte à tirs zéro avec LLMS.
- Une introduction à la bibliothèque SKLLM et son intégration avec Scikit-Learn.
- Application pratique de la classification zéro-shot à l'ensemble de données de vêtements de commerce électronique pour femmes.
- Expérience pratique avec une classification zéro-shot pour les scénarios du monde réel.
* Cet article fait partie du Blogathon de la science des données *** .
Table des matières
- Qu'est-ce que la classification du texte à tirs zéro?
- Pourquoi le zéro-shot est-il si efficace?
- Présentation de l'ensemble de données
- Guide étape par étape
- Inconvénients potentiels
- Classification de texte à quelques coups
- Classification de texte en chaîne de pensées
- Résumé
- Les questions fréquemment posées
Qu'est-ce que la classification du texte à tirs zéro?
L'analyse du grand volume des avis des clients reçus par les détaillants en ligne présente un défi important pour une analyse efficace des sentiments et une identification du thème. Les méthodes traditionnelles impliquent:
- Rassemblement et nettoyage des données d'examen.
- étiquetant manuellement des milliers d'échantillons (par exemple, "positif" "" négatif "," neutre ").
- Fonctionner un modèle de classification spécialisé à l'aide de ces données étiquetées.
Ce processus prend du temps et à forte intensité de ressources. La classification de texte zéro-shot offre une solution: utiliser des LLM directement pour classer le texte sans avoir besoin d'une formation personnalisée. En fournissant des étiquettes descriptives (par exemple, "positive", "négative", "neutre"), le modèle dépeint la bonne classe.
Pourquoi le zéro-shot est-il si efficace?
L'efficacité de la classification zéro-tirs provient de:
- Élimination du réglage fin: Le processus coûteux de LLMS de réglage fin comme GPT-4 est évité. Les LLM pré-formés sont utilisées directement, fournissant une classification immédiate de haute qualité.
- Adaptation facile d'étiquette: La modification de l'ensemble d'étiquettes (par exemple, des sentiments généraux à des sentiments plus spécifiques) ne nécessite que la mise à jour de la liste des étiquettes; Aucun recyclage du modèle n'est nécessaire.
- Exigences de données réduites: Contrairement à l'apprentissage supervisé, la classification zéro ne nécessite que des étiquettes descriptives, ce qui le rend adapté à des situations avec des données limitées ou non marquées.
- Déploiement plus rapide: En sautant l'annotation des données et la formation du modèle, le déploiement est considérablement accéléré.
Présentation de l'ensemble de données
Le jeu de données des vêtements de commerce électronique des femmes de Kaggle est utilisé dans ce tutoriel.
[lien vers l'ensemble de données]
Caractéristiques de l'ensemble de données clés:
- contient des milliers d'examens des clients sur les vêtements pour femmes.
- La colonne "Review Text" contient les données du texte principal.
- Les métadonnées supplémentaires ("titre", "note", "Recommandée Ind," etc.) sont disponibles mais pas essentielles pour la classification zéro-shot.
Guide étape par étape
Cette section détaille comment effectuer l'analyse des sentiments et la détection de thème à l'aide de la classification de zéro avec LLMS et la bibliothèque SKLLM.
Étape 1: installation et configuration
Assurer que Python 3.7 est installé et installer skllm:
pip install scikit-llm
Obtenez une clé API valide pour un fournisseur LLM (par exemple, OpenAI) et définissez-le dans votre environnement:
from skllm.config import SKLLMConfig # Replace with your OpenAI API key SKLLMConfig.set_openai_key("your_openai_api_key")
Étape 2: Importer des bibliothèques et charger les données
import pandas as pd from skllm.models.gpt.classification.zero_shot import ZeroShotGPTClassifier # Load dataset df = pd.read_csv("Womens Clothing E-Commerce Reviews.csv") # Handle missing review texts df = df.dropna(subset=["Review Text"]).reset_index(drop=True) X = df["Review Text"].tolist()
Étape 3: Définir les étiquettes
Pour la classification des sentiments, utilisez: ["positive", "negative", "neutral"]
. Cela peut être personnalisé au besoin.
Étape 4: classification zéro-shot
instancier ZeroShotGPTClassifier
(en utilisant gpt-4o
ou un autre modèle approprié):
clf = ZeroShotGPTClassifier(model="gpt-4o") clf.fit(None, ["positive", "negative", "neutral"])
fit(None, labels)
indique qu'aucune donnée de formation n'est requise; Le classificateur est initialisé avec l'ensemble d'étiquettes.
Étape 5: Classifier les avis
predictions = clf.predict(X) for review_text, sentiment in zip(X[:5], predictions[:5]): print(f"Review: {review_text}") print(f"Predicted Sentiment: {sentiment}") print("-" * 50)
Cela affiche les cinq premières avis et leurs sentiments prévus.
Comparaison des résultats
Les approches ML traditionnelles nécessitent un étiquetage, une formation de modèle, une validation et des mises à jour continues. Zero-Shot réduit considérablement ces frais généraux, offrant des résultats immédiats sans données étiquetées et raffinement facile.
Inconvénients potentiels
- FLUCUATIONS DE PRÉSCURATION: La précision peut varier en fonction de la complexité du texte et de la capacité du modèle à interpréter le jargon spécifique au domaine.
- Considérations de coûts: L'utilisation de modèles puissants comme GPT-4 engage les coûts de l'API.
- Confidentialité des données: Assurer la conformité aux réglementations de confidentialité des données lors de l'envoi de données aux API externes.
Classification de texte à quelques coups
La classification à quelques coups utilise un petit nombre d'exemples étiquetés par classe pour guider le modèle. Les estimateurs SKLLM utilisent l'ensemble de formation entier pour créer des exemples à quelques tirs. Pour les grands ensembles de données, envisagez de diviser les données et d'utiliser un petit sous-ensemble de formation (par exemple, pas plus de 10 exemples par classe) et de mélanger les exemples.
pip install scikit-llm
Classification de texte en chaîne de pensées
La classification de la chaîne de pensées génère des étapes de raisonnement intermédiaires, améliorant potentiellement la précision mais augmentant l'utilisation et le coût des jetons.
from skllm.config import SKLLMConfig # Replace with your OpenAI API key SKLLMConfig.set_openai_key("your_openai_api_key")
Expérimenter avec des approches à quelques coups et en chaîne de pensées peut donner de meilleurs résultats que la méthode de base zéro.
Résumé
La bibliothèque SKLLM fournit une alternative rapide et efficace à la construction de pipelines d'analyse des sentiments personnalisés. La classification des coups zéro permet une analyse rapide des commentaires des clients sans avoir besoin d'un étiquetage manuel ou d'une formation sur modèle. Ceci est particulièrement précieux pour les tâches itératives et l'expansion de l'étiquette.
points clés
- La classification des tirs zéro simplifie l'analyse des sentiments sans étiquetage manuel ni formation modèle.
- SKLLM intègre Scikit-Learn avec les LLM pour une classification efficace de texte.
- Les LLM comme GPT-4 fournissent immédiatement des résultats de classification de haute qualité.
- La classification des tirs zéro est rapide, adaptable et nécessite des données minimales.
Les questions fréquemment posées
Q1. Choisir entre zéro-shot, inférieur à quelques coups et chaîne de pensées: zéro-shot est idéal pour le prototypage rapide et les données limitées; quelques coups améliore la précision avec un petit ensemble de données étiqueté; La chaîne de pensée améliore les performances mais augmente le coût.
Q2. Nombre d'exemples pour quelques tirs: jusqu'à 10 exemples par classe sont recommandés; remanier des exemples pour éviter les biais.
Q3. Impact de la chaîne de pensées sur l'exactitude: non garanti pour améliorer la précision; L'efficacité dépend de la complexité des tâches et de la clarté rapide.
Q4. Coût à l'échelle: Le coût dépend de l'utilisation des jetons, du choix du modèle, de la longueur de l'invite et de la taille de l'ensemble de données. La chaîne de pensées augmente les coûts en raison des invites plus longues.
Remarque: L'image utilisée dans cet article ne appartient pas à l'auteur et est utilisée avec la permission.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds











Hé là, codant ninja! Quelles tâches liées au codage avez-vous prévues pour la journée? Avant de plonger plus loin dans ce blog, je veux que vous réfléchissiez à tous vos malheurs liés au codage - les énumérez. Fait? - Let & # 8217

Introduction Openai a publié son nouveau modèle basé sur l'architecture «aux fraises» très attendue. Ce modèle innovant, connu sous le nom d'O1, améliore les capacités de raisonnement, lui permettant de réfléchir à des problèmes Mor

Introduction Mistral a publié son tout premier modèle multimodal, à savoir le pixtral-12b-2409. Ce modèle est construit sur les 12 milliards de paramètres de Mistral, Nemo 12b. Qu'est-ce qui distingue ce modèle? Il peut maintenant prendre les deux images et Tex

Instruction ALTER TABLE de SQL: Ajout de colonnes dynamiquement à votre base de données Dans la gestion des données, l'adaptabilité de SQL est cruciale. Besoin d'ajuster votre structure de base de données à la volée? L'énoncé de la table alter est votre solution. Ce guide détaille l'ajout de Colu

Tout en travaillant sur une IA agentique, les développeurs se retrouvent souvent à naviguer dans les compromis entre la vitesse, la flexibilité et l'efficacité des ressources. J'ai exploré le cadre de l'IA agentique et je suis tombé sur Agno (plus tôt c'était Phi-

Benchmarks en difficulté: une étude de cas de lama Début avril 2025, Meta a dévoilé sa suite de modèles Llama 4, avec des métriques de performance impressionnantes qui les ont placés favorablement contre des concurrents comme GPT-4O et Claude 3.5 Sonnet. Au centre du launc

La version comprend trois modèles distincts, GPT-4.1, GPT-4.1 Mini et GPT-4.1 Nano, signalant une évolution vers des optimisations spécifiques à la tâche dans le paysage du modèle grand langage. Ces modèles ne remplacent pas immédiatement les interfaces orientées utilisateur comme

Un jeu vidéo peut-il faciliter l'anxiété, se concentrer ou soutenir un enfant atteint de TDAH? Au fur et à mesure que les défis de la santé augmentent à l'échelle mondiale - en particulier chez les jeunes - les innovateurs se tournent vers un outil improbable: les jeux vidéo. Maintenant l'un des plus grands divertissements du monde Indus
