techniques du data mining -...

26
1 Fahmi Ben Rejab Année universitaire 2019/2020 Techniques du Data Mining Clustering: K-means

Upload: others

Post on 25-Jul-2020

6 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Techniques du Data Mining - e-monsitefahmi-benrejab.e-monsite.com/medias/files/s03-clustering.pdf · 2019-11-06 · Techniques du Data Mining Clustering: K-means. Clustering 2. 3

1

Fahmi Ben Rejab

Année universitaire 2019/2020

Techniques duData Mining

Clustering: K-means

Page 2: Techniques du Data Mining - e-monsitefahmi-benrejab.e-monsite.com/medias/files/s03-clustering.pdf · 2019-11-06 · Techniques du Data Mining Clustering: K-means. Clustering 2. 3

Clustering

2

Page 3: Techniques du Data Mining - e-monsitefahmi-benrejab.e-monsite.com/medias/files/s03-clustering.pdf · 2019-11-06 · Techniques du Data Mining Clustering: K-means. Clustering 2. 3

3

• L'apprentissage automatique (machine learning en anglais)

est un champ d'étude de l’IA.

• Il est relatif au développement de méthodes permettant à une

machine d'évoluer

Page 4: Techniques du Data Mining - e-monsitefahmi-benrejab.e-monsite.com/medias/files/s03-clustering.pdf · 2019-11-06 · Techniques du Data Mining Clustering: K-means. Clustering 2. 3

4

Les algorithmes d’apprentissage peuvent se catégoriser selon le

type d’apprentissage qu’ils emploient :

L'apprentissage supervisé: classification, ensemble d’objets

préalablement étiqueter.

L'apprentissage non-supervisé: clustering

Page 5: Techniques du Data Mining - e-monsitefahmi-benrejab.e-monsite.com/medias/files/s03-clustering.pdf · 2019-11-06 · Techniques du Data Mining Clustering: K-means. Clustering 2. 3

5

Page 6: Techniques du Data Mining - e-monsitefahmi-benrejab.e-monsite.com/medias/files/s03-clustering.pdf · 2019-11-06 · Techniques du Data Mining Clustering: K-means. Clustering 2. 3

• Regroupement (Clustering): construire une collection d’objets

– Similaires au sein d’un même groupe

– Dissimilaires quand ils appartiennent à des groupes

différents

• Le Clustering est de la classification non supervisée: pas de

classes prédéfinies

6

Page 7: Techniques du Data Mining - e-monsitefahmi-benrejab.e-monsite.com/medias/files/s03-clustering.pdf · 2019-11-06 · Techniques du Data Mining Clustering: K-means. Clustering 2. 3

• On ne disposent que d'exemples (des objets), mais non

d'étiquettes, et le nombre de clusters et leur nature n'ont pas été

prédéterminés,

• Il permet d’avoir une structure des données par le

regroupement des données qui se ressemblent.

7

Page 8: Techniques du Data Mining - e-monsitefahmi-benrejab.e-monsite.com/medias/files/s03-clustering.pdf · 2019-11-06 · Techniques du Data Mining Clustering: K-means. Clustering 2. 3

• Une bonne méthode de regroupement permet de garantir

– Une grande similarité intra-groupe

– Une faible similarité inter-groupe

• La qualité d’un regroupement dépend donc de la mesure de

similarité utilisée par la méthode et de son implémentation

8

Page 9: Techniques du Data Mining - e-monsitefahmi-benrejab.e-monsite.com/medias/files/s03-clustering.pdf · 2019-11-06 · Techniques du Data Mining Clustering: K-means. Clustering 2. 3

• Cluster= groupe d’objets

Exemple de3 clusters: k=3

9

Page 10: Techniques du Data Mining - e-monsitefahmi-benrejab.e-monsite.com/medias/files/s03-clustering.pdf · 2019-11-06 · Techniques du Data Mining Clustering: K-means. Clustering 2. 3

• K-means: données numériques

• K-modes: données catégoriques

• k-prototypes: données mixtes (numériques et catégoriques)

• ….

10

K-means: k-moyennes

Page 11: Techniques du Data Mining - e-monsitefahmi-benrejab.e-monsite.com/medias/files/s03-clustering.pdf · 2019-11-06 · Techniques du Data Mining Clustering: K-means. Clustering 2. 3

Proposée par MacQueen, 1967

Traite des données quantitatives

Chaque cluster est représenté par son centre

Possibilité d’utiliser plusieurs distance

11

