SlideShare uma empresa Scribd logo
1 de 28
Clustering: k-means et
CAH
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 1
Objectifs
 Comprendre les objectifs des méthodes de clustering
 Connaître les types des méthodes de clustering basés sur la structure de données
 Comprendre les notions de distance et similarité
 Comprendre l’algorithme k-means
 Connaître les mesures de performance de k-means
 Comprendre l’algorithme CAH (bottom - up)
 Comprendre les avantages et limites de CAH et k-means
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 2
Sommaire
• Introduction au clustering
• Algorithme k-means et application avec R
• Classification Ascendante Hiérarchique (CAH) et application avec R
• k-means vs. CAH
• Bibliographie
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 3
Clustering
• Apprentissage non supervisé
• pas de réponse Y, pas de libellé
• Faire émerger des groupes homogènes (ayant des caractéristiques communes) des données
• observations similaires dans le clusters
• observations dissimilaires entre les clusters
• Cas d’usage
• exploration de données: détection de schémas, détection de points aberrants, prétraitement
• marketing: segmentation clients,
• segmentation d’image,
• séquençage de l’ADN,
• analyse des réseaux sociaux,
• données hospitalières
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 4
Clustering
• Type d’algorithmes de clustering
• basé sur la structure des clusters
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 5
Structure
des clusters
Hiérarchique
Partitionnement
à plat
Agglomératives
(bottom – up)
Divisives
(top – down)
Conceptual
modeling
Probabilistic
modeling
e.g. GMM
e.g. k-means
e.g. CAH
agglomératif
k-means
• Partitionnement à plat en k clusters Ck
• méthode de réallocation
• Les nuées dynamiques sont une généralisation du
principe de cet algorithme
• k = nombre de clusters, définie par avance
• Groupes homogènes: notion de similarité
• distance euclidienne, cosinus, Manhattan, …
• Mesure de compacité:
• within-cluster sum of squares (WSS) à minimiser
• Mesure de séparation
• between-cluster sum of squares (BSS) à maximiser
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 6
k-means
• Mesure de compacité:
• within-cluster sum of squares (WSS) à minimiser
• Mesure de séparation
• between-cluster sum of squares (BSS) à maximiser
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 7
centroïde
du cluster Ci
observation
nb de
clusters
moyenne de
l’échantillon
d’observations
nb
d’observations
dans le cluster Ci
total sum
of squares
TSS =
WSS + BSS
distance
k-means
Algorithme
1. Phase d’initialisation
• Générer k points centroïdes ou référents au hasard
2. Phase d’affectation
• Calculer la distance entre les points et chaque centroïde
• Affecter le point au cluster dont la distance à son centroïde
est la plus petite
3. Phase de minimisation
• Pour chaque cluster calculer la moyenne de tous ces points
pour déterminer le nouveau centroïde ou référent
• Répéter 2. et 3. jusqu’à ce que l’affectation aux clusters
ne change plus (ou jusqu’au max d’itérations).
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 8
nb de
clusters: k
Déterminer les
centroïdes
Distance observation -
centroïde
Affecter observation
au cluster
condition
d’arrêt
Non
Oui
START
STOP
k-means pour les nuls
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 9
Valeurs initiales des centres :
c1 = (1,1) et c2 = (2,1)
K = 2
•Teknomo,K.,K-MeansClusteringTutorials.http://people.revoledu.com/kardi/tutorial/kMean/
k-means pour les nuls
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 10
Distance objet-centre:
Clustering:
distance de C(4,3) à
c1 →
c2 →
A B C D
c1
c2
•Teknomo,K.,K-MeansClusteringTutorials.http://people.revoledu.com/kardi/tutorial/kMean/
k-means pour les nuls
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 11
Clustering:
Itération 1 - nouveaux centres:
•Teknomo,K.,K-MeansClusteringTutorials.http://people.revoledu.com/kardi/tutorial/kMean/
k-means pour les nuls
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 12
Itération 1 - Distance objet-
centre:
Itération 1 - Clustering:
2 clusters
A B C D
c1
c2
•Teknomo,K.,K-MeansClusteringTutorials.http://people.revoledu.com/kardi/tutorial/kMean/
k-means pour les nuls
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 13
Itération 1 - Clustering:
Itération 2 - nouveaux centres:
Teknomo,K.,K-MeansClusteringTutorials.http://people.revoledu.com/kardi/tutorial/kMean/
k-means pour les nuls
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 14
Itération 2 - Distance objet-
centre:
Itération 2 - Clustering:
G2 = G1 ==> STOP !
2 clusters
A B C D
c1
c2
•Teknomo,K.,K-MeansClusteringTutorials.http://people.revoledu.com/kardi/tutorial/kMean/
k-means
• La solution finale dépend des représentants initiaux
choisis
• un choix aléatoire rend l'algorithme non déterministe
• Pas de minimum global de la distance intra-classe, seul
le minimum local est atteint.
• Il est fortement conseillé de centrer et réduire les
données: soustraire la moyenne et diviser par l’écart-
type
• scale(data)
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 15
« Quelles deux variables sont les plus
similaire ?
• X1 = (28, 72000, 120)
• X2 = (56, 73000, 80)
• X3 = (29, 74500, 118)
Intuition  X1, X3
Distance euclidienne  X1, X2 »
k-means
• Comment choisir k ?
• Le ratio des WSS / TSS décroit lorsque l’on augmente k
• … jusqu’à avoir un cluster par observation !
• Meilleur k avec méthode heuristique: « la règle du coude »
• point où WSS/TSS décroit lentement, WWS/TSS < 0.2
• point à partir duquel une augmentation de k n’a plus d’influence ni sur la
compacité ni sur la séparation
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 16
meilleure k: 3 ou 4
k-means
• Performances
• Apprentissage non supervisé: pas de « précision »,
« rappel », etc. car on a pas de réponse ou libellé
• Il n’y a pas de vérité !
• L’objectif n’est pas de libeller les observations mais de
mieux comprendre (gain insight) la structure des données
• Nous souhaitons alors une meilleure compacité (WSS) et
une meilleure séparation (BSS)
• Alternative à WSS et BSS:
• Mesure de compacité: Diameter
• Mesure de séparation: Intercluster Distance
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 17
DataCamp,Machine Learning MOOC, Chapter Clustering
k-means
• Performances
• L’indexe de Dunn
• plus il est grand plus compact ou plus séparés seront es
clusters
• attention:
• calcul intensif
• si un cluster possède un diamètre important alors que les autres sont
bien compacts, l’indexe sera petit; par conséquent, il faut considérer
comme un indicateur du « pire des cas »
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 18
DataCamp,Machine Learning MOOC, Chapter Clustering
k-means
kmeans(x = data, centers = 3, nstart = 20)
• centers = k, le nombre de clusters, affectation aléatoire initiale de k observations en tant que
centroïdes
• nstart le nombre d’affectations aléatoires initiales, kmeans retournera le meilleur résultat
my_km <- kmeans(x = data, centers = 3, nstart = 20)
>my_km$tot.withinss
>my_km$betweenss
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 19
Classification Ascendante Hiérarchique
• Quelles observations se regroupent en premier ?
• Quels clusters fusionnent en premier ? et quand ?
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 20
A
C
B
D
E
A
C
B
D
E
A
C
B
D
E
A
C
B
D
E
Classification Ascendante Hiérarchique
• Avantage par rapport à k-means: pas besoin de définir k an avance
• comme pour k-means, il n’y a pas de solution (scientifique, analytique, ...) pour déterminer le meilleur k
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 21
1 cluster 2 clusters 5 clusters
heuristique: on coupe là où il y a des
« long bras »
Classification Ascendante Hiérarchique
• Algorithme: CAH (bottom – up)
1. Calculer la matrice de similarité (de distance) entre
toutes les observations (n x n)
2. Une observation = un cluster
3. Trouve les 2 observations les plus proches et les
fusionner en un cluster
4. Nouvelle matrice des distance (avec un cluster en moins)
5. Répéter 3. et 4. jusqu’à l’obtention d’un seul cluster
• Quelle « distance » ou « similarité » utiliser pour la
construction de la matrice ?
• Quel critère utiliser pour déterminer les 2 observations
les plus proches pour la fusion ?
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 22
distanceentreclusteravantfusion
barres horizontales = les fusions
Classification Ascendante Hiérarchique
• Matrice de distance
• Distance euclidienne
• Corrélation entre observations!
• Coefficient de Dice, Indice de Jaccard, Cosinus
• Méthodes d’agrégation (fusion ou linkage)
• à lien unique (single link): peut produire des classes qui sont relativement peu homogènes
(dendrogramme déséquilibré)
• à lien complet (complete link): peut produire des classes fortement homogènes (dendrogramme peu
réaliste)
• à lien moyen (average link): peut produire des dendrogrammes plus réalistes qu’avec les deux dernières
méthodes
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 23
Classification Ascendante Hiérarchique
• Matrice de distance
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 24
4 observations =
4 documents
vocabulaire d’indexation
avec 5 termes
AminiM.-R.,GaussierE.,Recherched’information,ISBN9782212135329,Eyrolles,2013
Classification Ascendante Hiérarchique
• Méthodes d’agrégation (fusion ou linkage)
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 25
Amini M.-R., Gaussier E., Recherche d’information, ISBN 9782212135329, Eyrolles, 2013
lien unique lien complet
lien moyen
k-means vs. CAH
• k-means
• + calcul rapide
• + on peut défaire les fusions
• - on doit fixer k en avance
• - dépendent des centroïdes initiaux
• CAH
• + pas besoin de fixer k en avance
• + meilleure analyse et compréhension
• - calcul coûteux
• - on peut pas défaire les fusions
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 26
Classification Ascendante Hiérarchique
Matrice de distance
• dist(x, method) ici method: distance
Méthodes d’agrégation (fusion ou linkage)
• hclust(d, method) ici d: matrice de distance, method: méthode d’agrégation
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 27
Bibliographie
• Amini M.-R., Gaussier E., Recherche d’information, ISBN 9782212135329, Eyrolles, 2013
• DataCamp, Machine Learning MOOC, Chapter Clustering
• Teknomo, K., K-Means Clustering Tutorials. http://people.revoledu.com/kardi/tutorial/kMean/
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 28

