49
Cours Datamining Dr. Mamadou Camara [email protected] 2013-2014

Data Mining

Embed Size (px)

Citation preview

Cours Datamining

Dr. Mamadou [email protected]

2013-2014

Table des matieres

1 Introduction au datamining 21.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21.2 Techniques predictives de Datamining . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31.3 Processus de datamining . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61.4 Comprehension des donnees . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81.5 Preparation des donnees . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

2 Apprentissage non supervise 152.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152.2 Analyse de cluster . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152.3 Types de donnees dans l’analyse des clusters . . . . . . . . . . . . . . . . . . . . . . . . . . . 162.4 Methodes de partitionnement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232.5 Methodes hierarchiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272.6 Exigences des methodes de clustering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292.7 TP : methode k-means sur des donnees de pluviometrie . . . . . . . . . . . . . . . . . . . . . 332.8 TP2 : methode k-means sur des donnees de la base iris . . . . . . . . . . . . . . . . . . . . . . 382.9 Validation des clusters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

1

Chapitre 1

Introduction au datamining

1.1 Introduction

Le datamining est, en essence, un ensemble de techniques qui permettent d’acceder aux informationsappropriees, precises et utiles qui sont cachees dans les bases de donnees[7]. Le datamining propose dessolutions au besoin de ciblage dans un certain nombre de domaines.

– Dans le domaine de la gestion de la relation client, par exemple, un des gains attendus dudatamining est l’identification des clients les plus rentables, et la concentration sur euxdes efforts des commerciaux [22]. Le datamining s’appuie sur des bases de donnees, ou de plus enplus sur des entrepots de donnees qui permettent de stocker le profil de chaque client.

– Dans le domaine de la prevention de la non-qualite en genie logiciel, le datamining est utilise pourl’identification des modules susceptibles d’etre non fiables avant la phase de test. Celapermet de concentrer les efforts de test sur ces modules pour assurer un gain de temps et de productivite[11]. En effet, une grande partie du travail realise dans le developpement d’un logiciel concerne la phasede test. Selon [11], cela est du au fait que ’on consacre un temps de test et de verification egale atous les modules alors que 80% des erreurs se trouvent dans 20% du code[11]. Des techniquesstatistiques sont ainsi mises en œuvre pour construire des modeles predictifs permettant d’evaluer aumieux une caracteristique qualite donnee a partir de mesures descriptives de l’objet a evaluer. L’objectifest d’assurer la qualite des logiciels par la definition de mesures pertinentes et l’analyse des retoursd’experience.

Un second interet du datamining est qu’il permet de tirer parti des informations historiseesdisponibles autour d’une problematique de recherche ou d’un cas industriel.

– Selon [7], la plupart des organisations produisent en une semaine plus de donnees que ne peuvent lirebeaucoup de personnes durant toute leur vie. Elles sont confrontees ainsi au paradoxe de l’augmentationdes donnees car plus de donnees signifie moins d’information. Les organisations qui filtrent, selectionnentet interpretent le mieux les donnees vont avoir plus de chances pour survivre ; et a cause de cela,l’information elle-meme est devenue un facteur de production[7].

Selon [22], le datamining permet de limiter la subjectivite humaine dans le processus de decision,et aussi, grace a la puissance grandissante des outils informatiques, de traiter de plus en plus rapidement degrands nombres de dossiers.

– La prise de decision et les actions qui s’en suivent sont basees sur des hypotheses emises sur les relationsentre plusieurs concepts lies a la problematique. Ces hypotheses sont construites de maniere empiriquepar l’experience de chercheurs ou de praticiens mais leur validite reelle n’est pas prouvee. Nous consta-tons la une certaine forme de subjectivite dans les decisions prises. Dans des situations de ce type, ilest possible de rassembler ces hypotheses et de les soumettre a la validation du datamining. Le rejet oul’acceptation de chaque hypothese repose sur sa verification quantitative par les donnees historisees.

2

1.2 Techniques predictives de Datamining

La fouille de donnee (souvent appelee � Datamining �) est le processus de decouverte de connaissancesinteressantes a partir de grande quantite de donnees stockees, soit dans des bases de donnees, soit dansdes entrepots de donnees ou autre repertoire d’information[12]. [12] dresse une typologie des methodes deDatamining selon leur objectif :

1. description : trouver un resume des donnees qui soit plus intelligible– Statistique descriptive (Exemple : moyenne d’age des personnes presentant un cancer du sein)– Analyse factorielle : L’analyse factorielle cherche a reduire un nombre important d’informations (pre-

nant la forme de valeurs sur des variables) a quelques grandes dimensions 1

2. association : trouver les ensembles de descripteurs qui sont le plus correles.Les regles d’association :– les donnees

Caddie p1 p2 p3 p41 1 1 1 02 1 0 1 03 1 1 1 04 1 0 1 05 0 1 1 06 0 0 0 1

– la regle d’association suivante :R1 : Si p1 alors p2

– le support est un indicateur de � fiabilite � de la regle

sup(R1) = 2 ou supr(R1) =2

6= 33% (1.1)

1. The General Factor of Personality (GFP)

3

– la confiance est un indicateur de � precision � de la regle

sup(R1)

sup(antecedentR1)=sup(p1→ p2)

sup(p1)=

2

4= 50% (1.2)

– Une bonne regle est une regle avec un support et une confiance eleves.

3. explication : predire les valeurs d’un attribut (endogene) a partir d’autres attributs (exogenes). Predirela qualite d’un client (rembourse ou non son credit) en fonction de ses caracteristiques (revenus, statutmarital, nombre d’enfants, etc). C’est l’apprentissage supervise :– arbre de decision (CHAID, C4.5 et CART),– arbre de regression,– methode Bayesienne.

4

4. structuration : faire ressurgir des groupes � naturels � qui representent des entites particulieres. C’estla classification (clustering ou apprentissage non supervise)– arbre de classification(classification ascendante hierarchique - CAH).

5

1.3 Processus de datamining

Le datamining, ou fouille de donnees, est l’ensemble des methodes et techniques destinees a l’explorationet l’analyse de (souvent grandes) bases de donnees informatiques, de facon automatique ou semi-automatique,en vue de detecter dans ces donnees des regles, des associations, des tendances inconnues ou cachees, desstructures particulieres restituant l’essentiel de l’information utile tout en reduisant la quantite de donnees[22]. Le spectre d’application du datamining et de la statistique est tres large [22] :

– genomique, Astrophysique,– gestion de la relation client,– aide au pilotage aeronautique,– e-commerce,– prevention du terrorisme, detection automatique de la fraude dans la telephonie mobile ou l’utilisation

des cartes bancaires,– controle qualite, pilotage de la production,

6

– enquetes en sciences humaines, etudes biologiques, medicales et pharmaceutiques ;– etudes agronomiques et agro-alimentaires,– prediction d’audience TV.Le CRISP-DM (Cross Industry Standard Process for Data Mining) est considere comme la methodologie

la plus utilisee pour le datamining [6]. Il a ete concu par un consortium d’entreprises pour etre utilise avecn’importe quel outil de datamining dans n’importe quel domaine[6]. Le CRISP-DM identifie six phases dansle processus de datamining (Figure 1) [17].

– Comprehension du metier. Cette premiere phase doit permettre de comprendre les objectifs et lesbesoins d’un point de vue metier, et ainsi convertir cette connaissance en une definition de problemede datamining, et un plan permettant d’atteindre ces objectifs.

– Comprehension des donnees. La phase de comprehension des donnees commence avec une collectedes donnees et se poursuit avec des activites qui ont pour objectif de se familiariser avec les donnees,d’identifier les problemes de qualite des donnees, decouvrir les premieres connaissances dans les donnees,ou detecter les sous-ensembles interessants pour former des hypotheses sur les informations cachees.

– Preparation des donnees. Cette phase couvre toutes les activites permettant de construire l’echantillonfinal (le jeu de donnees qui sera fourni a l’outil de modelisation). Les taches de preparation des donneessont souvent executees plusieurs fois, et non dans un ordre prescrit. Ces taches incluent la selection detables, d’enregistrements et d’attributs, ainsi que la transformation et le nettoyage des donnees pourl’outil de modelisation.

– Modelisation. Dans cette phase, diverses techniques de modelisation sont selectionnees et appliquees,et leurs parametres ajustes aux valeurs optimales. Generalement, il existe plusieurs techniques pour lememe type de probleme de datamining. Certaines techniques ont des exigences specifiques sur la formedes donnees. Par consequent, un pas en arriere vers la preparation des donnees est souvent necessaire.

– Evaluation du modele. A cette etape du projet, un (ou des) modele qui semble avoir une hautequalite, du point de vue de l’analyse de donnees, a ete construit. Avant de proceder au deploiementfinal du modele, il est important de bien evaluer le modele, et de revoir les etapes executees pourconstruire le modele, pour etre certain qu’il satisfait correctement les objectifs metiers. A la fin de cettephase, une decision sur l’utilisation ou non des resultats du processus datamining doit etre prise.

– Utilisation du modele. La mise au point du modele n’est pas la fin du processus de datamining. Unefois les connaissances extraites des donnees, elles doivent encore etre organisees et presentees de facona les rendre utilisables par les destinataires du modele. Selon les besoins, le deploiement peut etre aussisimple que de fournir une synthese descriptive des donnees ou aussi complexe que de mettre en œuvreun processus de fouille de donnees repetable. Dans tous les cas, c’est l’utilisateur, et non l’analyste dedonnees, qui va mettre en œuvre la phase de deploiement. Il est neanmoins toujours important quel’utilisateur comprenne d’emblee quelles actions devront etre menees afin de veritablement faire usagedu modele.

