• Aucun résultat trouvé

Traitement Numérique des Données

N/A
N/A
Protected

Academic year: 2022

Partager "Traitement Numérique des Données"

Copied!
30
0
0

Texte intégral

(1)

Digital Data Processing – Traitement Numérique des Données 1 © Y. Bennani

Digital Data Processing

Traitement Numérique des Données

Younès BENNANI Full Professor

Master of Science in Informatics

Specialities

Data Mining, Analytics, and Knowledge Discovery (EID

2

) Programming Tools and Safety (PLS)

Digital Data Processing – Traitement Numérique des Données 2 © Y. Bennani

6 •  Classification automatique (Clustering)

•  Classification par partition

•  Classification probabiliste

•  Classification hiérarchique

•  Classification relationnelle

•  Mesures d évaluation

•  Validité

•  Stabilité

(2)

Digital Data Processing – Traitement Numérique des Données 3 © Y. Bennani

Classification Automatique 


Clustering

Objectif :

produire des groupements homogènes à partir d un ensemble d’observations (formes) ou d une matrice de (dis)similarités.

Classification Clustering

Classification Supervisée vs

Classification Non-Supervisée

(3)

Digital Data Processing – Traitement Numérique des Données 5 © Y. Bennani

Classification Automatique 


Clustering

Les difficultés :

- Existence réelle d une structure - Choix de similarité

- Choix du nombre de groupes (Combinatoire)

71 observations

- Validation (absence de labels) - Nature des données

Un calculateur pouvant

traiter un million de partitions/sec mettrait plus de 126 000 années pour étudier toutes les partitions d un ensemble de 25 éléments !

Nombre de Stirling : Nombre de Bell :

Digital Data Processing – Traitement Numérique des Données 6 © Y. Bennani

Classification Automatique 


Complexité des données Selon plusieurs axes

Ø  Dimension (composantes)

Ø   Quantité Ø  Densité

Ø  Structure (arbre, matrice,…)

Ø  Nature

Ø  Vitesse : flux des données Ø 

dimension

n atu re

(4)

Digital Data Processing – Traitement Numérique des Données 7 © Y. Bennani

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 partitions des formes.

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 = { X

1

, X

2

,...,X

N

} de N observations à partitionner, caractérisés par n caractères ou variables (X

i

∈ ℜ

n

).

On suppose que ℜ

n

est muni d une distance appropriée notée d(X

i

, X

j

).

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

(5)

Digital Data Processing – Traitement Numérique des Données 9 © Y. Bennani

Classification Automatique 


Agrégation autour des centres mobiles

Principe : C

10

C

20

P

10

P

20

C

11

C

21

P

11

P

21

C

12

C

22

P

12

P

22

Tirage au hasard des centres et

Constitution des partitions et

Nouveaux centres et

et nouvelles partitions et

Nouveaux centres et

et nouvelles partitions et

C

10

C

20

P

10

P

20

C

11

C

21

P

11

P

21

C

12

C

22

P

12

P

22

Digital Data Processing – Traitement Numérique des Données 10 © Y. Bennani

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.

{ C

10

, C

20

, K , C

i0

, K , C

k0

}

P

1 0

, P

2

0

, K , P

i 0

, K , P

k

{

0

}

C

1 1

, C

2

1

,K , C

i 1

, K , C

k

{

1

}

{ P

11

, P

21

, K , P

i1

,K , P

k1

}

{ C

1m

, C

2m

, K , C

im

, K , C

km

}

{ P

1m−1

, P

2m−1

, K , P

im−1

, K , P

km−1

}

{ P

1m

, P

2m

, K , P

im

, K , P

km

}

Algorithme général

(6)

Digital Data Processing – Traitement Numérique des Données 11 © Y. Bennani

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

Digital Data Processing – Traitement Numérique des Données 12 © Y. Bennani

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

L algorithme K-means

P k , e k 2 ,

e k 2 = ( XC k

XP

k

) t ( X C k ) = || X C k

X ∈P

k

|| 2

P k

C k

P k (1 ≤ kK )

E k 2 = e k 2

k=1 K

= || X C k

XP

k

|| 2

k=1 k

k 2

E

(7)

Digital Data Processing – Traitement Numérique des Données 13 © Y. Bennani

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

{ C

10

, C

20

, K , C

i0

, K , C

k0

}

D

m

= 1 N min

i=1 j N

d(X

i

, C

jm

) j = 1K k

