Sentiment Analysis
L’analyse des sentiments classe l’opinion exprimée dans un texte comme positive, négative ou neutre. Découvre les méthodes fondées sur des lexiques et des Transformers, les aspects et les biais.
L’analyse des sentiments, aussi appelée exploration d’opinions, est une tâche de traitement automatique du langage naturel (NLP) qui consiste à identifier l’attitude exprimée dans un texte, généralement comme positive, négative ou neutre, et parfois sous forme de score, de note en étoiles ou d’émotion comme la colère ou la joie. Les entreprises l’appliquent aux avis sur les produits, aux tickets d’assistance, aux réponses aux sondages et aux publications sur les réseaux sociaux pour mesurer le ressenti des clients à l’égard d’un produit ou d’une marque dans un volume de texte trop important pour qu’une équipe puisse tout lire. Les chatbots d’assistance s’en servent pour transférer d’abord les clients mécontents à une personne.
Niveaux d’analyse#
L’analyse au niveau du document attribue une étiquette à un avis entier, tandis que l’analyse au niveau de la phrase étiquette chaque phrase. L’analyse des sentiments fondée sur les aspects (ABSA) va plus loin et trouve l’opinion sur chaque caractéristique mentionnée dans un texte : « L’écran est superbe, mais la batterie tient à peine une matinée » exprime une opinion positive sur l’écran et négative sur la batterie. La tâche partagée SemEval-2014 sur l’ABSA a normalisé cette approche avec des avis sur des ordinateurs portables et des restaurants. L’extraction des aspects recoupe la reconnaissance d’entités nommées (NER), puisque les deux méthodes repèrent les éléments dont parle une phrase.
Des lexiques aux Transformers#
Les méthodes fondées sur des lexiques comptent les mots d’un lexique des sentiments, c’est-à-dire une liste de mots assortis de scores positifs ou négatifs, puis ajoutent des règles pour la négation (« pas bon ») et les intensificateurs (« très bon »). En 2002, la méthode non supervisée de Peter Turney attribuait un score aux expressions selon leur fréquence à proximité de « excellent » ou de « mauvais » sur le Web. VADER (2014) a aussi adapté un lexique et des règles aux réseaux sociaux, notamment aux émoticônes, aux majuscules et aux points d’exclamation. Toujours en 2002, Bo Pang, Lillian Lee et Shivakumar Vaithyanathan ont entraîné des classificateurs Naive Bayes, à entropie maximale et à machines à vecteurs de support (SVM) sur des critiques de films. Ils ont constaté que ces classificateurs surpassaient les listes de mots-clés écrites par des humains, mais obtenaient de moins bons résultats pour l’analyse des sentiments que pour la classification des sujets.
Le Stanford Sentiment Treebank (2013) a annoté 215 154 expressions tirées de 11 855 phrases de critiques de films, afin que les modèles apprennent comment des expressions comme « pas » et « mais » modifient le sentiment de la suite. Sa version binaire, SST-2, est devenue un benchmark de GLUE. Aujourd’hui, la plupart des classificateurs effectuent un ajustement fin d’un Transformer préentraîné comme BERT sur des exemples étiquetés, puis convertissent les scores de sortie en probabilités de classe avec une softmax. DistilBERT ajusté finement sur SST-2 atteint une précision de 91,3 % sur son ensemble de validation :
from transformers import pipeline
# DistilBERT fine-tuned on the Stanford Sentiment Treebank (SST-2)
classifier = pipeline("sentiment-analysis", model="distilbert/distilbert-base-uncased-finetuned-sst-2-english")
reviews = [
"The battery life is not bad at all.",
"Oh great, it crashed again five minutes after the update.",
"The screen is gorgeous, but the battery barely lasts a morning.",
]
for review, result in zip(reviews, classifier(reviews)):
print(f"{result['label']:<8} {result['score']:.3f} {review}")Le classificateur interprète « pas mal du tout » comme POSITIVE (0,997) et l’avis sarcastique « Oh, génial » comme NEGATIVE (0,998). Le troisième avis fait l’éloge de l’écran et critique la batterie, mais un modèle au niveau du document ne peut renvoyer qu’une seule étiquette : NEGATIVE à 0,966. L’éloge disparaît donc du résultat. Les grands modèles de langage (LLM) classent aussi les sentiments sans exemple à partir d’une invite et peuvent renvoyer une étiquette par aspect, mais leur coût par avis est bien supérieur à celui d’un classificateur de 66 millions de paramètres.
Analyse multimodale des sentiments#
Les gens expriment leurs opinions par le ton de la voix et les expressions faciales autant que par les mots, et le sarcasme ne se manifeste souvent que dans le ton. CMU-MOSEI (2018), le plus grand jeu de données publié pour cette tâche à sa sortie, étiquette les sentiments de 23 453 segments vidéo issus de 1 000 personnes. Les modèles d’apprentissage multimodal combinent la transcription, l’audio et le visage de la personne pour les prédire ; c’est aussi l’objectif de l’informatique affective. Le canal facial relève de la classification d’images : un modèle de classification Ultralytics YOLO26 entraîné sur des recadrages de visages triés dans un dossier par expression renvoie une probabilité pour chaque expression dans result.probs, le même type de sortie softmax que produit le classificateur de texte ci-dessus.
Défis#
Le sarcasme, l’ironie et les comparaisons (« mieux que l’ancien, ce qui n’est pas très difficile ») restent difficiles à détecter. Le sens des mots associés aux sentiments dépend du domaine : « imprévisible » loue l’intrigue d’un film, mais critique la direction d’une voiture. Un modèle entraîné sur des critiques de films perd donc en précision sur des avis de produits sans nouvelles données d’entraînement. Les modèles héritent aussi des biais de leurs données. En 2018, Svetlana Kiritchenko et Saif Mohammad ont testé 219 systèmes d’analyse des sentiments avec des phrases qui ne différaient que par un nom ou un mot genré comme « il » ou « elle ». Plusieurs systèmes attribuaient systématiquement des scores plus ou moins élevés selon le genre ou l’origine ethnique suggérés par le nom.
Analyse des sentiments et notions connexes#
- Classification de texte : Tâche générale consistant à attribuer des étiquettes à un texte, par exemple un sujet ou la catégorie spam. L’analyse des sentiments est une classification de texte qui utilise des étiquettes d’opinion.
- Reconnaissance des émotions : Détecte des émotions précises à partir du texte, des visages, de la voix ou de signaux physiologiques. L’analyse des sentiments réduit généralement l’opinion à une polarité.
- Reconnaissance d’entités nommées : repère les éléments mentionnés dans un texte, et l’ABSA associe chaque mention à l’opinion exprimée à son sujet.










