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 Calcul index Index complet Réduction index Index réduit Corpus Appren tissage Lemmatisation Vecteurs textes Vecteurs textes Vecteurs textes Vectorisation Vectorisation (Apprentissage et test)
Prétraitements, réduction d index Lemmatisation Élimination des articles, ponctuation faible Réduction par information mutuelle [Cover et al., 1991] : I( C, M ) = P( c)log( P( c)) + P( f ) P( c f )log( P( c f )) t t t t c C f {0,1} c C t
(Corpus d Apprentissage) Schéma général du traitement : 2- Modélisation et Classification Calcul modèle (Corpus de test) 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 Multinomiale (hypothèse d indépendance des probabilités de chaque mot) => Calcul de l appartenance d un document à une classe : c j C 1 i n ^ ^ count(mi) C map = arg max P(C j)* (P(m i C j) ) c j C 1 i n ^ C arg max log P(C ) count(mi) * log(p(m C )) = + map j i j ^ - P(m i C j ) 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 proches de 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 W 1 W 2 La sortie du réseau est une combinaison linéaire des sorties des neurones RBF multipliés par le poids de leur connexion respective. W 3 ENTREE SORTIE = N j= 1 w j s j n W N N 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.
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 Fin Pour 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 En général le nombre x de parties est fixé à 10.
Corpus Nombre initial d unités linguistiques Résultats : taille des index 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 Fscore CORPUS 1 : Validation Croisée Jeu de test critiques cinéma, Livres, Disques Type de classifieur Fscore Fscore RBF-Network Naive Bayes Multinomial Laplace / Dirichlet SVM Classe Mauvais 0.821 Classe Moyen 0.708 Classe Bien 0.86 Classe Mauvais 0.755 / 0.586 Classe Moyen 0.595 / 0.539 Classe Bien 0.825 / 0.797 Classe Mauvais 0.718 Classe Moyen 0.588 Classe Bien 0.808 0.4715 (meilleur résultat officiel) 0.5902 (non publié) 0.6102 (non publié)
Résultats Fscore CORPUS 2 : critiques Jeux vidéos Validation Croisée Jeu de test Type de classifieur Fscore Fscore RBF-Network Naive Bayes Multinomial Laplace / Dirichlet SVM Classe Mauvais 0.846 Classe Moyen 0.849 Classe Bien 0.821 Classe Mauvais 0.805 / 0.700 Classe Moyen 0.814 / 0.647 Classe Bien 0.851 / 0.834 Classe Mauvais 0.799 Classe Moyen 0.82 Classe Bien 0.849 0.5475 0.7416 (non publié) 0.7829 (meilleur résultat officiel)
Résultats Fscore CORPUS 3 : Relectures d articles Validation Croisée Jeu de test Type de classifieur Fscore Fscore RBF-Network Naive Bayes Multinomial Laplace / Dirichlet SVM Classe Mauvais 0.605 Classe Moyen 0.594 Classe Bien 0.668 Classe Mauvais 0.631 / 0.644 Classe Moyen 0.543/ 0.557 Classe Bien 0.703 / 0.693 Classe Mauvais 0.662 Classe Moyen 0.605 Classe Bien 0.732 0.4914 (non publié) 0.4782 (meilleur résultat officiel)
Résultats Fscore CORPUS 4 : Débats Parlementaires Validation Croisée Jeu de test Type de classifieur Fscore Fscore RBF-Network Naive Bayes Multinomial Laplace / Dirichlet SVM Arbres de décision C 4.5 Quinlan Classe Contre 0.701 0.6179 Classe Pour 0.671 (meilleur résultat officiel) Classe Contre 0.806 / 0.791 0.686 Classe Pour 0.702 / 0.736 (non publié) Classe Contre 0.839 0.6907 Classe Pour 0.73 (non publié) Classe Contre 0.605 0.594 Classe Pour 0.525
Vote : Majorité Moyenne Fondé sur la matrice de «confusion» Minimum, Maximum Avec Pré filtrage Autres méthodes tentées : Élimination des phrases inutiles : possible sur le corpus 1 seulement Avec Synonymes 2 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 index augmentent 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 Fscore Validation Croisée avec index CORPUS 1 : Critiques cinéma (minimum de probabilités) CORPUS 2 : Jeux vidéos Classe Mauvais 0.648 Classe Moyen 0.438 61.3% Classe Bien 0.753 Classe Mauvais 0.758 Classe Moyen 0.791 Classe Bien 0.824 (61,02) 79.1% (78,29) CORPUS 4 : Débats Parlementaires Classe Contre 0.812 75.4% Classe Pour 0.696 (69,07)
Un challenge intéressant Les algorithmes SVM et Naïve Bayes Multinomial Très robustes Résultats à améliorer Les techniques avec synonymes décevantes Conclusion 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?..