C

1 m

, C

2

m

, K , C

i m

, K , C

k

{

m

}

P

j

m

d(X

i

, C

j

m

) ≤ d( X

i

,C

l

m

) l =1K k

D

m−1

D

m

D

m

Seuil P

1

0

, P

2 0

, K , P

i

0

, K , P

k

{

0

}

Digital Data Processing – Traitement Numérique des Données 14 © Y. Bennani

L algorithme K-means

(8)

Digital Data Processing – Traitement Numérique des Données 15 © Y. Bennani

Classification Automatique 


Méthodes descendantes

Principe : C

1

0

Calculer le centre de gravité de D :

Éclatement (« Splitting ») de : Nouveaux centres

et

et nouvelles partitions

Recalcul des nouveaux centres et

et nouvelles partitions C

10

C

11

C

21

C

10

+ ε

C

10

− ε

C

10

C

10

+ ε

C

10

− ε

C

11

C

21

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.

C

0

C

i

+ ε C

i

− ε

C

i

(9)

Digital Data Processing – Traitement Numérique des Données 17 © Y. Bennani

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.

Digital Data Processing – Traitement Numérique des Données 18 © Y. Bennani

Classification Automatique 


Classification Ascendante Hiérarchique

(10)

Digital Data Processing – Traitement Numérique des Données 19 © Y. Bennani

Classification Automatique 


Classification Ascendante Hiérarchique

Soit un ensemble D = { X

1

, X

2

,...,X

N

} de N observations à partitionner, caractérisés par n caractères ou variables (X

i

∈ ℜ

n

).

Soit H un ensemble de parties de D.

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

2. ∀ XD, { } XH

3. ∀ h

i

H, ∀h

j

H, h

i

h

j

= ∅ ou h

i

h

j

ou h

j

h

i

H est une hiérarchie indicée s il existe une fonction ƒ de H dans ℜ

+

telle que :

4. ∀ XD, ƒ ( { } X ) = 0

5. ∀ h

i

H, ∀h

j

H, h

i

h

j

, h

j

h

i

⇒ ƒ ( ) h

j

< ƒ ( ) h

i

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

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.

(11)

Digital Data Processing – Traitement Numérique des Données 21 © Y. Bennani

Classification Automatique 


Distance entre clusters

Digital Data Processing – Traitement Numérique des Données 22 © Y. Bennani

Classification Automatique 


Classification Ascendante Hiérarchique

(12)

Digital Data Processing – Traitement Numérique des Données 23 © Y. Bennani

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 h

6

={3,5} est associé son niveau, ou indice d agrégation ƒ qui est la distance entre ses 2 sous-groupes, ƒ(h

6

)=1

regrouper 3 et 5, qui sont les points les

plus proches, et former un groupe

h

6

={3,5}

Classification Automatique 


Classification Ascendante Hiérarchique

Comment déterminer la distance de h

6

aux formes restantes ?

2

4

h

6

Plusieurs solutions sont possibles : - Single link

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

- Complete link

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

Single link d 1 2 4 h

6

1 0 √10 √10 √8 2 0 2 √34 4 0 √26 h

6

0

Complete link

d 1 2 4 h

6

1 0 √10 √10 √13

2 0 2 √41

4 0 √29

h

6

0

1

(13)

Digital Data Processing – Traitement Numérique des Données 25 © Y. Bennani

Classification Automatique 


Classification Ascendante Hiérarchique

2 1

4

h

6

Single link d 1 h

6

h

7

1 0 √8 √10 h

6

0 √26 h

7

0

À ce groupe h

7

={2,4} est associé son niveau, ou indice d agrégation ƒ qui est la distance entre ses 2 sous-groupes, ƒ(h

7

)=2

regrouper 2 et 4, qui sont les points les

plus proches, et former un groupe

h

7

={2,4}

Complete link d 1 h

6

h

7

1 0 √13 √10 h

6

0 √41 h

7

0 h

7

Digital Data Processing – Traitement Numérique des Données 26 © Y. Bennani

Classification Automatique 


Classification Ascendante Hiérarchique

1

h

6

Single link d h

7

h

8

h

7

0 √10 h

8

0

À ce groupe h

8

est associé son niveau, ou indice d agrégation ƒ qui est la distance entre ses 2 sous-groupes, ƒ(h

8

)= √8

regrouper 1 et h

6

, et former un groupe

h

8

={1}∪ h

