Clustering par méthodes hiérarchiques et non-hierarchiques : analyse des données numériques

Page 1 sur 55Lecteur de document UniversityLib

Clustering par méthodes hiérarchiques et non-hierarchiques : analyse des données numériques

Programming, Math, etc. · textbook

Voir tous les documents en intelligence artificielle et données

Chap 7

Classification

(clustering)

1

Opérer des regroupements en classes homogènes d’un ensemble d’individus.

Les données se présentent en général sous la forme d’un tableau individus variables.

2

3

4

1-Méthodes NON HIERARCHIQUES:

Partition en k classes Exemples : Centres mobiles Nuées dynamiques

Avantages : Permettent la classification d’ensembles volumineux.

Inconvénients : On impose au départ le nombre de classes.

5

2-Méthodes HIERARCHIQUES

6

Apprentissage Supervisé vs non supervisé

 Apprentissage Supervisé (classification)

 Supervision: les données d’apprentissage

(observations) sont accompagnés par les labels indiquant leurs classes

 Les nouvelles données sont classifiées en se basant

sur le training set

 Apprentissage non supervisé (regroupement)

 Le label de classe des éléments observés (training

set) n’est pas connu

 Le but est de déceler l’existence de classes ou

groupes dans les données

8

Un bon clustering ?

 Lorsqu’on garantit:

 Une grande similarité within

 Une faible similarité between

 La qualité d’un regroupement dépend donc de la mesure de similarité utilisée par la méthode et de son implémentation

9

Structures de données

 Matrice de données

 Matrice de similarité

10

