Classification automatique de documents

Slides:



Advertisements
Présentations similaires
Plan Les réseaux de neurones Le réseau RBF RBF et Mushroom Historique
Advertisements

Apprentissage spectral
Modèle des jeux et des mécanismes
1 Modèles Economiques en Informatique Michel de Rougemont Université Paris II.
A. Cornuéjols IAA (basé sur Rob Schapires IJCAI99 talk) Combiner des apprenants: le boosting.
Algorithmes et structures de données avancés
Classification et prédiction
Regroupement (clustering)
Efficient Simplification of Point-Sampled Surfaces
Cours 3-b Méthode des éléments finis 1D
Apprentissage supervisé à partir de séquences
Regroupement (clustering)
Évaluation de la qualité d'une clusterisation
Classification supervisée Marine Campedel avril 2005.
Les K plus proches voisins
LES RESEAUX DE NEURONES
Cours d'algorithmique 11 / Intranet 1 9 janvier 2006 Cours dAlgorithmique N P - complétude.
Application de réseaux bayésiens à la détection de fumées polluantes
Phylogénie et distances génétique
Visualisation d’information interactive 5 : Graphes
COMMENT CRÉER UNE ENQUÊTE AVEC SPHINX ?
Vers une approche de construction de composants ontologiques pour le web sémantique – synthèse et discussion. Nesrine Ben Mustapha (RIADI, ENSI Tunis)
Mirta B. Gordon Laboratoire Leibniz-IMAG Grenoble
Concepts avancés en mathématiques et informatique appliquées
Mirta B. Gordon Laboratoire Leibniz-IMAG Grenoble
Apprendre à partir des observations
Réseaux de neurones artificiels « la rétropropagation du gradient »
Applications du perceptron multicouche
Heuristiques A. Introduction B. Recherche d ’une branche
Reconnaissance de visages
Résolution des Équations Différentielles
Optimisation linéaire
Méthode des k plus proches voisins
Construction de modèles visuels
RECONNAISSANCE DE FORMES
Classification Introduction k-NN Arbres de décision Réseaux baysiens
DEA Perception et Traitement de l’Information
Réseaux de neurones.
Quizz rdf Dess IE. La RDF globale: 1.Quand il y a 2 classes seulement 2.Quand on fait un apprentissage 3.Quand les formes sont représentées par des vecteurs.
Les réseaux de neurones
GPA-779 Perceptron multicouche
Cours 2 Recherche d'informations Espace vectoriel des sacs de mots.
Algorithmes d ’approximation
Apprentissage semi-supervisé
Optimisation-Identification et Cast3M
Les réseaux de neurones compétitifs
Apprentissage par arbre de décision
Heuristiques C. Recherche de la meilleure branche . Branch And Bound
DEA Perception et Traitement de l’Information
Classification automatique de textes
Programmation linéaire en nombres entiers
Classification : objectifs
Christelle Scharff IFI 2004
Fast and Furious Decision Tree Induction
Crawlers Parallèles Présentation faite par: Mélanie AMPRIMO
S. Canu, laboratoire PSI, INSA de Rouen
Apprentissage « machine »
Olivier Leclair, Université Laval Un algorithme de fouille dans une représentation des données par objets: une application médicale SIMON, Arnaud.
Fusion de paramètres en classification Parole/Musique Julie Mauclair – Equipe Parole Julien Pinquier – Equipe SAMoVA.
SVM machine à vecteurs de support ou séparateur à vaste marge
Thibault ROY & Olivier SAGIT Exposé du mercredi 17 décembre 2003 Apprentissage Interactif Apprentissage avec SpamAssassin UFR de Sciences Département d’Informatique.
Knowledge discovery in Databases (KDD)
20/06/2015propagation de signatures lexicales dans le graphe du Web 1 Propagation de signatures lexicales dans le graphe du Web M. Bouklit M. Lafourcade.
1 Prédiction de mobilité basée sur la classification selon le profil DAOUI Mehammed Université Mouloud Mammeri Tizi-Ouzou Rencontres sur.
Structures de données avancées : Arbres B+ avec expansion partielle D. E ZEGOUR Institut National d ’Informatique.
Le réseau de neurones artificiel
Concepts avancés en mathématiques et informatique appliquées MAP-6014.
Apprentissage semi-supervisé avec des modèles discriminants : application au résumé automatique de texte Massih-Réza Amini LIP6, Université de Paris VI.
Scénario Les scénarios permettent de modifier la position, taille … des calques au cours du temps. Son fonctionnement est très proche de celui de Macromedia.
Les dossiers patients d’un hôpital contiennent les attributs suivants : – nom – code postal – pression systolique en mm de mercure. – s’il est porteur.
Transcription de la présentation:

