Faculté des sciences Département d'informatique Mémoire de ...

148
République Algérienne Démocratique et Populaire Ministère de l'Enseignement Supérieur et de la Recherche Scientifique Université d'Oran Es Senia Faculté des sciences Département d'informatique Mémoire de Magistère Spécialité : Informatique Ecole doctorale des sciences et technologie de l’information et de la communication Option : Système d’information et de connaissance Présenté par Nadjia Khatir Jury composé de : Bouabdellah Kechar Maître de ConférencesUniversité d’Oran Président Rachid Nourine Maître de Conférences Université d’Oran Examinateur Latifa Baba-hamedMaître de Conférences Université d’Oran Examinateur Safia Nait BahloulMaître de Conférences Université d’Oran Encadreur Soufi OSMANI DocteurEHU d’Oran Invité Année Universitaire 2011-2012 Thème : Clustering dans les bases de données

Transcript of Faculté des sciences Département d'informatique Mémoire de ...

Page 1: Faculté des sciences Département d'informatique Mémoire de ...

République Algérienne Démocratique et PopulaireMinistère de l'Enseignement Supérieur et de la Recherche Scientifique

Université d'Oran Es Senia

Faculté des sciencesDépartement d'informatique

Mémoire de Magistère

Spécialité : InformatiqueEcole doctorale des sciences et technologie de l’information et de la communication

Option : Système d’information et de connaissance

Présenté par

Nadjia Khatir

Jury composé de :

Bouabdellah Kechar Maître de ConférencesUniversité d’Oran Président

Rachid Nourine Maître de Conférences Université d’Oran Examinateur

Latifa Baba-hamedMaître de Conférences Université d’Oran Examinateur

Safia Nait BahloulMaître de Conférences Université d’Oran Encadreur

Soufi OSMANI DocteurEHU d’Oran Invité

Année Universitaire 2011-2012

Thème :

Clustering dans les bases de données

Page 2: Faculté des sciences Département d'informatique Mémoire de ...

La classification non supervisée-Clustering- en Anglais est une étape importante du

processus d’extraction de connaissance à partir de données (ECD). Elle vise à découvrir

une structure intrinsèque d’un ensemble d’objets en formant des-Clusters- ou des

regroupements qui partagent des caractéristiques similaires.

L’augmentation de la dimension des données ces dernières décennies a eu des

conséquences non négligeables sur les méthodes de traitement mises en œuvre. En effet,

le nombre d’objets présents dans les bases de données a fortement augmenté ainsi que la

taille de leurs descriptions.

La santé, est un secteur où les données disponibles sont nombreuses et de nature variées

(documents et rapports médicaux, fiches des patients, imagerie médicale, etc.)

Ce mémoire est consacré à l’étude des méthodes et algorithmes de clustering sur des

données médicales. Notre travail a pour une première contribution une plateforme pour

l’application et la validation des algorithmes de clustering.

La deuxième contribution réside dans l’évaluation statistique des résultats du clustering

obtenus par les différents algorithmes sur des jeux de données de grande dimension

d’expression des gènes.

Nous proposons par la suite une méthode originale suffisamment générale basée sur les

algorithmes de clustering, permettant la segmentation des images de sang microscopiques.

Mots clés :

Classification non supervisée; Clustering; Données médicales; Puces à ADN; Image

microscopique; Expression des gènes; Data mining; Fouille de données; Apprentissage

automatique; Analyse de données.

Page 3: Faculté des sciences Département d'informatique Mémoire de ...

Je remercie en premier notre grand Dieu pour m’avoir donné le courage et

la volonté durant les moments difficiles.

J’adresse tout d’abord mes remerciements à mon encadreur, pour avoir accepté

de m’encadrer et m’avoir aidé à conduire ce travail jusqu’au bout : Madame Safia

Nait Bahloul, maître de conférence à l’université d’Oran Es-Senia. Je souhaite lui

exprimer ma profonde reconnaissance pour sa disponibilité, son regard critique et

enfin pour la confiance qu’elle m’a accordée durant ces années.

Je souhaite également adresser mes plus sincères remerciements aux membres du

jury : Mr. Bouabdellah .Kechar, Mr. Rachid Nourine et Madame Latifa Baba

Hamed, d’avoir accepté d’évaluer mon travail de mémoire.

Je remercie aussi tous les enseignants du département d’Informatique de

l’université d’Es-Senia, en particulier Mr Mustapha Kamel Rahmouni.

Enfin, je voudrais remercier chaleureusement ma famille et belle famille qui ont

toujours cru en moi en me poussant toujours à accomplir ce que je souhaitais, ils

ont été des piliers indispensables par leur présence et leur affection.

Page 4: Faculté des sciences Département d'informatique Mémoire de ...

Table des matières

Introduction générale.................................................................................................................. 1

Chapitre I. Classification et analyse des algorithmes de clustering ....................................... 4

I.1 Introduction............................................................................................................................................ 5

I.2 La taxonomie de Jain et Dubes .............................................................................................................. 5

I.3 La classification non supervisée ........................................................................................................... 6

I.4 Application du clustering....................................................................................................................... 6

I.4.1 La segmentation................................................................................................................................. 7

I.4.2 La classification .................................................................................................................................. 7

I.4.3 L’extraction de connaissance.............................................................................................................. 7

I.5 Les principales étapes du clustering ...................................................................................................... 8

I.5.1 La préparation des données................................................................................................................. 8

I.5.2 Le choix de l’algorithme..................................................................................................................... 9

I.5.3 La validation et interprétation des résultats ...................................................................................... 12

I.6 Les méthodes du clustering.................................................................................................................. 13

I.6.1 Le clustering hiérarchique ................................................................................................................ 13

I.6.2 Le clustering par partitionnement ..................................................................................................... 17

I.6.3 Les méthodes à base de densité ........................................................................................................ 24

I.6.4 Les méthodes à base de grille ........................................................................................................... 28

I.7 Techniques d’évaluation de la qualité du clustering............................................................................ 29

I.8 Challenges actuels en classification non supervisée ............................................................................ 31

I.8.1 Problème inhérents aux données traitées ......................................................................................... 31

I.8.2 Problème inhérents à des contraintes applicatives............................................................................ 32

Chapitre II. Le clustering des données d’expression des gènes ............................................ 33

II.1 Introduction ........................................................................................................................................ 34

II.2 Contexte biologique............................................................................................................................ 35

II .2.1 Généralités et définition du transcriptome.................................................................................. 35

II.2.2 Principe des puces à ADN et analyse du transcriptome .............................................................. 37

II.2.2.1 Les puces à ADN............................................................................................................ 37

II.2.2.2 Les jeux de données issues des puces à ADN .............................................................................. 39

Page 5: Faculté des sciences Département d'informatique Mémoire de ...

Table des matières

II.3 Enjeux et objectifs de l’analyse du transcriptome .............................................................................. 41

II.4 L’importance de l’informatique pour l’analyse des données issues des puces à ADN ...................... 42

II.5 Le principe du clustering des gènes.................................................................................................... 43

II.5.1 Les prérequis du clustering des gènes ........................................................................................... 43

II.5.2 Etat de l’art des méthodes de clustering des gènes.......................................................................... 46

II .5.2.1 Les méthodes de classification hiérarchiques.......................................................................... 47

II.5.2.2 Les méthodes de classification par partitionnement ..................................................................... 49

II.5.2.3 Les méthodes de classification floues .......................................................................................... 49

II.5.2.4La classification par les réseaux de Kohonen ............................................................................... 50

II.5.2.5 Les méthodes de classification basées sur un modèle .................................................................. 50

II.5.2.6 Les méthodes de classification basées sur les graphes ................................................................ 51

II.5.2.7 Les méthodes de biclustering ....................................................................................................... 51

II.6 Les défis du clustering des gènes ....................................................................................................... 52

Chapitre III.Contribution1 : Préparation d’une plateforme pour la validation des

algorithmes de clustering.......................................................................................................... 53

III.1 Introduction....................................................................................................................................... 54

III.2 Architécture fonctionnelle................................................................................................................. 54

III.3 Le module du prétraitement ............................................................................................................ 55

III.4 Le module du clustering.................................................................................................................... 57

III.4.1 Le module du clustering hiérarchique............................................................................................ 57

III.4.2 Le module du clustering par partitionnement ................................................................................ 59

III.4.2.1 Les algorithmes des K moyenne ................................................................................................. 59

III.4.2.2 L’algorithme CLARA ................................................................................................................. 63

III.4.2.3 L’algorithme PAM...................................................................................................................... 66

III.4.2.4 L’algorithme QT ......................................................................................................................... 69

III.4.3 Le module du clustering par densité .............................................................................................. 70

III.4.4 Le module du clustering flou ......................................................................................................... 71

III.4.4.1 L’algorithme Fuzzy c means ....................................................................................................... 71

III.4.4.2 L’algorithmeFuzzy c shell........................................................................................................... 73

III.4.4.3 L’algorithme Fanny..................................................................................................................... 74

III.5 Le module de validation du clustering .............................................................................................. 76

III.5.1 La validation interne ...................................................................................................................... 76

III.5.2 La validation externe...................................................................................................................... 80

III.5.3 La validation biologique ................................................................................................................ 81

III.5 Technologies et langages de programmation .................................................................................... 83

Page 6: Faculté des sciences Département d'informatique Mémoire de ...

Table des matières

Chapitre IV.Contribution2 : Evaluation des algorithmes de clustering sur la plateforme :

cas des données numériques d’expression des gènes.............................................................. 86

IV.1 Introduction................................................................................................................................... 87

IV.2 Présentation des jeux de données.................................................................................................. 87

IV.2.1 Description des données d’Armstrong V1 et V2 ......................................................................... 88

IV.2.2 Description des données de Golub V1 et V2 ............................................................................... 89

IV.2.3 Description des données de Shipp ............................................................................................... 89

IV.2.4 Description des données de Yeoh V1 et V2 ................................................................................ 89

IV.2.5 Description des données d’Alizadeh V1 V2 V3 .......................................................................... 90

IV.3 La validation externe des données ................................................................................................ 91

IV.4 La validation interne des données............................................................................................... 101

ChapitreV.Contribution3 : Evaluation des Algorithmes de Clustering sur la Plateforme: Cas

des Images Microscopiques du Sang. .................................................................................................. 121

1. Problématique ................................................................................................................................. 122

2. Introduction à la segmentation d'images ......................................................................................... 122

3. La segmentation par clustering ....................................................................................................... 123

4. Etat de l'art des méthodes de segmentation des cellules de sang .................................................... 124

5. Notre approche de segmentation ........................................................................................................ 126

5.1. Le choix de l’espace couleur.......................................................................................................... 126

5.2. Le choix du nombre de classes....................................................................................................... 127

5.3. Algorithme général de segmentation.............................................................................................. 129

6. Résultats expérimentaux ................................................................................................................. 130

6.1. Méthodes d’évaluation .................................................................................................................... 130

6.1.1 L’indice de précision................................................................................................................... 130

6.1.2 Mesures d’erreurs de classification ............................................................................................. 131

6.1.3 Le temps d’execution des algorithmes ........................................................................................ 132

6.2. Description des images utilisées ..................................................................................................... 132

6.3. Evaluation des résultats................................................................................................................... 132

6.3.1 Discussion ................................................................................................................................... 135

Conclusion et perspectives. .................................................................................................................. 136

Références bibliographiques. .............................................................................................................. 138

Page 7: Faculté des sciences Département d'informatique Mémoire de ...

Clustering pour les bases de données

1

En Avril 2003, Le Consortium international de séquençage du génome humain (IHGSC 1 )

annonçait l’achèvement du Projet « Génome Humain ». La majorité des gènes humains était

identifiée, les conséquences scientifiques et médicales du séquençage des génomes sont

considérables : compréhension du fonctionnement et de l’évolution des organismes, diagnostic

génétique et thérapie génique, nouveaux médicaments…Pourtant, L’achèvement du séquençage

du génome humain correspond plutôt au début d’une aventure qu’à l’avènement d’une

connaissance. En effet, la caractérisation de ces gènes, leurs fonctions et leurs interactions sont à

ce jour encore très mal connues.

Les puces à ADN, ou microarray, se révèlent être un outil puissant de biologie moléculaire, elles

permettent de mesurer simultanément et quantitativement l’expression de plusieurs milliers de

