Vous êtes sur la page 1sur 41

1.

CHAPITRE :

LE DATAMINING
1.1 Introduction

Avec l’évolution actuelle de la technologie, nous devenons de plus en plus submergés par de
grandes quantités de données quel que soit le domaine impliqué : scientifique, médical,
financier…. Ces données contiennent une grande quantité d’informations cachées et
potentiellement importantes.
En effet, le mot data mining ou fouille de données est une branche de l’intelligence artificielle
qui regroupe l’ensemble des techniques permettant l’extraction d’informations [1][2]. Ces
techniques reposent essentiellement sur l’utilisation de plusieurs algorithmes qui effectuent un
apprentissage automatique ou semi-automatique sur la base d’un ensemble de données.
L’utilisation opérationnelle de ces informations permet de faciliter la résolution de problèmes
divers. En effet, les domaines d’application de la fouille de données sont nombreux, surtout
dans les pays développés. Mais ses nombreuses possibilités restent encore sous-exploitées à
Madagascar, à cause, notamment du manque de moyens convenables (numérisation des
données, utilisation de matériels informatiques etc.…). Citons quand même quelques
applications potentielles de fouille de données à Madagascar :
- EDM ou Educational Data Mining [3]: C’est une branche de la fouille de données consacrée
uniquement à l’éducation. Avec l’adoption du système LMD à Madagascar et la numérisation
des données éducationnelles, les possibilités de la fouille de données permettent
d’appréhender quelques applications spécifiques comme la prédiction des performances
académiques des étudiants [4], ou la détection de fraudes et des anomalies [5].

- Medical data mining[5] : Depuis le tout début, les techniques de fouille de données ont
surtout été utilisées dans le domaine médical. Le cas le plus fréquent d’utilisation de la fouille
de données en médecine est l’automatisation du processus de diagnostic [6]. Les
connaissances extraites sont utilisées pour assister le médecin dans le diagnostic de nouveaux
patients dans le but d’améliorer la rapidité, la précision et la fiabilité de ses diagnostics. Avec
les nombreuses épidémies qui frappent la population malagasy, un diagnostic précis, rapide et
fiable peut s’avérer indispensable pour y faire face.
- La fouille de données est aussi utilisée en télédétection, en reconnaissance des formes ou
encore en analyse d’images satellites [5].

1.2 Quelques définitions [3] [2] []

Le data mining est l’analyse de grandes quantités de données afin de découvrir des formes et
des règles significatives en utilisant des moyens automatiques ou semi-automatiques basés sur
l’analyse statistique et l’apprentissage automatique.
Extraction d’informations intéressantes (non triviales, implicites, préalablement inconnues e
potentiellement utiles) à partir de grandes bases de données. C’est analyser les données pour
trouver des patrons cachés en utilisant des moyens automatiques.
Data Mining se considère comme un processus le plus automatique possible, qui par de
données élémentaires disponibles dans un Data Warehouse à la décision.
L’objectif principale de Data Mining c’est de créer un processus automatique qui a comme
point de départ les données y comme finalité l’aide à la prise des décisions.

La fouille de données est une étape du processus d’Extraction de Connaissances à partir des
Données. Son but est de rechercher des motifs reliant les données entre elles, sachant qu’ils
doivent être intéressants, et, pour cela, nouveaux, utiles et non triviaux [Frawley 92]. L’image
régulièrement utilisée est celle de la montagne au sein de laquelle sont enfouies des pépites.
La fouille de données consiste donc à les extraire malgré l’immensité de la montagne. Une
anecdote, connue dans le monde de la fouille de données, serait à l’origine de la réussite de la
chaîne de grande distribution Walmart. En exploitant les données issues des achats des clients,
un lien a été détecté entre la vente en soirée des packs de bière et celle des couches culottes. Il
s’expliquait par les pères de famille qui venaient acheter simultanément la bière et les
couches.
Après cette constatation, les rayonnages de bière et de couches ont été rapprochés, et cela a
entraîné un impact sensible sur le chiffre d’affaire.
Initialement, deux communautés abordaient la fouille de données de manière différente.
D’une part se trouvaient les partisans de la visualisation d’information, dont l’objectif était de
donner à l’utilisateur une vue générale des données, tout en permettant une vue détaillée.
D’autre part, les défenseurs de l’approche algorithmique arguaient de la suffisance des
méthodes statistiques et d’apprentissage pour trouver des motifs intéressants. Aujourd’hui,
même si ces deux philosophies existent toujours, une troisième approche a vu le jour par la
recherche de motifs en combinant l’approche visuelle et l’approche algorithmique.
Shneiderman [Shneiderman 01] a abordé cette question en mettant en regard ces approches,
dans la lignée de Tukey [Tukey 65] et Westphal & Blaxton [Westphal 98]. Il en a déduit
quatre recommandations pour l’élaboration de futurs systèmes de recherche de connaissance :
• Intégrer la Data Mining et la visualisation d’informations pour élaborer de nouveaux outils.
En ajoutant la visualisation au processus de Data Mining, l’utilisateur développe une
meilleure compréhension de ses données. Réciproquement, en ajoutant le Data Mining à la
visualisation, l’utilisateur peut spécifier ce qu’il recherche ;
• Permettre à l’utilisateur de spécifier ce qu’il cherche et ce qu’il estime intéressant. En lui
permettant de contraindre et de diriger ses outils, ils peuvent être plus efficients ;
• Reconnaître que l’utilisateur est situé dans un contexte social. Il ne travaille pas seul et a
donc besoin d’échanger des données et de les présenter ;
• Respecter la responsabilité de l’homme dans la conception des futurs outils. S’ils sont bien
conçus, il parviendra à les utiliser et sera d’autant plus performant.
Cette fouille de donnée est réalisée de manière automatique, de manière manuelle, ou par une
combinaison de ces deux approches.

Figure 1 – Etendue pluridisciplinaire du Visual Analytics [Keim 08b].


1.3 Le processus d’Extraction de Données à partir des Connaissances [2]

