• Aucun résultat trouvé

Classification Automatique

N/A
N/A
Protected

Academic year: 2022

Partager "Classification Automatique"

Copied!
15
0
0

Texte intégral

(1)

Université Paris 13/Younès Bennani Reconnaissance des Formes 1

Reconnaissance Statistique des Formes

4

Younès BENNANI

Classification Automatique

Clustering

Objectif :

produire des groupements homogènes à partir d’un ensemble d’observations (formes).

x x x

x

x

x x x

x x

x

x x

x

xx x x

x x

x x

x

x

x x x

x x

x

x x

x

xx x x

x

Classification

« Clustering »

(2)

Université Paris 13/Younès Bennani Reconnaissance des Formes 3

Classification Automatique

Clustering

On définit :

- une mesure de similarité :

! ( x, y ) lim

x"y

! ( x, y ) = 0

!

(

x,µ

)

= x# =

(

x

)

t#"1

(

x

)

!

(

x,y

)

= x"y

- un indice de performance :

D =

i=1 m

! x " p

i 2

x#C

!

i

Prototype Centre de Ci

Classification Automatique

Clustering

Il existe plusieurs familles d ’algorithmes de classification :

- Méthodes d ’agrégation autour de centres mobiles : algorithmes conduisant directement à des partitions.

- Méthodes descendantes (ou encore divisives) :

procèdent par dichotomies successives de l’ensemble des formes, et peuvent fournir une hiérarchie de partitions.

- Méthodes ascendantes (ou encore agglomératives) :

procèdent à la construction des partitions par agglomérations successives des formes 2 à 2, et fournissent une hiérarchie de

(3)

Université Paris 13/Younès Bennani Reconnaissance des Formes 5

Classification Automatique

Agrégation autour des centres mobiles

La technique de partitionnement la mieux adaptée aux vastes recueils de données.

Cette méthode peut être considérée comme un cas particulier de techniques connues sous le nom de nuées dynamiques étudiées dans un cadre formel par Diday (1971).

Soit un ensemble D = { X1, X2,...,XN} de N observations à partitionner, caractérisés par n caractères ou variables (Xi! "n).

On suppose que "n est muni d’une distance appropriée notée d(Xi, Xj).

On désire constituer au maximum k groupes (clusters).

Classification Automatique

Agrégation autour des centres mobiles

Principe :

C10 C20

P10

P20

C11 C21 P11

P21

C12 C22 P12

P22

Tirage au hasard des centres et

Constitution des partitions et

Nouveaux centres et

et nouvelles partitions et

Nouveaux centres et

et nouvelles partitions et

C10 C20

P10 P20

C11 C21 P11 P21

C12 C22 P12 P22

(4)

Université Paris 13/Younès Bennani Reconnaissance des Formes 7

Classification Automatique

Agrégation autour des centres mobiles

Étape 0 : On détermine k centres provisoires (par exemple, par tirage pseudo-aléatoire sans remise). les k centres :

induisent une première partition Po de l’ensemble des formes en k clusters :

Ainsi la forme Xi! partition s’il est plus proche de que tous les autres centres.

Étape 1 : On détermine k nouveaux centres de partitions :

ces nouveaux centres induisent une nouvelle partition P1 construite selon la même règle que pour Po.

la partition P1 est formée des clusters :

Étape m : On détermine k nouveaux centres de partitions :

en prenant les centres de gravité des partitions qui ont été obtenues lors de l’étape précédente:

ces nouveaux centres induisent une nouvelle partition Pm de l’ensemble D.

{

C10,C20,K,Ci0,K,Ck0

}

P1 0,P2

0,K,Pi 0,K,Pk

{

0

}

C1 1,C2

1,K,Ci 1,K,Ck

{

1

}

{

P11, P21,K, Pi1,K, Pk1

}

C1 m,C2

m,K,Ci m,K,Ck

{

m

}

{

P1m!1,P2m!1,K,Pim!1,K,Pkm!1

}

{

P1m,P2m,K,Pim,K,Pkm

}

Algorithme général

Agrégation autour des centres mobiles

Techniques connexes

Il existe de nombreux algorithmes dont le principe général est voisin de l’algorithme d’agrégation autour des centres mobiles :

Nuées dynamiques (Diday, 1972)

Les clusters ne sont pas caractérisés par un centre de gravité, mais par un certain nombre de formes à classer, dénommés « étalons », qui constituent alors un « noyau ».

K-moyennes (k-means) (MacQueen, 1967)

Commence par un tirage pseudo-aléatoire de centres.

Les clusters sont caractérisés par un centre de gravité.

(5)

Université Paris 13/Younès Bennani Reconnaissance des Formes 9

L’algorithme K-means

!

Squared error for cluster is the sum of the squared Euclidean distance between each pattern in and its cluster centre .

Then the sum of squared error for all cluster is defined by

!

Finding a partition containing K clusters which minimizes for fixed K.

!

P

k

, e

k2

,

!

e

k2

= ( X " C

k

X#Pk

$ )

t

( X " C

k

) = || X " C

k

X#Pk

$ ||

2

!

P

k

!

C

k

!

P

k

(1 " k " K )

!

E

k2

= e

k2

k=1 K

" = || X # C

k

X$Pk

" ||

2

k=1 k

"

k2 E

L’algorithme K-means

1) Initialisation :