7

1.4 Comprehension des donnees

L’etape de � preparation de donnees � est precedee d’une etape de � comprehension des donnees �. Ellecommence par une collecte des donnees et se poursuit avec des activites dont l’objectif est de se familiariseravec les donnees, d’identifier les problemes de qualite des donnees, de decouvrir les premieres connaissancesdans les donnees, ou de detecter les sous-ensembles interessants pour former des hypotheses sur les informa-tions cachees.

1.4.1 Collecter les donnees initiales

Lister les jeux (ensembles) de donnees collectes, avec leurs localisations, les methodes uti-lisees pour les collecter, et tout probleme rencontre [9]. Les solutions proposees pour regler cesproblemes doivent aussi etre enregistrees. Cela continuera une base solide pour une replication eventuelle duprojet ou pour l’execution d’un projet similaire dans le futur.

1.4.2 Decrire les donnees

Decrire les donnees collectees, y compris le format des donnees, la quantite de donnees (par exemple,nombre d’enregistrements and d’attributs dans chaque table), la description des des attributs, et tout autrecaracteristique importante qui a ete decouverte dans les donnees. Evaluer si les donnees collecteespermettent de satisfaire les besoins identifies.

1.4.3 Explorer les donnees

Cette tache traite des questions reliees a la fouille en utilisant les requetes, la visualisation, et les techniquesde reporting. Cela inclut les distributions des attributs cles (pour par exemple, la variable de reponsed’une tache de prediction). Cela inclut aussi les relations entre paires (ou un nombre limite) devariables, des resultats d’agregations simples, les proprietes d’une sous-population significative,et toute autre analyse statistique simple. Ces analyse peuvent directement traiter des objectifs lies a la fouille ;elles peuvent aussi contribuer a affiner la description des donnees et les rapports sur la qualite des donnees,

8

elle peuvent fournir des entrees aux etapes de preparation des donnees (surtout celle liees a la transformationdes donnees).

1.4.4 Verifier la qualite des donnees

Examiner la qualite des donnees avec des questions comme : Les donnees sont-elles completes (tousles cas requis sont-ils couverts) ? Le jeux de donnees est-il correct, ou contient-il des erreurs, s’il y ades erreurs, comment il y en a-t-il, quelle est leur frequence ? Les donnees contiennent-elles des des valeursmanquantes ? Le cas echeant, comment sont-elles representees, ou se produisent-elles, et quelle est leurfrequence.

1.5 Preparation des donnees

La preparation des donnees est l’un des aspects les plus importants et les plus couteux en temps dudatamining [18]. L’existence d’un entrepot de donnees peut aider a diminuer sensiblement l’effort depense auniveau de cette phase. En effet, les donnees seront deja passees par la phase d’Extraction-Transformation-Chargement avant d’etre stockees dans l’entrepot. Ceci permet de reduire le temps de traitement des donnees.Cependant, la preparation et l’integration des donnees en vue de l’operation de fouille requierent encorebeaucoup d’efforts. La phase de preparation des donnees d’un processus DM fait le lien entre les donnees ala disposition et la phase de modelisation. La phase preparation des donnees du CRISP-DM regroupe cinqtaches : la selection, le nettoyage, la construction, l’integration, et le formatage.

1.5.1 La selection des donnees

En fonction de la collecte initiale de donnees realisee dans la phase de � comprehension des donnees � duCRISP-DM, l’on peut commencer a choisir les donnees pertinentes en accord avec les objectifs fixes pourl’operation de fouille. Ce choix se fait en tenant compte de la qualite des donnees et des contraintes techniquestelles que les limites sur le volume des donnees ou des types de donnees. Il faut noter que la selection desdonnees couvre aussi bien la selection des attributs (colonnes) que la selection des enregistrements(lignes) d’une table.

A ce niveau, l’utilisation des tests de signification et de correlation afin de decider de l’exclusionou non des donnees sur un champ est aussi utile.La signification statistique a pour objectif de determinerla probabilite que le resultat obtenu dans une etude soit du a l’influence de variables independantes plutotqu’au hasard.

9

Correlation des variables : Third variable problem

10

1.5.2 Le nettoyage des donnees

La tache de nettoyage a pour but de detecter et corriger les eventuelles anomalies survenues aucours de la collecte des donnees et de traiter les valeurs manquantes.

1. Elle permet aussi d’ameliorer la qualite des donnees au niveau requis par les techniques d’analysesselectionnees.

2. Cela peut impliquer la selection de sous-ensembles des donnees propres, le remplacement des donneesmanquantes avec des techniques plus ambitieuses, telles que l’estimation des donnees manquantes.

3. On peut utiliser dans cette phase, le rapport sur la qualite des donnees preparees au cours de la phasede � comprehension des donnees �.

4. Ce rapport contient des informations sur les types de problemes lies aux donnees choisies.

5. Ainsi, l’on peut l’utiliser comme point de depart la manipulation des donnees incluses dans le nettoyagedes donnees de la phase de preparation des donnees.

1.5.3 La construction des donnees

La tache de construction vise a definir les unites sur lesquelles portent les mesures, et les variables. Bref, lescaracteristiques mesurees sur les individus. Cette tache comprend entre autres les operations de productiond’attributs derives, de complement des nouveaux enregistrements, ou des attributs existants dont les valeursont ete transformees afin d’obtenir un ensemble de donnees complet et utile a l’analyse. Les nouvelles donneespeuvent etre construites de deux manieres :

– Calculer les attributs (colonnes ou caracteristiques) : creer des champs calcules a partir dechamps existants a l’aide d’un nœud calcule, creer un champ booleen a l’aide d’un nœud binaire ;

– Generer les enregistrements (lignes).

11

La construction des donnees est un element important de la preparation des donnees. Elle peut utiliserdes formulations mathematiques simples pour convertir des donnees selon differentes mesures choisies et ades fins d’analyse. De nombreuses mesures de statistiques sont disponibles : la moyenne, la mediane, le modeet la variance. Elles peuvent etre facilement utilisees pour transformer les donnees.

1.5.4 L’integration des donnees

Les donnees necessaires a l’analyse peuvent provenir de plusieurs sources des donnees. Il est donc importantde proceder a une combinaison de ces donnees grace a des methodes afin de creer des nouvelles donnees. Latache d’integration consiste a croiser l’information contenue dans differentes tables, ou d’autres sources, afinde creer les lignes et les colonnes de la future table. Deux methodes principales existent pour l’integration dedonnees :

– L’ajout de donnees, qui implique l’integration de plusieurs ensembles de donnees possedant desattributs semblables mais des enregistrements differents. Ces donnees sont integrees en fonctiond’un champ identique (tel qu’un nom de produit ou une duree de contrat) ;

– La fusion de donnees, qui implique la jonction de deux ou plusieurs ensembles de donnees possedantdes enregistrements semblables mais des attributs differents. Ces donnees sont fusionnees al’aide d’un meme identificateur-cle pour chaque enregistrement (tel que l’ID client). L’integrationdes donnees peut s’averer complexe si l’on n’a pas suffisamment de temps a passer sur la bonnecomprehension des donnees.

1.5.5 Le formatage des donnees

Lorsque les techniques de modelisation envisagees l’imposent, une tache de formatage de la table dedonnees est effectuee. L’operation de formatage se refere principalement a des modifications syn-taxiques apportees aux donnees qui ne changent pas de sens, mais peuvent etre exigees parl’outil de modelisation. Avant de commencer la creation d’un modele, il est utile de verifier si certainestechniques necessitent l’application d’un format ou d’un ordre particulier aux donnees. Par exemple, le triprealable des donnees avant l’execution du modele. Meme si l’algorithme utilise est en mesure de realiser cetri, la realisation de cette operation au prealable permet parfois de reduire le temps de traitement en utilisant

12

des donnees triees avant la modelisation. Les differentes phases de preparation etant presentees ainsi que lesproblemes qui minent cette etape. Nous presentons dans la partie qui suit, les techniques de resolution deproblemes des donnees manquantes et donnes aberrantes qui constituent aussi un des problemes majeurs decette etape.

1.5.6 Problemes lies a la preparation des donnees

Les donnees aberrantes

Une valeur aberrante est une valeur qui differe de facon significative de la tendance globale des autresobservations quand on observe un ensemble de donnees ayant des caracteristiques communes

– Controle sur le domaine des valeurs– Detection graphique (l’histogramme, le nuage des points, le diagramme de dispersion)– Tests de Dixon (distance entre les points)– Test de Grubbs– La regle de la boıte de Tukey– La methode des correlations (variation du coefficient de correlation entre deux variables en supprimant

une valeur)– Les techniques classiques d’analyses multivariees (analyse discriminante, analyse factorielle des corres-

pondances, analyse en composantes principales).

Les donnees manquantes

Les mecanismes d’analyse des donnees manquants sont classes en trois (3) categories :– MAR ( Missing At Random), si la probabilite de non-reponse peut dependre des observations

mais pas des donnees Manquantes. Considerons une variable Y le revenu et une variable X qui estl’age. Dans le cas MAR, la probabilite que revenu soit recolte depend de l’age des repondants mais nevarie pas en fonction du revenu au sein des groupes d’age.– P(Revenu = absent) = f(Age)

