méthodes en classification automatiqueantoine/courses/master-isi/isi-10/... · 2013-02-20 ·...
TRANSCRIPT
Méthodes en classification automatique, ISI-10
Méthodes en classification automatique
Yves LechevallierINRIA-Rocquencourt
78153 Le Chesnay CedexE_mail : [email protected]
Méthodes de partitionnement
Méthodes en classification automatique, ISI-10
Méthodes de partitionnement
La structure classificatoire recherchée est lapartition. En définissant une fonction d’homogénéité ou un critère de qualité sur une partition le problème de classification devient un problème parfaitement défini en optimisation discrète.
Trouver, parmi l’ensemble de toutes les partitions possibles, une partition qui optimise un critère défini a priori .
E est fini donc il y a un ensemble fini de partitions possibles alors le problème est toujours soluble par l’énumération complète. Cependant, en pratique, cette approche est irréalisable car nous avons approximativement avec un ensemble de N objets en K classes solutions possibles.K KN !
Méthodes en classification automatique, ISI-10
Problème d’optimisation
Soit un critère U, défini de , où est l’ensemble de toutes les partitions en K classes non vides de E alors le problème d’optimisation se pose sous la forme:
+ℜ→℘ )(EK
℘K E( )
∑=℘∈
==K
kk
EQQwQUMinPU
K 1)(
)()()(
où w(Qk) mesure l’homogénéité de la classe Qk.
Méthodes en classification automatique, ISI-10
Optimisation itérative
On part d’une solution réalisable )()0( EQ K℘∈
A l’étape t+1, on a une solution réalisable
on cherche une solution réalisable
vérifiant
L’algorithme s’arrête dès que
)(tQ
)( )()1( tt QgQ =+
)()( )()1( tt QUQU ≤+
{ })()0()1( ,, tt QQQ L∈+
Choix
Choix
Méthodes en classification automatique, ISI-10
Algorithme de voisinage
Une des stratégies la plus utilisée pour construire la fonction g est :
•d’associer à toute solution réalisable Q un ensemble fini de solutions réalisables V(Q),appelévoisinagede Q,
•puis de sélectionner la solution optimale pour ce critère U dans ce voisinage, ce qui est couramment appelésolution localement optimale. Par exempleon peut prendre comme voisinage de Q toutes les partitions obtenues à partir de la partition Q en changeant un seul individude classe
Deux exemples les plus connus de ce type d’algorithme sont l’algorithme de transfertet l’algorithme des k-means
Méthodes en classification automatique, ISI-10
Algorithme de transfert
Le critère U associé à la partition Q est la somme des inerties de chacune des classes c’est-à-dire l’inertie intra-classes:
∑ ∑∑∑ ∑ ∑= = ∈= ∈ ∈
===K
j
K
j Qejj
K
j Qe Qej jji j
dQIdn
QU1 1
2
1
2 ),(2)(2),(1
)( wzzzi
l
l
d est la distance euclidienne, nj représente le nombre d'éléments et wj est le centre de gravité de la classe Qj.
{ } ),(1
)()( 2l
l
l
llwzii d
n
nQIeQI
++=∪
Si l’individu ei est affecté dans une classe Ql, différente de sa classe d’affectation actuelle on a:
Méthodes en classification automatique, ISI-10
Algorithme
(a) Initialisation
On se donne au départ une partitionQ. Le nombre d'éléments nj et les centre de gravitéwj sont calculées pour chacune de ses classes.(b) Etape itérative test←0
Pour touti de1 à N fairela classe dei est notéesdéterminerl tel que
−
+=
≠=
),(1
,),(1
minminarg 22
,,1si
s
sji
j
j
sjKj
dn
nd
n
nl wzwz
L
faire alors si s≠ltest←1
1.
++←
l
l
l n
n il zww 1
.−−←
s
isss n
n zww
{ } { }issi eQQeQQ −←∪← et ll
1et 1 −←+← ss nnnnll
(c) Si test # 0 alors aller en(b)
Méthodes en classification automatique, ISI-10
Algorithme des k-means
Avec un algorithme de voisinage, il n’est pas nécessaire, pour obtenir la décroissance du critère, de prendre systématiquement la meilleure solution, il suffit de trouver dans ce voisinage une solution meilleure que la solution en cours. Pour l'algorithme des k-meansl’étape (b) devient :
),(minarg que tel determiner 2
,,1ji
Kjd wz
L
ll=
=
Remarquons qu’il est impossible de démontrer que l'une des stratégies donne systématiquement une meilleure solution.
La décroissance du critère U de l’inertie intra-classe est assurée grâce au théorème de Huygens
Méthodes en classification automatique, ISI-10
Affectation d’un nouvel individu
Une fonction d’affectationφ de D dans C={1,..,K}définit une partition de l’espace de représentation avec { }KFFF ,,1 L=Φ
{ }jDF j =Φ∈= )(/ zz
{ }),(),( si )(,1
kKk
j dMindjD wzwzzz=
==Φ∈∀
A la convergence de ces algorithmes, la fonction φ est construite de la manière suivante :
Méthodes en classification automatique, ISI-10
Exemple
Trajectoires des 3 centres d’un nuage de points bidimensionnel
Les hyperplans séparateurs entre les classes
Méthodes en classification automatique, ISI-10
Choix d’un critère ou d’un modèle
Classification « naturelle »
Classification avec les centres mobiles. Cette classification ne correspond pas à la structure cachée
Le critère optimisé est la somme des carrés de écarts entre les valeurs des points et la moyenne de la classe
Méthodes en classification automatique, ISI-10
Algorithmes possédant deux étapes d’optimisation
•La première étape est l’étape de représentation, elle consiste àdéfinir un représentantou prototype pour chacune des classes.
•La seconde étape est l’étape d’affectation, elle va modifier la classe d’affectation de chacun des individus de .
La mise à jour sera réalisée après la présentation de tous les individus de E.
L’ordre de présentation des individus n’a plus aucune influence sur les résultats.
Remarques:
Méthodes en classification automatique, ISI-10
Méthode des Nuées Dynamiques
L’idée est d’associé à chaque classe un représentant, par exemple, centre de gravité, une droite, une loi de probabilité . Dans ce cas le critère U mesure l’adéquation entre les classeset leurs noyauxou représentants
A chaque classe de E on associe un noyauou représentantqui est un élément L d’un ensemble Λ, espace de représentation des classesde E. A chaque vecteur z de D la fonction d’affectation φ de Φ lui associe le représentant de sa classe d’affectation.
Soit d une fonction positive qui mesure la proximité d’un vecteur z au représentant de la classe d’affectation, donnée par φ, de ce vecteur.
Lφ ( )z
Méthodes en classification automatique, ISI-10
Critère optimisé
Le critère U mesure l’adéquation entre une partition de E et un élément de de l’espace des noyaux
),(),(),(),( )(1
2
1
2
1i
j
LdLdLPDLUN
ii
K
j Appzj
K
jjj zzz φφ ∑∑ ∑∑
== ∈=
===
{ } { }P e E z j App z App z jj j= ∈ = = ∈ =/ ( ) / ( )φ φ et Avec
Faire décroître ce critère pas à pas exprime une meilleure adéquation entre les classes et les noyaux associés. La méthode des Nuées Dynamiquesréalise cette optimisation et résout d’une manière locale le problème suivant:
Trouver un couple qui minimise le critère U.
Méthodes en classification automatique, ISI-10
Algorithme des Nuées dynamique (1)
(a) initialisation
Il existe deux possibilités d’initialisation de l’algorithme.
Soit on se donne au départ une fonction d’affectation φ qui génère une partitionQ surE. Les noyauxLj, pour chaque classe j ,sont calculés.
Soit on se donne K noyaux deΛ, espace de représentation des classes.
Méthodes en classification automatique, ISI-10
Algorithme des Nuées dynamique (2)
(b) Étape d’affectation
test←0
Pour touti de 1 àN faire
la classe de zi, est notées= φ(zi)
déterminerl tel que l d Lj K
i j==
arg min ( , ), ,1L
z
{ } { }Q Q e Q Q ei s s il l← ∪ ← − et
faire alors si s≠ltest←1
Méthodes en classification automatique, ISI-10
Algorithme des Nuées dynamique (3)
(c) Étape de représentation
Pour tout j de 1 à K faire
calculer le nouveau noyauLj de la classeQj en sélectionnant un noyau de Λ qui vérifie.
(d) si test # 0 aller en(b)
),(min),( LQDLQD jL
jj Λ∈=
Méthodes en classification automatique, ISI-10
Algorithme des centres mobiles
(a) initialisation
On se donne au départ une partition Q ou un sous-ensemble de Kéléments de E.
(b) Étape d’affectationtest←0 Pour tout i de1 à N faire
déterminerl tel que l dj K
i j==
arg min ( , ), ,1
2
L
z w
faire alors si s≠l test←1 { } { }Q Q e Q Q ei s s il l← ∪ ← − et
(c) Étape de représentationPour tout j de 1 à K faire
calculer le centre de gravité et l’effectif de la nouvelle classe Qj
(d) si test # 0 aller en(b)
Méthodes en classification automatique, ISI-10
AlgorithmeX2
X1
Méthodes en classification automatique, ISI-10
InitialisationX2
X1
Méthodes en classification automatique, ISI-10
Affectation de objetX2
X1
Méthodes en classification automatique, ISI-10
Étape d’affectationX2
X1
Méthodes en classification automatique, ISI-10
Étape de représentation (1/2)X2
X1
Méthodes en classification automatique, ISI-10
Étape de représentation (2/2)X2
X1
Méthodes en classification automatique, ISI-10
Étape d’affectationX2
X1
Méthodes en classification automatique, ISI-10
Déplacement des centresX2
X1
Méthodes en classification automatique, ISI-10
Étape de représentationX2
X1
Méthodes en classification automatique, ISI-10
Étape d’affectationX2
X1
Méthodes en classification automatique, ISI-10
Déplacement des centresX2
X1
Méthodes en classification automatique, ISI-10
Étape de représentationX2
X1
Méthodes en classification automatique, ISI-10
Affectation d’un nouvel individu
Une fonction d’affectationφ de D dans C={1,..,K}définit une partition de l’espace de représentation avec { }KFFF ,,1 L=Φ
{ }jDF j =Φ∈= )(/ zz
{ }),(),( si )(,1
kKk
j dMindjD wzwzzz=
==Φ∈∀
A la convergence de ces algorithmes, la fonction φ est construite de la manière suivante :
Méthodes en classification automatique, ISI-10
Perte d’information
Le critère U représente la perte d’information en remplaçant le tableau des données Z par le tableau des centres de gravité.
[ ]Z z z z= =
1
11
1 11
1
, , , ,L Li N
j p
i ij
ip
N Nj
Np
z z z
z z z
z z z
[ ]G
g g g
g g g
g g gK
j p
k kj
kp
K Kj
Kp
= =
g g1
11
1 11
1
, ,K
Cet algorithme est identique à l’algorithme LVQ (Learning Vector Quantisation) de Kohonen. Dans ce cadre la fonction φ est appelée « quantificateur » et dictionnaire ou « codebook ».
Réduction des lignes d’un tableau
Méthodes en classification automatique, ISI-10
Exemple
Méthodes en classification automatique, ISI-10
Algorithme de gradient stochastique
On suppose que nous avons un échantillon de taille infinie.
A la réalisation zt nous ne disposons que de l'information connue sur l’échantillon de taille t .
Au lieu de U(φ) calculé sur l’échantillon de taille infinie nous avons u(φ,t).
Dans ce cas on doit résoudre le problème suivant:
[ ]min ( ) min E ( , )φ φ
φ φ∈ ∈
=Φ Φ
U u t
Méthodes en classification automatique, ISI-10
Approche séquentielle
On choisit un φ0 dans l'espace Φ, ensemble des solutions.
à l'étape t on effectue un tirage aléatoire suivant la loi P. On obtient une réalisation zt
on procède à la mise à jour par la formule suivante :
∂φφ∂α−φ=φ +
),()1(
ttttt
u z
la suite de termes αt positifs doit vérifier :
lim , ,t
t tt
tt→+∞ =
+∞
=
+∞= = +∞ < +∞∑ ∑α α α0
1
2
1
Méthodes en classification automatique, ISI-10
Algorithme k-means
Initialisation Prendre K points deℜp ),,( 0100
Kφφ=φ K
Une étape t de calculOn associe à la réalisation zt la classe k dont le représentant le plus proche 2
,,1minarg t
lt
Klk z−φ=
= K
On modifie le représentant de la classe k par φ φtk k t
kt
k
n
n+ = ++1 1
z
avec nk est le nombre de réalisations déjà mises dans la classe k.
φ φ εt t+ − ≤1condition d’arrêt il faut
Avec la mise à jour de l’algorithme de gradient stochastique
φ φ α φ( ) ( )t t t t t+ = − −1 2 z
αtkn
=+
12 1( )
Méthodes en classification automatique, ISI-10
Un réseau de neurone
Z1
Zp
Z2 Classe 2
Classe 1
Classe k
φ
zzzz .2),(2222 φ′−+φ=−φ=φd
Vecteur
d’entrée
normalisé
Classes
d’affectation
Neurone représenté par le vecteur φ
INPUT OUTPUT
2
∑ φ−z
z
Objectif :
Optimiser le critère
Méthodes en classification automatique, ISI-10
Cartes topologiques de Kohonen
Initialisation Prendre K points deℜp ),,( 0100
Kφφ=φ K
Une étape t de calculOn associe à la réalisation zt la classe k dont le neurone k le plus proche 2
,,1minarg t
lt
Klk z−φ=
= K
On modifie le neurone gagnant k appartenant au voisinage Vk selon la mise àjour de l’algorithme de gradient stochastique
Vk
Zk
Déterminer la taille du voisinage de modification Vk(t)et le pas αt d’apprentissage
Méthodes en classification automatique, ISI-10
Choix de l'équation de mise àjour des poids
A la présentation d'une réalisation il faut modifier les poids des connexions des neurones activés par :
( ) ( ) ( ) ( )[ ]φ φ α φij ij t tj
ijt t K i c z t+ = + −1 ,
1. φij(t) est le poids de la variable j du neurone i à la réalisation t.
2. est jèmecomposante du vecteur associé la réalisation t.
3. αt est le pas d'apprentissage àt.
4. K(i,c) fonction de voisinage entre le neurone i et le neurone gagnant c.
ztj
Méthodes en classification automatique, ISI-10
Fonction de voisinage
( )K i c e ad i c, ( , )= − 2
0
0.2
0.4
0.6
0.8
1
0 1 2 3 4 5
12
10
Courbe de cette fonction de voisinage
a=
d2(i,c)
Méthodes en classification automatique, ISI-10
Critère optimisé
Le critère de Kohonen, optimisé par l'algorithme de gradient stochastique, correspond à la somme des différences, pondérées par la fonction d'interaction, entre les réalisations et les neurones
( )( )∑ ∑= =
φ−φφ=T
t Kl
ltt
lttKE,TW
1 ,,1
2* ,)(K
z
( ) gagnant neurone le représenteou T)I(E, *t
T
1t
2*t φφ−=∑
=tz
Le critère de l'inertie intraclasse, noté I(E,T), correspond à la somme des différences entre les exemples et le neurone le plus proche.
Méthodes en classification automatique, ISI-10
Problème de reconnaissance des formes
Cet exemple est issus d’un problème de reconnaissance des formes du livre de L.Breiman, J.H. Friedman, R.A. Oslhen and C. J. Stone"Classification and Regression Trees"; Belmont Eds, 1984.
Ces données sont des données artificielles
Méthodes en classification automatique, ISI-10
0
1
2
3
4
5
6
0 5 10 15 20 25
Waveforms
h1(i)
Voici les trois formes de base h1, h2 et h3.
h2(i)
h3(i)
Les trois formes de base
Méthodes en classification automatique, ISI-10
Ensemble d’apprentissage
3 classes de formes: wave_1, wave_2, wave_3
Pour chaque forme : les 21 donnéesxi i=1 à 21 sont calculées àpartir du modèleet d’un bruit
Formes de la classewave_1: xi=u. h1(i)+ (1-u).h3(i) +εi for i=1,...,21.
Formes de la classewave_2: xi=u. h1(i)+ (1-u).h2(i) +εi for i=1,...,21.
Formes de la classewave_3: xi=u. h3(i)+ (1-u).h2(i) +εi for i=1,...,21.
• u suit une loi uniforme dans [0,1]
• ε1,...,ε21 sont des variables aléatoires indépendantes qui suivent une loi gaussienne de moyenne nulle et de variance unitaire.
Méthodes en classification automatique, ISI-10
0
1
2
3
4
5
6
0 5 10 15 20 25
Un modèle de forme avec h1 et h3
v1 v2 v3 v4 v6v5 v7 v8 v10v9 ....
Variables
x3
x8
WAVE
Le vecteur est obtenu par un échantillonnage sur 21 points
u=0.1
Méthodes en classification automatique, ISI-10
Analyse en composante principale
wave_1
wave_3wave_2
Méthodes en classification automatique, ISI-10
Initialisation de la carte topologique
Méthodes en classification automatique, ISI-10
Carte à la convergence
Méthodes en classification automatique, ISI-10
La carte
Méthodes en classification automatique, ISI-10
La grille avec les prototypes (coefficients du réseau)
Méthodes en classification automatique, ISI-10
Les critères
Méthodes en classification automatique, ISI-10
Sujets 2012
• http://egc2012.labri.fr/• Règle-association (Q. Zhao)• Clustering_birch• eis00 (Arbre de décision)• Monam06 ( R éseau de neurones et
arbre de décision)• MPRA_paper_81 (boosting et arbre de
décision)