La Classification des textes: à la recherche d’une représentation Stan Matwin École d’Ingénierie et de technologie de l’information Université d’Ottawa stan@site.uottawa.ca
Plan Apprentissage supervisé (classification) Apprentissage automatique et fouille de données (AA/FD) à l’ UO L’approche classique Essais de représentation linguistique Les N-grammes: comment les obtenir? Étiquetage et co-apprentissage Recherches futures
Apprentissage supervisé (classification) étant donnés: un ensemble d’exemples T={et}, où chaque t est l’étiquette d’une classe parmi C1,…Ck un concept contenant k classes C1,…Ck (mais la définition du concept est inconnue) Trouver: une description de chaque classe permettant une bonne prédiction de la classe de nouveaux exemples
Classification Approche habituelle: les exemples sont représentés sous forme de vecteurs de valeurs d’attributs La théorie est confirmée par l’expérience: plus il y a d’exemples, plus précise est la prédiction
L’AA/FD à l’UO apprentissage à partir de classes déséquilibrées (imbalanced): application à la télédétection une représentation relationnelle plutôt que propositionnelle: apprentissage du concept de maintenabilité d’un logiciel apprentissage avec des connaissances du domaine. Les réseaux bayesiens et comment les obtenir. Application aux bases de données distribuées.
Á quoi sert la classification de textes? Archivage automatique Filtrage de l’Internet Systèmes de recommandation Extraction d’information …
Classification de textes: approche habituelle Enlever les mots-arrêt (stop words) et les marqueurs non-textuels les mots restants sont tous pris comme des attributs un document devient un vecteur <mot, fréquence> Entraîner un classifieur booléen pour chaque classe Évaluer les résultats sur un nouvel échantillon Bag of words
Outils de classification des textes RIPPER un système d’apprentissage ascendant (covering) Fonctionne bien sur de gros ensembles de traits binaires Réseaux bayesiens naïfs Efficaces (pas de recherche) Simples à programmer Indiquent un “niveau de croyance”
Autres travaux Yang: les meilleurs résultats obtenus avec k-NN: 82,3% de précision en micro-moyenne Joachim: Support Vector Machine (SVM) + données non étiquetées SVM n’est pas affectée par une forte dimensionnalité ni par la rareté des exemples.
SVM en classification de textes SVM transductive Séparation maximale Marge pour le jeu de test L’entraînement sur 17 exemples dans les 10 catégories les plus fréquentes donne une performance de 60% sur 3000+ cas de test disponibles pendant l’entraînement.
Problème 1: sélection de traits très sélective RIPPER (BW: mots en vrac): machine & learning = AI FLIPPER (Cohen): machine & learning & near & after = AI RIPPER (expressions): “machine learning” = AI
Problème 2: certaines relations sémantiques sont ignorées arme Des mots reliés sémantiquement peuvent être dispersés dans de nombreux documents. Un classifieur statistique peut parvernir à détecter ces corrélations. pistolet couteau poignard épée carabine fronde Les classifieurs à règles sont désavantagés.
Solution proposée (Sam Scott) Extraire les groupes nominaux et/ou les expression-clefs (Extractor) et les ajouter à la liste de traits Ajouter les hypernymes
Hypernymes dans WordNet arme “instance of” “is a” couteau arme à feu “Synset” pistolet, “synset” => SYNONYME fusil “is a” => HYPERNYME “instance of” => HYPONYME
Évaluation (Lewis) Changer le paramètre de “taux de perte” (loss ratio) Pour chaque valeur du paramètre, Apprendre une hypothèse pour chaque classe (classification binaire) Micro-moyenne des matrices de confusion (ajout pour chaque composant) Calculer la précision et la couverture Interpoler (ou extrapoler) pour trouver le point où la micro-moyenne de la précision et celle de la couverture sont égales.
Résultats Reuters DigiTrad .821 .359 BW .810 .360 NP .827 .357 NP .819 Micromoyenne b.e. Les représentations alternatives ne sont pas notablement meilleures que les mots en vrac (bag of words:BW) mais… la compréhensibilité… Reuters DigiTrad BW .821 .359 BW .810 .360 S NP .827 .357 NP .819 .356 S KP .817 .288 e KP .816 .297 e S H .741 e .283 H .734 e .281 1 NP .823 N/A W
Combination des classifieurs Reuters DigiTrad # représentations b.e. représentations b.e. 1 NP .827 BW .360 S 3 BW, NP, NP .845 BW, BW , NP .404 e S S 5 BW, NP, NP , KP, KP .849 BW, BW , NP, KP , KP .422 e S S S S Comparable aux meilleurs résultats possibles (Yang)
Autres possibilités Utilisation d’hypernymes avec un jeu d’apprentissage réduit (évite les mots ambigus) Utilisation de Bayes+RIPPER, en cascade (Gama) Autres représentations
Co-occurrences Pas nécessairement des groupes nominaux: simplement des paires de mots, éventuellement séparés par des mots-arrêt (stop words) Seuls les plus discriminants sont retenus Ils sont mis dans l’ensemble non structuré (bag of words) et transmis à… RIPPER
N-grammes Les n-grammes sont des sous-chaînes d’une longueur donnée Bons résultats sur Reuters [Mladenic, Grobelnik] avec Bayes. Nous testons RIPPER. Une tâche différente: la classification de fichiers attachés au texte principal audio/vidéo encodés Des n-grammes aux traits relationnels
Comment obtenir de bons n-grammes? Nous utilisons Ziv-Lempel pour la détection de sous-chaînes fréquentes (.gz!) abababa a b a a b b a
N-grammes Comptage élimination: si la fréquence d’une sous-chaîne < seuil Construction de relations: la chaîne A précède presque toujours la chaîne B Transmission à un système d’apprentissage relationnel (FOIL)
Utilisation de l’induction grammaticale (fichiers texte) L’idée est de détecter des formes (patterns) de sous-chaînes Les formes correspondent à des langages réguliers Méthodes de déduction d’automates: un automate de reconnaissance pour chaque classe de fichiers Nous utilisons une version modifiée de RPNI2 [Dupont, Miclet]
Nouveautés Travail sur le texte marqué (Word, Web) XML avec des marqueurs sémantiques: avantages et inconvénients pour l’AA/FD Co-apprentissage Fouille de textes
Co-apprentissage Comment utiliser les données non étiquetées? Ou comment limiter le nombre d’exemples à étiqueter? Deux classifieurs et deux représentations “redondantes et suffisantes” (redundantly sufficient) entraîner les deux, appliquer les deux sur le jeu de test, ajouter les meilleures prédictions au jeu d’apprentissage.
Co-apprentissage Le jeu d’entraînement s’accroît car … …chaque classifieur fait ses prédictions indépendemment, à cause de la “suffisance redondante”) (représentations différentes) Est-ce que cela marcherait avec nos classifieurs en utilisant Bayes? Marcherait pour la classification du courrier électronique
Co-apprentissage Mitchell a fait des expériences sur la classification des pages Web (profs, étudiants, cours, projets). C’est une tâche d’apprentissage supervisé. Il utilise les segments de texte associés aux liens (anchor text) le contenu des pages Le taux d’erreur est diminué de moitié (il passe de 11% à 5%).
Sciences cognitives? Le co-apprentissage semble être justifié cognitivement Modèle: apprentissage d’étudiants par groupes de deux Quels autres mécanismes d’apprentissage pourraient fournir des modèles de l’apprentissage supervisé?
Conclusion Une tâche pratique pour laquelle il faut trouver une solution Aucune solution satisfaisante pour l’instant Un domaine de recherche fertile