Vous êtes sur la page 1sur 10

Classification non supervise

Data Mining

Principes
Mthodes par partitionnement
Mthodes hirarchiques

Master 2
UAG

Classification non supervise

Principes
Mthodes par partitionnement
Mthodes hirarchiques

Classification non supervise


Classification (non supervise) (en : clustering)
tche de description
recherche des groupes (clusters) dans un ensemble de donnes
avec la plus grande similarit possible intra-groupe
et la plus grande dissimilarit possible inter-groupes

Classement ou Classification supervise (en : classification)


tche de prdiction
prdit des variables catgorielles
construit un modle de classement (classifieur) des donnes
en se basant sur un ensemble appel
ensemble d'apprentissage (EA) (training set)
utilise le modle pour classer de nouvelles donnes

Classification non supervise :


Apprentissage non supervis

Classification non supervise


Exemples

recherche de classes d'objets dans un ensemble de


donnes
classe (cluster) : ensemble d'objets similaires entre
elles et dissimilaires des objets d'autres classes
doit permettre de dcouvrir des modles cachs
utilise en Machine learning, Data mining, Analyse de
donnes
en Data Mining : intervient comme pr-tape d'analyse
des donnes

Mthodes de classification

exclusives ou non exclusives


hirarchiques ou non
hirarchiques ascendantes ou descendantes
pour donnes numriques et symboliques
dterministes vs. probabilistes

Modles rsultants

Evaluation du rsultat

Qu'est-ce qu'un "bon clustering"?


Critres de qualit des clusters :
grande similarit intra cluster
faible similarit inter-clusters
1
a
0.4
b
0.1
c
0.3
d
0.1
e
0.4
f
0.1
g
0.7
h
0.5

0.1
0.8
0.3
0.1
0.2
0.4
0.2
0.4

0.5
0.1
0.4
0.8
0.4
0.5
0.1
0.1

Types de donnes classifier

numriques continues
catgorielles binaires
catgorielles nominales

qualit du rsultat dpendante de la mesure de


similarit

Variables continues

standardisation
Ecart moyen absolu
avec

catgorielles ordinales
mesure standardise

Variables continues

Variables continues

Distances entre objets i = (xi1, xi2, , xip) et j = (xj1, xj2, , xjp)

q = 2, d distance euclidienne

distance de Minkowski
proprits en gnral vrifies
d(i,j) 0
d(i,i) = 0
q = 1 distance de Manhattan

d(i,j) = d(j,i)
d(i,j) d(i,k) + d(k,j)

Variables binaires

Variables nominales
Object j

Table de contingence

Object i

valeurs discrtes, gnralisent le cas des variables


binaires
mesure de correspondance simple

variable symtrique : coeff de correspondance simple

p=nombre de variables
m=nombre de valeurs communes sur i et j

variable assymtrique :
coefficient de Jaccard

Variables ordinales

valeurs ordonnes

Donnes mixtes

Variables de types diffrents : Mesures pondres

toute valeur d'une variable x est remplace par son rang


dans la liste des valeurs
les valeurs obtenues sont normalises :
ij(x) =0 si valxi ou valxj est manquant, sinon ij(x) =1
x binaire ou nominale:
dij(x) = 0 if valxi = valxj , sinon dij(x) = 1
x continue : distance normalise
distance pour variables continues

x ordinale : calcul du rang et distance pour var.


continue

Clustering en Data mining

Types de mthodes

Doit permettre

par partitionnement

le passage l'chelle

construisent diffrentes partitions, puis les valuent selon


certains critres

de traiter diffrents types d'attributs

hirarchiques

d'tre robuste au bruit et aux dviations

construisent une organisation hirarchique des objets

bases sur la densit

de donner des rsultats interprtables

utilisent des fonctions de densit et de connectivit

bases sur un modle


le meilleur modle de structure est recherch pour chaque
cluster

Classification non supervise

Principes
Mthodes par partitionnement
Mthodes hirarchiques

Mthode des K-moyennes


(en : K-means)

Mthodes par partitionnement

Principe : construire une partition de l'ensemble des donnes


en k parties dont chacune reprsente une classe
Mthode :
pas initial : cration d'une partition initiale
puis
itration d'un processus de replacement qui optimise le
partitionnement en dplaant les objets d'une classe
l'autre

K-moyennes : exemples

slectionner alatoirement K objets pour


tre les centrodes des cluster initiaux
itrer
assigner chaque objet x au cluster dont
le centrode est le plus proche de x
pour chaque cluster C, recalculer son
centroide comme moyenne (arithmtique) des
objets de C
jusqu' ce que les clusters soient stables

10

10

0
0

10

0
0

10

K-moyennes : exemples (2)

K-moyennes : exemple (3)


dist(3,M2)<dist(3,M3)3 passe dans C2
C1={1}, M1=1, C2={2,3}, M2=2.5,C3={6,7,8,13,15,17} et M3=
66/6=11

A={1,2,3,6,7,8,13,15,17}.
K= 3
Centroides initiaux : 1, 2, 3

dist(6,M2)<dist(6,M3)6 passe dans C2


