REPUBLIQUE ALGERIENNE DEMOCRATIQUE ET POPULAIREMinistère de l’Enseignement Supérieur et de la Recherche Scientifique
Faculté des Sciences et de Technologie Département des Mathématiques et Informatique
Spécialité : Systèmes Intelligents pour l'Extraction de Connaissances (SIEC)
ANALYSE DES SENTIMENTS - CAS TWITTER -
Présente par : Soumia Elyakoute HERMA Khadidja SAIFIA
Suivi par : M. Djelloul ZIADI M. Slimane BELLAOUAR M. Slimane OULAD NAOUI M. Abderrahmane ADJILA
Twitter peut prédire le succès des produits livrés, des filmes ou des services
Motivation
Twitter a prédit la victoire d'Obama en 2012
Motivation
Selon la presse de la chaine sportive Bein SPORT les gents qui suivent l’évènement d’EURO 2016 alerte que la violence de #Marseille commencer sur Twitter avant le 11 juin 2016 .
Motivation
Introduction
Analyse des sentiments
Travaux sur les tweets
Expérimentation
Conclusion
web Explosion des sources des données
Nécessité d’analyse des sentiments
Introduction
Avec l'avènement du web et l'explosion des sources des données tels que les sites d'avis, les blogs et les micro-blogs est apparu la nécessite d'analyser des millions des postes, des tweets ou d'avis afin de savoir ce que pensent les internautes.
• L'origine : sciences de la psychologie, la sociologie et l'anthropologie.
• l'extraction automatique de texte évaluative, qui aide à produire des résultats prédictifs.
Analyse des sentiments
Analyse des sentiments
Sources des Données
• Sites d’avis (Review sites )• Blogs• Micro-blogs
Twitter est un réseau social.
Il permet aux utilisateurs de publier des messages en temps réel (tweets). Statistiques :
• Plus de 645 millions utilisateurs inscrits.
• 58 millions tweets envoyés chaque jour.
URL : se présente sous forme d’un lien, permet à
l’utilisateur de rejoindre les liens dans un tweet
Mention @ : cible un utilisateur de Twitter dans un tweet posté.
RT (ReTweet) : permet de partager un tweet d'un
utilisateur. VIA : s'utilise pour mentionner un source d'information dans
un tweet .
Hashtag # : identifie un mot-clé en question comme
important et peut en faire un sujet populaire.
Caractéristiques des tweets
Go et al
Développement d’une application twitter sentiment.
Utilisation trois types d’algorithme NB, ME et SVM.
Classification des sentiments.
Lampos et Cristianini Développement d’un outil de surveillance.
Modèles ILI (Inuenza-like Illness) .
Prédiction de résultat du grippe H1N1.
Travaux sur les tweets
Weng et Lee
Modèle EDCoW (Event Detection with Clustering of Wavelet-based Signals) .
Détection des évènements.
Travaux sur les tweets
• Ambiguïté de certains mots positifs ou négatifs selon les contextes.
Difficultés de l'Analyse des Sentiments
• structures syntaxiques et sémantiques d'une phrase et l'expression de
l'opinion qu'elle véhicule.
• contexte.
• l'analyse d’une phrase par paquets de mots.
Expérimentation et Interprétation
Notre contribution
Python.
Spyder est un IDE orienté vers un usage scientifique de Python.
Les packages utilisés : CSV, re, numpy, Nltk, SKlearn
Environnement de travail
Apprentissage + Test
Training Data
Test Data
Pre-processing
Pre-processing
Feature Extractor
Feature Extractor
Features
Features
Label
MachineLearning
Algorithm
ClassifierModel
1 • Phase d’apprentissage
Expérimentation
• Tweets étiqueté par Niek Sanders
ClasseSujet
Positive Neutre Négative horsde sujet
Apple 191 581 377 164
Google 218 604 61 498
Microsoft 93 671 138 513
Twitter 68 647 78 611
Chaque entrée de ensemble de
données est structuré comme suit :
• Tweet id : identfiant du tweet.
• Tweet texte : texte du tweet.
• TweetDate : date du tweet.
• Topic : le sujet du tweet
• Sentiment : étiquette du tweet.
1. Source des données
1 • Phase d’apprentissage
Construire des dictionnaires des émoticons, abréviations, et mots
contractés
2. Prétraitement
1 • Phase d’apprentissage
Remplacer les émoticons ‘’: ‘happy’, les abréviations ‘bff: best
friend forever’, les mots contractés ‘i’m : i am’.
Supprimer les identifiants @Obama, les liens, les chiffres, les
ponctuations et les commandes (VIA, RT).
Supprimer les mots vides (stop words) (nltk) .
2. Prétraitement
Supprimer les mots non Anglais (SentiWordNet).
1 • Phase d’apprentissage
La représentation d'un document avec
le modèle booléen se présente comme
suit: d = (1, 0, 0, 0, 1, 1, 0, 0, …).
3. Extraction des descripteurs et présentation
Tandis que le modele de poderation
TF-IDF présente le document sous
forme d = (w1, w2, w3, …, wn),
Après l’étape de prétraitement il reste les mots importants qui sont les descripteurs sous forme de sac de mots
1 • Phase d’apprentissage
=
• Naïve Bayes est une algorithme probabiliste.
• Donne la probabilité maximale donnée de la classe sachant le document.
4. l’algorithme d’apprentissage
1 • Phase d’apprentissage
l'hypothèse d'indépendance conditionnelle dit que les probabilités P(fi/c) sont
indépendants étant donne la classe c et donc peuvent être "naïvement"
multipliées comme suit :
Les calculs sont faites de logarithme afin d‘éviter les problèmes de calcul des petites valeurs
1 • Phase d’apprentissage
4. l’algorithme d’apprentissage
• 80% d’ensemble des données (4090 tweets) • l'implémentation de Naïve Bayes d'après le package sklearn :
X_vec_train est les tweets d'ensemble d'apprentissage
y_train est les sentiments (labels) d'ensemble d'apprentissage
5. Apprentissage de l’algorithme NB
1 • Phase d’apprentissage
20% de l’ensemble des données (1023 tweets) est utilisé pour la phase de test• les mesures de performance utilisées sont la précision, le
rappel et le F-mesure:
Precision = VP/(VP + FP)
Rappele = VP/(VP + FN)
F1-mesure = 2 * Precision * Rappele/(Precision + Rappele)
2 • Phase de test
• le modèle de pondération TF-IDF : F1- mesure de 0.74 • le modèle booléen : F1- mesure de 0.68.
Modèle Précision Rappel F1-mesure Support
Booléen 0.68 0.69 0.68 1023
TF-IDF 0.74 0.75 0.74 1023
3. résultats et interprétation
TF-IDF > Booléen
Notre modèle pourra être utilisée en invoquant la méthode prédite de la classe NBClassifier
NBClassifier.predict(test_tweet)
Utilisation du classifieur
test-tweet : contient le tweet à tester
L’Analyse des sentiments évolue bien depuis 2002.
C’est une technique très utile pour prédire des évènements et la prise de décision.
Les deux modèle de représentation booléen et TF-IDF. La comparaison entre les deux modèles de représentation révèle que le modèle TF-IDF est plus important que celui le booléen.
ConclusionL’Analyse des sentiments est une technique automatique de détection d’opinion .
corpus des tweets Niek Sanders.
l’algorithme probabiliste Naïve Bayes.
Perspectives
Investigue d'autres méthodes de l'analyse des sentiments telles que la méthode SVM et ME.
Des aspects linguistiques de négation, type de mots (sujet, verbe, adjectifs. . . ) peuvent améliorer le processus d'analyse des sentiments.
Merci pour votre attention