npx...nfx...n1x...............ipx...ifx...i1x...............1px...1fx...11x0...)2,()1,(:::)2,3()...ndnd0dd(3,10d(2,1)0Métriques d’un clustering

 La similarité est évaluée par une mesure de

distance

 Les distances diffèrent selon le type de

variables: intervalles, qualitatives (catégorielles), binaires ou ordinales

11

1-Intervalle (numériques)

 Rendre la variable centrée réduite:

Calculer la mesure standardisée (z-score)

12

ffififsmx zExemple

13

AgeSalairePersonne15011000Personne27011100Personne36011122Personne460110745SAge60MAge148 11074S MsalairesalaireAgeSalairePersonne1-2-0,5Personne220,175Personne300,324Personne402Similarité entre objets

 Ex: la distance de Minkowski :

où i= (xi1, xi2, …, xip) et j= (xj1, xj2, …, xjp) sont deux

objets p-dimensionnels et qun entier positif

 Si q= 1, d est la distance de Manhattan

14

qqppqqjxixjxixjxixjid)||...|||(|),(2211||...||||),(2211ppjxixjxixjxixjidSimilarité entre objets(I)

 Si q= 2, d est la distance Euclidienne:

 Propriétés

 d(i,j) 0

 d(i,i)= 0

 d(i,j)= d(j,i)

 d(i,j) d(i,k)+ d(k,j)

15

)||...|||(|),(2222211ppjxixjxixjxixjidExemple: distance de Manhattan

d(p1,p2)=120

d(p1,p3)=132

Conclusion: p1 ressemble plus à p2 qu’à p3

d(p1,p2)=4,675

d(p1,p3)=2,324

Publicité

Conclusion: p1 ressemble plus à p3 qu’à p2 

16

AgeSalairePersonne15011000Personne27011100Personne36011122Personne46011074AgeSalairePersonne1-2-0,5Personne220,175Personne300,324Personne4002-Variables binaires

 Une table de contingence pour données binaires

Objet j

Objet i

a= nombre de positions où i a 1

et

j a 1

 Exemple oi=(1,1,0,1,0) et oj=(1,0,0,0,1)

a=1, b=2, c=1, d=1

17

pdbcasumdcdcbabasum0101Mesures de distances

 Coefficient d’appariement (matching) simple

(invariant pour variables symétriques):

Exemple oi=(1,1,0,1,0) et oj=(1,0,0,0,1)

d(oi, oj)=3/5

 Coefficient de Jaccard

d(oi, oj)=3/4

18

dcbacb jid),(cbacb jid),(19

Variables binaires (I)

 Variable symétrique: Ex. le sexe d’une personne, i.e

coder masculin par 1 et féminin par 0 c’est pareil que le codage inverse

 Variable asymétrique: Ex. Test HIV. Le test peut être positif ou négatif (0 ou 1) mais il y a une valeur qui sera plus présente que l’autre. Généralement, on code par 1 la modalité la moins fréquente  2 personnes ayant la valeur 1 pour le test sont plus

similairesque 2 personnes ayant 0 pour le test

20

Variables binaires(II)

 Exemple

 Sexe est un attribut symétrique  Les autres attributs sont asymétriques  Y et P  1, N  0, la distance n’est mesurée que sur les asymétriques

Les plus similaires sont Jack et Maryatteints du même mal

21

Nom Sexe Fièvre Toux Test-1 Test-2 Test-3 Test-4 Jack M Y N P N N N Mary F Y N P N P N Jim M Y P N N N N 75.021121),(67.011111),(33.010210),(maryjimdjimjackdmaryjackd3-Variables Nominales

 Une généralisation des variables binaires, ex: rouge, vert

et bleu

 Méthode 1: Matching simple

 m: # d’appariements, p: # total de variables

 Méthode 2: utiliser un grand nombre de variables binaires

 Créer une variable binaire pour chaque modalité (ex:

variable rouge qui prend les valeurs vrai ou faux)

22

pmpjid),(4-Variables Ordinales

 Une variable ordinale peut être discrète ou continue

 L’ordre peut être important, ex: classement

 Peuvent être traitées comme les variables intervalles

 remplacer xif par son rang  Remplacer le rang de chaque variable par une valeur dans [0, 1] en remplaçant la variable f dans l’objet I par

 Utiliser une distance pour calculer la similarité

23

11fififMrz},...,1{fifMrEn Présence de Variables de différents Types

 Pour chaque type de variables utiliser une mesure

adéquate. Problèmes: les clusters obtenus peuvent être différents

 On utilise une formule pondérée pour faire la

combinaison

 f est binaire ou nominale:

dij

(f) = 0 si xif = xjf , sinon dij

(f) = 1

 f est de type intervalle: utiliser une distance

normalisée  f est ordinale

 calculer les rangs rif et  Ensuite traiter zif comme une variable de type

intervalle

24

)(1)()(1),(fijpffijfijpfdjid11fifMrzifApproches de Clustering

 Méthodes non hiérarchiques: Construire plusieurs partitions

puis les évaluer selon certains critères

 Méthodes hiérarchiques: Créer une décomposition

hiérarchique des objets selon certains critères

25

I.MÉTHODES DE PARTITIONNEMENT

1) Difficulté combinatoire: Pn,k = nombre de partitions en k classes de n individus Pn,k = Pn1,k 1  k Pn1,k (récurrence) (nombre de Stirling de 2ème

Publicité

espèce)

Ex : P12,5  1 379 400

 Pn = nombre total de partitions (nombres de Bell) nombre

de partitions d'un ensemble à néléments distincts

Ex : P12  4 213 597

 Nécessité d’algorithmes pour trouver une bonne partition.

Comment définir la qualité d’une partition ?

2.

Inertie within et Inertie between-classe

2i,i distance euclidienne n points d Soit une partition en k classes de poids Pi

I = IB +Iw

g = centre de gravité des n individus

x

x

x

x

x

x

x

x

x

x

x

x

x

g1

x

x

x

x

x

x

x

x

x

x

x

x

x

x

g2

x

x

x

x

x

x

x

g

x

x

x

x

x

x

x

x

x

g

k x

x

x

Comparaison de deux partitions en k classes :