C1={1}, M1=1, C2={2,3,6}, M2=11/3=3.67, C3={7,8,13,15,17},
M3= 12

Clusters initiaux
C1={1}, M1=1,
C2={2}, M2=2
C3={3, 6,7,8,13,15,17}, M3=69/7=9.86

dist(2,M1)<dist(2,M2)2 passe en C1
dist(7,M2)<dist(7,M3) 7 passe en C2
C1={1,2}, M1=1.5, C2={3,6,7}, M2=5.34, C3= {8,13,15,17},
M3=13.25
dist(3,M1)<dist(3,M2)3 passe en 1
dist(8,M2)<dist(8,M3)8 passe en 2
C1={1,2,3}, M1=2, C2={6,7,8}, M2=7, C3={13,15,17}, M3=15

K-moyennes : fonction objectif

Dans l'exemple prcdent :


Fonction minimiser

K-moyennes : avantages/
inconvnients
+
assez rapide : en O(l*k*n) avec l nombre d'itrations
n nombre d'objets classer k nombre de clusters
Trouve des minima locaux

pour donnes numriques


sensible au bruit, adapt des clusters convexes
le nombre K doit tre spcifi

K-moyennes : Variantes

Minima locaux

Resultat trs dpendant du choix des premiers


paramtres
Pb des minima locaux

K-modes
K-mdoides : PAM

initial cluster
centers

selection automatique des K classes initiales


instances

EM (Expectation Maximization) : un objet est affect


une classe selon un poids qui reprsente sa probabilit
d'appartenance la classe

K-modes (Huang 98)

Le mode remplace la moyenne pour les attributs


catgoriels
Nouvelle fonction de similarit entre objets

K-medoides
K-medoides
Moyenne de 1, 3, 5, 7, 9 : 5
Moyenne de 1, 3, 5, 7, 1009 : 205
Mediane de 1, 3, 5, 7, 1009 is 5
Les valeurs extremes naffectent pas la mdiane

Mthode k-prototype pour la cas d'attributs


numriques et catgoriels

Partitioning around Medoids(PAM)

PAM ( Kaufman and Rousseeuw 1987)

Mdoide objet d'un cluster dont le dissimilarit avec les autres


objets du cluster est minimal
-un objet x est plac dans le cluster Ci s'il est plus prt de son
mdoide que de tout autre
-PAM minimise la fonctions objectif somme des dissimilarits de
tous les objets avec le mdoide le plus proche

K medoides, M = (m1, . . . ,mK)

PAM : Exemple
A={1,3,4,5,8,9}
k=2 1 et 8 mdoides initiaux
Clusters initiaux C1={1,3,4} et C2={5,8,9}
E{1,8}=dist(3,1)2+dist(4,1)2+dist(5,8)2+dist(9,8)2=15
Comparons 1 et 3, si 3 remplace 1 : C1={1,3,4,5} et C2={8,9}
E{3,8} =dist(1,3)2+dist(4,3)2+dist(5,3)2+dist(9,8)2=10
le remplacement est fait M={3,8}
Comparons 3 et 4, si 4 remplace 3 : C1={1,3,4,5} et C2={8,9}
E{4,8}=dist(1,4)2+dist(3,4)2+dist(5,4)2+dist(8,9)2= 12
3 nest pas remplac par 4
Comparons 3 et 5, si 5 remplace 1 : C1={1,3,4,5} et C2={8,9}
E{5,8}=dist(1,5)2+dist(3,5)2+dist(4,5)2+dist(8,9)2= 22
3 nest pas remplac par 5
Comparons 3 et 9, si 9 remplace 1 : C1={1,3,4,5,8} et C2={9}
E{9,8}=dist(1,8)2+dist(3,8)2+dist(4,8)2+dist(5,8)2>49
3 nest pas remplac par 9

slectionner K objets alatoirement comme mdoides


initiaux
itrer
affecter chaque objet restant au medoide le plus
proche
Choisir alatoirement un non-medoide Or
Pour chaque medoide Oj, Calculer le cot TC du
remplacement de Oj par Or
Si TC < 0 alors
Remplacer Oj par Or
Calculer les nouveaux clusters
jusqu' ce que les clusters soient stables

PAM : Exemple
Clusters C1={1,3,4,5} et C2={8,9}
E{3,8} =dist(1,3)2+dist(4,3)2+dist(5,3)2+dist(9,8)2=10
Comparons 8 et 1, si 1 remplace 8 : C1={1} et C2={8,9,3,4,5}
E{3,1} =dist(8,3)2+dist(9,3)2+dist(4,3)2+dist(5,3)2>25
8 nest pas remplac par 1
Comparons 8 et 4, si 4 remplace 8 : C1={1,3} et C2={8,9,4,5}
E{3,4}=dist(3,1)2+dist(4,8)2+dist(4,9)2+dist(4,5)2>25
8 nest pas remplac par 4
Comparons 8 et 5, si 5 remplace 8 : C1={1,3,4} et C2={5,8,9}
E{3,5}=dist(3,1)2+dist(3,4)2+dist(5,8)2+dist(5,9)2= 15
8 nest pas remplac par 5
Comparons 8 et 9, si 9 remplace 1 : C1={1,3,4,5} et C2={9,8}
E{3,9}=dist(1,3)2+dist(4,3)2+dist(5,3)2+dist(9,8)2=10
8 nest pas remplac
Clusters rsultats C1={1,3,4,5} et C2={8,9}

