29
Passer à la première page Classification automatique de documents Laurent Denoue Equipe Syscom

Passer à la première page Classification automatique de documents Laurent Denoue Equipe Syscom

Embed Size (px)

Citation preview

Page 1: Passer à la première page Classification automatique de documents Laurent Denoue Equipe Syscom

Passer à la première page

Classification automatique de documents

Laurent Denoue

Equipe Syscom

Page 2: Passer à la première page Classification automatique de documents Laurent Denoue Equipe Syscom

Passer à la première page

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 ?

Page 3: Passer à la première page Classification automatique de documents Laurent Denoue Equipe Syscom

Passer à la première page

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,

Page 4: Passer à la première page Classification automatique de documents Laurent Denoue Equipe Syscom

Passer à la première page

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>, …)

Page 5: Passer à la première page Classification automatique de documents Laurent Denoue Equipe Syscom

Passer à la première page

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

Page 6: Passer à la première page Classification automatique de documents Laurent Denoue Equipe Syscom

Passer à la première page

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)

Page 7: Passer à la première page Classification automatique de documents Laurent Denoue Equipe Syscom

Passer à la première page

« Clustering »

Différentes méthodes 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)

Page 8: Passer à la première page Classification automatique de documents Laurent Denoue Equipe Syscom

Passer à la première page

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

Page 9: Passer à la première page Classification automatique de documents Laurent Denoue Equipe Syscom

Passer à la première page

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.)

Page 10: Passer à la première page Classification automatique de documents Laurent Denoue Equipe Syscom

Passer à la première page

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

Page 11: Passer à la première page Classification automatique de documents Laurent Denoue Equipe Syscom

Passer à la première page

« 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

Page 12: Passer à la première page Classification automatique de documents Laurent Denoue Equipe Syscom

Passer à la première page

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

Page 13: Passer à la première page Classification automatique de documents Laurent Denoue Equipe Syscom

Passer à la première page

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 !

Page 14: Passer à la première page Classification automatique de documents Laurent Denoue Equipe Syscom

Passer à la première page

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)

Bc

Cc

c

CdunclusterecpositivefalsecpositivetrueCQualité

)2(

)())(_)(_()(

Page 15: Passer à la première page Classification automatique de documents Laurent Denoue Equipe Syscom

Passer à la première page

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

Page 16: Passer à la première page Classification automatique de documents Laurent Denoue Equipe Syscom

Passer à la première page

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

Page 17: Passer à la première page Classification automatique de documents Laurent Denoue Equipe Syscom

Passer à la première page

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 !

Page 18: Passer à la première page Classification automatique de documents Laurent Denoue Equipe Syscom

Passer à la première page

kNN (suite…) Problème 2 : modèle vectoriel

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

Page 19: Passer à la première page Classification automatique de documents Laurent Denoue Equipe Syscom

Passer à la première page

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 ?

Page 20: Passer à la première page Classification automatique de documents Laurent Denoue Equipe Syscom

Passer à la première page

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

Page 21: Passer à la première page Classification automatique de documents Laurent Denoue Equipe Syscom

Passer à la première page

Arbres de décision (suite 2…)

Page 22: Passer à la première page Classification automatique de documents Laurent Denoue Equipe Syscom

Passer à la première page

Naïve Bayes

Naïve Bayes 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

Page 23: Passer à la première page Classification automatique de documents Laurent Denoue Equipe Syscom

Passer à la première page

Naïve Bayes (suite 1…)

Page 24: Passer à la première page Classification automatique de documents Laurent Denoue Equipe Syscom

Passer à la première page

Réseaux de neurones

Le perceptron 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

Page 25: Passer à la première page Classification automatique de documents Laurent Denoue Equipe Syscom

Passer à la première page

Le perceptron

En entrée 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

Page 26: Passer à la première page Classification automatique de documents Laurent Denoue Equipe Syscom

Passer à la première page

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 »

Page 27: Passer à la première page Classification automatique de documents Laurent Denoue Equipe Syscom

Passer à la première page

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 diminueDwi = n * Somme sur les exemple d (td-od)xidpuis wi = wi + Dwi

Page 28: Passer à la première page Classification automatique de documents Laurent Denoue Equipe Syscom

Passer à la première page

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

Page 29: Passer à la première page Classification automatique de documents Laurent Denoue Equipe Syscom

Passer à la première page

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