– MNAR( Missing Not At Random), lorsque la probabilite de non-reponse est liee aux valeursprises par la variable ayant des donnees manquantes. Dans le dernier cas, la probabilite querevenu soit recolte varie aussi en fonction du revenu dans le groupe d’age.– P(Revenu = absent) = f(Revenu)

– MCAR ( Missing Completely At Random), si la probabilite de non reponse pour une variabledonnee ne depend ni des donnees non-observees (la variable manquante y compris) nides donnees observees (les autres variables), mais uniquement des parametres exterieurs. Le casMCAR est verifie si la probabilite que revenu soit recolte est la meme pour tous les individus.

Le traitement des donnees manquantes revet un caractere capital car il permet d’affiner les donnees necessairesa l’analyse. Cependant, ce traitement ne doit pas modifier la distribution des donnees. C’est pourquoi recom-mande que toutes methodes de traitement des donnees manquantes doit repondre aux regles suivantes :

– Faire de l’estimation sans biais : la methode utilisee pour le traitement des donnees manquantesne devrait pas changer la distribution des donnees ;

– La relation entre les attributs devrait etre conservee ;– Le Cout. Utiliser une methode moins couteuse en temps et pratiquement moins complexe.L’apprehension des donnees manquantes est un probleme delicat.– Non pas a cause de sa gestion informatique mais plutot a cause des consequences de leur traitement

(suppression des individus ayant une mesure manquante ; ou remplacement par une valeur plausiblea partir des observations disponibles : On parle d’imputation) sur les resultats d’analyse ou sur lesparametres d’interet [19].

– En effet, selon Tuffery, si les donnees ne sont pas manquantes au hasard et s’il existe des differencessysthematiques entre les observations completes et incompletes, la suppressions des observations in-completes introduit un biais dans l’analyse [22].

Les methodes de traitement des donnees manquantes se distinguent selon deux approches [20, 3]– les methodes supprimant les donnees manquantes

13

1. Dans la premiere categorie, l’on retrouve les techniques connues sous l’appellation analyse des cascomplets (listwise deletion) et analyse des cas complets par paires (pairwise deletion).

2. Certains auteurs suggerent egalement que le choix de ne pas inclure dans les analyses les variablesqui comportent des donnees manquantes constitue une forme de suppression des donnees.

– les methodes utilisant toute l’information disponible. Parmi les methodes utilisant toute l’informationdisponible, notons

1. l’ajustement par variable binaire,

2. toutes les variantes de l’imputation, le maximum de vraisemblance, l’algorithme EM, le MarkovChain Monte Carlo (MCMC), la ponderation ainsi que l’imputation multiple.

Les methodes utilisant toute l’information disponible sont generalement preferees [20].

1.5.7 Independance des observations : Echantillonnage a plusieurs niveaux

Dans une recherche pour l’education par exemple,– la population est composee d’ecoles et d’eleves dans ces ecoles.– l’echantillonnage procede en deux etapes :

1. un certain nombre d’ecoles sont selectionnees,

2. et un echantillon d’eleves est choisi dans chacune de ces ecoles.

Dans un tel echantillonnage, les observations individuelles ne sont pas completement independantes– l’histoire, de l’environnement ou des conditions qu’ils partagent– risque que les eleves de meme classe socio-economique soient selectionnes dans les memes ecolesRecherche sur les performances des employes– Niveau employe : formation, les competences et la motivation– Niveau service ou entreprise : la taille, le mode de management, l’ambiance, le pourcentage annuel de

promotion, le soutien accorde par les autres membres de l’equipe.L’hypothese d’independance. La violation de l’hypothese d’independance des observations [2].– entraine une estimation tres faible de l’erreur standard par les tests statistiques conventionnels– produit beaucoup de resultats faussement significatifs

14

Chapitre 2

Apprentissage non supervise

2.1 Introduction

Le clustering consiste en un processus de regroupement de donnees en classes ou clusters, de telle maniereque les objets a l’interieur d’un cluster aient une haute similarite les uns par rapport aux autres mais soienttres dissimilaires des objets dans les autres clusters [12]. Les dissimilarites sont mesurees sur la base des valeursdes attributs qui decrivent les objets. Souvent, ce sont des mesures de distance qui sont utilisees. Dans cechapitre, nous commencerons par etudier les exigences des methodes de clustering pour des grands volumesde donnees. Nous expliquerons par la suite comment calculer les dissimilarites entre objets representes pardivers attributs ou types de variables. Pour terminer, nous examinerons plusieurs techniques de clusteringorganisees selon les categories suivantes : clustering hierarchique, clustering de partitionnement, les methodesbasees sur les modeles, etc.

2.2 Analyse de cluster

La classification d’objets similaires en groupes est une activite humaine importante. L’analyse de clusterest souvent consideree comme une branche du Pattern Recognition 1 et de l’intelligence artificielle [16]. Laclassification a toujours joue un role en science. Au 18 eme siecle, Linnaeus et Sauvages ont produit desclassifications approfondies des animaux, des plantes, des mineraux et des maladies [16]-un etude plus recenteest produite dans [14]. En astronomie, Hertzsprung et Russell ont classifie les etoiles en divers categories surla base de deux variables : l’intensite de leur lumiere et la temperature de leur surface. En science sociale, onclassifie souvent les personnes relativement a leur comportement et leurs preferences. En marketing, on tentesouvent d’identifier les segments de marche, c’est-a des groupes de clients ayant des besoins similaires. D’autresexemples pourrait etre donnes en geographie (clustering des regions), en medecine (l’incidence -frequence- decertains types de cancers), en chimie (classification des composes), en histoire (regroupement des decouvertesarcheologiques) et ainsi de suite. Vu la disponibilite de grands volumes de donnees collectes dans base dedonnees, l’analyse de cluster est devenu recemment un sujet tres actif dans la recherche en Datamining. Leclustering ne repose pas sur des classes predefinies et des exemples avec des classes (labels ou etiquetes)connues d’avance. Pour cette raison, le clustering peut etre considere comme une sorte d’apprentissage parobservation, plutot qu’un apprentissage par exemples. Les algorithmes de clustering consistent a assigner desclasses en respectant les regles suivantes :

1. La distance entre les elements d’une meme classe (distance intra-classe) est minimale.

2. La distance entre chaque classe (distance inter-classes) est maximale.

1. Reconnaissance de formes

15

2.3 Types de donnees dans l’analyse des clusters

Nous etudions ici les types de donnees qui se rencontrent en analyse de cluster et comment les traiter pourune telle analyse. Supposons que l’ensemble des donnees a clustrer contient n objets, qui peuvent representerdes personnes, des maisons, des documents, des pays, etc. la plupart des algorithmes de clustering fonctionnentsur l’un ou l’autre de ces deux structures de donnees. Matrice de donnees. Une matrice de donnees representen objets, par exemple de personnes, avec p variables (aussi appelees mesures ou attributs), par exemple l’age,la taille, le poids, le sexe, etc. la structure a la forme d’une matrice (n objet * p variables) :x11 · · · x1p

.... . .

...xn1 · · · xnp

(2.1)

Matrice de dissimilarites. Cette matrice stocke une collection de proximites disponibles pour toutes les pairesparmi les n objets. Elle est souvent representee par une table n*n :

0d(2, 1) 0

... · · · 0d(n, 1) d(n, 2) · · · 0

(2.2)

Ou d(i, j) est la difference ou dissimilarite mesuree entre les objets i et j. En general, d(i, j) est un nombrenon negatif qui est proche de 0 si les objets i et j sont tres similaires ou proches l’un de l’autre, et devientplus grand plus ils different. Beaucoup d’algorithmes fonctionnent avec une matrice de dissimilarites. Si lesdonnees sont presentees sous la forme d’une matrice de donnees, elle doit etre d’abord transformee en matricede dissimilarites avant d’appliquer de tels algorithmes.

2.3.1 Les variables binaires

Nous presentons dans cette section le calcul des dissimilarites entre objets decrits par des variables binairessymetriques ou asymetriques. Une variable binaire a seulement deux etats 0 ou 1,

– 0 voulant dire que la variable (ou caracteristique) est absente,– et 1 qu’elle est presente (par exemple fumeur =1 et non-fumeur = 0).Lorsque toutes les variables ont le meme poids, la dissimilarite peut etre calculee en utilisant un tableau

de contingence avec :

1. M11 est le nombre de variables egales a 1 pour les objets i et j.

2. M10 est le nombre de variables egales a 1 pour i et 0 pour j.

16

3. M01 est le nombre de variables egales a 0 pour i et 1 pour j.

4. M00 est le nombre de variables egales a 0 pour les objets i et j.

Une variable binaire est dite symetrique si– ses deux etats sont de valeurs egales et portent le meme poids,– c’est a dire qu’il n’y a pas de preference sur quel etat doit etre code 0 ou 1.– Le genre est un exemple de variable binaire symetrique.La dissimilarite binaire symetrique se calcule comme suit :

d(i, j) =M10 +M01

M11 +M10 +M01 +M00(2.3)

Une variable binaire est asymetrique si– les valeurs liees a ses etats n’ont pas la meme importance,

– par exemple un resultat positif ou negatif d’un test de maladie.– Par convention,

– la sortie la plus importante (test maladie positif), qui est souvent la plus rare doit etre codee a 1,– et l’autre (test maladie negatif) a 0.