6

h

7

Complete link d h

6

h

8

h

6

0 √41 h

8

0

À ce groupe h

8

est associé son niveau, ou indice d agrégation ƒ qui est la distance entre ses 2 sous-groupes, ƒ(h

8

)= √10

regrouper 1 et h

7

, et former un groupe

h

8

={1}∪ h

7

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

Single link Complete link

h

9

= h

7

∪ h

8

={1,2,3,4,5} h

9

= h

6

∪ h

8

={1,2,3,4,5}

ƒ(h

9

)= √10 ƒ(h

9

)= √41

(14)

Digital Data Processing – Traitement Numérique des Données 27 © Y. Bennani

Classification Automatique 


Classification Ascendante Hiérarchique

2 1

3 5 4 D

ƒ

h

7

h

4

h

2

h

1

h

5

h

3

h

6

h

8

h

9

CAH Single link

2 1

3

4

5

Classification Automatique 


Classification Ascendante Hiérarchique

2 1

3 5 4 D

ƒ

h

7

h

4

h

2

h

1

h

5

h

3

h

6

h

8

h

9

CAH Complete link

2 1

3

4

5

(15)

Digital Data Processing – Traitement Numérique des Données 29 © Y. Bennani

Classification par modèles de mélanges

(Mixture Model Clustering)

p( x /Θ) = α j p( x / θ j )

j=1 m

α

j≥0,

α

j j=1 m

=1

θ

j

= { µ

j

,∑

j

}

Modèle de mélange probabiliste :

proportion de mélange

composante de densité

En général :

Cette approche peut approximer des distributions arbitraires.

Les paramètres du modèle sont estimés en utilisant l approche du maximum de vraisemblance

et l algorithme EM (Expectation-Maximization)

Digital Data Processing – Traitement Numérique des Données 30 © Y. Bennani

Maximum de vraisemblance (Maximum- Likelihood)

p( x /Θ) = α

j

p( x / θ

j

)

j=1 m

θ

j

= { α

j

, µ

j

,∑

j

}

Modèle :

Paramètres : Vraisemblance :

L(Θ / X) = p( x

i

/Θ)

i=1 N

Espace des données

Vraisemblance comme fonction du paramètre

µ

j

(16)

Digital Data Processing – Traitement Numérique des Données 31 © Y. Bennani

Algorithme EM (Expectation-Maximization)

p( x

i

/Θ) Initialisation : aléatoire

E-step (Expectation) :

- Calculer pour les N exemples et m modèles - Utiliser la règle de Bayès pour trouver les probabilités d être dans la gaussienne j sachant x

i

:

α

1

, µ

1

,∑

1

α

2

, µ

2

,∑

2

r

ij

p( j / x

i

) = r

ij

= α

j

p( x

i

/ θ

j

) α

l

p( x

i

/ θ

l

)

l=1 m

α

2

, µ

2

,∑

2

α

1

, µ

1

,∑

1

Algorithme EM (Expectation-Maximization)

M-step (Maximization) :

- Fixer les probabilités et calculer les paramètres du mélange :

µ

j

=

r

ij

x

i

i=1 N

r

ij

i=1 N

Σ

j

=

r

ij

( x

i

− µ

j

)(x

i

− µ

j

)

T

i=1 N

r

ij

i=1 N

α

j

= 1 N r

ij

i=1 N

EM est une procédure itérative à répéter jusqu à convergence.

r

ij

(17)

Digital Data Processing – Traitement Numérique des Données 33 © Y. Bennani

Algorithme EM (Expectation-Maximization) Le clustering à base de EM :

- Suppose un nombre a priori m connu de clusters - Garantit (seulement) un optimum local

- Converge lentement

- Dépendant de l initialisation

Digital Data Processing – Traitement Numérique des Données 34 © Y. Bennani

•  Critère basé sur la stabilité :

•  Choisir le clustering le plus stable en fonction des perturbations des données, des paramètres, de l initialisation

•  Méthodes probabilistes : vraisemblance pénalisée -log(vraisemblance) + d°liberté

•  Akaike Information Criterion (critère prédictif)

K : nb. Paramètres du modèle N : nb. données

•  Bayesian Criterion de Schwartz (critère explicatif)

•  Indices de validité :

•  Variance intra et inter-clusters

•  Indices : Dunn, Davies-Bouldin, Jaccard, Rand, Rogers &

Tanimoto, …