Mais conteúdo relacionado

Mais procurados

Chapitre 4-Apprentissage non supervisé (1) (1).pdf
Chapitre 4-Apprentissage non supervisé (1) (1).pdfChapitre 4-Apprentissage non supervisé (1) (1).pdf
Chapitre 4-Apprentissage non supervisé (1) (1).pdfZizoAziz
 
Introduction to Machine learning
Introduction to Machine learningIntroduction to Machine learning
Introduction to Machine learningQuentin Ambard
 
Data mining - Classification - arbres de décision
Data mining - Classification - arbres de décisionData mining - Classification - arbres de décision
Data mining - Classification - arbres de décisionMohamed Heny SELMI
 
Intégration des données avec Talend ETL
Intégration des données avec Talend ETLIntégration des données avec Talend ETL
Intégration des données avec Talend ETLLilia Sfaxi
 
AI Apprentissage Automatique, Machine Learnig
AI Apprentissage Automatique, Machine LearnigAI Apprentissage Automatique, Machine Learnig
AI Apprentissage Automatique, Machine LearnigFelipe Sanchez Garzon
 
Introduction au Deep Learning
Introduction au Deep Learning Introduction au Deep Learning
Introduction au Deep Learning Niji
 
Techniques du data mining
Techniques du data miningTechniques du data mining
Techniques du data miningDonia Hammami
 
