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é
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
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
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 ℜ
nest muni d une distance appropriée notée d(X
i, X
j).
On désire constituer au maximum k groupes (clusters).
Digital Data Processing – Traitement Numérique des Données 9 © Y. Bennani
Classification Automatique
Agrégation autour des centres mobiles
Principe : C
10C
20P
10P
20C
11C
21P
11P
21C
12C
22P
12P
22Tirage au hasard des centres et
Constitution des partitions et
Nouveaux centres et
et nouvelles partitions et
Nouveaux centres et
et nouvelles partitions et
C
10C
20P
10P
20C
11C
21P
11P
21C
12C
22P
12P
22Digital 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
20
, K , P
i 0, K , P
k{
0}
C
1 1, C
21
,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
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 = ( X − C k
X ∈ P
k∑ ) t ( X − C k ) = || X − C k
X ∈P
k∑ || 2
€
P k
€
C k
€
P k (1 ≤ k ≤ K )
€
E k 2 = e k 2
k=1 K
∑ = || X − C k
X ∈ P
k∑ || 2
k=1 k
∑
k 2
E
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
2m
, K , C
i m, K , C
k{
m}
P
jm
d(X
i, C
jm
) ≤ d( X
i,C
lm
) l =1K k
D
m−1− D
mD
m≤ Seuil P
10
, P
2 0, K , P
i0
, K , P
k{
0}
Digital Data Processing – Traitement Numérique des Données 14 © Y. Bennani
L algorithme K-means
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
10C
11C
21C
10+ ε
C
10− ε
C
10C
10+ ε
C
10− ε
C
11C
21L algorithme L
indeB
uzoG
ray1) 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
0C
i+ ε C
i− ε
C
iDigital 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
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. D ∈ H
2. ∀ X ∈ D, { } X ∈ H
3. ∀ h
i∈ H, ∀h
j∈ H, h
i∩ h
j= ∅ ou h
i⊂ h
jou h
j⊂ h
iH est une hiérarchie indicée s il existe une fonction ƒ de H dans ℜ
+telle que :
4. ∀ X ∈ D, ƒ ( { } X ) = 0
5. ∀ h
i∈ H, ∀h
j∈ H, h
i≠ h
j, h
j⊂ h
i⇒ ƒ ( ) h
j< ƒ ( ) h
iLa 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.
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
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
6aux formes restantes ?
2
4
h
6Plusieurs 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
61 0 √10 √10 √8 2 0 2 √34 4 0 √26 h
60
Complete link
d 1 2 4 h
61 0 √10 √10 √13
2 0 2 √41
4 0 √29
h
60
1
Digital Data Processing – Traitement Numérique des Données 25 © Y. Bennani
Classification Automatique
Classification Ascendante Hiérarchique
2 1
4
h
6Single link d 1 h
6h
71 0 √8 √10 h
60 √26 h
70
À 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
6h
71 0 √13 √10 h
60 √41 h
70 h
7Digital Data Processing – Traitement Numérique des Données 26 © Y. Bennani
Classification Automatique
Classification Ascendante Hiérarchique
1
h
6Single link d h
7h
8h
70 √10 h
80
À ce groupe h
8est 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
6h
7Complete link d h
6h
8h
60 √41 h
80
À ce groupe h
8est 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
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
7h
4h
2h
1h
5h
3h
6h
8h
9CAH Single link
2 1
3
4
5
Classification Automatique
Classification Ascendante Hiérarchique
2 1
3 5 4 D
ƒ
h
7h
4h
2h
1h
5h
3h
6h
8h
9CAH Complete link
2 1
3
4
5
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 /Θ) = α
jp( 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
€
µ
jDigital 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= α
jp( x
i/ θ
j) α
lp( x
i/ θ
l)
l=1 m
∑
€
α
2, µ
2,∑
2€
α
1, µ
1,∑
1Algorithme EM (Expectation-Maximization)
M-step (Maximization) :
- Fixer les probabilités et calculer les paramètres du mélange :
€
µ
∧j=
r
ijx
ii=1 N
∑
r
iji=1 N
∑
Σ
j∧
=
r
ij( x
i− µ
∧j)(x
i− µ
∧j)
Ti=1 N
∑
r
iji=1 N
∑
α
∧j= 1 N r
iji=1 N
∑
EM est une procédure itérative à répéter jusqu à convergence.
€
r
ijDigital 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
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-1794La 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)
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é.
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 i ℜ j 0 sinon
#
$ %
&
%
€
i ℜ j
€
ℜ
€
i
€
j
€
ℜ
€
M NxN = ( ) m ij
M NxN = ( ) m ij
€
Réflexivité m
ii=1 Symétrie m
ij= m
jiTransitivité m
ij+ m
jk− m
ik≤ 1
$
% &
' &
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
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
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
{ }
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
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
iSk
= 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
k0 sinon
"
# $
€
K
k( N × p
k)
€
V
k€
V
k, k = 1, K , M
€
p
kTableau disjonctif complet :
€
K = ( K 1 K 2 K 3 K K M )
€
D =
V
1V
2V
3O
11 1 1 O
21 1 2 O
32 1 3 O
42 1 3 O
52 1 3 Données
€
K =
V
1V
2V
3O
11 0 1 1 0 0 O
21 0 1 0 1 0 O
30 1 1 0 0 1 O
40 1 1 0 0 1 O
50 1 1 0 0 1
P r
1P r
2P r
3P r
4P r
5Tableau disjonctif complet Profils
€
N
€
M
Exemple :
K
1K
2K
3Digital Data Processing – Traitement Numérique des Données 51 © Y. Bennani
Classification Relationnelle
Linéarisation
€
C
iSk
= 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
kr P
i, r
P
i+ r
P
i ", r
P
i ""
i ∈Sk
∑
2
%
&
' ' '
(
)
*
*
*
€
Exemple:
K =
V
1V
2V
3O
11 0 1 1 0 0 O
21 0 1 0 1 0 O
30 1 1 0 0 1 O
40 1 1 0 0 1 O
50 1 1 0 0 1
P r
1P r
2P r
3P r
4P r
5S
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
iet le cluster S
jend for
k* ← l indice du cluster avec lequel O
ia 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
iest le premier élément k ← k+1
else
Affecter O
iau cluster S
k*end if end for end for
Algorithme
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
- …
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
iLe nombre de référents
Référent associé au
neurone i
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.
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.