• Aucun résultat trouvé

5.3 Proposition d’un algorithme incrémental

5.3.2 Propriétés de notre algorithme

Nous présentons dans cette section plusieurs propriétés sur le comportement de notre algorithme et nos choix de conception.

donnéees initiales (c) donnéees initiales Nouvelle donnée donnéees initiales (a) d’échelle changemment Nouvelle donnée (b) Nouvelle donnée (d)

Figure 5.3: cet exemple présente le comportement de notre algorithme dans le cas où les composantes sont associées à peu de données et qu’une nouvelle donnée entraîne un changement d’échelle. La figure (a) est le modèle initial. Une nouvelle donnée est ajoutée en[10000, 20000] et l’algorithme EM est itéré

une seule fois. Le modèle (b) présente le résultat obtenu (l’espace de définition des données initiales est signalé par un carré rouge). Les figures (c) et (d) présentent l’évolution de la partition au fur et à mesure des itérations de l’algorithme EM jusqu’à convergence.

Impact sur les paramètres lors d’un changement d’échelle

L’ajout d’une nouvelle donnée peut quelquefois entraîner beaucoup de modifications dans le mo- dèle. Notamment dans le cas où les composantes sont associées à peu de données et qu’un changement d’échelle à lieu. Nous parlons de changement d’échelle quand la nouvelle donnée est très éloignée des données précédentes.

L’étape E de l’algorithme EM consiste à calculer l’espérances des données aux composantes. La nouvelle donnée étant éloignée de ces dernières, elle est affectée à l’ensemble des composantes avec une espérance à peu près similaire pour chacune d’entres elles. L’étape M consiste ensuite à calculer les nouveaux paramètres à partir des espérances précédemment obtenues. Si chaque composante est associée à peu de données, leurs paramètres varient fortement en raison de l’espérance de la nouvelle donnée.

La figure 5.3 ci-dessus présente un exemple d’ajout d’une nouvelle donnée provoquant un change- ment d’échelle. La figure 5.3(a) présente le modèle initial. Après l’ajout de la nouvelle donnée et une itération de l’algorithme EM, les paramètres du modèle sont fortement modifiés, comme le montre la

figure 5.3(b). La nouvelle donnée est ajoutée en[10000; 20000] et son association à toutes les compo-

santes durant l’étape E entraîne un déplacement des centres et une augmentation des variances de chaque composante. Dans notre exemple, ces paramètres se retrouvent décalés en direction de la nouvelle don- née. La figure 5.3(c) présente le modèle après plusieurs itérations de l’algorithme EM et la figure (d), le modèle obtenu après convergence. Deux des composantes se déplacent lentement vers la nouvelle don- née, la composante la plus large sur (c) est en fait une superposition de deux composantes. Finalement, la figure (d) présente le modèle obtenu après convergence. Les données initiales et la nouvelle donnée sont associées chacune à une composante. La troisième composante présente une large variance englobant la composante de la nouvelle donnée. En pratique, c’est une classe vide qui serait effacée avec notre algorithme d’optimisation.

Un tel cas de figure est néanmoins pertinent puisque le changement d’échelle est correctement géré. Dans notre exemple, le modèle final, obtenu après avoir supprimé la composante vide, représente bien la structure des données. Nous rappelons qu’une nouvelle donnée n’entraîne autant de modifications que si les composantes sont associées à peu de données. Dans le cas contraire, la nouvelle donnée n’a que peu d’impact sur les composantes et le modèle restera stable. Le changement d’échelle sera alors géré avec des fusions de composantes si le critère ICL le permet.

Stratégies d’optimisation du critère ICL

Plusieurs solutions étaient possibles pour la première étape de notre algorithme, après l’ajout d’une nouvelle donnée dans le modèle :

• comparer le critère ICL du modèle initial (avant toute optimisation et en prenant en compte la

nouvelle donnée) et le modèle optimisé (après optimisation avec l’algorithme EM en prenant en compte la nouvelle donnée). Le modèle minimisant le critère ICL est choisi et des fusions et divisions de composantes sont ensuite réalisées ;

• optimiser le modèle et ensuite tester des fusions et des divisions de composantes sur le modèle

obtenu. C’est la solution que nous avons choisie.

La première solution consiste à toujours choisir le modèle qui optimise le critère ICL : après avoir ajouté la nouvelle donnée, on compare les critères ICL du modèle initial non optimisé et du modèle optimisé ; on choisit le modèle optimisant le critère ICL et on teste ensuite des fusions et divisions de composantes sur ce modèle. Mais un problème se pose : dans le cas où le modèle retenu est le modèle initial (le modèle non optimisé après l’ajout de la nouvelle donnée), le choix des composantes à fusionner ou diviser à l’aide de nos critères n’est plus efficace. En effet, les critères de sélection seraient calculés sur un modèle ne prenant pas en compte la nouvelle donnée : les composantes susceptibles d’être divisées ou fusionnées ne seront ainsi pas obligatoirement les plus pertinentes.

Nous avons donc choisi de prendre en compte la nouvelle donnée dès les premiers pas de l’algo- rithme, en optimisant directement le modèle initial. Une fois le modèle mis à jour, et les composantes vides supprimées, les critères de fusion et de division sont calculés à partir d’un modèle prenant en compte l’ajout de la nouvelle donnée, ce qui a plus de sens pour pouvoir trouver leur nouvelle structure. Il faut noter que le choix de la première solution ne permet pas de régler le problème d’optimisa- tion quand les composantes sont associées à peu de données et qu’un changement d’échelle a lieu (voir l’exemple sur la figure 5.3 page 89). Même dans le cas où le modèle initial est sélectionné (en ne prenant pas en compte la nouvelle donnée), les itérations de l’algorithme EM sur les nouveaux paramètres ob-

tenus pour tester la première division d’une composante peuvent modifier entièrement le modèle, si ses composantes sont associées à peu de données.

Gestion des composantes vides

Étant dans un contexte de classification, chaque composante n’est utile que si elle est associée à un ensemble non vide de données, selon le critère MAP. Après chaque modification du modèle, les itérations de l’algorithme EM ou un test d’une fusion ou d’une division de composantes, nous recherchons et supprimons les composantes vides (étapes2, 4 et 6 de l’algorithme 2).

Dépendance à l’ordre des données

Notre algorithme est bien entendu dépendant de l’ordre des données. L’ordre peut avoir un fort impact suivant les changements d’échelle. Si l’espace de définition des données est directement très grand avec les premières données, nous avons plus de chance d’obtenir un modèle présentant peu de détails, composé de larges classes. Dans le cas où l’espace de définition s’accroît petit à petit avec l’ajout des nouvelles données, nous pouvons obtenir un modèle détaillé (si un changement d’échelle ne provoque pas ensuite une perte de détail).

Selon l’ordre des données, nous n’obtenons pas le même optimum local du critère ICL.

Notre approche fournit un procédé incrémental basé sur l’optimisation du critère ICL. Nous présen- tons dans la section suivante des expériences pour valider notre approche.

5.4

Classification de trois collections d’images à l’aide de notre