On pose m=0, Fixer le seuil d’arrêt.

On détermine k centres provisoires (par exemple, par tirage pseudo-aléatoire sans remise). les k centres :

induisent une première partition Po de l’ensemble des formes en k clusters :

2) Construction de la partition Pm : la forme Xi! ssi On détermine la distortion :

3) Test d’arrêt :

Si

alors on s’arrête Sinon aller en 4) 4) Recalcul des centroïdes :

On détermine k nouveaux centres :

en prenant les centres de gravité des partitions qui ont été obtenues lors de l’étape précédente.

On fait m=m+1, aller en 2).

{

C10,C20,K,Ci0,K,Ck0

}

Dm= 1

N min

i=1 j N

!

d(Xi,Cjm) j=1Kk

C1 m,C2

m,K,Ci m,K,Ck

{

m

}

Pjm d(Xi,Cjm)!d(Xi,Clm) l=1Kk

Dm!1!Dm

Dm "Seuil

{

P10,P20,K,Pi0,K,Pk0

}

(6)

Université Paris 13/Younès Bennani Reconnaissance des Formes 11

L’algorithme K-means

"

Exemple:

!

C2t

!

C1 t

Classification Automatique

Méthodes descendantes

Principe :

C10 Calculer le centre de gravité de D :

Éclatement (« Splitting ») de : Nouveaux centres

et

et nouvelles partitions

Recalcul des nouveaux centres et

et nouvelles partitions C10

C11 C21 C10+!

C10!"

C10 C10+!

C10!"

C11

C21

(7)

Université Paris 13/Younès Bennani Reconnaissance des Formes 13

L’algorithme L

inde

B

uzo

G

ray

1) Initialisation :

Fixer k (puissance de 2, k=2r), Fixer . On détermine le centre de gravité de D : Faire m=0

2) Eclatement :

Tout les centres (en nombre 2m) sont éclatés en et Faire m=m+1

3) Partitionnement :

Chercher les partitions autour de chaque centre 4) Recalcul des centroïdes :

On détermine les nouveaux centres.

5) Test d’arrêt

Si m < r aller en 2) Sinon arrêt.

C0

Ci +!

Ci !"

Ci

Classification Automatique

Classification Ascendante Hiérarchique

Principe :

créer, à chaque étape, une partition obtenue en agrégeant 2 à 2 les formes les plus proches.

l’algorithme ne fournit pas une partition en k clusters mais une hiérarchie de partitions sous la forme d’arbres appelés également dendrogrammes.

L’intérêt de ces arbres est qu ’ils peuvent donner une idée du nombre de clusters existant effectivement dans la population D des formes.

(8)

Université Paris 13/Younès Bennani Reconnaissance des Formes 15

Classification Automatique

Classification Ascendante Hiérarchique

Classification Automatique

Classification Ascendante Hiérarchique