Data mining - ACP Analyse en Composantes Principales
Data mining - ACP Analyse en Composantes PrincipalesData mining - ACP Analyse en Composantes Principales
Data mining - ACP Analyse en Composantes PrincipalesMohamed Heny SELMI
 
Data Mining (Partie 1).pdf
Data Mining (Partie 1).pdfData Mining (Partie 1).pdf
Data Mining (Partie 1).pdfOuailChoukhairi
 
5.1 K plus proches voisins
5.1 K plus proches voisins5.1 K plus proches voisins
5.1 K plus proches voisinsBoris Guarisma
 
exercices business intelligence
exercices business intelligence exercices business intelligence
exercices business intelligence Yassine Badri
 
Réseaux des neurones
Réseaux des neuronesRéseaux des neurones
Réseaux des neuronesMed Zaibi
 
BigData_Chp1: Introduction à la Big Data
BigData_Chp1: Introduction à la Big DataBigData_Chp1: Introduction à la Big Data
BigData_Chp1: Introduction à la Big DataLilia Sfaxi
 
La prédiction du churn client dans le domaine du telecom
La prédiction du churn client dans le domaine du telecomLa prédiction du churn client dans le domaine du telecom
La prédiction du churn client dans le domaine du telecomIsmail Sanni
 
Les réseaux de neurones convolutifs pour la classification des tumeurs cérébr...
Les réseaux de neurones convolutifs pour la classification des tumeurs cérébr...Les réseaux de neurones convolutifs pour la classification des tumeurs cérébr...
Les réseaux de neurones convolutifs pour la classification des tumeurs cérébr...Juba Ait idir
 
Exercices uml-corrige
Exercices uml-corrigeExercices uml-corrige
Exercices uml-corrigeAmineMouhout1
 

Mais procurados (20)

Chapitre 4-Apprentissage non supervisé (1) (1).pdf
Chapitre 4-Apprentissage non supervisé (1) (1).pdfChapitre 4-Apprentissage non supervisé (1) (1).pdf
Chapitre 4-Apprentissage non supervisé (1) (1).pdf
 
Algorithme knn
Algorithme knnAlgorithme knn
Algorithme knn
 
Introduction to Machine learning
Introduction to Machine learningIntroduction to Machine learning
Introduction to Machine learning
 
Arbre de décision
Arbre de décisionArbre de décision
Arbre de décision
 
Data mining - Classification - arbres de décision
Data mining - Classification - arbres de décisionData mining - Classification - arbres de décision
Data mining - Classification - arbres de décision
 