Comment choisir le nombre de clusters ?

AIC = −2log(L( θ

)) + 2k

BIC = −2log(L( θ

)) + log(N)k

(18)

Digital Data Processing – Traitement Numérique des Données 35 © Y. Bennani

Classification Automatique de données qualitatives

Classification Relationnelle 


Méthode Condorcet ou Vote Condorcet

Marquis de Condorcet

Né à Ribemont (Picardie) 1743-1794

La méthode Condorcet ou vote Condorcet = un système électoral, une manière de réfléchir aux systèmes de vote.

où les votants classent les candidats par ordre de préférence.

Le candidat élu par cette méthode est celui, s'il existe, qui comparé tour à tour à tous les autres candidats, s'avèrerait à chaque fois être le candidat préféré.

Non-transitivité de la règle majoritaire (paradoxe de Condorcet)

(19)

Digital Data Processing – Traitement Numérique des Données 37 © Y. Bennani

Classification Relationnelle 


Méthode Condorcet ou Vote Condorcet

Une assemblée de 60 votants ayant le choix entre trois propositions a, b et c.

Les préférences se répartissent ainsi (en notant a > b, le fait que a est préféré à b) :

23 votants préfèrent : a > c > b 19 votants préfèrent : b > c > a 16 votants préfèrent : c > b > a 2 votants préfèrent : c > a > b

Vote pluraliste, a l emporte avec 23 voix, sur b avec 19 voix et sur c avec 18 d où a > b > c.

Comparaisons majoritaires par paires, on obtient : 35 préfèrent b > a contre 25 pour a > b 41 préfèrent c > b contre 19 pour b > c 37 préfèrent c > a contre 23 pour a > c

Ce qui conduit à la préférence majoritaire c > b > a, exactement contraire au choix pluraliste.

Exemple :

Digital Data Processing – Traitement Numérique des Données 38 © Y. Bennani

Classification Relationnelle 


C'est la raison pour laquelle on préfère souvent un scrutin

uninominal majoritaire à deux tours, ou un autre système de

vote pondéré.

(20)

Digital Data Processing – Traitement Numérique des Données 39 © Y. Bennani

Classification Relationnelle 


Analyse relationnelle

Algorithme basé sur les travaux :

J.-F. Marcotorchino, F. Michaud, « Optimisation en analyse ordinale des données », Paris, Masson, 1979

H. Benhadda, J.-F. Marcotorchino, « L analyse relationnelle pour la fouille de grandes bases de données », Revue des Nouvelles Technologies de l'Information (RNTI), Editions Cépaduès, 2007.

Logiciel Intelligent Miner d IBM

Classification démographique / classification relationnelle / méthode de votes / méthode de Condorcet / méthode d agrégation des

similarités

Gratuiciel « POP » M. Petijean (UP7)

http://petitjeanmichel.free.fr Package AMAP du logiciel R,

http://cran.fr.r-project.org/doc/packages/amap.pdf

Digital Data Processing – Traitement Numérique des Données 40 © Y. Bennani

Classification Relationnelle 


Analyse relationnelle (principe)

Représentation des données sous forme de relations d équivalence.

Classification = relation d équivalence , où si et sont dans le même cluster

On peut associer à une matrice :

Les 3 propriétés d une relation d équivalence sont :

Recherche d une classification = recherche d une matrice satisfaisant aux conditions précédentes.

m

ij

=

1 si ij 0 sinon

#

$ %

&

%

ij

i

j

M NxN = ( ) m ij

M NxN = ( ) m ij

Réflexivité m

ii

=1 Symétrie m

ij

= m

ji

Transitivité m

ij

+ m

jk

m

ik

≤ 1

$

% &

' &

(21)

Digital Data Processing – Traitement Numérique des Données 41 © Y. Bennani

Classification Relationnelle 


Analyse relationnelle (AR)

En AR toutes les variables des individus de la population à segmenter doivent être qualitatives (sans quoi il faut les discrétiser)

A chacune des p variables qualitatives correspond une classification naturelle :

Chaque cluster est composé des individus ayant la même modalité pour la variable considérée.

Le but de l AR est de trouver une classification qui fournisse un bon compromis entre les p classifications naturelles initiales.

Pour cela :

= le nombre de fois où les individus et ont été mis dans le même cluster (i.e. le nombre de variables pour lesquelles et ont la même modalité)

m ij

i

j

i

j