Soit un ensemble D = { X1, X2,...,XN} de N observations à partitionner, caractérisés par n caractères ou variables (Xi! "n).

Soit H un ensemble de parties de D.

H est une hiérarchie si et seulement si : 1. D!H

2. "X !D, { }X !H

3. "hi!H,"hj !H, hi #hj =$ou hi%hjou hj %hi

H est une hiérarchie indicée s’il existe une fonction ƒ de H dans "+ telle que :

4. !X"D,ƒ

(

{ }X

)

=0

5. !hi"H,!hj "H, hi#hj,hj $hi

( )

hj < ƒ

( )

hi La fonction ƒ est appelée indice d’agrégation

(distance entre deux éléments de H).

Les 2 nœuds sont sur 2 branches différentes

Sur une même branche

(9)

Université Paris 13/Younès Bennani Reconnaissance des Formes 17

Classification Automatique

Classification Ascendante Hiérarchique

Représentation arborescente d’une hiérarchie :

Une hiérarchie indicée H est isomorphe à un arbre dont les nœuds sont associés aux éléments de H et la relation « fils de », à la relation de borne supérieure pour l ’inclusion.

Les feuilles représentent les formes et la racine, l’ensemble D.

Classification Automatique

Classification Ascendante Hiérarchique

Exemple :

Soit un ensemble de formes représentées par des points (numérotés de 1 à 5) dans un repère euclidien, et d la distance euclidienne.

2 1

3

4

5

d 1 2 3 4 5 1 0 !10 !8 !10 !13 2 0 !34 2 !41 3 0 !26 1 4 0 !29 5 0

À ce groupe h6={3,5} est associé son niveau, ou indice d ’agrégation ƒ qui est la distance entre ses 2 sous-groupes, ƒ(h6)=1

regrouper 3 et 5, qui sont les points les

plus proches, et former un groupe

h6={3,5}

(10)

Université Paris 13/Younès Bennani Reconnaissance des Formes 19

Classification Automatique

Classification Ascendante Hiérarchique

Comment déterminer la distance de h6 aux formes restantes ?

2

4

h6

Plusieurs solutions sont possibles : - le saut minimal

consiste à affecter à la distance entre 2 groupes la distance entre leurs formes les plus proches.

- le diamètre maximal

retient la distance entre leurs formes les plus éloignées.

Saut minimal d 1 2 4 h6 1 0 !10 !10 !8 2 0 2 !34 4 0 !26 h6 0

Diamètre maximal d 1 2 4 h6 1 0 !10 !10 !13 2 0 2 !41 4 0 !29 h6 0 1

Classification Automatique

Classification Ascendante Hiérarchique

2 1

4

h6

Saut minimal d 1 h6 h7 1 0 !8 !10 h6 0 !26 h7 0

À ce groupe h7={2,4} est associé son niveau, ou indice d ’agrégation ƒ qui est la distance entre ses 2 sous-groupes, ƒ(h7)=2

regrouper 2 et 4, qui sont les points les

plus proches, et former un groupe

h7={2,4}

Diamètre maximal d 1 h6 h7 1 0 !13 !10 h6 0 !41 h7 0 h7

(11)

Université Paris 13/Younès Bennani Reconnaissance des Formes 21

Classification Automatique

Classification Ascendante Hiérarchique

1

h6

Saut minimal d h7 h8 h7 0 !10 h8 0

À ce groupe h8 est associé son niveau, ou indice d ’agrégation ƒ qui est la distance entre ses 2 sous-groupes, ƒ(h8)= !8

regrouper 1 et h6, et former un groupe

h8={1}# h6 h7

Diamètre maximal d h6 h8 h6 0 !41 h8 0

À ce groupe h8 est associé son niveau, ou indice d ’agrégation ƒ qui est la distance entre ses 2 sous-groupes, ƒ(h8)= !10

regrouper 1 et h7, et former un groupe

h8={1}# h7

À la dernière étape toutes les formes sont regroupées.

Saut minimal Diamètre maximal

h9= h7 # h8 ={1,2,3,4,5} h9= h6 # h8 ={1,2,3,4,5}

ƒ(h9)= !10 ƒ(h9)= !41

Classification Automatique

Classification Ascendante Hiérarchique

2 1

3

4

5

2 1

3 5 4 D

ƒ

h7

h4 h2

h1 h5

h3 h6

h8

h9

CAH Saut minimal

(12)

Université Paris 13/Younès Bennani Reconnaissance des Formes 23

Classification Automatique

Classification Ascendante Hiérarchique

2 1

3

4

5

2 1

3 5 4 D

ƒ

h7

h4 h2

h1 h5

h3 h6

h8 h9

CAH Diamètre maximal

Exercice : 4 clusters

x1

x2

5

1

!1

!1

1 3 5

3

(13)

Université Paris 13/Younès Bennani Reconnaissance des Formes 25

Utilisation du clustering : Quantification Vectorielle

opération de discrétisation (codage) d'une ou plusieurs variables.

-So So

y1 y2 y3 S4 S5 y4

y5 y6 Q(x)

S1 S2 S3 x

Dictionnaire Référence séléctionnée

Forme à coder 1

2 3 4 5 6 7

k=6

Quantification Vectorielle

Soit Y = { Y1, Y2,..., YL} un dictionnaire (codebook) de L vecteurs-codes Yi(codeword).

Yi! "n et n la dimension de l'espace.

On peut écrire la fonction de quantification sous la forme : Yi = Q(X) ; où i ! {1,2, ...,L} et X! "n .

d(X, Yi) la distorsion due à l'erreur de quantification.

On peut ainsi définir une distorsion totale moyenne:

D

moy

= 1

N min

i=1 j N

! d ( X

i

, Y

j

) j = 1 K L

(14)

Université Paris 13/Younès Bennani Reconnaissance des Formes 27

QV et reconnaissance

Considérons un vocabulaire de trois mots (fictifs) A, B et C et choisissons la distance de Hamming.

Soient YA, YB, YC les trois dictionnaires correspondant aux trois classes.

YA={A1,A2,A3}=

1 3 5

!

"

# #

$

%

&

& , 2

9 11

!

"

# #

$

%

&

& , 8 7 1

!

"

# #

$

%

&

&

' ( )

* )