clustering
clusteringclustering
clustering
 
Intégration des données avec Talend ETL
Intégration des données avec Talend ETLIntégration des données avec Talend ETL
Intégration des données avec Talend ETL
 
AI Apprentissage Automatique, Machine Learnig
AI Apprentissage Automatique, Machine LearnigAI Apprentissage Automatique, Machine Learnig
AI Apprentissage Automatique, Machine Learnig
 
Introduction au Deep Learning
Introduction au Deep Learning Introduction au Deep Learning
Introduction au Deep Learning
 
Techniques du data mining
Techniques du data miningTechniques du data mining
Techniques du data mining
 
Data mining - ACP Analyse en Composantes Principales
Data mining - ACP Analyse en Composantes PrincipalesData mining - ACP Analyse en Composantes Principales
Data mining - ACP Analyse en Composantes Principales
 
Data Mining (Partie 1).pdf
Data Mining (Partie 1).pdfData Mining (Partie 1).pdf
Data Mining (Partie 1).pdf
 
5.1 K plus proches voisins
5.1 K plus proches voisins5.1 K plus proches voisins
5.1 K plus proches voisins
 
exercices business intelligence
exercices business intelligence exercices business intelligence
exercices business intelligence
 
Réseaux de neurones
Réseaux de neurones Réseaux de neurones
Réseaux de neurones
 
Réseaux des neurones
Réseaux des neuronesRéseaux des neurones
Réseaux des neurones
 
BigData_Chp1: Introduction à la Big Data
BigData_Chp1: Introduction à la Big DataBigData_Chp1: Introduction à la Big Data
BigData_Chp1: Introduction à la Big Data
 
La prédiction du churn client dans le domaine du telecom
La prédiction du churn client dans le domaine du telecomLa prédiction du churn client dans le domaine du telecom
La prédiction du churn client dans le domaine du telecom
 
Les réseaux de neurones convolutifs pour la classification des tumeurs cérébr...
Les réseaux de neurones convolutifs pour la classification des tumeurs cérébr...Les réseaux de neurones convolutifs pour la classification des tumeurs cérébr...
Les réseaux de neurones convolutifs pour la classification des tumeurs cérébr...
 
Exercices uml-corrige
Exercices uml-corrigeExercices uml-corrige
Exercices uml-corrige
 

Destaque

03 Apprentissage statistique
03 Apprentissage statistique03 Apprentissage statistique
03 Apprentissage statistiqueBoris Guarisma
 
Base de données graphe et Neo4j
Base de données graphe et Neo4jBase de données graphe et Neo4j
Base de données graphe et Neo4jBoris Guarisma
 
05 Sélection de modèle linéaire
05 Sélection de modèle linéaire05 Sélection de modèle linéaire
05 Sélection de modèle linéaireBoris Guarisma
 
5.3 Régression logistique
5.3 Régression logistique5.3 Régression logistique
5.3 Régression logistiqueBoris Guarisma
 
5.2 Régression linéaire
5.2 Régression linéaire5.2 Régression linéaire
5.2 Régression linéaireBoris Guarisma
 
5.4 Arbres et forêts aléatoires
5.4 Arbres et forêts aléatoires5.4 Arbres et forêts aléatoires
5.4 Arbres et forêts aléatoiresBoris Guarisma
 
04 Introduction au logiciel R
04 Introduction au logiciel R04 Introduction au logiciel R
04 Introduction au logiciel RBoris Guarisma
 
Rapport kmeans
Rapport kmeans Rapport kmeans
Rapport kmeans Imen Turki
 
Text Analytics on Google App
Text Analytics on Google AppText Analytics on Google App
Text Analytics on Google AppNan Wang
 
Microsoft Technologies for Data Science 201612
Microsoft Technologies for Data Science 201612Microsoft Technologies for Data Science 201612
Microsoft Technologies for Data Science 201612Mark Tabladillo
 
PPT file
PPT filePPT file
PPT filebutest
 
Music recommendations API with Neo4j
Music recommendations API with Neo4jMusic recommendations API with Neo4j
Music recommendations API with Neo4jBoris Guarisma
 
Base de données graphe et Neo4j
Base de données graphe et Neo4jBase de données graphe et Neo4j
Base de données graphe et Neo4jBoris Guarisma
 
Chapitre 3 clustering
Chapitre 3 clusteringChapitre 3 clustering
Chapitre 3 clusteringAnis Masmoudi
 
K means clustering
K means clusteringK means clustering
K means clusteringkeshav goyal
 
Artificial Intelligence, Machine Learning and Deep Learning
Artificial Intelligence, Machine Learning and Deep LearningArtificial Intelligence, Machine Learning and Deep Learning
Artificial Intelligence, Machine Learning and Deep LearningSujit Pal
 