Si nous considerons deux objets decrits par des variables asymetriques, la correspondance de deux 1s(correspondance positive) sera considere comme etant plus importante que celle entre deux 0s (correspondancenegative). Le calcul de la dissimilarite binaire asymetrique ignore le nombre de correspondances negative etse fait comme suit :

d(i, j) =M10 +M01

M11 +M10 +M01(2.4)

2.3.2 Les variables categorielles

Une variable categorielle est une generalisation de la variable binaire,dans le sens ou le nombred’etats M peut etre superieur a deux (une variable decrivant des couleurs par exemple). Des lettres,des symboles ou un ensemble d’entiers (ne representant pas un ordre specifique) peuvent etre utilisespour representer les etats d’une variables categorielle. La dissimilarite entre deux objets i et j decrits par desvariables categorielles peut etre calculee en utilisant le ratio des inadequations :

d(i, j) =p−mp

(2.5)

ou m est le nombre d’adequations et p le nombre total de variables.

2.3.3 Les variables ordinales

Une variable ordinale discrete ressemble a une variable categorielle, excepte que les M etats de lavariable ordinale sont ordonnee dans une sequence qui a une signification. Les intervalles entres les pointsde l’echelle ont une signification (l’ampleur est importante) mais peuvent etre inegales.

– grades des enseignant-chercheurs (Assistant a Professeur)– niveaux d’education (primaire a universitaire)– stades de cancer (stade I, II, III, IV)

Une variable ordinale continue est une sorte d’ensemble de donnees continues d’une l’echelle inconnue ;ce qui veut dire que l’ordre des valeurs est importante mais leur ampleur ne l’est pas :

– le classement dans un sport particulier (i.e., or, argent, bronze)– Niveau de douleur (legere, moderee, severe)– Niveau de satisfaction (tres insatisfait, insatisfait, neutre, satisfait, tres satisfait)– Niveau d’accord (fortement en desaccord, en desaccord, neutre, d’accord, fortement d’accord)

Les valeurs d’une variable ordinale peuvent etre mappees en des rangs. Supposons qu’une variable ordinalef a Mf etats qui definissent une classement de 1, · · · ,Mf . Le traitement des variables ordinales est assezsimilaire a celui des Interval-scaled variables quand il s’agit de calculer la dissimilarite entre deux objets.Supposons que f est une variable parmi un ensemble de variables ordinales decrivant n objets. Le calcul dela dissimilarite relative a f inclut les etapes suivantes :

17

1. La valeur pour f du ieme objet est xif , et f a Mf etats ordonnes representant les rangs 1, · · · ,Mf .Remplacer xif par le rang correspondant rif ∈ {1, · · · ,Mf}.

2. Vu que chaque variable peut avoir un nombre d’etats differents, il est souvent necessaire de mapperl’etendue de chaque variable a l’intervalle [0.0, 1.0], de sorte que les variables aient le meme poids. Cetteoperation se fait en remplacant le rang rif par

zif =rif − 1

Mf − 1(2.6)

3. La dissimilarite peut ainsi etre calcule en utilisant une des distances s’appliquant aux Interval-scaledvariables (variables d’intervalle), avec zif representant la valeur de f du ieme objet.

2.3.4 Les variables d’intervalle (d’echelle)

Cette section presente les variables d’intervalles et leur standardisation. Elle decrit ensuite les mesures dedistances souvent utilisees pour calculer les dissimilarites des objets decrits par de telles variables.

1. Les variables intervalles sont similaires aux variables ordinales sauf que intervalle entre deuxcategories a toujours la meme valeur, la meme signification (Temperature en Celsius ou en Fah-renheit, Annee de naissance). La difference entre 100c et 110c est identique a celle entre 200c et 210c.

2. Le zero ne correspond pas l’absence de l’element. A 00c, il y a toujours une temperature. L’an 0 necorrespond pas au debut de l’univers.

3. L’addition et la soustraction peuvent etre definies sur des donnees de ce type.

4. La division et la multiplication ne sont pas applicable. En effet, le rapport entre deux temperaturesdonnees en Celsius n’est pas egale au rapport de ces deux meme temperatures donnees en Fahrenheit.

Mesure T en Celsius T en Fahrenheit1 10 502 11 52

– Pour pouvoir multiplier et diviser des temperatures, il faudrait utiliser comme unite le Kelvin quipossede un zero veritable.

Une variable d’intervalle est representee sur une echelle lineaire.– Lorsque des intervalles de longueur physiques egales sont representes sur une echelle lineaire, chaque

intervalle va englober la meme quantite de la variable quelque soit l’endroit ou se trouve l’intervalle[13].

– Par exemple, la distance physique entre 1 et 2 (une difference de 1) est la meme que la distance physiqueentre 99 et 100 (egalement une difference de 1) .

– Des exemples typiques sont la latitude, la longitude (p. ex., lors du clustering de maisons), et latemperature de l’eau.

Parmi les mesures applicables aux variables d’intervalles, nous trouvons : les mesures euclidiennes, cellede Manhattan et celle de Minkowski.

Apres la standardisation, ou sans standardisation dans certains cas, les dissimilarites (ou similarites) sontcalculees entre objets decrits par des interval-scaled variables en utilisant la distance entre chaque paired’objets. La mesure de distance la plus utilisee est la distance euclidienne, definie comme.

d(i, j) =√

(xi1 − xj1)2 + (xi2 − xj2)2 + · · ·+ (xip − xjp)2 (2.7)

ou i = (xi1, xi2, · · · , xip) et j = (xj1, xj2, · · · , xjp) sont deux objets de donnees de dimension n. Une autremetrique bien connue est la distance de Manhattan, defini comme :

d(i, j) = |xi1 − xj1|+ |xi2 − xj2|+ · · ·+ |xip − xjp| (2.8)

Aussi bien la distance euclidienne que la distance de Manhattan satisfont les exigences suivantes sur lesfonctions de distances :

18

1. d(i, j) ≥ 0 : la distance est un nombre non negatif.

2. d(i, i) = 0 : la distance d’un objet a lui meme est egale a 0.

3. d(i, j) = d(j, i) : la distance est une fonction symetrique.

4. d(i, j) ≤ d(i, h) + d(h, j) : aller directement de i a j dans l’espace n’est pas superieur a faire un detourn’importe quel autre objet h.

La distance de Minkowski est une generalisation des distances euclidienne et de manhattan. Elle est definiecomme suit :

d(i, j) = (|xi1 − xj1|q + |xi2 − xj2|q + · · ·+ |xip − xjp|q)1q (2.9)

ou p est un entier positif. Elle represente la distance euclidienne si q = 2 et la distance de manhattan si q=1. Dans le cas a chaque variable vous voulez assigner un poids, la distance euclidienne pondere se calculecomme suit.

d(i, j) =√w1(xi1 − xj1)2 + w2(xi2 − xj2)2 + · · ·+ wp(xip − xjp)2 (2.10)

La ponderation peut aussi etre applique aux distances de manhattan et de Minkowski.

2.3.5 Les variables de ratios ou de rapport.

Les variables de ratios sont des variables d’intervalles avec un zero naturel. Par exemple pour la duree d’untest, a 0, il n’y pas de temps.La multiplication et la division sont definies : un employe avec 50.000 dollarsl’annee gagne deux fois plus que celui avec 25.000 dollars l’annee. Une variable de ratio est une mesure positivesur une echelle nonlineaire (logarithmique ou exponentielle). Pour des intervalles d’une longueur physiqueegale qui sont marques sur une echelle non lineaire, le ratio entre la valeur superieure de l’intervalle et celleinferieure, est le meme d’un intervalle a l’autre [13, 23]. Si nous considerons une echelle logarithmique parexemple, la distance physique entre 1 et 10 (un ratio de 10 pour 1) est la meme que la distance physiqueentre 100 et 1000 (aussi un ratio de 10 pour 1). En effet, log(10) - log(1) = log(1000)-log(100). Il faudra noterque la distance qui separe 1 de 2, dans cette echelle est superieur a celle qui separer 2 de 3.

Un autre exemple d’echelle non lineaire est l’echelle exponentielle, qui suit approximativement la formulesuivante :

AeBt ou Ae−Bt (2.11)

ou A et B sont des constantes positives et t represente le temps. Les intervalles x-y et y-z ci dessous parexemple, seront represente sur l’echelle par les meme distance physique a cause de l’egalite des rapports :

y

x=AeB(tx+1)

AeB(tx)= eB (2.12)

z

y=AeB(tx+2)

AeB(tx+1)= eB (2.13)

Parmi les variables pouvant etre represente par des formules de ce type, nous pouvons citer cellesrepresentant l’evolution d’une population de bacteries ou la desintegration d’un element atomique par exemple[12]. Il y a trois methodes pour traiter les variables de rapport lors du calcul des dissimilarites.

19

1. Traiter les variables de ratio comme des variables d’intervalles. Ceci n’est souvent pas considere commeun bon choix car l’echelle peut etre distordue.

2. Appliquer une transformation logarithmique a la variable de ratio f ayant la valeur xif pour l’objet i enutilisant la formule yif = log(xif ). La valeur yif peut ainsi etre traite comme une variable d’intervalle.La transformation appliquee depend de la definition de la variable et de l’application (le probleme).

3. Traiter les xif comme des variables ordinales continus et considerer leurs rangs comme des valeurs d’unevariable d’echelle.

Exercice

Considerons les objets suivants qui sont decrit en utilisant une variable de rapport. Donner la matrice dedissimilarites, en utilisant l’option de transformation logarithmique avec le log a base 10.