+ , ) - )

YB ={B1,B2}=

2 9 7

!

"

# #

$

%

&

& , 3 2 1

!

"

# #

$

%

&

&

' ( )

* )

+ , ) - )

YC={C1,C2,C3}=

1 1 1

!

"

# #

$

%

&

& , 3 4 2

!

"

# #

$

%

&

& , 1 9 2

!

"

# #

$

%

&

&

' ( )

* )

+ , ) - )

Soit un mot inconnu X.

X={X1,X2,X3}=

2 7 1

!

"

# #

$

%

&

& , 1 4 6

!

"

# #

$

%

&

& , 2 7 8

!

"

# #

$

%

&

&

' ( )

* )

+ , )

- )

Codage(X/YA), Codage(X/YB), Codage(X/YC)

X. A B C

?

QV et reconnaissance

2 9 7

!

"

# #

$

%

&

& , 3 2 1

!

"

# #

$

%

&

&

' ( )

* )

+ , ) - ) X=

2 7 1

!

"

# #

$

%

&

& , 1 4 6

!

"

# #

$

%

&

& , 2 7 8

!

"

# #

$

%

&

&

' ( )

* )

+ , ) - )

X . A B C

?

1 1 1

!

"

# #

$

%

&

& , 3 4 2

!

"

# #

$

%

&

& , 1 9 2

!

"

# #

$

%

&

&

' ( )

* )

+ , ) - ) 1

3 5

!

"

# #

$

%

&

& , 2 9 11

!

"

# #

$

%

&

& , 8 7 1

!

"

# #

$

%

&

&

' ( )

* )

+ , ) - )

A

B

C

(15)

Université Paris 13/Younès Bennani Reconnaissance des Formes 29

QV et reconnaissance

A1 A2 A3 B1 B2 C1 C2 C3

X1 9 12 6 6 4

X2 2 11 15 7 6

X3 8 5 13 3 9

Codage(X/YA)=A3 A1 A2 D(X/A)=6+2+5=13

Codage(X/YB)= B2B1 B1 D(X/B)=6+7+3=16

Codage(X/YC)=C3C2 C3 D(X/C)=4+6+9=19 X={X1,X2,X3}=

2 7 1

!

"

# #

$

%

&

& , 1 4 6

!

"

# #

$

%

&

& , 2 7 8

!

"

# #

$

%

&

&

' ( )

* )

+ , ) - )

! X " A

Références

Documents relatifs

Amortized Time) temps constant amortis si en moyenne chaque appel prend un temps constant. Ici, le nombre d’appel à la méthode next de l’itérateur est count(C

Pour obtenir un nombre entier pseudo-aléatoire entre 1 et n : Dans le menu MATH choisir 7:Probabilité puis 4: nbrAléat(. Finir d’entrer nbrAléat(valeur de n)

La formule vaut en par- ticulier pour deux classes {i} et {i 1 } réduites chacune à un point affecté d'une masse, et désignées plus simplement par i et i'.. (1)

Pour mesurer la séparation des classes entre elles, on remplace chaque classe par son centre de gravité affecté de la masse totale de la classe : on obtient ainsi le nuage des

dans lequel (abstraction faite de l'indice qui aura bientôt son explication) les deux premières différen- tielles ne sont plus exactes et accusent, dans la surface 2, une

1) Classification des régions avalancheuses en zones homogènes au sens de la simultanéité du déclenchement du phénomène dangereux. Une méthode de classification

De quoi est constitué internet.. Matériel

On suppose dans cette partie que u est nilpotent d'indice 2 et que n