Comparaison d’approches statistiques pour la ...plantie/publications/deft07_lgi2p-lirmm.pdf ·...
Transcript of Comparaison d’approches statistiques pour la ...plantie/publications/deft07_lgi2p-lirmm.pdf ·...
Comparaison d’approches statistiques pour la classification de textes d’opinion
Michel Plantié, Gérard Dray, Mathieu Roche
(LGI2P/EMA – LIRMM)
Caractéristiques des traitements
� Approche identique pour les 4 corpus
� Traitement linguistiques peu nombreux
� Approche statistiques essentiellement
Schéma général du traitement : 1- Prétraitements et Vectorisation
Corpus
Apprentissage
Index complet Index réduitCalculindex
Réductionindex
Vecteurs textesLemmatisationVecteurs textes
Vecteurs textes
(Apprentissage et test)
Vecteurs réduitsVecteurs réduits
Vecteurs réduitsVecteurs réduits
Vectorisation
Vectorisation
� Lemmatisation
� Élimination des articles, ponctuation faible
� Réduction par information mutuelle [Cover et al. , 1991] :
Prétraitements, réduction d’index
{0,1}
( , ) ( ) log( ( )) ( ) ( | ) log( ( | ))∈ ∈ ∈
= − +∑ ∑ ∑t
t t t tc C f c C
I C M P c P c P f P c f P c f
Schéma général du traitement : 2- Modélisation et Classification
Vecteurs réduitsVecteurs réduits
Vecteurs réduitsVecteurs réduits
(Corpus d’ Apprentissage)
Vecteurs réduitsVecteurs réduits
Vecteurs réduitsVecteurs réduits
(Corpus de test)
Calculmodèle
Attribution classe Résultats
Modélisation
� Modèles statistiques
� Quatre méthodes principales de calcul de modèles
� Naïve Bayes Multinomial
� Réseaux de Neurones type RBF
� Machine à Vecteurs Support – SVM
� Arbres de décision C4.5 (Quinlan)
Naïve Bayes Multinomial
� Modèle Probabiliste
� Combinaison de la loi de Bayes, et de la loi Multin omiale
(hypothèse d’indépendance des probabilités de chaqu e mot)
� => Calcul de l’appartenance d’un document à une classe :
j
count(mi)^ ^
map j i jc C 1 i n
C arg max P(C )* (P(m | C ) )∈ ≤ ≤
= ∏
j
^ ^
map j i jc C 1 i n
C arg max log P(C ) count(mi) * log(P(m | C ))∈ ≤ ≤
= + ∑
- P(mi|Cj) calculé par l’estimateur de Laplace
Machine à Vecteurs Support – SVM
� Calcul de l’Hyperplan de séparation entre classes
� Maximises la distance entre l’hyperplan et les “points difficiles” prochesde la frontière de décision
� Une intuition: s’il n’y a pas de points proches de la surface de décision, alors il n’y a pas de décisions incertaines de classification
� SVMs maximise la marge autour autour de l’hyperplan séparateur (large margin classifiers)
� La fonction de décision est entièrement spécifiée par un sous ensemble d’échantillons d’apprentissage : Les vecteurs support .
� Problème de Programmation Quadratique
� Quatre types de résolutions : linéaire, polynomiale, RBF, sygmoïde
Réseaux de Neurones type RBF
� Un RBF est constitué uniquement de 3 couches :
� La couche d’entrée : elle retransmet les inputs sans distorsion.
� La couche RBF : couche cachée qui contient les neurones RBF. Les neurones sont des gaussiennes.
� La couche de sortie : simple couche qui contient une fonction linéaire.
� Chaque couche est ‘ fully connected ’ à la suivante.
Réseaux de Neurones type RBF
� Chaque neurone RBF contient une gaussienne centrée sur un point de l’espace
d’entrée : f(x) = EXP(x² / (2* Beta²))
�Pour une entrée donnée, la sortie du neurone RBF est la hauteur de la gaussienne
en ce point.
…
…ENTREE
SORTIE =
n
N
∑=
N
jjjsw
1
W1
W2
W3
WN
La sortie du réseau est une
combinaison linéaire des sorties
des neurones RBF multipliés par le
poids de leur connexion respective.
Méthode d’évaluation de l’apprentissage
� Validation croisée (S;x) : // S est un ensemble, x est un entier
� Réduction d’index sur S� Découper S en x parties égales S1, … , Sx� Pour i de 1 à x � Construire un modèle M avec l'ensemble S - Si � Evaluer une mesure d’erreur ei de M avec Si � Fin Pour
� En général le nombre x de parties est fixé à 10. � Inclure dans la validation croisée la réduction
d’index
Méthode d’évaluation de l’apprentissage
� Validation croisée (S;x) : // S est un ensemble, x est un entier
� Découper S en x parties égales S1, … , Sx
� Pour i de 1 à x
� Réduction d’index sur S - Si
� Construire un modèle M avec l'ensemble S - Si
� Evaluer une mesure d’erreur ei de M avec Si
� Fin Pour
� En général le nombre x de parties est fixé à 10.
Résultats : taille des index
Corpus Nombre initial d’unités linguistiques
Nombre d’unités linguistiques
Après réduction
Corpus 1 36214 704
Corpus 2 39364 2363
Corpus 3 10157 156
Corpus 4 35841 3193
Résultats FscoreCORPUS 1 :
critiques cinéma, Livres, Disques
Validation Croisée Jeu de test
Type de classifieur Fscore Fscore
RBF-NetworkClasse Mauvais 0.821
0.4715(meilleur résultat officiel)
Classe Moyen 0.708
Classe Bien 0.86
Naive BayesMultinomial Laplace / Dirichlet
Classe Mauvais 0.755 / 0.5860.5902
(non publié)Classe Moyen 0.595 / 0.539
Classe Bien 0.825 / 0.797
SVMClasse Mauvais 0.718
0.6102(non publié)
Classe Moyen 0.588
Classe Bien 0.808
Résultats FscoreCORPUS 2 : critiques Jeux vidéos Validation Croisée Jeu de test
Type de classifieur Fscore Fscore
RBF-NetworkClasse Mauvais 0.846
0.5475Classe Moyen 0.849
Classe Bien 0.821
Naive BayesMultinomial Laplace / Dirichlet
Classe Mauvais 0.805 / 0.7000.7416
(non publié)Classe Moyen 0.814 / 0.647
Classe Bien 0.851 / 0.834
SVMClasse Mauvais 0.799
0.7829(meilleur résultat officiel)
Classe Moyen 0.82
Classe Bien 0.849
Résultats FscoreCORPUS 3 : Relectures d’articles Validation Croisée Jeu de test
Type de classifieur Fscore Fscore
RBF-NetworkClasse Mauvais 0.605
Classe Moyen 0.594
Classe Bien 0.668
Naive BayesMultinomial Laplace / Dirichlet
Classe Mauvais 0.631 / 0.6440.4914
(non publié)Classe Moyen 0.543/ 0.557
Classe Bien 0.703 / 0.693
SVMClasse Mauvais 0.662
0.4782(meilleur résultat officiel)
Classe Moyen 0.605
Classe Bien 0.732
Résultats FscoreCORPUS 4 : Débats Parlementaires Validation Croisée Jeu de test
Type de classifieur Fscore Fscore
RBF-NetworkClasse Contre 0.701 0.6179
(meilleur résultat officiel)Classe Pour 0.671
Naive BayesMultinomial Laplace / Dirichlet
Classe Contre 0.806 / 0.791 0.686(non publié)Classe Pour 0.702 / 0.736
SVMClasse Contre 0.839 0.6907
(non publié)Classe Pour 0.73
Arbres de décisionC 4.5 Quinlan
Classe Contre 0.605 0.594
Classe Pour 0.525
Autres méthodes tentées :� Vote :
� Majorité
� Moyenne
� Fondé sur la matrice de « confusion »
� Minimum, Maximum
� Avec Pré filtrage� Élimination des phrases inutiles : possible sur le corpus 1 seulement
� Avec Synonymes2 approches :
� Index complet mots : Élimination des mots clés synonymes sur l’index
� Index réduit de mots : les mots non présents synonymes de mots de l’indexaugmentent la valeur de la coordonnée du mot de l’index
De nouveaux résultats avec Mots et Bi-grammes (lemmes) :
Vote Naïve Bayes M, SVM, SVM2
Moyenne de probabilités FscoreValidation Croisée
avec index
CORPUS 1 : Critiques cinéma
(minimum de probabilités)
Classe Mauvais 0.64861.3%
(61,02)
Classe Moyen 0.438
Classe Bien 0.753
CORPUS 2 : Jeux vidéos
Classe Mauvais 0.758
79.1%
(78,29)
Classe Moyen 0.791
Classe Bien 0.824
CORPUS 4 : Débats Parlementaires Classe Contre 0.812 75.4%
(69,07)Classe Pour 0.696
Conclusion
� Un challenge intéressant
� Les algorithmes SVM et Naïve Bayes MultinomialTrès robustes
� Résultats à améliorer
� Les techniques avec synonymes décevantes
� Les techniques avec élimination des phrases creuses
� Les Votes par moyenne améliorent les résultats
� Les techniques Mots + Bigrammes (lemmes) améliorent légèrement les résultats
Merci de votre attention
….. Questions ? …..