Classification automatique de documents Laurent Denoue Equipe Syscom

Introduction Trop de documents à trier 30/03/2017 Introduction Trop de documents à trier les experts humains coûtent cher « Clustering » vs. Classification Clustering = non supervisé Classification = supervisé Application aux documents Quelles représentations ? Réduction du nombre de termes ?

Représentation des documents (indexation) Extraction des mots Simple (mot=suite de lettres) Avancé (Porter) Sophistiqué (lemmatisation) Représentation de chaque doc. Par un vecteur de dimension N N = nombre total de mots distincts Quelles valeurs dans le vecteur ? Binaire, TDIDF,

Quelques remarques sur la représentation choisie « sac de mots » on perd l ’information sur la position des mots « collocations » on calcule les 1-gram, 2-gram, … 3-gram = « Word Wide Web » Taille des vecteurs et de la matrice doc/mots ne représenter que les cases non nulles ! Prendre en compte le format des documents par exemple en HTML (<H1>, <B>, …)

Mesure de la similarité entre deux documents Le modèle vectoriel permet d ’utiliser des mesures connues comme Intersection (nombre de mots communs) Cosinus mesure Euclidienne à N dimensions

Réduction du nombre de termes Nombre de termes est très grand ex. 100 doc. de 5000 mots => 500000 termes ! Réduction facile pour la classification exemple : information gain Mais comment faire pour le « clustering » ? Utiliser les fréquences des mots Utiliser des bases externes ? (WordNet)

« Clustering » Différentes méthodes Différents résultats raisonnement basé sur les cas et dérivés méthodes probabilistes réseaux de neurones Différents résultats classes séparées et plates (Kohonen) classes séparées et hiérarchisées (HAC) classes qui se recoupent (kNN)

Clustering k-NN et dérivés 1966 : K-Nearest Neighbors (kNN) en o(nK) choix du nombre K de cluster AVANT choix au hasard de K documents rapprochement des documents proches recouvrements possibles (parfois intéressant) 1968 : Single Pass en o(n) traitement séquentiel des documents choix arbitraire d ’un seuil de similarité Solution : best-first iterative partitioning on cherche le plus similaire à chaque fois

Clustering hiérarchique Hierarchical Agglomerative Clustering (HAC) production d ’une hiérarchie de classes au départ un cluster par document rapprochement des deux clusters les plus proches jusqu’à n ’avoir qu ’un seul cluster Plusieurs versions de HAC single-linkage (Similarité = Max des similarités) group-average (Similarité = moyenne des sim.) complete-linkage (Similarité = Min des sim.)

Suffix Tree Clustering Extraction des phrases des documents une variante des collocations étendue au documents entiers à chaque phrase : liste des documents Similarité = f(longueur de la phrase) Avantages résultat indépendant de l’ordre des documents algorithme INCREMENTAL !! pas de choix arbitraire du nombre de clusters

« Self Organizing Maps » (SOM) ou Cartes de Kohonen Réseau de neurones à deux niveaux en entrée le vecteur d ’un document en sortie un réseau à deux dimensions (carte) Allure de la carte

Algorithme d’une SOM Algorithme poids au hasard au départ on soumet au réseau chaque document on calcule le neurone vainqueur (le plus actif) on augmente son poids ET celui de ses voisins on répète au minimum 5 fois sur les N documents

Utilisation d’une SOM Visualisation directe du réseau de sortie sous forme 2D on peut augmenter avec des couleurs et du relief Classification de nouveaux documents on soumet son vecteur à la SOM on regarde les nœuds les plus actifs sur la carte on peut décider de « valider » ce choix en modifiant les poids du réseau !

Evaluation d’un clustering Mesure de l ’entropie des clusters Entropie mesure le degré de cohérence d ’un cluster par rapport aux autres ou encore des fonctions ad-hoc Si on possède un jeu d’essai exemple avec Reuters (comme classification)