Digital Data Processing – Traitement Numérique des Données 42 © Y. Bennani

Classification Relationnelle 


Analyse relationnelle (AR)

On pose :

"

M = ( ) m " ij = 2 ( ) m ij p

Alors :

"

m ij f 0 si i et j sont dans le même cluster

Coïncident pour une majorité de variables

"

m ij p 0 si i et j sont dans des clusters différents

"

m ij = 0 s' il y a au tan t de var iables pour lesquelles i et j

sont réunis que de var iables pour lesquelles ils sont séparés

(22)

Digital Data Processing – Traitement Numérique des Données 43 © Y. Bennani

Principe de la majorité est « insuffisant » :

Placer et dans le même cluster si , et les séparer si

Mais ce critère ne suffit pas, car il y a non-transitivité de la règle majoritaire :

On peut avoir une majorité pour réunir et , et , mais non pour réunir et .

Il faut donc ajouter des contraintes (reflex, sym, trans) pour trouver une classification satisfaisant au mieux la majorité des classifications initiales.

Problème de programmation linéaire => Travaux Marcotorchino et Michaud

Classification Relationnelle 


Analyse relationnelle (AR)

"

m ij f 0

"

m ij p 0

i

j

i

j

j

k

i

k

p

Digital Data Processing – Traitement Numérique des Données 44 © Y. Bennani

Classification Relationnelle 


Mise en œuvre (manière intuitive)

Pour toute paire d individus (A,B), on commence par poser : = nombre de variables ayant la même valeur pour A et B et = nombre de variables ayant des valeurs différentes pour A et B

Le critère de Condorcet de deux individus A et B est défini comme étant :

On définit ensuite le critère de Condorcet d un individu A et d un cluster S comme étant :

m( A, B)

d( A, B)

c( A, B) = m( A, B)d( A, B)

c( A, S) = c( A, B i )

i=1 S

, B i S

(23)

Digital Data Processing – Traitement Numérique des Données 45 © Y. Bennani

Classification Relationnelle 


Mise en œuvre

Construction des clusters :

•  On place chaque individu A dans le cluster S pour lequel c(A,S) est maximum et ≥ 0

ou ( : seuil de similarité) ( , ou une valeur plus grande pour renforcer l homogénéité des clusters).

Une grande valeur de => grande homogénéité des clusters.

•  Si existant, constitue le premier élément d un nouveau cluster.

c( A, B) = m( A, B) − α .d( A, B)

α = 1 2

α

c( A, S) p 0 ∀ S

A

α

Digital Data Processing – Traitement Numérique des Données 46 © Y. Bennani

Classification Relationnelle 


Mise en œuvre

•  On prend donc un premier individu que l on compare à tous les autres individus, pour le regrouper éventuellement avec un second individu .

•  On prend le second individu que l on compare aux autres individus ainsi que, si il existe, au cluster .

et ainsi de suite …

Cette étape constitue la première itération de la classification.

•  On peut réaliser une second itération, en reprenant chaque individu et en le réaffectant éventuellement à un autre cluster, parmi ceux définis lors de la première itération.

A

B A

B

A, B A

{ }

(24)

Digital Data Processing – Traitement Numérique des Données 47 © Y. Bennani

Classification Relationnelle 


Mise en œuvre

•  On réalise ainsi plusieurs itérations, jusqu à ce que : -  le nombre maximum d itérations spécifié soit atteint, ou

-  le critère de Condorcet global ne s améliore plus suffisamment (de plus de 1% par exemple) d une itération à la suivante.

où la somme porte sur tous les individus et les clusters auxquels ils ont été affectés.

En pratique 2 ou 3 itérations suffisent à fournir une bonne classification.Condorcet = c( A, S A )

A,S

A

A

S A

Classification Relationnelle 


Plus formellement

Travaux de Marcotorchino et Michaud : modéliser la règle de la majorité sous contraintes de Condorcet par programmation linéaire :

max X Condorcet(C, X ) =

i=1 N

& ' ( C i i # α C ii + 2 C i # i # ) * + x i i #

# i =1

N

slc

x i i # ∈ { } 0,1 (binarité)

x ii = 1 ∀i = 1,..., N (réflexivité)

x i i # = x i i # ∀i, i # = 1,..., N (symétrie) x i i # + x i # i # # x i i # # ≤ 1 ∀i, i # , i # # = 1,..., N (transitivité) /

0 1 1

2 1 1

Partition recherchée Matrice