K means Clustering
K means ClusteringK means Clustering
K means ClusteringEdureka!
 

Destaque (20)

Clustering
ClusteringClustering
Clustering
 
03 Apprentissage statistique
03 Apprentissage statistique03 Apprentissage statistique
03 Apprentissage statistique
 
Base de données graphe et Neo4j
Base de données graphe et Neo4jBase de données graphe et Neo4j
Base de données graphe et Neo4j
 
05 Sélection de modèle linéaire
05 Sélection de modèle linéaire05 Sélection de modèle linéaire
05 Sélection de modèle linéaire
 
5.3 Régression logistique
5.3 Régression logistique5.3 Régression logistique
5.3 Régression logistique
 
5.2 Régression linéaire
5.2 Régression linéaire5.2 Régression linéaire
5.2 Régression linéaire
 
5.4 Arbres et forêts aléatoires
5.4 Arbres et forêts aléatoires5.4 Arbres et forêts aléatoires
5.4 Arbres et forêts aléatoires
 
04 Introduction au logiciel R
04 Introduction au logiciel R04 Introduction au logiciel R
04 Introduction au logiciel R
 
Rapport kmeans
Rapport kmeans Rapport kmeans
Rapport kmeans
 
Text Analytics on Google App
Text Analytics on Google AppText Analytics on Google App
Text Analytics on Google App
 
Microsoft Technologies for Data Science 201612
Microsoft Technologies for Data Science 201612Microsoft Technologies for Data Science 201612
Microsoft Technologies for Data Science 201612
 
PPT file
PPT filePPT file
PPT file
 
Music recommendations API with Neo4j
Music recommendations API with Neo4jMusic recommendations API with Neo4j
Music recommendations API with Neo4j
 
Base de données graphe et Neo4j
Base de données graphe et Neo4jBase de données graphe et Neo4j
Base de données graphe et Neo4j
 
Data miningpresentation
Data miningpresentationData miningpresentation
Data miningpresentation
 
Chapitre 3 clustering
Chapitre 3 clusteringChapitre 3 clustering
Chapitre 3 clustering
 
K means clustering
K means clusteringK means clustering
K means clustering
 
Artificial Intelligence, Machine Learning and Deep Learning
Artificial Intelligence, Machine Learning and Deep LearningArtificial Intelligence, Machine Learning and Deep Learning
Artificial Intelligence, Machine Learning and Deep Learning
 
K means Clustering
K means ClusteringK means Clustering
K means Clustering
 
K means Clustering Algorithm
K means Clustering AlgorithmK means Clustering Algorithm
K means Clustering Algorithm
 

Semelhante a 5.5 Clustering

toaz.info-clustering-1-pr_7c021feec2e58f2cfdcdf6fe5c0cfc03.pdf
toaz.info-clustering-1-pr_7c021feec2e58f2cfdcdf6fe5c0cfc03.pdftoaz.info-clustering-1-pr_7c021feec2e58f2cfdcdf6fe5c0cfc03.pdf
toaz.info-clustering-1-pr_7c021feec2e58f2cfdcdf6fe5c0cfc03.pdfPenielLoyi
 
Automatic Subspace Clustering of High Dimensional Data for Data Mining Applic...
Automatic Subspace Clustering of High Dimensional Data for DataMining Applic...Automatic Subspace Clustering of High Dimensional Data for DataMining Applic...
Automatic Subspace Clustering of High Dimensional Data for Data Mining Applic...Hajer Trabelsi
 
Présentation Colloque : Mesures locales pour la classification de graphes de ...
Présentation Colloque : Mesures locales pour la classification de graphes de ...Présentation Colloque : Mesures locales pour la classification de graphes de ...
Présentation Colloque : Mesures locales pour la classification de graphes de ...Romain Chion
 
Apprentissage supervisé.pdf
Apprentissage supervisé.pdfApprentissage supervisé.pdf
Apprentissage supervisé.pdfhanamettali
 
comprehension clustering CHA.pdf
comprehension clustering CHA.pdfcomprehension clustering CHA.pdf
comprehension clustering CHA.pdfMarckKerbergKouassi
 
20090929 02 - Dependency structural matrix (Inria)
20090929 02 - Dependency structural matrix (Inria)20090929 02 - Dependency structural matrix (Inria)
20090929 02 - Dependency structural matrix (Inria)LeClubQualiteLogicielle
 
Algorithmes machine learning/ neural network / deep learning
Algorithmes machine learning/ neural network / deep learningAlgorithmes machine learning/ neural network / deep learning
Algorithmes machine learning/ neural network / deep learningBassem Brayek
 
Arbre de décision.pdf
Arbre de décision.pdfArbre de décision.pdf
Arbre de décision.pdfimane26
 
