SlideShare une entreprise Scribd logo
1  sur  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

Contenu connexe

Tendances

BigData_Chp1: Introduction à la Big Data
BigData_Chp1: Introduction à la Big DataBigData_Chp1: Introduction à la Big Data
BigData_Chp1: Introduction à la Big DataLilia Sfaxi
 
BigData_TP1: Initiation à Hadoop et Map-Reduce
BigData_TP1: Initiation à Hadoop et Map-ReduceBigData_TP1: Initiation à Hadoop et Map-Reduce
BigData_TP1: Initiation à Hadoop et Map-ReduceLilia Sfaxi
 
Les arbres de décisions
Les arbres de décisionsLes arbres de décisions
Les arbres de décisionsMariem Chaaben
 
Installation hadoopv2.7.4-amal abid
Installation hadoopv2.7.4-amal abidInstallation hadoopv2.7.4-amal abid
Installation hadoopv2.7.4-amal abidAmal Abid
 
Data mining - Introduction générale
Data mining - Introduction généraleData mining - Introduction générale
Data mining - Introduction généraleMohamed Heny SELMI
 
Clustering: Méthode hiérarchique
Clustering: Méthode hiérarchiqueClustering: Méthode hiérarchique
Clustering: Méthode hiérarchiqueYassine Mhadhbi
 
Cours Big Data Chap2
Cours Big Data Chap2Cours Big Data Chap2
Cours Big Data Chap2Amal Abid
 
BigData_Chp4: NOSQL
BigData_Chp4: NOSQLBigData_Chp4: NOSQL
BigData_Chp4: NOSQLLilia Sfaxi
 
Techniques du data mining
Techniques du data miningTechniques du data mining
Techniques du data miningDonia Hammami
 
Cours Big Data Chap1
Cours Big Data Chap1Cours Big Data Chap1
Cours Big Data Chap1Amal Abid
 
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
 
Big Data, Hadoop & Spark
Big Data, Hadoop & SparkBig Data, Hadoop & Spark
Big Data, Hadoop & SparkAlexia Audevart
 
Telecharger Exercices corrigés PL/SQL
Telecharger Exercices corrigés PL/SQLTelecharger Exercices corrigés PL/SQL
Telecharger Exercices corrigés PL/SQLwebreaker
 
Apprentissage supervisé.pdf
Apprentissage supervisé.pdfApprentissage supervisé.pdf
Apprentissage supervisé.pdfhanamettali
 
AI Apprentissage Automatique, Machine Learnig
AI Apprentissage Automatique, Machine LearnigAI Apprentissage Automatique, Machine Learnig
AI Apprentissage Automatique, Machine LearnigFelipe Sanchez Garzon
 

Tendances (20)

BigData_Chp1: Introduction à la Big Data
BigData_Chp1: Introduction à la Big DataBigData_Chp1: Introduction à la Big Data
BigData_Chp1: Introduction à la Big Data
 
BigData_TP1: Initiation à Hadoop et Map-Reduce
BigData_TP1: Initiation à Hadoop et Map-ReduceBigData_TP1: Initiation à Hadoop et Map-Reduce
BigData_TP1: Initiation à Hadoop et Map-Reduce
 
Les arbres de décisions
Les arbres de décisionsLes arbres de décisions
Les arbres de décisions
 
Installation hadoopv2.7.4-amal abid
Installation hadoopv2.7.4-amal abidInstallation hadoopv2.7.4-amal abid
Installation hadoopv2.7.4-amal abid
 
Data mining - Introduction générale
Data mining - Introduction généraleData mining - Introduction générale
Data mining - Introduction générale
 
Clustering: Méthode hiérarchique
Clustering: Méthode hiérarchiqueClustering: Méthode hiérarchique
Clustering: Méthode hiérarchique
 
Cours Big Data Chap2
Cours Big Data Chap2Cours Big Data Chap2
Cours Big Data Chap2
 
BigData_Chp4: NOSQL
BigData_Chp4: NOSQLBigData_Chp4: NOSQL
BigData_Chp4: NOSQL
 
Techniques du data mining
Techniques du data miningTechniques du data mining
Techniques du data mining
 
Cours Big Data Chap1
Cours Big Data Chap1Cours Big Data Chap1
Cours Big Data Chap1
 
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
 
Big Data, Hadoop & Spark
Big Data, Hadoop & SparkBig Data, Hadoop & Spark
Big Data, Hadoop & Spark
 
Chapitre 2 hadoop
Chapitre 2 hadoopChapitre 2 hadoop
Chapitre 2 hadoop
 
Traitement distribue en BIg Data - KAFKA Broker and Kafka Streams
Traitement distribue en BIg Data - KAFKA Broker and Kafka StreamsTraitement distribue en BIg Data - KAFKA Broker and Kafka Streams
Traitement distribue en BIg Data - KAFKA Broker and Kafka Streams
 