Page 12: Techniques du Data Mining - e-monsitefahmi-benrejab.e-monsite.com/medias/files/s03-clustering.pdf · 2019-11-06 · Techniques du Data Mining Clustering: K-means. Clustering 2. 3

L’algorithme k-means est en 4 étapes :

1. Choisir k objets formant ainsi k clusters

2. (Ré)affecter chaque objet O au cluster Ci de centre Mi tel

que dist(O,Mi) est minimal

3. Recalculer Mi de chaque cluster

4. Aller à l’étape (2) si on vient de faire une affectation

12

Page 13: Techniques du Data Mining - e-monsitefahmi-benrejab.e-monsite.com/medias/files/s03-clustering.pdf · 2019-11-06 · Techniques du Data Mining Clustering: K-means. Clustering 2. 3

• A={1,2,3,6,7,8,13,15,17}. Créer 3 clusters à partir de A

• On prend 3 objets au hasard. Supposons que c’est 1, 2 et 3.

Ca donne C1={1}, M1=1, C2={2}, M2=2, C3={3} et M3=3

13

Page 14: Techniques du Data Mining - e-monsitefahmi-benrejab.e-monsite.com/medias/files/s03-clustering.pdf · 2019-11-06 · Techniques du Data Mining Clustering: K-means. Clustering 2. 3

• Chaque objet O est affecté au cluster au milieu duquel, O est

le plus proche. 6 est affecté à C3 car dist(M3,6)<dist(M2,6) et

dist(M3,6)<dist(M1,6)

On a C1={1}, M1=1,

C2={2}, M2=2

C3={3, 6,7,8,13,15,17}, M3=69/7=9.86

14

Page 15: Techniques du Data Mining - e-monsitefahmi-benrejab.e-monsite.com/medias/files/s03-clustering.pdf · 2019-11-06 · Techniques du Data Mining Clustering: K-means. Clustering 2. 3

• dist(3,M2)<dist(3,M3)3 passe dans C2. Tous les autres objets ne bougent pas. C1={1}, M1=1, C2={2,3}, M2=2.5,C3={6,7,8,13,15,17} et M3= 66/6=11

• dist(6,M2)<dist(6,M3)6 passe dans C2. Tous les autres objets ne bougent pas. C1={1}, M1=1, C2={2,3,6}, M2=11/3=3.67, C3={7,8,13,15,17}, M3= 12

15

Page 16: Techniques du Data Mining - e-monsitefahmi-benrejab.e-monsite.com/medias/files/s03-clustering.pdf · 2019-11-06 · Techniques du Data Mining Clustering: K-means. Clustering 2. 3

16

• dist(2,M1)<dist(2,M2)2 passe en C1. dist(7,M2)<dist(7,M3) 7 passe en C2. Les autres ne bougent pas. C1={1,2}, M1=1.5, C2={3,6,7}, M2=5.34, C3= {8,13,15,17}, M3=13.25

• dist(3,M1)<dist(3,M2)3 passe en 1. dist(8,M2)<dist(8,M3)8 passe en 2

C1={1,2,3}, M1=2, C2={6,7,8}, M2=7, C3={13,15,17}, M3=15

Plus rien ne bouge

Page 17: Techniques du Data Mining - e-monsitefahmi-benrejab.e-monsite.com/medias/files/s03-clustering.pdf · 2019-11-06 · Techniques du Data Mining Clustering: K-means. Clustering 2. 3

17

0

1

2

3

4

5

6

7

8

9

10

0 1 2 3 4 5 6 7 8 9 10

0

1

2

3

4

5

6

7

8

9

10

0 1 2 3 4 5 6 7 8 9 10

0

1

2

3

4

5

6

7

8

9

10

0 1 2 3 4 5 6 7 8 9 100

1

2

3

4

5

6

7

8

9

10

0 1 2 3 4 5 6 7 8 9 10

Page 18: Techniques du Data Mining - e-monsitefahmi-benrejab.e-monsite.com/medias/files/s03-clustering.pdf · 2019-11-06 · Techniques du Data Mining Clustering: K-means. Clustering 2. 3

La mesure de distance choisie pour calculer la similarité:

la distance Euclidienne d(i,j):

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