Identifiant objet V-rapport1 4452 223 1644 1210

2.3.6 Les variables de types differents

Dans une base de donnees reelles, les objets peuvent etre cedrits par un des variables d’un seul types ou parun melanges de variables de types differents : binaire symetrique, binaire asymetrique, categorielle, ordinale,d’intervalle ou de rapport. Lorsque chaque type de variable est traite (clustre) separement, les resultatsobtenus auront peu de chance d’etre compatibles. La meilleur approche consiste a traiter toutes les variablesdans un processus de clustering unique. Cela implique de combiner les differents types de variables dans uneseule matrice de dissimilarite. Toutes les distances sont ramenees dans une meme echelle de l’intervalle [0.0,1.0]. Supposons un ensemble de donnees contenant p variable de types differents. La dissimilarite d(i, j) entredeux objets i et j est definie comme suit :

d(i, j) =

∑pf=1 δ

(f)ij d

(f)ij∑p

f=1 δ(f)ij

(2.14)

Ou l’indicateur δ(f)ij = 0 si (1) xif ou xjf est absent, ou (2) xif = xjf = 0 et f est une variable asymetrique

binaire ; dans le cas contraire,δ(f)ij = 1. La contribution de la variable f a la dis similarite entre i et j est d

(f)ij ,

calcule selon le type :

1. Si f est une variable d’intervalle, d(f)ij =

|xif−xjf |maxhxhf−minhxhf

, h parcourant l’ensemble des objets pour

lesquels la variable f est presente.

2. Si f est binaire ou categorielle, d(f)ij = 0 si xif = xjf ; sinon d

(f)ij = 1.

3. Si f est ordinale, calculer les rangs rif puis zif =rif−1Mf−1 , et traiter les zif comme une variable d’echelle

(Cf. section variables d’intervalle).

4. Si f est une variable de rapport– soit il faut appliquer une transformation logarithmique et traiter les donnees transformees comme

une variable d’echelle (Cf. item 1).– ou, traiter f comme une variable ordinale continue, calculer les rif et les zif et traiter les zif comme

une variable d’echelle (Cf. section variables d’intervalle).

Exercice

Considerons les objets suivants representes par une variable categorielle (test-1) et une variable ordinale(test-2). Donner la matrice de dissimilarite.

20

Id Test-1 Test-21 Code-A Excellent2 Code-B Passable3 Code-C Bien4 Code-A Excellent

2.3.7 Normalisation

L’unite de mesure utilise peut impacter l’analyse de cluster.

1. Par exemple, changer une unite de mesure de metres en pouces pour la taille, ou de kilogrammes a livrepour le poids, peut mener a une structure de structering tres differente.

2. En general, exprimer une variable dans des unites plus petites menera a echelle plus grande pour lavariable, et ainsi un effet plus large sur la structure resultante du clustering.

3. Pour eviter cette dependance au choix de l’unite de mesure, les donnees doivent etrestandardisees.

4. La standardisation a pour objet de donner a toutes les variables le meme poids. Cela est particulierementutile lorsque vous n’avez pas de connaissances a priori sur les donnees.

5. Cependant, dans certaines applications, peut intentionnellement vouloir donner a un ensemble de va-riables plus de poids plus que d’autres.– Par exemple, pour le clustering de candidats a une equipe de basketball, vous pouvez donner plus de

poids a la variable ”taille”.

Pour illustrer la dependance au choix de l’unite de mesure, considerons l’exemple dans lequel nous avons4 personnes decrites par les attributs age (abscisse) et taille (ordonnee).

– dans le premier cas la taille est represente en cm– dans le second cas la taille est represente en pied

21

22

Pour standardiser des mesures, on peut convertir les mesures de depart dans des variables sans unite.Etant donne des mesures pour une variable f, cela peut etre realise comme suit :

1. L’ecart absolu moyen (mean absolute deviation) : il s’agit de la moyenne des ecarts en valeur absolueentre les observations et leur moyenne, soit

sf =1

n(|x1f −mf |+ |x2f −mf |+ · · ·+ |xnf −mf |) (2.15)

Ou x1f , · · · , xnf sont les n mesures sur f, et mf est la moyenne de f, c’est-a-dire, mf = 1n (x1f + x2f +

· · ·+ xnf ).

2. Calculer la mesure standardise ou z-score :

zif =xif −mf

sf(2.16)