Relationnelle

collective

(25)

Digital Data Processing – Traitement Numérique des Données 49 © Y. Bennani

Classification Relationnelle 


Plus formellement

A chaque itération, l algorithme parcourt chaque individu 1- On calcule la contribution de l individu courant avec les clusters constitués :

C(O

i

,S

k

) = C

iS

k

= C

ii "

− α C

ii

+ C

i " i "

2

%

&

' (

) *

"

i ∈Sk

Contribution atomique de la mise en relation entre les individus i et i 2- A partir de ces contributions de l individu courant avec les clusters existants, on retient celle qui est la plus forte ainsi que le n° du

cluster.

3- Si cette contribution est <0 et si le nombre de clusters < nombre max de clusters autorisé,

- on crée un nouveau cluster avec l individu courant.

- sinon, on affecte l individu au cluster avec lequel il partage cette contribution maximale.

Digital Data Processing – Traitement Numérique des Données 50 © Y. Bennani

Classification Relationnelle 


Plus concrètement

objets, variables avec modalités chacune Pour chaque variable , nous considérons la matrice disjonctive

K

ijk

= 1 si i possède la mod alité j de V

k

0 sinon

"

# $

K

k

( N × p

k

)

V

k

V

k

, k = 1, K , M

p

k

Tableau disjonctif complet :

K = ( K 1 K 2 K 3 K K M )

D =

V

1

V

2

V

3

O

1

1 1 1 O

2

1 1 2 O

3

2 1 3 O

4

2 1 3 O

5

2 1 3 Données

K =

V

1

V

2

V

3

O

1

1 0 1 1 0 0 O

2

1 0 1 0 1 0 O

3

0 1 1 0 0 1 O

4

0 1 1 0 0 1 O

5

0 1 1 0 0 1

P r

1

P r

2

P r

3

P r

4

P r

5

Tableau disjonctif complet Profils

N

M

Exemple :

K

1

K

2

K

3

(26)

Digital Data Processing – Traitement Numérique des Données 51 © Y. Bennani

Classification Relationnelle 


Linéarisation

C

iS

k

= C

ii "

− α C

ii

+ C

i " i "

2

%

&

' (

) *

"

i ∈Sk

= r

P

i

, r

P

i "

− α

P r

i

, r P

i

+ r

P

i "

, r

P

i "

2

%

&

' '

( )

* *

"

i ∈Sk

= r

P

i

, r

P

i "

"

i ∈Sk

"

i ∈Sk

α

P r

i

, r P

i

+ r

P

i "

, r

P

i "

2

%

&

' '

( )

* *

= r

P

i

, r P

Sk

− α

S

k

r P

i

, r

P

i

+ r

P

i "

, r

P

i "

"

i ∈Sk

2

%

&

' ' '

(

)

*

*

*

Exemple:

K =

V

1

V

2

V

3

O

1

1 0 1 1 0 0 O

2

1 0 1 0 1 0 O

3

0 1 1 0 0 1 O

4

0 1 1 0 0 1 O

5

0 1 1 0 0 1

P r

1

P r

2

P r

3

P r

4

P r

5

S

1

= { O

1

,O

2

} S

1

= 2 P r

S1

= ( 2 0 2 1 1 0 )

C

31

= r P

3

, r

P

1

= ( 0 1 1 0 0 1 ) , 1 0 1 1 0 0 ( ) = 1

P r

3

, r

P

S1

= ( 0 1 1 0 0 1 ) , 2 0 2 1 1 0 ( ) = 2

C(O

3

,S

1

) = C

3S1

= r P

3

, r

P

S1

− 0.5 2 r P

3

, r

P

3

+ r P

1

, r

P

1

+ r P

2

, r

P

2

( )

2

$

%

&

&

' ( ) )

= 2 − 0.5 2.3+ ( 3 + 3 )

2

$

% & '

( ) = −1

Classification Relationnelle 


Inputs :

kmax = nombre de clusters maximal, α = seuil de similarité itr = nombre d itérations et N = nombre d exemples

Output : au plus kmax clusters

-  Prendre le premier individu comme élément du premier cluster S

1

- k=1 où k est le nombre de clusters

for l=1 to itr do for i=1 to N do for j=1 to k do

Calculer la contribution entre l individu O

i

et le cluster S

j

end for

k* ← l indice du cluster avec lequel O

i

a la plus forte contribution