18

)||...|||(|),( 22

22

2

11 pp jx

ix

jx

ix

jx

ixjid

Page 19: Techniques du Data Mining - e-monsitefahmi-benrejab.e-monsite.com/medias/files/s03-clustering.pdf · 2019-11-06 · Techniques du Data Mining Clustering: K-means. Clustering 2. 3

Propriétés

• d(i,j) 0

• d(i,i) = 0

• d(i,j) = d(j,i)

19

Page 20: Techniques du Data Mining - e-monsitefahmi-benrejab.e-monsite.com/medias/files/s03-clustering.pdf · 2019-11-06 · Techniques du Data Mining Clustering: K-means. Clustering 2. 3

Propriétaire Nbre anciens crédits

O1 2 2

O2 0 0

O3 3 1

O4 1 0

20

• Soient 4 clients {O1, O2, O3 et O4} demandant un crédit

• Le but est de faire des groupes de clients selon leurs natures:

ceux qui se ressemblent sont groupés ensemble.

• on dispose de 2 clusters: k=2

Page 21: Techniques du Data Mining - e-monsitefahmi-benrejab.e-monsite.com/medias/files/s03-clustering.pdf · 2019-11-06 · Techniques du Data Mining Clustering: K-means. Clustering 2. 3

• On prend au hasard 2 objets comme centre initiaux.

• C1={O1}, C2={O2},

• M1={2,2}; M2={0,0}

• d(O1, M1)=racine[|2-2|2 + [|2-2|2 ]=0

• d(O2, M1)=racine[|0-2|2 + [|0-2|2 ]=racine(8)=2.82

• d(O3, M1)=racine[|3-2|2 + [|1-2|2 ]=racine(2)=1.41

• d(O4, M1)=racine[|1-2|2 + [|0-2|2 ]=racine(5)=2.23

21

Page 22: Techniques du Data Mining - e-monsitefahmi-benrejab.e-monsite.com/medias/files/s03-clustering.pdf · 2019-11-06 · Techniques du Data Mining Clustering: K-means. Clustering 2. 3

• d(O1, M2)=racine[|2-0|2 + [|2-0|2 ]= racine(8)=2.82

• d(O2, M2)=racine[|0-0|2 + [|0-0|2 ]=0

• d(O3, M2)=racine[|3-0|2 + [|1-0|2 ]=racine(10)=3.16

• d(O4, M2)=racine[|1-0|2 + [|0-0|2 ]=racine(1)=1

• C1={O1,O3} , M1={2.5; 1.5}

• C2={O2,O4}, M2={0.5; 0}

22

Page 23: Techniques du Data Mining - e-monsitefahmi-benrejab.e-monsite.com/medias/files/s03-clustering.pdf · 2019-11-06 · Techniques du Data Mining Clustering: K-means. Clustering 2. 3

• d(O1, M1)=racine[|2-2.5|2 + [|2-1.5|2 ]=racine(0.25+0.25)=0.7

• d(O2, M1)=racine[|0-2.5|2 + [|0-1.5|2 ]=racine(6.25+2.25)=2.91

• d(O3, M1)=racine[|3-2.5|2 + [|1-1.5|2 ]=racine(0.25+0.25)=0.7

• d(O4, M1)=racine[|1-2.5|2 + [|0-1.5|2 ]=racine(2.25+2.25)=2.12

• d(O1, M2)=racine[|2-0.5|2 + [|2-0|2 ]= racine(2.25+4)=2.5

• d(O2, M2)=racine[|0-0.5|2 + [|0-0|2 ]=racine(0.25)=0.5

• d(O3, M2)=racine[|3-0.5|2 + [|1-0|2 ]=racine(6.25+1)=2.69

• d(O4, M2)=racine[|1-0.5|2 + [|0-0|2 ]=racine(0.25)=0.5

23

Page 24: Techniques du Data Mining - e-monsitefahmi-benrejab.e-monsite.com/medias/files/s03-clustering.pdf · 2019-11-06 · Techniques du Data Mining Clustering: K-means. Clustering 2. 3

• C1={O1,O3} ,

• C2={O2,O4}

• Condition d’arrêt= partition stable

24

Page 25: Techniques du Data Mining - e-monsitefahmi-benrejab.e-monsite.com/medias/files/s03-clustering.pdf · 2019-11-06 · Techniques du Data Mining Clustering: K-means. Clustering 2. 3

• Force

– Relativement efficace: O(tkn), où n est # objets, k est #clusters, et t est # itérations. Normalement, k, t << n.

– Rapide

• Faiblesses

– N’est pas applicable en présence d’attributs qui ne sont pasdu type intervalle (moyenne=?)

– On doit spécifier k (nombre de clusters)

– Les clusters sont construits par rapports à des objetsinexistants (les milieux)

25

Page 26: Techniques du Data Mining - e-monsitefahmi-benrejab.e-monsite.com/medias/files/s03-clustering.pdf · 2019-11-06 · Techniques du Data Mining Clustering: K-means. Clustering 2. 3

Question

26

Comment faire

pour les données

catégoriques?