ENSEIRB - Stage 3A @IIT Chicago
ENSEIRB - Stage 3A @IIT ChicagoENSEIRB - Stage 3A @IIT Chicago
ENSEIRB - Stage 3A @IIT ChicagoArnaud Lempereur
 
FLTauR - Construction de modèles de prévision sous r avec le package caret
FLTauR - Construction de modèles de prévision sous r avec le package caretFLTauR - Construction de modèles de prévision sous r avec le package caret
FLTauR - Construction de modèles de prévision sous r avec le package caretjfeudeline
 
melange de gaussienne
melange de gaussiennemelange de gaussienne
melange de gaussienneomri med
 
kaggle competition : census [ école ingénieur Insa - Data science ]
kaggle competition : census [ école ingénieur Insa - Data science ]kaggle competition : census [ école ingénieur Insa - Data science ]
kaggle competition : census [ école ingénieur Insa - Data science ]didier le picaut
 

Semelhante a 5.5 Clustering (15)

toaz.info-clustering-1-pr_7c021feec2e58f2cfdcdf6fe5c0cfc03.pdf
toaz.info-clustering-1-pr_7c021feec2e58f2cfdcdf6fe5c0cfc03.pdftoaz.info-clustering-1-pr_7c021feec2e58f2cfdcdf6fe5c0cfc03.pdf
toaz.info-clustering-1-pr_7c021feec2e58f2cfdcdf6fe5c0cfc03.pdf
 
Mahout clustering
Mahout clusteringMahout clustering
Mahout clustering
 
Clustering.pdf
Clustering.pdfClustering.pdf
Clustering.pdf
 
Automatic Subspace Clustering of High Dimensional Data for Data Mining Applic...
Automatic Subspace Clustering of High Dimensional Data for DataMining Applic...Automatic Subspace Clustering of High Dimensional Data for DataMining Applic...
Automatic Subspace Clustering of High Dimensional Data for Data Mining Applic...
 
Présentation Colloque : Mesures locales pour la classification de graphes de ...
Présentation Colloque : Mesures locales pour la classification de graphes de ...Présentation Colloque : Mesures locales pour la classification de graphes de ...
Présentation Colloque : Mesures locales pour la classification de graphes de ...
 
Apprentissage supervisé.pdf
Apprentissage supervisé.pdfApprentissage supervisé.pdf
Apprentissage supervisé.pdf
 
comprehension clustering CHA.pdf
comprehension clustering CHA.pdfcomprehension clustering CHA.pdf
comprehension clustering CHA.pdf
 
20090929 02 - Dependency structural matrix (Inria)
20090929 02 - Dependency structural matrix (Inria)20090929 02 - Dependency structural matrix (Inria)
20090929 02 - Dependency structural matrix (Inria)
 
Algorithmes machine learning/ neural network / deep learning
Algorithmes machine learning/ neural network / deep learningAlgorithmes machine learning/ neural network / deep learning
Algorithmes machine learning/ neural network / deep learning
 
Arbre de décision.pdf
Arbre de décision.pdfArbre de décision.pdf
Arbre de décision.pdf
 
ENSEIRB - Stage 3A @IIT Chicago
ENSEIRB - Stage 3A @IIT ChicagoENSEIRB - Stage 3A @IIT Chicago
ENSEIRB - Stage 3A @IIT Chicago
 
FLTauR - Construction de modèles de prévision sous r avec le package caret
FLTauR - Construction de modèles de prévision sous r avec le package caretFLTauR - Construction de modèles de prévision sous r avec le package caret
FLTauR - Construction de modèles de prévision sous r avec le package caret
 
melange de gaussienne
melange de gaussiennemelange de gaussienne
melange de gaussienne
 
kaggle competition : census [ école ingénieur Insa - Data science ]
kaggle competition : census [ école ingénieur Insa - Data science ]kaggle competition : census [ école ingénieur Insa - Data science ]
kaggle competition : census [ école ingénieur Insa - Data science ]
 
FRESNEL_Quentin_Rapport
FRESNEL_Quentin_RapportFRESNEL_Quentin_Rapport
FRESNEL_Quentin_Rapport
 