L’ecart absolu moyen, sf , est plus robuste aux valeurs aberrantes que l’ecart-type (standard deviation), σf .Dans le calcul de l’ecart absolu moyen, la deviation de la moyenne (i.e., (|xif −mf |) n’est pas eleve au carre ;par consequent, l’effet des valeurs aberrantes est quelque peu reduit.

– Supposons que la moyenne de la variable revenue est de 50.000 euros et son ecart-type 15.000 euros.Avec, la normalisation par z-score, la valeur 70.000 euros est transformee en 70000−50000

15000 = 1.33La standardisation peut etre ou peut ne pas etre utile pour une application particuliere. Partant, la decision

de normaliser et choix de facon de normaliser doit etre laisse a l’utilisateur. Un attribut est normalise parmise a l’echelle de ses valeurs afin que ces dernieres tombent dans une plage reduite specifique, telle quel’intervalle 0 a 1 par exemple. Il existe des methodes de normalisation de donnees autre que le z-score :

– Normalisation Min-max. Supposons que minA et maxA sont les valeurs minimale et maximale d’unattribut A. La normalisation Min-max mappe une valeur, v, de A vers v

′se situant dans l’intervalle

[nouveau minA, nouveau maxA], en calculant :

v′

=v −minA

maxA −minA(nouveau maxA − nouveau minA) + nouveau minA (2.17)

La normalisation Min-max va rencontrer une erreur ”hors-limite” lorsqu’un nouveau cas donne enentree de la normalisation se situe en dehors de l’intervalle des valeurs de depart de A. Supposons queles valeurs minimale et maximale de l’attribut revenue soient 10.000 et 90.000 euros respectivement.Nous voulons standardiser l’attribut revenu dans l’intervalle [0.0, 1.0]. Par la normalisation Min-max,une valeur de revue de 70.000 euros sera transforme a 70.000−10.000

90.000−10.000 (1.0− 0) + 0 = 0.75– Normalisation par mise en decimal. La normalisation par mise en decimal consiste a deplace la virgule

dans les valeurs de l’attribut A. Le nombre de decalages du point decimal depend maximum de A envaleur absolue. Une valeur v de A est normalise en v

′en faisant

v′

=v

10j(2.18)

ou j est l’entier le plus petit tel que Max(|v′ |) < 1.Supposons que les valeurs enregistrees pour A vont de - 978 a 915. Le maximum en valeur absolue pourA est donc 978. Pour normaliser par mise en decimal, nous devons diviser chaque valeur par 1.000 (i.e.,j = 3) de sorte que - 978 est normalise en - 0.978 et 915 en 0.915.

2.4 Methodes de partitionnement

Beaucoup d’algorithmes de clustering existent dans la litterature. Il est difficile de fournir une categorisationnette et precise de ces methodes car ces categories peuvent se chevaucher, de sorte qu’une methode peut avoirdes caracteristiques de plusieurs categories. Neanmoins, il est utile de presenter une vue relativement organiseedes differentes methodes de clustering.

Etant donne D, un ensemble de n objets, et k, le nombre de clusters a former, un algorithme de partition-nement organise les objets en k partitions (k � n), ou chaque partition represente un cluster. Les clusters sont

23

formes pour optimiser un critere objectif de partitionnement, tel qu’une fonction de dissimilarite base sur unedistance, de telle maniere que les objets dans un meme cluster sont similaires alors que les objets de clusterdifferents sont dissimilaires en termes d’attributs de l’ensemble de donnees. Les methodes de partitionnementles plus connues et les plus utilisees sont k-means, k-medoids, et leurs variantes.

2.4.1 La methode k-means

L’algorithme k-means prend en argument le parameter d’entre k, et partitionne un ensemble de n objets enk clusters, de telle sorte que la similarite intracluster resultante soit forte mais que la similarite interclustersoit faible. La similarite dans un cluster est mesuree en considerant la valeur moyene des objets dans lecluster, celle-ci pouvant etre vue comme le center de gravite du cluster. L’algorithme k-means fonctionne dela maniere suivante.

– D’abord, il selectionne aleatoirement k objets, chacun d’eux representant initialement lecentre d’un cluster.

– Pour chaque objet restant, l’objet est assigne au cluster dont il est le plus similaire sur la base de ladistance entre l’objet et la moyenne du cluster.

– Elle calcule ensuite la nouvelle moyenne pour chaque cluster.Le processus boucle jusqu’a ce que la fonction de critere converge. Generalement, le critere de carre des

erreurs est utilise, elle est definie comme :

E =

k∑i=1

∑p εCi

|p − mi|2 (2.19)

E est la somme des carres des erreurs pour tous les objets dans l’ensemble de donnees. p est un point dansl’espace representant un objet donne ; mi est la moyenne du cluster Ci (p et mi sont multidimensionnels).Clustering par la methode de partitionnement k-means. Supposons que nous avons un ensembled’objets localises dans l’espace comme presente sur la figure a suivante.

– Soit k = 3 ; c’est-a-dire, l’utilisateur voudrait partitionner les objets en trois clusters.– Conformement l’algorithme, nous choisissons arbitrairement trois objets comme les centres des trois

clusters initiaux, ou les centres sont marques par un � + �.– Chaque objet est distribue a un cluster selon le centre du cluster dont il est le plus proche. Une telle

distribution forme de silhouettes encerclees par des courbes en pointilles comme le montre la figure a.– Ensuite, les centres des clusters sont mis a jour. C’est-a-dire que la valeur moyenne de chaque cluster

est recalculee sur la base des objets dans le cluster.– En utilisant les nouveaux centres de clusters, les objets sont redistribues dans les clusters sur la base

du centre dont ils sont le plus proches.– Une telle redistribution forme de nouvelles silhouettes encerclees par des courbes en pointilles, comme

le montre la partie b de a figure.– Le processus boucle, et produit a la fin la figure c. Ce processus consistant a reassigner iterativement

les objets aux clusters afin d’ameliorer le partitionnement est appele reallocation iterative.– Si, eventuellement, aucune redistribution n’a lieu, le processus s’arrete. Les clusters resultants sont

retournes par le processus de clustering.

24

Algorithme : l’algorithme de partitionnement k-means, dans lequel chaque centre de cluster est representepar la valeur moyenne des objets dans le cluster.

– Entree

1. k : le nombre de clsuters,

2. D : un ensemble de donnees contenant n objets.

– Sortie : un ensemble de k clusters– Methode

1. Choisir arbitrairement k objets de D comme centre des clusters initiaux ;

2. Repeter

(a) (re)assigner chaque objet au cluster auquel l’objet est le plus similaire, sur la base de la valeurmoyenne des objets dans le cluster ;

(b) Mettre a jour les moyennes de clsuters,

3. Jusqu’a ce qu’il n’y ait plus de changement

La figure ci-dessous presente une autre variante de l’algorithme et illustre bien la boucle calcul des centres-reaffectation.

L’algorithme tente de determiner k partitions qui minimisent la fonction de carrees des erreurs.– Il fonctionne bien lorsque les clusters sont des nuages compacts qui sont plutot bien separes les uns des

autres.– Sur la base de sa complexite algorithmique, la methode k-means peut etre consideree comme relati-

vement scalable et efficace dans le traitement de larges ensembles de donnees (Han, Kamber et al.2005).

– Cependant, la methode k-means, peut etre appliquee seulement lorsque la moyenne d’un cluster estdefinie. Cela peut ne pas etre le cas dans certaines applications, par exemple lorsque des donnees avecdes attributs categoriels sont impliquees.

– La necessite pour les utilisateurs de specifier k, le nombre de cluster, a l’avance peut etre vu comme undesavantage.

– La methode k-means n’est pas tres appropriee pour decouvrir des clusters de forme non convexe et desclsuters avec des tailles tres differentes.

– De plus, elle est sensible au bruit et aux donnees (points) aberrantes car un petit nombre de tellesdonnees peut considerablement la valeur moyenne.

25

Il existe quelques variantes de la methode k-means.– Elles differents dans la selection des k moyennes initiales, dans le calcul des dissimilarites, et dans les

strategies de calcul des moyennes des clusters.– Une strategie interessante qui produit souvent de bon resultats consiste a appliquer d’abord un

algorithme d’agglomeration hierarchique, qui determine le nombre de clusters et trouve un clus-tering initial, et ensuite utiliser la reallocation iterative pour ameliorer le clustering.

– Une autre variante du k-means est la methode k-modes, qui etend le paradigme k-means pourclustrer des donnees categorielles en remplacant les moyennes des clsuters par des modes,en utilisant de nouvelles mesures de dissimilarite pour traiter les objets categoriels et une methodebasee sur les frequences pour mettre a jour les modes des clusters.

1. Pour chaque cluster, le centroid sera un objet (virtuel) prenant comme valeur pourchaque question, la reponse la plus frequente a l’interieur du cluster.

2. Pour chaque point et chaque centroid, la distance peut etre definie par exemple comme etant lenombre de questions sur lesquels il y a desaccord.

– Les methodes k-means et k-modes peuvent etre integrees pour clustrer des donnees mixtes contenantdes valeurs numeriques et categorielles.

– L’algorithme EM (Expectation-Maximization) etend le paradigme k-means d’une maniere differente.Tandis que k–means assigne chaque objet a un cluster, dans EM chaque objet est assigne a un clusterselon un poids representant sa probabilite d’appartenance. En d’autres termes, il n’y a pas defrontieres strictes entre clusters. Pour cette raison, les moyennes sont calculees sur la base de mesuresponderees.

2.4.2 Technique basee sur la representativite : la methode k-medoids

L’algorithme k-means est sensible aux valeurs aberrantes car un objet avec une valeur extremement grandepeut distordre de maniere considerable la distribution des donnees. Cet effet est particulierement exacerbe parla fonction de carre des erreurs. Comment l’algorithme doit etre modifie pour diminuer cette sensibilite. Aulieu de prendre la valeur moyenne des objets dans le cluster comme reference, on peut choisir des objets pourrepresenter les clusters, en utilisant un objet representatif par cluster. Chacun des objets restant est clustreavec l’objet representatif dont il est le plus similaire. La methode de partitionnement est alors appliquee surla base du principe de minisation de la somme des dissimilarites entre chaque objet et le point de referencequi lui correspond. Un critere d’erreur absolue est utilise, il est definit comme suit :

E =

k∑j=1

∑p εCj

|p − oj | (2.20)

E est la somme des erreurs absolues pour tous les objets de l’ensemble de donnees ; p est un pointrepresentant un objet dans le cluster Cj ; et oj est l’objet representatif de Cj . En general, l’algorithme bouclejusqu’a ce que, eventuellement, chaque objet representatif soit le medoid, ou l’objet le plus central, de soncluster.

– Les objets representatifs initiaux sont choisis arbitrairement.– Le processus iteratif de remplacement des objets representatifs par des objets non representatifs continue

tant que la qualite du clustering resultant est amelioree.– Cette qualite est estimee en utilisant une fonction de cout qui mesure la moyenne de dissimilarites

entre un objet et l’objet representatif de son cluster 2.Pour determiner si un objet non representatif, orandom, est bon pour le remplacement d’un objetrepresentatif, oj , les quatre cas suivants sont examines pour chacun des objets non representatifs, p, commele montre la figure suivante :

– Cas 1 : p appartient a l’objet representatif, oj . si oj est remplace par orandom comme objet representatifet p est plus proche d’un autre objet representatif, oi, i 6= j, alors p est reassigne a oi.

2. A medoid can be defined as the object of a cluster, whose average dissimilarity to all the objects in the cluster is minimali.e. it is a most centrally located point in the cluster.

26

– Cas 2 : p appartient a l’objet representatif, oj . si oj est remplace par orandom comme objet representatifet p est plus proche de orandom, alors p est reassigne a orandom.

– Cas 3 : p appartient a l’objet representatif oi, i 6= j. si oj est remplace par orandom en tant qu’objetrepresentatif et p est toujours plus proche de oi , alors l’assignement ne change pas.

– Cas 4 : p appartient a l’objet representatif oi, i 6= j. si oj est remplace par orandom comme objetrepresentatif et p est plus proche de orandom , donc p est reassigne a orandom .

En resume, il faut considerer trois niveaux dans l’application la methode k-medoids :

1. le niveau de la mesure globale de qualite du clustering (i.e. d’erreur absolue) qui concerne tous lesclusters et qui permet de decider de continuer ou d’arreter le clustering.

2. le second evalue a chaque etape la necessite de changer d’objet representatif pour cluster donne sur labase de la la moyenne de dissimilarites. Ce remplacement doit etre suivi de la reaffectation des objets,reaffectation qui n’entraine pas necessairement une amelioration du critere global d’erreur absolue.

3. le re assignement (affectation) d’un objet a un cluster.

2.5 Methodes hierarchiques

Une methode de clustering hierarchique fonctionne en regroupant les objets de donnees dans un arbre declusters. Les methodes de clustering hierarchique peuvent etre classifiees en soit agglomerative ou divisive,dependant du fait que la decomposition hierarchique est construite d’une maniere bottom-up (merging) outop-down (splitting). La qualite d’une methode de clustering hierarchique pure souffre de son incapacite derealiser un ajustement une fois qu’une decision de merge ou de split a ete executee. Cela veut dire que si unmerge ou un split particulier s’avere etre un mauvais choix, la methode ne peut pas revenir en arriere et lecorriger. Des etudes recentes ont souligne l’interet d’integrer l’agglomeration hierarchique avec les methodesde reallocation iterative.

– Methodes agglomeratives. Cette strategie bottom-up commence par placer chaque object dansson cluster propre et agglomere ces clusters atomique en des clusters de plus en plus larges, jusqu’atous les objets soient dans un cluster unique ou jusqu’a ce que certaines conditions terminales soientsatisfaites. La figure ci-apres, montre l’application de AGNES (AGglomerative NESting), une methodeagglomerative, a un jeu de donnees de cinq objets {a, b, c, d, e} . Initialement, AGNES place chaque objetdans un cluster et utiliser l’approche appelee single-linkage, approche dans laquelle chaque cluster estrepresente par tous les objets qu’il contient, et la similarite entre deux clusters est mesuree par lasimilarites de la paire d’objets les plus proches (chaque point appartenant a un des clusters). Un mergeeffectue entre les clusters C1 et C2 si un point de C1 et un point de C2 forment la distance euclidienneminimale entre deux objets de clusters differents. Le processus de merging continue jusqu’a la formationd’un cluster unique.

27

– Methodes divisives. Cette strategie top-down realise l’inverse des methodes agglomeratives de clus-tering en commencant par rassembler tous les objets dans un unique cluster. Elle subdivise le clusteren de plus en plus petites parcelles, jusqu’a ce que chaque objet forme son propre cluster ou qu’unecertaines conditions de terminaison soient satisfaites (e.g.le nombre desire de clusters a ete obtenu oule diametre de chaque cluster ne depasse pas un certain seuil). DIANA (DIvisive ANAlysis) est unemethode divisive applicable au meme jeu de donnees. Les divisions du cluster initial sont faites selonun principe tel que le maximum de la distance euclidienne entre deux voisins les proches d’un cluster.Le processus de division se poursuit jusqu’a ce que eventuellement, chaque cluster ne contienne qu’unobjet.

Un arbre appelle dendrogram est souvent utilise pour representer le processus de clustering hierarchique.L’axe niveau represente les differentes sequences du clustering. L’axe similarite represente le niveau de lasimilarite entre les clusters. Par exemple, la similarite entre les clusters {c} et {d, e} est de 0.4.

Differentes metriques sont definies pour mesurer la distances entre deux clusters :

Distance Minimum : dmin(Ci, Cj) = minp ε Ci,p′ ε Cj

|p− p′| (2.21)

Distance Maximum : dmax(Ci, Cj) = maxp ε Ci,p′ ε Cj

|p− p′| (2.22)

Distance des moyennes : dmean(Ci, Cj) = |mi −mj | (2.23)

Distance moyenne : davg(Ci, Cj) =1

ninj

∑p ε Ci

∑p′ ε Cj

|p− p′| (2.24)

28

|p− p′ | represente la distance entre deux objets p et p′; mi est la moyenne du cluster Ci et ni est le nombre

d’objets dans Ci. Ces mesures peuvent etre utiliser pour progresser dans le processus de clustering mais ellespeuvent etre comparees a un seuil donne pour decider par exemple d’arreter le clustering.

2.6 Exigences des methodes de clustering

En datamining, les themes actifs de la recherche se concentrent sur la scalabilite des methodes de cluste-ring, l’efficacite des methodes pour le clustering de formes et de types de donnees complexes, des techniquesde clustering grand dimension, et des methodes de clustering de donnees numeriques et categorielles mixeesdans des bases de donnees larges. Le clustering est un domaine de la recherche ou il y a beaucoup de chal-lenge et dans lequel les applications potentielles posent leurs propres exigences. Les elements suivants sontdes exigences typiques du clustering en datamining :

1. Scalabilite : beaucoup d’algorithmes de clustering fonctionnent bien sur des petits ensembles dedonnees contenant moins de plusieurs centaines d’objets ; cependant, les grandes bases de donneespeuvent contenir des millions d’objets. Le clustering sur un echantillon d’un large ensemble de donneespeut conduire a des resultats biaises. Des algorithmes de clustering hautement scalables sont necessaires.

2. Capacite a traiter different types d’attributs : beaucoup d’algorithmes sont concus pour clustrerdes donnees numeriques (interval-based data). Cependant, les applications peuvent requerir de clustrerd’autres types de donnees, tels que les donnees binaires, categorielle (nominales), et ordinales, ou unmelange de ces types.

3. Decouverte de clusters avec des formes arbitraires : beaucoup d’algorithmes de clusteringdeterminent les clusters sur la base de mesures de distances euclidiennes ou de Manhattan. Les al-gorithmes bases sur de telles mesures de distances ont tendance a trouver des clusters spheriques avecdes tailles et des densites similaires.

Cependant, les clusters peuvent etre de n’importe quelle forme.– Il est important de developper des algorithmes permettant de detecter des clusters de formes quel-

conques.– Par exemple, pour le Density-based Clustering, l’idee de base est que les clusters sont les regions

denses de l’espace de donnees, separes par des regions ou la densite d’objets est moins importante.

29

4. Exigence minimale de connaissances du domaine pour determiner les parametres d’entres :un grand nombre d’algorithmes de clustering exigent que l’utilisateur fournissent certains parametres al’analyse de clusters (le nombre de cluster desires par exemple). Les resultats du clustering peuventetre assez sensibles aux parametres d’entree. Les parametres sont souvent difficiles a determiner,specialement pour des ensembles de donnees contenant des objets de dimensions eleves. Cela ne faitpas que charger (de travail) les utilisateurs, mais ca rend egalement difficile le controle de la qualite duclustering.

5. Capacite a traiter des donnees contenant du bruit : la plupart des bases de donnees du monde reelcontiennent des donnees aberrantes, absentes, inconnues ou erronees. Certains algorithmes de clusteringsont sensibles a de telles donnees et peuvent conduire a des clusters de faible qualite.

30

6. Clustering incremental et non sensibilite a l’ordre d’entree des enregistrements : Il estimportant de developper des algorithmes incrementaux et des algorithmes qui ne sont pas sensibles al’ordre d’entre.– certains algorithmes de clustering ne permettent pas d’incorporer des donnees nouvellement

inserees (i.e., mise a jour des bases de donnees) dans des structures de clustering existant et, doiventdeterminer un nouveau clustering a partir de zero.

– Certains algorithmes de clustering sont sensibles a l’ordre d’entree des donnees. C’est-a-dire, etantdonne un ensemble d’objets, de tels algorithmes peuvent retourner des clusterings radicalementdifferents dependant de l’ordre de presentation des objets d’entre.

7. Dimension eleve : une base de donnees ou un entrepot de donnees peuvent contenir plusieurs di-mensions ou attributs. Beaucoup d’algorithmes de clustering sont bon dans le traitement des donneesa faible dimension, impliquant deux a trois dimensions. Trouver des clusters d’objets de donnees dansun espace de dimension eleve est difficile, specialement si on considere que ces donnees peuvent etreclairsemees et hautement asymetriques.

8. Clustering base sur des contraintes : les applications du monde reel peuvent necessiter de clustrersous des divers types de contraintes. Supposons que vous devez choisir des emplacements pour unnombre donne de guichets automatiques de banque dans une ville. Pour decider sur cela, il faut clustrerles menages en tenant compte des rivieres et du reseau autoroutier de la ville, et le type et le nombrede clients par cluster. Une tache difficile consiste en l’identification de groupes de donnees qui formentde bons clusters en respectant les contraintes specifiees. L’exemple ci-apres montre la prise en comptede contraintes physiques (obstacles et ponts) dans le cadre d’un Density-Based Clustering.

31

L’exemple ci-apres permet d’abord d’illustrer la decouverte de clusters avec des formes arbitraires :les clusters n’ont pas une forme spherique. Cet exemple rentre dans la cadre de l’application d’unalgorithme de clustering hierarchique. Considerons maintenant la contrainte de connectivite suivante :seul des clusters adjacents (sur la structure donnee a priori) peuvent etre fusionner.

(a) Dans le cas de non prise en compte de la contraintes, les clusters sont construits seulement sur labase de la distances entre les clusters de l’iteration precedente.

32

(b) Dans le cas ou la contrainte est prise en compte, le resultat du clustering depend de la distancesentre les clusters de l’iteration precedente dans le respect le contrainte.

9. Interpretabilite et utilisabilite : les utilisateurs attendent du clustering des resultats interpretables,comprehensibles et utilisables. En effet, le clustering peut etre lie a des interpretations et des applicationssemantiques specifiques. Il est important d’etudier comment un objectif d’application peut influencerla selection des caracteristiques et methodes de clustering.

2.7 TP : methode k-means sur des donnees de pluviometrie

Ce tp concerne l’une des methodes de partitionnement en l’occurrence la methode K-means. Il sera realiseavec un ensemble de donnees qui est un echantillon des donnees pluviales dans les regions du senegal (fichier� exemple1.txt �).

33

Le code suivant permet d’etudier le fonctionnement du clustering avec la methode k means du package cluster.En principe chaque appel de la methode k means realise des iterations et donne une solution. Les iterationsde la fonction kmeans n’etant pas affichees, nous allons utiliser une boucle qui permettra de simuler cesiterations. L’idee est d’utiliser un critere de nombre d’iteration maximales pour forcer l’arret (parfois avantla stabilisation des clusters qui est le critere principal) a chaque appel de la fonction.

34

Pour calculer la dissimilarite nous avons utilise la fonction � dist � de R qui permet de nous donner lamatrice de dissimilarite. Les solutions successives sont affichees la zone de dessin avec la fonction clusplot.

35

Le resultats des differents appels de la fonction data.frame est d’ajouter les correspondances obervations-clusters issues des differents solutions obetnues.

Expliquer la difference entre le code ci-dessous et le precedant.

36

Une convergence est notee dans le second cas, expliquer son origine en comparaison avec le resultatprecedant.

37

2.8 TP2 : methode k-means sur des donnees de la base iris

Ce exercice part du meme principe que le second exemple du TP sur les donnees de pluviometrie. Il utilisedes donnees differentes cependant.

38

Expliquer la difference entre le code ci-dessous et le precedant.

39

Verifier que les deux versions de code donnent le meme resultat. Dire l’iteration a partir de laquelle laconvergence est obtenu.

40

2.9 Validation des clusters

Parmi les differents aspects qui sont pris en compte dans la validation de clusters, nous pouvons citer :

1. Comparer les resultats d’une analyse de clusters a des resultats externes connus (i.e. les labels -classes-donnees en externe)– Evaluation de performance.

2. Evaluer dans quelle mesure les resultats d’une analyse de clusters correspondent aux donnees sansreference a de l’information externe– Utiliser uniquement les donnees

3. Comparer les resultats de de deux differentes analyses de clusters pour determiner la meilleur

– Selectionner un bon algorithme pour un jeu de donnees.

4. Selectionner les valeurs de certains parametres pour un algorithme de clustering :– Determiner le nombre ”correct” de clusters

5. Selectionner une bonne mesure de distance pour des donnees [15]

En general, les indices de validite de clustering (cluster validity index) son definis par combinaison desproprietes de compacite et de separation :

– La compacite (compactness) mesure proximite des elements du cluster. Une mesure courante de com-pacite est la variance

– La separation (separability) indique comment deux clusters sont distincts sont en calculant la distanceentre eux. La distance entre les objets representatifs de deux clusters en est un bon exemple.

Les categories d’indices definies dans la litteratures sont les suivantes [21, 1]– les indices internes. Le premier type est base sur le calcul de proprietes de la une partition resultante

tels que la compacite ou la separation. Cette approche est appelee validation interne car elle ne necessitepas des information additionnelles sur les donnees.

– les indices relatifs. La seconde approche est basee sur des comparaisons de partitions generee par lememe algorithme avec differents parametres, ou differents sous-ensembles de donnees. Cette validationrelative est assimilable ou proche de la validation interne dans la mesure ou elle n’inclut pas non plusdes information additionnelles sur les donnees [8, 1].

41

– les indices externes. La troisieme approche est appelee validation externe et est basee sur la comparaisonde partitions, les partitions a comparer etant celle generee par l’algorithme de clustering et une partitiondonnee des observations.

2.9.1 Les indices externes

Les indices de validation externes evaluent comment la partition (le clustering) obtenue est en adequationavec la variable de classe des donnees. Parmi les indices externes, nous pouvons citer [21, 1] :

1. F-Measure

2. Purity

3. RAND statistics

4. Kullback-Leibler

5. Entropy

6. Nmimeasure

F-Measure

Considerons un ensemble d’objets D organise selon une classification C∗ = {C∗1 , · · · , C∗l } et un clusteringC = {C1, · · · , Ck} des ces objets.

42

La F-mesure Fi,j d’un clsuter j est calcule par rapport a la classe i en utilisant :

– le rappel (recall) de clsuter j par rapport a la classeCj∩C∗iC∗i

– le rappel cluster j classe i ci-dessous est de 1010

– la precision (precision) du clsuter j par rapport a la classeCj∩C∗iCj

– la precision cluster j classe i ci-dessous est de 1014

Fi,j mesure la qualite de lu cluster j dans la description de la classe naturelle i [10]. La formule de calculde la F-mesure est la suivante [10, 1] :

Fα =1 + α

1precision + α

recall

(2.25)

La valeur attribue a α permet

1. soit d’equilibrer les poids du rappel et de la precision (α = 1)

2. soit de favoriser la precision par rapport au rappel precision (0 � α ≺ 1)

3. soit de favoriser le rappel par rapport a la precision (α � 1)

La qualite du clustering resultant C est calcule soit par la micro-moyenne [1] ou la macro-moyenne [10, 1].La micro-moyenne F-mesure de 〈D,C,C∗〉 [1, 4, 10]

F =

l∑i=1

|C∗i ||D|

. maxj=1,··· ,k

{Fi,j} (2.26)

La micro-moyenne est la somme ponderee des maximum Fi,j pour chaque classe [4, 10]. Selon , la micro-moyenne est toujours comprise entre 0 et 1. Une valeur plus elevee de cet mesure indique une similariteplus importante entre deux clustering, celui genere a partir des l’echantillon de donnees (1) et les donneesmasquees (2) (i.e. une meilleur prservation de la qualite du clustering) [4].

43

La micro-moyenne est dominee par les classes de grandes tailles.Pour avoir une idee de l’effet desclasses de petites tailles, la macro-moyenne peut etre utilisee [5]. La macro-moyenne F-mesure de 〈D,C,C∗〉donne une poids identique aux differentes classes [1]

F =1

l

l∑i=1

maxj=1,··· ,k

{Fi,j} (2.27)

2.9.2 Les indices internes (Projet 2015)

Silhouette width

La silhouette width est la moyenne des valeurs silhouette pour les observations. La valeur silhouette mesurele degre de confiance dans l’affectation une observation specifique lors d’un clustering. Les observations bienclustrees vont avoir une valeur proche de 1, et celles mal clustrees vont avoir une valeur proche de -1. Pourune observation, valeur silhouette est definie comme :

– Ou ai est la distance moyenne entre i et les observations du meme cluster.– et bi est la distance moyenne entre i et les observations du cluster voisin le plus proche.

– C(i) est le cluster contenant l’observation i– dist(i ; j) est la distance(e.g. Euclidean, Manhattan) entre les observations i et j,– et n(C) est la cardinalite du cluster C.La silhouette width est donc comprise dans l’intervalle [-1 ; 1], et doit etre maximisee.

Dunn index

L’index Dunn est un rapport entre la plus petite distance entre deux observations n’etant pas dans lememe cluster et la distance intra-cluster la plus grande. Il est calcule comme suit :

– diam(Cm) est la distance maximale entre les observations du cluster Cm.– l’index Dunn a une valeur comprise entre 0 et 1.– il doit etre maximise

44

2.9.3 Les indices relatifs

45

2.9.4 Les indices relatifs (Projet)

Dans le cadre de ce projet, il est demande de presenter les elements suivants :

1. Decrire le fonctionnement general des indices relatifs.

2. Donner les elements generaux de comparaison avec les autres categories d’indices.

3. Lister quelques indices relatifs.

4. Choisir un indice relatif que vous presentez plus en details.

46

Bibliographie

[1] Cluster Evaluation.

[2] Applied Multilevel Analysis. TT Publikaties, Amsterdam, 1995.

[3] Missing Data : A Gentle Introduction. The Guilford Press, 2007.

[4] Introduction to Privacy-Preserving Data Publishing Concepts and Techniques. Chapman and Hall-CRC,2010.

[5] Current Challenges in Patent Information Retrieval, chapter Phrase-Based Document Categorization.Springer-Verlag, 2011.

[6] Richard Adderley, Michael Townsley, and John Bond. Use of data mining techniques to model crimescene investigator performance. Knowl.-Based Syst., 2007.

[7] P. Adriaans and D. Zantinge. Data mining. Addison-Wesley, 1996.

[8] Marcel Brun, Chao Sima, Jianping Hua, James Lowey, Brent Carroll, Edward Suh, and Edward R.Dougherty. Model-based evaluation of clustering validation measures. Pattern Recognitio, 2007.

[9] Pete Chapman and Julian Clinton. Crisp-dm 1.0. Technical report, SPSS Inc, 2000.

[10] Benjamin C.M. Fung, Ke Wang, and Martin Ester. Hierarchical document clustering using frequentitemsets. In SIAM INTERNATIONAL CONFERENCE ON DATA MINING 2003 (SDM 2003).

[11] Swapna Gokhale and Michael R. Lyu. Regression tree modeling for the prediction of software quality.In In Proc. of ISSAT’97, 1997.

[12] Jiawei Han and Micheline Kamber. Data Mining : Concepts and Techniques. Morgan Kaufmann Seriesin Data Management Systems, 2005.

[13] Robert L. Harris. Information Graphics : A Comprehensive Illustrated Reference. Oxford UniversityPress, 1999.

[14] Eric W. Holman. Evolutionary and psychological effects in pre-evolutionary classifications. Journal ofClassification, 2(1) :29–39, 1985.

[15] Pablo A Jaskowiak, Ricardo JGB Campello, and Ivan G Costa. On the selection of appropriate distancesfor gene expression data clustering. In The Twelfth Asia Pacific Bioinformatics Conference.

[16] Leonard Kaufman and Peter J. Rousseeuw. Finding Groups in Data : An Introduction to ClusterAnalysis. Wiley Series in Probability and Statistics Series, 1990.

[17] V. Milutinovic and F. Patricell. E-Business and E-Challenges. IOS Press, 2002.

[18] Djasrabe NAGUINGAR. Amelioration du processus de fouille de donnees par l’ingenierie logicielle.Master’s thesis, UNIVERSITE CHEIKH ANTA DIOP, 2013.

47

[19] Oumy Niass, Aissatou Toure, Abdou Ka Diongue, and Dabye Aly Souleymane. Gestion des donneesmanquantes dans les etudes sero-epidemiologiques. In conference internationale ”Statistique appliqueepour le developpement en Afrique” (SADA’13).

[20] Stephane Paquin. Comparaison de quatre methodes pour le traitement des donnees manquantes au seind’un modele multiniveau parametrique visant l’estimation de l’effet d’une intervention. Master’s thesis,Universite de Montreal, 2010.

[21] Erendira Rendon, Itzel Abundez, Alejandra Arizmendi, and Elvia M. Quiroz. Internal versus externalcluster validation indexes. International Journal of Computer and Communication, 2011.

[22] S. Tuffery. Data mining et statistique decisionnelle : l’intelligence des donnees. Editions Ophrys, 2007.

[23] Jeffrey T. Walker. Statistics In Criminal Justice : Analysis and Interpretation. Aspen Publishers, Inc.,1999.

48