gènes Le principe de base est de comparer le transcriptome, c’est `a dire la quantité d’ARN

transcrit pour chaque gène dans des cellules témoins au transcriptome de cellules traitées.

Le rapport obtenu pour chaque gène permet de mesurer son expression. L’´etude simultanée de

ces expressions peut donner une information riche sur la fonction des gènes et sur leur interaction.

Etant donné le volume important des données considérées, l’analyse nécessite l’utilisation de

techniques de fouille de données.

Une des approches utilisée est la classification non supervisée (clustering en Anglais) de profils

d’expression de gènes. Cette approche est basée sur l’idée que des gènes co-exprimés participent à

une même fonction biologique [EIS 98], on cherche par des méthodes de classification non

supervisée à mettre en lumière des groupes de gènes co-exprimés. Ainsi, le principe est,

idéalement, à partir de données dont on ne sait rien et sur lesquelles on ne fait aucune hypothèse,

d'obtenir des informations pertinentes, et à partir de celle-ci de découvrir de la connaissance, qui

permettra au médecin ou au biologiste de mieux comprendre, analyser et prédire.

Une méthode de classification non supervisée, pourquoi ?

La classification non supervisée comme son nom l’indique, consiste à apprendre sans superviseur.

A partir d’une population il s’agit d’extraire des classes ou groupes d’individus présentant des

1http://www.ornl.gov/sci/techresources/Human_Genome/home.shtml

Page 8: Faculté des sciences Département d'informatique Mémoire de ...

Clustering pour les bases de données

2

caractéristiques communes. Elle possède l’avantage de ne pas nécessiter la détermination

préalable de nombre de clusters recherchésLa classification non supervisée fut dans un premier

temps utilisée dans les domaines d’application suivants :

La médecine : découverte de classes de patients présentant des caractéristiques

physiologiques communes ;

Le traitement de la parole : construction de systèmes de reconnaissance de l’orateur ;

L’archéologie : regroupement d’objets datant de l’âge de fer à partir de leur description ;

L’éducation : structuration d’une classe d’ouvriers dans le domaine de l’industrie

dutéléphone à partir de leurs besoins communs de formation.

Présentation du problème :

Dans ce contexte, les objectifs du mémoire ont été les suivants :

-La conception et l’implémentation d’un outil pour l’analyse de données des expressions des

gènes facilement exploitable par les médecins ou biologistes en se focalisant principalement sur

les méthodes de clustering.

-L’application les diverses techniques de la classification non supervisée aux données publiques

hématologiques.

-Comprendre quels sontAu regard des différentes stratégies de clustering applicables à l’analyse

de donnéestranscriptomiques, les algorithmesles plus à même à apporter des réponses pertinentes

aux questions du médecin ou du biologiste.Nous verrons que chaque méthode et, plus

précisément, chaque paramètre (distance, transformation...) apporte un point de vue différent sur

les données.Comment juger alors de la qualité du résultat ? Etant donnée la complexité des

données, aucune structure claire et évidente ne ressort généralement.Sur quel critère juger le

résultat, qui sera ensuite utilisé comme point de départ pour d’autres expériences biologiques ?

Ledéfi consiste donc à conduire ces choix en conscience, compte tenu de leurs limites et de leur

interprétationbiologique qui en est faite, afin de déterminer la technique, ou l’optique, qui offre

lareprésentation la plus stable et éclairante au biologiste. Ces jugementss’appuient sur des

méthodes rigoureuses de validation statistiques et biologique.

-Localisation des gènes responsables des pathologies étudiées.

Page 9: Faculté des sciences Département d'informatique Mémoire de ...

Clustering pour les bases de données

3

Organisation du mémoire :

Nous présentons tout d’abord dans le chapitre1un tour d’horizon des méthodes de classification

non supervisée en les divisant en plusieurs familles (hiérarchique, par partition, par la densité, par

la grille,…). Pour chaque technique, nous citons les algorithmes les plus utilisés et nous citons

pour chacun ces points forts et ces points faibles.

Puisle chapitre2est une introduction au contexte biologique, à la technologie des puces à ADN et

la production de données en masse, avec une fiabilité de plus en plus grande. En montrant la

nécessité du recours aux méthodes informatiques en particulier les algorithmes de clustering pour

gérer, analyser, exploiter cette pléthore de données. Nous abordonsune étude bibliographique sur

les principales méthodes de classification non supervisée utilisées pour la mise en évidence des

groupes de gènes et/ou des échantillons suivant leur profil d’expression.Plusieurs travaux sont

présentés pour comprendre les différents problèmes qui cherchent à être résolus ainsi que

l’évolution de la recherche dans ce domaine récent.

Le chapitre 3décrit les procédures que nous avons mis en place et la plateforme informatique que

nous avons développé pour le traitement et l’analyse statistique des données issues des puces à

ADN ainsi que des méthodes d’évaluations et de comparaisons des différents algorithmes.

Dans lechapitre 4 nous avons mis en œuvre notre plateforme pour l’étudede dix jeux de données

réels parmi lesquelles sont identifiées les leucémies (cancer du sang) tous types confondus cités

largement dans la littérature.

Lechapitre 5 à été introduit dans le mémoire décrivant nos travaux de recherche actuels sur les

images microscopiques en utilisant les algorithmes de clustering.

Enfin dans la conclusion, nous résumons les différentes méthodes développée pour résoudre le

problème initialement posé et donnons quelques perspectives pour continuer ce travail.

Page 10: Faculté des sciences Département d'informatique Mémoire de ...
Page 11: Faculté des sciences Département d'informatique Mémoire de ...

Chapitre1. Classification et analyse des algorithmes de clustering

5

I.1 Introduction :

La classification de données est une problématique de recherche étudiée depuis de nombreuses

années dans différentes communautés. En effet on attribue les premières recherches théoriques sur

la classification aux besoins exprimés par les biologistes de spécifier des classes ou espèces

animales. Progressivement, d’autres applications sont apparues. Après les biologistes, c’est les

historiens, les médecins, les sociologues ou les didacticiens qui ont manifesté le besoin de classer

leurs reliques, leurs patients ou leurs élèves.

Aujourd’hui, en nous intéressant aux problèmes issus des technologies de l’information et de la

communication, nous sommes amenés à traiter des données très complexes, par leur nature, leur

taille, leur provenance, leur diversité. Ces données peuvent être, par exemple, du texte, des

images, des séquences vidéo et tout support combinant ces différents types de données.

I.2 La taxonomie de Jain et Dubes[JAN 88] :

Plusieurs familles de méthodes de classification ont vu le jour. La figure suivante présente les

différents types de méthodes regroupés sous forme d’une hiérarchie par Jain et Dubes. Nous

donnons ici un rapide descriptif de ces méthodes :

-Classification exclusive/non exclusive. Une méthode est dite exclusive si un objet ne peut être

affecté qu’à une seule classe dans la partition finale. Dans le cas contraire, un objet peut appartenir

à plusieurs classes simultanément, éventuellement avec des degrés d’appartenance qui indique

pour chacune des classes, la probabilité que l’objet considéré y appartienne : on parle alors de

classification floue.

-On distingue ensuite deux types de traitement : la classification supervisée et non supervisée.

Dans le premier cas, il s’agit de déterminer une procédure de classement de nouveaux objets

parmi un ensemble de classes prédéfinies. La classification non supervisée, comme son nom

l’indique, consiste à apprendre sans superviseur, à partir d’une population, il s’agit d’extraire des

classes ou groupes d’objet présentant des caractéristiques communes, le nombre et la définition

des classes n’étant pas donnés à priori.

Page 12: Faculté des sciences Département d'informatique Mémoire de ...

Chapitre1. Classification et analyse des algorithmes de clustering

6

-Enfin, on distingue les deux grandes familles d’approches, l’approche par partitionnement qui ne

construit qu’une seule partition des données, alors que l’approche hiérarchique construit une

séquence de partitions imbriquées.

Figure .1. Taxonomie de la classification de Jain et Dubes[JAN 88].

La suite de ce chapitre est consacrée aux méthodes de classification développées pour traiter leproblème de la classification non supervisée.

I.3 La classification non supervisée :

Depuis les années 1990, on peut considérer que la classification non supervisée (« Clustering » en

Anglais) constitue un sujet de recherche incontournable en apprentissage, émanant d’une

problématique plus générale, à savoir la classification.Son objectif, très général, consiste à séparer

un ensemble d’objets en différents groupes (ou Clusters) en fonction d’une certaine notion de

similarité. Les objets qui sont considérés comme similaires sont ainsi associés au même cluster

alors que ceux qui sont considérés comme différents sont associés à des clusters distincts.

I.4 Applications du Clustering :

Selon l’application envisagée pour leClustering, les considérations ne sont pas les mêmes, et la

définition même de l’intérêt d’une solution peut varier. Par exemple, lorsque l’objectif est de

réduire la taille d’un jeu de données pour un traitement plus efficace, alors une solution est jugée

optimale lorsqu’elle minimise la perte d’information liée à une telle compression des données. Si

le clustering est utilisé sur des bases de données de clients dans le but de faire émerger des

groupes de clients aux comportements différents, alors le critère de qualité d’un résultat est

principalement basé sur une séparation importante des groupes formés.

Page 13: Faculté des sciences Département d'informatique Mémoire de ...

Chapitre1. Classification et analyse des algorithmes de clustering

7

Il existe de nombreuses applications possibles au Clustering, que l’on peut classer en trois groupes

principaux [BER 02] :

1. La segmentation.

2. La classification.

3. Et l’extraction de connaissance.

I.4.1 La segmentation : a pour objectif principal de réduire la taille de l’ensemble des données

d’une base de données considérée. On parle dans ce cas de « Condensation » ou de

« Compression des données». Elle est utilisée également pour « discrétiser » une base de données,

c'est-à-dire transformer la description complexe des objets par un unique attribut caractérisant leur

appartenance à une classe identifiée automatiquement. Les applications principales de telle

technique concernent : l’identification des différents sous-espaces homogènes pouvant exister

dans des bases de données pour aider à l’indexation efficace de telles bases ; la segmentation

d’images, afin d’identifier les différentes zones homogènes de l’espace décrit (les maisons, routes,

fleuves, etc.).

I.4.2 La classification :concerne l’identification des sous populations ayant des caractéristiques

proches.Dans les bases de données clients, par exemple, l’objectif principal est d’établir des

profils de clients aux comportements similaires, afin de comprendre leurs attentes et leurs besoins

en fonction de leur profil. De telles informations permettent alors d’adapter les actions marketing

envers les clients en fonction de leur appartenance à une population donnée. Les applications

principales de telles techniques concernent donc la gestion de la relation client, que ce soit dans la

grande distribution, les banques, les assurances, les fournisseurs d’énergie, les opérateurs

téléphoniques, les transports, les médias, les navigateurs web, etc. Cela peut également être

appliqué aux cas des journaux en ligne ou des forums par exemple.

I.4.3 L’extraction de connaissance : contrairement aux deux méthodes précédentes, l’utilisation

du Clustering n’a pas d’objectif préétabli. Il s’agit dans ce cas d’aider à la compréhension de la

structure des données en les organisant en groupes homogènes et en faisant ainsi émerger certains

sous concepts dans les données. On parle dans ce cas de génération d’hypothèses ou de

modélisation prédictive, par l’inférence de règles caractérisant les données, et la suggestion de

modèles sous jacents à ces données. L’intérêt de telles techniques est par exemple avéré pour

effectuer des diagnostics médicaux sur des bases de données de patients, en ciblant par exemple

Page 14: Faculté des sciences Département d'informatique Mémoire de ...

Chapitre1. Classification et analyse des algorithmes de clustering

8

différents groupes de patients atteints d’une maladie donnée, reflétant ainsi différentes causes

possibles pour la maladie. De même, cette technique peut être utilisée en analyse du web, en

analyse des données textuelles, en analyse de ventes, en bioinformatique,en analyse génétique,

etc.

I.5 Les principales étapes du Clustering :

La classification, bien que primordiale dans toutes les applications citées précédemment, n’est pas

la seule phase à considérer avec attention lors du développement d’un outil d’extraction et

d’analyse de l’information. En effet, le processus declusteringse divise en trois étapes principales

(voir la figure 2) : (1) La préparation des données, (2) Le choix de l’algorithme de clustering et

(3) validation et interprétation des résultats [CLE 04].

Figure .2. Les différentes étapes du processus de clustering.

I.5.1 La préparation des données : l’étape de prétraitement consiste à filtrer les informations, ne

conserver que ce qui est pertinent dans le contexte de l’étude, et coder ces données pour ne retenir

que les paramètres de description les plus discriminants. Ce débruitage est nécessaire pour pouvoir

donner un sens aux résultats obtenus à l’issue de la classification des données.

Page 15: Faculté des sciences Département d'informatique Mémoire de ...

Chapitre1. Classification et analyse des algorithmes de clustering

9

I.5.2 Lechoix de l’algorithme:

Le choix de l’algorithme de clustering doit donner lieu à une analyse globale du problème : quelle

est la nature (qualitative et quantitative) des données ? Quelle est la nature des clusters attendus

(nombre, forme, densité, etc.) ? L’algorithme doit alors être choisi de manière à ce que ses

caractéristiques répondent convenablement à ces deux dernières questions. Les critères de

décision peuvent être : les connaissances à priori, la présentation des résultats, complexité,

déterministe, incrémental, any time, hard, prise en compte du contexte, tolérance au bruit,

tolérance à l’effet de chaîne, tolérance aux clusters de tailles variées, tolérance aux clusters de

forme quelconque, tolérance aux clusters concentriques [CAN 06].

-Les connaissances à priori :sont un premier critère important à prendre en compte dans le choix

de l’algorithme ; il s’agit souvent d’informations concernant le nombre de clusters recherchés, la

distance minimale entre clusters disjoints, ou la densité minimale à l’intérieur des clusters ;

-La présentation des résultats : on peut différencier les algorithmes fournissant en sortie une

hiérarchie de clusters des méthodes fournissant en sortie une partition de l’ensemble des objets ;

-La complexité : est également un critère important à considérer ; en particulier, il est admis que la

complexité des algorithmes doit être linéaire en fonction du nombre d’objets dans le cas de larges

bases de données ; il faut dès lors éviter tout algorithme basé sur le calcul des distances deux à

deux entre objets, menant à une complexité quadratique en fonction du nombre d’objets ;

-Déterminisme : avec les mêmes données en entrée, un algorithme déterministe exécutera toujours

la même suite d’opérations et fournira donc toujours le même résultat alors qu’un algorithme

stochastique pourra donner des résultats différents car il permet l’exécution d’opérations

aléatoires ;

-Incrémentation : est la capacité d’un algorithme de traiter des données de façon incrémentale,

c'est-à-dire en les intégrant au fur et à mesure de leur arrivée dans l’algorithme ; à l’inverse, un

algorithme non incrémental va considérer un ensemble de données fournies en entrée et sera

exécuté sur cet ensemble de données, et si par la suite une nouvelle données devait être fournie en

entrée de l’algorithme, celui-ci devrait être relancé à nouveau ;

-Un algorithme « any-time » : est capable de fournir un résultat intermédiaire, à n’importe quel

moment du déroulement de l’algorithme, des algorithmes nécessitant l’accomplissement total de

l’algorithme avant d’être capable de fournir un résultat ;

-Un algorithme hard : on distingue les algorithmes hard qui associent à chaque objet un unique

cluster, des algorithmes soft qui associent à chaque objet un degré variable d’appartenance à

chacun des clusters formés.

Page 16: Faculté des sciences Département d'informatique Mémoire de ...

Chapitre1. Classification et analyse des algorithmes de clustering

10

-Prise en compte du contexte : est la capacité des algorithmes à prendre en compte ou non la

problématique du contexte ; autrement dit, on distingue à ce niveau les algorithmes de subspace

clustering des algorithmes de clustering traditionnel ;

-Latolérance au bruit : est la capacité d’un algorithme de gérer le bruit qui peut exister dans les

données, c'est-à-dire la possible présence d’objets qui ne suivent pas la distribution générale des

autres objets ;

-La tolérance à l’effet de chaîne :il s’avère utile qu’un algorithme soit capable de faire face au

problème de l’effet de chaîne, illustré par la figure3 et qui fait que des clusters proches mais

distincts peuvent être fusionnés s’il existe une chaîne d’objets qui les relie ;

-La tolérance aux clusters de tailles variées il s’avérer important qu’un algorithme soit capable de

détecter le type de clusters ; en particulier ; les clusters de tailles ou de densités variées, comme

dans le cas de la figure4.

-La tolérance aux clusters de forme quelconque et concentriques :est la capacité d’un algorithme

d’identifier des clusters de forme quelconque, et aussi éventuellement des clusters concentriques,

c'est-à-dire inscrits les uns dans les autres, comme dans le cas de la figure5.

Figure .3. Problématique de l’effet de chaîne.

Page 17: Faculté des sciences Département d'informatique Mémoire de ...

Chapitre1. Classification et analyse des algorithmes de clustering

11

Figure .4. Problématique des clusters de tailles et de densités variées.

Figure .5. Problématique des clusters de formes variées et concentriques.

Page 18: Faculté des sciences Département d'informatique Mémoire de ...

Chapitre1. Classification et analyse des algorithmes de clustering

12

I.5.3Validation et interprétation des résultats :

Cette phase est dépendante de l’ensemble de la chaîne en amont. Plus les sources de données sont

de bonne qualité et plus il sera aisé d’interpréter les résultats de la classification. De la même

manière, ces résultats seront d’autant moins fiables ou crédibles que les informations à la base

étaient bruitées ou corrompues.

Deux situations sont possibles : soit la tâche de clustering s’inscrit dans un traitement global

d’apprentissage, soit les clusters générés par le clustering constituent un résultat final.Dans le

premier cas, l’analyse des clusters obtenus (mesures statistiques de qualité) peut aider à orienter le

traitement suivant et une description des clusters n’est pas nécessaire dans cette situation. En

revanche, dans le cas où le clustering constitue à lui seul un processus global de découverte de

classe, l’exploitation des clusters pour une application donnée passe par une description de ces

derniers.

En pratique, il existe quatre méthodes principales pour mesurer la qualité des résultats

d’algorithmes de clustering :

-L’utilisation des données artificielles : pour les quelles le regroupement attendu est connu, et

comparer les résultats obtenus aux résultats attendus. On parle dans ce cas d’évaluation externe.

Mais les méthodes sont alors évaluées uniquement sur les distributions spécifiques

correspondantes, et les résultats sur données artificielles ne peuvent pas être généralisés aux

données réelles.

-L’utilisation des jeux de données étiquetés : utiliser des jeux de données étiquetés et observer si

la méthode retrouve les classes initiales. Mais les classes d’un problème supervisé ne

correspondent pas nécessairement aux groupes qu’il est pertinent d’identifier pour une méthode

non supervisée, d’autres regroupements pouvant être plus appropriés.

-L’utilisation des critères numériques : tels l’inertie intra clusters ou la séparation inter clusters.

On parle dans ce cas d’évaluation interne. Mais de tels critères ont une part importante de

subjectivité car ils utilisent des notions prédéfinies de ce qu’est un bon clustering. Par exemple, la

séparation des clusters n’est pas toujours un bon critère à utiliser car parfois, des clusters qui se

chevauchent peuvent être plus pertinents.

-L’utilisation d’un expert :pour évaluer le sens d’un clustering donné dans un champ d’application

spécifique

Page 19: Faculté des sciences Département d'informatique Mémoire de ...

Chapitre1. Classification et analyse des algorithmes de clustering

13

I.6Les méthodes du Clustering :

Dans cette partie, nous dressons un panorama des différentes méthodes de clustering rencontrées

dans la littérature, nous ne prétendons pas faire une liste exhaustive de l’ensemble des notions et

méthodes existant dans le cadre du clustering, mais plutôt de donner un aperçu général du

fonctionnement des différentes méthodes avec chacune ses atouts et ses limites. Il est ainsi admis

dans la communauté travaillant sur le clustering qu’aucun critère ni aucune méthode ne sont

intrinsèquement meilleurs que d’autres sur l’ensemble des problématiques envisageables. Par

contre, on considère que certaines méthodes sont plus adaptées que d’autres en fonction de

l’application ciblée.

On distingue classiquement deux grandes familles de méthodes en clustering :

Les méthodes hiérarchiques.

Les méthodes par partition.

Dans le premier cas, une hiérarchie de clusters est formée de telle manière que plus on descend

dans la hiérarchie, plus les clusters sont spécifiques à un certain nombre d’objets considérés

comme similaires. Au contraire, dans le second cas, le résultat fourni est une partition de l’espace

des objets, c'est-à-dire que chaque objet est associé à un unique cluster.

I.6.1 Le clustering hiérarchique :

Le fondement du clustering hiérarchique est de construire une hiérarchie de clusters (ou

dendrogramme) tel que présenté en figure 6 et formalisé par la définition suivante :

La racine de l’arbre est formée par le cluster X contenant l’ensemble des objets, Chaque nœud de l’arbre constitue un cluster Ci X,

Les feuilles de l’arbre correspondent aux singletons 1x , ..., Nx ,

L’union des objets contenus dans les fils d’un nœud donné correspondent aux objetsprésents dans ce nœud,

Les « Paliers » sont indicés relativement à l’ordre de construction.

Afin de parvenir à un tel arbre hiérarchique, il existe deux méthodes principales :

La méthode ascendante (agglomérative ou Bottom up) :

Construit l’arbre du « bas » vers le « haut » en démarrant avec autant de clusters que d’objetsinitiaux dans la base, puis fusionnant successivement les clusters considérés comme les plussimilaires, jusqu’à obtenir un unique cluster « racine », contenant l’ensemble des objets.

Page 20: Faculté des sciences Département d'informatique Mémoire de ...

Chapitre1. Classification et analyse des algorithmes de clustering

14

La méthode descendante (divisive, Top down) :

Construit l’arbre du « haut » vers le « bas » en démarrant avec un unique cluster contenant

l’ensemble des objets de la base, puis divisant successivement les clusters de manière à ce que les

clusters résultants soient les plus différents possibles, et ce jusqu’à obtenir des singletons (autant

de clusters que d’objets dans la base).

Ensuite, une fois la hiérarchie formée, une étape optionnelle peut être ajoutée pour affiner le

résultat. Il s’agit de déterminer le niveau L de coupure le plus approprié à appliquer dans l’arbre

pour un regroupement des données aussi pertinent que possible. Par exemple, le choix du niveau

de coupure (L=4) dans le dendrogramme de la figure 6 renvoie le partitionnement suivant :

C= 654321 ,,,,, xxxxxx

. Ce dernier paramètre « L » peut être choisi relativement au nombre

de clusters désirés ou à l’aide d’une analyse statistique de la qualité des différentes partitions que

l’on peut extraire de l’arbre.

Figure .6. Exemple de dendrogramme.

Page 21: Faculté des sciences Département d'informatique Mémoire de ...

Chapitre1. Classification et analyse des algorithmes de clustering

15

Les critères d’agrégation :

La classification hiérarchique initialise un système de classe comme un ensemble de singletons

(dans le cas agglomératif) ou comme un seul cluster qui contient toutes les données (dans le cas

divisif) et procède itérativement par fusion ou éclatement des clusters les plus adéquats jusqu’à ce

qu’un critère d’arrêt soit satisfait. La concordance d’un cluster pour la fusion/éclatement dépend

de la (dis) similarité des éléments du cluster. Cela reflète l’hypothèse générale que les clusters

contiennent des objets similaires. Pour fusionner/éclater des ensembles d’objets plutôt que des

objets à part, on doit généraliser la distance entre des objets individuels à la distance entre sous

ensembles. De telles mesures de proximité désirées, sont appelées critères d’agrégation ou critères

du lien (en anglais linkage metrics).

De nombreux critères d’agrégation ont été proposés, la difficulté du choix du critère d’agrégation

réside dans le fait que ces critères peuvent déboucher sur des résultats différents. Les plus connus

sont :

Le critère du saut minimal : (Single link)

Pour single link, la distance entre deux clusters est le minimum des distances entre toutes lespaires d’objets appartenant à des clusters différents. La distance entre 2 clusters C1 et C2 estdéfinie par la plus courte distance séparant un individu de C1 et un individu de C2 :

212,1 ,,,min CyCxyxdCCD

Le critère du saut maximal: (Complete link)

Pour la méthode complete link, on utilise le maximum de ces distances ; la distance entre 2 classesC1 et C2 est définie par la plus grande distance séparant un individu de C1 et un individu de C2 :

212,1 ,,,max CyCxyxdCCD

Le critère de la moyenne: (Average link)

Pour la méthode average link, on utilise la moyenne de ces distances ; ce critère consiste à calculerla distance moyenne entre tous les éléments de C1 et tous les éléments de C2 :

1 221

,1

2,1 Cx CyCC

yxdnn

CCD

Avec : nC1 est le cardinal de C1 et nC2 est le cardinal de C2.

Le critère de Ward :

Le critère de Ward consiste à choisir à chaque étape le regroupement de classes tel quel’augmentation de l’inertie intra classe soit minimal. Il ne s’applique que dans un espaceEuclidien. La distance entre deux classes C1 et C2 est définie par :

2122

2,1 ,21

1 gcgcdnn

nnCCD

CC

cc

Page 22: Faculté des sciences Département d'informatique Mémoire de ...

Chapitre1. Classification et analyse des algorithmes de clustering

16

Avec : gc1 est le centre de gravité de C1 et gc2 le centre de gravité de C2

Le critère des centres de gravité :La distance entre deux classes C1 et C2 est définie par la distance entre leurs centres de gravitécomme suit :

212,1 , gcgcdCCD

Il y a de nombreux algorithmes de type hiérarchique qui sont proposés dans la littérature, les plusconnus sont : BIRCH pour le groupement agglomératif et DIANA pour le groupement divisif. Ilexiste très peu d’algorithmes divisifs, notamment à cause de la difficulté à définir un critère de

séparation d’un cluster. En effet pour un cluster de taille n, il y a 12 1 npossibilités pour diviser

ce cluster en deux sous clusters. Dans le cas agglomératif, chaque fusion de deux clusters parmi n,

offre seulement

2

1nn

possibilités.

Avantages des méthodes hiérarchiques:

Une fléxibilité concernant le niveau de granularité. La facilité de manipulation de toute forme de similarité ou de distance entre objets. Applicable aux différents types d’attributs.

Inconvénients des méthodes hiérarchiques:

Bien que ces méthodes soient largement utilisées, elles deviennent difficilement utilisablesface à de larges bases de données, car la complexité est quadratique en fonction du nombred’objets de la base, puisque les distances entre toutes les paires d’objets possibles doiventêtre calculées.

Elles ne peuvent pas être utilisées de façon incrémentale, puisque les distances entre toutesles paires d’objets possibles doivent être calculées.

Elles ne peuvent pas être utilisées de façon incrémentale, puisque ces méthodes ne peuventjamais défaire ce qu’elles ont déjà fait auparavant.

Elles souffrent du problème de « l’effet de chaîne », c'est-à-dire que les clusters prochesmais distincts peuvent être fusionnés s’il existe une chaîne d’objets qui les relie.

Le choix du critère d’arrêt qui reste vague.

Page 23: Faculté des sciences Département d'informatique Mémoire de ...

Chapitre1. Classification et analyse des algorithmes de clustering

17

I.6.2 Le clustering par partitionnement :

Contrairement aux méthodes de classification hiérarchiques précédentes,qui construisent les

classes progressivement, les algorithmes de partitionnement construisent directement, en sortie,

une partition de l’espace des objets en k classes. Le principe général, par définition d’une

partition, cela signifie que chaque classe doit contenir au moins un objet, et que chaque objet doit

appartenir à une classe unique. Pour ce faire, étant donné le nombre de classes k requises, ces

algorithmes génèrent une partition initiale, puis cherchent à l’améliorer en réattribuant les objets

d’une classe à une autre. En pratique il est impossible de générer toutes les partitions de clustering

pour des raisons évidentes de complexité. On cherche alors une « bonne » partition correspondant

à un optimum local en optimisant une fonction objectif qui traduit que les objets doivent être

« similaires » au sein d’une même classe, et « dissimilaires » d’une classe à une autre. Cet

optimum est obtenu de façon itérative, en améliorant la partition initiale choisie plus ou moins

aléatoirement, par réallocation des objets autour de centres mobiles. Les classes sont représentées

par leur « centroïdes », qui correspond à la moyenne de l’ensemble des objets contenus dans la

classe. La méthode la plus classique et qui reste très utilisée est celle des k-means et les

nombreuses variations qui en découlent.

Les méthodes des k-moyennes :

L’algorithme k-means, ou l’algorithme des k-moyennesa été introduit par J.MacQuenn. Il est sans

aucun doute la méthode de partitionnement la plus connue et la plus utilisée dans divers domaines

d’application scientifiques et industrielles. Ce succès est dû au fait que cet algorithme présente un

rapport coût/efficacité avantageux. Dans sa version classique, l’algorithme consiste à sélectionner

aléatoirement k objets qui représente les centroïdes initiaux. Un objet est assigné au cluster pour

lequel la distance entre l’objet et le centroïde est minimale. Les centroïdes sont alors recalculés et

l’on passe à l’itération suivante.

La fonction objectif traditionnellement utilisée est :

2

1

k

rcx

ri

ri

gxF

Où : Cr est la classe numéro r Xi est un objet dans une classe

gr est le centre de classe Cr

Page 24: Faculté des sciences Département d'informatique Mémoire de ...

Chapitre1. Classification et analyse des algorithmes de clustering

18

La figure 7montre un exemple de déroulement de l’algorithme k-means sur un nuage d’objetsbidimensionnels, avec k=3 :La figure 7.a : choix aléatoire de trois centre initiaux (objets) marqués par (+) et affectation dechaque objet restant au centre le plus proche ;

La figure 7.b : calcul du nouveau centre pour chaque classe (moyenne des objets de la classe) etredistribution des objets selon les nouveaux centres ;

La figure 7.c : le processus est répété jusqu’à stabilité des classes.

Figure .7.Partitionnement basé sur k-means.

L’algorithme général de ces méthodes :

L'algorithme des k-means ne peut être utilisé que sur des données décrites par des attributs

numériques permettant ainsi le calcul des centroïdes. Dans le cas d'attributs symboliques (ou

catégoriels) plusieurs variantes ont été proposées : méthodes des centres mobiles et méthodes des

nuées dynamiques.

Données : k le nombre maximum de classes désiré.

Début

(1) Choisir k objets au hasard (comme centre des classesinitiales)

(2) Affecter chaque objet au centre le plus proche(3) Recalculer le centre de chacune de ces classes(4) Répéter l’étape (2) et (3) jusqu’à stabilité des centres(5) Editer la partition obtenue.

FIN

Page 25: Faculté des sciences Département d'informatique Mémoire de ...

Chapitre1. Classification et analyse des algorithmes de clustering

19

L’algorithme des centres mobiles:

L’auteur de cette méthode est Forgy en 1965 [FOR 65], le principe de l’algorithme consiste à

construire une partition en k classes en sélectionnant k objets au hasard de l’ensemble des objets et

les considérer comme centres des classes. Après cette sélection, on affecte chaque objet au centre

le plus proche en créant k classes, les centres des classes seront remplacés par des centres de

gravité. Ainsi des nouvelles classes seront crées. Généralement la partition obtenue est localement

optimale car elle dépend du choix initial des centres. Pour cette raison, les résultats entre deux

exécutions de l’algorithme sont significativement variés.

Avantages des k-moyennes:

Comme avantages de cet algorithme, on cite : Grande simplicité. Compréhensible. Les classes sont facilement interprétables et représentées naturellement par les centroïdes. Il s’adapte bien pour des populations de grandes tailles. Complexité algorithmique est intéressante, puisqu’elle est en nkt où t est le nombre

d’itérations, n le nombre d’objets et k le nombre de classes. L’algorithme converge, généralement, avec k et t suffisamment inférieur à n (k, t<<n).

Inconvénients des k-moyennes:

Parmi les inconvénients de cet algorithme, on cite : Le nombre de classes doit être fixé au départ. Le résultat dépend du tirage initial des centres des classes. Il ne détecte pas les données bruitées (isolées). Il converge souvent vers un optimum local.

Données : k le nombre maximum de classes désiré.

Début

(1) Choisir k objets au hasard (comme centre des classesinitiales)

(2) Affecter chaque objet au centre le plus proche, ce quidonne une partition en k classes P1= {C1,…,Ck}

(3) On calcule les centres de gravité de chaque classe deP1, ce qui donne k nouveaux centres de classes

(4) Répéter l’étape 2 et 3 jusqu’à ce que deux itérationssuccessives donnent la même partition

(5) Editer la partition obtenue.

FIN

Page 26: Faculté des sciences Département d'informatique Mémoire de ...

Chapitre1. Classification et analyse des algorithmes de clustering

20

Il est applicable seulement dans le cas où la moyenne des objets est définie. Il n’est pas adapté pour découvrir des classes avec des structures non convexes, et des

classes de tailles et formes différentes.

Les méthodes des k-médoïdes :

Les méthodes des k-médoïdes se différencient de la méthode des k-moyennes par l’utilisation de

médoïdes plutôt que des centroïdes pour représenter les classes. L’esquisse de ces méthodes

ressemble à celle des k-moyennes sauf que, contrairement à l’algorithme k-means où la classe est

représentée par une valeur moyenne, le centroïde, dans l’algorithme k-medoïdes une classe est

représentée par un de ses objets prédominants, le médoïde. L’algorithme a été introduit

initialement par Kaufman et Roussew, c’est un algorithme itératif combinant la réaffectation des

objets dans des classes avec une intervention des médoïdes et des autres objets.

La figure 8 est une illustration du déroulement de l’algorithme k-médoïdes sur un nuage d’objetsbidimensionnels avec k=3 :

Figure .8. Partitionnement basé sur k-médoïdes.

La figure 8.a : choix des trois centres initiaux marqués par une couleur rouge et affectation de

chaque objet restant au centre le plus proche ;

La figure 8.b : calcul des nouveaux médoïdes pour chaque classe et redistribution des objets selon

les nouveaux médoïdes (le médoïde étant l’objet le plus proche du centroïde de la classe) ;

La figure 8.c : le processus est répété jusqu’à stabilité des classes.

Avantages des méthodes k-médoïdes :

Comme avantages de ces méthodes par rapport à k-means, on cite :

C’est des méthodes simples parce qu’elles couvrent n’importe quel type de variables. Elles sont insensibles aux objets isolés ou erronées. Flexibles avec tout type de distance.

Page 27: Faculté des sciences Département d'informatique Mémoire de ...

Chapitre1. Classification et analyse des algorithmes de clustering

21

Inconvénients des méthodes k-médoïdes :

Nécessitent de spécifier le nombre de clusters k. La recherche des médoïdes étant plus coûteuse que le simple calcul de centroïdes. La

complexité de chaque itération est en 2knk .Des extensions de l’algorithme k-

médoïdes ont été proposées dans le cas du traitement de larges ensembles de données.Pour améliorer la qualité de clustering de l’algorithme k-médoïdes, de nombreuses variantes s’ysont succédées, nous présentons ici quelques versions des méthodes des k-médoïdes :

PAM CLARA CLARANS

L’algorithme PAM:

PAM (Partitioning Around Medoids) a été développé par Kaufman et Rousseeuw en 1987[ROU

87]. L’idée principale de cet algorithme consiste à commencer avec un ensemble de k médoïdes

puis échanger le rôle entre un objet médoïde et un non-médoïde si l’échange permet de réduire la

distance globale. Les principales étapes de l’algorithme PAM sont comme suit :

Avantage de l’algorithme PAM:

L’avantage de cet algorithme est qu’il est plus robuste que les méthodes k-means enprésence de bruit.

Inconvénients de l’algorithme PAM:

l’inconvénient majeur de cet algorithme vient de la complexité quadratique des calculs del’ordre de 2

knk pour chaque itération ce qui est plus coûteux en cas de k et nassez grand. Ce qui conduit à dire que l’algorithme est intéressant et efficace en cas dedonnées de petite taille.

L’algorithme CLARA:

L’algorithme CLARA (Clustering LARge Application) a été introduit par Kaufman et

Rousseeuwen 1990[ROU 90] dans le but de réduire le coût de calcul de PAM et pour traiter des

données de taille moyenne ou grande.

Cet algorithme travaille sur des échantillons, il effectue une recherche locale des représentants en

opérant sur plusieurs échantillons de données, ensuite l’algorithme PAM sera appliqué à chacun

d’entre eux et le résultat obtenu est le meilleur parmi les différents résultats. Les points de

l’échantillon total sont alors affectés aux représentants résultants. L’algorithme est, généralement,

exécuté sur plusieurs échantillons pour obtenir le meilleur résultat. Les auteurs montrent, suite à

leurs expérimentations, que la taille d’un échantillon de (40+2k) où k étant le nombre de classes,

donne un bon résultat.

Page 28: Faculté des sciences Département d'informatique Mémoire de ...

Chapitre1. Classification et analyse des algorithmes de clustering

22

Les principales étapes de l’algorithme CLARA sont comme suit :

Inconvénients de l’algorithme CLARA:

Paramètre d’échantillonnage choisi expérimentalement, Le principal inconvénient de l’algorithme CLARA, outre les difficultés d’échantillonnage,

est que si un objet qui serait le meilleur médoïde n’apparaît dans aucun échantillon, alorsla meilleure solution ne pourra jamais être atteinte.

Exploration réduite de l’espace de recherche.

L’algorithme CLARANS:

L’algorithme CLARANS (CLustering Algorithm based on RANdomized Search) été introduit par

Raymon Ng et Jiawei Han en 1994.

Les auteurs ont proposé une méthode originale de recherche d’un ensemble optimal de k

médoïdes. La méthode consiste à construire un graphe Gn,k (graphe de classification de n

individus et de k classes), où chaque nœud(sommet) dans le graphe est représenté par un ensemble

de k objets médoïdes(représentants). Et possède k*(n-k) voisins. Deux nœuds sont voisins si leurs

ensembles diffèrent par un seul médoïde. A partir du graphe, l’algorithme commence par choisir

un nœud au hasard puis parcourt le graphe de voisin en voisin jusqu’à observer un minimum local.

Ce processus est itéré plusieurs fois, et le meilleur schéma est retourné.

Les principales étapes de l’algorithme CLARANS sont comme suit :

Données : k le nombre maximum de classes désiré.

Début

(1) Tirer un échantillon de 40+2k objets(2) Appliquer PAM sur l’échantillon(3) Calculer la qualité (comme dans l’algorithme PAM) de la

partition engendrée sur l’ensemble des données(4) Si la qualité trouvée est la plus faible déjà

déterminée,(5) Mémoriser les représentants déterminés à l’étape 3

FIN

Page 29: Faculté des sciences Département d'informatique Mémoire de ...

Chapitre1. Classification et analyse des algorithmes de clustering

23

Avantages de l’algorithme CLARANS:

Cet algorithme de clustering a tous les avantages de PAM et de CLARA avec une complexité

linéaire par rapport au nombre d’objets. Les auteurs ont montré par l’expérimentation que

l’algorithme fournit toujours les meilleurs résultats par rapport à PAM et à CLARA.

Inconvénients de l’algorithme CLARANS:

Sensibilité aux paramètres choisis, Complexité de l’ordre de O(k.n2) Données numériques de petite dimension.

Début

(1) Fixer les paramètres NUMLOCAL et MAXNEIGHBOR,puisinitialiser I à 1 et MINCOST au coût maximal possibleoù :NUMLOCAL est le nombre de minimaux locaux, MAXNEIGHBOR estle nombre de maximum de voisins d’un sommet de graphe Gn,k ,(2) Choisir aléatoirement un nœud X du graphe à explorer(3) J=1(4) Considérer un voisin Y de X et calculer le coût

différentiel TCx->Y(5) Si (TCx->Y<0), alors X=Y et retourner en 3(6) Sinon, J=J+1(7) Si (J<MAXNEIGHBOR), alors retourner en 4(8) Si (MINCOST > COST(X)), alors MINCOST=COST(X) et BEST=X(9) I=I+1 si (I<NUMLOCAL), retourner en 2)(10) Sinon, retourner la solution correspondent à BEST.

FIN

Page 30: Faculté des sciences Département d'informatique Mémoire de ...

Chapitre1. Classification et analyse des algorithmes de clustering

24

I.6.3 Les méthodes à base de densité:

Un ensemble ouvert dans l’espace Euclidien peut être divisé en un ensemble de ses composantes

connectées. L’implémentation de cette idée pour le partitionnement d’un ensemble fini de points a

besoin de tels concepts comme la densité, la connectivité et les limites (extrémité, bordure,

frontière). Les algorithmes de clustering par densité se basent sur une notion similaire complétée

par d’autres concepts fondamentaux tels que le voisinage d’un objet, l’objet noyau, l’accessibilité

ou la connexion entre objets. Sur un principe comparable aux algorithmes de réallocation

dynamique, les méthodes basées sur la densité cherchent à découvrir des clusters pour lesquels

tous les objets sont en relation avec un même objet central :

-Dans le cas des méthodes par réallocation, les objets centraux sont les objets représentatifs

(centroïdes, médoïdes etc.) et la relation est basée sur la similarité,

-Pour les méthodes basées sur la densité, les objets centraux ont des noyaux par lesquels les autres

objets sont d-accessibles.

Avant de développer les algorithmes, nous proposons de définir chacune de ces notions :

Soit :

X : ensemble d’objets ; : Rayon maximum de voisinage ;MinPts : nombre minimum d’objets dans le voisinage d’un point.

Définition 1 : soit un objet Xp ; le voisinage pV de p par rapport à un rayon est défini

par l’ensemble des points de X , distants d’au plus de p : qpdXqpV ,/

Définition 2 : soit deux objets Xqp , , et MinPts deux paramètres fixés ; p est « directement

densité-accessible » à partir de q , si et seulement si les deux propriétés suivantes sont vérifiées

(voir la figure 9) :1. qVp

2. MinPtsqV ( q est dit noyau)

Ainsi p est « directement densité-accessible » par q si le voisinage de q contient au minimum

Minpts objets, dont p .

Figure .9.Illustration du concept « directement densité-accessible ».

Définition 3 : soit deux objets Xqp , , etMinPts deux paramètres fixés, p est « densité-

Page 31: Faculté des sciences Département d'informatique Mémoire de ...

Chapitre1. Classification et analyse des algorithmes de clustering

25

accessible » par q si il existe une chaîne mpp ,...,1 dans X telle que ppqp m ,1 et 1,...,1 mi ,

1ip est directement densité-accessible par ip (voir la figure 10).

Figure .10.Illustration du concept « densité-accessible ».

Définition 4 : soit deux objets Xqp , , et MinPts deux paramètres fixés ; p est « densité-

connecté » à q si il existe un objet Xo telle que p et q sont tous deux « d-accessible » par

o (voir la figure 11).

Figure .11.Illustration du concept « densité-connecté ».

Définition 5 : soient X l’ensemble des objets, et MinPts deux paramètres fixées. Un densité-cluster XC est un ensemble non vide dans X vérifiant les propriétés suivantes :

1. Maximalité : Xqp , : si Cp et q est densité-accessible par p , alors Cq

2. connectivité : Cqp , : p est densité-connecté à q .

Lemme 1 :soit p un objet noyau dans X et E l’ensemble des objets densité-accessibles par p :

alors E est un densité-cluster.Lemme 2 :soit C un densité-cluster et p un noyau dans C : alors C est l’ensemble des objets

densité-accessibles par p

Les deux lemmes précédents, permettent d’orienter la recherche d’un densité-cluster. En effet, laconstruction d’un tel cluster revient à rechercher d’abord un objet noyau puis à agglomérer autourde ce noyau, tous les objets densité-accessibles par ce noyau.

Page 32: Faculté des sciences Département d'informatique Mémoire de ...

Chapitre1. Classification et analyse des algorithmes de clustering

26

Avantagesdes méthodes à base de densité :

L’intérêt de ces méthodes est de ne pas limiter la recherche uniquement aux clusters constitués

d’objets très similaires, mais au contraire, d’autoriser la formation de classes d’objets moins

« proches » mais de densités homogènes.

Il existe deux types d’approches à base de densité :

-Approches basées sur la connexité de densité : ce type d’approche attache la densité à un point

qui appartient aux données d’apprentissage et compte des algorithmes spécifiques comme :

DBSCAN, OPTICS et DBCLASD.

-Approches basées sur la fonction de densité : ce type d’approche attache la densité à un point

dans l’espace d’attributs. Il inclut l’algorithme DENCLUE.

L’algorithme DBSCAN:

L’algorithme DBSCAN (Density Based Spatial Clustering of Applications with Noise) été

introduit par Ester, Kriegel, Sander et Xu en 1996[MAR 96].

L’algorithme est basé sur l’idée de définir la notion de voisinage de rayon d’un point : il

commence en prenant en compte d’un point arbitraire et cherche tous les objets densité-

accessibles tel que tous les points situés à une distance de ce point inférieure à appartiennent au

voisinage. Il y a deux points différents qui sont pris en compte dans la classification :

1. Un point de noyau : c’est le point qui a un voisinage ( -Minpts).2. Un point non noyau : c’est celui qui n’a pas un tel voisinage. Il peut être un point de

frontière ou un bruit.3.

Ainsi si le point arbitraire choisie est un point de noyau, alors cette phase forme une classe, s’il est

un objet de frontière et qu’il n’y a aucun point qui est densité-accessible depuis lui alors c’est un

bruit, l’algorithme passe à un autre objet.

Les clusters sont alors agrandis en associant de proche en proche les points de voisinage qui

respectent les conditions suivantes :

1. La condition de connectivité, i.e. tous les points de la classe doivent être densité-connectés.

2. La condition de maximum, i.e. tous les points qui se trouvent dans le voisinage ( -Minpts) d’un point de la classe doivent appartenir à cette classe.

Page 33: Faculté des sciences Département d'informatique Mémoire de ...

Chapitre1. Classification et analyse des algorithmes de clustering

27

L’algorithme général de DBSCAN se résume comme suit :

Avantages de l’algorithme DBSCAN:

1. Un avantage important de cet algorithme est qu’il permet de considérer des clusters deforme très variées ainsi que des clusters concentrique (c'est-à-dire contenus les uns dansles autres), voir la figure 12.

2. L’algorithme est également capable de faire face au bruit qui peut exister dans les données.3. l’algorithme est insensible à l’ordre d’arrivée des objets.4. l’algorithme est incrémental car un nouvel objet qui arrive peut affecter certains

voisinages.

Figure .12.Des formes irrégulières difficiles à traiter pour K-Moyenne.

Données : , Minpts.

DébutRépéter

(1) Sélectionner aléatoirement un point p∈X(2) Mettre dans une classe tous les points densité-

accessible à partir de(3) Si p est un noyau, alors est une classe.(4) Si p est un point non noyau (frontière) ; passer à un

autre point et retourner en (2)Jusqu’à ce que tous les objets ont été sélectionnés.

FIN

Page 34: Faculté des sciences Département d'informatique Mémoire de ...

Chapitre1. Classification et analyse des algorithmes de clustering

28

Inconvénients de l’algorithme DBSCAN:

1. Le rayon de voisinage est difficile à préciser.2. la performance de l’algorithme peut être diminuée dans le cas des données de haute

dimension. Sa complexité est quadratique en fonction du nombre d’objets de la base.3. l’algorithme requiert des paramètres et MinPts, et l’expérience montre que les résultats

obtenus sont très sensibles aux choix de ces paramètres.

I.6.4 Les méthodes à base de grille:

Dans la section précédente, nous avons utilisé des concepts majeurs tels que la densité, les limiteset la connectivité. Une autre manière de traiter ces concepts est d’extraire la topologie de l’espacedes attributs sous-jacent. De ce fait, ce type de méthodes est conçu pour des données spatiales.Leur principe est de diviser l’espace de représentation des données en un nombre fini de cellulesformant une grille. Une cellule peut être un cube, une région ou un hyper rectangle. Puisd’identifier les ensembles de cellules denses connectées pour former les clusters.Avec une telle représentation des données, l’utilisateur doit spécifier la taille de la grille à utiliseret la densité minimum déterminant si une cellule de la grille est considérée comme dense ou non.Dans un premier temps, l’espace de description des objets est découpé par des intervalles régulierssur chaque dimension. Puis la densité de chaque cellule est évaluée, et les cellules satisfaisant lecritère de densité minimum sont détectées. Ensuite, les ensembles de cellules denses connectées,sont identifiés. Enfin, un test d’uniformité de ces composantes connexes est mené. Cescomposantes connexes uniformes forment les clusters, et pour les autres, la cellule la moins denseest supprimée et le test est reconduit sur chacune des deux sous composantes obtenues jusqu’à ceque toutes les composantes soient considérées comme uniformes. La figure 13 présente le principede la méthode sur un exemple.

Figure .13.Exemple de clustering basé sur les grilles. La figure de gauche présente lepartitionnement de l’espace par l’utilisation d’une grille, la figure est le clustering associé.

Avantages des méthodes à base de grille:

1. Les méthodes admettent que certains objets soient isolés. C’est le cas de l’objet caractérisépar une longueur de 176 et un prix de 10600. Ceci est la conséquence du choix de la taillede grille utilisée, mais dans d’autres cas, cela permet d’isoler le bruit qui peut exister dansles données.

Page 35: Faculté des sciences Département d'informatique Mémoire de ...

Chapitre1. Classification et analyse des algorithmes de clustering

29

2. Tandis que les méthodes à base de densité fonctionnent mieux sur des variablesnumériques, les méthodes à base de grille fonctionnent avec des variables de différentstypes.

3. Cette famille de méthode est éclectique : elle contient les deux types d’algorithmes :hiérarchiques et de partitionnement.

4. L’accumulation des données sous forme de grille rend les techniques à base de grilleindépendante par rapport à l’ordre (rangement) des données. A l’inverse des méthodes parréaffectation et les méthodes incrémentales qui sont très sensibles à l’ordre des données.

Inconvénients des méthodes à base de grille:

La problématique la plus critique de ces méthodes est celle de la recherche d’une taille appropriéepour les cellules construites ainsi que du choix du critère de densité :

Des cellules de trop petite taille conduiraient à une estimation bruitée de la densité : c’estle problème du sur-partitionnement ;

A l’inverse, des cellules de trop grande taille entraîneraient à de trop faibles densités : c’estle problème du sous-partitionnement.

Par ailleurs, ces techniques ont les mêmes faiblesses que les méthodes à base de densité : ellessouffrent de l’effet de chaîne et prennent difficilement en compte le fait que des clusters dedensités différentes puissent exister ; Cependant, elles sont capables d’identifier des clusters deformes très variées ou concentriques et de gérer le bruit qui existe dans les données.

Les algorithmes les plus connus dans cette catégorie sont : CLIQUE, STING et WaveCluster.

I.7 Techniques d’évaluation de la qualité du clustering:

L’évaluation de la pertinence des groupes formés en classification non supervisée reste un

problème ouvert qui renvoie à la question suivante : qu’est ce qu’un bon schéma de clustering ? la

difficulté vient principalement du fait que l’évaluation des résultats d’algorithmes de clustering est

subjective par nature car il existe souvent différents regroupements pertinents possibles pour un

même jeu de données. En effet, quelque soit le type de résultat que l’on souhaite construire, il

existe de nombreuses classifications possibles pour un ensemble de données. Par exemple, dans le

cas d’une classification dure d’un ensemble de objets en classes, il existe classification

possibles. Sélectionner la « meilleure » classification parmi ces possibilités n’a de sens que si

l’on dispose d’un critère d’évaluation de celle-ci. Or contrairement à la classification supervisée, il

n’existe pas de critère naturel. En effet, dans le cas des algorithmes de classification supervisée, il

est simple de vérifier la validité des résultats de la classification obtenue, étant donné que la classe

de chaque objet de l’ensemble d’apprentissage est connue. En revanche, en classification non

supervisée, l’algorithme n’a pas cette information à disposition. De ce fait, la problématique de

l’évaluation de la qualité des résultats de la classification non supervisée a engendré un grand

nombre de travaux dans la littérature. Des critères évaluant la cohérence des classes ont dû être

définis afin d’évaluer objectivement et quantitativement les clusters qui résultent. Ces critères se

Page 36: Faculté des sciences Département d'informatique Mémoire de ...

Chapitre1. Classification et analyse des algorithmes de clustering

30

basent sur différentes notions. On distinguera principalement : les critères basés sur une mesure de

distance, les critères spécifiques à la classification floue, les critères basés sur les statistiques pour

les méthodes de classification probabilistes et les critères basés sur une méthode de

rééchantillonnage des données. Une meilleure classification devrait accomplir différents critères,

cependant, les critères ne sont pas complètement indépendants. Mais parfois, on s’intéresse

seulement aux quelques critères. Par exemple, les critères de la validité interne et

l’interprétabilité :

La validité interne :

Ce type d’évaluation n’utilise pas de connaissances externes mais uniquement les données

d’entrée comme référence (matrice de (dis) similarité, description des données ets.) le meilleur

schéma parmi plusieurs sera celui qui conserve un maximum d’information relativement à

l’information contenue dans la matrice de (dis) similarité. Ainsi : certaines propriétés doivent être

vérifiée :

Chaque classe d’une partition doit être homogène : les objets qui appartiennent à la même

classe doivent être semblables.

Les classes doivent être isolées entre elles : les objets de différentes classes doivent être

différents.

La classification doit s’adapter aux données : la classification doit pouvoir expliquer lavariation des données.

La validité externe :

Il s’agit de confronter un schéma de classification obtenue avec une classification prédéfinie.

L’évaluation porte donc sur la corrélation entre les classes et les variables externes qui sont

connues pour être corrélées avec la classification et qui ne sont pas employées pour grouper.

La validité relative :

Cette stratégie d’évaluation porte sur les deux critères principaux de dispersions intra clusters (à

minimiser) et inter clusters (à maximiser). L’évaluation relative est souvent utilisée pour comparer

plusieurs schémas obtenus par une même méthode avec différents paramètres optimaux pour un

algorithme.

La stabilité :

Les classes doivent être stables : les petites modifications dans les données et dans les méthodes

ne doivent pas changer les résultats.

Page 37: Faculté des sciences Département d'informatique Mémoire de ...

Chapitre1. Classification et analyse des algorithmes de clustering

31

L’interprétabilité :

Les classes doivent avoir une interprétation substantive : il est possible de donner des noms aux

classes. Dans le meilleur des cas, ces noms doivent correspondre aux types déduits d’une certaine

théorie.

D’autres critères :

Parfois la taille et le nombre de classes sont employés en tant que critères additionnels. Ainsi que

l’avis d’un expert.

L’avis d’un expert :

Utiliser un expert pour évaluer le sens d’un clustering donné dans un champ d’application

spécifique. Mais s’il est possible à un expert de dire si un regroupement donnés a du sens, il est

beaucoup plus problématique de quantifier son intérêt ou de dire si un regroupement est meilleur

qu’un autre. De plus, l’intérêt de la méthode ne peut être généralisé à différents types de jeux de

données.

Le nombre de classes :

Dans beaucoup des méthodes de classification non supervisée, le nombre k des classes qu’on doit

obtenir représente un paramètre d’entrée, c’est le cas des méthodes de classification par

partitionnement, le nombre des classes est fixé à l’avance par l’utilisateur. Dans les méthodes de

classification hiérarchiques, couper l’arbre par une droite horizontale donne une partition de

l’ensemble des individus. Ainsi on peut fixer le nombre des classes désirées selon l’endroit où on

fait notre coupe. Cependant, il n’y a pas de méthodes analytiques pour déterminer le nombre de

classes.

I.8 Challenges Actuels en Classification Non Supervisée

De nombreux algorithmes de classification non supervisée ne permettent pas un traitement

satisfaisant des données pour de multiples raisons. Ces raisonspeuvent être classées selon qu’elles

sont inhérentes aux données traitéesou liées à des contraintes dues au domaine dans lequel est

utilisé l’algorithme.

On donne une liste non exhaustive des problèmes en classification non supervisée constituant les

principales préoccupations actuelles des chercheurs dans ce domaine :

I.8.1 Problèmes inhérents aux données traitées :

-Très grand nombre d’objets : Si le nombre d’objets à traiter est très élevé, les algorithmes utilisés

se doivent de posséder une complexité algorithmique théorique relativement faible, ou plutôt,

exhiber une bonne scalabilité. En effet, comme de nombreux problèmes intéressants, la

classification non supervisée mène à la résolution de problèmes généralement NP-difficile. Il est

Page 38: Faculté des sciences Département d'informatique Mémoire de ...

Chapitre1. Classification et analyse des algorithmes de clustering

32

généralement admis que des algorithmes "valables" en terme de coût calculatoire doivent posséder

une complexité algorithmique linéaire ou log-linéaire, dans quelques cas particuliers une

complexité quadratique ou cubique peut être acceptée.

-Dimensionnalité élevée : Dans certains cas, le nombre de descripteurs (variables) est très élevé

(parfois supérieur au nombre d’objets). Ainsi, un algorithme de classification non supervisée doit

pouvoir affronter « le fléau de la dimensionnalité ».

-Autres éléments problématiques : le choix de la mesure de similarité à utiliser peut affecter la

complexité algorithmique ainsi que, le problème de données manquantes soulève également des

questions pour le choix de cette mesure. La présence d’outliers et leur détection est un problème

non trivial, ainsi il est parfois nécessaire de posséder un algorithme relativement insensible à leur

présence. (Dans le cas de données catégorielles, la notion d’outliers fait référence aux objets

présentant une description particulièrement différente de l’ensemble des autres objets du jeu de

données.)

I.8.2 Problèmes inhérents à des contraintes applicatives :

-Nécessité d’intégrer des connaissances, des contraintes dans le processus : Le processus

d’extraction des connaissances dans lequel s’insère le processus de la classification non supervisée

est essentiellement anthropocentrique et itératif. Donner la possibilité à l’utilisateur de "jouer"

avec le processus de la classification non supervisée en y intégrant ses connaissances ou

d’éventuelles contraintes est donc souvent nécessaire.

-Bonne utilisabilité : Souvent l’utilisateur final d’un algorithme de la classification non supervisée

ne s’avère pas un expert du domaine : simplicité d’utilisation (paramétrage facile et intelligible de

l’algorithme), présentation explicite et intelligible des résultats et connaissances extraites par le

processus de la classification non supervisée sont alors des éléments indispensables pour une

utilisation profitable et pertinente d’un algorithme.

-Données distribuées : Les grands entrepôts de données proposent le plus souvent des sources de

données distribuées. Les modèles de la classification non supervisée que l’on peut bâtir

localement nécessitent parfois d’être intégrés dans un modèle global/holistique.

Page 39: Faculté des sciences Département d'informatique Mémoire de ...
Page 40: Faculté des sciences Département d'informatique Mémoire de ...

Chapitre2. LeClustering des données d’expression des gènes

34

II.1 Introduction :

Les puces à ADN font partie des méthodes de « génomique ». A la différence des méthodes de

génétique classique (étude des gènes isolés), les approches génomiques ont pour objectif de

définir la nature des relations qui existent entre les gènes, ainsi que de comprendre comment un

effet donné peut émerger de l’ensemble de ces relations. Dans le chapitre précédent, les puces à

ADN étaient utilisées comme un outil permettant des études en parallèle de milliers de gènes.

Mais la véritable puissance des puces à ADN réside également en leur capacité à être utilisée pour

étudier les relations entre les gènes, c'est-à-dire identifier ceux qui se comportent de manière

similaire ou coordonnée. Un problème inhérent à l’utilisation de technologies de puces à ADN est

la quantité énorme de données produites. La recherche de schémas d’information significatifs et

les dépendances entre les gènes, afin de fournir une base pour les tests d’hypothèses, comprend

généralement l’étape initiale de clustering des gènes. Le clustering suppose qu’il existe une

cartographie inconnue qui attribue une étiquette pour chaque gène et l’objectif est d’estimer cette

cartographie en assignant chaque gène à un groupe.

Figure .14."clustering d'expression des gènes "dans la littérature scientifique de 1999 à 2010(Source : PubMed)

Le terme « clustering » d’expression des gènes est apparu dans la littérature scientifique qu’au

tout début des années 1990, pour augmenter de façon exponentielle selon le nombre d’articles

référencés dans le moteur de recherche PubMed2.

2http://www.ncbi.nlm.nih.gov/pubmed/

100

1100

2100

3100

4100

1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010

No

mb

red

ep

ub

lic

ati

on

s

Les années

Page 41: Faculté des sciences Département d'informatique Mémoire de ...

Chapitre2. LeClustering des données d’expression des gènes

35

II.2 Contexte biologique :

Dans cette partie nous présentons le contexte biologique et la technologie des puces à ADN afin

de mieux comprendre la nature des données sur lesquelles nous travaillons. Après quelques

rappels de génétique, nous montrons les enjeux de l’étude du transcriptome qui ont motivés notre

travail de recherche, en mettant en évidence l’importance de l’informatique pour l’analyse des

données issues de cette technologie.

En ce qui concerne la terminologie associée à la technique des « puces à ADN », il est important

de noter que le terme « microarray » ou « puces à ADN » sont employées de façon indifférente.

Les termes de « biopuces » ou « microréseau » sont également employés dans la littérature

française.

II.2.1Généralités et définition du transcriptome :

L’ADN (Acide Désoxyribonucléique) est la forme de stockage de l'information génétique de tous

les êtres vivants. C’est une molécule gigantesque située dans le noyau de chacune des cellules,

elle se présente sous la forme d’un double brin enroulé en double hélice composé d’un

enchainement linéaire de millions d’unités de quartes bases azotées (nucléotides) : Adénine(A),

Cytosine (C), Guanine(G) et Thymine(T). L’ADN humain est composé d’un enchainement de 3

milliards de lettres et la totalité de l’ADN se présente sous la forme d’un ensemble de

chromosomes.

Les gènes : ils sont disséminés le long du brin d’ADN. Ils ne représentent chez l’homme que 5%

de la longueur de la molécule d’ADN. On ignore encore à quoi sert le reste.

L’ARN messager (Acide Ribonucléique): est comme l’ADN une chaine composée de

nucléotides, où l’Uracile(U) remplace la Thymine, c’est une « photocopie » de l’ADN produite

durant la phase de transcription. En effet pour chaque gène, l’ADN qui le compose est transcrit en

une molécule complémentaire qui est l’ARN. Le noyau de la cellule est comme une bibliothèque

ou sont stockées les informations et comme dans toutes les bibliothèques, les originaux ne peuvent

sortir donc l’ADN est transcrit en un nombre variable d’exemplaires d’ARN messager sans

jamais quitter le noyau de la cellule, c’est l’ARN qui transporte l’information génétique à travers

le reste de la cellule.

Page 42: Faculté des sciences Département d'informatique Mémoire de ...

Chapitre2. LeClustering des données d’expression des gènes

36

Transcriptome : on appelle transcriptome l’ensemble des ARN messagers, c'est-à-dire les milliers

de transcriptions d’ADN différentes présentes dans une cellule à un moment donné.

Les protéines : en fonction de ces besoins, la cellule va utiliser tout ou une partie des gènes pour

réaliser la synthèse des protéines nécessaires aux fonctions cellulaires. Durant la phase de

traduction l’ensemble des ARN messagers quittent le noyau et sont distribués dans la cellule pour

la production de la protéine correspondante.

Figure .15. Mécanisme de transcription et traduction de l’ADN.

Page 43: Faculté des sciences Département d'informatique Mémoire de ...

Chapitre2. LeClustering des données d’expression des gènes

37

II.2.2 Principe des puces à ADN et analyse du transcriptome :

Les puces ADN permettent d’étudier le comportement d'un organisme au niveau du génome en

mesurant le niveau des expressions des gènes. Dans la suite de cette section, nous détaillons le

fonctionnement de cette biotechnologie.

II.2.2.1 Les puces à ADN :

Les puces à ADN, également appelées DNA chips ou microarrays (array= rang ordonné), ont

étédéveloppées au début des années 1990. Depuis leur apparition, les puces à ADN sont devenues

des outils majeurs pour la recherche en biologie fondamentale et clinique[BRO 99][LOC 00].Elles

permettent de mesurer simultanément et quantitativement l’expressionde plusieurs milliers de

gènes à partir d’un support solidede taille réduite (quelques cm2) sur lequel des milliers de

fragments d’ADN sont immobilisés selon une disposition ordonnée à l’aide d’une micropipette

robotisée. Grâce à cette technique, chacun des fragments d’ADN est représenté par un point ou

« spot » sur le support, ils servent de sondes pour fixer de façon très spécifique les fragments des

gènes complémentaires « cibles », présents dans les échantillons biologiques à tester : leur mise en

contact permet de reconstituer la double hélice d’ADN. Ce phénomène repose sur le principe

d’hybridation entre des séquences complémentaires d’ADN, conformément aux observations de

(Southern en 1975[SOU 75]). Ainsi les puces à ADN permettent de détecter et de quantifier la

présence de plusieurs milliers de gènes en parallèle par hybridation entre des sondes et des cibles

préalablement marquées par un radioélément ou par une molécule fluorescente. Le principe est

illustré sur la figure qui suit.

La lecture des résultats d’hybridation se fait grâce à un scanner. Dans le cas detechnologies

utilisant la fluorescence, le scanner est un microscope confocal couplé à un ouplusieurs lasers où

chaque laser excite spécifiquement un fluorochrome. Le signal émis estamplifié par un

photomultiplicateur et transformé en image. Une image en niveau de gris estalors générée pour

chaque fluorochrome puis convertie en fausses couleurs (allantgénéralement du vert au rouge).

Enfin, les deux images sont superposées (Emilie Guérin 2005)[GUE 05].

Différentes étapes statistiques et informatiques sont ensuite requises pour extraire et analyserles

données issues de ces images.

Page 44: Faculté des sciences Département d'informatique Mémoire de ...

Chapitre2. LeClustering des données d’expression des gènes

38

Figure .16. Principe des puces à ADN et analyse du transcriptome[REY 04]

(A) : les séquences des sondes sont déterminées de façon à optimiser leur spécificité et leur

sensibilité. Les sondes synthétisées sont déposées par un robot sur la surface de la lame selon

un plan défini.

(B) : les ARNm sont extraits des échantillons biologiques à comparer, marqués avec des

fluorochromes différents puis mélangés avant hybridation.

(C) : la lecture des lames est réalisée avec un scanner (microscope à fluorescence) couplé à un

photomultiplicateur.

(D) : l’image est alors analysée de façon à quantifier le signal. Les données sont en suite

normalisées, analysée et interprétées.

Page 45: Faculté des sciences Département d'informatique Mémoire de ...

Chapitre2. LeClustering des données d’expression des gènes

39

II.2.2.2 Les jeux de données issues des puces à ADN :

La transcriptomique est l'étude de l’expression quantifiable des gènes (ARNm) dans un type

cellulaire donné, un tissu ou un organisme et dans une condition biologique précise. Ce domaine

de recherche a fait d'importants progrès depuis une dizaine d'années avec l'arrivée des puces à

ADN.

Le niveau d’expression d’un gène est associé à la quantité d’ARNm présents dans une cellule, on

dit qu’un gène est surexprimé quand il produit une grande quantité d’ARNm, à l’inverse on dira

qu’un gène est sous exprimé quand il produit peu d’ARNm.

De nombreuses technologies de biologie moléculaire ont été développées afin de mesurer le

niveau d’expression des gènes. Certaines sont à haut débit et permettent de mesurer

simultanément l’activité de plusieurs milliers de gènes, comme les puces à ADN ou la méthode

SAGE(Serial Analysis of Genes Expression). D’autres techniques d’amplification génétique

comme la PCR (Polymerase Chain Reaction) temps réel se limitent à l’analyse d’un petit nombre

de transcrits (ARNm) ou de gènes à la fois et ne permettent pas d’appréhender la complexité du

phénomène de la transcription.

La technologie des puces à ADN ou biopuces est considérée comme capitale, elle permet de

mesurer l'expression de plusieurs milliers de gènes simultanément. Une biopuce est une

photographie à un instant donné de l'activité génétique d'un tissu biologique.

Un jeu de données biopuces est une série de puces à ADN, il prend la forme d'une matrice dites

matrice d’expression comprenant plusieurs dizaines de milliers de lignes et quelques dizaines de

colonnes. Chaque colonne correspond à une expérimentation (une biopuce) et chaque ligne à un

gène.

Page 46: Faculté des sciences Département d'informatique Mémoire de ...

Chapitre2. LeClustering des données d’expression des gènes

40

Figure .17.Exemple de jeux de données biopuce (matrice d’expression) La couleur de chaquecase représente sa valeur, rouge quand l'expression est positive (sur-exprimé) et vert quand négatif(sous-exprimé).

Page 47: Faculté des sciences Département d'informatique Mémoire de ...

Chapitre2. LeClustering des données d’expression des gènes

41

II.3 Enjeux et objectifs de l’analyse du transcriptome :

Si le génome est identique dans chacune des cellules de l’organisme donné, en revanche,

l’expression de chaque gène peut varier dans le temps (propre à un stade du développement), dans

l'espace (propre à un type cellulaire, tissulaire ou organique) ou/et caractéristique d'un état donné

(normal, pathologique ou en réponse à un stimulus particulier). Ceci explique le grand intérêt que

porte la communauté scientifique à l’analyse du transcriptome. Elle ouvre de nouvelles voies de

recherche et de développement dans de nombreux domaines aussi divers que la médecine, la

biologie fondamentale, le développement pharmaceutique, l’environnement ou dans les contrôles

agro alimentaires et industriels.

-Le diagnostic des maladies :

L’analyse du profil d’expression des personnes atteintes de certaines maladies a aidé à la

compréhension de ces maladies. Il existe de nombreux exemples dans la littérature illustrant l’aide

que peut apporter l’étude du transcriptome au diagnostique médical, dont une grande majorité

portent sur la caractérisation de gènes impliqués dans certains cancers. Dans le cadre des cancers

du sang, différencier les Leucémies aigues de type Myéloïde de celle de type Lymphoïde est

crucial pour établir un traitement efficace. (Golub et al)[GOL 99] ont pu sélectionner un ensemble

de 50 gènes permettant de discriminer les types de Leucémie avec une grande précision en

développant un modèle qui prédit le type de Leucémie à partir de profil d’expression. Un autre cas

concerne les «DLBCL » (Diffuse Large B-Cell Lymphoma) qui sont une sous classe de

lymphomes présentant une grande hétérogénéité clinique. Les travaux de [ALI 00] ont conduits à

l’identification de deux formes de DLBCL, « Germinal Centre B-Like » et « Avtivated B-Like »,

et constatent que les patients atteints de la première forme ont une chance de survie meilleure que

les autres.

- La pharmacogénomique :

Identification de cibles pour la recherche thérapeutique.

-La toxicogénomique

Dans le cas de l'analyse de la réponse toxicologique à l'aide de puces à ADN, on doit au départ

faire l'hypothèse que l'effet toxicologique, direct ou indirect, d'une substance résulte de la

modification de l'expression de certains gènes, ou du moins qu'il lui est associé.Les mesures

consistent alors à évaluer l'expression différentielle de gènes de deux échantillons, grâce à un

marquage par fluorescence en deux couleurs (une par échantillon). Cela permet de comparer les

profils d'expression génique de deux tissus différents (normal/pathologique ou traité/non traité par

une substance).

Page 48: Faculté des sciences Département d'informatique Mémoire de ...

Chapitre2. LeClustering des données d’expression des gènes

42

-L'agro-alimentaire :

Contrôle des microorganismes utilisés dans certaines fabrications (ferments lactiques, levures,

mycélium, etc....), détection des séquences provenant d'organismes génétiquement modifiés

(OGM) dans les semences ou dans certains aliments, détection d'agents infectieux dans

l'alimentation comme la Salmonelle ou la Listeria.

-L'environnement :

Analyse bactérienne de l'eau de consommation, détection des agents infectieux dans

l'alimentation, l'air ou l'eau (Salmonella, Listeria, Legionnella).

Le défi est de répondre à certaines questions :

-Existe-il des groupes de gènes similaires en termes d'expression ? Si des gènes sontCo-exprimés,

on peut supposer qu'ils ont un rôle biologique proche.

-Quels sont les gènes qui s'expriment différemment en fonction des expériences ? Ceci permettrait

d'identifier les gènes impliqués dans les processus biologiques étudiés. Par exemple si un gène est

surexprimé chez des patients atteints du cancer et sous exprimé chez des patients sains, alors on

peut supposer que ce gène est impliqué dans le développement du cancer.

-Existe-il des groupes d'expériences similaires en termes d'expression ? Ceci permettrait par

exemple de découvrir des sous types de maladie qu'on ne peut différencier qu'au niveau

transcriptionel.

II.4 L’importance de l’informatique pour l’analyse des données issues des puces à ADN :

La communauté scientifique reconnait le grand potentiel des puces à ADN et le nombre de

domaines et projets incluant leur utilisation, est en train d’exploser depuis quelques années.

Toutefois il ne suffit pas de produire simplement des données, on doit être capable également d’en

extraire de l’information compréhensible par les experts du domaine d’étude. Une

expérimentation menée par puces à ADN comporte plusieurs dizaines de milliers d’expressions de

gènes, leur analyse ne peut se faire humainement. On doit donc recourir à des méthodes

informatiques issues de la statistique exploratoire et de l’apprentissage artificiel. Il n’existe pas

une seule méthode d’analyse générale permettant de répondre à toutes les questions sur tous les

types de données. Au contraire, de nombreuses méthodes spécifiques ont été développées. On peut

les classer en trois familles : les méthodes de clustering, de classification et de sélection de gènes.

Les méthodes de clustering appliquées aux expressions des gènes seront détaillées plus largement

dans la suite du chapitre.

Page 49: Faculté des sciences Département d'informatique Mémoire de ...

Chapitre2. LeClustering des données d’expression des gènes

43

II.5Le principe du clustering des gènes :

Le clustering a beaucoup d’application dans l’analyse des données biopuce et peut s’effectuer au

niveau des gènes comme au niveau des conditions expérimentales. Identifier des groupes de gènes

ayant un comportement similaire permettrait de supposer qu’ils ont un rôle biologique proche. De

même, trouver des groupes de patients malades ayant un profil d’expression proche permettrait de

définir des sous classes de maladie. La figure suivante illustre le principe de clustering de gènes

sur un jeu de données comprenant 10 gènes et 6 exemples. Les gènes qui ont un comportement

similaire sur tous les exemples sont regroupés dans les mêmes clusters.

Figure .18.Illustration du principe de clustering sur les gènes.

II.5.1Les prérequis du clustering des gènes :

Le clustering d’expressions de gènes comprend généralement les étapes de base suivantes :

La représentation des données. La normalisation. La transformation. Le remplacement des valeurs manquantes. Le filtrage.

Page 50: Faculté des sciences Département d'informatique Mémoire de ...

Chapitre2. LeClustering des données d’expression des gènes

44

La représentation des données :

Cette étape implique la représentation de la matrice de données pour le clustering. Les données de

puces à ADN se présentent sous la forme d’une « matrice d’expression »on notera Y , la mesure

d’expression du gène i dans l’expérience , pour (G étant le nombre total de gènes) et

(N étant le nombre total d’expériences). Il y a deux manières d’analyser les données

d’expression. L’analyse peut porter sur la recherche de similitudes de comportements entre les

gènes ou alors entre les expériences. Dans le premier cas, chaque gène est caractérisé par un

vecteur d’expression et dans le second cas se sont les expériences qui sont

caractérisées par des vecteurs d’expression .

Figure .19. Matrice d’expression. Qui peut être analysé en ligne ou en colonne.

La normalisation :

Les sources de variabilités incontrôlées sont nombreuses et une préparation d'ARNm a peu de

chance de donner les mêmes résultats si elle est testée sur deux puces à ADN : il n'y a pas de

raisons pour que le marquage soit exactement le même d'une fois sur l'autre ou que le système de

lecture soit réglé exactement de la même façon.

Ce sont des biais qui affectent tous les gènes de la même façon et le problème est résolu en

donnant la même moyenne et la même variance à toutes les conditions expérimentales (c'est-à-dire

toutes les colonnes dans le tableau de résultats). D'un point de vue statistique, cette opération

revient à leur donner le même poids dans les analyses ultérieures. D'un point de vue biologique,

c'est faire l'hypothèse que la quantité totale d'ARNm dans les cellules est constante dans

l'expérience.

Page 51: Faculté des sciences Département d'informatique Mémoire de ...

Chapitre2. LeClustering des données d’expression des gènes

45

La transformation :

La distribution du niveau d'expression des gènes est très asymétrique avec un petit nombre de

valeurs élevées. C'est une source de problèmes car de nombreuses méthodes statistiques supposent

implicitement une distribution gaussienne. L'asymétrie est fortement diminuée si les données

brutes sont remplacées par leur logarithme ou par leur racine cinquième. La transformation

logarithmique est la plus utilisée, cependant elle présente l'inconvénient d'amplifier les écarts des

petites valeurs : après le passage au logarithme, 0,1 et 1 deviennent aussi éloignés que 100 et

1000. Le nuage des gènes s'évase considérablement pour prendre une forme en trompette, ceci est

un pur artefact dû à la transformation logarithmique de valeurs proches de zéro qui résultent

habituellement de la soustraction du bruit de fond. Des traitements mathématiques permettent de

limiter l'ampleur de cette déformation. Le problème peut être évité en ajoutant une constante de

sorte que la valeur la plus faible soit aux environs de la centaine.

Le remplacement des valeurs manquantes :

Les matrices de données d’expression peuvent être incomplètes. Pour certains gènes, aucune

valeur d’expression n’est attribuée et la donnée est notée « NA » (Non Attributed ou Non

Available).Les valeurs manquantes posent un problème car elles peuvent influencer les résultats

des calculs de distance ainsi que la stabilité des classifications obtenues, ils ont pour origines : (i)

un défaut qui rend la mesure impossible pour un gène sur une puce à ADN ; (ii) la mesure est

éliminée car elle n'est pas notablement supérieure au bruit de fond ou l’absence d’expression du

gène dans l’échantillon.Eliminer un gène lorsqu'il lui manque une valeur dans une colonne n'est

pas une solution car le problème va se poser de nouveau pour d'autres gènes dans d'autres

colonnes si le nombre de conditions expérimentales augmente. On considère généralement qu'il

vaut mieux remplacer la valeur manquante par une valeur estimée à partir des mesures faites dans

d'autres conditions expérimentales.

Plusieurs techniques permettent de calculer les valeurs estimées. Elles n'ont pas toutes la même

précision. On peut estimer empiriquement la qualité d'une méthode en supprimant quelques

valeurs dans le tableau de départ puis en comparant les valeurs prédites aux valeurs initiales. Par

exemple, il est possible de modifier les algorithmes de groupement afin qu’ils prennent en

comptecette absence de données et rééquilibrent la matrice de données d’expression. Certains

algorithmes permettent de compléter le jeu de données : moyenne sur le gène, moyenne sur les k

voisins les plus proches (K-Nearest Neighbors - KNN) ou encore décomposition des valeurs

d’expression en valeurs propres.

Page 52: Faculté des sciences Département d'informatique Mémoire de ...

Chapitre2. LeClustering des données d’expression des gènes

46

Le filtrage

Le filtrage a pour but de supprimer les gènes dont l’expression ne varie pas ou peu, dans une série

d’expériences. Ces gènes ne présentent pas d’intérêt pour l’analyse et leur élimination permettra

de simplifier les classifications ultérieures. Cette procédure permet généralement de soustraire

tous les gènes ayant une faible variation, dont l’intensité est trop proche du bruit de fond ou pour

lesquels on suspecte une hybridation non spécifique. Ces critères de tri sont le plus souvent fixés

empiriquement et peuvent varier en fonction du nombre de gènes désirés pour l’analyse. Les

critères les plus fréquemment utilisés sont un niveau de variation (fold-change) supérieur à 2 fois

et une p value associée aux spots inférieure à 0,01.

Remarque :

La normalisation, le filtrage ou toute autre transformation doivent cependant être utilisés avec

prudence car ils peuvent introduire un biais et avoir un effet non négligeable sur l’interprétation

des résultats. Les méthodes de normalisation et d’analyse restent d’ailleurs encore un domaine de

recherche actif et sont à l’origine de controverses pour les scientifiques spécialisés dans ce

domaine.

II.5.2Etat de l'art des méthodes de clustering des gènes :

Selon Sheng Qizheng et al[SHE 05], il existe deux générations d’algorithmes de clustering

appliqués aux données d’expression des gènes. La première génération des algorithmes de

regroupement (la classification hiérarchique, k-means et cartes auto-organisatrices (SOM))

appliqué à des profils d'expression génique ont été pour la plupartdéveloppés outre le domaine de

recherche biologique. Bien que des résultats encourageants ont été réalisés,certaines de leurs

caractéristiques (par exemple, la détermination du nombre de cluster, le regroupement des valeurs

aberrantes,complexité de calcul) compliquent souvent leur utilisation pour le clustering de

données d'expression.

Pour cette raison, une deuxième génération des algorithmes de regroupement ont commencé à

s'attaquer à certains deslimitations des méthodes précédentes. Ces algorithmes sont, entre autres,

des algorithmes fondés sur un modèle, l'algorithme de l'arbre d'auto-organisation (self-organizing

tree), basée sur la qualité des algorithmes,et biclustering algorithme.

En outre, certaines procédures ont été développées qui pourraient aider les biologistes à estimer

certains des paramètres nécessaires à la première génération d'algorithmes (par exemplele nombre

de clusters présents dans les données).

Page 53: Faculté des sciences Département d'informatique Mémoire de ...

Chapitre2. LeClustering des données d’expression des gènes

47

II.5.2.1Les méthodes de classification hiérarchique :

Les méthodes hiérarchiques sont les premières approches utilisées pour l’analyse des données de

profils d’expression. Elles consistent à générer une suite de classes emboîtées représentées

graphiquement par un dendrogramme. Elle se base sur la matrice de similarité obtenue à partir des

données d’expression et du choix d’une distance de similarité, les plus couramment employées

étant la distance euclidienne et la distance de corrélation de Pearson. L’algorithme peut être

ascendant ou descendant et nécessite le choix d’une distance inter-groupe pour obtenir une règle

d’agglomération des classes.

Les trois principales règles utilisées sont le lien moyen «average-linkage», le lien

complet«complete-linkage» et le lien simple «single-linkage» pour lesquelles la distance entre

deux groupes est donnée respectivement par la moyenne des distances entre toutes les paires

d’objets, la distance entre les deux points les plus éloignés ou la distance entre les deux points les

plus proches. D’autres distances comme la distance aux centroïdes ou le lien de Ward peuvent être

également considérées. Cette technique de classification est trèspopulaire dans la communauté

pour l’´etude des profils d’expression des gènes car elle estfacile à utiliser et implémentée.

[EIS 98] ont développé le logiciel « Cluster » basésur un algorithme de classification hiérarchique

ascendante avec le critère «average-linkage»appelé « «UPGMA » (Unweighted Pair Group

Method with Arithmetic mean). Ce logiciels’accompagne d’un programme de visualisation

TreeView. Il faut tout de même noterque cette procédure a une complexité algorithmique en O

(N2 lnN) si N est le nombretotal de gène à classer et est très influencée par le bruit et l’ordre

desdonnées. Elle souffre d’un manque de robustesse car une petite perturbationdes données peut

nettement changer la structure du dendrogramme. De plus, uninconvénient de cette méthode

réside dans le choix par l’utilisateur du nombre de groupesà partir du dendrogramme.

La figure tirée des travaux [ALI 00], nous donne un autre exemple de l’application de cet

algorithme. Une classification hiérarchique ascendante a été effectuée sur le profil d’expression de

96 échantillons de « Lymphocytes malins » sans tenir compte de leurs classes. On constate que la

hiérarchie construite a regroupé les échantillons appartenant à une même classe.

La classification obtenue est représentée sous la forme de deux dendrogramme (un pour les

gènes, un pour les individus) associés à la matrice d’expression transformée en carte (heatmap),

colorée en fonction du niveau d’expression relatif des gènes. Généralement, les couleurs

employées vont du vert (niveau bas) au rouge (niveau élevé) en passant par le noir (niveau

médian).

Page 54: Faculté des sciences Département d'informatique Mémoire de ...

Chapitre2. LeClustering des données d’expression des gènes

48

Figure .20.Classification ascendante hiérarchique de l’expression de 96 Lymphocytes malins. Agauche c’est un agrandissement de la hiérarchie construite où apparaît la classe de chaqueéchantillon. Chaque ligne représente l’expression d’un gène et chaque colonne le profild’expression d’un échantillon. La couleur correspond à la mesure de l’expression selon l’échellede couleur au bas de la figure.

Page 55: Faculté des sciences Département d'informatique Mémoire de ...

Chapitre2. LeClustering des données d’expression des gènes

49

III.5.2.2Les méthodes de classification par partitionnement:

Une autre famille de méthodes de classification est celle des algorithmes de partitionnement. Ces

méthodes nécessitent de spécifier préalablement le nombre de classes. L’une des plus utilisée est

l’algorithme des k-Means proposé par MacQueen[MAC 67]. Sa grande popularité vient de sa

simplicité conceptuelle, sa rapidité d’exécution et ses faibles exigences en taille mémoire. Il offre

aussi la possibilité de partitionner un ensemble volumineux de données à moindre coût.

Les auteurs Tavazoie et al 1999 ont analysé 3000 profils de gènes de la levure « Saccharomyces

Cerevisiae », mesurés sur 15 instants d’échantillonnage et observé au cours de deux cycles

cellulaires. Ils ont appliqué l’algorithme des k-Means pour partitionner ces données

successivement en 10, 30 et 60 classes. La similarité entre les gènes est mesurée par la distance

Euclidienne et le résultat en 30 classes est retenu.

Toutefois, l’algorithme des k-means est relativement sensible aux valeurs aberrantes.

L’algorithme PAM (Partitionning Around médoïds) ou l’algorithme des k-médoïdes permet de

classifier les données de manière plus robuste. Le médoïde d’un groupe est l’objet possédant la

distance médiane la plus faible avec les autres objets du groupe. D’après les auteurs de

l’algorithme Kaufman et Rousseeuw[ROU 90], il est plus judicieux de choisir comme centre d’un

groupe un objet présent dans le groupe qu’un objet calculé. Quality Threshold (QT) est une

méthode alternative de partitionnement de données, inventé spécialement pour le clustering des

gènes (Heyer et al, 1999)[HEY 99], elle nécessite plus de puissance de calcul que les k-means,

mais n’exige pas de spécifier le nombre de clusters à priori et renvoie toujours le même résultat

lorsqu’il est exécuté plusieurs fois.

Du fait de la phase d’initialisation au hasard, les algorithmes sont dit non déterministes :

l’algorithme appliqué plusieurs fois sur le même jeu de données peut produire des résultats

différents. D’après Draghici, la position relative des profils d’expression mise en évidence par ces

algorithmes est rarement informative voir trompeuse.

II.5.2.3Les méthodes de classification floues:

Moins utilisées que les méthodes décrites précédemment, les approches basées sur la logique floue

ou fuzzy algorithm sont très voisines de k-means (Gasch et Eisen)[GAS 02] . Elles permettent le

classement des gènes dans plusieurs groupes à la fois, avec une probabilité associée. Selon

Moloshok et al[MOL 02], cette technique reflète mieux la biologie. Il existe peu d’outils proposés

pour la classification floue, nous pouvons toutefois citer les algorithmes « fanny », « cshell » et

« cmeans » implémentés dans R.

Page 56: Faculté des sciences Département d'informatique Mémoire de ...

Chapitre2. LeClustering des données d’expression des gènes

50

II.5.2.4Classification par les réseaux de Kohonen (SOM) :

SOM (Self Organising Map) (Tamayo et al, 1999) est plus robuste que k-means pour le clustering

des données bruitées. Il exige en entrée le nombre de clusters et la configuration de la grille. La

spécification du nombre de clusters à l’avance est difficile dans le cas des données des expressions

des gènes. Par ailleurs, les approches de partitionnement sont limitées aux données de dimension

faible avec des clusters bien séparés et de haute densité. Par contre, les jeux de données

d’expression des gènes peuvent être de dimensionnalité élevée et contiennent souvent des

intersections entre les clusters. Une structure hiérarchique peut aussi être construite en se basant

sur le principe de la méthode « SOM » comme l’algorithme « SOTA » (Self Organising Tree

Algorithm) proposé par (Dopazo et Carazo 1997)[DOP 97]. Récemment, plusieurs nouveaux

algorithmes tels que (Herrero et al, 2001)[HER 01] et (Tomida et al, 2002) ont été proposés en se

basant également sur le principe de la méthode « SOM ». Ces algorithmes peuvent déterminer

automatiquement le nombre de clusters et adapter dynamiquement la structure de la carte à la

distribution des données. (Herrero et al, 2001)[HER 01] ont amélioré l’algorithme par une

structure d’arbre binaire. Au début, l’arbre contient un seul nœud racine reliant deux neurones

après un processus d’apprentissage similaire à celui de « SOM » l'ensemble des données est

séparé en deux sous-ensembles, puis le neurone avec moins de cohérence est divisé en deux

nouveaux neurones,ce processus est répété niveau par niveau jusqu'à ce que tous les neurones

dans l'arbre satisfassent un certain seuil de cohérence. D’autres exemples d'améliorationde

l’algorithme « SOM »sont les algorithmes « Fuzzy ART » (Adaptive Resonance Theory) proposés

par (Tomida et al, 2002) qui offrent des approches pour mesurer la cohérence d'un neurone. La

carte de sortie est ajustée en séparant les neurones existants ou en ajoutant de nouveaux neurones

dans la carte, jusqu'à ce que, à la cohérence de chaque neurone de la carte répond à un seuil

spécifié par l’utilisateur.

III.5.2.5Les méthodes de classification basées sur un modèle:

Les méthodes basées sur un modèle fournissent un cadre statistique pour la modélisation de la

structure des clusters dans les données d’expression des gènes. L’algorithme EM (Expectation

Maximisation) ou l’algorithme de la maximisation d’espérance introduit par (Dempster et al,

1977)[DEM 77] découvre de bonnes valeurs pour ses paramètres d’entrée de manière itérative. Il

peut traiter différentes formes de données et peut être très couteux, car un certain nombre

d’itérations peut être nécessaire selon (Travis et Huang 2009). L’approche basée sur un modèle

offre une probabilité estimée d’appartenance d’un objet à un cluster particulier. Ainsi, un gène

peut avoir une forte corrélation avec deux clusters totalement différents, cependant, cette méthode

Page 57: Faculté des sciences Département d'informatique Mémoire de ...

Chapitre2. LeClustering des données d’expression des gènes

51

suppose que l’ensemble des données correspond à une distribution spécifique qui n’est pas

toujours vrai.

II.5.2.6Les méthodes de classification basées sur les graphes:

Dans les algorithmes de clustering basés sur les graphes, les graphes sont construits comme des

combinaisons d’objets, caractéristiques ou les deux, comme les nœuds et les arêtes, ensuite

partitionnés en utilisant la théorie des graphes. Ces méthodes sont aussi utilisées pour le problème

de classification non supervisée des données d’expression des gènes [HAR 99]. L’identification

des clusters via les noyaux de connectivité (CLICK) introduit par (Sharan et Shamir)[SHA 00] est

adapté pour le clustering des sous espaces et les données de haute dimension.

L’algorithme « CAST » (Cluster Affinity Search Technique) introduit par [BEN 99] prend en

entrée les similarités entre paires de gènes et un seuil d’affinité. Il ne nécessite pas un nombre de

clusters défini par l’utilisateur et gère les valeurs aberrantes efficacement. Mais il éprouve des

difficultés à déterminer une bonne valeur du seuil.

Dans l’algorithme « CAST », la taille et le nombre de clusters produits sont directement affectés

par le paramètre t fixé et défini par l’utilisateur et donc nécessite la connaissance à priori de

l’ensemble des données. Afin de surmonter ce problème, l’algorithme « E-CAST » introduit par

[BEL 02] calcule la valeur du seuil dynamiquement sur la base des valeurs de similarité des objets

qui ne sont pas encore regroupés.

II.5.2.7Les méthodes debiclustering:

L’avènement de la technologie des puces à ADN a constitué un tournant majeur dans l’étude des

processus moléculaires. La quantité d’information générée par les puces est très grande et

nécessite des traitements statistiques adaptés. Parmi ceux-ci le clustering ou classification non

supervisée est une des méthodes les plus employées. Toutefois le clustering souffre de certains

défauts et nécessite l’introduction d’un nouveau concept de bicluster. Ces techniques généralisent

les méthodes deregroupements classiques basées sur le regroupement indépendant des lignes et

des colonnes.Celui-ci correspond à trouver des sous-ensembles de gènes Co-régulés pour des sous

ensembles de conditions. Le biclustering a été pour la première fois introduit par [CHE 00]et,

depuis de nombreux algorithmes ont été proposés.

Page 58: Faculté des sciences Département d'informatique Mémoire de ...

Chapitre2. LeClustering des données d’expression des gènes

52

II.6Les défis du clustering des gènes :

En raison des caractéristiques particulières des données d’expression génétique, et les exigences

particulières du domaine biologique, la classification non supervisée des gènes présente plusieurs

nouveaux défis et est toujours un problème ouvert.

Premièrement, le clustering est généralement la première étape dans la fouille de données

et de la découverte de connaissance. Un algorithme de clustering permet non seulement de

partitionner le jeu de données, mais aussi fournit une représentation graphique de la

structure des clusters qui serait mieux exploitée par les biologistes.

Deuxièmement, en raison de la complexité des procédures d’expériences des micros puce,

les données d’expression génétique contiennent souvent une énorme quantité de bruit. Par

conséquent, les algorithmes de clustering devraient être capables d’extraire des

informations utiles à partir d’un niveau élevé de bruit de fond.

Troisièmement, les biologistes peuvent non seulement être intéressés par les clusters des

gènes, mais aussi peuvent être intéressés par la relation entre ces clusters( par exemple,

quels sont les clusters qui sont plus près les uns des autres, et quels sont ceux éloignés les

uns des autres), aussi que la relation entre les gènes dans le même cluster (par exemple,

quel gène peut être considéré comme le représentant du cluster et les gènes qui sont à la

frontière du cluster).

un bon algorithme de clustering devrait dépendre aussi peu que possible sur les

connaissances antérieures, qui ne sont généralement pas disponibles avant la classification.

Par exemple, un algorithme de clustering qui peut estimer avec précision le « vrai »

nombre de clusters dans le jeu de données serait plus favorable que celui qui exige le

nombre prédéterminé des clusters.

Des études ont démontré que les données d’expression des gènes sont souvent très

connectés et peut y avoir des intersections entre les différents clusters. Par conséquent, les

algorithmes devraient être en mesure d’efficacité afin de gérer cette situation.

Page 59: Faculté des sciences Département d'informatique Mémoire de ...
Page 60: Faculté des sciences Département d'informatique Mémoire de ...

Contribution 1 : Préparation d’une plateforme pour la validation des algorithmesde clustering.

54

III.1 Introduction :

Après avoir fait un tour d’horizon des techniques de classification non supervisée qui existent

dans la littérature, ce troisième chapitre est consacré à la mise en œuvre de notre plateforme.

Rappelons que l’objectif principal de notre travail est en premier temps de développer une

plateforme qui permet d’exécuter et de comparer différents algorithmes de clustering notamment

pour effectuer les trois tâches principales (le prétraitement, la classification et la validation).

Notons par ailleurs que notre logiciel reste ouvert et peut être utilisé également pour d’autres

bases de données autres que celles des expressions des gènes.

Commençons, d’abord, par une présentation de l’architecture générale de notre application avant

de développer les différents algorithmes.

III.2 Architecture générale de l’outil:

L’application que nous nous proposons de développer peut se voir comme étant l’interaction de

plusieurs modules complémentaires indépendants l’un de l’autre. La figure suivante illustre les

différents modules et les interactions qui représentent des échanges de l’information.

Figure .21.Architecture fonctionnelle.

Page 61: Faculté des sciences Département d'informatique Mémoire de ...

Contribution 1 : Préparation d’une plateforme pour la validation des algorithmesde clustering.

55

III.3Le module du prétraitement :

La principale source mondiale des données d’expression des gènes est le système NCBI 3« The

National Center for Biotechnology Information »qui propose une structure de stockage et

d’interrogation des données d’expressions des gènes via le projet Gene Expression Omnibus

(GEO).

Dans le cadre de nos travaux de recherche sur les méthodes de clustering appliquées

principalement sur des données biologiques réelles (séquences génomique ou protéique) de la

banque de données publique du NCBI nous avons implémenté un programme codé en « Perl »

permettant de formater les données d’expérience de puces à ADN de façon à récupérer les

informations nécessaire à l’analyse.

Les données expérimentales déposées dans ces banques sont des données semi structurées. Elles

sont sous forme textuelle en format de données spécifique à la biologie :

Figure .22.Morceau d’un fichier d’une séquence génomique semi structurée.

3http://www.ncbi.nlm.nih.gov/

Page 62: Faculté des sciences Département d'informatique Mémoire de ...

Contribution 1 : Préparation d’une plateforme pour la validation des algorithmesde clustering.

56

Ces documents peuvent être transformés à l’aide de notre outil de prétraitement sous forme de

matrice de données directement exploitable par les algorithmes de clustering.

Figure .23.Parseur : un programme qui permet de formater les données d’expérience despuces à ADN en une matrice exploitable.

Figure .24.Morceau d’un fichier d’une matrice de séquence génomique prête à êtreanalysé par un programme de fouille de données .

Page 63: Faculté des sciences Département d'informatique Mémoire de ...

Contribution 1 : Préparation d’une plateforme pour la validation des algorithmesde clustering.

57

III.4Le module du clustering :

C’est le module qui constitue le noyau de l’application. En interaction avec les autres modules, il

permet d’appliquer un algorithme de clustering à un jeu de données précédemment chargé.

III.4.1 Le module du clustering hiérarchique :

L’algorithme de la classification hiérarchique ascendante est disponible au travers de la fonction

( )contenue dans le package { } de R.

L’initialisation de cet algorithme consiste à calculer un tableau de similarités (ou de dissimilarités)

entre les individus à classer. L’algorithme démarre alors de la partition triviale des n singletons

(chaque individu constitue une classe) et cherche à chaque étape, à constituer des classes par

agrégation des deux éléments les plus proches de la partition de l’étape précédente. L’algorithme

s’arrête avec l’obtention d’une seule classe. Les regroupements successifs sont représentés sous la

forme d’un dendrogramme.

L’appel de la fonction :

L’appel de la fonction hclust( ) avec les paramètres par défaut, se fait de la façon suivante :

= ( , = "complete")

Figure .25.L’interface du module de clustering hiérarchique.

Page 64: Faculté des sciences Département d'informatique Mémoire de ...

Contribution 1 : Préparation d’une plateforme pour la validation des algorithmesde clustering.

58

Les arguments :

Les arguments ou les attributs de la classe "hclust"sont les suivants :

Nom de l’argument Description

Une matrice de distance qu’on peut facilement l’obtenir à l’aide de la

fonction ( ) qui calcule la distance euclidienne entre chaque paire

de données de la matrice initiale.

La méthode d’agrégation des objets. De nombreuxcritères ont été

proposés : « Ward » vise à trouver des clusters sphériques, la méthode de

liaison « complete » trouve des groupes similaires, la méthode de liaison

unique « single » adopte une stratégie de clustering « friends of

friends ». Les autres méthodes peuvent être considérées comme visant

pour les clusters avec les caractéristiques quelque part entre les

méthodes de liaison unique et complete. Notez toutefois que les

méthodes « median » et « centroid » ne conduisent pas à une mesure de

distance monotone, autrement dit, le dendrogramme résultant peut avoir

ce qu’on appelle des inversions (qui sont difficiles à interpréter).

Les méthodes :

Les opérations principales supportées dans la classe" "sont les suivantes :

Nom de l’argument Description

Affiche le résultat du clustering sur l’écran. C’est une méthode de

visibilité publique.

Renvoie un graphique (un dendrogramme).c’est une méthode de

visibilité publique.

Page 65: Faculté des sciences Département d'informatique Mémoire de ...

Contribution 1 : Préparation d’une plateforme pour la validation des algorithmesde clustering.

59

Une fonction interactive qui coupe l’arbre produit par le clustering à la

position verticale du pointeur de la souris et souligne le cluster contenant

la position horizontale du pointeur. C’est une méthode de visibilité

réservée aux algorithmes de classification hiérarchiques.

Dessine des rectangles autour des branches d’un dendrogramme. C’est

une méthode de visibilité réservée aux algorithmes de classification

hiérarchiques.

III.4.2 Le module du clustering par partitionnement :

III.4.2 .1 Les algorithmes des k moyenne :

Il est important de noter que contrairement à la méthode hiérarchique précédente, le nombre declasses k doit être déterminé à priori. Ces algorithmes requièrent une représentation vectorielle desindividus dans muni d’une métrique généralement « euclidienne ».Ayant initialisé k centres de classes par tirage aléatoire, tous les individus sont affectés à la classedont le centre est le plus proche au sens de la métrique choisie.Dans une deuxième étape. L’algorithme calcule des barycentres de ces classes qui deviennent lesnouveaux centres. Le procédé (affectation de chaque individu à un centre, détermination descentres) est itéré jusqu’à convergence vers un minimum (local) ou un nombre d’itérationsmaximum fixé.

L’appel de la fonction :

Différents types d’algorithmes ont été implémentés autour du même principe de réallocationdynamique des individus à des centres de classes parmi les quels :

Les algorithmes des kmeans (MacQueen)[MAC 67], kmeans (Hartigan and Wong),kmeans(Lloyd) [LLO 82] et kmeans (Forgy) sont implémentés à travers lafonction du package de R.

L’appel de la fonction avec les paramètres par défaut, se fait de la façon suivante :

L’algorithme kmeans de (Lloyd-Forgy) est implémenté à travers la fonctiondu package de R.

Page 66: Faculté des sciences Département d'informatique Mémoire de ...

Contribution 1 : Préparation d’une plateforme pour la validation des algorithmesde clustering.

60

Contrairement aux méthodes implémentés dans le package , l’algorithme de (Lloyd-Forgy) donne le choix à l’utilisateur de spécifier la mesure de distance utilisée.

Les arguments :

Les arguments ou les attributs de la classe sont les suivants :

Nom de l’argument Description

Une matrice numérique de données d’entrée.

Soit le nombre de clusters, disons k, ou un ensemble de centres initiaux

(distincts). Si un entier k est donné alors un ensemble aléatoire

d’individus différents de la matrice x est choisi comme centres initiaux.

Le nombre maximum d’itérations.

Si l’argument « centers » est un nombre, combien d’ensembles aléatoires

Devraient être choisis?

La mesure de distance à utiliser, ça doit être l’une des métriques

suivantes « euclidean », « maximum », « manhattan », « camberra »,

« binary », « pearson », « correlation », « spearman » ou « kendall ». ce

paramètre concerne la fonction du package

Une chaîne de caractères indiquant le nom de l’algorithme utilisé. Cet

argument est utilisé que par la fonction du package

Page 67: Faculté des sciences Département d'informatique Mémoire de ...

Contribution 1 : Préparation d’une plateforme pour la validation des algorithmesde clustering.

61

Figure .26.L’interface du module de clustering par partitionnement

Les objets :

Une instance de la classe qui décrit le résultat du processus de clustering est une liste decomposants :

Nom de l’objet Description

Un vecteur d’entiers (de 1 à k) indiquant le cluster à qui appartient

chaque point.

Une matrice des centres de clusters.

La somme des carrés des distances inter clusters.

Le nombre de point dans chaque cluster.

Page 68: Faculté des sciences Département d'informatique Mémoire de ...

Contribution 1 : Préparation d’une plateforme pour la validation des algorithmesde clustering.

62

La classe partition:

La classe « partition » est une classe interface du package , utilisée par les fonctions declustering contenues dans ce même package : la fonction , et

Les objets :

Les objets de la classe « partition » est une liste avec les éléments suivants :

Nom de l’objet Description

Un vecteur d’entiers de taille le nombre d’observations, donnant pour

chaque observation le numéro du cluster a qui elle appartient.

Renvoie l’appel de fonction.

Une liste composée de 3 éléments (width, clus.avg.widths et avg.width) :

Une matrice , pour chaque observation , le cluster a qui

appartient cette observation ainsi que le cluster voisin de (le cluster qui

ne contient pas d’observation mais ou la dissimilarité moyenne entre ses

observations et est minimale) et la valeur de la mesure silhouette de

l’observation notée .

La valeur moyenne de la matrice par cluster et

non pas par observation.

La valeur moyenne de la matrice pour toutes les

observations.

La valeur de la fonction objective pour la classification finale du jeu de

données.

Renvoie la matrice de dissimilarité des données.

Renvoie la matrice issue d’une normalisation si la matrice d’entrée n’était

pas normalisée et elle a été calculée par le programme lui-même.

Remarque :La « silhouette » de l’observation est donnée par la formule suivante :

ou Étant la dissimilarité moyenne entrel’observation et tous les autres points du même cluster. Pour tous les autres

Page 69: Faculté des sciences Département d'informatique Mémoire de ...

Contribution 1 : Préparation d’une plateforme pour la validation des algorithmesde clustering.

63

clusters, est la moyenne des dissimilarités de l’observation par rapport aux observationsdes clusters , la plus petite dissimilarité est notée .

III.4.2.2 L’algorithme CLARA:

L’algorithme CLARA (pour Clustering LARge Application) entièrement décrit dans le premierchapitre du mémoire. Comparé à d’autres méthodes de partitionnement, tel que « pam », il peuttraiter des ensembles de données beaucoup plus large. Cela est réalisé en tenant compte des sousensembles de données de taille fixe, donné par le paramètre (sampsize) tels que le temps et lataille de stockage deviennent linéaires en plutôt que quadratique. L’algorithme est disponible autravers de la fonction contenue dans le package de R.

L’appel de la fonction :

L’appel de la fonction avec les paramètres par défaut, se fait de la façon suivante :

Les arguments :

Les arguments ou les attributs de la classe sont les suivants :

Nom de l’argument Description

La matrice de données, chaque ligne correspond à une observation, et

chaque colonne correspond à une variable. Les variables doivent être

numériques. Les valeurs manquantes dans la matrice sont autorisées.

Un entier, le nombre de clusters. Il est nécessaire que ou est

le nombre d’observations (i.e., ).

Une chaîne de caractères spécifiant la métrique à utiliser pour le calcul

des différences entre les observations. Les options disponibles

actuellement sont « euclidean » et « manhatten »

Les autres arguments sont optionnels :

C’est une valeur logique indiquant que si les mesures de la matrice sont

normalisées avant le calcul. Les mesures sont normalisées pour chaque

variable (colonne) en soustrayant la valeur moyenne de la variable et en

Page 70: Faculté des sciences Département d'informatique Mémoire de ...

Contribution 1 : Préparation d’une plateforme pour la validation des algorithmesde clustering.

64

divisant par l’écart type.

Un entier, le nombre d’échantillons à tirer de l’ensemble des données. La

valeur par défaut est mise à cinq.

Un entier indiquant le nombre d’observation dans chaque échantillon. Il

devrait être plus élevé que le nombre de clusters k et inférieur au nombre

d’observations

Un entier indiquant un niveau de trace pour une sortie de diagnostic lors

de l’exécution de l’algorithme.

Une valeur logique indiquant si les médoïdes doivent être retournés à

l’identique à certaines lignes de la matrice d’entrée. Si FALSE, le

paramètre keep.data doit être aussi FALSE.

Une valeur logique indiquant si les données doivent être conservées dans

le résultat. Ce paramètre s’il est mis à FALSE, permet d’économiser de la

mémoire (et donc du temps).

Une valeur logique indiquant si le générateur de nombres aléatoires de R

doit être utilisé à la place de la primitive intégrée dans l’algorithme.

FALSE c’est une valeur choisie de rester toujours FALSE à cause des

erreurs de compatibilité entre le code source d’origine « FORTRAN » et

le port à la suite en « C ».

Les méthodes :

Les méthodes utilisées par la classe sont les suivantes :

Affiche le résultat du clustering sur l’écran. C’est une méthode devisibilité publique.

Renvoie un graphique. C’est une méthode de visibilité publique.

Les objets :

Une instance de la classe qui décrit le résultat du processus de clustering est une liste decomposants :

Page 71: Faculté des sciences Département d'informatique Mémoire de ...

Contribution 1 : Préparation d’une plateforme pour la validation des algorithmesde clustering.

65

Nom de l’objet Description

Les labels d’échantillon ou le nombre de cas d’observations dans le

meilleur échantillon qui est l’échantillon utilisé par l’algorithme

pour la partition finale.

Les objets représentatifs des clusters.

Les indices des médoïdes : ou est la matrice

de données d’entrée.

La valeur de la fonction objective pour la classification finale du jeu de

données. C’est un objet de la classe « partition ».

Un vecteur d’entiers de taille le nombre d’observations, donnant

pour chaque observation le numéro du cluster a qui elle appartient. C’est

un objet de la classe « partition ».

Une matrice, ou chaque ligne donne une information numérique pour un

cluster donné. (la cardinalité du cluster, la dissimilarité maximale et

moyenne entre les observations dans un cluster et les médoïdes du

cluster). La dernière colonne est la dissimilarité maximale entre les

observations dans un cluster et les clusters médoïdes divisée par la

dissimilarité minimale entre les médoïdes des clusters et les médoîdes

d’un cluster donné. Si la valeur est petite, le cluster est bien séparé des

autres clusters.

Renvoie la matrice de dissimilarité des données.

Renvoie l’appel de fonction.

Renvoie la matrice issue d’une normalisation si la matrice d’entrée

n’était pas normalisée et elle a été calculée par le programme lui-même.

Une liste composée de 3 éléments (width, clus.avg.widths et avg.width).

C’est un objet de la classe « partition ».

Page 72: Faculté des sciences Département d'informatique Mémoire de ...

Contribution 1 : Préparation d’une plateforme pour la validation des algorithmesde clustering.

66

III.4.2.3 L’algorithme PAM :

L’algorithme PAM (pour Partitioning clustering of the data into k clusters Around Medoids) estdisponible au travers de la fonction contenue dans le package de R. c’est uneversion robuste des algorithmes de classification autour des centres mobiles puisqu’il est moinssensible à des valeurs atypiques. Il permet également de traiter des matrices de dissimilarités. Enrevanche l’algorithme est limité au niveau du nombre d’observations (200).

L’appel de la fonction :

L’appel de la fonction avec les paramètres par défaut, se fait de la façon suivante :

Les arguments :

Les arguments ou les attributs de la classe sont les suivants :

Nom de l’argument Description

Une matrice de données ou une matrice de dissimilarité. Chaque

ligne correspond à une observation et chaque colonne correspond à

une variable. Les variables doivent être numériques. Les valeurs

manquantes sont autorisées.

Un entier positif spécifiant le nombre de clusters, il doit être

inférieur au nombre d’observations.

Un booléen, si TRUE (le paramètre par défaut) alors la matrice est

considérée comme une matrice de dissimilarité. Si FALSE, alors

est considérée comme une matrice d’observations par variables.

Une chaîne de caractères spécifiant la mesure a utiliser pour

calculer la dissimilarité entre observations. Les mesures disponibles

actuellement sont : « euclidean » et « manhattan ». si estdéjà une

matrice de dissimilarité, alors cet argument est ignoré.

Cet argument est mis à NULL (par défaut) ou prend un vecteur de

taille k d’entiers d’indices pris dans l’ensemble spécifiant les

médoïdes initiaux plutôt que laisser le choix à l’algorithme.

Page 73: Faculté des sciences Département d'informatique Mémoire de ...

Contribution 1 : Préparation d’une plateforme pour la validation des algorithmesde clustering.

67

Un booléen, si TRUE, les mesures dans la matrice sont

normalisées avant le calcul de la matrice de dissimilarité. Si la

matrice est déjà une matrice de dissimilarité, l’argument est

ignoré.

Un booléen, si TRUE, seulement l’objet « clustering » (voir les

objets de la classe « partition ») est retourné.

Un booléen indiquant si la phase « swap » est utilisée. La valeur par

défaut est mise à TRUE, correspondant à l’algorithme original.

Notant que « swap » consomme plus de temps que l’algorithme

« build » pour un nombre d’observations élevé. Le paramètre peut

être ignoré .

et Un booléen indiquant si les dissimilarités et/ou les données de la

matrice d’entrées doivent être retenues à la sortie. En mettant ceci

à FALSE donne moins de résultats et gagner du temps d’allocation

mémoire.

Un entier indiquant un niveau de trace pour le diagnostic

d’impression lors de la phase de construction et d’échange de

l’algorithme. La valeur par défaut zéro n’imprime rien.

Les méthodes :

Les méthodes utilisées par la classe sont les suivantes :

Affiche le résultat du clustering sur l’écran. C’est une méthode devisibilité publique.

Renvoie un graphique. C’est une méthode de visibilité publique.

Les objets :

Une instance de la classe qui décrit le résultat du processus de clustering est une liste de

composants :

Page 74: Faculté des sciences Département d'informatique Mémoire de ...

Contribution 1 : Préparation d’une plateforme pour la validation des algorithmesde clustering.

68

Nom de l’objet Description

C’est les modoïdes ou les objets représentatifs des clusters. Si la

matrice de dissimilarité est donnée à entrée de l’algorithme « pam »

alors le vecteur des observations est généré à la sortie sinon l’objet

« medoids » est une matrice avec dans chaque ligne un médoïde.

Un vecteur d’entiers des indices des médoïdes.

Le vecteur des clusters (voir les objets de la classe « partition »)

La fonction objective après la première et la deuxième phase de

l’algorithme « pam ».

Un objet de la classe « partition ».

La liste avec les informations de la fonction « silhouette » voir les

objets de la classe « partition ».

La matrice de dissimilarité, peut avoir la valeur NULL, voir les objets

de la classe « partition ».

Génère l’appel.

Renvoi la matrice (possible normalisée).

-Un vecteur avec une longueur égale au nombre de clusters, en

précisant quels sont parmi les clusters qui sont isolés et ceux qui ne le

sont pas : (

-un cluster est un si et seulement si son diamètre est

plus petit que sa séparation.

-un cluster est un Si et seulement si pour chaque

observation la dissimilarité maximale entre et toute autre

observation du cluster est plus petite que la dissimilarité minimale

entre et toute observation d’un autre cluster.

-Chaque est également un .

Page 75: Faculté des sciences Département d'informatique Mémoire de ...

Contribution 1 : Préparation d’une plateforme pour la validation des algorithmesde clustering.

69

III.4.2.4 L’algorithme QT:

L’algorithme QT (Quality Threshold) décrit par Heyer et al en (1999) [HEY 99] autorise à ne pasclassifier certains gènes. L’idée de base de cette approche est de fixer arbitrairement un diamètrede classe, un nombre minimal de gènes par classe, et de construire les plus grands clusterspossibles ne dépassant pas le diamètre fixé. Les clusters sont construits en prenant successivementchaque gène disponible comme point de départ et en agrégeant itérativement les gènes les plusproches du cluster. La procédure s’arrête quand le plus grand cluster construit a moins de gènesque le minimum fixé.Cet algorithme résout le problème du non exhaustivité : les gènes qui ne rentraient dans aucuncluster QT sont laissés de côté, ce qui évite d’en clustériser « de force ».toute fois un des problèmede cet algorithme est qu’il n’est pas basé sur un modèle, mais sur une approche plus constructive.Il est alors difficile de décrire les clusters en intension. De plus, l’aspect arbitraire des paramètresà fixer est gênant car on risque dans un sens de ne pas sélectionner des gènes qui faisaient pourtantpartie du groupe, on risque également d’intégrer des gènes qui avaient incidemment un profilproche de celui du groupe mais qui n’en faisaient pas partie. C’est tout le problème posé par uncritère arbitraire et donc non inféré des données ou d’une connaissance à priori.

L’algorithme QT est implémenté dans R par le package et l’appel de la fonction sefait comme suit :

Les arguments :

Nom de l’argument Description

Une matrice de données numériques.

Un rayon maximal des clusters.

Un objet de la classe « kccaFamily » inclut dans le package

indiquant la mesure de distance à utiliser.

Un objet de la classe « flexclustControl » spécifiant le nombre

minimum d’observations par cluster(min.size), et des essais par

itération (ntry).

Un booléen indiquant si on enregistre une copie de (la matrice

d’entrée) dans les objets de sortie ou non.

Un booléen qui indique si on exécute kcca après que l’algorithme QT a

convergé ?

Page 76: Faculté des sciences Département d'informatique Mémoire de ...

Contribution 1 : Préparation d’une plateforme pour la validation des algorithmesde clustering.

70

III.4.3 Le module du clustering à base de densité :

L’algorithme DBSCAN était introduit par Martin Ester et al en (1996)[MAR 96]. Il estimplémenté dans le package de R et l’appel de la fonction se fait comme suit :

Figure .27.L’interface du module de clustering à base de densité.

Les arguments :

Les arguments ou les attributs de la classe sont les suivants :

Nom de l’argument Description

Une matrice de données ou de dissimilarité.

Le rayon maximum de voisinage.

Nombre minimum d’objets dans le voisinage d’un point.

Un booléen indiquant si les données d’entrée sont normalisées ou

non.

“dist” traite la matrice comme une matrice de dissimilarité, “raw”

traite les données comme des lignes.

Un booléen indiquant si l’objet “issed” est généré à la sortie ou

non.

Page 77: Faculté des sciences Département d'informatique Mémoire de ...

Contribution 1 : Préparation d’une plateforme pour la validation des algorithmesde clustering.

71

Pour voir le déroulement de l’algorithme. Si le paramètre

alors pas de sortie, si

alors une sortie à chaque itération est générée, si

alors une sortie à chaque sous itération.

Il prend la valeur NULL ou un vecteur de points.

Les méthodes :

Les méthodes utilisées par la classe sont les suivantes :Montre une statistique du nombre de points appartenant à des clusters qui sont

des noyaux et des points frontières.Distingue entre les noyaux et les points de la frontière par un symbole graphique.

Les objets :

L’algorithme DBSCANfournit à la sortie un objet de la classe qui est une liste decomposants:

un vecteur d’entiers indiquant l’appartenance aux clusters. Les observations dubruit sont codés 0.

Un vecteur logique indiquant si un point non noyau (mais non pas un point bruit niun point frontière).

III.4.4 Le module du clustering flou :

III.4.4.1 L’algorithme Fuzzy-c-means :

Deux types d’algorithmes sont implémentés pour les versions généralisées des algorithmes des c-moyennes floues :

« Fuzzy-c-means » un algorithme introduit par Bezdek [BEZ 81] « Unsupervised Fuzzy Competitive Learning » introduit par Chung et Lee [LEE 92].

L’appel de la fonction :

L’appel de la fonction ( )avec les paramètres par défaut, se fait de la façonsuivante :

Page 78: Faculté des sciences Département d'informatique Mémoire de ...

Contribution 1 : Préparation d’une plateforme pour la validation des algorithmesde clustering.

72

Figure .28.L’interface du module de clustering flou.Les arguments :

Les arguments ou les attributs de la classe "Fuzzy cmeans"sont les suivants :

Nom de l’argument Description

La matrice de données ou les colonnes correspondent aux variables et les

lignes aux observations.

Nombre de clusters ou des valeurs initiales pour les centres des clusters.

Un nombre >1 indiquant le degré de fuzzification.

Nombre maximal d’itérations.

Un booléen, si TRUE, durant l’apprentissage génère des résulttats.

La mesure de distance : « euclidean » ou « manhattan ».

Une chaîne de caractères indiquant le nom de l’algorithme utilisé=

« cmeans » ou « ufcl ».

Un nombre entre 0 et 1 indiquant la vitesse d’apprentissage pour

l’algorithme « ufcl ». la valeur par défaut est 0.3

Un vecteur numérique des poids reliés aux nombre d’observations de la

matrice x si nécessaire.

Une liste de paramètres de contrôle.

Page 79: Faculté des sciences Département d'informatique Mémoire de ...

Contribution 1 : Préparation d’une plateforme pour la validation des algorithmesde clustering.

73

III.4.4.2 L’algorithme Fuzzy-c-shell :

L’algorithme introduit par N.Dave [DAV 96] pour la segmentation des images numériques. Il estimplémenté dans le package de R.

L’appel de la fonction :

L’appel de la fonction Fuzzy cshell( ) avec les paramètres par défaut, se fait de la façonsuivante :

Les arguments :

Les arguments ou les attributs de la classe " "sont les suivants :

La classe « fclust » :

La classe « fclust » est une classe interface contenue dans le package de R et qui estutilisée par beaucoup de classes héritières : « Fuzzy cmeans », « Fuzzy cshell »et « ufcl ».

Nom de l’argument Description

La matrice de données ou les colonnes correspondent aux variables et les

lignes aux observations.

Nombre de clusters ou des valeurs initiales pour les centres des clusters.

Un nombre >1 indiquant le degré de fuzzification.

Nombre maximal d’itérations.

Un booléen, si TRUE, durant l’apprentissage génère des résulttats.

Il existe une seule version « cshell »

La mesure de distance : « euclidean » ou « manhattan ».

Le rayon des clusters résultants. Sa valeur par défaut est égale à 0.2 pour

tous les clusters.

Page 80: Faculté des sciences Département d'informatique Mémoire de ...

Contribution 1 : Préparation d’une plateforme pour la validation des algorithmesde clustering.

74

Les objets de la classe« fclust »:

Nom de l’objet Description

Les centres finaux produits par l’un des algorithmes : (cmeans, cshell,

ufcl)

Le nombre de points dans chaque cluster du clustering strict.

Un vecteur d’entiers contenant les indices des clusters où les données

sont assignées pour le cas du clustering strict obtenu en assignant les

points à la première classe avec un maximum d’appartenance.

Le maximum d’itérations.

Une matrice avec les degrés d’appartenance des points aux clusters.

La valeur de la fonction objective.

L’appel utilisé pour créer les objets.

III.4.4.3 L’algorithme fanny :

L’appel de la fonction :

L’appel de la fonction avec les paramètres par défaut, se fait de la façon suivante :

Les arguments :

Les arguments ou les attributs de la classe sont les suivants :

Nom de l’argument Description

Une matrice de données ou chaque ligne correspond à une observation

et chaque colonne à une variable. ou une matrice de dissimilarités

dépendant de l’argument « diss ». toutes les variables de la matrice

doivent être numériques et les valeurs manquantes sont autorisées pour

la matrice de données. Si x est une matrice de dissimilarité sataille est

égale à ou n est le nombre d’observations.

Page 81: Faculté des sciences Département d'informatique Mémoire de ...

Contribution 1 : Préparation d’une plateforme pour la validation des algorithmesde clustering.

75

Un entier indiquant le nombre de clusters désirés.

n est le nombre d’observations.

Un booléen, si TRUE(le paramètre par défaut) alors x est supposé être

une matrice de dissimilarité. Sinon x est traiter comme une matrice

d’observations par variables.

C’est un nombre supérieur à 1 indiquant l’exposant d’appartenance

utilisé dans le critère de satisfaction. Il est mis par défaut à 2.

Une chaîne de caractère spécifiant la mesure à utiliser pour le calcul

des différences entre les observations. Les options sont :

« euclidean »(par défaut ) , « manhattan » et SqEuclidean ». en

utilisant cette dernière métrique, on obtient des résultats similaires à

ceux de l’algorithme « fuzzyc-means ». si la matrice x est déjà une

matrice de dissimilarité alors ce paramètre est ignoré.

Un booléen, si TRUE, les valeurs dans la matrice x sont normalisées

avant le calcul des dissimilarités. Si x est déjà une matrice de

dissimilarité alors cet argument est ignoré.

Il prend la valeur NULL par défaut ou une matrice (n*k) pour

spécifier une matrice d’appartenance de départ.

Un booléen, s’il est vrai aucune information « silhouette » sera

calculée et retournée en résultat.

Des booléens indiquant si la matrice d’entrée doit être conservée dans

les résultats. Leurs valeurs par défaut à FALSE permet de gagner du

temps d’allocation mémoire.

Nombre maximum d’itérations et de la tolérance par défaut de

convergence. Pour « fanny »les valeurs par défaut maxit=500.

Un entier spécifiant un niveau de trace pour le diagnostique du

déroulement de l’algorithme. Par défaut il est mis à zéro et n’imprime

rien.

Page 82: Faculté des sciences Département d'informatique Mémoire de ...

Contribution 1 : Préparation d’une plateforme pour la validation des algorithmesde clustering.

76

III.5 Le module de validation du clustering :

III.5.1 La validation interne :

A partir d’un résultat de classification non supervisée et de l’information intrinsèque dans la base

de données on mesure la qualité du résultat obtenu. Dans notre étude nous avons implémenté cinq

indices de validation interne :

-L’indice de connectivité :

-L’indice de silhouette.

-L’indice de Dunn.

-L’indice de Calinski et Harabasz.

-L’indice de Hubert et Levin.

L’indice de Silhouette :

L’indice de Silhouette : est définit par Rousseeuw [ROU 87] Pour toute observation de

l’ensemble par la fonction suivante :

∀ ∈ ; ( ) =−

( , )

Où :

est la distance moyenne entre l’observation et toutes les autres observations de la classe à la

quelle elle appartient ( ).

∀ ∈ ; =| ( )|

( , )

∈ ( )

est la distance moyenne entre l’observation et les observations dans la classe la plus proche

de :

∀ ∈ ; = ∈( )

( , ) ù ( , ) = /| | ( , )

On notera que l’indice de silhouette est borné : − ≤ ( ) ≤ de plus, lorsque ( ) est proche

de 1, est dit bien classé dans ( ). Quant ( ) est proche de 0, alors se situe entre deux

classes. Finalement, si ( ) est proche de -1, est dit mal classé dans ( ) et doit être rattaché

à un autre cluster le plus proche.

Chaque classe est aussi représentée par une silhouette qui montre quels objets sont correctement

classés à l’intérieur de cette classe et lesquels n’ont simplement qu’une position intermédiaire.

Page 83: Faculté des sciences Département d'informatique Mémoire de ...

Contribution 1 : Préparation d’une plateforme pour la validation des algorithmesde clustering.

77

Pour une classe donnée, son indice de silhouette est définit par la moyenne des indices de

silhouette des individus qui lui appartiennent :

∀ ∈ ; ( ) = ( )

/| |

L’indice de silhouette global de la partition est donné pa la moyenne globale des largeurs de

silhouettes dans les différentes classes qui composent la partition :

( ) = ( )/

La meilleure partition retenue est alors celle qui permet d’obtenir une silhouette globale

maximale.

L’indice de Dunn:

L’indice de Dunn est basé sur l’identification de clusters compacts et bien séparés. Il est définit

par le rapport entre la plus petite dissimilarité interclasse (c'est-à-dire entre deux individus

de deux classes différentes) et la plus grande dissimilarité intra classe (c'est-à-dire entre

deux individus de la même classe).

( ) = /

L’indice de Dunn prend que des valeurs strictement positives et il doit être maximisé.

L’indice de Calinski et Harabasz:

L’indice de Calinski et Harabasz(R.B.Calinsky, 1974), est une fonction de la distance intra-classe

et la distance interclasse. Elle est calculée par la formule suivante :

Soit le résultat d’une classification non supervisée des gènes. Les gènes sont répartis sur les

différents clusters. ( ) est la somme des distances inter cluster et ( ) la somme des distances

intra cluster.

L’indice de Calinski et Harabasz se calcule de la sorte :

( ) =( )/( − )

( )/( − )

( ) = / ( , )

( )( )

( ) = / ( , )( )( )

Page 84: Faculté des sciences Département d'informatique Mémoire de ...

Contribution 1 : Préparation d’une plateforme pour la validation des algorithmesde clustering.

78

étant le nombre de gènes et ( ) représente le numéro du cluster contenant le gène i. ( , ) est

la distance entre les gènes i et j. Plus la valeur de l’indice est élevée, meilleur sera le clustering.

Plusieurs méthodes de clustering seront effectuées en variant le nombre de clusters, pour chacun

l’indice de Calinski et Harabasz sera calculé. Le nombre de clusters optimal sera celui

correspondant à l’indice le plus élevé.

L’indice de Hubert et Levin[HUB 76]:

L’indice de Hubert et Levin ou connu sous le nom de C-index (L.J. Hubert, 1976) est calculé par

la formule suivante :

( ) =( ) − ∗

∗ − ∗, ≠

Avec :

- ( ) est la somme des distances intra-classes.

- la plus petite distance intra-classes.

- la plus grande distance intra-classes.

- est le nombre de clusters.

- est le nombre de distances intra-classes

La valeur de qui minimise ( ) est choisie comme le bon nombre de classes. Une bonne

partition est donc indiquée par une petite valeur de l’indice HL qui est toujours comprise entre 0 et

1.

L’indice de Connectivité :

Notations :

Soit : Le nombre des observations.

: Le nombre des variables.

, … , : Les observations à classer.

= { , … , } une classification à tester.

( ) est la classe contenant c'est-à-dire ∈ ( )

Pour tout et ∈ {1, … , }\( )

est le voisin le plus proche de : ( , ) ≤ ( , ) ≤

⋯ , ≤ ⋯ ≤ ( ,( )

)

Page 85: Faculté des sciences Département d'informatique Mémoire de ...

Contribution 1 : Préparation d’une plateforme pour la validation des algorithmesde clustering.

79

On pose pour tout , ∈ {1, … , } ,( )

=0 ,

( )∈ ( )

Pour une classification , l’indice de connectivité est définit comme suit :

( ) = ( ,( )

)

, ,…,

Figure .29.L’interface du module de validation interne.

On notera que l’indice de connectivité prend ses valeurs dans [0,∞[ et c’est un coefficient qui doit

être minimisé. De plus, lorsque l’indice est proche de zéro veut dire qu’il existe une bonne

connectivité à l’intérieur des classes.

Page 86: Faculté des sciences Département d'informatique Mémoire de ...

Contribution 1 : Préparation d’une plateforme pour la validation des algorithmesde clustering.

80

III.5.2La validation externe :

Définition :

Etant donnée une partition existante de l’ensemble des individus , = { , … , }.

= { , … , } une classification obtenue à l’aide d’un algorithme de classification (hiérarchique,

k-means,…). L’objectif est de comparer la classification et la partition .

Soit deux individus : et y. Quatre cas sont possibles :

Cas1 :∃ ∈ et ∃ ∈ tel que , ∈ et , ∈

Cas2:∃ ∈ et ∃ ≠ ∈ tel que , ∈ et ∈ , ∈

Cas3:∃ ≠ ̀ ∈ et ∃ ∈ tel que ∈ , ∈ ̀ et , ∈

Cas4:∃ ≠ ̀ ∈ et ∃ ≠ ∈ tel que : ∈ , ∈ ̀ et ∈ , ∈

Notons par , l’ensemble des paires ( , ) vérifiant le cas et par = | |.Quatre indice de

validation externe peuvent être définis :

L’indice de Rand : =

L’indice de Jaccard: =

L’indice de Folkes et Mallows : = ∗

L’indice de Russel : =

Page 87: Faculté des sciences Département d'informatique Mémoire de ...

Contribution 1 : Préparation d’une plateforme pour la validation des algorithmesde clustering.

81

Figure .30.L’interface du module de validation externe.

III.5.3 La validation biologique :

La validation biologique évalue les capacités des algorithmes de classification non supervisée à

Produire des groupes de gènes biologiquement significatifs. Ainsi elle facilitera l’interprétation

des données.

L’interprétation biologiques des données génétiques issues d’une classification nécessite de

corréler les résultats de ces données à des « informations encyclopédiques » contenues dans

certaines bases de données. Ces encyclopédies sont appelées « Ontologies ».

Le consortium « Gene Ontology »4 (GO) distribue une classification qui est l’une des références

en génomique fonctionnelle, le principal but de (GO) est de définir un vocabulaire uniforme (ce

qu’on appelle Ontologie) qui décrit :

-Les fonctions des gènes.

-Les processus biologiques dans lesquels ils sont impliqués.

-Les composants cellulaires ou ils agissent.

4Http : www.geneontology.org

Page 88: Faculté des sciences Département d'informatique Mémoire de ...

Contribution 1 : Préparation d’une plateforme pour la validation des algorithmesde clustering.

82

Parmi les bases de données d’expression des gènes on cite : Gene Expression Omnibus(GEO)5 qui

est une base de données d’expression de gènes et aussi un système de recherche de ces données.

III.5.4 L’indice de validation biologique :

Dans notre étude nous avons utilisé l’indice de validation biologique introduit parDATTA &

DATTA [DAT 03] dont le principe est le suivant :

On note , l’ensemble des gènes dans une expérience donnée. Etant donné un sous ensemble de

l’ensemble des gènes dont les fonctions biologiques sont connues en utilisant une base de

données ontologique existante. On suppose que chaque gène dans l’ensemble appartient à un ou

plusieurs classes biologiques : = , … , .

Etant donnée une partition = { , … , } issue d’un algorithme de clustering donné.

On note ( )le cluster biologique contenant le gène (avec la possibilité de plusieurs fonctions

biologiques contenant le gène et ( )est le cluster biologique contenant le gène .

Comme les deux gènes et appartiennent au même groupe biologique on espère que les deux

clusters statistiques ( )et ( )sont les mêmes. Ainsi la formule mathématique de l’indice de

validation biologique est le suivant :

( , ) = / ( − ) ( ( ) = ( ))∈

( ∩ )est le nombre de gènes dans le cluster statistique dont les fonctions biologiques sont

connes (au moins une fonction biologique).

On assigne à la fonction indicatrice ( ( ) = ( ))la valeur 1 s’il existe un groupe biologique

commun entre les gènes et (une seule fonction biologique suffise) sinon ( ) = ( ) = .

L’intervalle de l’indice VB est[0,1], une valeur proche de 1 correspond à des clusters homogènes.

5Http : www.ncbi.nlm.nih.gov/geo/

Page 89: Faculté des sciences Département d'informatique Mémoire de ...

Contribution 1 : Préparation d’une plateforme pour la validation des algorithmesde clustering.

83

III.6 Technologies et langages de programmation :

Le logiciel réalisé est une application web installée sur un serveur HTTP (Hyper Text Transfert

Protocol), et des outils de liaison (packages et langage), voir la figure. Les postes clients se

connectent sur cette application à l’aide d’un navigateur (Iexplorer, Netscape, Mozilla…). Le

principe de fonctionnement repose sur la mécanique client/serveur, le client interroge le serveur à

l’aide d’une requête HTTP et le serveur retourne généralement une réponse sous la forme d’une

page HTML (Hyper Text Markup Language).Les paragraphes ci-dessous décrivent les choix

techniques que nous avons adoptés.

-Serveur Apache :

Le serveur Web utilisé est Apache. Cet outil compte parmi les serveurs Webopen-source les plus

utilisés pour l’interprétation des requêtes HTTP. Apache est indispensable pour l’interfaçage entre

le serveur et l’utilisateur via les pages et formulaires HTML. Il permet également l’exécution de

scripts développés côté serveur.

- La méthode CGI :

Ce modèle de programmation CGI pour (Common Gateway Interface) a été utilisé pour interfacer

les différentes applications, par exemple des pages HTML avec des serveurs d’information

(comme une base de données). En d’autres termes cette méthode permet la génération de pages

Internet dynamique en réponse aux requêtes formulées par les utilisateurs. En effet, un document

HTML est un fichier texte statique dont l’information ne change pas tant qu’il n’est pas édité.

Grace à la méthode CGI, l’information devient dynamique et un programme peut être exécuté en

temps réel.

- Langage de script R :

Nommé ainsi en référence à ses deux auteurs, Ross Ihaka et Robert Gentleman (1996).

R est un langage orienté objet ce qui signifie que les données, les variables, les fonctions et les

résultats sont stockés dans la mémoire de l’ordinateur sous forme d’objets qui ont chacun un nom.

Page 90: Faculté des sciences Département d'informatique Mémoire de ...

Contribution 1 : Préparation d’une plateforme pour la validation des algorithmesde clustering.

84

R est également un langage interprété, i.e. non compilé comme les autres

langages de script (tel que PERL ou PHP) ne nécessitent pas de compilations préalables, ils sont

«interprétés » à la volée par un programme auxiliaire qui est l’interpréteur.

R possède un environnement graphiqued’applications qui permet l’exécution de commandes non

seulement en mode interactif maisaussi sous forme de programmes (scripts). Cette dernière

fonctionnalité permet aux développeurs decréer des librairies de fonctions.Le noyau de R est

implémenté essentiellement en langage C etFORTRAN.Dans un premier temps développé pour

les systèmes d’exploitation libres (et gratuits) àsavoir UNIX et Linux, R est très vite devenu

disponible pour les systèmes d’exploitationWindows et Mac-OS.R est distribué gratuitement

suivant les termes des licencespubliques (GPL). Les codes sources et modules d’applications sont

donc librement mis à la disposition de l’ensemble de la communauté scientifique. à partir du site

Web du CRAN (Comprehensive R Archive Network).

Le langage R est utilisé pour l’implémentation de l’ensemble des algorithmes de clustering

développées dans cette application. Il a été choisi pour cesnombreux avantages :

-Codes sources libres, et donc réutilisables,

-Codes interprétés, par conséquent rapide à déboguer,

-Possibilité de construire des librairies de fonctions,documentation très riche.

-De plus, les programmes R sont utilisables en tâche de fond. Ils peuvent être appelés par d’autres

programmes tels que des scripts PERL sans que l’utilisateur ne s’en aperçoive

Le principe de fonctionnement de l’application est modélisé sur le schéma suivant :

Page 91: Faculté des sciences Département d'informatique Mémoire de ...

Contribution 1 : Préparation d’une plateforme pour la validation des algorithmesde clustering.

85

Figure .31.La modélisation dynamique de l’application web.

(1) Connexion à l’application Web par un explorateur Internet et demande du formulaire

d’analyse par l’utilisateur.

(2) Réception de la demande par le serveur Apache ; envoi et

(3) Affichage du formulaire d’analyse à l’utilisateur au niveau de son explorateur Internet.

(4) Remplissage du formulaire par l’utilisateur et envoi aux programmes d’analyse.

(5) Réception et formatage des données du formulaire par le programme CGI.

(6) Transfert des paramètres au programme R de traitement des données.

(7) Retour des résultats générés par le programme R au programme CGI.

(8) Formatage et

(9) Affichage des résultats à l’utilisateur au niveau de son explorateur Internet.

Page 92: Faculté des sciences Département d'informatique Mémoire de ...
Page 93: Faculté des sciences Département d'informatique Mémoire de ...

Contribution2 : Evaluation des algorithmes de clustering sur la plateforme : casdes données numériques d’expression des gènes.

87

IV.1 Introduction :

Cette dernière partie du mémoire est consacrée à l’application des méthodes proposées dans les

chapitres précédents et à leurs évaluations qualitativement et quantitativement à partir des

différents critères proposés.

Nous comparons dans un premier temps sept différents types d’algorithmes de classification non

supervisée selon leur type: l’algorithme K-means, l’algorithme des centres mobiles(Forgy),

l’algorithme des k-médoïd (Clara), l’algorithme hiérarchique ascendant (hclust) avec différents

critères d’agrégation intra classe, l’algorithme hiérarchique descendant(Diana), l’algorithme basé

sur la logique flou (Fuzzy cmeans) ainsi que l’algorithme basé sur le modèle neuronal (SOM).

La détermination du nombre de clusters dans la classification non supervisée de données qui est

un problème ouvert, largement exploité.Nous effectuons pour cela des tests pour chaque

algorithme, en variant les nombre des clusters dansl’intervalle [2,6] pour divers indices de

validation. Les résultats obtenus sont reportés tel que produits par notre outil avec leurs

représentations graphiques. D’un autre coté on utilisetrois types de validation : la validation

interne, la validation externe ainsi que la validation biologique afin de comparer ces algorithmes.

L’ensemble des développements pour la gestion et le traitement des données issues des

expériences des puces à ADN ont été réalisé sur une machine Toshiba dotée d’un processeur i3

M380 (2.53 GHZ) avec une RAM de 4 GO. Le système d’exploitation de cette machine est

LINUX FEDORA.

IV.2 Présentation des jeux de données :

Notre étude a porté sur 10 jeux de données réels (voir la table), parmi lesquelles sont identifiés les

leucémies tous types confondus cités largement dans la littérature(M.CP.Souto, 2008)[SOU 08].

Ces ensembles de données ont été obtenus en utilisant deux technologies de puces à ADN (la

seconde colonne du tableau): puces monocanal Affymetrix (07 jeux de données) et double-canal

ADNc (03 jeux), deux types de tissues sur les quels sont détectées les Leucémies : le sang ou la

Page 94: Faculté des sciences Département d'informatique Mémoire de ...

Contribution2 : Evaluation des algorithmes de clustering sur la plateforme : casdes données numériques d’expression des gènes.

88

moelle osseuse(la troisième colonne du tableau), le nombre d’observation (la quatrième colonne),

le nombre de gènes impliqués dans l’expérience (m étant le nombre des gènes que peut comporter

la puce utilisée) et (d c’est le nombre de gènes réellement impliqués dans l’étude obtenue après

prétraitement). Les autres colonnes (#c et Dist.classes sont les résultats de la classification non

supervisée obtenue par les auteurs de ces données.

Dataset chip Tissue n C# classes.Dist m d

Armstrong-V1 Affy Blood 72 2 24,48 12582 1081

Armstrong-V2 Affy Blood 72 3 24,20,28 12582 2194

Golub-V1 Affy Bone marrow 72 2 47,25 7129 1877

Golub-V2 Affy Bone marrow 72 3 38,9,25 7129 1877

Shipp Affy Blood 77 2 58,19 7129 798

Yeoh-V1 Affy Bone marrow 248 2 43,205 12625 2526

Yeoh-V2 Affy Bone marrow 248 6 15, 27,64,20,79,43 12625 2526

Alizadeh-V1 cDNA Blood 42 2 21,21 4022 1095

Alizadeh-V2 cDNA Blood 62 3 42,9,11 4022 2093

Alizadeh-V3 cDNA Blood 62 4 21,21,9,11 4022 2093

Figure .32.Les jeux de données utilisés pour les tests.

IV.2 .1 Description des données d’Armstrong-V1 et V2[ARM 02]:

Les auteurs ont montré que les algorithmes de clustering révèlent que les leucémies

lymphoblastiques avec translocations (MLL) peuvent être clairement séparées des leucémies

conventionnelles aiguës lymphoblastique (AML) et les leucémies aiguës myéloïdes (AML).

A partir de la, les auteurs ont construit deux jeux de données avec la répartition suivante des

échantillons :

Armstrong-V1 : 24 ALL et 48 MLL. Armstrong-V2 : 24 ALL ,20 MLL et 28 AML.

Page 95: Faculté des sciences Département d'informatique Mémoire de ...

Contribution2 : Evaluation des algorithmes de clustering sur la plateforme : casdes données numériques d’expression des gènes.

89

IV.2 .2 Description des données de Golub-V1 et V2 [GOL 99]:

Les auteurs présentent une procédure de classification non supervisée permettant de découvrir

automatiquement la distinction entre la leucémie aiguë myéloïde (AML) et la leucémie aiguë

lymphoblastique (ALL), sans connaissance préalable de ces classes. Ils ont également montré que

la procédure peut catégoriser davantage la distinction entre leur cellules d’origine B ou T. Ils

utilisent pour la formation de leur modèle un ensemble de données avec 38 échantillons et un

autre ensemble de données avec 34 échantillons pour les tests.

Les éléments suivants sont construits:

Golub-V1 : 47 ALL et 25 MLL. Golub-V2 : 38 ALL-B, 09ALL-T et 25 AML.

IV.2 .3 Description des données de Shipp[SHI 02] :

Parmi les autres types d’analyse, les auteurs ont étudié si un algorithme d’apprentissage supervisé

pourrait générer un classifieur capable de discriminer les tumeurs au sein d’une seule lignée

(cellules B). Plus précisément, ils se sont demandés quand est ce que le classifieur pouvait

distinguer la forme de leucémie (DLBCL) (Diffuse Large B-cell Lymphoma)

Bien que ces deux formes de tumeurs malignes sont très différentes de présentation clinique, les

expériences naturelles ont montrés que la FLs évolue souvent au fil du temps et s’acquière les

mêmes caractéristiques morphologiques et cliniques de « DLBCL».

La répartition obtenue est :

Shipp : 58 DLBCL et 19 FLs.

IV.2 .4 Description des données d’Yeoh-V1 et V2[YEO 02]:

Les auteurs ont étudié les formes de leucémies chez l’enfant. Le traitement de la leucémie aiguë

lymphoblastique (ALL) chez l’enfant est basé sur le concept d’adapter l’intensité de la thérapie au

risque de rechute du patient.

Afin de déterminer si le profil d’expression génique pourrait améliorer l’affectation des risques,

les auteurs ont utilisé des puces l’oligonucléotides pour analyser le modèle de gènes exprimés

dans les blastes leucémiques de 360 enfants atteint de la leucémie (ALL). Des profils d’expression

distincts identifiés chacun des sous types de leucémie pronostique important, y compris : T-ALL,

E2A-PBX1, BCR-ABL, TEL-AML1 , réarrangement MLL et hyperdiploid>50 chromosomes.

Page 96: Faculté des sciences Département d'informatique Mémoire de ...

Contribution2 : Evaluation des algorithmes de clustering sur la plateforme : casdes données numériques d’expression des gènes.

90

En outre, un autre sous groupe d’ALL (OTHER) a été identifié grâce a son profil d’expression

unique.

Afin de construire notre jeu de données, on a supprimé les échantillons appartenant au groupe

(OTHER). Aussi, ils ont créé un autre ensemble de données où les échantillons sont étiquetés soit

en tant que T-ALL ou B-ALL.

La répartition obtenue est :

Yeoh-V1 : 43 T-ALL et 205 B-ALL Yeoh-V2 :43 T-ALL, 27 E2A-PBX1, 15 BCR-ABL, 79 TEL-AML1, 20 MLL et 64

hyperdiploid>50.

IV.2 .5 Description des données d’Alizadeh-V1, V2 et V3[ALI 00] :

Les auteurs ont utilisé des bio puces (ADNc) pour caractériser les profils d’expression génique des

trois plus répondues lymphoïdes malignes atteignant les adultes : DLBCL (Diffuse Large B-cell

Lymphoma), le lymphome folliculaire (FL) et la leucémie lymphoïde chronique (CLL). Ils ont en

outre identifié deux formes distinctes au niveau moléculaire de la tumeur DLBCL, qui sont notée :

DLBCL1 et DLBCL2. De ces dernières analyses, trois ensembles de données avec la répartition

suivante :

Alizadeh -V1 : 21 DLBCL1 et 21 DLBCL2. Alizadeh -V2 : 42 DLBCL, 09 FL, 11 CLL. Alizadeh -V3 : 21 DLBCL1, 21 DLBCL2, 09 FL et 11 CLL.

Page 97: Faculté des sciences Département d'informatique Mémoire de ...

Contribution2 : Evaluation des algorithmes de clustering sur la plateforme : casdes données numériques d’expression des gènes.

91

IV.3 La validation externeIV.3.1 La validation externe des données d’Alizadeh-V1 :

Algorithmes Rand Jaccard FM Russel

kmeans+euc 0,49 0,32 0,48 0,24

kmeans+Man 0,49 0,31 0,48 0,23

Forgy+euc 0,49 0,31 0,48 0,23

Forgy+Man 0,49 0,32 0,48 0,24

Clara+euc 0,51 0,33 0,5 0,25

Clara+Man 0,49 0,34 0,51 0,26

hclust+euc+single 0,5 0,48 0,69 0,47

hclust+euc+complete 0,5 0,34 0,51 0,26

hclust+euc+Average 0,49 0,32 0,48 0,24

hclust+euc+Ward 0,49 0,32 0,49 0,24

hclust+euc+centroid 0,5 0,48 0,69 0,47

Diana 0,49 0,32 0,48 0,24

Cmeans 0,49 0,32 0,48 0,24

SOM 0,49 0,49 0,7 0,49

Discussions :

La meilleure valeur de l’indice de Rand est (0.51) obtenue par l’algorithme « Clara » avec la

distance Euclidienne, les valeurs maximales des autres indices « Jaccard », de « Folkes et

Mallows » et « Russel » sont obtenues par l’algorithme « SOM ».

00,20,40,60,8

1

Ind

ice

s

Algorithmes

Rand

Jaccard

FM

Russel

Page 98: Faculté des sciences Département d'informatique Mémoire de ...

Contribution2 : Evaluation des algorithmes de clustering sur la plateforme : casdes données numériques d’expression des gènes.

92

IV.3.2 La validation externe des données d’Alizadeh-V2:

Algorithmes Rand Jaccard FM Russel

kmeans+euc 0,96 0,91 0,96 0,47

kmeans+Man 0,71 0,49 0,67 0,28

Forgy+euc 0,72 0,5 0,68 0,28

Forgy+Man 0,81 0,67 0,8 0,37

Clara+euc 0,68 0,44 0,63 0,25

Clara+Man 0,72 0,51 0,68 0,29

hclust+euc+single 0,48 0,47 0,67 0,46

hclust+euc+complete 0,71 0,49 0,67 0,28

hclust+euc+Average 0,89 0,81 0,9 0,46

hclust+euc+Ward 0,95 0,9 0,95 0,46

hclust+euc+centroid 0,48 0,47 0,67 0,46

Diana 0,71 0,49 0,67 0,28

Cmeans 0,88 0,8 0,89 0,46

SOM 0,84 0,71 0,83 0,4

Discussions :

Les meilleuresvaleurs des 4 indices « Rand », « Jaccard »,« Folkes et Mallows » et « Russel » sont

obtenues par l’algorithme « Kmeans » avec la distance Euclidienne.

00,10,20,30,40,50,60,70,80,9

1

Ind

ice

s

Algorithmes

Rand

Jaccard

FM

Russel

Page 99: Faculté des sciences Département d'informatique Mémoire de ...

Contribution2 : Evaluation des algorithmes de clustering sur la plateforme : casdes données numériques d’expression des gènes.

93

IV.3.3 La validation externe des donnéesd’Alizadeh-V3:

Algorithmes Rand Jaccard FM Russel

kmeans+euc 0,71 0,32 0,48 0,13

kmeans+Man 0,71 0,29 0,44 0,12

Forgy+euc 0,71 0,31 0,48 0,13

Forgy+Man 0,71 0,31 0,48 0,13

Clara+euc 0,75 0,36 0,53 0,14

Clara+Man 0,76 0,41 0,59 0,17

hclust+euc+single 0,3 0,26 0,49 0,24

hclust+euc+complete 0,69 0,27 0,42 0,11

hclust+euc+Average 0,7 0,37 0,54 0,17

hclust+euc+Ward 0,76 0,38 0,55 0,15

hclust+euc+centroid 0,3 0,26 0,49 0,24

Diana 0,7 0,28 0,43 0,11

Cmeans 0,69 0,45 0,66 0,25

SOM 0,72 0,32 0,49 0,13

Discussions :

La meilleure valeur de l’indice de Rand est (0.76) obtenue par les algorithmes « Clara » avec la

distance Manhattan ainsi que l’algorithme hiérarchique « Hclust » avec la relation « Ward ».Les

valeurs maximales des autres indices « Jaccard », de « Folkes et Mallows » et « Russel » sont

obtenues par l’algorithme « Fuzzy c-means».

00,10,20,30,40,50,60,70,80,9

1

Ind

ice

s

Algorithmes

Rand

Jaccard

FM

Russel

Page 100: Faculté des sciences Département d'informatique Mémoire de ...

Contribution2 : Evaluation des algorithmes de clustering sur la plateforme : casdes données numériques d’expression des gènes.

94

IV.3.4 La validation externe des données de Golub V1:

Algorithmes Rand Jaccard FM Russel

kmeans+euc 0,8 0,68 0,81 0,42

kmeans+Man 0,72 0,57 0,73 0,38

Forgy+euc 0,87 0,78 0,88 0,46

Forgy+Man 0,74 0,59 0,75 0,39

Clara+euc 0,85 0,74 0,85 0,44

Clara+Man 0,89 0,82 0,9 0,48

hclust+euc+single 0,55 0,54 0,73 0,53

hclust+euc+complete 0,7 0,55 0,71 0,37

hclust+euc+Average 0,49 0,43 0,61 0,39

hclust+euc+Ward 0,95 0,91 0,95 0,52

hclust+euc+centroid 0,55 0,54 0,73 0,53

Diana 0,49 0,43 0,6 0,38

Cmeans 0,78 0,65 0,79 0,41

SOM 0,54 0,54 0,74 0,54

Discussions :

La meilleure valeur de l’indice de « Russel » est (0.54) obtenue par les algorithmes « SOM ». Les

valeurs maximales des autres indices «Rand», de « Folkes et Mallows » et « Jaccard» sont

obtenues par l’algorithme hiérarchique «Hclust » avec le critère d’agrégation« Ward ».

00,10,20,30,40,50,60,70,80,9

1

Ind

ice

s

Algorithmes

Rand

Jaccard

FM

Russel

Page 101: Faculté des sciences Département d'informatique Mémoire de ...

Contribution2 : Evaluation des algorithmes de clustering sur la plateforme : casdes données numériques d’expression des gènes.

95

IV.3.5 La validation externe des données de Golub V2:

Algorithmes Rand Jaccard FM Russel

kmeans+euc 0,96 0,91 0,96 0,38

kmeans+Man 0,77 0,52 0,69 0,25

Forgy+euc 0,84 0,65 0,79 0,3

Forgy+Man 0,78 0,59 0,74 0,32

Clara+euc 0,9 0,78 0,87 0,35

Clara+Man 0,88 0,74 0,85 0,34

hclust+euc+single 0,41 0,39 0,62 0,38

hclust+euc+complete 0,75 0,55 0,71 0,3

hclust+euc+Average 0,92 0,81 0,9 0,35

hclust+euc+Ward 0,92 0,82 0,9 0,36

hclust+euc+centroid 0,42 0,4 0,63 0,39

Diana 0,88 0,74 0,85 0,33

Cmeans 0,79 0,62 0,77 0,35

SOM 0,78 0,56 0,72 0,29

Discussions :La meilleure valeur de l’indice de « Russel » est (0.39) obtenues par l’algorithme hiérarchique

«Hclust » avec le critère des centres de gravité « Centroid». Les valeurs maximales des autres

indices «Rand», de « Folkes et Mallows » et « Jaccard» sont obtenues par l’algorithme

« Kmeans » avec la distance Euclidienne.

0

0,1

0,2

0,3

0,4

0,5

0,6

0,7

0,8

0,9

1

Ind

ice

s

Algorithmes

Rand

Jaccard

FM

Russel

Page 102: Faculté des sciences Département d'informatique Mémoire de ...

Contribution2 : Evaluation des algorithmes de clustering sur la plateforme : casdes données numériques d’expression des gènes.

96

IV.3.6 La validation externe des données de Yeoh V1:

Algorithmes Rand Jaccard FM Russel

kmeans+euc 0,5 0,41 0,6 0,36

kmeans+Man 0,66 0,65 0,79 0,62

Forgy+euc 0,59 0,5 0,68 0,42

Forgy+Man 0,5 0,42 0,6 0,36

Clara+euc 0,54 0,45 0,63 0,39

Clara+Man 0,71 0,71 0,84 0,71

hclust+euc+single 0,71 0,71 0,84 0,71

hclust+euc+complete 0,5 0,43 0,61 0,37

hclust+euc+Average 0,57 0,51 0,67 0,45

hclust+euc+Ward 0,5 0,42 0,6 0,36

hclust+euc+centroid 0,71 0,71 0,84 0,71

Diana 0,54 0,45 0,63 0,38

Cmeans 0,57 0,48 0,66 0,39

SOM 0,71 0,71 0,84 0,71

Discussions :Les algorithmes suivants : «Clara » avec la distance Manhattan, « Hclust » avec les critèresd’agrégation « Single » et des centres de gravité, « SOM » maximisent l’indice de « Rand »,« Jaccard » et « Russel » avec une valeur 71% et « Folkes et Mallows » de 84%.

0

0,1

0,2

0,3

0,4

0,5

0,6

0,7

0,8

0,9

1

Ind

ice

s

Algorithmes

Rand

Jaccard

FM

Russel

Page 103: Faculté des sciences Département d'informatique Mémoire de ...

Contribution2 : Evaluation des algorithmes de clustering sur la plateforme : casdes données numériques d’expression des gènes.

97

IV.3.7 La validation externe des données de Yeoh V2:

Algorithmes Rand Jaccard FM Russel

kmeans+euc 0,75 0,29 0,45 0,1

kmeans+Man 0,58 0,26 0,44 0,15

Forgy+euc 0,78 0,32 0,48 0,1

Forgy+Man 0,78 0,28 0,44 0,08

Clara+euc 0,82 0,38 0,55 0,11

Clara+Man 0,59 0,26 0,45 0,14

hclust+euc+single 0,24 0,21 0,46 0,21

hclust+euc+complete 0,76 0,27 0,42 0,09

hclust+euc+Average 0,57 0,28 0,49 0,17

hclust+euc+Ward 0,7 0,25 0,41 0,1

hclust+euc+centroid 0,24 0,22 0,46 0,21

Diana 0,73 0,31 0,47 0,12

Cmeans 0,71 0,27 0,43 0,11

SOM 0,78 0,28 0,44 0,09

Discussions :Les valeurs maximales des indices «Rand », de « Folkes et Mallows » et « Jaccard » sontobtenues par l’algorithme « Clara » avec la distance « Euclidienne ».La meilleure valeur del’indice de Russel est 21% obtenue par l’algorithme hiérarchique « Hclust » avec les critèresd’agrégation « Single » et des centres de gravité.

0

0,1

0,2

0,3

0,4

0,5

0,6

0,7

0,8

0,9

1

Ind

ice

s

Algorithmes

Rand

Jaccard

FM

Russel

Page 104: Faculté des sciences Département d'informatique Mémoire de ...

Contribution2 : Evaluation des algorithmes de clustering sur la plateforme : casdes données numériques d’expression des gènes.

98

IV.3.8 La validation externe des données de Shipp V1:

Algorithmes Rand Jaccard FM Russel

kmeans+euc 0,59 0,46 0,63 0,35

kmeans+Man 0,58 0,46 0,63 0,37

Forgy+euc 0,55 0,43 0,6 0,34

Forgy+Man 0,54 0,42 0,59 0,33

Clara+euc 0,64 0,51 0,68 0,38

Clara+Man 0,7 0,61 0,76 0,47

hclust+euc+single 0,64 0,63 0,79 0,62

hclust+euc+complete 0,57 0,52 0,69 0,47

hclust+euc+Average 0,64 0,63 0,79 0,62

hclust+euc+Ward 0,57 0,44 0,62 0,34

hclust+euc+centroid 0,64 0,63 0,79 0,62

Diana 0,57 0,44 0,61 0,34

Cmeans 0,59 0,46 0,63 0,35

SOM 0,62 0,62 0,79 0,62

Discussions :

L’indice de « Rand » indique qu’un partitionnement avec l’algorithme « Clara » avec la distanceManhattan est 70% semblable à la classification des auteurs des données, alors que l’indice de« Folkes & Mallows » indique une valeur de 79% est obtenue par l’algorithme hiérarchiqueascendant et « SOM ».

00,10,20,30,40,50,60,70,80,9

1

Ind

ice

s

Algorithmes

Rand

Jaccard

FM

Russel

Page 105: Faculté des sciences Département d'informatique Mémoire de ...

Contribution2 : Evaluation des algorithmes de clustering sur la plateforme : casdes données numériques d’expression des gènes.

99

IV.3.9 La validation externe des données de d’Armstrong V1:

Algorithmes Rand Jaccard FM Russel

kmeans+euc 0,63 0,48 0,65 0,34

kmeans+Man 0,52 0,51 0,7 0,5

Forgy+euc 0,63 0,48 0,65 0,34

Forgy+Man 0,63 0,48 0,65 0,34

Clara+euc 0,59 0,45 0,62 0,33

Clara+Man 0,63 0,48 0,65 0,34

hclust+euc+single 0,54 0,54 0,73 0,53

hclust+euc+complete 0,59 0,45 0,62 0,33

hclust+euc+Average 0,61 0,46 0,63 0,33

hclust+euc+Ward 0,59 0,45 0,62 0,33

hclust+euc+centroid 0,54 0,54 0,73 0,53

Diana 0,59 0,45 0,62 0,33

Cmeans 0,63 0,48 0,65 0,34

SOM 0,55 0,55 0,74 0,55

Discussions :

La meilleure valeur de l’indice de Rand est 63% obtenue par les algorithmes « Clara » avec ladistance Manhattan, « Forgy », « Kmeans » avec la distance « Euclidienne » ainsi que « Fuzzy c-means ». Les valeurs maximales des autres indices « Jaccard », de « Folkes et Mallows » et« Russel » sont obtenues par l’algorithme « SOM».

00,10,20,30,40,50,60,70,80,9

1

Ind

ice

s

Algorithmes

Rand

Jaccard

FM

Russel

Page 106: Faculté des sciences Département d'informatique Mémoire de ...

Contribution2 : Evaluation des algorithmes de clustering sur la plateforme : casdes données numériques d’expression des gènes.

100

IV.3.10 La validation externe des données d’Armstrong V2:

Algorithmes Rand Jaccard FM Russel

kmeans+euc 0,71 0,45 0,62 0,24

kmeans+Man 0,77 0,54 0,71 0,28

Forgy+euc 0,79 0,52 0,69 0,23

Forgy+Man 0,85 0,63 0,77 0,25

Clara+euc 0,92 0,77 0,87 0,29

Clara+Man 0,91 0,75 0,86 0,28

hclust+euc+single 0,34 0,32 0,55 0,31

hclust+euc+complete 0,75 0,52 0,69 0,27

hclust+euc+Average 0,77 0,56 0,74 0,3

hclust+euc+Ward 0,9 0,75 0,86 0,29

hclust+euc+centroid 0,34 0,32 0,55 0,31

Diana 0,74 0,51 0,68 0,27

Cmeans 0,76 0,55 0,72 0,29

SOM 0,8 0,58 0,75 0,28

Discussions :

Les valeurs maximales des indices « Jaccard », de « Folkes et Mallows » et « Rand » sontobtenues par l’algorithme « Clara » avec la distance « Euclidienne ».La meilleure valeur del’indice de Russel est 31% obtenue par l’algorithme hiérarchique « Hclust » avec les critèresd’agrégation « Single » et des centres de gravité.

00,10,20,30,40,50,60,70,80,9

1

Ind

ice

s

Algorithmes

Rand

Jaccard

FM

Russel

Page 107: Faculté des sciences Département d'informatique Mémoire de ...

Contribution2 : Evaluation des algorithmes de clustering sur la plateforme : cas des données numériques d’expression desgènes.

101

IV.4 La validation interne :Les données d’Alizadeh V1:

2 3 4 5 6

kmeans 0,74 0,76 0,66 0,65 0,75

Forgy 0,75 0,72 0,63 0,67 0,69

Clara 0,66 0,72 0,72 0,71 0,71

Hclust 0,8 0,8 0,78 0,78 0,78

Diana 0,75 0,76 0,77 0,77 0,78

Fcmeans 0,74 0,74 0,77 0,75 0,75

som 0,76 0,78 0,77 0,77

0

0,1

0,2

0,3

0,4

0,5

0,6

0,7

0,8

0,9

1

Indice

deDu

nn

2 3 4 5 6

kmeans 0,4 0,4 0,2 0,2 0,4

Forgy 0,5 0,4 0,1 0,3 0,1

Clara 0,3 0,3 0,4 0,4 0,4

Hclust 0,3 0,3 0,5 0,7 0,8

Diana 0,5 0,4 0,4 0,4 0,4

Fcmeans 0,5 0,3

som 0,3 0,5 0,5 0,4

0

0,1

0,2

0,3

0,4

0,5

0,6

0,7

0,8

0,9

1

Indice

deSilho

uette

2 3 4 5 6

kmeans 37,25 37,95 61,34 65,2 61,94

Forgy 25,14 39,64 66,16 63,51 71,23

Clara 37,47 47,71 45,48 46,61 52,7

Hclust 3,55 7,41 11,57 15,32 18,94

Diana 22,67 35,59 44,87 49,27 51,87

Fcmeans 32,55 30,18 37,51 41,23 49,49

som 39,34 43,03 45 55,1

0

10

20

30

40

50

60

70

80

90

100

Indice

deCo

nnectiv

ity

2 3 4 5 6

kmeans 0,65 0,62 0,63 0,58 0,86

Forgy 0,65 0,56 0,52 0,58 0,65

Clara 0,59 0,62 0,59 0,54 0,52

Hclust 0,86 0,86 0,86 0,86 0,86

Diana 0,65 0,65 0,63 0,61 0,61

Fcmeans 0,64 0,86 0,66 0,87 0,86

som 0,63 0,66 0,64 0,57 0,57

0

0,1

0,2

0,3

0,4

0,5

0,6

0,7

0,8

0,9

1

Indice

deHu

bert

2 3 4 5 6

kmeans 2,75 2,71 2,05 2,06 1,82

Forgy 3,37 2,65 1,96 2,29 1,9

Clara 2,4 2,49 2,55 2,47 2,27

Hclust 1,03 1,07 1,07 1,08 1,07

Diana 3,47 2,81 2,56 2,39 2,23

Fcmeans 3,23 1,57 2,38 1,72 1,76

som 2,34 2,73 2,64 2,36

0

0,5

1

1,5

2

2,5

3

3,5

4

4,5

5

Indice

deCalinski

Page 108: Faculté des sciences Département d'informatique Mémoire de ...

Contribution2 : Evaluation des algorithmes de clustering sur la plateforme : casdes données numériques d’expression des gènes.

102

Discussion:

Les résultats indiquent qu’une meilleure valeur de l’indice de « Dunn » est obtenue par

l’algorithme hiérarchique (0.8) avec 2 à 3 clusters.

Selon l’indice de « Silhouette », un meilleur résultat est toujours obtenu par l’algorithme

hiérarchique (0.8) mais avec un nombre de cluster égal à 6, alors que les meilleures valeurs de cet

indice ont été obtenues pour un nombre de cluster égal à 2 par les trois algorithmes « Forgy »,

« Diana » et « Fuzzy c-means » avec une valeur identique de 0.5.

Pour l’indice de « Connectivité » la meilleure valeur est obtenu pour un nombre de cluster égal à 2

pour la majorité des algorithmes à l’exception de l’algorithme « Fuzzy c means » et « SOM » dont

les meilleures valeurs sont obtenues pour un nombre de cluster égale à 3.

L’algorithme Hiérarchique reste indifférent pour l’indice d’Hubert et ce quelque soit le nombre de

clusters, d’autre part les meilleures valeurs de l’indice diffèrent d’un algorithme à un autre.

Concernant l’indice de « Calinski et Harabasz » les meilleures valeurs sont obtenues

majoritairement pour un nombre de cluster égal à 2.

Finalement, on conclue que le nombre de cluster retenu pour ce jeu de données est égal à 2 pour

l’identification de clusters compacts et bien séparés. Ce qui est conforme aux résultats obtenus

dans la littérature.

Page 109: Faculté des sciences Département d'informatique Mémoire de ...

Contribution2 : Evaluation des algorithmes de clustering sur la plateforme : cas des données numériques d’expression desgènes.

103

Les données d’Alizadeh V2:La validation interne :

2 3 4 5 6

kmeans 0,77 0,67 0,62 0,65 0,71

Forgy 0,77 0,61 0,6 0,65 0,66

Clara 0,77 0,68 0,61 0,64 0,64

Hclust 0,77 0,72 0,72 0,72 0,71

Diana 0,77 0,73 0,71 0,71 0,72

Fcmeans 0,77 0,77 0,77 0,77 0,77

som 0,64 0,64 0,61 0,63

0

0,1

0,2

0,3

0,4

0,5

0,6

0,7

0,8

0,9

1

Indi

cede

Dunn

2 3 4 5 6

kmeans 0,17 0,1 0,1 0,08 0,08

Forgy 0,17 0,12 0,07 0,09 0,08

Clara 0,17 0,11 0,06 0,07 0,07

Hclust 0,03 0,02 0,02 0,03 0,02

Diana 0,17 0,12 0,11 0,12 0,11

Fcmeans 0,17 0,17

som 0,1 0,08 0,08 0,08

0

0,05

0,1

0,15

0,2

0,25

0,3

0,35

0,4

0,45

0,5

Indice

deSilh

ouet

te

2 3 4 5 6

kmeans 2,75 39,8 45,26 52,06 58,33

Forgy 2,75 10,3 46,22 62,13 62,73

Clara 2,75 28,64 51,33 49,56 50,95

Hclust 3,03 6,24 9,38 12,43 16,35

Diana 2,75 20,45 34,18 34,62 44,41

Fcmeans 2,75 2,75 2,75 2,75 2,75

som 0 14,95 30,44 48,93 55,66

0

10

20

30

40

50

60

70

80

90

100

Indi

cede

Conn

ectiv

ity

2 3 4 5 6

kmeans 0,66 0,65 0,61 0,63 0,64

Forgy 0,66 0,68 0,64 0,6 0,59

Clara 0,66 0,67 0,62 0,63 0,61

Hclust 0,82 0,82 0,82 0,82 0,82

Diana 0,66 0,63 0,64 0,8 0,8

Fcmeans 0,66 0,81 0,81 0,66 0,81

som 0,7 0,66 0,67 0,58 0,58

0

0,1

0,2

0,3

0,4

0,5

0,6

0,7

0,8

0,9

1

Indi

cede

Hube

rt

2 3 4 5 6

kmeans 14,16 8,65 6,8 5,58 4,79

Forgy 14,16 8,99 5,99 5,41 4,54

Clara 14,16 9,17 6,8 6,18 5,6

Hclust 1,02 1,04 1,05 1,06 1,19

Diana 14,16 9,06 7,22 5,77 5,14

Fcmeans 14,16 6,96 4,56 14,16 2,64

som 7,89 7,62 6,02 5,71

0

2

4

6

8

10

12

14

16

18

20

Indi

cede

Calin

ski

Page 110: Faculté des sciences Département d'informatique Mémoire de ...

Contribution2 : Evaluation des algorithmes de clustering sur la plateforme : casdes données numériques d’expression des gènes.

104

Discussion:

Selon l’indice de « Dunn » une meilleure valeur (0.77) est obtenue pour deux clusters par tous les

algorithmes testés, à l’exception de « SOM », l’algorithme « Fuzzy c-means » est indifférent pour

cet indice.

Selon l’indice de « Silhouette », la valeur maximale (0.17) est obtenue par tous les algorithmes à

l’exception de « SOM » pour un nombre de cluster égale à 2. L’algorithme « Fuzzy c-means »

n’obtient aucune valeur pour (k=3,4 et 6) clusters.

Selon l’indice de « Connectivité », la valeur minimale est obtenue pour un nombre de cluster égal

à deux par tous les algorithmes sans exception.

L’algorithme hiérarchique reste stable pour l’indice d’Hubert quelque soit le nombre de clusters,

et la meilleure valeur de cet indice diffère d’un algorithme à un autre : une bonne distance intra

cluster pour l’algorithme « Kmeans » peut être obtenue avec (k=4), alors que pour les algorithmes

« Forgy », « Clara » et « SOM » c’est (k=6), pour « Diana » c’est (k=3), l’algorithme flou « Fuzzy

cmeans » et « SOM » peuvent partitionner le jeu de données avec (k=5) avec une meilleur valeur

d’indice d’Hubert. L’indice de « Calinski » indiquant la relation inter-intra clusters confirme le

choix de deux clusters par la majorité des algorithmes ainsi que les résultats de l’indice de

« Dunn ».

Page 111: Faculté des sciences Département d'informatique Mémoire de ...

Contribution2 : Evaluation des algorithmes de clustering sur la plateforme : cas des données numériques d’expression desgènes.

105

Les données d’Alizadeh V3:La validation interne :

2 3 4 5 6

kmeans 0,77 0,64 0,63 0,64 0,61

Forgy 0,77 0,6 0,71 0,64 0,45

Clara 0,77 0,68 0,61 0,64 0,64

Hclust 0,77 0,72 0,72 0,72 0,71

Diana 0,77 0,73 0,71 0,71 0,72

Fcmeans 0,77 0,77 0,77 0,77 0,77

som 0,64 0,64 0,64 0,65

0

0,1

0,2

0,3

0,4

0,5

0,6

0,7

0,8

0,9

1

Indice

deDu

nn

2 3 4 5 6

kmeans 0,17 0,11 0,11 0,06 0,08

Forgy 0,17 0,11 0,1 0,06 0,03

Clara 0,17 0,11 0,06 0,07 0,07

Hclust 0,03 0,02 0,02 0,03 0,02

Diana 0,17 0,12 0,11 0,12 0,11

Fcmeans 0,17 0,17

som 0,1 0,08 0,09 0,07

0

0,05

0,1

0,15

0,2

0,25

0,3

0,35

0,4

0,45

0,5

Indice

deSilhou

ette

2 3 4 5 6

kmeans 3,22 22,74 40,63 66,47 67,44

Forgy 2,75 23,22 44,26 45,48 82,05

Clara 2,75 28,64 51,31 49,58 50,95

Hclust 3,03 6,24 9,38 12,43 16,35

Diana 2,75 20,45 34,2 34,64 44,41

Fcmeans 2,75 2,75 2,75 2,75 2,75

som 0 17,87 35,88 42,08 53,98

0

10

20

30

40

50

60

70

80

90

100

Indice

deCo

nnectiv

ity

2 3 4 5 6

kmeans 0,67 0,64 0,64 0,59 0,57

Forgy 0,66 0,65 0,61 0,69 0,6

Clara 0,66 0,67 0,62 0,63 0,61

Hclust 0,82 0,82 0,82 0,82 0,82

Diana 0,66 0,63 0,64 0,8 0,8

Fcmeans 0,66 0,81 0,66 0,81 0,81

som 0,7 0,65 0,66 0,61 0,62

0

0,1

0,2

0,3

0,4

0,5

0,6

0,7

0,8

0,9

1

Indice

deHu

bert

2 3 4 5 6

kmeans 14,28 8,75 7,07 5,16 4,79

Forgy 14,16 8,44 6,87 5,59 4,6

Clara 14,16 9,17 6,8 6,18 5,6

Hclust 1,02 1,04 1,05 1,06 1,19

Diana 14,16 9,06 7,22 5,77 5,14

Fcmeans 14,16 6,96 14,16 4,56 2,64

som 7,96 7,51 6,24 5,8

0

2

4

6

8

10

12

14

16

18

20

Indice

deCa

linski

Page 112: Faculté des sciences Département d'informatique Mémoire de ...

Contribution2 : Evaluation des algorithmes de clustering sur la plateforme : casdes données numériques d’expression des gènes.

106

Discussion:

Nous remarquons dans ce jeu de données qu’une meilleure partition est obtenue majoritairement

pour un nombre de cluster égale à 2 selon l’indice de « Dunn » avec une valeur identique (0.77) et

ce quelque soit l’algorithme de classification non supervisée utilisé dans ce test, à l’exception de

l’algorithme « SOM » qui n’obtient aucune valeur pour cet indice (cas indéterminé).

La même constatation est faite pour les résultats de l’indice « Connectivité » ou la meilleure

valeur qui minimise la distance inter classes est obtenue par l’algorithme « SOM » (0), les

algorithmes « Forgy », »Clara », »Diana » et « Fuzzy cmeans » obtiennent la même valeur (2.75)

pour le nombre (k=2).

L’indice de « Silhouette » indique également que le choix du nombre de classe (k=2) par

n’importe quel algorithme de classification non supervisée permet de classer correctement les

profiles d’expression des gènes dans les classes appropriées. La valeur qui maximise l’indice est

égale à (0.17) partout.

L’indice de « Calinski » rejoigne les indices de validation précédents pour le choix du nombre de

cluster optimale égale à 2.

Cependant, l’indice d’Hubert n’a pas le même choix du nombre de clusters retenu pour ce jeu de

données. En effet, le nombre (k=6) est choisi comme un bon nombre de classes par 3 algorithmes,

à savoir : « kmeans » (0.57), « Forgy » (0.6), « Clara » (0.61).

Les résultats de l’algorithme « Fuzzy c-means » indiquent un meilleur partitionnement de

l’échantillon avec (k=4) selon les 3 indices de validation (« Silhouette », « Calinski », « Hubert »)

ce qui est en adéquation avec les résultats des auteurs des données.

Page 113: Faculté des sciences Département d'informatique Mémoire de ...

Contribution2 : Evaluation des algorithmes de clustering sur la plateforme : cas des données numériques d’expression desgènes.

107

Les données de Golub V1:La validation interne :

2 3 4 5 6

kmeans 0,55 0,53 0,53 0,53 0,52

Forgy 0,49 0,48 0,57 0,38 0,39

Clara 0,49 0,56 0,52 0,52 0,49

Hclust 0,76 0,75 0,74 0,7 0,65

Diana 0,6 0,56 0,57 0,57 0,58

Fcmeans 0,55 0,38 0,38 0,38 0,38

som 0,53 0,39 0,57 0,58

00,05

0,10,15

0,20,25

0,30,35

0,40,45

0,50,55

0,60,65

0,70,75

0,80,85

0,90,95

1

Indice

deDu

nn

2 3 4 5 6

kmeans 0,13 0,08 0,12 0,11 0,11

Forgy 0,13 0,07 0,15 0,11 0,11

Clara 0,13 0,16 0,12 0,09 0,11

Hclust 0,07 0,03 0,03 0,03 0,07

Diana 0,1 0,16 0,14 0,11 0,11

Fcmeans 0,13

som 0,09 0,15 0,13 0,12

0

0,05

0,1

0,15

0,2

0,25

0,3

0,35

0,4

0,45

0,5

Silhou

ette

2 3 4 5 6

kmeans 15,72 34,67 43,78 53,73 53,16

Forgy 20,12 35,23 39,35 53,86 53,31

Clara 16,81 24,01 49,29 60,18 58,36

Hclust 3,03 5,96 8,89 12,39 19,13

Diana 10,42 23,47 31,71 45,49 50,52

Fcmeans 19,74 24,66 24,66 24,66 24,66

som 0 35,98 32,26 42,74 53,12

0

10

20

30

40

50

60

70

80

90

100

Indice

deCo

nnec

tivity

2 3 4 5 6

kmeans 0,68 0,68 0,63 0,63 0,6

Forgy 0,69 0,68 0,62 0,58 0,57

Clara 0,68 0,64 0,64 0,62 0,56

Hclust 0,85 0,85 0,85 0,85 0,83

Diana 0,74 0,63 0,63 0,59 0,61

Fcmeans 0,68 0,8 0,8 0,8 0,8

som 0,77 0,66 0,62 0,59 0,58

0

0,1

0,2

0,3

0,4

0,5

0,6

0,7

0,8

0,9

1

Indice

deHu

bert

2 3 4 5 6

kmeans 11,87 7,42 9,15 8,22 6,9

Forgy 11,79 6,95 9,22 7,49 6,68

Clara 11,78 11,06 8,49 7,53 7,42

Hclust 1,21 1,18 1,15 1,15 2,19

Diana 6,77 10,92 8,89 7,95 7,35

Fcmeans 11,96 5,74 5,74 2,79 2,79

som 7,37 9,27 8,16 7,54

0

2

4

6

8

10

12

14

16

18

20

Indice

deCa

linski

Page 114: Faculté des sciences Département d'informatique Mémoire de ...

Contribution2 : Evaluation des algorithmes de clustering sur la plateforme : casdes données numériques d’expression des gènes.

108

Discussion:

Nous remarquons que la meilleure performance de la classification non supervisée est

majoritairement obtenue pour un nombre de cluster (k=2 ou 3). En effet, selon les résultats

obtenus, les algorithmes « Kmeans », « hiérarchique », « Diana » ainsi que « Fuzzy c-means »

maximisent l’indice de « Dunn » pour (k=2), alors que « Clara » obtient des clusters séparés et

compacts pour (k=3). Cependant, l’indice de « Calinski » dont le but est le même que celui de

« Dunn » à savoir la validation inter-intra clusters indique que l’algorithme « Forgy » et « Clara »

peuvent obtenir de bonnes partitions avec (k=2). L’algorithme descendant hiérarchique peut avoir

également 3 clusters bien séparés et homogènes avec (k=3) selon l’indice de « Calinski ». L’indice

de « Silhouette » dont le but est de maximiser la relation intra cluster, indique que l’algorithme

« Kmeans » et l’algorithme « hiérarchique ascendant » obtiennent de bons clusters avec (k=2),

alors que l’algorithme « Diana » et « Clara » obtiennent de bons résultats avec (k=3). L’indice de

validation inter cluster « Connectivité » indique un choix du nombre de cluster pour (k=2) pour

tous les algorithmes de clustering étudiés. Un partitionnement de ce jeux de données pour (k=4)

peut être envisagé par l’algorithme « Forgy » (selon l’indice de « Dunn » et « Silhouette ») ou

avec l’algorithme « SOM » (d’après les résultats de l’indice « Silhouette » et « Calinski »)

Page 115: Faculté des sciences Département d'informatique Mémoire de ...

Contribution2 : Evaluation des algorithmes de clustering sur la plateforme : cas des données numériques d’expression desgènes.

109

Les données de Golub V2:La validation interne :

2 3 4 5 6

kmeans 0,55 0,5 0,38 0,53 0,48

Forgy 0,55 0,57 0,54 0,53 0,53

Clara 0,49 0,56 0,52 0,52 0,49

Hclust 0,76 0,75 0,74 0,7 0,65

Diana 0,6 0,56 0,57 0,57 0,58

Fcmeans 0,38 0,38 0,38 0,38 0,38

som 0,5 0,55 0,55 0,52

00,05

0,10,15

0,20,25

0,30,35

0,40,45

0,50,55

0,60,65

0,70,75

0,80,85

0,90,95

1

Indice

deDu

nn

2 3 4 5 6

kmeans 0,13 0,1 0,08 0,1 0,11

Forgy 0,13 0,16 0,12 0,09 0,1

Clara 0,13 0,16 0,12 0,09 0,11

Hclust 0,07 0,03 0,03 0,03 0,07

Diana 0,1 0,16 0,14 0,11 0,11

Fcmeans 0,13 0,13 0,13

som 0,09 0,13 0,13 0,1

0

0,05

0,1

0,15

0,2

0,25

0,3

0,35

0,4

0,45

0,5

Indice

deSilhou

ette

2 3 4 5 6

kmeans 16,69 40,37 58,21 48,39 59,68

Forgy 17,84 20,01 36,09 61,43 59,51

Clara 16,81 24,01 49,29 60,18 58,36

Hclust 3,03 5,96 8,89 12,39 19,13

Diana 10,42 23,47 31,71 45,49 50,52

Fcmeans 24,66 24,66 24,66 24,66 24,66

som 0 39,68 30,49 45,46 60,13

0

10

20

30

40

50

60

70

80

90

100

Indice

deCo

nnectiv

ity

2 3 4 5 6

kmeans 0,69 0,65 0,64 0,61 0,58

Forgy 0,68 0,66 0,63 0,62 0,56

Clara 0,68 0,64 0,64 0,62 0,56

Hclust 0,85 0,85 0,85 0,85 0,83

Diana 0,74 0,63 0,63 0,59 0,61

Fcmeans 0,68 0,68 0,8 0,68 0,8

som 0,77 0,66 0,64 0,6 0,59

0

0,1

0,2

0,3

0,4

0,5

0,6

0,7

0,8

0,9

1

Indice

deHu

bert

2 3 4 5 6

kmeans 11,91 8,19 6,99 7,49 7,32

Forgy 11,99 11,01 9,04 7,5 6,61

Clara 11,78 11,06 8,49 7,53 7,42

Hclust 1,21 1,18 1,15 1,15 2,19

Diana 6,77 10,92 8,89 7,95 7,35

Fcmeans 11,65 11,65 5,74 11,65 3,77

som 7,51 9,13 8,43 7,17

0

2

4

6

8

10

12

14

16

18

20

Indice

deCa

linski

Page 116: Faculté des sciences Département d'informatique Mémoire de ...

Contribution2 : Evaluation des algorithmes de clustering sur la plateforme : casdes données numériques d’expression des gènes.

110

Discussion:

D’après les résultats des indices de validation interne pour les données de « Golub V2 », on

remarque ce qui suit :

Le choix du nombre de classes varie de 2 à 3 pour les 3 indices de validation : « Dunn »,

« Silhouette » et « Calinski ». En effet, l’algorithme « Kmeans »(0.55), l’algorithme hiérarchique

(0.76) et « Diana » (0.60) maximisent l’indice de « Dunn » pour (k=2), alors que l’algorithme

« Forgy » (0.57) et « Clara » (0.56) obtiennent de meilleures partitions avec (k=3). L’algorithme

« Fuzzyc-means » est indifférent pour cet indice.

Concernant l’indice de « Silhouette », l’algorithme « Kmeans » (0.13) et l’algorithme hiérarchique

(0.07)maximisent l’indice pour (k=2), alors que « Forgy », »Clara » et « Diana » maximisent

l’indice pour (k=3).

Les algorithmes « Kmeans »(11.91), « Forgy » (11.99) ainsi que « Clara »(11.78) maximisent

l’indice de « Calinski » pour (k=2) alors que l’algorithme hiérarchique ascendant « Hclust » et

descendant « Diana » maximisent l’indice pour (k=3).

Nous confirmons ainsi les travaux antérieurspermettant de distinguer automatiquement deux types

de maladies : la leucémie aiguë myéloïde (AML) et la leucémie aiguë lymphoblastique (ALL),

donc (k=2). Ils ont également montré que les données peuvent catégoriser davantage la distinction

entre leur cellules d’origine B ou T, d’où le choix de (k=3).

Page 117: Faculté des sciences Département d'informatique Mémoire de ...

Contribution2 : Evaluation des algorithmes de clustering sur la plateforme : cas des données numériques d’expression desgènes.

111

Les données de YeohV1:La validation interne :

2 3 4 5 6

kmeans 0,87 0,89 0,87 0,87 0,87

Forgy 0,87 0,87 0,87 0,87 0,87

Clara 0,9 0,9 0,87 0,87 0,89

Hclust 0,95 0,95 0,95 0,95 0,95

Diana 0,9 0,9 0,9 0,9 0,9

Fcmeans 0,89 0,87 0,87 0,87 0,87

som 0,91 0,91 0,9 0,87

0,8

0,85

0,9

0,95

1

Indi

cede

Dunn

2 3 4 5 6

kmeans 0 0 0 0 0

Forgy 0 0 0 0 0

Clara 0 0 0 0 0

Hclust 0,01 0,01 0,01 0,01 0,01

Diana 0 0 0 0 0

Fcmeans 0 0 0 0 0

som 0 0 0 0

0

0,01

0,02

0,03

0,04

0,05

0,06

0,07

0,08

0,09

0,1

Indi

cede

Silh

ouet

te

2 3 4 5 6

kmeans 325,53 437,3 511,73 552,86 568,81

Forgy 329,92 458,21 505,91 548,43 559,15

Clara 316,8 443,57 508,34 531,42 547,84

Hclust 3,29 6,64 10,36 13,86 17,67

Diana 238,79 310,61 325,67 339,85 349,45

Fcmeans 277,35 399,46 433,99 476,44 485,69

som 0 1,23 90,03 112,38 130,77

0

100

200

300

400

500

600

700

800

900

1000

Indi

cede

Conn

ectiv

ity

2 3 4 5 6

kmeans 0,84 0,87 0,82 0,81 0,84

Forgy 0,82 0,83 0,82 0,83 0,81

Clara 0,86 0,85 0,81 0,82 0,86

Hclust 0,98 0,98 0,98 0,98 0,98

Diana 0,86 0,86 0,86 0,86 0,86

Fcmeans 0,84 0,79 0,84 0,83 0,8

som 0,85 0,86 0,85 0,85 0,82

0,7

0,75

0,8

0,85

0,9

0,95

1

Indi

cede

Hube

rt

2 3 4 5 6

kmeans 1,11 1,14 1,15 1,1 1,1

Forgy 1,09 1,12 1,12 1,13 1,14

Clara 1,11 1,11 1,12 1,14 1,14

Hclust 1,01 1,01 1,01 1,01 1,01

Diana 1,54 1,46 1,39 1,34 1,33

Fcmeans 1,34 1,31 1,27 1,25 1,25

som 1,1 1,09 1,13

0

0,2

0,4

0,6

0,8

1

1,2

1,4

1,6

1,8

2In

dice

deCa

linsk

i

Page 118: Faculté des sciences Département d'informatique Mémoire de ...

Contribution2 : Evaluation des algorithmes de clustering sur la plateforme : casdes données numériques d’expression des gènes.

112

Discussion:

Les résultats obtenus pour ce jeu de données varient d’un algorithme de classification à un autre.

En effet : pour de meilleurs résultats des rapports de distances inter et intra classes, l’algorithme

« Kmeans » obtient de bonnes valeurs pour un nombre de clusters (k=3 ou 4) selon l’indice de

« Dunn » et « Calinski » respectivement. Pour l’algorithme « Forgy », le nombre de clusters n’est

pas déterminé par l’indice de « Dunn » par contre il obtient de meilleurs résultats pour (k=6) selon

l’indice de « Calinski ». L’algorithme « Clara » maximise l’indice de « Dunn » pour (k=2 ou 3)

alors que selon l’indice de « Calinski » le nombre optimal est (k=5 ou 6). L’indice de « Dunn » ne

permet pas le choix du nombre de clusters appropriés pour les deux algorithmes hiérarchiques

(hclust et Diana), L’algorithme « Diana » maximise l’indice de « Calinski » pour (k=2). Les deux

indices de validation inter-intra classes permettent de sélectionner (k=2) pour le partitionnement

de ces données par l’algorithme « Fuzzy c-means ».

Concernant la validation « intra-classes », l’indice de « Silhouette » n’a pas réussi à sélectionner

le nombre de clusters pour les données testées, alors que l’indice de validation « interclasses »

(Connectivité) indique un choix de (k=2) pour l’ensemble des algorithmes utilisées.

L’objectif des auteurs des données était de découvrir deux types de Leucémie Aigüe

Lymphoblastique selon le type cellulaire T ou B : T-ALL ou B-ALL. En projetant ce ci sur les

résultats de validation obtenues, on conclut que l’algorithme « Fuzzy c-means » permet de mieux

partitionner les données en deux groupes Compactes et bien séparés.

Page 119: Faculté des sciences Département d'informatique Mémoire de ...

Contribution2 : Evaluation des algorithmes de clustering sur la plateforme : cas des données numériques d’expression desgènes.

113

Les données de Yeoh V2:La validation interne :

2 3 4 5 6

kmeans 0,69 0,69 0,69 0,66 0,68

Forgy 0,71 0,71 0,7 0,69 0,69

Clara 0,75 0,65 0,65 0,65 0,65

Hclust 0,93 0,93 0,92 0,91 0,91

Diana 0,78 0,68 0,68 0,68 0,68

Fcmeans 0,68 0,71 0,61 0,68 0,68

som 0,6 0,64 0,64 0,62

0,5

0,55

0,6

0,65

0,7

0,75

0,8

0,85

0,9

0,95

1

Indi

cede

Dun

n

2 3 4 5 6

kmeans 0,03 0,03 0,04 0,04 0,03

Forgy 0,03 0,04 0,04 0,04 0,04

Clara 0,03 0,03 0,04 0,04 0,04

Hclust 0,03 0,03 0,03 0,03 0,03

Diana 0,02 0,03 0,03 0,02 0,03

Fcmeans 0,03 0,03 0 0,03

som 0,03 0,04 0,04 0,04

0

0,01

0,02

0,03

0,04

0,05

0,06

0,07

0,08

0,09

0,1

Indi

cede

Silh

ouet

te

2 3 4 5 6

kmeans 73,23 95,89 148,67 164,93 187,74

Forgy 104,42 119,38 151,04 202,41 176,94

Clara 77,74 191,11 174,77 170,08 178,04

Hclust 2,93 5,86 8,79 12,05 15,38

Diana 91 133,5 135,32 138,55 171,81

Fcmeans 139,39 165,49 179,5 218,4 212,89

som 0 143,31 139,37 184,63 187,67

0

50

100

150

200

250

300

Indi

cede

Conn

ectivi

ty

2 3 4 5 6

kmeans 0,86 0,85 0,81 0,82 0,84

Forgy 0,86 0,83 0,82 0,8 0,8

Clara 0,86 0,84 0,81 0,8 0,79

Hclust 0,94 0,94 0,94 0,94 0,94

Diana 0,87 0,84 0,84 0,84 0,83

Fcmeans 0,86 0,86 0,93 0,83 0,92

som 0,87 0,85 0,84 0,82 0,81

0,7

0,75

0,8

0,85

0,9

0,95

1

Indi

cede

Hub

ert

2 3 4 5 6

kmeans 7,2 8,51 8,26 7,1 5,06

Forgy 8,28 9,24 8,1 7,12 6,05

Clara 7,87 7,12 7,09 6,68 5,97

Hclust 1,11 1,11 1,1 1,09 1,09

Diana 3,03 5,35 4,01 3,34 3,61

Fcmeans 7,37 4,74 3,43 5,18 2,56

som 5,45 8,69 7,57 6,93

0

2

4

6

8

10

12

14

16

18

20

Indi

cede

Calin

ski

Page 120: Faculté des sciences Département d'informatique Mémoire de ...

Contribution2 : Evaluation des algorithmes de clustering sur la plateforme : casdes données numériques d’expression des gènes.

114

Discussion:

Les auteurs de ce jeu de données ont étudié les formes de Leucémies Aigües chez l’enfant en se

basant sur les expressions des gènes. Ils ont identifié 6 classes de maladie.

Le seul indice d’Hubert et Levin de validation intra-classes révèle le choix du nombre de cluster

(k=6) par la majorité des algorithmes de classification (Forgy, Clara, Diana et SOM) qui

permettent de maximiser la formule de cet indice, ce qui confirme les résultats des auteurs.

Seulement que cet indice de validation permet de mesurer seulement la relation intra classe, pour

dire qu’avec k=6, on peut avoir des groupes bien séparés.

Cependant, pour avoir de meilleurs valeurs des rapports de distances inter et intra classes des deux

indices « Dunn » et « Calinski », les résultats sont partagés entre un nombre de cluster égale à 2

ou 3. En effet, les deux algorithmes « Kmeans » et « Forgy »maximisent l’indice de « Dunn »

pour (k=2 et k=3) et maximisent l’indice de « Calinski » seulement pour (k=3), l’algorithme

« Clara » obtient de meilleurs résultats pour (k=2) selon les deux indices à la fois « Dunn » et

« Calinski ». L’algorithme hiérarchique ascendant (Hclust) obtient de meilleures relation inter et

intra classe pour (k=2 et 3) pour les deux indices.l’algorithme « Diana » maximise l’indice de

« Dunn » pour (k=2) et « Calinski » pour (k=3) alors que « Fuzzy c-means » c’est l’inverse : il

maximise l’indice de « Dunn » pour (k=3) et « Calinski » pour (k=2).

Un partitionnement de ce jeu de données par l’algorithme « Kmeans » avec (K=4) révèle être un

bon choix selon les résultats obtenues puisqu’il donne ces meilleurs valeur pour les 3 indices à la

fois : « Silhouette» et « Hubert » pour l’étude des relations intra classes ainsi que l’indice de

« Dunn » qui étudie à la fois la relation inter et intra classes.

Page 121: Faculté des sciences Département d'informatique Mémoire de ...

Contribution2 : Evaluation des algorithmes de clustering sur la plateforme : cas des données numériques d’expression desgènes.

115

Les données de Shipp:La validation interne :

2 3 4 5 6

kmeans 0,57 0,51 0,49 0,49 0,5

Forgy 0,58 0,52 0,5 0,49 0,5

Clara 0,58 0,58 0,49 0,55 0,51

Hclust 0,79 0,74 0,74 0,73 0,72

Diana 0,58 0,58 0,6 0,6 0,61

Fcmeans 0,57 0,57 0,57 0,57 0,57

som 0,58 0,5 0,49 0,54

00,05

0,10,15

0,20,25

0,30,35

0,40,45

0,50,55

0,60,65

0,70,75

0,80,85

0,90,95

1

Indi

cede

Dunn

2 3 4 5 6

kmeans 0,09 0,07 0,08 0,08 0,08

Forgy 0,09 0,06 0,09 0,07 0,07

Clara 0,09 0,09 0,06 0,08 0,08

Hclust 0,1 0,07 0,04 0,05 0,05

Diana 0,09 0,09 0,08 0,09 0,1

Fcmeans 0,09

som 0,07 0,08 0,09 0,09

0

0,02

0,04

0,06

0,08

0,1

0,12

0,14

0,16

0,18

0,2

Indi

cede

Silh

ouet

te

2 3 4 5 6

kmeans 23,14 55,94 47,72 62,29 77,48

Forgy 31,58 57 47,95 68,69 80,79

Clara 28,33 32,21 58,91 60,98 76,93

Hclust 3,17 6,24 9,34 13,2 16,68

Diana 21,36 35,48 40,4 48,87 51,35

Fcmeans 22,52 22,72 22,72 25,17 25,17

som 0 48,58 54,12 78,91 65,8

0

10

20

30

40

50

60

70

80

90

100

Indi

cede

Conn

ectiv

ity

2 3 4 5 6

kmeans 0,78 0,77 0,76 0,76 0,75

Forgy 0,79 0,77 0,76 0,76 0,75

Clara 0,79 0,77 0,76 0,75 0,73

Hclust 0,84 0,83 0,83 0,83 0,83

Diana 0,78 0,77 0,78 0,77 0,8

Fcmeans 0,78 0,79 0,79 0,79 0,79

som 0,82 0,78 0,76 0,73 0,74

0,5

0,55

0,6

0,65

0,7

0,75

0,8

0,85

0,9

0,95

1

Indi

cede

Hube

rt

2 3 4 5 6

kmeans 8,82 6,05 5,14 4,96 4,95

Forgy 8,57 5,92 6,2 5,06 4,79

Clara 8,36 6,77 5,75 5,44 5,27

Hclust 1,37 1,3 1,24 1,55 1,47

Diana 8,59 6,03 5,02 5,12 4,44

Fcmeans 8,81 4,35 2,86 2,45 1,93

som 5,82 6,28 5,88 5,67

0

2

4

6

8

10

12

14

16

18

20

Indi

cede

Calin

ski

Page 122: Faculté des sciences Département d'informatique Mémoire de ...

Contribution2 : Evaluation des algorithmes de clustering sur la plateforme : casdes données numériques d’expression des gènes.

116

Discussion:

L’objectif derrière l’expérience de « Shipp » était de discriminer à partir des données des

expressions des gènes, deux types de tumeurs malignes du sang au sein d’une seule lignée

cellulaireB.

Pour une meilleure qualité du clustering en terme de distance inter-intra classes, le nombre de

cluster (k=2) est choisi par la majorité des algorithmes de classification non supervisées utilisés

dans cette étude, ce ci selon les deux indices de « Dunn » et « calinski ». En ce qui concerne les

mesures de qualité intra classes, les indices de « Silhouette » et « Hubert & Levin » distinguent

plusieurs choix possibles selon l’algorithme utilisé: les algorithmes « Kmeans », « Forgy »,

« Clara » peuvent partitionner les données correctement en (k=2) selon l’indice de « Silhouette »

et (k=6) selon l’indice d’Hubert, l’algorithme hiérarchique ascendant « Hclust » obtient de

meilleures partitions des données en (k=2) selon l’indice de « Silhouette », l’algorithme

hiérarchique descendant peut maximise l’indice d’Hubert pour (k=3 ou 5), l’algorithme flou

« Fuzzy c means » obtient une seule valeur pour l’indice de « Silhouette » pour k=2.

Pour conclure, les résultats indiquent que les algorithmes de clustering par partitionnement

« Kmeans », « Forgy », « Clara », et « Fuzzy c-means » obtiennent de meilleures valeurs par la

majorité des indices de validation (« Dunn », « Silhouette » ainsi que « Connectivité ») ce qui

rejoigne les résultats des auteurs des données.

Page 123: Faculté des sciences Département d'informatique Mémoire de ...

Contribution2 : Evaluation des algorithmes de clustering sur la plateforme : cas des données numériques d’expression desgènes.

117

Les données d’Armstrong V1:La validation interne :

2 3 4 5 6

kmeans 0,67 0,54 0,55 0,48 0,48

Forgy 0,67 0,57 0,56 0,48 0,48

Clara 0,7 0,46 0,47 0,46 0,48

Hclust 0,83 0,77 0,77 0,74 0,73

Diana 0,71 0,71 0,71 0,56 0,54

Fcmeans 0,67 0,67 0,67 0,67 0,67

som 0,62 0,57 0,48 0,48

00,05

0,10,15

0,20,25

0,30,35

0,40,45

0,50,55

0,60,65

0,70,75

0,80,85

0,90,95

1

Indice

deDu

nn

2 3 4 5 6

kmeans 0,18 0,14 0,12 0,11 0,08

Forgy 0,18 0,12 0,11 0,08 0,07

Clara 0,18 0,11 0,09 0,07 0,08

Hclust 0,12 0,09 0,09 0,1 0,08

Diana 0,18 0,17 0,18 0,16 0,11

Fcmeans 0,18 0,18

som 0,11 0,1 0,1 0,09

0

0,05

0,1

0,15

0,2

0,25

0,3

0,35

0,4

0,45

0,5

Indice

deSilho

uette

2 3 4 5 6

kmeans 11,18 36,53 41,66 40 68,49

Forgy 11,18 25,75 43,56 52,37 60,07

Clara 8,83 30,6 42,65 61,46 55,23

Hclust 2,93 6,06 8,93 11,83 14,86

Diana 5,5 14,3 14,55 29,32 48,36

Fcmeans 11,18 11,18 11,18 11,18 11,18

som 0 17,94 35,78 56,59 65,27

0

10

20

30

40

50

60

70

80

90

100

Indice

deCo

nnectiv

ity

2 3 4 5 6

kmeans 0,67 0,64 0,63 0,75 0,63

Forgy 0,67 0,64 0,63 0,63 0,6

Clara 0,67 0,65 0,65 0,63 0,62

Hclust 0,84 0,83 0,83 0,83 0,83

Diana 0,67 0,66 0,76 0,76 0,74

Fcmeans 0,67 0,77 0,67 0,77 0,77

som 0,77 0,65 0,61 0,6 0,57

0

0,1

0,2

0,3

0,4

0,5

0,6

0,7

0,8

0,9

1

Indice

deHu

bert

2 3 4 5 6

kmeans 17,55 10,38 8,26 7,19 6,11

Forgy 17,55 11,78 7,78 7,84 7,07

Clara 17,04 11,45 8,66 7,61 7,04

Hclust 1,46 1,36 1,38 1,4 1,34

Diana 17,16 10,25 7,4 6,67 6,6

Fcmeans 17,55 8,65 17,55 4,2 5,68

som 9,89 9,81 8,32 7,33

0

2

4

6

8

10

12

14

16

18

20

Indice

deCalinski

Page 124: Faculté des sciences Département d'informatique Mémoire de ...

Contribution2 : Evaluation des algorithmes de clustering sur la plateforme : casdes données numériques d’expression des gènes.

118

Discussion:

L’objectif derrière l’expérience était de discriminer à partir des données des expressions des

gènes, deux types de Leucémies lymphoblastiques avec translocations.

Les résultats des indices de validation interne confirment le partitionnement. En effet, selon

l’indice de « Dunn » les meilleurs relations inter-intra classes sont obtenues pour un nombre de

cluster (k=2) par la majorité des algorithmes : « Kmeans », « Forgy », « Fuzzy c-means »

maximise l’indice pour une valeur identique (0.67), la meilleure valeur de l’algorithme « Diana »

(0.71) , « Hclust » pour (0.83) et « Clara » (0.7). selon l’indice de « Silhouette » dont le but est de

maximiser la distance intra classe : le choix de (k=2) est évident par tous les algorithmes testés :

« Kmeans », « Forgy », « Clara », « Diana » et « Fuzzy c-means » maximisent l’indice avec une

même valeur (0.18) et l’algorithme hiérarchique pour une valeur de (0.12) légèrement inférieure

mais toujours pour (k=2). L’indice de « Calinski » indiquant la relation inter-intra classes comme

l’indice de « Dunn » estégalement maximisé pour un nombre de clusters (k=2) par tous les

algorithmes de clustering utilisés.

Page 125: Faculté des sciences Département d'informatique Mémoire de ...

Contribution2 : Evaluation des algorithmes de clustering sur la plateforme : cas des données numériques d’expression desgènes.

119

Les données d’Armstrong V2:La validation interne :

2 3 4 5 6

kmeans 0,68 0,61 0,51 0,41 0,62

Forgy 0,68 0,61 0,51 0,58 0,52

Clara 0,67 0,56 0,53 0,53 0,53

Hclust 0,76 0,72 0,71 0,69 0,73

Diana 0,68 0,68 0,62 0,56 0,6

Fcmeans 0,68 0,68 0,68 0,68 0,68

som 0,68 0,61 0,55 0,5

00,05

0,10,15

0,20,25

0,30,35

0,40,45

0,50,55

0,60,65

0,70,75

0,80,85

0,90,95

1

Indice

deDu

nn

2 3 4 5 6

kmeans 0,19 0,15 0,08 0,06 0,08

Forgy 0,19 0,13 0,11 0,1 0,06

Clara 0,19 0,12 0,07 0,05 0,06

Hclust 0,08 0,08 0,08 0,05 0,16

Diana 0,19 0,17 0,12 0,11 0,09

Fcmeans 0,19

som 0,11 0,12 0,09 0,09

0

0,05

0,1

0,15

0,2

0,25

0,3

0,35

0,4

0,45

0,5

Indice

deSilho

uette

2 3 4 5 6

kmeans 9,93 20,45 52,42 58,68 54,41

Forgy 7,56 15,46 40,17 42,57 55,2

Clara 12,16 19,11 48,84 60,86 64,75

Hclust 3,54 6,98 9,82 12,75 14,58

Diana 5,12 13,38 27,66 37,12 50,29

Fcmeans 9,93 9,93 9,93 9,93 9,93

som 0 16,44 25,94 54,49 59,39

0

10

20

30

40

50

60

70

80

90

100

Indice

deCo

nnectiv

ity

2 3 4 5 6

kmeans 0,62 0,6 0,6 0,6 0,58

Forgy 0,62 0,59 0,58 0,58 0,56

Clara 0,62 0,59 0,58 0,58 0,54

Hclust 0,81 0,81 0,81 0,81 0,76

Diana 0,62 0,61 0,56 0,55 0,6

Fcmeans 0,62 0,76 0,76 0,76 0,76

som 0,71 0,6 0,54 0,6 0,58

0

0,1

0,2

0,3

0,4

0,5

0,6

0,7

0,8

0,9

1

Indice

deHu

bert

2 3 4 5 6

kmeans 19,13 11,47 8,22 7,6 7,04

Forgy 19,05 13,08 9,03 8,43 6,76

Clara 18,84 12,96 9,46 7,66 7,1

Hclust 1,25 1,29 1,31 1,25 5,22

Diana 19,03 11,2 9,9 8,19 7,62

Fcmeans 19,13 9,43 6,19 9,43 6,19

som 10,94 10,28 8,54 7,25

0

2

4

6

8

10

12

14

16

18

20

Indice

deCalinski

Page 126: Faculté des sciences Département d'informatique Mémoire de ...

Contribution2 : Evaluation des algorithmes de clustering sur la plateforme : casdes données numériques d’expression des gènes.

120

Discussion:

Selon l’indice de « Dunn » les meilleurs relations inter-intra classes sont obtenues pour un nombre

de cluster (k=2) par la majorité des algorithmes : « Kmeans », « Forgy », « Fuzzy c-means » et

« Diana » avec une valeur de (0.68) ainsi que par l’algorithme « Clara » et « Hclust ».

l’algorithme hiérarchique « Diana » et l’algorithmes « SOM » maximise l’indice pour (k=3).

L’indice de « Calinski » confire le résultat de « Dunn » puisque il est maximisé majoritairement

pour (k=2) sauf l’algorithme (SOM) qu’il obtient de meilleures relations inter-intra classes pour

(k=3). L’algorithme hiérarchique « Hclust » obtient de bons résultats en partitionnant les données

en (k=6) selon l’indice de « Calinski ». L’indice de relation intra classe « Hubert et Levine »

indique une meilleure partition peut être obtenue pour (k=6) par « Kmeans », « Forgy », « Clara »

et « Hclust ».

L’objectif derrière l’expérience était de discriminer à partir des données des expressions des

gènes, trois types de Leucémies lymphoblastiques avec translocations : ALL/MLL/AML, pour

cela les seules algorithmes « Diana » ou « SOM » peuvent obtenir 3 bons clusters selon les

résultats commentés.

Page 127: Faculté des sciences Département d'informatique Mémoire de ...

121

Page 128: Faculté des sciences Département d'informatique Mémoire de ...

122

1. Problématique:

La dernière décennie a été marquée par la publication d’un grand nombre d’articles dans la

thématique de traitement d’images. En effet, la mise à portée des systèmes d’acquisitions

numériques de haute précision ainsi que la montée en puissance et en capacité de stockage des

ordinateurs ont contribué au développement des systèmes d’aide à la décision dans le domaine de

traitement d’images. Le principal objectif de ces derniers consiste à obtenir une interprétation de

l’image au niveau sémantique répondant aux différentes attentes des utilisateurs humains. Les

domaines d’application sont très variées : la télédétection qui est utilisée dans les domaines de la

météo, la cartographie, l’analyse des ressources terrestres, les applications militaires, l’imagerie

médicale etc.

La segmentation est une étape nécessaire dans le processus de traitement et d’analyse d’images.

Elle correspond au partitionnement de l’image en un ensemble de classes ou de régions en se

basant sur des critères spectraux ou spatiaux (comme l’information couleur, les relations de

voisinage entre les pixels dans l’image...).

Après la présentation détaillée des différents algorithmes de clustering dans les chapitres

précédents, Notre étude est focalisée sur leur application sur les images microscopiques

notamment les images de cytologie de sang. Le but de cette application consiste à extraire les

différents composants de ces images tels que : les cytoplasmes et les noyaux.Ce sujet étant par

nature fortement interdisciplinaire (à l'interface du traitement d'images, de la reconnaissance de

formes, de la classification et de l'imagerie médicale).

2.Introduction à la segmentation d'images

La segmentation est une étape importante pour l’extraction des informations qualitatives de

l’image. Elle consiste à découper l’image considérée en régions ayant une homogénéité selon un

critère prédéfini (niveau de gris, moments, coefficients d’ondelettes …). L’union des régions

obtenues doit redonner l’image initiale. La segmentation d’image n’est pas considérée comme un

but en soi, mais dépend du type de traitement fixé a priori.

Formellement, la segmentation d’une image numérique I consiste à chercher une partition de I en

un sous ensemble R = {R , R , … , R } telle que :

∀i, R ≠ ∅,∀i ≠ j, R ∩ R = ∅, I =∪ R

Page 129: Faculté des sciences Département d'informatique Mémoire de ...

123

Le problème de la segmentation d’images consiste à trouver :

1-Un ensemble de critères d’homogénéités des régions que l’on cherche.

2-Un algorithme permettant l’obtention de régions optimisant au mieux ces critères.

Une multitude de méthodes de segmentation sont proposées dans la littérature, mais elles sont

généralement regroupées en trois principales approches qui sont l’approche contour, l’approche

région et l’approche classification.

La méthode de segmentation par contours(edge-based segmentation) consiste à identifier les

discontinuités qui séparent les différentes régions de l’image, cette approche cherche les

dissimilarités.

La méthode de segmentation en régions(region-based segmentation) a pour objectif de

décomposer l’image en un ensemble de régions connexes les plus homogènes possible; et les plus

différentes pour celles qui se côtoient.

L’approche classification, quant à elle, cherche à regrouper les pixels qui présentent une

similarité et une uniformité selon un critère prédéfini, on parle de partitionnement ou de

clustering. C’est cette approche qui nous intéresse dans ce travail.

3.La segmentation par clustering :

Les méthodes de segmentation d’images par classification sont issues des méthodes

statistiques multidimensionnelles. Elles cherchent à définir une partition de l’image en un

ensemble de classes telle que chaque classe rassemble des pixels ayant des propriétés statistiques

aussi similaires que possible et que les classes soient aussi distinctes que possible les unes des

autres. Ainsi, elles identifient les classes de pixels présentes dans l’image et affectent à chaque

pixel une étiquette indiquant la classe à laquelle il appartient.

Il n’existe pas une méthode de classification qui peut s’appliquer à tout type d’image et qui peut

fournir un partitionnement optimal le plus naturellement possible. Ce qui explique la grande

diversité de méthodes de classification qui existe dans la littérature. En général, on peut les

répartir en : méthodes supervisées qui se basent sur un modèle exacte, fourni par un expert, et les

méthodes non supervisées ou aucune connaissance à priori n’est disponible. Dans le deuxième cas

le nombre de classes est déduit directement des données.

Page 130: Faculté des sciences Département d'informatique Mémoire de ...

124

L’intérêt des méthodes non supervisées est qu’elles ne nécessitent aucune base d’apprentissage et

par la même aucune tâche préalable d’étiquetage manuel n’est requise.

La seule intervention de l’expert se situe à la fin du processus pour identifier les tissus en

comparant les classes calculées avec les classes biologiques.

Formellement, une segmentation en classes composées chacune de régions est définie

comme suit : =∪ , =∪ ,∀ , ≠ ∅ ∀ , ∩ ∀ ≠

4.Etat de l’art desméthodes de segmentation des cellules de sang :

Dans un système automatique de cytologie, la segmentation des différentes structures

morphologiques dans les images des cellules semble être l’étape la plus critique. En effet, les

erreurs dans le procédé de segmentation peuvent se propager pour fausser l’extraction de

caractéristiques, la classification et ceci a finalement comme conséquence une interprétation

biomédicale incorrecte[WIE 70].

Au fil des années, de nombreuses méthodes de segmentation d’image de frottis sanguin ont été

proposées en utilisant différentes approches. Les algorithmes utilisés diffèrent considérablement

dans le fondement méthodologique, la performance et la précision des résultats, la complexité et le

temps de calcul, etc. dans la littérature, ces méthodes peuvent être classées comme basées sur les

contours [WU 06],d’autres techniques sont baséessur la croissance de régions [HAU 84], les plus

classiques sont basées sur une technique simple de seuillage [BOR 79], ou des techniques un peu

plus avancées comme : le seuillage hiérarchique [WER 84], seuillage et correction géométrique

[BRE 81], , ou sur l’application de la méthode de « Ligne de Partage des Eaux » ou LPE

(watershed)[DIR 00].

Toutes les méthodes basées sur le seuillage pour la segmentation des globules blancs qui ont été

rapportées dans la littérature sont capables de segmenter le noyau du leucocyte de l’arrière plan de

l’image avec une précision acceptable. Liao Q et al [LIA 02]ont introduit une segmentation basée

sur un seuil de niveau de gris pour les images de globules blancs. Une autre méthode dite de

divergence floue est employée par Ghosh et al [GHO 10a] pour l’estimation du seuil dans les

images de leucocyte.

Les images couleur sont une source très riche d’informations et les régions peuvent être mieux

segmentées en termes de couleur qu’aux niveaux de gris.

Page 131: Faculté des sciences Département d'informatique Mémoire de ...

125

Un meilleur algorithme de fusion de régions a été proposé par Mehnert A et al [MEH 97].

Cependant, le choix d’un ensemble de pixels appelés « germes » comme point de départ de la

méthode est l’inconvénient de toutes les méthodes basées sur la région.

Les auteurs Wu J et al [WU 06] ont déclaré dans leur articleque les limites des cellules ne sont pas

suffisamment pointues pour effectuer la segmentation basée sur les contours dans les images de

leucocytes.

Les méthodes de détection de contour appliquées aux images de cellules sanguines en utilisant un

modèle de contour actif a d’abord été présenté par [KAS 87]. Une autre variante du modèle dite

« Snakes » a été utilisé avec succès pour la segmentation du noyau du globule blanc par [ONG

01].

L’application des opérateurs morphologiques a également été étudiée pour la séparation des

globules blancs du fond des images par [RUB 02].

Ces dernières années, la technique de clustering a été intégrée intelligemment pour la

segmentation des images de cellules sanguines. L’avantage des méthodes de classification non

supervisées appliquées aux images est le fait qu’elles sont automatiques et spécifiquement

conçues pour la classification [ADO 08]. Nous situonsdans ce contexte notre travail [KHA 11]

[KHA 12] [KHA 11p] concernant l’état de l’art des algorithmes de clustering appliqués aux

images microscopiques du sang.

Un processus de segmentation en deux étapes en deux étapes pour les images couleur en utilisant

l’algorithme k-means suivie par l’algorithme EM a été proposé parSinha N et al [SIN 03].

Les auteurs de l’article [COM 01] ont appliqué l’algorithme Mean Shift pour la segmentation

d’images couleur de leucocytes.

Les inconvénients liés aux algorithmes de clustering standards sont : la prédétermination des

nombres de clusters [JIA 03], ainsi qu’au chevauchement des régions morphologiques qui sont le

cytoplasme et le noyau.

Selon Kumar B et al [KUM 02]la sélection de l’espace de couleur est également un enjeu majeur

pour les méthodes de classification non supervisées basées sur la couleur.

D’autre part, les études révèlent que les performances des méthodes de segmentation sont limitées

par des facteurs tels que la préparation du frottis, coloration, et l’acquisition des images.

Page 132: Faculté des sciences Département d'informatique Mémoire de ...

126

5.Notre approche de segmentation :

Au vu d’une image couleur, quelles sont les informations nous permettant d’interpréter les

informations sémantiques contenues dans cette image ?

En effet, ceci peut se résumer à deux informations :

-La couleur des objets présents sur l’image.

-Et les transitions de couleur entre les objets de l’image.

La couleur des objets dépend de l’espace couleur choisi et les transitions de couleur entre les

objets déterminent le nombre de classes contenues dans l’image. Ceci peut être déduit en utilisant

l’histogramme de l’image.

Afin de bien réaliser ces choix qui sont déterminants pour l’algorithme de clustering utilisé,

chacun amenant à l’établissement d’un paramètre ou des données d’entrée de cet algorithme. Nous

proposons de définir une stratégie qui se base sur des mesures quantitatives.

5.1Le choix de l’espace couleur :

Comment définir l’espace couleur à utiliser ? Comment déterminer l’espace couleur le mieux

adapté au problème posé ? Ce choix doit il se faire indépendamment du problème ou doit il tenir

compte des objets à extraire dans l’image ?

Notre approche consiste à trouver le meilleur espace de représentation de l’image et ensuite à

choisir la méthode à utiliser pour segmenter l’image.

Les images dont nous étudions sont représentées dans un système RVB (RGB en Anglais) : un

pixel couleur est un vecteur à trois composantes qui traduisent l’intensité lumineuse pour les trois

couleurs de base (RVB-Rouge, Verte, Bleue). Ces trois grandeurs de couleurs primaires

définissent un espace tridimensionnel, appelé modèle RVB, qui constitue la représentation

numérique de base de la couleur.

Pour déterminer le choix de l’espace couleur, il nous faudra donc étudier chacune des trois

composantes : Rouge, Verte et Bleue.

Pour cela, nous avons analysé la représentation des niveaux de gris dans l’image. On cherche à

étudier en particulier à partir de quel seuil haut le fond est séparé des cytoplasmes des cellules, et

à partir de quel seuil bas les cytoplasmes sont séparés des noyaux. Les résultats obtenus sont

donnés dans le tableau suivant :

Page 133: Faculté des sciences Département d'informatique Mémoire de ...

127

ID Image Composante Rouge Composante Verte Composante Bleue

Image1

Seuil bas : 29

Seuil haut : 185

Seuil bas : 0

Seuil haut : 180

Seuil bas : 86

Seuil haut : 173

Image2

Seuil bas : 47

Seuil haut : 191

Seuil bas : 28

Seuil haut : 187

Seuil bas : 115

Seuil haut : 174

Image3

Seuil bas : 60

Seuil haut : 192

Seuil bas : 26

Seuil haut : 179

Seuil bas : 88

Seuil haut : 166

Image4

Seuil bas : 88

Seuil haut : 203

Seuil bas : 37

Seuil haut : 194

Seuil bas : 111

Seuil haut : 185

Image5

Seuil bas : 33

Seuil haut : 150

Seuil bas : 18

Seuil haut : 144

Seuil bas : 69

Seuil haut : 130

Image6

Seuil bas : 34

Seuil haut : 139

Seuil bas : 16

Seuil haut : 136

Seuil bas : 58

Seuil haut : 130

On remarque que seule la composante verte donne des seuils vraiment homogènes et l’écart entre

le seuil bas et le seuil haut est important.

Nous avons donc décidé d’appliquer les algorithmes de clustering seulement sur la composante

verte des images ce qui permettra d’arriver à des résultats concluants.

5.2Le choix du nombre de classes :

Nous avons utilisé la technique de seuillage par l’histogramme pour déterminer le nombre de

clusters dans les images étudiées. Cette méthode est simple, on suppose que chaque cluster ou

classe correspond à une gamme distincte de niveaux de gris. L’histogramme est alors m-modal. La

position du seuil Si de l’histogramme H permet de fixer les (m-1) seuils nécessaires pour séparer

les m classes.

Un histogramme est un graphique statistique permettant de représenter la distribution des

intensités des pixels d’une image, c'est-à-dire le nombre de pixels pour chaque intensité

lumineuse.

Par convention, un histogramme représente le niveau d’intensité en abscisse en allant du plus

foncé (à gauche) au plus claire (à droite).

Ainsi, l’histogramme d’une image en 255 niveaux de gris sera représenté par un graphique

possédant 255 valeurs en abscisses, et le nombre de pixels de l’image en ordonnées.

Page 134: Faculté des sciences Département d'informatique Mémoire de ...

128

Le tableau suivant présente pour chacune des images, le nombre de classes(k), le nombre de

niveau de gris présent dans l’image ainsi que l’histogramme associé :

ID Image Nbr de seuils Niveaux de gris L’histogramme

Image1 5 180

Image2 5 159

Image3 5 153

Image4

5 157

Image5 5 126

Le nombre de classes est un paramètre déterminant pour les algorithmes de segmentation car il

permet d’extraire le type d’objets désiré. L’objectif de notre application est de reconnaitre les 4

types d’objets présents dans l’image (le noyau des globules blancs, les globules rouges, les

cytoplasmes des cellules et le plasma), ce paramètre devra être au moins égale à trois. Pour les

images réelles choisies, la valeur optimale des seuils est de 5 pour chacune d’entre elles. Donc le

nombre de classe est k=4.

Page 135: Faculté des sciences Département d'informatique Mémoire de ...

129

5.3 Algorithme général de segmentation :

L’algorithme général de segmentation est présenté comme suit :

Input :

Im : RGB image de dimension (M*N)k : Nombre maximum de classes désiréMethod : chaine de caractère indiquant le nom de l’algorithme

Début1. Lire image

X<-Read.Image(Im)2. Calculer la dimension de l’image

Dim(X)<-M*N*33. Calculer les bornes des trois composantes de l’image Rouge/Verte/Bleue

Compr1<-1Compr2<-Dim(X)/3Compv1<-[Dim(X)/3] +1Compv2<-[Dim(X)/3]*2Compb1<-[Dim(X)/3]*2+1Compb2<-Dim(x)

4. Appliquer l’algorithme de clustering choisi (dans ce cas Kmeans)sur l’imageRGBSwitch (Method,

Kmeans= {clusterObj<-Kmeans()

cluster<-matrix(clusterObj$cluster)center<-matrix(clusterObj$center)

}, break ;)

5. Remplacer chaque pixel de la composante verte par le centre du cluster auquelil appartient-Remplacer chaque pixel de la composante rouge et bleue par 0.Initialiser une structure de données de type liste de taille k :Li<-Vector(‘list’,k)For (j in 1 :k){clusterObj1<-clusterObjFor (i in compv1 :compv2){Ifelse(clusterObj1[i]!=j,clusterObj1[i]<-0,clusterobj1[i]<-center[j])}For(i in 1 :compr2){clusterObj1[i]<-0}For(i in compb1 :compb2){clusterObj1[i]<-0}

6. Reconstruire l’image RGB à partir de la matrice de pixelLi[[j]]<-imagematrix(clusterObj1, «RGB», M, N)}

7. Localiser l’image contenant le noyau du Leucocyte (globule blanc)H<-min(center)For(i in 1 :k){If(center[i]==H){Display(Li[[i]])}

FIN

Page 136: Faculté des sciences Département d'informatique Mémoire de ...

130

6. Résultats expérimentaux :

6.1. Méthodes d’évaluation :

La segmentation d’une image est une étape essentielle en traitement d’images dans la mesure où

elle conditionne son interprétation.

Il existe de nombreux critères d’évaluation d’un résultat de segmentation d’images qui ont été

proposés dans la littérature[PHI 01][ZHA 96]. L’objectif principal d’un critère d’évaluation est

d’être capable de comparer les différents résultats des algorithmes afin de trouver la meilleure

segmentation.

Dans le cadre de l’étude des images de cellules de sang anormales, dont le but est d’assurer une

sécurisation du diagnostic. C’est pourquoi, afin de comparer les résultats obtenus en fin de

traitement et ce de façon quantitative, nous avons utilisé la méthode d’évaluation dite avec vérité

terrain experte.

Une vérité terrain experteest un résultat de segmentation d'une image naturelle tracémanuellement

par des experts. Ce type de vérité terrain est souvent utilisé dans des cas spécifiques oùnous

voulons évaluer la qualité de segmentation de certains objets d'une image réelle.

6.1.1L’indice de précision :

La performance des algorithmes de segmentation sont donc évaluée en comparant le résultat

fourni par l’algorithme avec la segmentation de référence. La comparaison entre les deux résultats

se base sur des critères de dissimilarité entre ces deux segmentations. Ces critères prennent en

compte dans leur formulation une information sur la taille des régions mal classées et sur leur taux

de recouvrement ainsi que sur l’information concernant la localisation des pixels qui la

constituent[CHA 04].

Etant donné une image de pixels. Soit la segmentation de l’image en utilisant un

algorithme de clustering et la segmentation de référence que l’on souhaite obtenir.

On note ( ) et ( ) l’étiquette de la classe du pixel respectivement dans l’image

segmentée et dans l’image de référence.

Pour une classe , les critères de comparaison tiennent compte de quatre catégories de pixels

(voir la figure ci-dessous) :

Page 137: Faculté des sciences Département d'informatique Mémoire de ...

131

Figure.33.Types de pixels classés[OUA 06].

Les Vrai Positifs(VP) : sont des pixels détectés à raison

= \ ( ) = ∩ ( ) =

Les Faux Positifs(FP) : sont des pixels détectés à tord

= \ ( ) ≠ ∩ ( ) =

Les Vrai Négatifs(VN) : sont des pixels non détectés à raison

= \ ( ) ≠ ∩ ( ) ≠

Les Faux Négatifs(FN) : sont des pixels non détectés à tord

= \ ( ) = ∩ ( ) ≠

Sur la base de ces quatre catégories, on défini l’indice de précision :

é =+

Etant donné que la segmentation des noyaux apportant plus d’informations aux experts du

domaine, nous privilégions l’indice de précision sur la reconnaissance du noyau des globules

blancs par rapport à celui des autres composants des images.

6.1.2 Mesures d’erreurs de classification :

Les mesures d’écart entre une segmentation obtenue par un algorithme de segmentation et une

segmentation de référence ont été fréquemment utilisées pour évaluer les performances des

algorithmes de classification et de segmentation.

Deux mesures d’erreur qui donnent des indices sur la qualité d’un résultat de segmentation ont été

abordée : l’erreur de sur détection et l’erreur de sous détection.

L’erreur de sur détection est définie comme suit[CHA 07] :

, =− ( ∩ )

( ) − ( )

Page 138: Faculté des sciences Département d'informatique Mémoire de ...

132

L’erreur de sous détection est calculée comme suit :

, =− ( ∩ )

( ) − ( )

6.1.3 Le temps d’exécution des algorithmes :

Etant donné que les critères d’évaluation présentés précédemment ne prennent pas en compte le

temps d’exécution des algorithmes de classification utilisés pour la segmentation et qui représente

une information relativement importante, nous tiendrons donc compte du temps de calcul en

supplément des autres méthodes. D’autant plus que notre application porte sur des images

biomédicales impose un temps de traitement assez faible afin de pouvoir obtenir un diagnostic

rapide.

6.2. Description des images utilisées :

La banque d’images sur laquelle nous avons appliqué notre algorithme de segmentation est

constituée d’images de la cytologie. Cet ensemble d’images a été mis à notre disposition par le Dr

Mohammed Brahimi du service d’hémobiologie de l’EHU d’Oran, pour l’aide à la recherche sur

la segmentation. Les images ont été acquises par un microscope optique « Leica » et un appareil

photo « Canon Powershot S80 » avec une interprétation photométrique RVB.

Nous avons appliqué notre algorithme sur un ensemble de 30 images couleurs de différent type de

globules blancs (01 Basophile, 07 Monocytes, 15 Neutrophiles, 05 Lymphocytes et 02

Eosinophiles).Voir la figure ci-dessous.

6.3. Evaluation des résultats :

Nous présentons dans cette partie, les résultats de segmentation obtenus avec les différents

algorithmes de clustering que nous avons utilisés. Chaque image est segmentée par une méthode

de classification non supervisée appelée à partir de notre algorithme général de segmentation (k-

means, Forgy ,Clara, Fuzzy c-means, SOM) avec un nombre de classes égale à 4, et la distance

Euclidienne pour le calcul de similarité entre les pixels.

Ces classifieurs reposent sur l’information couleur car pour des images de cytologie, c’est la

principale information disponible a priori.

La moyenne de chaque critère d’évaluation : l’erreur de sous segmentation, l’erreur de sur

segmentation, l’indice de précision ainsi que la moyenne du temps de calcule pour chaque

algorithme de classification non supervisée est reporté dans le tableau ci-dessous.

Page 139: Faculté des sciences Département d'informatique Mémoire de ...

133

Figure.34.Les images de test.

IM1-Basophile IM2-Monocyte IM3-Monocyte IM4-Monocyte IM5-Monocyte IM6-Monocyte IM7-Monocyte IM8-Monocyte IM9-Neutrophile IM10-Neutrophile

IM11-Neutrophile IM12-Neutrophile IM13-Neutrophile IM14-Neutrophile IM15-Neutrophile IM16-Neutrophile IM17-Neutrophile IM18-Neutrophile IM19-Neutrophile IM20-Neutrophile

IM21-Neutrophile IM22-Neutrophile IM23-Neutrophile IM24-Eosinophile IM25-Eosinophile IM26-Lymphocyte IM27-Lymphocyte IM28-Lymphocyte IM29-Lymphocyte IM30-Lymphocyte

Page 140: Faculté des sciences Département d'informatique Mémoire de ...

134

Type de cellule Algorithme Erreur sous

segmentation

Erreur sur

segmentation

Précision Temps de calcul

(en seconde)

Basophile

k-means 8.18% 2.50% 63.49% 8.43s

Forgy 8.19% 2.55% 63.02% 0.10s

Clara 8.21% 2.90% 60% 0.08s

Fuzzy c-means 8.18% 2.50% 63.49% 14.81s

SOM 8.18% 2.50% 63.49% 19.28s

Monocytes

k-means 11.55% 0.72% 89.70% 0.51s

Forgy 11.55% 0.72% 89.67% 0.09s

Clara 11.60% 1.32% 85.26% 0.08s

Fuzzy c-means 11.55% 0.71% 89.80% 14.22s

SOM 11.56% 0.71% 89.81% 20.46s

Neutrophiles

k-means 6.55% 0.78% 81.19% 0.47s

Forgy 6.55% 0.78% 81.22% 0.66s

Clara 6.57% 0.73% 81.03% 0.08s

Fuzzy c-means 6.57% 0.78% 81.89% 14.37s

SOM 6.56% 0.77% 81.26% 19.37s

Eosinophiles

k-means 6.02% 5.72% 37% 4.01s

Forgy 6.09% 6.94% 31.16% 3.79s

Clara 6.08% 6.81% 30.94% 0.08s

Fuzzy c-means 6.08% 6.73% 31.65% 24.94s

SOM 6.08% 6.80% 31.35% 20.38s

Lymphocytes

k-means 6.35% 0.95% 77.32% 0.53s

Forgy 6.35% 0.95% 77.32% 0.10s

Clara 6.36% 1.07% 75.41% 0.08s

Fuzzy c-means 6.34% 0.86% 78.90% 14.69s

SOM 6.37% 0.90% 78.32% 20s

Page 141: Faculté des sciences Département d'informatique Mémoire de ...

135

6.3. 1 Discussion :

Notre méthode de comparaison des algorithmes de clustering utilisés pour la segmentation des

images microscopiques impliquent différents critères : l’erreur de sous segmentation, l’erreur de

sur segmentation, la précision ainsi que le temps de calcul, ce qui apportent une indication plus

précise sur la reconnaissance des objets et laisse le choix à l’utilisateur d’établir des règles de

sélection de segmentation par rapport au contexte de l’application.

Ces critères indiquent qu’à priori tous les algorithmes de classification n’ont pas le même avis sur

la classe à attribuer à certains pixels et qu’il est difficile par conséquent de classer certains d’entre

eux.

D’après les résultats présentés, nous constatons que la reconnaissance des noyaux de chaque type

cellulaire nucléé permettant d’établir la formule leucocytaire utile dans de nombreux examens

cliniques, marche correctement pour les cinq algorithmes de classification utilisés. En effet : pour

le premier type de cellule : « Basophile » (image 1 de la figure) dont on compte normalement de 0

à 1% dans le sang d’un adulte, on remarque que les trois algorithmes : « Kmeans », « FCM » et

« SOM » donnent des résultats très similairesavec un taux identique de précision égale à 63.49%.

Cependant, « kmeans » prend beaucoup moins de temps d’exécution que les deux autres, alors

qu’une légère diminution de précision est obtenue par « Forgy » et « Clara » avec 63.02% et 60%

respectivement et une exécution8 fois plus rapide que « Kmeans ». Néanmoins « Clara » commis

plus d’erreur de sur et sous segmentation.La meilleure valeur de segmentation obtenue dans toute

l’étude est obtenue dans le deuxième type cellulaire « Monocyte » (image 2 à 8 de la figure) qui

représente de 3 à 7% dans le sang, avec une performance de 89.81% obtenu par l’algorithme

« SOM » suivi de « FCM » 89.80% puis « Kmeans » 89.70% , « Kmeans » reste toujours le plus

rapide 14 fois par rapport à « FCM » et 20 fois que « SOM ». « Forgy » et « Clara » restent

également les plus rapides que « Kmeans » et ont tous deux un temps d’exécution très proche,

alors quel’inconvénient de « Clara » est la sur segmentation. De bons résultats ont également été

obtenus pour les cellules « Neutrophile » (image 9 à 23 de la figure) et qui sont présents à 60%

dans le sang : cette fois c’est l’algorithme « FCM » qui est le plus précis 81.89% en suite « SOM »

puis « Forgy », ce dernier est 14 fois plus rapide que « FCM » et 19 fois que « SOM ». Le plus bas

résultat dans cette étude est constaté sur les images « Eosinophile » qui représentent 3% des

composants cellulaire dans le sang, avec une précision de 37% seulement obtenue par

« Kmeans ». Le dernier type cellulaire s’agit des « Lymphocytes » qui représentent 25% à 33%des

autres composants, ont été bien segmentés par les deux algorithmes « Kmeans » et « Forgy » qui

ont obtenus des résultats très similaires alors que l’algorithme « FCM » est légèrement plus précis

78.90% mais avec un temps d’exécution largement plus lent.

Page 142: Faculté des sciences Département d'informatique Mémoire de ...

136

La classification non supervisée constitue l’un des outils les plus populaires de la fouille de

données. Son utilisation permet la découverte de groupes, de motifs, d’éléments structurels à

l’intérieur d’un jeu de données.

L’histoire de cette analyse remonte au temps d’Aristote qui a proposé les règles pour classifier le

monde animal, après c’était Buffon qui a proposé la même chose pour le monde végétal et

Mendeleïev pour les éléments chimiques. Par la suite la méthode a été utilisée dans divers

domaines tels que la biologie, la médecine, l’ingénierie. D’ailleurs, à l’appellation « classification

non supervisée » ou en Anglais « clustering » peut être substitué un ensemble d’autres termes

selon le contexte d’utilisation : apprentissage non supervisé (en reconnaissance de formes),

taxonomie (en science de la vie), typologie (en science humaine).

La problématique sous jacente consiste donc en le partitionnement de l’ensemble des objets du jeu

de données considéré en des groupes tels que les objets d’un même groupe sont relativement

similaires entre eux alors que ces objets sont relativement différents des objets des autres groupes.

Ainsi, l’idée est de mettre à jour la structure interne des données en révélant l’organisation des

objets par l’intermédiaire de groupes. L’analyse de ces groupes ou clusters permettra alors de

dériver un ensemble de connaissances sur le jeu de données.

Plusieurs algorithmes sont proposés pour la résolution du problème général de la classification. Ils

diffèrent par leur heuristique (hiérarchique, flou, partitionnement, basé sur les réseaux de neurones

ou basés sur la densité), les mesures de proximité qu’ils utilisent (euclidienne, corrélations…). Le

choix d’un algorithme approprié dépend fortement de l’application, la nature des données et les

ressources disponibles. Une analyse attentive des données aide à bien choisir le meilleur

algorithme.Il n’existe pas un algorithme qui peut répondre à toutes les demandes.

Lorsque la recherche sur le clustering des expressions des gènes a commencé, une opinion

commune était que la classification non supervisée été un domaine « fermé » de la recherche

statistiques dont peu d’innovation a été possible. Maintenant des centaines d’articles sur le

clustering de données d’expression des gènes ont été publiés démontrant encore et encore des

Page 143: Faculté des sciences Département d'informatique Mémoire de ...

137

améliorations significatives par rapport aux méthodes classiques. Pourtant, les méthodes

classiques (en particulier les méthodes hiérarchiques) restent dominantes dans les applications

biologiques, en dépit de lacunes réelles. La cause la plus probable est que les nouvelles méthodes

n’ont pas démontré suffisamment de valeur ajoutée à surmonter le statu qu’ontétabli les méthodes

pionnières. Le manque de benchmarking de façon significative altère la démonstration de

l’amélioration majeure. Cette situation est elle-même créée par la subjectivité de l’interprétation

des résultats de clustering. En effet, le clustering pour les données d’expressions des gènes ne tient

pas en soi mais est étroitement lié à l’interprétation biologique de ses résultats et l’utilisation

ultérieure de ces résultats.

L’objectif de ce projet était double : il fallait à la fois mettre des outils de clustering à la

disposition des utilisateurs et de réfléchir à des approches innovantes adaptées aux données

d’expression des gènes, plus particulièrement.

Nous avons pu implémenter des méthodes de clustering facilement exploitables que ce soit par

des biologistes ou des médecins. L’aspect modulaire de l’application a ouvert des perspectives

d’évolutivité puisqu’il est à présent simple d’ajouter une nouvelle méthode de classification non

supervisée ou supervisée, de visualisation ou de validation.

On a également fourni une réflexion sur l’adéquation des méthodes classiques de clustering à

l’analyse de profils d’expression de gènes que ce soit en terme de structure de données ou

d’heuristiques faites sur les relations existantes entre les données d’un cluster. Ceci donne des

bases de conceptions de nouveaux algorithmes ou d’utilisation alternatives d’approches déjà

connues.

Finalement, le clustering n’est que le point de départ pour des analyses plus poussées tels que

l’analyse des régulations des séquences et la recherche de motifs fréquents qui améliorent les

prédictions biologiques finales. Les modèles probabilistes relationnels et leurs variantes (tels que

les algorithmes de biclustering).

Page 144: Faculté des sciences Département d'informatique Mémoire de ...

138

[ADO 08] Adollah R, M. M. (2008). Blood Cell Image Segmentation: A Review. Springer BerlinHeidelberg , vol 21, pp 141-144.

[ALI 00] Alizadeh AA, E. M. (2000). Distinct types of Diffuse Large B Cell lymphoma identifiedby gene expressionprofiling. Nature, 403, 503-511.

[AND 99] Andreas Weingessel, E. D. (1999). An Examination of indexes for determining thenumber of clusters in Binary data sets. Internal publication platform of the research project"Adaptive Informations systems and management in Economics and Management science .

[ARM 02] Armstrong SA, S. J. (2002). MLL translocation specify a distinct gene expressionprofile that distinguishes a unique leukemia. . (30), 41-47.

[BEL 02] Bellaachia, A. P. (2002). E-CAST: a data mining algorithm for gene expression data .BIOKDD02 Workshop on data mining , p 49.

[BER 02] Berkhin P.(2002). Survey of clustering data mining techniques . Technical Report,Accrue Software.

[BEN 99] Ben Dor, S. R. (1999). Clustering gene expression patterns . journal of computationalbiology , vol6 no 3-4 pp281-297.

[BEZ 81] Bezdek.J.C (1981). Pattern recognition with fuzzy objective function algorithms. NewYork:Plenum .

[BOR 79] Borst H, A. W. (1979). Thresholding Method for Automatic Cell Image Segmentation.The Journal of Histochemistry and Cytochemistry , 27:180-187.

[BRE 81] Brenner J.F, L. J. (1981). Scene Segmentation in Automated Histopathology:Techniques evolved from cytology automation. Pattern Recognition , 13:3-16.

[BRO 99] Brown, P. O. (1999). Exploring the new world of the genome with DNA microarrays.Nat Genet , 21, 33-7.

[CAL 74] CalinskyR.B., Harabsz J. (1974). A dendrite method for cluster analysis.Communication in statistics , 1-27.

[CAN 06] Candillier, L. (2006). Contextualisation, visualisation et évaluation en apprentissagenon supervisé, phd thesis.

[CHA 04] Chabrier S, Rosemberger C et al. (2004). Evaluating the segmentation result of a gray-level image. European Signal Processing Conference (EUSIPCO) , 953-956.

[CHA 07] Chau, D. (2007). Evaluation de la segmentation d'image . Rapport final, Institut de laFroncophonie pour l'informatique.

Page 145: Faculté des sciences Département d'informatique Mémoire de ...

139

[CHE 00] Cheng, Y. e. (2000). Biclustering of expression data. proc. Int. conf. Intell. syst. Mol.Biol. , 8:93-103.

[CLE 04] Cleuziou, G. (December 2004). une méthode de classification non supervisée pourl'apprentissage de règles et la recherche d'information,phd thesis.

[COM 01] Comaniciu D, M. P. (2001). Cell Image Segmentation for Diagnostic Pathology.Springer .

[DAV 96] Dave N, Rajesh (1996). Fuzzy Shell Clustering and Application to circle Detection inDigital Images . Int.J. of General Systems, 16, 343-355.

[DAT 03] Datta S, Datta (2003). Comparisons and validation of statistical clusteringtechniques for microarray gene expression data . Bioinformatics2003, 19:459-466.

[DEM 77] Dempster, A. L. (1977). Maximum likelihood from incomplete data via the EMalgorithm . J.R Statist. Soc., , vol B39 NO.1, pp 1-38.

[DIR 00] Di Ruberto C, D. A. (2000). Segmentation of Blood Image using MorphologicalOperators. Proc, 15th International Conference On Pattern Recognition , 401-404.

[DJO 08] DJOUADI, L. ,. (2008). LES CHROMOSOMES : structure et principales anomalies enhématologie. Revue Algérienne d'hématologie http://www.hematologie-dz.com , pageEnseignement-7.

[DOP 97] Dopazo, J. a. (1997). Phylogenetic reconstruction using an unsupervised neural networkthat adopts the topology of a phylogenetic tree. J. Mol. Eval , Vol 44 pp 226-233.

[DRA 03] Draghici S. (2003). Data Analysis Tools for DNA Microarrays. First Edition;Champman & HallBoca Raton .

[EIS 98] Eisen, M. P. (1998). Cluster analysis and display of genome-wide expression patterns .proc. of National Academy of Siences USA , 14863-14868.

[FOR 65] Forgy, E. (1965). Cluster analysis of multivariate data: efficiency vs interpretability ofclassifications. . Biometrics, 21, 768-769.

[GAS 02] Gasch, A. e. (2002). Exploring the conditional coregulation of yeast gene expressionthrough fuzzy k-means clustering. Genome Biol., 3:RESEARCH0059- .

[GHO 10a] Ghosh M, D. D. (2010a). Automated Leukocyte Recognition using Fuzzy divergence.Micron , 41(7),840-846.

[GOL 99] Golub TR, S. D. (1999). Molecular Classification of cancer: class discovery and classprediction by gene expression monitoring. Science, 286(5439), 5531-537.

[GUE 05] Guérin, E. (2005). Intégration De Données pour l'analyse de transcriptome: mise enoeuvre par l'entrepot GEDAW. phd thesis .

Page 146: Faculté des sciences Département d'informatique Mémoire de ...

140

[HAR 79] Hartigan.J.A and Wong, M. (1979). A kmean clustering algorithms. applied Statistics,28, 100-108.

[HAR 99] Hartuv, E. S.-E. (1999). An algorithm for clustering cdnas for gene expression analysisusing short oligonucleotide fingerprints. in proceding of 3rd international symposium oncomp.Mol.Biology , pp 188-197 ACM PRESS.

[HAU 84] Haussmann G, L. C. (1984). A Region Extraction Approach to Blood SmearSegmentation. Computer Vision, Graphics and Image Processing. , 25:133-150.

[HER 01] Herrero, J. V. (2001). A hierarchical unsupervised growing neural network forclustering gene expression patterns. Bioinformatics , Vol 17, pp 126-136.

[HEY 99] Heyer, L. J. (1999). Exploring expression data: Introduction and analysis ofcoexpressed genes. Genome Research , 1106-1115.

[HUB 76] Hubert L. J. (1976). A general statistical framework for assesing categorical clusteringin free recall. Psychological Bulletin , 1072-1080.

[JAN 88] Jain,A.K and Dubes, R.C.(1988). Algorithms for clustering data. Prentice Hall,Englewood Cliffs,NJ.

[JIA 03] Jiang K, Q. M. (2003). Red Blood Cell Segmentation Scheme utilizing various ImageSegmentation Techniques. 2nd International Conference on Machine Learning and Cybernetics .

[KAS 87] Kass M, W. A. (1987). Snakes: Active Contour Models. 1st International ConferenceOn Computer Vision , pp. 259-268.

[KHA 11] Khatir N, Nait Bahloul S. (2011). Blood Cell Images Recognition using ClusteringAlgorithms: A Survey. Colloque D'Informatique Automatique et Electronique,24 et 25 Mars,Casablanca-Maroc.

[KHA 11p] Khatir N, Nait Bahloul S. (2011). Blood Cell Images Recognition using ClusteringAlgorithms: A Survey (poster). Colloque sur l'optimisation et les systèmes d'information,COSI'2011,24-28 Avril 2011,Guelma, Algérie.

[KHA 12] Khatir N, Nait Bahloul S. (2012). HematopoieticCells Images Recognition usingClustering Algorithms: ASurvey.SETIT 2012, 221-24 Mars, Sousse-Tunisie

[KUM 02] Kumar B.R, J. D. (2002). Energy based Blood Cell Segmentation . 14th InternationalConference on Digital Signal Processing, India .

[LEE 92] Lee, F. L. (1992). Fuzzy Competitive Learning. Neural Networks, 7(3), 539-551.

[LIA 02] Liao Q, D. Y. (2002). An Accurate Segmentation Method for White Blood Cell Images.International Symposium on Biomedical Imaging , pp 245-258.

[LLO 82] Lloyd, S. (1957-1982). Least squares quantization in PCM. IEEE Transactions onInformation theory, 28, 128-137.

[LOC 00] Lockhart, w. a. (2000). Genomics, gene expression and DNA arrays. Nature , 405,827-36.

Page 147: Faculté des sciences Département d'informatique Mémoire de ...

141

[MAC67] MacQueen, J. (1967). Some methods for classification and analysis of multivariateobservations. (u. o. press, Éd.) proceeding of the Fifth Berkely Symposium on mathematicalStatistics and probability , 281-297.

[MAR 08] Marcilio Carlos Pereira de Souto, I. G. (2008). Clustering cancer gene expression data:a comparative study. BMC Bioinformatic .

[MAR 96] Martin Ester, H.-P. K. (1996). A Density Based Algorithm for Discovering Clusters inLarge Spatial Databases with Noise. Proceedings of 2 nd International Conference of knowledgeSiscovery and Data Mining .

[MEH 97] Mehnert A, J. P. (1997). An Improved Seeded Region Growing Algorithm. PatternRecognition Letters , 18(10), 1065-1071.

[MOL 02] Moloshok, T. K. (2002). Application of Bayesian decomposition for analysingmicroarray data. . Bioinformattics , 18:566-575.

[MUR 85] Murtagh, F. (1985). Multidimensional clustering algorithms. (C. L. physica-verlag,Éd.)

[ONG 01] Ongun G, H. U. (2001). Automated Contour Detection in Blood Cell Images by anEfficient Snake Algorithm. Springer , Vol. 47.

[OUA 06] OUADFEL S. (2006). Contributions à la Segmentation d’images basées sur larésolution collective par colonies de fourmis artificielles. Université Hadj Lakhdar de Batna:Thèse de Doctorat en Informatique.

[PHI 01] Philipp-Foliguet S. (Mars 2001). Evaluation de la segmentation. Technical Report,ETIS

[REY 04] Reymond, N. (2004). Bioinformatique des puces à ADN et application à l'analyse dutranscriptome de Buchnera aphidicola. phd thesis .

[ROU 90] Rousseeuw, K. (1990). Finding groups in data: an introduction to cluster analysis wiley,New York.

[ROU 87] Rousseeuw., P. (1987.). Silhouettes: A graphical aid to the interpretation and validationof cluster analysis. Journal of Computational and Applied Mathematics. , 53-65.

[RUB 02] Ruberto C.D, D. A. (2002). Analysis of Blood Cell Images using MorphologicalOperators. Image and Vision Computing , vol 20(2), 133-146.

[SHA 00] Sharan R, Shamir R (2000). CLICK: a clustering algorithm with applications to geneexpression analysis . 8th International conference on Intelligent System for Mol.Bio , AAAIPRESS.

[SHE 05] Sheng Q., Moreau Y et al (2005). Advances in cluster analysis of microarray data. (A.F. J, Éd.) Data analysis and visualization in genomics and proteomics, chapiter 10, 153-173.

[SHI 02] Shipp MA, Ross KN et al (2002). Diffuse Large B- Cell Lymphoma outcome predictionby gene expression profiling and supervised machine learning. (N. Med, Éd.) 8, 68-74.

Page 148: Faculté des sciences Département d'informatique Mémoire de ...

142

[SIN 03] Sinha N, R. A. (2003). Automation of Differential Blood Count. Conference onConvergent Technologies for Asia Pacific Region , pp. 547-551.

[SOU 75] Southern, E. (1975). Detection of specific sequences among DNA fragments separatedby gelelectrophoresis. journal of molecular biol 98 , 503-17.

[SOU 08] SoutoM.CP., I. (2008). Clustering Cancer Gene Expression Data: A ComparativeStudy. BMC Bioinformatic 9 , 497-520.

[TAM 99] Tamayo, P. S. (1999). Interpreting patterns of gene expression with self organizingmaps: methods and application to hematopoietic differentiation . in proceeding of NationalAcademy of Sciences USA , vol 96, NO.6,pp 2907-2912.

[TAV 99] Tavazoie S, H. J. (1999). Systematic determination of genetic network architecture. NatGenet , 22: 281-85.

[THE 06] Theresa Scharl and Friedrich, L. (2006). The stochastic QT-clust algorithm: evaluationof stability and variance on time course microarray data. (I. A. Vichi, Ed.) 1015-1022.

[TOM 02] Tomida, S. H. (2002). Analysis of expression profile using fuzzy adaptive resonancetheory. Bioinformatics , Vol.18, NO. 8, pp.1073-1083.

[TRA 09] Travis, J. a. (2009). Clustering of gene expression data based on shape similarity,.EURASIP JOURNAL on Bioinformatics and Systems Biology , vol 2009, no 195712, doi:10.1155/2009/195712.

[WER 84] Wermser D, H. G. (1984). Segmentation of Blood Smears by HierarchicalThresholding. Computer Vision, Graphics and Image Processing , 25:151-168.

[WIE 70] Wied, G. e. (1970). Automated Cell Identification and Cell Sorting. Academic PressNew York and London .

[WU 06] Wu J, Z. P. (2006). A Novel Color Image Segmentation Method and its Application toWhite Blood Cell Image Analysis. Signal Processing, 2006 8th International Conference , Vol 2.

[YEO 02] Yeoh EJ, R. M. (2002). Classification, subtype discovery, and prediction of outcome inpediatric acute lymphoblastic leukemia by gene expression profiling. cancer cell, 1(2), 133-143.

[ZHA 96] Zhang YJ. (1996). A survey on evaluation methods for image segmentation. PatternRecognition , 29(8):1335-1346.