Classification automatique des messages électroniques Guillaume Potin IFT6010:Traitement des Langues naturelles 03 avril 2003
Différents algorithmes de classification: Sommaire Introduction Différents algorithmes de classification: Méthode bayésienne Algos d’apprentissage Reconnaissance par mots-clés Tests et comparatifs Conclusion
Introduction La classification automatique des messages est un besoin important: trafic des e-mails de + en + important… dont certains s’avèrent inintéressants (Spams ~10%) outils actuels de classification inadaptés et qui prennent du temps Il serait intéressant de concevoir un système de classification capable de: détecter les messages importants, et d’éliminer les autres créer automatiquement des répertoires dans lesquels ranger les e-mails selon leur thématique De tels systèmes existent et utilisent des outils de traitement linguistique et des algorithmes de classification.
2. Différents algorithmes de classification Première étape: représentation d’un message sous forme vectorielle Une analyse des informations contenues dans un message doit être effectuée. Le message est donc traité (analyse lexicale, stemming) puis représenté sous la forme d’un vecteur Chaque ‘x’ contient une information pertinente: date, auteur, extension du fichier attaché, longueur, nbre de destinataires… Il faut aussi recueillir les mots-clés contenus dans le sujet et le corps du message et ainsi créer des catégories (ressemblances entre messages). méthode de clustering Les algorithmes de classification peuvent maintenant être utilisés.
2. Différents algorithmes de classification Méthode Bayésienne L’information mutuelle est utilisée pour sélectionner le bon attribut La probabilité qu’un message X = <x1,x2,…> appartienne à la catégorie c est Ex: un message sera rangé dans la catégorie ‘spam’ si le critère suivant est vérifié Le critère peut aussi être décrit par :
2. Différents algorithmes de classification Résultats pour la méthode Bayésienne Pour t=0,999 on obtient Avec:
2. Différents algorithmes de classification Algorithmes d’apprentissage Ex: RIPPER RIPPER a été décrit par Cohen en 1995 et est toujours d’actualité. Il se base sur des règles du type (pour la catégorie ‘ireland’): ireland ireland document ireland ira document, belfast document ireland beer document, guinness document else not_ireland RIPPER construit un ensemble de règles en s’entraînant sur un ensemble de messages et définit le contexte d’un mot (greedy search). RIPPER effectue aussi une phase d’optimisation afin de réajuster les ensembles de règles.
2. Différents algorithmes de classification Algorithmes d’apprentissage Ex: Sleeping Expert (Littlestone) Sleeping Expert est une technique basée sur le modèle n-gram Elle consiste à combiner plusieurs ‘experts’ i.e des types de classification (respectivement un ensemble de n mots) et à déterminer la catégorie d’un document en appliquant à chacun de ces experts des poids respectifs. Chaque expert est construit sur la base de n’importe quelle unité lexicale ou ensemble de mots.
2. Différents algorithmes de classification Sleeping expert
2. Différents algorithmes de classification Sleeping expert
2. Différents algorithmes de classification Algorithmes d’apprentissage Ex: Rocchio L’ensemble des données sont représentées par un ensemble de vecteurs Le document ‘m’ a un vecteur de poids On définit les poids par Avec notamment
2. Différents algorithmes de classification Rocchio Un prototype est représenté pour chaque classe ‘c’ et est représenté par un vecteur dont le k-ième terme est donné par est l’ensemble des documents présents dans la classe c et pondèrent les contributions relatives des exemples positifs et négatifs au prototype Un document est rangé dans la catégorie c si sa distance (produit vectoriel) avec le prototype est inférieure à une certaine valeur de référence
2. Différents algorithmes de classification Reconnaissance par mots-clés Plusieurs outils existent déjà et sont utilisés dans des systèmes de messagerie Ex: Outlook Désavantages: c’est à l’utilisateur de définir les règles de filtrage et la liste des mots-clés Perte de temps et système non-évolutif Inadéquat pour un grand nombre de messages (trop de concepts différents)
Algorithmes d’apprentissage 3. Tests et comparatifs Algorithmes d’apprentissage Les algos d’apprentissage décrits ont été testés sur le AP Titles Corpus; 319 463 documents (ensemble d’entraînement) et 51 991 documents (testés) et un vocabulaire de 67 331 mots Il se situe dans le domaine de l’économie et 9 catégories ont été représentées.
Algorithmes d’apprentissage 3. Tests et comparatifs Algorithmes d’apprentissage Une autre série de tests concerne le TREC-AP corpus qui est plus petit mais présente plus de catégories
3. Tests et comparatifs RIPPER vs Bayesiens Ensemble de tests: Résultats :
3. Tests et comparatifs RIPPER vs Bayesiens Ensemble de tests: Résultats :
Bayesiens vs Filtrage par mots-clés 3. Tests et comparatifs Bayesiens vs Filtrage par mots-clés Ce test s’est intéressé à la reconnaissance des spams. Il a été effectué sur le corpus PU1 de 1099 messages dont 481 spams Le filtrage par mots-clés (keyword-based) a été construit pour reconnaître 58 types de motif dans l’intitulé ou le corps du message:
4. Conclusion Plusieurs techniques ont été présentées et des tests comparatifs sur cles algorithmes montrent: Des résultats satisfaisants en ce qui concerne l’ensemble des méthodes Une meilleure précision pour la méthode Bayésienne qui équivaut en terme de filtrage anti-spam à une classification manuelle. On peut combiner des filtres Bayésiens et obtenir d’excellents résultats La technique Bayésienne est cependant difficile à mettre en œuvre sur les messageries classiques, alors qu’un apprentissage du type RIPPER est prévu dans les logiciels.
Références ‘An experimental Comparison of Naive Bayesion and Keyword-Based Anti-Spam Filtering wuth Personal E-mail Messages’ Ion Androutsopoulos http://citeseer.nj.nec.com/context/1878741/0 ‘Naive Bayes vs Rule-Learning in Classification of Email’ Jefferson Provost http://www.cs.utexas.edu/users/jp/research/email.paper.pdf ‘Context-sensitive learning methods for text categorization’ Cohen http://www-2.cs.cmu.edu/~wcohen/postscript/ ‘Towards an Adaptive Mail Classifier’ Manco-Masciari citeseer.nj.nec.com/manco02towards.html ‘A simple Approach to Building Ensemble of Naive Bayesian Classsifiers’ Pedersen citeseer.nj.nec.com/543769.html