Classification supervisée Pourquoi ? Yahoo! automatique Catalogues des bibliothèques où un sché Bookmarks filtrage de documents (emails, news) Différent du « clustering » ici on connaît les classes à l’avance on a des exemples But : découvrir le modèle derrière ces exemples pour prédir la classification de nouveaux documents

Comment ? Raisonnement inductif on observe les données (documents/classes) on induit un modèle (de la connaissance) sauf pour raisonnement basé sur les cas on ne cherche pas de modèle Plusieurs méthodes k plus proches voisins (k-NN) arbres de décision Naïve Bayes Réseaux de neurones Programmation génétique

K plus proches voisins (ou K nearest neighbors, kNN) Choisir K Choisir la fonction de similarité entre deux docs. « Vectoriser » les documents Algorithme trouver les K plus proches documents déjà classés répondre la moyenne des K plus proches Problème 1 : le choix de K est important ! Pondération des documents en fonction de leur distance au nouveau document prise en compte de tous les documents !

kNN (suite…) Problème 2 : modèle vectoriel Solution tous les attributs ont la même importance ! Mais 2 mots peuvent être discriminants ! (voir Arbres de décision) Solution pondération des attributs utilisation de documents exemples + test Problème 3 : classement d ’un nouveau cas trop de calculs !! Solution : category-based ou cluster-based

Arbres de décision Méthode très populaire exemples : ID3 (1986) et C4.5 (1993)de Quinlan Qu’est-ce qu’un arbre de décision ?

Arbres de décision (suite 1…) Représentation des exemples : représenter les exemples par Attribut/Valeur ex. pour les documents : vecteur de termes Cœur de l ’algorithme = quel attribut tester ? Entropie puis Information gain Attention à l ’apprentissage par cœur idée : réduire la profondeur de l’arbre Comment ? utiliser un jeu de test en plus du jeu d ’exemples

Arbres de décision (suite 2…)

Naïve Bayes Naïve Bayes Idée Nommé d ’après le théorème de Bayes méthode très bien adapté aux documents l ’hypothèse d ’indépendance des variables du théorème ne dérange pas en réalité Idée utiliser les probabilités de chaque classe et les fréquences des mots associés à chaque classe

Naïve Bayes (suite 1…)

Réseaux de neurones Le perceptron Fonction Sigmoid combinaison linéaire des entrées fonction de seuil à choisir « à la main » fonctions linéairement séparables d ’où critique en 1969 par Minsky et Papert Fonction Sigmoid permet d ’apprendre des fonctions non séparables linéairement

Le perceptron En entrée En sortie : Oui/Non un vecteur de dimension n : (x1,x2,…,xn) une valeur de seuil En sortie : Oui/Non Topologie (= structure du réseau) un lien pondéré wi entre chaque entrée et la sortie Fonction sortie = w1x1 + w2x2 + … + wnxn

Perceptron : apprentissage wi = wi + n(t-o)xi n = taux d'apprentissage (0.1 puis diminue...) t = réponse que le perceptron aurait dû donner o = réponse actuelle du perceptron Problème ne fonctionne que pour le linéaire Solution apprentissage « règle Delta »

Réseaux de neurones (suite 1…) Règle Delta (ou « Gradient Descent) à chaque étape de l ’apprentissage on cherche les wi pour que l ’erreur E globale du réseau diminue Dwi = n * Somme sur les exemple d (td-od)xid puis wi = wi + Dwi

Réseaux de neurones (suite 2…) Des variantes du « Delta Rule » pour éviter les minimum locaux de l ’erreur 1985 : algorithme de « BackPropagation » apprentissage de réseaux à plusieurs sorties et plusieurs couches utilisation de la fonction Sigmoid dans un neurone au lieu d’une simple combinaison linéaire Sigmoid = 1 / (1 + e-net) avec net = w1x1 + w2x2 + ... + wnxn

Réseaux de neurone pour la classification des documents Coder chaque document sous forme de vecteur Présenter chaque document en entrée Voir la sortie Corriger les poids du réseau Présenter tous les exemples plusieurs fois tant qu’ils ne sont pas tous bien classés même remarque pour « overfitting » utilisation d’un jeu de test