La donnée peut constituer une connaissance en tant que telle, mais peut également être traitée
pour extraire de la connaissance. Jean-Paul Benzécri [Benzécri 77] écrivait en 1977 que
l’analyse des données avait pour objectif de dégager de la gangue des données le pur diamant
de la véridique nature. Plus tard, Witten et al. [Witten 11] ont défini la fouille de données
comme l’extraction d’informations implicites, inconnues et utiles à partir des données. Cela a
donné lieu à l’émergence d’une nouvelle discipline dans les années 80 appelée Knowledge
Discovery in Databases (KDD) ou Extraction de Connaissances à partir des Données (ECD)
[Piatetsky-Shapiro 91b, Fayyad 96a]. Gregory Piatetsky-Shapiro 2 est un pionnier dans ce
domaine. Fondateur des conférences KDD3, il a organisé le premier workshop Knowledge
Discovery in Databases en 1989. Depuis, nombre de travaux et de publications alimentent
cette communauté et en enrichissent les techniques.
La définition de l’extraction de connaissances à partir des données a été donnée en 1996 par
Fayyad et al: « KDD is the nontrivial process of identifying valid, novel, potentially useful,
and ultimately understandable patterns in data [Fayyad 96b]. » L’ECD est un domaine distinct
de l’apprentissage automatique (Machine Learning), car ce dernier met l’accent sur
l’induction de modèles pour la prédiction, par exemple pour reproduire une tâche humaine ou
pour adapter un comportement en fonction de résultats de calculs. L’extraction de données
combine des techniques issues de disciplines variées, comme les bases de données,
l’intelligence artificielle, les statistiques, les découvertes scientifiques et la visualisation
[Williams 96]. Elle est donc à l’intersection de ces disciplines et va puiser dans chacune
d’elles. Une de ses caractéristiques est la taille des bases de données qu’elle traite, qui
atteindra le yotta octet avec la mise en service du Utah Data Center de la N.S.A. [Herbert 12].
Figure 2 – L’extraction de connaissances à partir de données est à l’intersection de plusieurs
disciplines.

L’extraction de connaissances à partir de données est un processus interactif et itératif,


contenant plusieurs niveaux de décisions de la part de l’utilisateur [Fayyad 96a]. Il est
constitué des neuf étapes suivantes [Fayyad 96a, Clos 07] (Figure 1.2) :
1. Développer une compréhension du domaine d’application et identifier le but du processus
ECD du point de vue de l’utilisateur ;
2. Sélectionner un jeu de données sur lequel l’extraction va être réalisée ;
3. Nettoyer et prétraiter les données. Cela concerne par exemple l’extraction du bruit et la
mise en œuvre de stratégies dans le cas de données manquantes ;
4. Réduire et projeter les données, en identifiant des caractéristiques pour les représenter en
fonction du but de la tâche. Le nombre de variables peut ainsi être fortement diminué ;
5. Faire correspondre les buts de l’extraction avec une méthode de fouille de données
particulière, comme la classification, le regroupement (clustering) ;
6. Analyser de manière exploratoire et choisir l’algorithme de fouille de données et de la
méthode de sélection ;
7. Réaliser la fouille de données. Il s’agit de rechercher des motifs intéressants ;
8. Interpréter les motifs trouvés. Cette étape comprend également la visualisation des motifs;
9. Valoriser la connaissance acquise, en l’utilisant directement, ou en l’intégrant dans un autre
système pour un futur processus.
Ce processus est itératif, de manière globale ou entre différentes étapes, comme indiqué sur la
figure 3.
La notion de fouille de données ou Data Mining varie selon la littérature. La définition de ce
concept peut aller de l’extraction de motifs jusqu’au processus global d’Extraction de
Connaissances à partir des Données. Dans ce mémoire, nous considérons qu’il ne porte que
sur l’extraction de motifs.

Figure 3 – Les neuf étapes de l’Extraction de Connaissances à partir de Données


[Fayyad 96a].
1.4 Les types de data mining [2]

On distingue 2 types de fouille de données : l’apprentissage supervisé et l’apprentissage non


supervisé. L’apprentissage supervisé concerne essentiellement les techniques de
classification et de régression tandis que l’apprentissage non supervisé concerne les
techniques de partitionnement (ou clustering en anglais).

L’apprentissage supervisé consiste à élaborer un apprentissage automatique à partir d’un


ensemble de données de référence appartenant à des classes déterminées. Pour cela, les
attributs de chaque donnée sont analysés et servent à établir une description des classes. A
partir de cette description, il devient possible de trouver la classe d’appartenance de toute
autre donnée. Ce type d’apprentissage concerne par exemple les arbres de décision et les
réseaux de neurones. Les premiers présentent une situation sous la forme d’un arbre dont les
nœuds correspondent à des résultats de décisions. Les seconds s’inspirent du comportement
des neurones lors de la transmission d’informations entre eux, chaque neurone étant connecté
à plusieurs autres en amont et en aval. La transmission ou non de l’information résultante
d’un neurone vers les suivants dépend d’une fonction d’activation.
L’apprentissage non supervisé, les classes ne sont pas connues d’avance et les informations
sont extraites directement des données. Parmi les méthodes usuelles, se trouvent le clustering
et la recherche de motifs fréquents. Le clustering consiste à partitionner les données, et à les
regrouper en classes, à partir de critères d’homogénéité qui permettent de définir une distance.
Grâce à celle-ci, des groupes de données sont établis, en minimisant les distances intra-
groupes et en maximisant les distances inter-groupes. Les motifs fréquents ou itemsets
caractérisent des associations entre des attributs de données.
1.4.1 Clustering (Segmentation) [3]

Soient N instances de données à n attributs,

O Trouver un partitionnement en k clusters (groupes) ayant un sens (Similitude)

O Affectation automatique de “labels” aux clusters

O k peut être donné, ou “découvert”

O Plus difficile que la classification car les classes ne sont pas connues à l’avance (non
supervisé)

O Attributs
O Numériques (distance bien définie)
O Enumératifs ou mixtes (distance difficile à définir)

1.4.1.1 Qualité d’un clustering


Une bonne méthode de clustering produira des clusters d’excellente qualité avec : la similarité
importante intra-classe et la similarité faible inter – classe.
La qualité d’un clustering dépend de la mesure de similarité utilisée, de l’implémentation de
la mesure de similarité
La qualité d’une méthode de clustering est évaluée par son habilité à découvrir certains ou
tous les “patterns” cachés

1.4.1.2 Objectif du clustering


L’objectif du clustering est de minimiser les distances intra-cluster et de maximiser les distances
inter-clusters.
Figure 4 – Les objectifs de clustering

1.4.1.3 Exemple d’application


Marketing : segmentation du marché en découvrant des groupes de clients distincts à partir
de bases de données d’achats.

Environnement : identification des zones terrestres similaires (en termes d’utilisation) dans
une base de données d’observation de la terre.

