Classification automatique de données séquentielles et modèle de

publicité
Classification automatique de données
séquentielles et modèle de mélange
Allou Samé & Christophe Ambroise & Gérard Govaert
Université de Technologie de Compiègne
HEUDIASYC, UMR CNRS 6599
BP 20529, 60205 Compiègne Cedex, FRANCE
E-mail: {same,ambroise,govaert}@utc.fr
Résumé Cet article propose un algorithme séquentiel original de classification automatique basé sur les modèles de mélange. L’algorithme proposé est une montée de gradient
stochastique maximisant la vraisemblance classifiante moyenne des paramètres du modèle.
Cette approche nécessite peu de calculs et possède l’avantage de converger très rapidement
pour un bon choix du pas de montée. Une stratégie de choix du nombre de classes optimal utilisant le critère de vraisemblance classifiante intégrée (ICL) est étudiée de manière
empirique à l’aide de données synthétiques. Les résultats des expérimentations montrent
que la méthode proposée fournit une estimation rapide et fiable des paramètres et du
nombre de classes lorsque les composantes du mélange sont relativement séparées.
Mots-clé : algorithme EM, algorithme CEM, gradient stochastique, critère ICL
Abstract This article presents an original on-line algorithm dedicated to mixture model
based clustering. The proposed algorithm is a stochastic gradient ascent which maximizes
the expectation of the classification likelihood. This approach requires few calculations
and exhibits a quick convergence. A strategy for choosing the optimal number of classes
using the Integrated Classification Likelihood (ICL) is studied using simulated data. The
results of the simulations show that the proposed method provides a fast and accurate
estimation of the parameters (including the number of classes) when the mixture components are relatively well separated.
Key-words: EM algorithm, CEM algorithm, stochastic gradient, ICL criterion
1
Introduction
Les algorithmes de gradient stochastique sont très souvent utilisés pour l’estimation
séquentielle (en-ligne) de paramètres dans les domaines du traitement du signal et de
la reconnaissance des formes pour leur simplicité de mise en œuvre et leur rapidité. En
1
classification automatique, le plus couramment rencontré est l’algorithme des k-means
séquentiel de MacQueen (1967).
Dans le cadre d’un problème de détection de défauts par émission acoustique, nous
avons été amené à classifier sous contraintes de temps réel un ensemble de points situés
sur un plan. La solution fournie par l’algorithme CEM (Celeux et Govaert, 1992) est
satisfaisante et rapide par rapport à l’algorithme EM (Dempster, Laird et Rubin, 1977).
Cependant malgré sa rapidité, cet algorithme ne permet pas de répondre en temps réel
quand le nombre de points à classifier devient trop important (supérieur à 10000 observations). Dans ce travail, nous cherchons à développer un algorithme de classification
séquentiel basé sur une approche probabiliste, qui permet aussi le choix du nombre de
classes.
On suppose dans tout notre travail que les données sont des observations x1 , . . . , xn , . . .
de IRp reçues
PK au cours du temps et distribuées suivant un modèle de mélange
f (x; Φ) =
k=1 πk fk (x; θ k ) avec Φ = (π1 , . . . , πK , θ 1 , . . . , θ K ), où π1 , . . . , πK sont les
proportions du mélange et θ 1 , . . . , θ K les paramètres des densités de probabilité de chaque
composant. On note z1 , . . . , zn , . . . les données manquantes associées aux observations, où
zn ∈ {1, . . . , K} correspond à la classe de xn .
Pour estimer le paramètre Φ, nous choisissons d’utiliser un algorithme de gradient
stochastique. Ces algorithmes permettent généralement d’optimiser un critère moyen
(Bottou, 1991,1998)
C(Φ) = E [J(x, Φ)] ,
où l’espérance est calculée avec le vrai paramètre de la distribution f qui est inconnu
et J(x, Φ) désigne un critère qui mesure la qualité du paramètre Φ pour une observation x. L’algorithme de gradient stochastique permettant de maximiser ce critère s’écrit
généralement
Φ(n+1) = Φ(n) + αn ∇Φ J(xn+1 , Φ(n) )
(1)
P
où P
le pas αn désigne un scalaire positif ou une matrice définie positive tels que |αn | = ∞
et
|αn |2 < ∞.
Dans la deuxième section, nous présentons l’approche de classification séquentielle
de Titterington (1984) ; la troisième section concerne le nouvel algorithme de gradient
stochastique que nous proposons pour la classification de données séquentielles ; une étude
expérimentale est résumée dans une quatrième section.
2
Algorithme de gradient stochastique dérivé de EM
L’algorithme EM classique est un algorithme itératif permettant à partir de données observées xn = (x1 , . . . , xn ) et d’un paramètre initial Φ(0) de maximiser la log-vraisemblance
log p(xn ; Φ) en maximisant dans le cas d’un modèle de mélange la quantité
Q(Φ, Φ(q) ) = E[log p(xn , zn ; Φ)|xn , Φ(q) ]
2
à l’itération q + 1 où zn = (z1 , . . . , zn ).
L’algorithme de gradient stochastique de Titterington (1984) peut être dérivé de
l’algorithme EM. On pose pour cela, de la même manière que dans l’algorithme EM
classique la quantité
Qxn+1 (Φ, Φ(n) ) = E[log p(xn+1 , zn+1 ; Φ)|xn+1 , Φ(n) ],
où cette fois-ci le paramètre Φ(n) a été calculé à partir des observations xn . La maximi1
sation de n+1
Qxn+1 ( · , Φ(n) ) par la méthode de Newton, après remplacement sa matrice
hessienne par la matrice d’information de Fisher Ic (Φ(n) ) associée à une observation complete (x, z) nous donne l’algorithme de Titterington
Φ(n+1) = Φ(n) +
´−1 ∂ log p(x ; Φ(n) )
1 ³
n+1
Ic (Φ(n) )
.
n+1
∂Φ
(2)
Pour certaines familles de densité comme la famille exponentielle régulière, la matrice
Ic (Φ(n) ) est définie positive et donc l’algorithme de Titterington a bien la forme générale
(1) des algorithmes de gradient stochastique ; ce qui garantit sous certaines conditions
que le critère optimisé par (2) est E[log p(x; Φ)].
3
Algorithme de gradient stochastique dérivé de CEM
Le critère que nous cherchons à maximiser dans cette partie, par analogie avec le critère
de vraisemblance classifiante maximisé dans l’algorithme CEM proposé par Celeux et
Govaert (1992) que l’on peut aussi écrire LC (Φ) = max log p(x1 , . . . , xn , z1 , . . . , zn ; Φ),
est le critère moyen de vraisemblance classifiante
z1 ,...,zn
C(Φ) = E[ max log p(x, z; Φ)]
1≤z≤K
où log p(x, z; Φ) = L(Φ; x, z) est la vraisemblance complétée du paramètre Φ pour une
observation complète (x, z).
L’application de l’algorithme (1) nécessite le calcul du gradient par rapport à Φ de
J(x, Φ) = max L(Φ; x, z) qui n’existe pas pour certaines valeurs de x à cause de la
1≤z≤K
fonction max. Dans ce cas fréquent, Bottou (1991, 1998) montre qu’il suffit d’une part
de remplacer ce gradient par une fonction H(x, Φ) vérifiant E[H(x, Φ)] = ∇Φ C(x, Φ) et
d’autre part que les fonctions H(x, Φ) et C(Φ) vérifient certaines conditions.
Dans le cas d’un mélange gaussien, on peut envisager la fonction H(x, Φ) de la forme
½
∇Φ J(x, Φ) si ∇Φ J(x, Φ) existe
H(x, Φ) =
0
sinon.
3
Les paramètres à mettre à jour dans le cas gaussien sont les proportions π1 , . . . , πk ainsi
que les paramètres θ k = (µk , Σk ) de chaque densité gaussienne du mélange. La mise à jour
directe
PK des proportions πk par la formule (1) ne garantit pas en pratique que 0 < πk < 1
et k=1 πk = 1. Pour résoudre cette instabilité numérique, nous reparamétrisons (JianFeng, 2000) les proportions grâce à la transformation logit wk = log ππKk . Les nouvelles
variables deviennent alors w1 , . . . , wK−1 et appartiennent à IR. Finalement l’algorithme
CEM de gradient stochastique dans le cas d’un mélange gaussien peut se définir de la
manière suivante :
(0)
(0)
(0)
Etape 0 initialisation par des paramètres : πk , µk et Σk
Etape 1 (à l’iteration n + 1) affectation de la nouvelle observation xn+1 à la classe k ∗ qui
maximise la log-vraisemblance du paramètre courant, connaissant cette observation
µ
¶
1
1
(n)
(n)
(n) T (n) −1
(n)
∗
k = argmax log πk − log det(Σk ) − (xn+1 − µk ) Σk
(xn+1 − µk )
2
2
1≤k≤K
Etape 2 (à l’iteration n + 1) mise à jour des paramètres :
(n+1)
wk
(n+1)
πk
(n+1)
πK
(n+1)
µk
(n+1)
Σk
(n)
(n)
= wk + αn (zn+1,k − πk ) pour k = 1, . . . , K − 1
(n+1)
exp(wk
)
=
PK−1
(n+1)
1 + `=1 exp(w`
)
1
=
PK−1
(n+1)
1 + `=1 exp(w`
)
(n)
pour k = 1, . . . , K − 1
(n) −1
(n)
= µk + zn+1,k αn Σk
(xn+1 − µk )
µ
´¶
1 (n) −1³
(n)
(n)
(n) T (n) −1
= Σk + zn+1,k αn
Σ
(xn+1 − µk )(xn+1 − µk ) Σk
−I
2 k
où zn+1,k vaut 0 si k = k ∗ et 1 sinon.
En particulier on retrouve un algorithme équivalent à celui des k-means séquentiel
de MacQueen (1967) si l’on considère un mélange gaussien à proportions identiques et
à matrices de variance sphériques (égales à la matrice identité) avec le choix du pas
1
.
αn = n+1
La méthode que nous proposons pour le choix du nombre de classe consiste à lancer
l’algorithme CEM de gradient stochastique en parallèle pour estimer tous les modèles
de 2 à Kmax nombre de classes et à sélectionner ensuite la solution dont le nombre de
classes maximise le critère de vraisemblance classifiante intégrée ICL proposé par Biernacki, Celeux et Govaert (2001), calculé avec les données disponibles. Rappelons que dans
notre cas ce critère s’écrit
νm,K
log(n).
ICL(m, K) = log p(Φ(n) ; x1 , . . . , xn , z1 , . . . , zn ) −
2
4
où Φ(n) est le paramètre obtenu à l’itération n de l’algorithme de gradient stochastique
et νm,K le nombre de paramètres libres du modèle. L’idée directrice de cette méthode
réside dans le fait que la rapidité de l’algorithme CEM de gradient stochastique permet
de l’appliquer plusieurs fois.
4
Simulations
La stratégie utilisée dans ces experimentations consiste à simuler d’abord n points, à
appliquer ensuite l’algorithme CEM sur un faible nombre n0 de points et enfin à appliquer
l’algorithme séquentiel proposé sur le reste des points. Les principaux paramètres de
simulation utilisés sont :
• les tailles d’échantillon : n = 100, n = 300, n = 500, n = 1000, n = 3000, n = 5000 ;
• le nombre n0 de points traités initialement par CEM : n0 = 80 ;
• Le nombre de gaussiennes du mélange : K0 = 4 ;
• Le degré de mélange des classes mesuré par le pourcentage théorique de mal classés
qui varie en fonction de la position relative des centres µ1 , µ2 , µ3 , µ4 des densités
gaussiennes du mélange ; les degrés de mélange retenus sont :
– 5% d’erreur théorique : µ1 = (0; 0), µ2 = (4; 0), µ3 = (0; 4), µ4 = (4; 4))
– 14% d’erreur théorique : µ1 = (0; 0), µ2 = (2.5; 0), µ3 = (0; 2.5), µ4 = (2.5; 2.5)
– 20% d’erreur théorique : µ1 = (0; 0), µ2 = (2.2; 0), µ3 = (0; 2.2), µ4 = (2.2; 2.2)
• les proportions du mélange ont été choisies égales : πk =
1
4
pour k = 1, . . . , 4 ;
• les variances ont été fixées à la matrice identité.
Dans le but d’obtenir des résultats optimaux, nous avons fixé le pas de montée de
gradient à αn = 0.3. Le nombre maximal de classes Kmax a été fixé à 7.
Le tableau 1 représente le critère ICL en fonction du nombre de classes fixé dans
l’algorithme CEM de gradient stochastique pour un degré de mélange de 14%. Nous
observons que le nombre de classes fourni par notre méthode, c’est-à-dire celui pour
lequel la valeur du critère ICL est maximale, correspond au vrai nombre de classes simulé
c’est-à-dire 4 classes dans la situation correspondant à un taux de mélange de 14%. Ce
comportement est le même pour toutes les valeurs de n considérées. La situation correspondant à 5% d’erreur théorique donne également de bons résultats. Cependant, pour
des degrés de mélange élevés (20%) le vrai nombre de classes n’est pas retrouvé, même
pour des valeurs élevées de n. Ce comportement n’est pas surprenant dans la mesure où
l’algorithme CEM est connu pour fournir des estimations biaisées dès que les classes sont
fortement mélangées.
5
Table 1: Critères ICL (divisés par 104 ) en fonction du nombres de classes pour différentes
valeurs de n dans la situation correspondant à 14% d’erreur théorique.
n = 100 n = 300 n = 500 n = 1000 n = 3000 n = 5000
K = 2 -0.0447 -0.1303 -0.2135
-0.4230
-1.2705
-2.1175
K = 3 -0.0440 -0.1275 -0.2115
-0.4190
-1.2570
-2.0925
K = 4 -0.0437 -0.1250 -0.2052 -0.4065
-1.2135
-2.0175
K = 5 -0.0459 -0.1298 -0.2115
-0.4185
-1.2465
-2.0600
K = 6 -0.0464 -0.1366 -0.2153
-0.4255
-1.2870
-2.1575
K = 7 -0.0487 -0.1335 -0.2180
-0.4325
-1.3200
-2.1175
5
Conclusion
L’algorithme de gradient stochastique proposé est une généralisation de l’algorithme des
k-means en-ligne introduit par McQueen en 1967. L’approche probabiliste présentée
dans cet article permet d’estimer de manière séquentielle les paramètres d’un modèle
de mélange. Le nombre réduit de calculs nécessaires permet d’estimer plusieurs modèles
en parallèle et de mettre ainsi en place une stratégie de choix de modèle peut coûteuse.
Bien que la méthode proposée fournisse des résultats acceptables, la convergence de
l’algorithme CEM de gradient stochastique vers un minimum local du critère moyen de
vraisemblance classifiante E[ max log p(x, z; Φ)] n’est assurée que sous certaines condi1≤z≤K
tions (Bottou, 1991) qui sont difficiles à montrer. La perspective de ce travail serait de
vérifier ces conditions au moins pour certains modèles de mélange.
Bibliographie
[1] A. P. Dempster, N. M. Laird and D. B. Rubin (1977), Maximum likelihood from
incomplete data via the EM algorithm (with discussion), J. Royal Stat. Soc. B, 39(1):138.
[2] J.-F. Yao (2000). On recursive estimation of incomplete data models. Statistics,
34(1):27-51
[3] G. Celeux and G. Govaert (1992), A classification EM algorithm for clustering and
two stochastic versions, Computation Statistics and Data Analysis, 14, 315-332.
[5] MacQueen, J. (1967), Some methods for classification and analysis of multivariate
observations, In Proceedings of 5th Berkeley Symposium on Mathematics, Statistics and
Probability, 1:281- 298.
[6] Leon Bottou (1991), Une approche théorique de l’apprentissage connexioniste ; Applications à la reconnaissance de la Parole, Thèse de doctorat, Université d’Orsay.
[7] L. Bottou (1998), Online learning and stochastic approximations, in Online Learning
in Neural Networks, D. Saad, Ed., Cambridge: Cambridge University Press.
[8] C. Biernacki, G. Celeux, and G. Govaert (2000), Assessing a mixture model for clustering with the integrated completed likelihood, IEEE PAMI, 22(7):719-725.
6
Téléchargement