La meilleure est celle qui a l’inertie IW la plus faible (ou l’inertie IB la plus forte).

Remarque : Ce critère ne permet pas de comparer des

partitions à nombres différents de classe.

1.2 Méthode des centres mobiles

- choix de centres ci et partition associée (les ci sont choisis au hasard). La classe Eci est formée de tous les points plus proches de ci que de tout autre centre.

- calcul des centres de gravité de chaque classe → définition

d’une nouvelle partition.

Publicité

L’inertie intra-classe diminue à chaque étape.

Exemple:

Exemple:

Exemple:

33

1,3 Généralisation: Nuées dynamiques K-means:

La segmentation par nuées dynamiques (ou k-means) est une méthode de classification automatique qui a pour objectif de partionner

L’idée est d’associer à une classe un représentant différent de son centre de gravité. Exemple :

 un ensemble d’individus (noyau formé de points appelés les

étalons)  une droite  une loi de probabilité

34

35

Algorithme:

Il faut faire décroître le critère U mesurant l’adéquation entre les classes et leurs représentants

1, Initialisation Deux possibilités : 1. Soit on se donne au départ une fonction d’affectation qui génère une partition . Les noyaux pour chaque classe sont calculés. 2. Soit on se donne k noyaux.

36

2, Étape d’affectation Pour chaque individu, déterminer la classe à laquelle on doit l’affecter (nécessité d’avoir défini une distance entre un point et un noyau, ou un groupe de points). Étape de représentation Pour chaque classe définie, calculer le nouveau noyau. ARRÊT DE L’ALGORITHME quand la décroissance atteint un seuil fixé a priori.

37

Exemple : Quels sont

les groupes de programmes de

télévision identifiables qui attirent des publics similaires au

sein de chaque groupe ? Grâce à l'analyse de cluster de

nuées dynamiques, vous pouvez classer les programmes de

télévision (observations) en kgroupes homogènes d'après les

caractéristiques des téléspectateurs.

Cette méthode peut être utilisée pour identifier des segments

à des fins commerciales. Vous pouvez aussi classer les villes

(observations) en groupes homogènes pour permettre la

sélection de villes comparables afin de tester diverses

stratégies commerciales.

38

fonction kmeans sous R

À l'issue de son exécution, kmeans() a associé chaque donnée à un groupe ; les groupes sont numérotés de 1 à k. La fonction kmeans() fournit en sortie une liste d'objets cluster : est un vecteur qui contient le numéro du groupe de chacune des données ; centers : spécifie la position des K centres ; withinss : est un vecteur de K nombres, chacun valant la somme des distances au carré des éléments du groupe considéré (c'est donc presque la même chose que l'inertie du groupe) ; size : est un vecteur indiquant la taille de chacun des groupes.

39

40

41

42

43

44

2, Principes de la classification ascendante hiérarchique La classification ascendante hiérarchique (CAH) est le une méthode de classification itérative dont principe est simple.

On commence par calculer la dissimilarité entre les N objets (individus).

on

les

deux

regroupe

Puis le regroupement minimise un critère d'agrégation donné, créant ainsi une classe comprenant ces deux objets.

objets

dont

45

46

On calcule ensuite la dissimilarité entre cette classe et les N-2 autres objets en utilisant le critère d'agrégation.

Puis on regroupe les deux objets ou classes d'objets dont le regroupement minimise le critère d'agrégation.

47

On continue ainsi soient regroupés.

jusqu'à ce que tous les objets

Ces regroupements successifs produisent un arbre binaire de classification (dendrogramme), dont la racine correspond à la classe regroupant l'ensemble des individus.

48

49

Ce dendrogramme représente une hiérarchie de partitions.

choisir une partition en On peut alors tronquant l'arbre à un niveau donné, le niveau dépendant soit des contraintes de l'utilisateur

(l'utilisateur sait combien de classes il veut obtenir), soit de critères plus objectifs.

50

51

52

53

54

Sous R: Hclust()

55

56