5.5 Clustering

  • 1. Clustering: k-means et CAH 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 1
  • 2. Objectifs  Comprendre les objectifs des méthodes de clustering  Connaître les types des méthodes de clustering basés sur la structure de données  Comprendre les notions de distance et similarité  Comprendre l’algorithme k-means  Connaître les mesures de performance de k-means  Comprendre l’algorithme CAH (bottom - up)  Comprendre les avantages et limites de CAH et k-means 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 2
  • 3. Sommaire • Introduction au clustering • Algorithme k-means et application avec R • Classification Ascendante Hiérarchique (CAH) et application avec R • k-means vs. CAH • Bibliographie 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 3
  • 4. Clustering • Apprentissage non supervisé • pas de réponse Y, pas de libellé • Faire émerger des groupes homogènes (ayant des caractéristiques communes) des données • observations similaires dans le clusters • observations dissimilaires entre les clusters • Cas d’usage • exploration de données: détection de schémas, détection de points aberrants, prétraitement • marketing: segmentation clients, • segmentation d’image, • séquençage de l’ADN, • analyse des réseaux sociaux, • données hospitalières 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 4
  • 5. Clustering • Type d’algorithmes de clustering • basé sur la structure des clusters 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 5 Structure des clusters Hiérarchique Partitionnement à plat Agglomératives (bottom – up) Divisives (top – down) Conceptual modeling Probabilistic modeling e.g. GMM e.g. k-means e.g. CAH agglomératif
  • 6. k-means • Partitionnement à plat en k clusters Ck • méthode de réallocation • Les nuées dynamiques sont une généralisation du principe de cet algorithme • k = nombre de clusters, définie par avance • Groupes homogènes: notion de similarité • distance euclidienne, cosinus, Manhattan, … • Mesure de compacité: • within-cluster sum of squares (WSS) à minimiser • Mesure de séparation • between-cluster sum of squares (BSS) à maximiser 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 6
  • 7. k-means • Mesure de compacité: • within-cluster sum of squares (WSS) à minimiser • Mesure de séparation • between-cluster sum of squares (BSS) à maximiser 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 7 centroïde du cluster Ci observation nb de clusters moyenne de l’échantillon d’observations nb d’observations dans le cluster Ci total sum of squares TSS = WSS + BSS distance
  • 8. k-means Algorithme 1. Phase d’initialisation • Générer k points centroïdes ou référents au hasard 2. Phase d’affectation • Calculer la distance entre les points et chaque centroïde • Affecter le point au cluster dont la distance à son centroïde est la plus petite 3. Phase de minimisation • Pour chaque cluster calculer la moyenne de tous ces points pour déterminer le nouveau centroïde ou référent • Répéter 2. et 3. jusqu’à ce que l’affectation aux clusters ne change plus (ou jusqu’au max d’itérations). 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 8 nb de clusters: k Déterminer les centroïdes Distance observation - centroïde Affecter observation au cluster condition d’arrêt Non Oui START STOP
  • 9. k-means pour les nuls 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 9 Valeurs initiales des centres : c1 = (1,1) et c2 = (2,1) K = 2 •Teknomo,K.,K-MeansClusteringTutorials.http://people.revoledu.com/kardi/tutorial/kMean/
  • 10. k-means pour les nuls 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 10 Distance objet-centre: Clustering: distance de C(4,3) à c1 → c2 → A B C D c1 c2 •Teknomo,K.,K-MeansClusteringTutorials.http://people.revoledu.com/kardi/tutorial/kMean/
  • 11. k-means pour les nuls 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 11 Clustering: Itération 1 - nouveaux centres: •Teknomo,K.,K-MeansClusteringTutorials.http://people.revoledu.com/kardi/tutorial/kMean/
  • 12. k-means pour les nuls 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 12 Itération 1 - Distance objet- centre: Itération 1 - Clustering: 2 clusters A B C D c1 c2 •Teknomo,K.,K-MeansClusteringTutorials.http://people.revoledu.com/kardi/tutorial/kMean/
  • 13. k-means pour les nuls 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 13 Itération 1 - Clustering: Itération 2 - nouveaux centres: Teknomo,K.,K-MeansClusteringTutorials.http://people.revoledu.com/kardi/tutorial/kMean/
  • 14. k-means pour les nuls 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 14 Itération 2 - Distance objet- centre: Itération 2 - Clustering: G2 = G1 ==> STOP ! 2 clusters A B C D c1 c2 •Teknomo,K.,K-MeansClusteringTutorials.http://people.revoledu.com/kardi/tutorial/kMean/
  • 15. k-means • La solution finale dépend des représentants initiaux choisis • un choix aléatoire rend l'algorithme non déterministe • Pas de minimum global de la distance intra-classe, seul le minimum local est atteint. • Il est fortement conseillé de centrer et réduire les données: soustraire la moyenne et diviser par l’écart- type • scale(data) 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 15 « Quelles deux variables sont les plus similaire ? • X1 = (28, 72000, 120) • X2 = (56, 73000, 80) • X3 = (29, 74500, 118) Intuition  X1, X3 Distance euclidienne  X1, X2 »
  • 16. k-means • Comment choisir k ? • Le ratio des WSS / TSS décroit lorsque l’on augmente k • … jusqu’à avoir un cluster par observation ! • Meilleur k avec méthode heuristique: « la règle du coude » • point où WSS/TSS décroit lentement, WWS/TSS < 0.2 • point à partir duquel une augmentation de k n’a plus d’influence ni sur la compacité ni sur la séparation 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 16 meilleure k: 3 ou 4
  • 17. k-means • Performances • Apprentissage non supervisé: pas de « précision », « rappel », etc. car on a pas de réponse ou libellé • Il n’y a pas de vérité ! • L’objectif n’est pas de libeller les observations mais de mieux comprendre (gain insight) la structure des données • Nous souhaitons alors une meilleure compacité (WSS) et une meilleure séparation (BSS) • Alternative à WSS et BSS: • Mesure de compacité: Diameter • Mesure de séparation: Intercluster Distance 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 17 DataCamp,Machine Learning MOOC, Chapter Clustering
  • 18. k-means • Performances • L’indexe de Dunn • plus il est grand plus compact ou plus séparés seront es clusters • attention: • calcul intensif • si un cluster possède un diamètre important alors que les autres sont bien compacts, l’indexe sera petit; par conséquent, il faut considérer comme un indicateur du « pire des cas » 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 18 DataCamp,Machine Learning MOOC, Chapter Clustering
  • 19. k-means kmeans(x = data, centers = 3, nstart = 20) • centers = k, le nombre de clusters, affectation aléatoire initiale de k observations en tant que centroïdes • nstart le nombre d’affectations aléatoires initiales, kmeans retournera le meilleur résultat my_km <- kmeans(x = data, centers = 3, nstart = 20) >my_km$tot.withinss >my_km$betweenss 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 19
  • 20. Classification Ascendante Hiérarchique • Quelles observations se regroupent en premier ? • Quels clusters fusionnent en premier ? et quand ? 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 20 A C B D E A C B D E A C B D E A C B D E
  • 21. Classification Ascendante Hiérarchique • Avantage par rapport à k-means: pas besoin de définir k an avance • comme pour k-means, il n’y a pas de solution (scientifique, analytique, ...) pour déterminer le meilleur k 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 21 1 cluster 2 clusters 5 clusters heuristique: on coupe là où il y a des « long bras »
  • 22. Classification Ascendante Hiérarchique • Algorithme: CAH (bottom – up) 1. Calculer la matrice de similarité (de distance) entre toutes les observations (n x n) 2. Une observation = un cluster 3. Trouve les 2 observations les plus proches et les fusionner en un cluster 4. Nouvelle matrice des distance (avec un cluster en moins) 5. Répéter 3. et 4. jusqu’à l’obtention d’un seul cluster • Quelle « distance » ou « similarité » utiliser pour la construction de la matrice ? • Quel critère utiliser pour déterminer les 2 observations les plus proches pour la fusion ? 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 22 distanceentreclusteravantfusion barres horizontales = les fusions
  • 23. Classification Ascendante Hiérarchique • Matrice de distance • Distance euclidienne • Corrélation entre observations! • Coefficient de Dice, Indice de Jaccard, Cosinus • Méthodes d’agrégation (fusion ou linkage) • à lien unique (single link): peut produire des classes qui sont relativement peu homogènes (dendrogramme déséquilibré) • à lien complet (complete link): peut produire des classes fortement homogènes (dendrogramme peu réaliste) • à lien moyen (average link): peut produire des dendrogrammes plus réalistes qu’avec les deux dernières méthodes 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 23
  • 24. Classification Ascendante Hiérarchique • Matrice de distance 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 24 4 observations = 4 documents vocabulaire d’indexation avec 5 termes AminiM.-R.,GaussierE.,Recherched’information,ISBN9782212135329,Eyrolles,2013
  • 25. Classification Ascendante Hiérarchique • Méthodes d’agrégation (fusion ou linkage) 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 25 Amini M.-R., Gaussier E., Recherche d’information, ISBN 9782212135329, Eyrolles, 2013 lien unique lien complet lien moyen
  • 26. k-means vs. CAH • k-means • + calcul rapide • + on peut défaire les fusions • - on doit fixer k en avance • - dépendent des centroïdes initiaux • CAH • + pas besoin de fixer k en avance • + meilleure analyse et compréhension • - calcul coûteux • - on peut pas défaire les fusions 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 26
  • 27. Classification Ascendante Hiérarchique Matrice de distance • dist(x, method) ici method: distance Méthodes d’agrégation (fusion ou linkage) • hclust(d, method) ici d: matrice de distance, method: méthode d’agrégation 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 27
  • 28. Bibliographie • Amini M.-R., Gaussier E., Recherche d’information, ISBN 9782212135329, Eyrolles, 2013 • DataCamp, Machine Learning MOOC, Chapter Clustering • Teknomo, K., K-Means Clustering Tutorials. http://people.revoledu.com/kardi/tutorial/kMean/ 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - CLUSTERING 28