Assurance: identification de groupes d’assurés distincts associés à un nombre important de


déclarations.

Planification de villes: identification de groupes d’habitations suivant le type d’habitation,


valeur, localisation géographique, …

Médecine: Localisation de tumeurs dans le cerveau


Nuage de points du cerveau fournis par le neurologue

Identification des points définissant une tumeur

1.4.1.4 Méthodes de Clustering


Clustering présente quelques méthodes, dont les suivants :
 Méthode de partitionnement(K-Means)
 Méthodes hiérarchiques (par agglomération)
 Méthode des voisinages denses
Une des méthodes le plus utilisé en clustering est la méthode K-means
K-Means est une méthode clustering

Concepts basiques de K-Means


O techniquement, nous voulons maximiser la variation inter-cluster et minimiser la variation
intra-cluster

Exemple:

Nous avons des données des âges et revenus pour un groupe de consommateurs.

La question? Existe-ils des groupes de consommateurs avec des caractéristiques similaires dans
cette base de données?

Dans cet exemple simple avec deux variables nous pouvons représenter graphiquement les
données
Combien de groupes?

Figure 5 – Représentation graphique des données

Distance
O « Observations similaires »

O « des observations que son proches »

O Ça veut dire quoi proche?


O Nous avons besoin du concept de la distance pour pouvoir parler de proche et loin
Figure 6 –

Figure 7 –

Distance
O Nous pouvons utiliser la mesure que nous avons apprise en primaire (théorème de Pythagore)

O Techniquement connue comme distance euclidienne.


O La distance entre le point X1(2,2) et le point x2(6,8) égale à

D(x1, x2) = [(6-2)² + (8-2)²]0.5 = 7.21


En général, la distance euclidienne est définie pour deux vecteurs de p dimensions (variables)