Règles d’association
Règles d’associationRègles d’association
Règles d’association
 
Telecharger Exercices corrigés PL/SQL
Telecharger Exercices corrigés PL/SQLTelecharger Exercices corrigés PL/SQL
Telecharger Exercices corrigés PL/SQL
 
Apprentissage supervisé.pdf
Apprentissage supervisé.pdfApprentissage supervisé.pdf
Apprentissage supervisé.pdf
 
AI Apprentissage Automatique, Machine Learnig
AI Apprentissage Automatique, Machine LearnigAI Apprentissage Automatique, Machine Learnig
AI Apprentissage Automatique, Machine Learnig
 
Knn
KnnKnn
Knn
 
Chapitre 3 spark
Chapitre 3 sparkChapitre 3 spark
Chapitre 3 spark
 

En vedette

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
 
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!
 

En vedette (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
 
clustering
clusteringclustering
clustering
 
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
 
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
 

Similaire à 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
 
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
 
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
 

Similaire à 5.5 Clustering (16)

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
 
Algorithme knn
Algorithme knnAlgorithme knn
Algorithme knn
 
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 ...
 
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
 
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
 

Dernier

To_understand_transformers_together presentation
To_understand_transformers_together presentationTo_understand_transformers_together presentation
To_understand_transformers_together presentationbahija babzine
 
Bidirectional Encoder Representations from Transformers
Bidirectional Encoder Representations from TransformersBidirectional Encoder Representations from Transformers
Bidirectional Encoder Representations from Transformersbahija babzine
 
Recurrent neural network_PresentationRNN.pptx
Recurrent neural network_PresentationRNN.pptxRecurrent neural network_PresentationRNN.pptx
Recurrent neural network_PresentationRNN.pptxbahija babzine
 
Le contrôle de la recherche d'emploi en 2023
Le contrôle de la recherche d'emploi en 2023Le contrôle de la recherche d'emploi en 2023
Le contrôle de la recherche d'emploi en 2023France Travail
 
Les Français, l'Europe et Emmanuel Macron
Les Français, l'Europe et Emmanuel MacronLes Français, l'Europe et Emmanuel Macron
Les Français, l'Europe et Emmanuel Macroncontact Elabe
 
Montant moyen du droit d'allocation chômage versé aux demandeurs d'emploi ind...
Montant moyen du droit d'allocation chômage versé aux demandeurs d'emploi ind...Montant moyen du droit d'allocation chômage versé aux demandeurs d'emploi ind...
Montant moyen du droit d'allocation chômage versé aux demandeurs d'emploi ind...France Travail
 
ELABE BFMTV L'Opinion en direct - Les Français et les 100 jours de Gabriel Attal
ELABE BFMTV L'Opinion en direct - Les Français et les 100 jours de Gabriel AttalELABE BFMTV L'Opinion en direct - Les Français et les 100 jours de Gabriel Attal
ELABE BFMTV L'Opinion en direct - Les Français et les 100 jours de Gabriel Attalcontact Elabe
 

Dernier (7)

To_understand_transformers_together presentation
To_understand_transformers_together presentationTo_understand_transformers_together presentation
To_understand_transformers_together presentation
 
Bidirectional Encoder Representations from Transformers
Bidirectional Encoder Representations from TransformersBidirectional Encoder Representations from Transformers
Bidirectional Encoder Representations from Transformers
 
Recurrent neural network_PresentationRNN.pptx
Recurrent neural network_PresentationRNN.pptxRecurrent neural network_PresentationRNN.pptx
Recurrent neural network_PresentationRNN.pptx
 
Le contrôle de la recherche d'emploi en 2023
Le contrôle de la recherche d'emploi en 2023Le contrôle de la recherche d'emploi en 2023
Le contrôle de la recherche d'emploi en 2023
 
Les Français, l'Europe et Emmanuel Macron
Les Français, l'Europe et Emmanuel MacronLes Français, l'Europe et Emmanuel Macron
Les Français, l'Europe et Emmanuel Macron
 
Montant moyen du droit d'allocation chômage versé aux demandeurs d'emploi ind...
Montant moyen du droit d'allocation chômage versé aux demandeurs d'emploi ind...Montant moyen du droit d'allocation chômage versé aux demandeurs d'emploi ind...
Montant moyen du droit d'allocation chômage versé aux demandeurs d'emploi ind...
 
ELABE BFMTV L'Opinion en direct - Les Français et les 100 jours de Gabriel Attal
ELABE BFMTV L'Opinion en direct - Les Français et les 100 jours de Gabriel AttalELABE BFMTV L'Opinion en direct - Les Français et les 100 jours de Gabriel Attal
ELABE BFMTV L'Opinion en direct - Les Français et les 100 jours de Gabriel Attal
 

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