Memoire PDF
Memoire PDF
Memoire PDF
«(Et lorsque votre Seigneur proclama : "Si vous êtes reconnaissants, très certainement
J’augmenterai [Mes bienfaits] pour vous)»
[Coran S14.V7]
Avant tout, je remercie Dieu le très haut qui m’a donné le courage et la volonté de réaliser ce
modeste travail.
Je tiens également à remercier « TOUS » les Messieurs et dames, mes professeurs qui m’ont
enseigné durant deux ans de formation master en Informatique, pour leurs précieux conseils et
ses orientations,
Mes remerciements vont également aux membres du jury d’avoir accepté d’évaluer mon travail.
Sans oublier de remercier mes amis et mes collègues (de l’université ou dans le monde
Virtual « internet ») qui, tous d’une manière différente, ont contribué à ce que je puisse aboutir
à la réalisation de ce mémoire.
Enfin, merci à ma famille (ma Chère mère et mes belles sœurs, mon frère) pour le soutien et
l’encouragement qu’ils m’ont apporté tout au long de mon travail.
__________________________
Ce Rapport a été écrit en LYX/LATEX
Dedicace
A L A M ÉMOIRE D E M ON P ÈRE
Koudri Mohammed
Table des matières
Intoduction générale 10
1.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.2 Définitions : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.5 Fondements : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
1.9.1 Définition : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
1.9.2 Exemple : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
1.10 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2.2 Définition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3
TABLE DES MATIÈRES Page 4
2.3.1 Exemple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
2.6.1 K-means . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
2.7.1 Vocabulaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
2.7.3 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
2.10 Conclusion : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
3.1 introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
3.2 Définition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
3.3.1 Principe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
3.3.2 La Convergence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
3.3.3 Algorithme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
4
TABLE DES MATIÈRES Page 5
3.3.5 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
3.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
4 Application 60
4.1 Préliminaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
4.6 Conception : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
4.7 Expérimentations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
Conclusion générale 73
Bibliographie 75
Nethographie 79
Annexe 80
5
Table des figures
6
TABLE DES FIGURES Page 7
4.1 le logo de Qt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
7
Liste des tableaux
8
Liste des abréviations :
EM : expectation maximisation
CA : classification automatique
MV : maximum de vraisamblance
9
Introduction générale :
Depuis l’aube des temps, l’homme pratique la classification dans sa vie quotidienne, quand
il essaie de répondre aux problèmes et questions sur la catégorie des objets , c’est-à-dire
d’affectation d’objets a leur classe ( en observant leurs formats , couleurs , tailles . . .etc.),
un exemple très simple , le fait qu’il avait distingué entre les plantes, en expérimenta
empiriquement les propriétés thérapeutiques, avec les conséquences parfois désastreuses que
l’on peut imaginer. Puis les classifications apparurent, liées aux expériences des peuples
concernés sur ces plantes et leur utilité. Au cours des siècles, ces classifications s’affinèrent pour
nous livrer sous des formes précises et parfois très complexes les différents Herbiers que nous
connaissons aujourd’hui (cette plante sert de nourriture, celle-ci pourrait aider efficacement à
combattre la maladie et la douleur, ce qui a prit le nom de phytothérapie, . . .etc.).
Avec l’apparition des écoles de pensées scientifiques la classification a constitué l’un des
thèmes majeurs de l’histoire naturelle, et a été utilisée dans plusieurs domaines, commençant
par la Taxinomie1 en laquelle on classe les organismes vivants en les regroupant en entités
appelées taxons.[ André Césalpin ,1583 , De Plantis ], ou encore en biologie, plus précisément
l’étude des espaces vivants ce qu’on a appelé : les SYSTEMES DE CLASSIFICATION
PHYNOGENETIQUE[Guillaume & Hervé, 2002], puis vers la statistique2 [Jean Jadot,
2007] où les premières théories classificatoires ont été fondées, jusqu’à où le grand
développement des ordinateurs et des outils d’analyse des grandes données , a basculé , et
a permis de rendre la classification un outil primordial de nombreux domaines comme : la
reconnaissance des formes, l’apprentissage et la recherche opérationnelle. Récemment, pour
des besoins en intelligence artificielle et " fouille de données ", on a eu la naissance de la "
classification conceptuelle ".
Dans le présent travail , nous tentons d’adopter une des stratégies de la classification
1 science
des lois de classification des formes vivantes" (Robert).
2 L’approcheclassificatoire, élabore les catégories susceptibles de classifier les ensembles et sous-ensembles
d’un champ de connaissances.
10
LISTE DES TABLEAUX Page 11
automatique (clustering= une des grandes familles des méthodes classificatoires) et l’appliquer
dans le domaine médicale, en particulier la détection et l’identification des maladies en
observant seulement un prélèvement de cellules microscopiques,
en fait, pour que le spécialiste puisse donner un bon diagnostic, il faut qu’il y ait une bonne
lisibilité et une bonne reconnaissance des cellules anormales des autres cellules qui composent
une image microscopique sanguine.
Autrement dit, notre objectif est d’élaborer un système semi-automatique qui imite la
perception humaine de la détection des différents objets, c’est-à-dire, il segmente l’image
médicale en plusieurs zones, en identifiant chacune de ses composantes (dans notre cas, les
globules rouges, blancs et le fond).
Et nous terminons par une conclusion générale et les quelques perspectives, remarques qu’on a
pu constater durant la réalisation de ce modeste travail.
11
Chapitre 1
12
CHAPITRE 1. GÉNÉRALITÉS SUR LA CLASSIFICATION Page 13
1.1 Introduction
« Le seul moyen de faire une méthode instructive et naturelle, est de mettre ensemble les choses
qui se ressemblent et de séparer celles qui différent les unes des autres. »
Il est claire que le processus générale que la classification dans le domaine informatique
essaie de l’appliquer sur des données numériques (points, tableaux, images, sons, . . .etc. ),
n’échappe pas à la règle imposée par ce célèbre naturaliste et écrivain Georges Buffon , et que le
travail général des méthodes de classification , depuis 1749, consiste à imiter et automatiser ce
principe en utilisant et inventant des moyens adéquats (matériaux-calculateurs-, et des théories
classificatoires. . .etc.)
Allons de ce principe, nous présenterons dans ce chapitre tout d’abord ce que c’est
la classification, ses méthodes, techniques, ses grandes approches, domaines d’applications,
. . .etc. et on détaillera à la fin une de ses grandes approches en étudiant et analysant deux de ses
algorithmes.
13
CHAPITRE 1. GÉNÉRALITÉS SUR LA CLASSIFICATION Page 14
1.2 Définitions :
La classification est une discipline relié de près ou de loin a plusieurs domaines, elle
est connue aussi sous noms variés (classification, clustering, segmentation,. . .) selon les objets
qu’elle traite et les objectifs qu’elle vise à atteindre.
Pour attribuer une définition au terme « classification », il faudrait d’abord définir ses racines,
ça vient du verbe “classer” qui désigne plus une action qu’un domaine, ou plutôt une série de
méthodes qu’une théorie unifiée.
Il est important de noter qu’il ne faut pas confondre entre ces deux termes : « classification »
et « classement », au fait le mot classification en anglais signifie une chose, alors que le même
mot en français ait une autre signification (utilité).
Dans un classement on affecte les objets à des groupes préétablis, c’est le but de l’analyse
discriminante que de fixer des règles pour déterminer la classe des objets. La classification est
donc, en quelque sorte, le travail préliminaire au classement, savoir la recherche des classes
"naturelles" dans le domaine étudié, en anglais « Cluster Analysis ».
Français Anglais
Classification Clustering
Classement Classification
D’une manière général en vertu de ces définitions, la classification se définit alors comme
une méthode mathématique d’analyse de données, pour faciliter l’étude d’une population
d’effectif important, généralement des bases d’observations caractérisent un domain particulier
(animaux, plantes, malades, gènes,. . . etc.), où on les regroupe en plusieurs classes,
14
CHAPITRE 1. GÉNÉRALITÉS SUR LA CLASSIFICATION Page 15
La classification comme dit préalablement joue un rôle dans presque toutes les sciences et
techniques qui font appel à la statistique multidimensionnelle. A titre d’exemple les sciences
biologiques : botanique, zoologie, écologie, ... qui utilisent le terme "taxinomie" pour désigner
l’art de la classification. Ainsi que les sciences de la terre et des eaux : géologie, pédologie,
géographie, étude des pollutions, font grand usage de classifications.
Une autre forte utilité des techniques de classification dans les sciences de l’homme :
psychologie, sociologie, linguistique, archéologie, histoire, etc ... et sans oublier les techniques
dérivées comme les enquêtes d’opinion, le marketing, etc ... Ces dernières emploient parfois
les mots de "typologie" et "segmentation" pour désigner la classification, Citons encore la
médecine[Jamoulle, & al, 2000], l’économie, l’agronomie . . . etc ! Dans toutes ces disciplines
la classification peut être employée comme un domaine particulier ; mais elle l’est souvent vue
comme une méthode complémentaire à d’autres méthodes statistiques. Elle est très largement
utilisée à l’interprétation des graphiques d’analyse factorielle, ou bien déterminer des groupes
d’objets homogènes, préalablement à une régression linéaire multiple.
Voilà les quelques exemples de ses utilités :
Ce sont les domaines que la classification pourrait viser et en même temps ils représentent les
différents types de données d’entrées des techniques de classification, ce qui est nécessaire d’en
présenter Avant d’aborder les méthodes classificatoires.
Comme le fait de différencier un E-mail valide d’un SPAM , d’ailleurs la classification est fort
utile en ce qui concerne la catégorisation des documents sur internet quel que soit la nature du
document ( image , fichier , son . . .etc) [Michael & al, 2007] et elle peut même être utilisée
pour classifier les document selon leur sens (le web sémantique et les moteurs de recherche
où on associe des sens pour les termes et pour les classifier il faut développer un langage
de traitement/classification sémantique par exemple à base d’ontologie.) ou tout simplement
15
CHAPITRE 1. GÉNÉRALITÉS SUR LA CLASSIFICATION Page 16
pour classifier les ouvrages dans le monde des bibliothèques et des archives(le système de
Classification de la Bibliothèque du Congrès LCC [1.1] .
B/ Reconnaissance de formes :
Généralement c’est une question qui vise à reconnaitre ou identifier certain motifs à partir
de données brutes afin de prendre une décision dépendant de la catégorie attribuée à ce
motif [Peter, 2001], ces motifs (formes) peuvent s’agir d’une image ( visage, empreinte
digitale, rayon X, EEG,...) ou sonore (reconnaissance de parole), et bien d’autres. Comme la
reconnaissance des caractères manuscrits :
16
CHAPITRE 1. GÉNÉRALITÉS SUR LA CLASSIFICATION Page 17
Ou d’empreintes digitales : C’est l’exemple où on cherche à identifier une personne grâce à son
empreinte ,
Ou de Reconnaissance vocale : Dans le cas des signaux il ya des méthodes de traitement des
langues pour fixer la classe d’appartenance d’un signale, ie : signal(j) appartient à {français,
anglais, ... } ?
17
CHAPITRE 1. GÉNÉRALITÉS SUR LA CLASSIFICATION Page 18
C/ Des Tableaux :
comme les données bancaires : ce type de données est représenté sous forme des tableaux N x
M où N le nombres d’exemples ( individus , objets ) et M l’ensemble des descripteurs ou qualité
de ce qui a été décrit ( attributs ) la case (i,j) de ce tableau contient l’information relative de
l’élément j sur i ; le rôle de la classification dans ce cas , consiste à déterminer le comportement
d’un individu par rapport a ce qu’on a appris des autres ( base d’apprentissage )
1.5 Fondements :
la philosophie des techniques classificatoires sur des objets qu’on souhaite traiter en catégories,
se déroule généralement comme suite :
La classification vise à créer ces catégories à partir de traitements ne faisant intervenir que les
données et pas la subjectivité de l’utilisateur(expert, simple utilisateur. . .) mais il est parfois
nécessaire d’apprendre a partir d’exemples pour cela on aura besoin de la la subjectivité de
l’expérimentateur par le choix des descripteurs qu’il utilise, le classement selon un seul critère
nous donnera pas le même classement selon un autre , la classification prends en considération
tous les critères disponibles pour les classer en espace multi- dimensionnel.
18
CHAPITRE 1. GÉNÉRALITÉS SUR LA CLASSIFICATION Page 19
possible de les mettre en œuvre sur de grands échantillons de données. Le résultat d’une
méthode de classification peut être soit une partition mathématique soit une hiérarchie
(mathématiques).
2. Calcul des similarités entre les n individus à partir des données initiales.
1- Non paramétrique :
Les approches dites non paramétriques (classification hiérarchique, méthode des centres
mobiles) basée sur l’hypothèse : plus deux individus sont proches, plus ils ont de chances
de faire partie de la même classe, en plus ce que distingue cette approche est qu’on ne fait
aucune hypothèses sur le modèle que suivent les données, C’est le cas des plus proches voisins
(k-PPV), donc il suffit de trouver les propriétés de convergence quand le nombre de données
est grand.
2- Paramétrique :« Probabilistes »
La seconde grande famille des méthodes de classification, ce sont les approches probabilistes,
utilisent une hypothèse sur la distribution des individus à classifier ,c’est-à-dire, on suppose
que l’on connaît la forme du modèle qui a généré les données . Par exemple, on peut considérer
que les individus de chacune des classes suivent une loi normale. Le problème qui se pose,
est de savoir déterminer ou estimer les paramètres des lois (moyenne, variance) et à quelle
classe les individus ont le plus de chances d’appartenir à partir de l’ensemble d’apprentissage.
19
CHAPITRE 1. GÉNÉRALITÉS SUR LA CLASSIFICATION Page 20
Les paramètres d’une loi peuvent être déterminés de maintes façons, C’est le cas par exemple
des classifications bayésiennes ou encore l’algorithme espérance-maximisation. (ce qu’on va
l’attribuer tout un chapitre)
On peut grouper les méthodes classificatoires en deux grandes familles , cette fois-ci , on
prends en considération l’intervention ou non d’un « attribut classe » au fur et à mesure
du processus de la classification, ces deux types sont : « supervisée (Classement)» et « non
supervisée(Classification, Clustering) »,
Cependant, Il existe d’autres types de classification qui s’appuient sur d’autres types de
méthodes d’apprentissages comme « l’apprentissage semi-supervisé » et « l’apprentissage par
renforcement ». En effet, l’apprentissage semi-supervisé est un bon compromis entre les deux
types d’apprentissage « supervisé » et « non-supervisé », car il permet de traiter un grand
nombre de données sans avoir besoin de toutes les étiqueter, et il profite des avantages des
deux types mentionnés. Alors que L’apprentissage par renforcement est fort utilisé dans le cas
d’apprentissage interactif,
Dans le reste de ce chapitre nous ne présenterons que le premier type « supervisé ». Pour le
deuxième type (voir chapitre 3).
1.9.1 Définition :
Le «classement» est une méthode supervisée qui consiste à définir une fonction qui attribue
une ou plusieurs classes à chaque donnée. Dans cette approche on suppose qu’un expert fournit
auparavant les étiquettes pour chaque donnée, les étiquettes sont des classes d’appartenance.
Selon [Govaert, 2003] : «( la classification supervisée ( appelée aussi classement ou
20
CHAPITRE 1. GÉNÉRALITÉS SUR LA CLASSIFICATION Page 21
classification inductive) a pour objectif « d’apprendre » par l’exemple. Elle cherche à expliquer
et a prédire l’appartenance de documents à des classes connues a priori. Ainsi c’est l’ensemble
des techniques qui visent à deviner l’appartenance d’un individu à une classe en s’aidant
uniquement des valeurs qu’il prend )»
1.9.1.1 Principe :
la conception supervisée d’un classifieur à C classe ( ensemble fini de classe ci ) est le fait de
classifier N objets (xi ) de même nature (des phonèmes, caractères manuscrits,. . .) sachant que
ces N objets sont supposés avoir été préalablement « étiquetés » par un « superviseur » en C
ensembles qui forme un ensemble d’apprentissage.
Le superviseur n’est qu’un Classifieur en lequel on a confiance ( expert humain , caractère
répétitif , le système visuel humain . . . ) , donc notre système de la classification supervisée va
être conçu en basant sur les exemples du superviseur (l’ensemble d’apprentissage où pour tout
exemple on connaît à priori sa classe.)
c’est-à-dire, on cherche à prédire si un objet (élément) « xi » de la base de données, décrit par
un ensemble de descripteurs «d», appartient ou non à une classe « c j » parmi N Classes, pour
le faire, on a un ensemble d’apprentissage décrit par :
Donc pour chaque objet xi de l’ensemble de données, on peut connaît sa classe a priori c j . La
classification supervisée tente de chercher, à partir des données de A , une fonction de décision
Γ qui va associer à tout nouveau élément xi de test une classe c j , puis on compare ce que nous
a donné cette fonction avec la classe connai a priori de cet élément , de sorte à minimiser les
mauvais classements (Γ(xi )6=C j ).
Donc l’objectif est de chercher à prédire la classe de toute nouvelle donnée.
1.9.2 Exemple :
On pourrait donner l’exemple le plus connu : problèmes d’aide ou diagnostic médical, où les
superviseurs sont généralement les médecins afin de noter la classe des objets de l’ensemble
d’apprentissage à partir des remarques constatées. Ou bien l’exemple d’un tableau où le dernier
descripteur ( Jouer ) représente la classes des exemples
21
CHAPITRE 1. GÉNÉRALITÉS SUR LA CLASSIFICATION Page 22
Ce tableau contient les données de l’apprentissage pour la classification dont chaque instance
est labélisée par "Oui" et "Non". Ce qui permet de construire un modèle de classification
permettant prédire si ça marche pour jouer un match ou non ?
La déduction se fait par rapport à l’apprentissage sur le jeu de données.
Dans cet exemple on parle de « classification binaire », car on classifie les données en deux
classes (|C| =2), et idem pour « n-aire » si on classifie les données en n classes.
La méthode des plus proches voisins (noté parfois k-PPV ou k-NN pour
-Nearest-Neighbor) consiste à déterminer pour chaque nouvel individu que l’on veut classer,
la liste des plus proches voisins parmi les individus déjà classés. L’individu est affecté à la
classe qui contient le plus d’individus parmi ces plus proches voisins. Cette méthode nécessite
de choisir une distance, la plus classique est la distance euclidienne (voir chapitre3.section6),
et le nombre de voisins à prendre en compte.
22
CHAPITRE 1. GÉNÉRALITÉS SUR LA CLASSIFICATION Page 23
1.9.3.1 Algorithme :
1. initialisation , choix de :
- Nombre de classes, Valeur de k, exemples initiaux, mesure de similarité.
(la décision sera pour l’affecter à la classe majoritairement présente dans les k-ppv).
1.9.3.2 Discussion :
Ce qu’on peut remarquer sur cette méthode, c’est le cout de calcule qu’elle impose au fur et a
mesure de ce processus de classification, car ce cout augmente avec chaque vecteur qu’on vient
de classifié, plus on ajoute des nouveaux vecteurs déjà classés , plus que ce coute augmente ce
qui explique le temps d’exécution qu’elle prend pour classifier. en plus de la sensibilité de cet
algorithme à l’initialisation des paramètres d’entrées ( le choix de k , la distance utilisée ..) alors
23
CHAPITRE 1. GÉNÉRALITÉS SUR LA CLASSIFICATION Page 24
il faut que lors de la sélection des paramètres d’entrées que ces derniers respectent certaines
contraintes ( comme que k ne soit pas un multiple du nombre de classes pour éviter une
surreprésentation d’une classe par apport à une autre .malgré ces points , k-ppv reste une des
méthodes les plus utilisées grâce à sa simplicité et robustesse et son caractère de généralisation
a partir d’un nombre éminent de données d’apprentissage .
Un classifieur probabiliste linéaire simple basée sur le théorème de Bayes qui suppose
que les descripteurs (attributs) qui décrivent les objets de l’ensemble d’apprentissage sont
indépendants.
1.9.4.1 principe
l’ensemble d’apprentissage «A» est connue et chaque objet est étiqueté par sa classe « Ck »,
l’objectif est de chercher à classer un nouveau objet « Xnew » non encore étiqueté. Le Classifieur
bayésien va choisir la classe « Ck » qui a la plus grande probabilité, on parle de règle MAP
(maximum a posteriori)[1.2] :
24
CHAPITRE 1. GÉNÉRALITÉS SUR LA CLASSIFICATION Page 25
donc Il nous faut estimer les probabilités P(Ck ) et P(Xnew /Ck ) à partir des données
d’apprentissage. Les probabilités a priori des classes P(Ck ) , peuvent être estimées facilement
par :
0 0
nombre d expression d apprebtissage dans la classeCk
p(Ck ) le nombretotale de documents dans l 0 ensemble d 0 apprentissage
Maintenant pour estimer les valeurs de P(Xnew /Ck ) , puisque les descripteur(attributs) de
« Xnew » sont indépendants , alors on aura grace aux théories d’indépendance bayesienne entre
les variables [1.2] :
Ou les « fi » sont les attributs qui décrivent l’ensemble de données , sachant que :
n
p (C, F1 , ..., Fn ) = p (C) ∏ p (Fi | C) (1.4)
i=1
Et pour estimer les paramètres d’une loi de probabilité relative à une caractéristique précise, il
est nécessaire de présupposer le type de la loi en question ( par exemple loi normale ).
25
CHAPITRE 1. GÉNÉRALITÉS SUR LA CLASSIFICATION Page 26
1.9.4.2 Discussion
Le Classifieur naïf de Bayes est très performant même avec peu de données, car il fait souvent
de bonnes hypothèses sur la distribution des données avec un peu de données d’entraînement
afin d’estimer les paramètres nécessaires à la classification (moyennes et variances) [Rennie
& al. , 2003], mais Lorsque le nombre de descripteurs est grand, il est parfois impossible de
construire ce modèle sur des tableaux de probabilités.
1.10 Conclusion
Nous avons vu une généralité sur les conceptions des méthodes de classification et un aperçu
superficiel sur les principes de la première grande approche qui infère à partir d’un échantillon
d’exemples classés une procédure (fonction de décision) de classification des nouveaux
exemples non étiquetés. La Discrimination (ou les méthodes supervisées) peut être basée sur
des hypothèses probabilistes (Classifieur naïf de Bayes, méthodes paramétriques) ou sur des
notions de proximité (plus proches voisins) ou bien encore sur des recherches dans des espaces
d’hypothèses (arbres de décision, réseaux de neurones).
Certes l’approche supervisée est très utilisée pour les raison et les avantages qu’on a mentionné
pour chaque méthode , néanmoins il reste qu’il ya un manque de stratégies pour les exemples
d’auto-apprentissage ( c’est-à-dire , d’apprendre a partir d’une base sans aucune connaissance
préalable ) que les méthodes supervisée ne peuvent pas traiter , dans ce cadre vient la
deuxième approche des méthodes de classification, qui est : l’approche non-supervisée ( ou
spécifiquement « la classification automatique » ) .
26
Chapitre 2
La classification automatique
« Clustering »
27
CHAPITRE 2. LA CLASSIFICATION AUTOMATIQUE « CLUSTERING » Page 28
2.1 Introduction
Comme nous avons pu le voir dans le premier chapitre qu’il ya deux grandes approches en
classification : la discrimination (classement) et la classification automatique (clustering), dans
ce chapitre nous détaillerons les méthodes du deuxième type « clustering » qui est une des
techniques statistiques largement utilisées dans la Fouille de Données. il est dans un cadre
d’apprentissage non supervisé, qui tente d’obtenir des informations sans aucune connaissance
préalable, ce qui n’est pas le cas de l’apprentissage supervisé.
2.2 Définition
C’est un traitement sur un ensemble d’objets qui n’ont pas été étiquetés par un superviseur.
Généralement lié au domaine de l’analyse des données comme ACP (analyse linéaire en
composantes principales) [Saporta 1900] [Lebart et al. 200], ce type de méthodes vise
à répondre au problème de : diminution de la dimension de l’espace d’entrée, ou pour le
groupement des objets en plusieurs catégories (clusters) non définies à l’avance. Parmi les
28
CHAPITRE 2. LA CLASSIFICATION AUTOMATIQUE « CLUSTERING » Page 29
méthodes qu’on peut trouver dans ce type de classification : les cartes auto-organisatrices de
kohonen [kohonene 1982], GMM . . .etc
Un «Cluster» est donc une collection d’objets qui sont «similaires» entre eux et qui sont
«dissemblables » par rapport aux objets appartenant à d’autres groupes. On peut voir cette
définition clairement graphiquement dans l’exemple suivant :
Dans ce cas, il est très facile pour une personne d’identifier 4 Clusters dans lesquels les données
(nuage des points) peuvent êtres divisées, le critère de similarité est la distance : deux ou
plusieurs objets appartiennent au même cluster s’ils sont «proches», bien sur cela dépend d’une
distance donnée (dans ce cas la distance géométrique).
29
CHAPITRE 2. LA CLASSIFICATION AUTOMATIQUE « CLUSTERING » Page 30
Alors que l’objectif des méthodes du Clustering est de grouper des éléments proches dans un
même groupe de manière à ce que deux données d’un même groupe soient le plus similaires
possible et que deux éléments de deux groupes différents soient le plus dissemblables possible
[Hartigans, 1975].
2.3.1 Exemple
On utilise souvent ce type de classification en traitement d’images pour fixer les divers objets
qu’elles contiennent (segmentation) : routes, villes, rues , des organes humaines (pour les
images médicales ) . . .
Les principales exigences qu’un algorithme de clustering doit répondre sont les suivantes :
F Evolutivité des clusters
F traiter les différents types d’attributs
F découvrir les clusters de forme arbitraire
F exigences minimales pour la connaissance du domaine afin de déterminer les paramètres
d’entrée.
F capacité de composer avec le bruit et les valeurs manquantes traiter les dimensionnalités
élevées. l’intelligibilité et la convivialité.
30
CHAPITRE 2. LA CLASSIFICATION AUTOMATIQUE « CLUSTERING » Page 31
Cependant dans certains ouvrages on classifie les types des Algorithmes de clustering en 4
groupes à cause des méthodes qui ne respectent plus les normes du premier classement comme
31
CHAPITRE 2. LA CLASSIFICATION AUTOMATIQUE « CLUSTERING » Page 32
le cas de la règle « Chaque objet doit appartenir à un seul groupe. » alors que les versions floues
la tempèrent et permettent à un objet d’appartenir à plusieurs classes selon un certain degré.
1. Clustering exclusif
3. Clustering Hiérarchique
4. Clustering probabiliste
Dans le premier cas, les données sont regroupées d’une manière exclusive, de sorte que si une
donnée certaine appartient à un amas définie alors il ne pourrait pas être inclus dans un autre
cluster. Un simple exemple de cela est montré dans la figure ci-dessous, où la séparation des
points est définie par une ligne droite sur un plan bidimensionnel.
Au contraire le second type, le regroupement overlapping, utilise des ensembles flous aux
données de cluster, de sorte que chaque point peut appartenir à deux ou plusieurs groupes
avec différents degrés d’appartenance. Dans ce cas, les données seront associées à une valeur
d’une composition appropriée.
Comme nous l’avons dit, un algorithme de clustering hiérarchique est fondé sur l’union entre
les deux plus proches clusters cad : consiste à trouver des clusters successifs utilisant des
clusters précédemment établis. La première condition est de mettre, au début, chaque objet
32
CHAPITRE 2. LA CLASSIFICATION AUTOMATIQUE « CLUSTERING » Page 33
dans un cluster distinct et les fusionner en clusters successivement plus grand. Après quelques
itérations on atteint le final Cluster voulu qui regroupe tous les sous-clusters (sous-partitions).
Enfin, le dernier type de regroupement utilise une approche complètement probabiliste basant
sur la probabilité d’appartenance aux clusters.
Dans ce qu’il suit nous présentons quelques algorithmes de Clustering, voilà quelques
exemples :
1. K-means
2. Fuzzy C-means
3. Hierarchical clustering
Chacun de ces algorithmes appartient à l’un des types de clustering énumérés ci-dessus. Par
exemple , K-means est un algorithme de clustering exclusif ,pendant que Fuzzy C-means est un
algorithme de Overlapping Clustering, alors que clustering hiérarchique il est claire qu’il s’agit
de troisième type de clustering, et enfin Mélange de Gaussien est un algorithme de clustering
probabiliste. Nous allons discuter et définir les principes de ces méthode de clustering dans
quelques lignes.
Dans ce qui suit, nous analysons le cadrage théorique de chaque méthode, concernant la 4ème
méthode (qui est la méthode cible de ce travail) nous l’allouons spécialement tout un chapitre
(voir chapitre 3).
2.6.1 K-means
L’algorithme k-means mis au point par McQueen en 1967[MacQueen, 1967], un des plus
simples algorithmes d’apprentissage non supervisé , appelée algorithme des centres mobiles
[Benzécri, 1973] [Celeux et al, 1989] , il attribue chaque point dans un cluster dont le centre
(centroïde) est le plus proche. Le centre est la moyenne de tous les points dans le cluster ,
ses coordonnées sont la moyenne arithmétique pour chaque dimension séparément de tous les
points dans le cluster cad chaque cluster est représentée par son centre de gravité.
33
CHAPITRE 2. LA CLASSIFICATION AUTOMATIQUE « CLUSTERING » Page 34
2.6.1.1 Principe
L’idée principale est de définir les k centroïdes arbitraires c1 , c2 ,..., ck ( k le nombre de clusters
fixé a priori, chaque ci représente le centre d’une classe), Ces centroïdes doivent être placés dans
des emplacements différents. Donc, le meilleur choix est de les placer le plus possible éloignés
les uns des autres. La prochaine étape est de prendre chaque point appartenant à l’ensemble de
données et l’associer au plus proche centroïde. Càd Chaque classe Si sera représentée par un
ensemble d’individus les plus proches de son ci , Les nuées dynamiques sont une généralisation
de ce principe, où chaque cluster est représenté par un noyau mais plus complexe qu’une
moyenne.
Lorsqu’aucun point n’est en attente, la première étape est terminée et un groupage précoce
est fait. À ce point nous avons besoin de recalculer les k nouveaux centroïdes mi des groupes
issus de l’étape précédente qui vont remplacer les ci (m j est le centre de gravité de la classe
S j , calculé en utilisant les nouvelles classes obtenues). Après, on réitère Le processus jusqu’à
atteindre un état de stabilité où aucune amélioration n’est possible, nous pouvons constater que
les k centroïdes changent leur localisation par étape jusqu’à plus de changements sont effectués.
En d’autres termes les centroïdes ne bougent plus.
2.6.1.2 Algorithme
1. Répéter :
affectation de chaque point à son cluster le plus proche :
n o
(t) (t) (t)
Si = xi :k x j − mi k≤k x j − mi∗ k f or all i∗ = 1, ..., k (2.1)
(t+1) 1
mi = (t) ∑x j ∈s(t)i x j (2.2)
| Si |
Fin.
34
CHAPITRE 2. LA CLASSIFICATION AUTOMATIQUE « CLUSTERING » Page 35
2.6.1.3 Discussion
Cette méthode est la plus populaire des méthodes de clustering , malgré ça , un de ses problèmes
majors est qu’il tend à trouver des classes sphériques de même taille. en plus K-means est connu
par sa complexité de « NP-difficile ». Il est donc fréquemment faire appeler une heuristique
en pratique, ce qui explique qu’elle est convergente et surtout avantageuse du point de vue
calcul mais elle dépend essentiellement de la partition initiale (Des initialisations différentes
peuvent mener à des clusters différents «problèmes de minima locaux ») cela risque d’obtenir
une partition qui ne soit pas optimale pourtant qu’elle donne surement une partition meilleure
que la partition initiale. De plus, la définition de la classe se fait à partir de son centre, qui
pourrait ne pas être un individu de l’ensemble à classer, d’où le risque d’obtenir des classes
vides.
2.6.2.1 Principe
Fuzzy C-means (FCM) est une méthode de clustering qui permet à un objet de données
d’appartenir à deux ou plusieurs clusters. Cette méthode dérivée de l’algorithme c-means [Ball
et Hall,1967], identique à l’algorithme k-means décrit précédemment , elle a été développée par
Dunn [Dunn, 1973]en 1973 et améliorée par Bezdek [Bezdek, 1981] en 1981, est fréquemment
utilisée dans la reconnaissance des formes. Il est basé sur la minimisation de la fonction
objective suivante :
N C
Jm = ∑ ∑ umij k xi − c j k2 1≤m<∞ (2.3)
i=1 j=1
où m est un nombre réel ( > 1), Ui j est le degré d’appartenance de xi dans le j ème Cluster, xi
est le ième élément des données mesurées, c j est le centre d’un cluster et k*k est toute norme
exprimant la similarité entre les données mesurées et le centre. Ce Partitionnement logique floue
(fuzzy) est réalisé grâce à une optimisation itérative de la fonction objectif indiqué ci-dessus,
avec la mise à jour de l’appartenance ui j et les centres des clusters c j .
On peut résumer la différence entre fuzzy C-means et k-means dans la fonction d’appartenance
d’un nuage de points dans deux clusters dans l’exemple suivant :
35
CHAPITRE 2. LA CLASSIFICATION AUTOMATIQUE « CLUSTERING » Page 36
Dans le cas de k-means un objet ne peut pas appartenir dans deux clusters Simultanément, ce
qui explique la Discrimination binaire entre les clusters mais en FCM il est possible qu’un
objet appartient à deux ou plusieurs clusters selon différents pourcentages cad que les données
sont liés à chaque groupe par le biais d’une fonction d’appartenance, ce qui représente le
comportement floue de cet algorithme. Pour le faire, nous devons simplement construire une
matrice appropriée nommée U dont les facteurs sont des nombres entre 0 et 1, et représentent
le degré d’appartenance entre les centres de données et des clusters.
Il est également important de noter que les initialisations différentes causent différentes
évolutions de l’algorithme. En fait, il pourrait converger vers le même résultat, mais
probablement avec un nombre différent d’itérations.
2.6.2.2 Algorithme
36
CHAPITRE 2. LA CLASSIFICATION AUTOMATIQUE « CLUSTERING » Page 37
2.6.2.3 Discussion
Une méthode que son caractère hybride ( la notion de centre de gravité et la notion Floue ) le
rend simple, rapide . La FCM exige des paramètres d’entrées, et que la matrice de partition
floue, doit être initialisée d’une manière appropriée . Ces paramètres sont choisis d’une façon
arbitraire, ces paramètres ont une grande influence sur le résultat attendu. Ce qu’il nous oblige
de faire une étude approprié sur les données en entrée et le regroupement que l’on souhaite
obtenir.
Le processus basique des méthodes hiérarchiques a été donné par [Johnson, 1967] [Lance
& Williams, 1967], Ce type de clustering consiste à effectuer une suite de regroupements en
Clusters de moins en moins fines en agrégeant à chaque étape les objets (simple élément) ou les
groupes d’objets (un Cluster-partition-) les plus proches. Ce qui nous donne une arborescence
de clusters[Celeux &al., 1989]. Cette approche utilise la mesure de similarité pour refléter
l’homogénéité ou l’hétérogénéité des classes.
37
CHAPITRE 2. LA CLASSIFICATION AUTOMATIQUE « CLUSTERING » Page 38
2.6.3.1 Principe
Son principe est simple, initialement chaque individu forme une classe, soit n classes , donc
on cherche à réduire ce nombre de classe newnbrclss < n itérativement de sorte que dans
chaque étape on fusionne deux classes ensemble (Les deux classes choisies pour être fusionnées
sont celles qui sont les plus "proches" en fonction de leur dissimilarité) ou ajouter un nouveau
élément à une classe (un élément appartient à une classe s’il est plus proche de cette classe que
de toutes les autres) La valeur de dissimilarité est appelée indice d’agrégation. Qui commence
dans la première itération faible, et croîtra d’itération en itération.
Parmi les algorithmes plus connus de ce type : La classification ascendante hiérarchique (CHA)
où le mot ascendante est utilisé pour désigner qu’elle part d’une situation dont tous les individus
représentent des clusters à part entière, puis on cherche les rassembler en classes de plus en plus
grandes. Ainsi Le qualificatif "hiérarchique" désigne le fait qu’elle produit une hiérarchie, (une
amélioration a été proposée en 2002 par P. Bertrand , appelée Classification Ascendante 2-3
Hiérarchique ).
1. Initialisation :
Chaque individu est placé dans son propre cluster, Calcul de la matrice de ressemblance
M entre chaque couple de clusters (ici les points)
2. Répéter :
* Sélection dans M des deux clusters les plus proches Ci et C j
* Fusion de Ci et C j par un cluster CG plus général
* Mise à jour de M en calculant la ressemblance entre CG et les clusters existants
Jusqu’à fusionner les 2 derniers clusters.
38
CHAPITRE 2. LA CLASSIFICATION AUTOMATIQUE « CLUSTERING » Page 39
Dans la figure suivante, on représente une illustration du principe de CHA et la hiérarchie finale
obtenue où Les liens hiérarchiques apparaissent clairement.
2.6.3.3 Discussion
la CAH ne nécessite pas de connaître le nombre de clusters a priori. De plus, il n’y a pas de
fonction d’initialisation, ainsi une seule construction d’un cluster (équivalent à une itération
pour les méthodes de partitionnement).
En ce qui concerne généralement les méthodes hiérarchiques le problème qu’on peut rencontrer
réside dans la sélection d’une ultra-métrique (distance pour calculer la similarité entre clusters)
soit la plus proche de la métrique utilisée pour les individus, car ces méthodes sont heuristiques,
pour cela ya plusieurs techniques permet de le faire : Saut minimal (single linkage) ; Saut
maximal (complete linkage) ; Saut moyen ; Barycentre. . .
une autre faiblesse est : la complexité de temps d’au moins O(n2 ), où n est le nombre d’objets
au total, ainsi qu’on pourrait jamais défaire ce qui a été fait précédemment.
Il est difficile parfois d’apporter une justification aux méthodes hiérarchique (CAH, CDH..),
Cependant, dans [Kamvar &al., 2002] , une interprétation probabiliste de la CAH, basée sur
une estimation par maximum de vraisemblance des modèles de mélange, est proposée comme
solution pour mieux interpréter les résultats.
39
CHAPITRE 2. LA CLASSIFICATION AUTOMATIQUE « CLUSTERING » Page 40
40
CHAPITRE 2. LA CLASSIFICATION AUTOMATIQUE « CLUSTERING » Page 41
Donc une décision éclairée doit être faite quant à la mise à l’échelle relative. Comme le montre
la figure, différents écaillages peuvent conduire à différents clustering.
2.7.1 Vocabulaire
Il est à noter qu’il ya deux concepts pour exprimer la notion de proximité entre les objets à
classifier :
1. Mesure de dissimilarité DM : plus la mesure est faible plus les points sont similaires
(distance).
2. Mesure de similarité SM : plus la mesure est grande, plus les points sont similaires.
Il existe un grand nombre de mesures de similarité, dans ce qui suit, nous présentons quelques
unes des fonctions entre deux objets d(x1 ; x2).
41
CHAPITRE 2. LA CLASSIFICATION AUTOMATIQUE « CLUSTERING » Page 42
3. La distance de Mahalanobis : corrige les données pour les différentes échelles et des
corrélations dans les variables, L’angle entre deux vecteurs peuvent être utilisés comme
mesure de distance quand le regroupement des données de haute dimension. Voir l’espace
produit scalaire.
d 2 (x1 , x2 ) = (x1 − x2 )C−1 (x1 − x2 )8
(2.6)
(C = covariance)
4. la distance de Sebestyen :
a = ( 0 0 0 1 1 1 1) et b = 1 1 0 1 0 1 1 alors d = 1+1+0+0+1+0+0
(2.9)
42
CHAPITRE 2. LA CLASSIFICATION AUTOMATIQUE « CLUSTERING » Page 43
n 2
(xi − yi )
x2 (→
−
x ,→
−
y)= ∑ (2.10)
i=1 xi + yi
Cependant que pour les données de grandes dimensions, il ya une distance spécifique très
utilisée :
!1
d p
| xik − x jk | p
d p xi , x j = ∑ (2.11)
k=1
diamètre maximum :
max (d (i, j) , i ∈ C1 , , j ∈ C2 ) (2.13)
distance moyenne :
∑i, j d (i, j)
(2.14)
n1 n2
distance des centres de gravité :
d (µ1 , µ2 ) (2.15)
distance de Ward : r
n1 n2
d (µ1 , µ2 ) (2.16)
n1 + n2
43
CHAPITRE 2. LA CLASSIFICATION AUTOMATIQUE « CLUSTERING » Page 44
2.7.3 Discussion
Une note importante est de savoir si le clustering utilise une distance symétrique ou
asymétrique. Bon nombre des fonctions énumérées ci-dessus ont la propriété que les distances
sont symétriques. Dans d’autres applications (par exemple, la séquence-alignement des
méthodes, voir Prinzie & Van den Poel (2006)), ce n’est pas le cas.
Certaines mesures sont spécifiques aux domaines particuliers comme histogrammes ou aux
distributions. Dans [Puzicha et al., 1999], on trouvera une étude comparative de quelques de
ces fonctions .
En plus, ces mesures rencontrent certaines difficultés lorsque’on change le jeu de données
comme le fait de travailler sur des espaces de couleurs où quelque distance ne sont pas
recommandées. L’inconvénient major de la plupart de ces fonctions, c’est qu’elles sont
coûteuses en temps de calcul et sont de plus sensibles à la dimension des données. Pour
remédier le problème de dimensions, il ya des techniques ont été proposées pour la réductions
de dimensions, qui permettent d’appréhender cette difficulté [Berrani & al., 2002].
44
CHAPITRE 2. LA CLASSIFICATION AUTOMATIQUE « CLUSTERING » Page 45
Quel que soit le type de la classification il ya Trois éléments permettent de caractériser les
différentes méthodes :
Ces trois éléments permettent de définir le déroulement ainsi que le type de la méthode, le
deuxième et le troisième caractère ont un point primordial dans la performance et la qualité du
résultat attendu d’une méthode, car il y aura certainement une différence de calcule (précision)
entre le fait d’utiliser la distance euclidien au lieu de la distance de Hamming (cad que la
distance utilisée est prise en considération afin d’amélioré les résultats) [Gower &legendre,
1986] [Dalirsefat& al., 2009]
2.10 Conclusion :
Les méthodes de clustering comme toutes les autres méthodes de classification , ont leurs
avantages , faiblesses (voir section : discussion ) , cependant , il n’y a pas que le type statistique
, il y’en a d’autre type qui s’appuie sur la théorie de probabilité . Dans le chapitre suivant nous
nous intéresserons à une nouvelle méthode de conception totalement différente de ce que nous
l’avons vu jusqu’à maintenant, basée sur la conception du modèle de mélange, une méthode qui
a été classé la 5ème parmi les méthodes de classification les plus utilisées/populaires de DATA
MINING ces dernières années [Xindong &Vipin, 2009] , un classement prouve le succès qu’il
a commencé à rencontrer très rapidement ce type de méthodes.
45
Chapitre 3
46
CHAPITRE 3. EXPECTATION MAXIMIZATION (GMM) Page 47
3.1 introduction
Il ya une autre façon de traiter les problèmes de clustering : une approche basée entièrement
sur les modèles, qui consiste à utiliser certains modèles pour les clusters et de tenter d’optimiser
l’adéquation entre les données et le modèle.
En pratique, chaque groupe peut être représenté mathématiquement, par une distribution
paramétrique, comme une gaussienne, ou une loi de Poisson (discrète). L’ensemble des
données est donc modélisé par un mélange de ces distributions. Une distribution individuelle
utilisée pour modéliser un cluster spécifique est souvent désignée comme une distribution de
composantes. La méthode de classification la plus largement utilisée de ce genre est celle basée
sur l’apprentissage d’un mélange de gaussiennes : on peut effectivement considérer les clusters
comme des distributions gaussiennes centrées sur leurs barycentres« centre de gravité », comme
on peut le voir sur la figure suivante, où le cercle gris représente la première variance de la
distribution
47
CHAPITRE 3. EXPECTATION MAXIMIZATION (GMM) Page 48
3.2 Définition
F IG . 3.2 – Une variable Aléatoire décomposée en deux Variables distinctes (deux composantes)
48
CHAPITRE 3. EXPECTATION MAXIMIZATION (GMM) Page 49
En effet, en probabilité on dit qu’une variable aléatoire réelle X est une variable gaussienne, si
elle suit une loi normale gaussienne d’espérance «µ» et d’écart type «σ » strictement positif ,
si seulement cette variable aléatoire réelle X admet comme densité de probabilité la fonction
p(x) définie comme suit : pour tout nombre réel x :
1 − 1 ( x−µ )2
p (x) = √
σ
e 2 σ (3.1)
2Π
on la note par :
X ∼ N µ, σ 2
(3.2)
qui veut dire la variable : Aléatoire X suit la loi normale des paramètres «µ» et «σ 2 »
Cette distribution est une des plus importantes, qui est à la base du modèle de mélange gaussien,
connue aussi sous le nom de distribution de courbe en cloche car sa densité de probabilité (3.1),
dessine une courbe dite la courbe en cloche ou courbe de Gauss. Comme la montre la figure
suivante :
49
CHAPITRE 3. EXPECTATION MAXIMIZATION (GMM) Page 50
Cette distribution a l’avantage qu’on peut connait grâce aux paramètres (L’écart-type,
moyenne) la dispersion d’un ensemble de données, en fait, le savoir de la moyenne et
l’écart-type permet de déterminer l’intervalle dans lequel on trouve 95% de la population.
D’ailleurs on sait qu’on trouve 95% de la population dans l’intervalle [µ − 2σ ;µ + 2σ ] et
on trouve 68% de la population dans l’intervalle [µ − σ ; µ+ σ ].
Un modèle statistique (souvent abrégé par GMM pour Gaussian Mixture Model en anglais)
exprimé par une densité mélange1 qui sert à estimer paramétriquement la distribution de
variables aléatoires, ces dernières sont usuellement modéliser comme une somme de plusieurs
1 densitémélange = loi mélange ou une fonction de densité issue d’une combinaison convexe de plusieurs
fonctions de densité.
50
CHAPITRE 3. EXPECTATION MAXIMIZATION (GMM) Page 51
gaussiennes. Il s’agit donc de déterminer les paramètres de chaque gaussienne (la variance, la
moyenne [Annexe 2]).
3.2.3.1 Principe
L’hypothèse est donc consiste à considérer que les objets (données) suivent les lois normales,
alors on se place dans le cadre des modèles de mélanges gaussiens.
(x1 , ..., x2 )appartenant àR p (i.e. décrits par p variables continues). Ce modèle de mélanges,
considère que ces objets (individus) appartiennent chacun à un des g groupes (g étant fixé a
priori par l’utilisateur ou une expertise)G1 ,...,Gg ces groupes sont caractérisés chacun par les
paramètres de la loi normale qui suivent, a savoir : la moyenne µ k (k=1,..,g) et de matrice
de variance-covariance ∑ k On peut donc décrire La forme de la densité de probabilité de ce
mélange (la loi globale du mélange) que suit l’échantillon est donnée par :
Où :
suive la loi g, qui sont les proportions des différents groupes (ou le poids du mélange) tel que :
g
∑k=1 Πk =1.
F Φ=(Π1 , ..., Πg , θ1 , ..., θg ) : représente le paramètre du mélange, qui est inconnu.
F f (x, θk ) : est la loi normale multidimensionnelle(ou loi de Gauss à plusieurs variables)
paramétrée par θ k c’est à dire (µ k et Σk ), cette fonction de densité gaussienne peut être
51
CHAPITRE 3. EXPECTATION MAXIMIZATION (GMM) Page 52
1 1 > −1
f k (x, θk ) = N 1 e− 2 (x−µ)k Σ (x−µ k) (3.4)
(2Π) | ∑k |
2 2
n n g
V (x1 , ..., xn ; Φ) = ∏ g (xi , Φ) = ∏ ∑ Πk f (xi , θk ) (3.5)
i=1 i=1 k=1
On cherche alors , à trouver le maximum de cette vraisemblance pour que les probabilités
des réalisations observées soient aussi maximums, Pour des raisons de simplification de
traitement, il est souvent plus simple de maximiser le logarithme népérien de cette fonction
(car la vraisemblance est positive et le logarithme népérien est une fonction croissante) de
vraisemblance (le produit donc se transforme en somme, ce qui est plus simple à dériver) , que
l’on nommera la log-vraisemblance « L » et qui s’écrit :
!
n g
L (x; Φ) = ∑ log ∑ Πk f (xi, θk ) (3.6)
i=1 k=1
52
CHAPITRE 3. EXPECTATION MAXIMIZATION (GMM) Page 53
1. E-steps (E) : une étape d’évaluation de l’espérance, c’est dans cette étape qu’on calcule
l’espérance de la vraisemblance en tenant compte des dernières variables observées,
Et c’est ainsi qu’on itère l’algorithme en utilisant les paramètres trouvés à l’étape(M) pour
évaluer à nouveau l’espérance.
3.3.1 Principe
53
CHAPITRE 3. EXPECTATION MAXIMIZATION (GMM) Page 54
une représentation marginale de la vraisemblance selon les « données cachées Z »), par exemple
si on a un mélange de deux gaussiennes bidimensionnelles alors :
n g
L(X, Z | Φ) = ∏i=1 ∑k=1 1{Zi= j }Πk fk (xi , θk ) . (3.8)
ou :
" #
g
T
log(L(X,Z|Φ))=∑ni=1 ∑ 1{Zi= j } log(Πk )−log (2Π) − 12 log(det(Σk ))− 12 (x−µk ) ∑−1
k (x−µk ) (3.9)
k=1
ΠEM EM
k f k (x1 , θk )
P Zi= j | Xk = xi , ΦEM =
(3.10)
Σg1=1 ΠEM EM
1 f 1 (x1 , θ1 )
Cette formule donne donc la possibilité de calculer la probabilité conditionnelle pour que l’objet
xi appartienne à la gaussienne qui correspond au groupement(distribution) numéro j donnant
les paramètres ΦEM ainsi estimés. Autrement dit c’est la probabilité a posteriori pour que le
point Xi soit issu de la distribution fk ≡ N(pµ k ,Σk )connaissant ΦEM . La maximisation de
log-vraisemblande en Φ (3.9), ne présente aucune difficulté majeure, et conduit aux estimateurs
suivants :
54
CHAPITRE 3. EXPECTATION MAXIMIZATION (GMM) Page 55
Πnew
k = N1 ΣN
i=1 P( Z k |Xi , Φ )
old
ΣN old
i=1 X1 P(Zk |X1 ,Φ )
µ new
k = N
(3.11)
∑i=1 P(Zk| Xi ,Φold )
N P(Z |X ,Φold ) (X −µ new ) (X −µ new )T
∑i=1
Σnew
k = k 1
ΣN P(Z
1
|X ,Φ
k
old )
1 k
i=1 k 1
En Grosso modo, on peut résumer ces étapes par : on démarre l’algorithme avec une ignorance
absolue des données cachées Z et en initialisant θ (pour chaque composante «gaussienne» ) à
une valeur θ0 d’une manière totalement arbitraire, potentiellement très loin de la réalité.
L’algorithme se sert donc de θ0 pour estimer Z, puis se sert de meilleure estimation de Z (lors
de E-step) pour réestimer les paramètres en une valeur θ1 plus pertinente.
À l’itération suivante, on évalue donc l’estimation des données cachées Z puisque cette nouvelle
estimation se base cette fois sur θ1 . Et cette meilleure estimation sur Z conduit à son tour à une
meilleure précision sur θ2 , et ainsi de suit jusqu’à atteindre la convergence.
Et au final en plus que l’algorithme nous fournit une meilleur estimation de θ , il estime aussi
les variables cachées ( latentes ) Z qui montre bien une autre utilisation de l’algorithme EM, à
savoir : la complétion des données manquantes .
3.3.2 La Convergence
L’objectif de convergence est de trouver (mettre à jour) une « meilleure » valeur qui augmente
la vraisemblance d’une itération à l’autre, donc il suffit de trouver une fonction comme :
On souhaite bien sûr que cette différence soit la plus grande possible , en fait dans [Sean
Borman , 2009][Xindong &vipin, 2009] on a prouvé qu’une telle fonction est possible appelée
Q-function , et ce qu’il prouve que l’algorithme EM admet «la croissance de la vraisemblance
d’une itération à l’autre ».
Il faut noter que, dans certains cas, l’algorithme peut ne pas bien converger ou converger que
vers un maximum local de la vraisemblance...., cela revient aux conditions initiales choisies θ0
arbitrairement, cependant pour certaines mauvaises valeurs, l’algorithme peut rester gelé en un
point selle, alors qu’il convergera vers le maximum global pour d’autres valeurs initiales plus
55
CHAPITRE 3. EXPECTATION MAXIMIZATION (GMM) Page 56
pertinentes. Donc il est recommandé de relancer plusieurs fois l’algorithme avec différentes
initialisations pour appréhender ce problème de convergence. En fait, il ya aucun théorème
général de convergence pour l’algo EM [Boyles ,1983], la convergence de la sequence { θ (m)
à l’itération m} dépends entièrement aux choix des caractéristiques de L( θ ) ,du modèle , ainsi
que des points initiaux de start θ (0) .
Il ya une multitude d’études qui ont été fait pour appréhender ce problème chacune traite
un domaine particulier , par exemple dans [Xu & Jordan,1996], on trouve tous les aspects
concernant la convergence dans un model de mélange gaussien, ou encore dans [Meng &
Rubin, 1994], on trouvera des discussions sur les méthodes pour le calcule de convergence des
différents algorithmes EM.
3.3.3 Algorithme
2. m=0
4. Fin.
Une fois l’estimation terminée, il suffit d’attribuer à chaque individu la classe à laquelle il
appartient le plus probablement. Pour cela, on utilise la règle d’inversion de Bayes. D’après
celle-ci, on a :
P (x | x ∈ Gk ) . P (x ∈ Gk )
P (x ∈ Gk | x) = , (3.13)
P (x)
56
CHAPITRE 3. EXPECTATION MAXIMIZATION (GMM) Page 57
Πk f (xi , θk )
p (xi ∈ Gk ) = g (3.14)
∑`=1 Π` f (xi , θ` )
Il suffit alors d’attribuer chaque individu Xi à la classe pour laquelle la probabilité a posteriori
P(xi ∈ Gk )est la plus grande.
Exemple :
57
CHAPITRE 3. EXPECTATION MAXIMIZATION (GMM) Page 58
3.3.5 Discussion
En effet L’algorithme EM est une méthode de clustering générale, ce qui veut dire qu’il
ya des variétés de détails dans le cadre d’implémentation pour une situation donnée, en
fait on compte plusieurs extensions (variantes) de cet algorithme chacune traite un domaine
particulier [McLachlan et Krishnan, 2008] à fin de répondre aux problématiques qu’il
rencontre EM, à titre d’exemple : GEM (Generalized EM) qui permet de simplifier le problème
de l’étape maximisation ; l’algorithme CEM (Classification EM) permettant de prendre en
compte l’aspect classification lors de l’estimation, ainsi que l’algorithme SEM (Stochastic EM)
dont l’objectif est de réduire le risque de tomber dans un optimum local de vraisemblance.
Il est également à noter que dans notre travail nous n’avons traité que le cas continue gaussien,
mais dans beaucoup de situations pratiques, l’étape E de l’algorithme nécessite de faire appel
aux autres méthodes pour avoir une valeur approchée de l’espérance conditionnelle.
Contrairement aux approches traditionnelles de clustering cette méthode est adaptée pour
traiter des grandes masses des données de grandes dimensions , pourtant elle marque quelques
faiblesse comme nous l’avons remarqué en ce qui concerne l’influence des paramètres de
départ ( initiaux ) sur les résultats attendus , ainsi que le temps de calcule . . .etc. alors que
on peut remédier ces inconvénients en l’intégrant avec d’autres méthodes de classification (
hiérarchique , k-means . . . ), en plus, Le côté itératif de l’algorithme pourra peut-être paraître
un peu mystérieux, mais comme nous l’avons vu, l’algorithme garantit que la vraisemblance
augmente à chaque itération, ce qui conduit donc à des estimateurs de plus en plus corrects.
58
CHAPITRE 3. EXPECTATION MAXIMIZATION (GMM) Page 59
3.4 Conclusion
Dans ce chapitre nous avons abordé tous ce qui concerne la méthode EM basé sur les modèles
de mélange ( ses point fort , sa puissance , ses utilités , . . . ses faiblesses ) , comme nous
l’avons vu , La reconnaissance de mélanges gaussiens est une des applications fondamentales
de l’algorithme EM, qui a été formalisée comme une approche pour résoudre les problèmes
arbitraires du maximum de vraisemblance. Cependant, cet algorithme est très riche d’un point
de vu d’implémentation car il a été adapté selon plusieurs problèmes (HMM « L’algorithme
EM est également très utilisé pour déterminer les paramètres d’un modèle» [Rabiner, 1989],
GMM. . .ect) et cela grâce à ses extensions et à sa légèreté à la modification [McLachlan &
Krishnan, 2008].
Aujourd’hui, EM et ses variantes sont régulièrement utilisées pour résoudre un large éventail
de problèmes d’estimation, de : l’EM pour les motifs élicitassions (MEME) , à : algorithme EM
pour motif d’enquête dans les séquences ADN[Bailey & Elkan, 1995], ou encore des modèles
de mélange de montage pour lever l’ambiguïté des objectifs de fouillis dans le radar[Wang
&al, 2006].
59
Chapitre 4
Application
60
CHAPITRE 4. APPLICATION Page 61
4.1 Préliminaire
Dans ce dernier chapitre et après l’aperçu théorique des chapitres précedents, nous présentons
le côté pratique de notre application .Notre but est la réalisation d’un système flexible et
fiable qui segmente les images sanguines d’une manière automatique sans intervention ou
connaissances préalables, pour l’aide au diagnostic médical (surtout dans le domaine de
l’anatomie pathologique .Nous commençons par la description de la base utilisée, le choix
de l’environnement de travail ainsi que les étapes fondamentaux de la conception de notre
application. Notre application porte le nom « SEM » pour ( Segmenter via Expectation
Maximization )
Pour que notre travail atteint l’objectif qu’on visait, on a pris l’initiative d’exploiter et
d’implémenter notre algorithme sur la version : Windows XP P3 Sweet 6.2Final.
A:
Cette application (SEM) a été codé en sa globalité par le language C++ a travers la plateforme
Qt (prononcez "Quioute" vennu du mot anglais « Cute » ce qui signifie "Mignonne") ce choix
repose sur le fait que Qt est une bibliothèque Framework, Qt est donc pour créer des GUI
(programmes de fenêtres). Elle est écrite en C++, à la base elle est faite pour être utilisée
qu’en C++, néanmoins il est possible de l’utiliser dans d’autres langages comme Java, Python,
etc.[4.1]
61
CHAPITRE 4. APPLICATION Page 62
F IG . 4.1 – le logo de Qt
Comme nous l’avons dit , Qt n’est pas une simple bibliothèque pour développer des application
graphique , mais elle est un Framework qui veut dire qu’elle regroupe plusieurs bibliothèques
(modules) de domaines différents , comme :
F Module GUI : c’est la partie dédie à la création des fenêtres.
F Module OpenGL : le module qui a la tache de 3D et pour géré par OpenGL.
F Module réseau : Qt toute une boite d’outils pour accéder au réseau, que ce soit pour créer
un logiciel de Chat, un client FTP, un client Bittorent, un lecteur de flux RSS...
F Module de script : la partie Javascript (ou ECMAScript), qu’on peut l’utiliser dans des
applications pour ajouter des fonctionnalités, sous forme de plugins.
F Module XML : une partie puissante pour le XML, à fin d’échanger des données avec des
fichiers formés à l’aide de balises, presque comme le XHTML.
F Module SQL : un module qui permet un accès aux bases de données (MySQL, Oracle,
PostgreSQL...).
F . . .etc.
En plus , un autre critère nous a poussé vers ce choix , c’est que Qt est multi-platforme ,
c’est-à-dire , que vous n’avez pas besoin de coder 3 fois le même code pour 3 différents OS
( système d’exploitation ), d’ailleurs la principale idée auquel Qt s’appui , c’est « codez une
seule fois (sous n’importe quel OS) , et vous pouvez le compiler dans tous les OS pour générer
l’exécutable correspondant » ce qui explique la rapidité de ses applications par rapport aux
autres langages comme java.
62
CHAPITRE 4. APPLICATION Page 63
F QtLinguist : un très bon moyen pour distribuer vos applications en plusieurs langues, ce
que vous devrez le faire c’est de respecter certaines normes de nommages et à la fin de
votre développement vous passez votre code dans cet outil pour générer un petit fichier
linguistique , qui va servir comme moyen afin de traduire votre application dans la langue
que vous choisissez.
F QtAssistant : un autre performant style pour accompagner les développeurs pendant et
durant toute la période de la réalisation des applications , grâce à QtAssistant vous pouvez
trouvez toute la documentation de Qt , bien structurée d’une manière qui ne laisse pas le
doute sur une fonctionnalité d’une telle fonction ou autre, ainsi que une grande liste des
exemple bien commentés pour donner un aperçu sur la fonction en question.
F ..etc.
En fait , à proprement parler , Qt n’utilise pas que le langage C++ , mais elle a son propre
langage , ses propres structures , conventions de nommage , ses propres Classes . . .etc. donc
elle regroupe entre la rapidité et la simplicité de C/C++ ainsi que ses avantages d’interface
graphique pour développer des bonnes applications.
B:
pour ce qui concerne la partie de traitement d’images nous avons utilisée une bibliothèque
appelée OPENCV (Open Source Computer Vision), comme son nom le suggère , OPENCV
est une bibliothèque dédié totalement à la vision par ordinateur ce qui signifie traitements des
images ,matrices ,vidéos. . .. données visuelles.
OpenCV est très fortement influencée par les avancées de la recherche dans ce domaine , car
63
CHAPITRE 4. APPLICATION Page 64
il s’agit de la bibliothèque d’INTEL c’est-à-dire : une bibliothèque créée « par des chercheurs,
pour les chercheurs » en fin d’année 2010 , elle a dépassé 3 millions de téléchargements . Le
choix de cette bibliothèque c’est qu’elle est « gratuite », « libre » et « multi-plateformes » et elle
est utilisé en C, C++ et Python, ce qui va nous permettre de l’utiliser aussi bien sous Windows,
sous GNU/Linux, ou sous Mac OS.[4.2].
Donc en grosso modo, dans cette applications nous avons travaillé par 3 langages différents (le
C/C++, Qt et OPENCV) .
La base qu’on a adopté pour nos testes de segmentations afin d’établir notre algorithme ,
ce n’est qu’un ensemble d’images des cellules sanguines (27 images) prises du laboratoire
hémobiologie du C.H.U Tlemcen en utilisant l’appareil LEICA qui est un microscope avec une
caméra permet de capter, en bonne qualité ,des images de ces cellules sur des lames , colorées
après , par la méthode May Grunwald Giemsa.
Il est clair qu’on dispose de 4 classes d’objets dans ce type d’image, à savoir : Le noyau, le
Fond, Cytoplasme et les globules rouges, auxquels chacun prend un format spécifié ainsi que
une couleur déférente que les autres, ce qui va nous aider dans leur reconnaissance.
64
CHAPITRE 4. APPLICATION Page 65
Interface et composants :
En cliquant sur « Fichier » un menu déroulant apparaît vous permettant d’effectuer les fonctions
suivantes :
En cliquant sur « Edition » un menu déroulant apparaît vous permettant d’éffectuer les fonctions
suivantes :
65
CHAPITRE 4. APPLICATION Page 66
En cliquant sur « Détection des contours » un menu déroulant apparaît vous permettant
d’effectuer les fonctions suivantes :
En cliquant sur « Segmentation » un menu déroulant apparaît vous permettant d’éffectuer les
fonctions suivantes :
En cliquant sur « Image processing » un menu déroulant apparaît vous permettant d’éffectuer
les fonctions suivantes :
66
CHAPITRE 4. APPLICATION Page 67
4.6 Conception :
Rappelons tout d’abord que ce travail est focalisé principalement sur la segmentation des
images couleurs. La méthode utilisée est non supervisée, elle est basée sur un modèle de
mélanges de gaussiennes GMM. Les paramètres du modèle sont estimés par l’algorithme EM
cette méthode utilise le principe de L’approche de maximum vraisemblance (ML) pour ajuster
le ‘GMM’ le plus convenable aux données qu’on désire modéliser.
Cette méthode mène à estimer les paramètres du mélange par (3.6) qui donne les paramètres
estimés :Φ̂ = arg maxΦ .L (x, Φ)calculé itérativement et remit à jours par les formules (3.11), en
procédant en deux étapes successives (E-step , M-step).
Pour une image couleur il suffit de prendre les N pixels d’une image comme x j , où Tous les
échantillons (pixels) de l’image forment un ensemble de données. Donc on Suppose que x j
est généré par un mélange de distributions des gaussiennes, et que le nombre de composantes
gaussiennes K est connu ( k = le nombre des clusters qu’on souhaite en avoir ), il nous reste
juste qu’appliquer l’algorithme EM sur ces valeurs en respectant le modèle du mélange, ce
qui va estimer les paramètres du modèle , à ce stade , En utilisant ces paramètres fournis par
l’algorithme EM pour un mélange ayant le nombre de gaussiennes égal à K, on peut donc
calculer la probabilité conditionnelle pour que le pixel x j appartienne à la gaussienne qui
67
CHAPITRE 4. APPLICATION Page 68
correspond au cluster numéro i , ce qu’on peut le calculer par la formule bayesienne ( 3.14)
, mais le problème, c’est que , pour chaque pixel on a k probabilités conditionnelles qui le lie
avec les Clusters , et pour pouvoir l’assigner à un Seul cluster (gaussienne) si : sa probabilité
correspondante au cluster i*, est la probabilité maximale pour i=1,2,..,K.
Pour les initialisations comme tous les algorithmes itératifs, l’algorithme EM nécessite
l’initialisation des paramètres du modèle de mélange des gaussiennes. Les matrices de
covariances sont initialisées par des matrices identités, et pour les K vecteurs moyennes
il ya plusieurs manières, en fait on peut les initialiser d’une façon aléatoire en invoquant
les Random() sur les pixels de l’image en choisissant k emplacements aléatoirement afin
que l’algorithme puisse commencer , cependant il ya une autre technique plus pratique et
performante, en utilisant une méthode de pré-clustering afin de nous approcher des réels centres
des différentes gaussiennes du mélange , cela est fait par l’algorithme de K-moyennes qui
nous renvoie les centroides les plus proches possibles des réels centroides des différentes zones
présentes dans l’image.
En ce qui concerne la répartition des classes de notre application on l’a réparti en 2 grandes
Classes actives :
F « Classe FenPrincipale » qui contient toutes les méthodes d’interaction et communication
avec l’utilisateur (coté interface graphique), ainsi que, elle fait appel aux fonctions de
traitement d’images.
F « Classe Image » : contient toutes les fonctions qui manipulent les images, en plus des
propriétés d’une image.
F Au plus de ça, nous avons écrit des fichiers de collection de méthodes qui regroupent les
méthodes des traitements intermédiaires entre les bibliothèques utilisées .
F (Qt – OpenCV) comme IplImageTwoQimage qui est un fichier regroupe les méthodes
de conversion entre les différentes configurations d’images dans les deux bibliothèques
mentionnées .
4.7 Expérimentations
Un exemple d’image d’origine à segmenter est représenté dans la figure (4.3) , notre objectif
est de segmenter les différentes régions qu’elle contient notre image en colorant à nouveau
les parties identifies de chaque cluster au fur et à mesure d’estimation de ses paramètres en
68
CHAPITRE 4. APPLICATION Page 69
attribuant une couleur distincte ( vert pour le noyau, jaune pour le cytoplasme, rouge pour
globule rouge et noir pour le fond) .
Résultat final de l’appel à la méthode EM (qui fait appel à la méthode k-means d’une manière
implicite à fin d’approcher aux réels centres pour éviter les longues convergences) pour estimer
les paramètres des 4 Clusters de cette image est montré dans la figure 4.10
69
CHAPITRE 4. APPLICATION Page 70
Où on constate que , une grande partie du cytoplasme est mal classée ( classé en noir = fond )
. Après avoir fait plusieurs testes de segmentation on peut calculer le taux de reconnaissance et
les précisions pour chaque zones de l’image de teste en la comparant avec une image segmentée
manuellement par un expert de domaine, qui nous a donné les chiffres :
Précision :
Taux :
EMPLus :
EMPlus n’est pas une nouvelle méthode, mais plutôt une proposition au problème de
cytoplasme (des zones mal reconnues).
70
CHAPITRE 4. APPLICATION Page 71
Comme nous l’avons remarqué , il ya des zones qui ont connue une faible reconnaissance par
l’algorithme EM , parce que leur configuration colorimétrique est d’une modeste énergie ou il
ya une confusion de couleurs dans la même zone ( le cas des cytoplasmes ) , dans ce cadre ,
j’ai pensé d’utiliser en plus de mélange du gaussien GMM, une autre notion afin de pouvoir
aider le spécialiste qui cherche à identifier d’une façon correcte ces zones de conflits , cette
notions est très utilisée dans la détection des visages , elle consiste à créer un MASK ( une
petite image qui a presque les mêmes caractéristiques de format de la zone cible qui na pas
était reconnue en utilisant EM ) pour cela le spécialiste doit créer manuellement ces MASK,
après il suffit de donner le MASK avec l’image qui cause le problème en spécifiant la zone de
conflit (cytoplasme) et le programme commence à chercher les zones similaires ( en fonction
de leur format ) dans l’images par rapport au MASK , quand il trouve la moindre ressemblance
il commence à estimer les paramètres de notre gaussien de mask et de l’image source, il peut
même compléter les données manquantes ( en cas ou le MASK n’est pas correctement conçu)
, quand cela sera fait , il inverse les couleurs des gaussiens en prenant la couleur de l’image de
teste.
71
CHAPITRE 4. APPLICATION Page 72
En passant ces deux images à notre méthode EMPLus on aura le resultat suivant :
Ce que veut dire, que notre algorithme à identifié à 100% le cytoplasme de l’image de teste
72
Conclusion générale
pour cela et d’après ce qu’on a pu remarqué dans ce travail on pourrait envisager quelques
perspectives a fin de noter ce qu’on peut améliorer dans le travail du clustering automatique via
EM basée sur le modèle de mélange .
Comme nous l’avons constaté que EM n’échape pas à la règle de la majorité des méthodes de
Clustering , en ce qui concerne la recherche du nombre de classes, en fait , EM requit en avance
la détermination de ce nombre « k » par un expert , alors pour automatiser cette détermination
, on peut par exemple adopter une stratégie hybride où on commence par une méthode, comme
méthode hiérarchique, qui nous renvoi une hiérarchie bien représentante de la répartition des
données, et en suit nous lançons EM avec « k » approprié . [Jollois, 2003]
Une autre idée pour trouver une remède à ce problème serait de commencer avec un nombre de
classes k , puis au fur et à mesure de l’exécution , on l’évolue en imposant des contraintes de
stabilité a fin de trouver le bon « k » qui représente bien le jeu de données.
73
CHAPITRE 4. APPLICATION Page 74
nom d’une nouvelle amélioration de EM , c’est la méthode CEM qui a prouvé qu’il faut en
moyenne deux fois plus d’itérations à EM pour converger.( il ya d’autres méthodes basées sur
EM : « IEM, SpEM,eM et LEM » [McLachlan et Krishnan, 1997 ]) .
Voilà en grosso modo pour quoi l’algorithme EM est très présenté dans les études de clustering(
cluster analysis ) et de ce qu’elle est capable d’offrir aux domaines tels que traitement des
grandes données (images,. . .) et que son caractère de complexité et d’utilisation des modèles
n’est qu’un avantage de sa souplesse et adaptabilité .
74
Bibliographie
[2] [Bailey & Elkan, 1995] : T. L. Bailey and C. Elkan , “Unsupervised learning of multiple
motifs in biopolymers using expectation maximization,” Machine Learning, vol. 21, pp.
51–80, 1995.
[3] [Benzécri, 1973] : Benzécri J.P. L’analyse des données. Dunod, Paris, 197.
[4] [Berrani & al., 2002] : Berrani, S.-A., Amsaleg, L., & Gros, P. Recherche par similarités
dans les bases de données multidimensionnelles : panorama des techniques d’indexation.
Ingénierie des systèmes d’information (RSTI série ISI-NIS), 7(5-6), pp 65-90.2002.
[5] [Bezdek, 1981] : J. C. Bezdek (1981) : "Pattern Recognition with Fuzzy Objective
Function Algoritms", Plenum Press, New York. 1981.
[7] [Celeux & al., 1989] : Celeux, G., Diday, E., Govaert, G., Lechevallier, Y., and
Ralambondrainy, H. Classification automatique des données, environnement statistique
et informatique. DUNOD informatique. 1989.
[8] [Dalirsefat & al., 2009] : Dalirsefat S, Meyer A, Mirhoseini S. Comparison of similarity
coefficients used for cluster analysis with amplified fragment length polymorphism
markers in the silkworm, Bombyx mori. Journal of Insect Science 9 :71, available online :
insectscience.org/9.71 .2009.
[9] [Day, 1969] : N.E. Day : Estimating the Components of a Mixture of Normal
Distributions. Biometrika, no 56, pp 464-474, 1969.
75
BIBLIOGRAPHIE Page 76
[10] [Dempster and al, 1977] : A.P. Dempster, N.M. Laird , and D.B. Rubin :
Maximum-vraisemblance from incomplete data via the EM algorithm", J.Royal Statist.
Society, B39, pp1-38, 1977
[11] [Dunn, 1973] : J. C. Dunn (1973) : "A Fuzzy Relative of the ISODATA Process and Its
Use in Detecting Compact Well-Separated Clusters", Journal of Cybernetics ,no 3, pp
32-57. 1973.
[12] [Gesu, 1988] V. di Gesu. « Mathematical Morphology and Image Analysis : A Fuzzy
Approach ». Workshop on Knowledge-Based Systems and Models of Logical Reasoning,
Reasoning, 1988.
[13] [Gower & legendre, 1986] : Gower, J. C. & P. Legendre : Metric and Euclidean properties
of dissimilarity coefficients, Journal of Classification, vol 3, pp. 5-48 .1986.
[14] [Govaert, 2003] : Gérard. Govaert, Analyse des données. IC2(série Traitement du signal
et de l’image), Lavoisier.2003
[16] [Guha & al., 1998] : Guha, S., Rastogi, R., et Shim, K. CURE : an e_cient clustering
algorithm for large databases. Dans Proceedings of ACM SIGMOD International
Conference on Management of Data, pp 73-84, 1998.
[17] [Hadi & benmhammed, 2005] : Fairouz Hadi , Khier Benmahammed , Etude comparative
entre la morphologie mathématique floue et le regroupement flou , Faculté des Sciences
de l’Ingénieur, Université Ferhat Abbas-Sétif, Algérie.„ 3rd International Conference :
SETIT 2005
[19] [Hartigans, 1975] : J. Hartigans. clustering algorithms. John Wiley and Sons, Inc., 1975.
[20] [Jamoulle, & al, 2000] : Marc Jamoulle, Michel Roland , Jacques Humbert, Jean-François
Brûlet. Traitement de l’information médicale par la Classification internationale des soins
primaires, deuxième version : CISP-2. Care Edition, Bruxelles, 2000
76
BIBLIOGRAPHIE Page 77
[24] [Kamvar & al. 2002] : Kamvar, S. D., Klein, D., & Manning, C. D., Interpreting
and Extending Classical Agglomerative Clustering Algorithms using a Model-Based
approach. Pp 283-290 of : International Conference on Machine Learning (ICML).2002.
[25] [Karypis & al., 1999] : Karypis, G., Eui-Hong, H., et Kumar, V. Chameleon : Hierarchical
Clustering Using Dynamic Modeling. Computer, no 32(8) :68-75, 1999.
[27] [Lebart & al. 200] : Lebart L., Morineau A. & piron M.statistique exploratoire
multidimensionnelle. Dunod, 3ème édition, paris, 2000.
[28] [Lance & Williams, 1967] : Lance, G.N., & Williams, W.T. : A general theory of
classificatory sorting strategies : I. Hierarchical systems. Computer Journal, no 9,pp
373-380, 1967.
[29] [Michael & al, 2007] : W.B. Michael and Malu Castellanos, survey of text mining
clustering, classification and retrieval Survey of Text Mining : Clustering, Classification,
and Retrieval , Second Edition, Springer, pp 3-22, 2007.
[30] [MacQueen, 1967] : J. B. MacQueen (1967) : "Some Methods for classification and
Analysis of Multivariate Observations, Proceedings of 5-th Berkeley Symposium on
Mathematical Statistics and Probability", Berkeley, University of California Press,no 1,
pp281-297.1967.
[31] [McLachlan et Krishnan, 1997 ] : G. McLachlan, and T. Krishnan, The EM algorithm and
extensions. Wiley series in probability and statistics. John Wiley & Sons.1997.
[32] [McLachlan & chang, 2004] : G.J. McLachlan and S.U. Chang. Mixture modelling for
cluster analysis. Statistical Methods in Medical Research, no 13, pp 347–361,2004.
77
BIBLIOGRAPHIE Page 78
[35] [oppner & al., 2000] : F. H¨oppner, F. Klawonn, R. Kruse, T. Runkler. Fuzzy Cluster
Analysis, Methods for classification, data analysis and image recognition. Wiley, 2000.
[36] [Peter, 2001] : Richard O. Duda, Peter E. Hart, David G. Stork, Pattern classification,
Wiley-interscience, 2001.
[37] [Pearson, 1894] : K. Pearson, Contribution to the Mathematic Theory of Evolution. Philo.
Trans. Soc., 185, 1894
[38] [Rabiner, 1989.] : L.R. Rabiner. A tutorial on hidden Markov models and selected
applications in speech recognition. Proceedings of the IEEE, NO 77, pp : 257–286, 1989.
[39] [Rennie & al. , 2003] : Rennie J, Shih L, Teevan J, and Karger D. Tackling The Poor
Assumptions of Naive Bayes Classifiers. In Proceedings of the Twentieth International
Conference on Machine Learning (ICML). 2003.
[40] [Redner and Walker, 1984] : R.A. Redner, H.F. Walker : Mixture densities, maximum
vraisemblance and the EM algorithm, SIAM Review, 26, pp195-239, 1984.
[41] [Saporta, 1990] : Saporta G. , probabilities, analyse des données et statistiques. Technip ,
paris, 1990.
[42] [Sean Borman , 2009] : Sean borman , The Expectation Maximization Algorithm A short
tutorial , 2009
[43] [Tanner, 1996] : M. Tanner, Tools for Statistical Inference. Springer Verlag, New York.
Third Edition.1996.
[44] [Wang & al, 2006] : J. Wang, A. Dogandzic, and A. Nehorai “Maximum likelihood
estimation of compound-Gaussian clutter and target parameters,” IEEE Transactions on
Signal Processing, vol. 54, no. 10, pp.3884–3898,October 2006.
[45] [Wolfe, 1970] : J.H. Wolfe, Pattern Clustering by Multivariate Mixture Analysis. Multivar.
Behavior. Res., no 5, pp 329-350, 1970.
[46] [Xindong & vipin, 2009] : Xindong Wu , vipin Kumar , the top ten Algorithms in Data
mining ,chapman & hall/CRC, pp :93-116, 2009.
[47] [Zhang & al., 1996] : Zhang, T., Ramakrishnan, R., et Livny, M. BIRCH : an efficient data
clustering method for very large databases. Dans Proceedings of the 1996 ACM SIGMOD
International Conference on Management of Data, pp 103-114, 1996.
78
Nethographie
79
Annexe
Nous présentons ici quelques rappels sur les notions utiles afin de faciliter la compréhension de
ce travail .
1. Distribution :
Une distribution (appelée aussi fonction généralisée) est un objet qui généralise la notion
de fonction et de mesure, en probabilité, c’est une loi (loi normal , loi de poisson..)
qui décrit les probabilités de chaque valeur d’une variable aléatoire discrète, Il existe
deux types de distributions[A.1], à savoir : les « distributions continues » (uniformes,
gaussiennes, multi-gaussiennes, de Dirichlet...) et les «distributions discrètes »
(binomiales, multinomiales...). La plupart des distributions continues sont également
définies dans le cas discret.
3. Fonction de vraisemblance :
La fonction de vraisemblance, notée L(x1 , . . ., xn | θ 1 , . . ., θ k ) est une fonction de
probabilités conditionnelles qui décrit les paramètres θ j d’une loi statistique en fonction
des valeurs xi supposées connues. Elle s’exprime à partir de la fonction de densité f(x| θ )
par : L(x1 , ..., xn | θ ) = ∏ni=1 f (xi ; θ ).
80