Analyse de sentiments en text mining

De EduTech Wiki
Aller à la navigation Aller à la recherche

L'analyse de sentiment

L'analyse de sentiment (parfois appelée opinion mining) est la partie du text mining qui essaye de définir les opinions, sentiments et attitudes présente dans un texte ou un ensemble de texte. Développée essentiellement depuis les années 2000, elle est particulièrement utilisé en marketing pour analyser par exemple les commentaires des internautes ou les comparatifs et tests des blogueurs ou encore les réseaux sociaux : une grande part de la littérature sur le sujet concerne par exemple les tweets. Mais elle peut également être utilisée pour sonder l'opinion publique sur un sujet, pour chercher a caractériser les relations sociales dans les forums ou encore pour vérifier si Wikipedia est bien un média neutre.

Définition formelle d'une opinion

Formellement, on peut définir une opinion comme un quintuple

  • est l'entité au sujet de laquelle l'opinion est émise (aussi appelée objet),
  • l'aspect de l'entité i qui est la cible de l'opinion (en général, plusieurs aspects pour une même entité),
  • l'émetteur, c'est-à-dire la personne qui exprime l'opinion (opinion holder),
  • le moment où est exprimée cette opinion,
  • et enfin le sentiment envers l'aspect j de l'entité i, exprimée par la personne k au moment l.