C(O

i

, S

k*

)← la contribution calculée if C(O

i

, S

k*

) < 0 and k < kmax then

Créer un nouveau cluster dont O

i

est le premier élément k ← k+1

else

Affecter O

i

au cluster S

k*

end if end for end for

Algorithme

(27)

Digital Data Processing – Traitement Numérique des Données 53 © Y. Bennani

Classification Relationnelle 


Avantages et Inconvénients

1.  Détermine automatiquement le nombre optimum de clusters au lieu de le fixer a priori

2.  Traite efficacement un grand volume de données grâce à un temps d exécution croissant quasi linéairement avec le nombre de données 3.  Compare à chaque étape tous les individus 2 à 2, et obtient ainsi une

classification globale, et non locale comme la CAH

1.  Réservée aux variables nominales, les variables continues doivent être discrétisées

2.  La sensibilité au nombre de modalités des variables : les variables avec peu de modalités ont plus de poids que les autres (c est l inverse des méthodes factorielles où le nombre de modalités augmente la contribution à l inertie)

3.  La sensibilité à la présence de variables redondantes, qui vont orienter la classification en faveur de ces variables qui deviendront les plus discriminantes

Avantages :

Inconvénients :

Digital Data Processing – Traitement Numérique des Données 54 © Y. Bennani

Validité et Stabilité de la classification

2 types de critères de qualité :

Externes : mesurer l adéquation entre une partition et les connaissances a priori dont on dispose.

-  Jaccard -  Rand

-  Rogers & Tanimoto

Internes : quantifier l adéquation entre une partition et l idée subjective que l on se fait d une « bonne » partition (compacité + séparabilité)

-  Erreur quadratique moyenne -  Indice de Dunn

-  Indice de Davies-Bouldin

- 

(28)

Digital Data Processing – Traitement Numérique des Données 55 © Y. Bennani

Indices de qualité externes

Le nombre de paires de données correctement classées dans le même cluster

(accord positif)

Le nombre de paires de données correctement classées dans des clusters différents

(accord négatif)

Le nombre de paires de données incorrectement classées dans le même cluster

(désaccord relatif de la 1ère partition avec la 2ème)

Le nombre de paires de données incorrectement classées dans des clusters différents

(désaccord relatif de la 2ème partition avec la 1ère)

Indices de qualité internes

La variance interne du cluster i associé au référents w

i

Le nombre de référents

Référent associé au

neurone i

(29)

Digital Data Processing – Traitement Numérique des Données 57 © Y. Bennani

Stabilité de la classification


S. Ben-David (2005) :

« A notion of stability for statistical clustering with applications to model selection », Tech. Report, University of Waterloo, Canada.

Digital Data Processing – Traitement Numérique des Données 58 © Y. Bennani

Stabilité de la classification
 sous-échantillonnage

A. Ben-Hur, A. Elisseeff, I. Guyon (2002) :

« A stability based method for discovering structure in clustered data », Pacific Symposium on Biocomputing, 7:6-17.

(30)

Digital Data Processing – Traitement Numérique des Données 59 © Y. Bennani

Stabilité de la classification
 sous-échantillonnage

V. Roth, T. Lange, M. Braun, J. Buhmann (2002) :

« A resampling approach to cluster validation », Computational statistics - Compstat 02.

Références

Documents relatifs

Lorsque l’on suppose l’existence de plusieurs segments dans le panel de juges, on est amené à évaluer les configurations des stimuli dans chaque classe ainsi que les

•  Méthodes Stochastiques comparent un échantillon avec un modèle, prenant en compte plus de variabilité. •  La distance est remplacée par des probabilités calculées

Copyright © www.mesmaths.com

Quelles sont les principales causes des consommations énergétiques des centres de données (data centers)?. SNT : traitement

On divise ensuite l'étendue par n classes afin d'obtenir l'amplitude de chaque classe a = (max-Min) / k Si les valeurs extrêmes s'écartent de la série, cette méthode est

En même temps, une commune (dont le code postal est 18250) a publié – en vue d’élections prochaines – une liste des personnes ayant le droit de vote. Le tableau de droite montre

Identifier dans la liste des personnes ayant le droit de vote, une personne avec certitude ayant séjourné dans cet hôpital et quelle en est la raison.. Préciser

Il y a plusieurs types de traitement des données qui sont organisées en tables comme : - L’affichage qui peut correspondre à une mise en forme, une couleur….. - La recherche