Pour les variables continues on va utiliser cette distance (existe d’autres distances)
L’algorithme K-Means
Cette méthode suppose que nous connaissons le numéro de groupes(clusters). Donc la
méthode trouve la « meilleure » affectation de points aux différents groupes (clusters), « la
meilleure » dans le sens de maximiser la distance inter-clusters et minimiser la distance intra-
cluster
O Décider le numéro (#) de clusters. Notons k à ce numéro

O Une méthode possible d’initialisation: prendre K observations aléatoirement des données.


Ces observations se deviennent les K centres initiaux c1, c2, …, ck.

O Pour chaque N-K observations restantes, calculons les distances entre l’observation
correspondante et chacun des centres

O Chaque observation est alors affectée au centre le plus proche

O À la fin de l’affectation des observations nous aurons K groupes d’observations.

O Pour chacun de ces groupes, nous calculons les nouveaux centres. Le centre est un vecteur
des moyennes pour toutes les variables utilisées par les observations au sein de chaque
groupe.
Exemple : K-means clustering

Figure 8 –
Exemple

Figure 9 – Exemple

K-means, comme n’importe quel algorithme qui se calcule à base des distances, peut être affecté
par les unités de mesure des variables
Les variables mesurées en grandes unités dominent la construction des clusters
Recommandation: Standardiser les variables avant de commencer la recherche des clusters.
Avantages de K-Means
O Rapidité, peut être appliqué à des bases données relativement grandes

O Economique de point de vue stockage de données (stoker les K centres)


Inconvénients K-means
O Suppose la connaissance de K (en réalité jamais connu)

O Sensible à la présence des observations extrêmes

1.4.2 Classification data mining : méthodes prédictives

Le modèle est construit à partir d’un ensemble de données, appelé base d’apprentissage.
Chaque élément X de la base d’apprentissage est constitué par un vecteur de dimension n, X =
(x1, x2, …, xn), qui représente les n valeurs de X correspondant à n attributs. Chaque élément
appartient à une classe prédéfinie déterminée par un attribut appelé attribut cible. Les valeurs
de l’attribut cible sont discrètes et non-ordonnées. Dans le cas où la valeur de l’attribut cible
est continue (numérique), on parle alors de régression.

La classification consiste donc à déterminer la classe d’un nouvel objet dont la valeur de
l’attribut cible est inconnue. La classification se fait en 2 étapes. La première étape consiste à
construire un modèle de classification à partir de la base d’apprentissage. C’est la phase
d’apprentissage. Cette première étape de la classification peut être assimilée à la
détermination d’une fonction f tel que y = f (X) où y est la valeur de l’attribut cible et X un
élément de la base. Dans la deuxième étape, le modèle obtenu est évalué sur un ensemble de
données appelé ensemble test. C’est la phase de test. Puisque la classe de chaque élément de
la base est fournie à l’avance, on parle d’apprentissage supervisé.

1.4.2.1 Arbre de décision : méthode de classification


Il existe un certain nombre d’approches pour l’apprentissage de l’arbre de décision.
Les plus populaires sont ID3 (utilisé par Fuhr [Fuhr et al. (1991)]), C4.5 (Cohen et Singer
[Cohen & Singer (1999)], Joachims [Joachims (1998)]) et C5 (utilisé par Li et Jain [Li & Jain
(1998)]).
Une méthode pour effectuer l’apprentissage d’un arbre de décision pour la catégorie ci
consiste à vérifier si tous les exemples d’apprentissage ont la même étiquette (ci ou _ci), dans
le cas contraire nous sélectionnons un terme tk, et nous partitionnons l’ensemble
d’apprentissage en classes de documents qui ont la même valeur pour tk, et à la fin l’on crée
les sous-arbres pour chacune de ces classes. Ce processus est répété récursivement sur les
sous-arbres jusqu’à ce que chaque feuille de l’arbre généré de cette façon contienne des
exemples d’apprentissage attribués à la même catégorie ci, qui est alors choisie comme
l’étiquette de la feuille. L’étape le plus important est le choix du terme de tk pour effectuer la
partition. Toutefois, une telle méthode de construction d’arbre peut faire l’objet de
surapprentissage, comme certaines branches peuvent être trop spécifiques pour les données
d’apprentissage. La plupart des méthodes d’apprentissage des arbres incluent une méthode
pour la construction d’arbre et pour élaguer les branches trop spécifiques [Mitchell (1996)].

Figure 10 – Exemple d’un arbre de décision


L’algorithme d’apprentissage cherche à produire des groupes d’individus les plus homogènes
possible du point de vue de la variable à prédire à partir des variables de météo.
Figure 11 – Processus de classification : prédiction

Quelles sont les variables à utiliser et dans quel ordre? Quel critère utilisé pour sélectionner la
« meilleure » division? Les mesures d'impureté suivantes seront utilisées: l’erreur de
classification, l’indice de GINI et l’entropie, pour cela se définie la probabilité: p(j/t) =la
probabilité d’appartenance à la classe « j » étant dans le Nœuds t. Souvent notée par pj
Question #2: l’erreur de classification, l’indice de Gini et l’entropie seront utilisés

O Erreur de classification:
Error(t) = 1 – max[p(j\t)]
O Indice de Gini

O Entropie:
Figure 12 –

1.4.2.2 Réseaux de Neurones : méthode de classification

Les réseaux de neurones sont des puissants algorithmes d'apprentissage automatique qui
utilisent des fonctions de cartographie complexe, non linéaire pour l'estimation et
classification. Ils sont constitués de neurones organisés en couches. La couche d'entrée
contient les prédicteurs ou neurones d’entrée. La couche de sortie comprend dans le champ
cible. Ces modèles permettent d'estimer des poids qui relient les prédicteurs (de la
couche d'entrée à la sortie).
Figure 13 –

La sortie Y est 1 si au moins 2 de 3 entrés sont égales à 1

Figure 14 –

Un réseau de neurones est composé de plusieurs neurones interconnectés. Un poids est


associé à chaque arc. A chaque neurone on associe une valeur.

Le Nœuds de sortie est la somme pondérée des valeurs de sorties des neurones

Comparer le nœud de sortie avec un seuil t


Figure 15 –

- Structure d’un réseau de neurone

Figure 16 –

- Algorithme d’apprentissage

O Initialiser les poids (w1, w2, …, wk)

O Ajuster les poids de sorte que la sortie du réseau de neurones soit en accord avec les
étiquettes des classes d’entrainement.

O Fonction objective:
O Trouver les poids w’i qui minimise la fonction objective antérieure (erreur quadratique)

O Un critère d'arrêt doit être défini

O Exemple: Backpropagation
Conclusion

Dans ce chapitre, nous avons pu voir les notions de base de Datamining, les processus
d’extraction de connaissances, les types de datamining ainsi que la présentation des différents
algorithmes.

Après la présentation de ces différents algorithmes de datamining, nous pouvons dire qu'il est

nécessaire de distinguer les deux types de fouille de données nommé « apprentissage

supervisé » et « apprentissage non supervisé ». En effet, chacun d'eux a ses particularités et

n'auront pas les mêmes applications.

Références Bibliographiques
[1] Jiawei Han, Michelin Kamber, 2006, “Data Mining Concepts and Techniques”, Morgan
Kaufmann publishers,
[2]Daniel T. larose, 2005, “Discovering Knowledge in data: An introduction to data mining”,
John Wiley & sons,
[3] Cristobal Romero, Sebastien Ventura, 2013, “Data mining in education”, WIREs Data Mining
and Knowledge Discovery,
[4] Sajadin Sembiring, 2011, “prediction of student academic performance by an application of
data mining techniques”, international conference on management and artificial intelligence
[5] Hillol Kargupta, 2009, “Next generation of data mining”, Chapman & Hall /CRC, Data
mining and Knowledge discoveries series,
[6] D.Senthil Kumar, G.Sathyadevi and S.Sivanesh, mai 2011, “Decision support system for
medical diagnosis using data mining”, IJCSI International Journal of Computer Science Issues,
Vol. 8, Issue 3, No. 1,

Jean-Michel Franco, Le Data Warehouse, le Data Mining, Eyrolles, 1996 Michael J.A. Berry et
Gordon S. Linoff, Data Mining:Techniques appliquées au marketing, à la vente et aux services
clients, Masson, 1997 René Lefébure et Gilles Venturi, Le data mining, Eyrolles, 1998 Pierre
Lévine et Jean-Charles Pomerol, Systèmes interactifs d’aide à la décision et systèmes experts,
Hermès, 1990 Jean-Charles Pomerol, Les systèmes experts, Hermès, 1988 Olivier Cérutti et
Bruno Gattino, Indicateurs et tableaux de bord, Afnor, 1993 Hervé Sérieyx, Le big bang des
organisations, Editions Calmann-Lévy, 1993
2. CHAPITRE :

LE clustering

2.1 Introduction
Nous verrons dans ce chapitre les notions de clustering. Dans certains cas, il faut savoir qu’on
peut être amené à analyser un grand nombre d’objets ou d’individus qu’on cherche à répartir
en catégories de façon non supervisée. Grâce aux méthodes de clustering, on peut mettre en
évidence des familles d’individus homogènes selon un critère donné. Les possibilités
d’applications sont nombreuses. Par exemple, on peut s’en servir dans l’analyse de bases de
données marketing, pour trouver des groupes de clients aux comportements similaires et
auxquels on pourra adresser des campagnes commerciales personnalisées. Autre exemple :
une de nos missions nous a mené chez un grand industriel, où nous réalisons un clustering des
pièces mécaniques produites en fonction de leurs caractéristiques de production, de façon à
identifier des sources de variation et de défaillance dans le processus de production.
2.2 Généralité sur le clustering
2.2.1 Définition
La segmentation, de l'anglais « clustering », consiste à séparer un large ensemble de données
en plusieurs sous-ensembles nommés clusters. Les éléments contenus dans un cluster sont
similaires entre eux et différents des éléments des autres clusters [30, 31].
L'objectif de la segmentation est de trouver des structures inhérentes aux données et de les
présenter sous forme d'un ensemble de clusters [32]. Les applications typiques de la
segmentation sont comme outil d'exploration interne des distributions de données, ou comme
étape de prétraitement pour les autres algorithmes. Recourir à la détection des clusters quand
les regroupements naturels peuvent représenter des groupes de clients, de produits, ont
beaucoup en commun. En effet, lors de la présence de plusieurs schémas en compétition au
sein des données il est difficile d'extraire un schéma particulier, c'est pourquoi la création de
clusters peut réduire la complexité en organisant les données en clusters. Les techniques de
segmentation se séparent en deux catégories : le partitionnement et la répartition hiérarchique
[30, 31]. Les méthodes hiérarchiques construisent une hiérarchie de clusters et une unique
partition d'objets. Dans ces techniques, le nombre de clusters n'est pas requis et une matrice de
distance est généralement utilisée comme critère de segmentation. De même, ces méthodes
sont souvent caractérisées comme des approches de segmentation de meilleure qualité.
Cependant, la complexité de la répartition hiérarchique est en général au moins O(n2), cela
rend ces techniques trop lentes pour les grands ensembles de données. Au contraire, la
complexité algorithmique des techniques de partitionnement est la plupart du temps linéaire.
Celles-ci divisent les données en groupes qui ne se chevauchent pas pour maximiser le temps
de traitement.
Afin de déterminer quelles sont les données avec le plus de similarité, une fonction de
distance est généralement utilisée pour calculer la différence entre chaque instance [19].
Il existe plusieurs façons de définir cette fonction de distance, souvent désignée par « mesure
de similarité ». La plupart des techniques de segmentation utilisent la distance euclidienne
comme mesure de similarité. La distance entre deux instances a et b avec k attributs est
définie comme la somme de la différence au carré de chacun de leurs attributs, exprimé par la
formule suivante :
kd(a,b) =

Où at et bt (i = l,n) sont respectivement des attributs des instances a et b. La racine carrée


n'est généralement pas effectuée en pratique, car on peut comparer directement les distances
au carré. Une alternative à la distance euclidienne est la distance de Manhattan, avec celle-ci
la distance entre les attributs est simplement additionnée sans les mettre au carré, à la place on
prend juste leurs valeurs absolues. Une autre mesure est la distance de Minkowski, au lieu de
prendre le carré comme puissance on utilise un paramètre variable. Plus haute est la puissance
choisie plus les grandes différences vont être amplifié par rapport aux petites différences.
Généralement la distance euclidienne représente un bon compromis entre les deux autres. Un
autre détail important dans l'utilisation de ces distances est de les normaliser entre 0 et 1. En
effet, les différents attributs peuvent avoir plus d'influences que d'autres selon leur échelle. En
conséquence, on normalise les attributs en retranchant à la valeur actuelle vt d'un attribut la
valeur minimale de toutes les instances, puis en divisant par la valeur maximale moins la
valeur minimale. On peut résumer ainsi ce calcul :
^min^
a = : (2)
max vt — min vt

Cette formule suppose que les attributs sont de types numériques. Si un attribut est de type
nominal, la différence entre deux valeurs identique sera 0. Si les valeurs ne sont pas égales
alors la distance sera maximale, c'est-à-dire 1.
Tout ceci a pour objectif d'obtenir une bonne segmentation, la qualité des clusters sera
d'autant plus importante avec une similarité intra-classe élevée et une similarité interclasse
faible. La mesure de similarité est l'un des principaux facteurs de la qualité des clusters, elle
dépend de la distance utilisée et de son implémentation. Une méthode de segmentation est
évaluée par son habileté à découvrir certains ou tous les schémas cachés dans les données,
plus il y en aura et plus la méthode sera de bonne qualité.
2.2.2 Type de clustering
Un clustering est un ensemble de clusters. Il y a une distinction entre le clustering
hiérarachique et un partitionnement en clusters.
Clustering en partitionnement c’est une division de données en sous-ensembles ne se
chevauchant pas.
Clustering hiérarchique c’est un ensemble de clusters imbriqués organisée en arbre
hiérarchique
Clustering partitionnement

Points de données Un clustering partitionnant


Clustering hiérarchique

P1
P1
P3
P4
P2

P1 P2 P3 P4

Clustering hiérarchique traditionnel Dendrogram traditionnel

P1

P3 P4
P2

Clustering Hiérarchique non-tradiAonnel P1 P2 P3 P4


Le clustering est typiquement un cas d’apprentissage non supervisé : l’appartenance des
observations aux familles de sortie n’est pas connue a priori. Lorsque l’on parle de clustering
au sens large avec des statisticiens français, on peut faire référence à des approches
supervisées où l’on affecte des objets à des classes identifiées au préalable : on parle alors
plutôt de techniques de classement.
Le clustering est une branche extrêmement prolixe et diversifiée de l’analyse de données, qui
n’a eu de cesse de se développer, de se perfectionner… et de se complexifier depuis les
années 1970. Aussi, nous n’en détaillerons pas toutes les subtilités, mais en introduirons les
grands principes.
Le problème de base est classique : partant d’une matrice X de données, comment en extraire
de façon automatique des groupes nommés clusters (ou classes par les statisticiens) ? On
distingue deux principales approches.
• Le clustering hiérarchique : on va ici construire une suite de clusters emboîtés les uns dans
les autres. Ces relations entre clusters de différents niveaux peuvent ainsi être représentées
dans le cadre d’une hiérarchie arborescente. Plus on se situe bas dans l’arbre, plus les
observations se ressemblent. Cette méthode peut ainsi être appliquée lorsqu’on ne connaît pas
à l’avance le nombre k de groupes dans lesquels seront réparties les observations.
• Le clustering non hiérarchique (aussi nommé partitionnement par les statisticiens français) :
les individus sont répartis en k classes, pour une valeur de k fixée. Chaque individu
n’appartient qu’à un seul groupe.
Dans les deux cas, un bon clustering devra permettre de produire des groupes avec :

• une forte similarité intraclasse (ou faible variabilité intraclasse), ce qui signifie que les
individus d’un groupe donné doivent se ressembler ;
• et une faible similarité interclasses (ou forte variabilité interclasses), ce qui signifie que les
individus de groupes distincts ne doivent pas se ressembler.
Une fois les clusters constitués, on peut ensuite les interpréter en utilisant par exemple des
outils statistiques usuels tels que moyennes, écarts-types, min/max, etc.
Voyons désormais comment on procède pour créer ces clusters. Pour cela, nous présentons
successivement le clustering hiérarchique et le clustering non hiérarchique. Nous montrerons
aussi que ces approches peuvent être utilisées conjointement.
2.2.2.1 Le clustering hiérarchique
 Principe
La construction d’un clustering hiérarchique passe par l’emploi d’algorithmes qu’on peut
distinguer selon deux grandes familles :
• les algorithmes ascendants (agglomératifs) construisent les classes par agglomérations
successives des objets deux à deux ;
• les algorithmes descendants (divisifs) réalisent des dichotomies progressives de l’ensemble
des objets.
Dans les deux cas, les algorithmes aboutissent à la constitution d’un arbre appelé
dendrogramme, qui rassemble des individus de plus en plus dissemblables au fur et à mesure
qu’on s’approche de la racine de l’arbre.

Clusters contenant
Tous les individus
Forte hétérogénéité
Racin Divisif
e
abcde

Noeuds
étape étape
4 0
cde
étape
étape
3
1
étape de étape
2
Branch
2
étape
1
ab e étape
3
étape étape
0 a b c d e 4
Agglomératif
Feuilles
Clusters à 1 individu :
Homogénéité parfaite

La figure 9-1 Deux modes de constructions d’un dendrogramme : agglomératif et divisif

La méthode agglomérative est la plus populaire2 et nous ne rétablirons pas l’injustice


aujourd’hui : présentons les grands principes du clustering hiérarchique ascendant. On peut
résumer les grandes étapes de l’algorithme comme suit (tableau 9-1, selon Lebart et al., 2006)
:
Tableau 9-1. Algorithme de clustering hiérarchique

Étape 1 Il y a m observations à classer.


Étape 2 On construit une matrice des distances (ou, plus généralement, des
dissimilarités – nous préciserons ce terme plus loin –) entre les m
observations et l’on cherche les deux plus proches, que l’on agrège en
un nouvel élément. On obtient un premier clustering à m-1 classes.
Étape 3 On construit une nouvelle matrice des distances qui résultent de
l’agrégation précédente, en calculant les distances entre le nouvel
élément et les observations restantes (les autres distances restent
inchangées). On se trouve dans les mêmes conditions qu’à l’étape 1,
mais avec m-1 observations à classer et en ayant choisi un critère
d’agrégation (nous préciserons ce terme plus loin). On cherche de
nouveau les deux observations (ce peut aussi être l’un des clusters
constitués) les plus proches, que l’on agrège. On obtient un deuxième
clustering avec m-2 classes, qui englobe le premier clustering.
Étape m On calcule les nouvelles distances, et l’on réitère le processus jusqu’à
n’avoir plus qu’un seul élément regroupant toutes les observations :
c’est le clustering final.

Ces regroupements sont représentés par le dendrogramme. Celui-ci est une hiérarchie
indicée : chaque niveau a un indice (ou niveau d’agrégation) qui représente de manière
générale la distance entre ses éléments3.
L’application de cet algorithme pose deux questions : (1) comment calcule-t-on les distances
et (2) qu’est-ce qu’un critère d’agrégation ? Par ailleurs, une fois l’arborescence réalisée, on
peut aussi se demander combien de classes doivent être conservées.

 Les distances
Cette problématique doit être abordée en amont de l’application de l’algorithme. Elle revient à
se demander ce qu’on entend par ressemblance entre individus. Cette interrogation préalable
explicite est une grande force, puisqu’elle permet de s’adapter à des particularités liées aux
données.
La distance la plus intuitive, communément utilisée, est la distance euclidienne standard.
Soit une matrice X à n variables quantitatives. Dans l’espace vectoriel n, la distance
euclidienne d entre deux observations x1 et x2 est donnée par :
(les données étant centrées réduites).
D’autres distances peuvent être utilisées selon les
spécificités des données et l’objectif de la classification.
Par exemple, si l’on cherche à comparer des proportions, on pourra utiliser la célèbre distance
du χ² (les statisticiens l’adorent !). Pour chacune des n variables, on considère alors une
proportion fin par individu et une proportion moyenne pour la variable fn. La distance du χ² va
alors mesurer un écart entre des valeurs observées et des valeurs théoriques, en pondérant la
distance euclidienne par l’inverse des proportions moyennes :

Dans certains cas, on peut avoir recours à des distances qui ne sont plus euclidiennes.
C’est le cas de la distance de Manhattan (ou distance city-block ou taxi-distance4) :

Par rapport à la distance euclidienne usuelle, qui utilise le carré des écarts, on utilisera
notamment cette mesure pour minimiser l’influence des grands écarts.
Certaines circonstances impliquent l’utilisation de mesures qui ne sont pas des distances au
sens mathématique du terme, car elles ne respectent pas ce que l’on appelle l’inégalité
triangulaire5. On parle alors de dissimilarité plutôt que de distance. Ces mesures sont
particulièrement utiles pour la classification des tableaux de présence/absence, en étudiant,
pour parler comme un statisticien, la dissimilarité entre des objets constitués d’attributs
binaires. Pour cela, on peut utiliser l’indice de similarité de Jaccard. Désormais, nos individus
x1 et x2 sont définis par n variables de valeur 0 ou 1. Définissons les quantités suivantes :
• M11 : nombre de variables qui valent 1 chez x1 et x2
• M01 : nombre de variables qui valent 0 chez x1 et 1 chez x2
• M10 : nombre de variables qui valent 1 chez x1 et 0 chez x2
• M00 : nombre de variables qui valent 0 chez x1 et x2
avec M11 + M01 + M10 + M00 = n (chaque paire d’attributs appartient nécessairement à l’une
des quatre quantités)6
L’indice de Jaccard est alors7 :
D’où l’on calcule la distance de Jaccard :

Ce type de distance est par exemple utilisé en botanique8 (en phytosociologie, plus
précisément), pour mettre en évidence des associations d’espèces végétales dans des milieux
similaires. Il est aussi utilisé en génomique, pour mesurer la ressemblance entre les séquences
des quatre bases constituant les gènes.
 Le critère d’agrégation
Que représente cette notion ? C’est simple : imaginez-vous à la première étape de
l’algorithme de clustering, pour une distance choisie. Calculons la première matrice des
distances entre tous les individus : l’application de la formule d(x1, x2) s’applique directement
et c’est parfait ainsi. Mais à partir des itérations suivantes, nous aurons à considérer des
groupes d’individus et la question suivante se posera : comment calculer la distance en
présence de groupes ? Différentes possibilités existent.
Tout d’abord, trois critères qui fonctionnent quelle que soit la mesure de distance ou de
dissimilarité (parmi beaucoup d’autres !) :
• le critère du lien minimum (ou lien simple ou single linkage), qui va se baser sur les deux
éléments les plus proches ;
• le critère du lien maximum (diamètre, complete linkage), qui va se baser sur les deux
éléments les plus éloignés ;
• et le critère du lien moyen (average linkage), qui va utiliser la moyenne des distances entre
les éléments de chaque classe pour effectuer les regroupements.
La figure 9-2 illustre ces différents critères.
Figure 9-2 – Quelques critères d’agrégation
Dans le cadre de distances euclidiennes, d’autres critères peuvent être employés. Le plus usité
est le critère de Ward, qui se base sur ce que l’on appelle l’augmentation de l’inertie.
L’inertie totale de l’ensemble des individus est décomposée selon :
• l’inertie intraclasse, qui représente l’écart entre chaque point et le centre de gravité de la
classe à laquelle il appartient ;
• l’inertie interclasses, qui représente l’écart entre chaque centre de gravité d’une classe et le
centre de gravité général.
Sans entrer dans les détails, utiliser le critère de Ward va revenir à agréger deux classes de
façon à ce que l’augmentation de l’inertie intraclasse soit la plus petite possible, pour que les
classes restent les plus homogènes possible.
Selon le critère choisi, on peut aboutir à des arbres ayant des formes très différentes. Le saut
minimum tend à construire des arbres aplatis, avec des accrochages successifs d’individus un
à un (des « chaînes »), alors que le lien maximum tend à former des groupes isolés et très
compacts. Le critère de Ward tend quant à lui à produire des classes d’effectifs similaires. Au
final, il faut retenir qu’il n’existe pas une unique bonne méthode, tout comme il n’existe pas
un unique clustering. Il est recommandé de tester plusieurs approches pour un même jeu de
données. Les hiérarchies complètes peuvent beaucoup changer, mais, normalement, le « haut
» de l’arbre ne doit pas beaucoup varier (les partitions à peu de groupes doivent rester assez
stables).
 La notion de troncature
Une fois l’algorithme appliqué et les distances calculées, nous pouvons présenter les résultats
sous la forme du dendrogramme déjà évoqué. Il représente tous les clusterings possibles, du
clustering le plus fin (un cluster par individu) au plus grossier (un cluster unique pour tous les
individus).
La question suivante peut alors se poser : à quel niveau d’agrégation doit-on « couper »
l’arbre, c’est-à-dire comment définir le nombre de clusters le plus pertinent ? Des réponses
quantitatives peuvent être apportées, basées sur le gain relatif d’inertie engendré par le
passage d’une partition à une autre, mais retenez que l’examen visuel du dendrogramme
donne souvent de très bonnes réponses. On peut alors se baser sur des critères tels que :
• l’allure générale de l’arbre : elle laisse souvent apparaître un niveau de coupe « logique »
indiqué par des sauts importants dans les valeurs des indices de niveau. Si ces sauts
concernent les k derniers noeuds de l’arbre, alors un découpage en (k+1) classes sera pertinent
;
• le nombre de clusters : éviter un nombre trop grand, auquel cas le clustering perd de son
intérêt ;
• la capacité à interpréter les clusters : inutile de chercher à retenir des clusters pour lesquels
on n’arrive pas à donner de sens métier ; privilégier les clusterings qui ont du sens.
Voilà pour ce tour d’horizon du clustering hiérarchique. Vous en trouverez un exemple
d’application dans le cas particulier des séries temporelles au chapitre 22.
Nous avons abordé un certain nombre de notions nouvelles, qui vont nous permettre
d’aborder plus rapidement le paragraphe concernant le clustering non hiérarchique.
2.2.2.2 Le clustering non hiérarchique
 Principe
L’objectif du clustering non hiérarchique est le même que pour le clustering hiérarchique,
mais cette fois-ci, on sait à l’avance le nombre de clusters à constituer. Pour une mesure de
distance des individus donnée et pour un nombre de classes k connues, on imagine aisément
une solution de classification simple et optimale : énumérer toutes les possibilités de
regroupement imaginables et conserver la meilleure. Toutefois, cette solution n’est pas
applicable en pratique, car le nombre de combinaisons de regroupements possibles devient
très rapidement énorme. Mais des solutions approchées peuvent être obtenues grâce à des
heuristiques et plusieurs algorithmes de ce genre existent. Leur principe fondamental est
contenu dans la méthode des centres mobiles.
 Les centres mobiles
Pour k classes définies à l’avance, l’algorithme procède de façon itérative comme le montre le
tableau 9-2 (Lebart et al., 2006).
Étape 0 On détermine k centres provisoires de clusters (par exemple, par tirage
aléatoire de k individus). Ces k centres {C10, …, Ck0} induisent un
premier clustering P0 de l’ensemble des individus en k groupes {I1
0, …, Ik0}. Ainsi, l’individu i appartient par exemple au groupe I1
0 s’il est plus proche de C1 0 que de tous les autres centres.

Étape 1 On détermine k nouveaux centres {C11, …, Ck1} en prenant les centres


de gravité des clusters qui viennent d’être obtenus ({I10, …, Ik
0}). Ces nouveaux centres induisent un nouveau clustering P1, construit
selon la même règle que pour P0. La partition P1 est formée de classes
notées {I11, …, Ik1}.
Étape e On détermine k nouveaux centres {C1 e, …, Ck e} en prenant les centres
de gravité des clusters qui viennent d’être obtenus ({I1 e–1, …, Ik
e–1}). Ces nouveaux centres induisent un nouveau regroupement Pe,
formé des clusters {I1 e, …, Ik e}.

Tableau 9-2. L’algorithme des centres mobiles

Le processus se stabilise nécessairement (en général, rapidement), pour des raisons


mathématiques que nous ne détaillerons pas ici. L’algorithme s’arrête soit si deux itérations
successives aboutissent au même clustering, soit si un critère de contrôle choisi se stabilise
(variance intraclasse par exemple), soit si on atteint un nombre d’itérations fixé.
L’algorithme n’aboutit pas nécessairement à un optimum global : le résultat final dépend des
centres initiaux. Dans la pratique, on l’exécute souvent plusieurs fois (avec des centres
initiaux différents, bien sûr). Ensuite, soit on conserve la meilleure solution, soit on cherche
des regroupements stables pour identifier les individus qui appartiennent aux mêmes
partitions. Ces ensembles d’individus systématiquement rattachés à une même classe sont
appelés « forme forte » ou « groupements stables ».
Parlons désormais de quelques unes des variantes les plus connues des centres mobiles,
destinées à en améliorer certains aspects.

 Quelques variantes
Elles sont nombreuses, et nous nous limiterons à en évoquer quatre :
• la méthode des k-means : elle fonctionne exactement comme les centres mobiles, à une
différence près, qui est le calcul des centres. Un recentrage est effectué dès qu’un individu
change de cluster. On n’attend plus que tous les individus soient affectés à un cluster pour en
calculer les centres de gravité, ces derniers sont modifiés au fur et à mesure des
réaffectations ;
• la méthode des nuées dynamiques : elle favorise la recherche de groupements stables.
C’est une généralisation des centres mobiles dont l’idée est d’associer à chaque cluster un
représentant différent de son centre de gravité. Dans la majorité des cas, on remplace le centre
de gravité par un ensemble d’individus, qu’on appelle des « étalons » et qui constituent un «
noyau ». Ce noyau est censé avoir un meilleur pouvoir descriptif que des centres ponctuels. À
noter que d’autres représentants plus exotiques peuvent être utilisés : une droite, une loi de
probabilité, etc. ;
• la méthode Isodata : le principe des centres mobiles est conservé, mais des contraintes vont
permettre de contrôler l’élaboration du clustering. Ces contraintes servent à empêcher la
formation de groupes à effectifs trop faibles ou de diamètre trop grand ;
• la méthode des k-medoids : elle est similaire à la méthode des k-means, à une différence
près. En effet, elle ne va plus définir une classe par une valeur moyenne (le centre de gravité,
on centroid), mais par son représentant le plus central (le medoid). C’est donc un individu du
cluster qui va représenter ce dernier. Cette méthode a l’avantage d’être plus robuste aux
valeurs aberrantes ;
• la méthode des cartes auto-organisées (Self-Organising Maps, ou cartes de Kohonen) : cet
algorithme diffère des centres mobiles par la mise à jour des clusters voisins, où les clusters
deviennent des neurones activables. Cette méthode non linéaire permet in fine de conserver
toute la topologie des données, en partant le plus souvent d’une grille rectangulaire de
neurones qui va se déformer.
Arrêtons là l’énumération de méthodes aux noms de plus en plus étranges ! Dans la pratique,
nous vous recommandons de sélectionner une méthode « de base », centre mobile ou nuée
dynamique par exemple, puis d’aller vers des méthodes plus élaborées si les résultats ne sont
pas satisfaisants.
 Les approches mixtes
Dans ce chapitre, nous avons présenté les approches hiérarchiques et non hiérarchiques
séparément. Mais en pratique, il peut être utile de les utiliser conjointement. Terminons ce
chapitre en donnant quelques indications méthodologiques à cet effet.
En mixant les approches, on peut tirer parti des principaux avantages des différentes
méthodes, à savoir :
• la capacité à analyser un grand nombre d’individus, point fort des méthodes non
hiérarchiques (pour un nombre d’observations supérieur à 103, il devient difficile d’appliquer
directement des méthodes hiérarchiques) ;
• le choix d’un nombre de classes optimal, rendu possible par la classification hiérarchique.
Un algorithme mixte global peut être résumé par le tableau 9-3 (Lebart et al., 2006).

Tableau 9-3. L’algorithme mixte de clustering


Étape 1 – L’objectif est d’obtenir rapidement une partition de m individus (m
Clustering Non grand) en k classes, avec k supérieur au nombre de classes finales s
hiérarchique souhaité, grâce à une méthode de clustering non hiérarchique. On prend
initial par exemple k = 100, tel que k << m. Ce clustering n’est pas utilisable
directement : les groupes sont nombreux et proches les uns des autres.
Toutefois, ils ont l’avantage d’être très homogènes et de contenir des
individus qui n’ont pas à être séparés. On peut répéter l’étape pour
rechercher des formes fortes.
Étape 2 – On peut désormais utiliser un algorithme de clustering hiérarchique pour
Clustering regrouper les k groupes de l’étape 1 (chaque groupe a pour poids la
hiérarchique somme des poids qu’il représente). L’étape d’agrégation va permettre de
des groupes reconstituer des clusters qui ont été inutilement fragmentés lors de
obtenus l’étape précédente, en sélectionnant un nombre de classes optimal (s). Il
convient d’utiliser le critère de Ward pour la constitution de cet arbre,
afin de tenir compte des masses des classes.
Étape 3 – Enfin, un clustering non hiérarchique final est réalisé, pour s groupes
Clustering non définis lors de l’étape 2. Comme pour l’étape 1, on peut répéter l’étape
hiérarchique pour rechercher des formes fortes.
final En fonction des besoins, tout ou partie de l’algorithme mixte peut être
appliqué. Si l’objectif est uniquement de réaliser un clustering
hiérarchique sur un grand nombre d’individus, on se contentera
d’appliquer les étapes 1 et 2 ; si au contraire on a peu d’individus et
qu’on veut réaliser un clustering non hiérarchique sans définir le nombre
de groupes au hasard, on omettra l’étape 1.
2.3 Conclusion
Les méthodes de clustering sont des approches non supervisées visant à regrouper
automatiquement les observations les plus homogènes.
Nous avons pu voir les deux grandes familles de clustering : le clustering hiérarchique et le
clustering non hiérarchique.
Il existe également des algorithmes mixtes ayant recours aux deux familles.
Le choix d’une bonne métrique de distance/similarité est un critère important pour la
réalisation d’un bon clustering.

Références
Au fil du chapitre, nous avons exclusivement renvoyé à Lebart et al. (2006). Complet,
rigoureux et accessible, c’est l’un des livres de référence en matière de fouille de données :
• Lebart L., Piron M., Morineau A. 2006. Statistique exploratoire et multidimensionnelle –
Visualisation et inférence en fouilles de données. 4e édition, Dunod. Une version en ligne
d’une édition plus ancienne est disponible ici : http://horizon.documentation.ird.fr/exldoc/
pleins_textes/divers11-10/010007837.pdf.
Sans y faire référence directement, nous nous sommes également appuyés sur les références
suivantes :
• Bouroche JM., Saporta G. 2005. L’analyse des données. PUF, Que sais-je ?
La version miniature de Lebart et al., à mettre dans toutes les poches !
• Husson F., Sebastien L., Pagès J. 2009. Analyse de données avec R. Presses
Universitaires de Rennes.
Une très bonne synthèse opérationnelle des méthodes de clustering, avec le code qui permet
de les mettre en oeuvre sous R en utilisant l’excellente librairie FactoMineR.
• Mirkes EM. 2011. University of Leicester met à disposition un ensemble d’applets,
disponibles sur la page de Gorban AN.
http://www.math.le.ac.uk/people/ag153/homepage.
Elles permettent de se faire une idée intuitive de certaines des méthodes évoquées.
• Roux M. 1997. Algorithmes de classification. (http://www.imepcnrs.
com/docu/mroux/algoclas.pdf).
Ce livre est extrêmement complet et pédagogique. Il est hélas épuisé, mais disponible en
ligne.
• Singh SS., Chauchan NC. 2011. K-means v/s K-medoids: A comparative study. In
National Conference on Recent Trends in Engineering & Technology. (13-14 May 2011)

Vous aimerez peut-être aussi