PAM Silhouette plot

Silhouette plots

reprsentation graphique
permette de slectionner le nombre de clusters
Silhouette de l'observation i

ai moyenne des distances entre i et les autres points de son


cluster
bi distance moyenne minimum entre i et les autres clusters
les objets large silhouette sont bien classs

Expectation-maximization (EM)

Classification non supervise

Au lieu d'affecter chaque objet un cluster en


maximisant les distances entre clusters, EM calcule
les probabilits d'appartenance aux clusters

Principes

Objectif : estimer moyenne et ecart-type pour chaque


cluster de manire maximiser la probabilit
globale d'appartenance des objets aux clusters
finaux

Mthodes hirarchiques

Mthodes par partitionnement

Dtermine automatiquement le nombre de clusters

Mthodes hirarchiques
par agglomration (ascendante)
pas initial : chaque lment forme une classe
puis, chaque itration, les objets les plus proches
sont groups dans la mme classe
jusqu' ce que toutes les classes soient regroupes
en une seule
par division (descendante)
pas initial : tous les lments sont dans la mme
classe
puis, chaque itration, les classes sont clates
jusqu' ce que chaque lment soit dans une classe

Mthodes hirarchiques
Deux types :
Agglomeratives bottom-up
Divisives top-down
Ne ncessitent pas de spcifier k
Produisent un arbre appel dendrogramme
les clusters sont obtenus en coupent l'arbre un niveau
donn
le dendrogramme montre la formation des clusters et sousclusters

Classification hierarchique

pas 0

a
b

pas 1

pas 2

pas 4

agglomeration

ab
abcde

cde

de

e
pas 4

pas 3

Classification hierarchique

division
pas 3

pas 2

pas 1

pas 0

Mthodes agglomeratives

Algorithme d'agglomration

Algorithme pour N objets classifier

Dmarre avec N clusters


chaque tape, fusionne deux clusters les plus proches
en utilisant une mesure de distance entre clusters
Jusqu' ce qu'il y ait un seul cluster

distances entre clusters


Single linkage
Complete linkage
Average linkage
Centroid linkage
Ward

distance
distance
distance
distance
distance

pour chaque instance x, Cx={x}


tant qu'il y a plus d'un cluster

minimum
maximum
moyenne
entre les centroides
euclidienne pondre entre

etant donns Cx et Cy des clusters


qui minimisent d(Ci,Cj)
Cx=Cx Cy
supprimer Cy

moyennes

Distance between clusters


Single Link: smallest distance between points
Complete Link: largest distance between points
Average Link: average distance between points
Centroid: distance between centroids

Classification hierarchique
conceptuelle COBWEB

Classification hierarchique
conceptuelle COBWEB

adaptee a des attributs categoriels


effectue une classification conceptuelle par arbre de
dcision
identifie des classes
et en donne une description (2 tapes)

dmarre la racine
insre les instances une une
met jour l'arbre chaque tape
chaque tape, 4 actions sont possibles :
fusionner deux noeuds, clater un noeud, crer un
noeud, crer un sous-noeud
optimiser l'indice Category utility

chaque nud
reprsente un concept et contient une description
probabiliste de celui-ci
la description caractrise les objets classs dans ce
nud : probabilit du concept et probabilits
conditionnelles sur les valeurs des attributs
les nuds frres dun niveau forment une partition

Clustering weather data


1
ID

Outlook

Temp.

Humidity

Windy

Sunny

Hot

High

False

Sunny

Hot

High

True

ID

Outlook

Temp.

Humidity

Windy

Sunny

Hot

High

False

Sunny

Hot

High

True

Overcast

Hot

High

False

Rainy

Mild

High

False

Rainy

Cool

Normal

False

Overcast

Hot

High

False

Rainy

Mild

High

False

Rainy

Cool

Normal

True

Rainy

Cool

Normal

False

Overcast

Cool

Normal

True

True

Sunny

Mild

High

False

Sunny

Cool

Normal

False

Rainy

Mild

Normal

False

Sunny

Mild

Normal

True

Overcast

Mild

High

True

Overcast

Hot

Normal

False

Rainy

Mild

High

True

Rainy

Cool

Normal

Overcast

Cool

Normal

True

Sunny

Mild

High

False

Sunny

Cool

Normal

False

Rainy

Mild

Normal

False

Sunny

Mild

Normal

True

Overcast

Mild

High

True

Overcast

Hot

Normal

False

Rainy

Mild

High

True

Autre exemple: IRIS data set


ID

Outlook

Temp.

Humidity

Windy

Sunny

Hot

High

False

Sunny

Hot

High

True

Overcast

Hot

High

False

Rainy

Mild

High

False

a et b sont trs
similaires

avec cutoff

10