Chacun de ces paramètres est de plus "catégoriel" c'est-à-dire qu'il s'appuie sur la définition d'une catégorie de mots désignant la même entité, aspect, émetteur, moment ou sentiment. Il y a donc là encore un travail important de préprocessing qui est apparenté à la découverte de sujets (topic modelling) ou la classification Enfin, souvent ce modèle général est réduit à un modèle plus simple, en considérant que certaines informations sont soit sans influence pour l'objet d'étude, soit constantes. Par exemple, on suppose souvent que les opinions sont constantes sur de suffisamment courtes périodes (quelques mois pour des tests d'appareils, mais quelques jours, voire heures pour Twitter).

Echelle et niveau d'analyse

L'analyse de sentiment "basique" se focalise sur une seule dimension : le sentiment général est-il positif ou négatif ? Les techniques visant à déterminer un (ou plusieurs) sentiments généraux comme l'envie, la colère, la frustration ou la joie relèvent plus d'une forme d'adaptation des méthodes de découverte de sujet (topic discovery) ou de méthodes de classification.

L'analyse peut s'effectuer à différents niveaux.

  • Au niveau du document : détermine l'opinion générale de l'ensemble du document. Cette analyse fonctionne bien pour des documents qui présentent un point de vue précis, mais moins pour des comparaisons car elle ne fera pas la différence entre les sujets abordés.
  • Au niveau de la phrase : détermine l'opinion générale d'une phrase (positive, négative ou neutre). Cette analyse peut donner une mesure de la "neutralité" d'un texte par exemple pour analyser des entrées de Wikipédia. Les méthodes utilisées sont celle de l'analyse de sujectivité.
  • Au niveau des aspects (aussi appelé Feature level) : au lieu de déterminer les entités à analyser en fonction de critère structuraux (phrase, paragraphe, document) ces méthodes se basent sur un analyse de corrélation entre l'opinion émise et la cible de cette opinion. Par exemple, la phrase "Le sujet du cours me passionne mais le professeur est ennuyeux." présente deux sentiments sur l'entité "cours" : le sujet qui est perçu comme positif et le professeur, qui est perçu comme négatif. Ce niveau d'analyse permet de différencier les aspects qui sont aimé ou non par les auteurs des textes et ainsi permet plus facilement de déterminer des remédiations possibles. En revanche il est très difficile a mettre en place car extrêmement complexe.

Niveau du Document

Ce niveau cherche à découvrir les opinions émises dans un document d. Formellement, ce niveau correspond à la simplification du modèle général où l'on considère pas les différents aspects .

Méthode Supervisée : Bayes naïf

De manière générale, il s'agit ici d'un problème de classification où les catégories sont "sentiment positif" et "sentiment négatif".

La méthode la plus "simple" est celle appelée Bayes Naïf et consiste à sélectionner la catégorie qui maximise la probabilité a posteriori d'observer les termes du texte d.

Phase d'apprentissage

On détermine "manuellement" les catégories d'appartenance des textes de références (C = +1, 0 ou -1);

On peut alors calculer les probabilités a priori d'apparition de chaque catégorie et de chaque combinaison de mots

pour chaque c=+1, 0 ou -1.

En général, on utilise une hypothèse d'indépendance (pas toujours vraie) pour écrire cette probabilité comme

Phase de classification

On calcule à l'aide du théorème de Bayes les probabilités a posteriori

On sélectionne la catégorie c qui maximise cette probabilité, c'est-à-dire qui maximise

ou encore

Calcul de

Pour le calcul des probabilités, on utilise une des deux méthodes suivantes.

  • modèle multinomial (basé sur la fréquence d'apparition) :

est la fréquence d'apparition du mot dans la catégorie c et la somme des fréquences de tout les mots dans la catégorie c.

  • modèle de Bernoulli (basé sur la proportion de document) :

est le nombre de documents où apparaît le mot dans la catégorie c et le nombre total de document de la catégorie c.

Méthode non-supervisée : Information ponctuelle mutuelle

Extraction de structures

Ces méthodes sont basées sur des considérations linguistiques afin de sélectionner les structures grammaticales qui exprime le plus souvent l'opinion. Celles-ci sont (pour l'anglais), entre autres,

  • Adjectif (JJ) + Nom au singulier ou pluriel (NN ou NNS)
  • Adverbe de comparaison on non (RB, RBR, RBS) + Adjectif (JJ) si suivi de tout sauf un nom (ni NN ni NNS)
  • Adjectif (JJ) + Adjectif (JJ) si suivi de tout sauf un nom (ni NN ni NNS)
  • Nom au singulier ou pluriel (NN ou NNS) + Adjectif (JJ) si suivi de tout sauf un nom (ni NN ni NNS)
  • Adverbe de comparaison on non (RB, RBR, RBS) + verbe conjugé (VB, VBD, VBN ou VBG)

(Tableau tiré de Liu, 2014, abréviations selon le Penn Treebank POS project)

Information ponctuelle mutuelle (PMI)

L'information ponctuelle mutuelle (PMI) donnée entre deux mots ou phrases donnée par .

L'information ponctuelle mutuelle est en fait une mesure de la corrélation entre les deux mots ou phrases et .

De nombreuses méthodes peuvent être utilisées pour estimer cette corrélation, entre autres le rapport de fréquence d'apparition conjointe sur la fréquence d'apparition seule (distance de Jaccard) ou encore le dénombrement du nombre de résultats renvoyé par un moteur en recherche.

Algorithme

L'algorithme de calcul le plus simple est celui de Turney (2002) :

  1. extraire les groupes de mots à analyser selon les structures choisies (ci-dessus) ;
  2. calculer l'orientation sentimentale (SO) de la structure extraite (notée ici extrait) en comparant l'information poncutelle mutuelle donnée par deux ensembles de termes de références, un positif et l'autre négatif . et sont les tailles des ensembles de termes de références.
  3. calculer la moyenne de toutes les orientation sentimentales présentes dans le document, puis classer le document dans la catégorie dominante.

Niveau de la Phrase et Subjectivité

Niveau des Aspect

Références

  • Esuli, A. & Sebastiani, F. (2006). SENTIWORDNET: A Publicly Available Lexical Resource for Opinion Mining. Proceedings of the 5th Conference on Language Resources and Evaluation (LREC'06) PDF
  • Huifeng T., Songbo T. & Xueqi C. (2009). A survey on sentiment detection of reviews. Expert Systems with Applications, 36 10760–10773
  • Liu, B. (2014) Sentiment analysis and Opinion Mining. Morgan & Claypool Publ.
  • Mullen, T. (2004) Introduction to Sentiment Analysis (Slides du cours) PDF
  • Pang, B. & Lee, L. (2008) Opinion Mining and Sentiment Analysis. Foundations and Trends in Information Retrieval, 2 PDF
  • Prabowo, R. & Thelwall, M. (2009). Sentiment analysis: A combined approach. Journal of Informetrics, 3 143–157
  • Sudipta, R., Sourish, D., Arnab, P., Saprativa, B., Anirban, D. & Deepjyoti C. (2013). Current Trends Of Opinion Mining And Sentiment Analysis In Social Networks. IJRET: International Journal of Research in Engineering and Technology, 2.
  • Turney, P. (2002) Thumbs up or thumbs down?: semantic orientation applied to unsupervised classification

of reviews. In Proceedings of Annual Meeting of the Association for Computational Linguistics (AC L-2002).

Références R

  • Grün, B. & Hornik, K. (2011). topicmodels: An R Package for Fitting Topic Models. Journal of Statistical Software, 40. PDF

Références non académiques

  • Pennsyvania University Part of Speech Abreviations : Penn Treebank POS tags
  • Razaz, M. (2013). Sentiment classification for product reviews (Slides)