chapter 8 clustering : k-means - wipawan's blog ·...
TRANSCRIPT
Chapter 8Clustering : K-means
01/06/571 Clustering : K-mean โดย ผศ.วภาวรรณ บวทอง
การจดกลมในการท าเหมองขอมล
01/06/57Clustering : K-mean โดย ผศ.วภาวรรณ บวทอง2
Cluster : เปนกลมหรอแหลงเกบสะสม (collection) ของวตถตางๆ สามารถน ามาจดกลมกนตามความเหมอน (Similarity) สามารถน ามาจดกลมกนตามความแตกตาง (Dissimilarity or
Distance)
Cluster Analysis เปนกระบวนการจดวตถตางๆ ใหอยกลมทเหมาะสม ซงมคณสมบต
ทวตถทอยในกลมเดยวกนจะคลายกน แตมความแตกตางจากวตถในกลมอน
การจดกลมในการท าเหมองขอมล (ตอ)
01/06/57Clustering : K-mean โดย ผศ.วภาวรรณ บวทอง3
Clustering การจดกลมจะแตกตางจากการแบงประเภทขอมล (Classification) โดยจะแบงกลมขอมลจากความคลาย โดยไมมการก าหนดคลาสประเภทขอมลไวกอนหรอไมทราบจ านวนกลมลวงหนา เปนการเรยนรแบบไมมผสอน (unsupervised classification)
ชนดของตวแปรทใชในเทคนค K-Means Clustering
01/06/57Clustering : K-mean โดย ผศ.วภาวรรณ บวทอง4
ตองเปนตวแปรเชงปรมาณ (Quantitative) - สเกลอนตรภาค (Interval Scale)
- สเกลอตราสวน (Ratio Scale)
What is Good Clustering?
01/06/57Clustering : K-mean โดย ผศ.วภาวรรณ บวทอง5
จดกลมโดยพยายามใหระยะหางของสงทอยในกลมเดยวกนอยใกลกนใหมากทสด (Minimize Intra-Cluster Distances) และระยะหางทอยตางกลมมความหางแตกตางกนมาก ทสด (Maximize Inter-Cluster Distances)
Notion of a Cluster can be Ambiguous
01/06/57Clustering : K-mean โดย ผศ.วภาวรรณ บวทอง6
Clustering Algorithms
01/06/57Clustering : K-mean โดย ผศ.วภาวรรณ บวทอง7
K-means clustering **
Hierarchical clustering
K-means Clustering
01/06/57Clustering : K-mean โดย ผศ.วภาวรรณ บวทอง8
K-means หรอเรยกอกอยางหนงวา การวเคราะหกลมแบบไมเปนขนตอน (Nonhierarchical Cluster Analysis) หรอ การแบงสวน (Partioning)
เปนอลกอรทมเทคนคการเรยนรโดยไมมผสอนทงายทสด เพราะเปนการแกปญหาการจดกลมทรจกกนทวไป โดยอลกอรทม K-Means จะตดแบง (Partition) วตถออกเปน K กลม
แทนคาแตละกลมดวยคาเฉลยของกลม ซงใชเปนจดศนยกลาง (centroid) ของกลมในการวดระยะหางของขอมลในกลมเดยวกน
ประเภทของ Clustering
01/06/57Clustering : K-mean โดย ผศ.วภาวรรณ บวทอง9
Partitional Clustering คอการแบงกลมอยางชดเจนโดยไมมกลมใดซอนทบกนอย
Hierarchical clustering ความสมพนธแบบล าดบชน
01/06/57Clustering : K-mean โดย ผศ.วภาวรรณ บวทอง10
Partitioning Algorithms: Basic Concept
01/06/57Clustering : K-mean โดย ผศ.วภาวรรณ บวทอง11
Partitioning method: Partitioning a database D of n objects into a set of k clusters, such that the sum of squared distances is minimized (where ci is the centroid or medoid of cluster Ci )
K-means Clustering Algorithm
01/06/57Clustering : K-mean โดย ผศ.วภาวรรณ บวทอง12
Method1) ก าหนดหรอสมคาเรมตน จานวน k คา(กลม) และก าหนดจด
ศนยกลางเรมตน k จด เรยกวา cluster centers หรอ(centroid) 2) น าวตถทงหมดจดเขากลม โดยท าการหาคาระยะหางระหวางขอมล
กบจดศนยกลาง หากขอมลไหนใกลคาจดศนยกลางตวไหนทสดอยกลมนน
3) หาคาเฉลย (Mean) แตละกลม ใหเปนคาจดศนยกลางใหม 4) ท าซ าขอ 2) จนกระทงคาเฉลยหรอจดศนยกลางในแตละกลมจะไม
เปลยนแปลง
An Example of K-Means Clustering
01/06/57Clustering : K-mean โดย ผศ.วภาวรรณ บวทอง13
มาตรวดความเหมอน
01/06/57Clustering : K-mean โดย ผศ.วภาวรรณ บวทอง14
การจดกลมโดยใชหลกเกณฑตางๆ
01/06/57Clustering : K-mean โดย ผศ.วภาวรรณ บวทอง15
Example: K-Mean Clustering
01/06/57Clustering : K-mean โดย ผศ.วภาวรรณ บวทอง16
Example: K-Mean Clustering
01/06/57Clustering : K-mean โดย ผศ.วภาวรรณ บวทอง17
สมคาเรมตน จานวน k คา เรยกวา cluster centers (centroid) สมมต k =3 แสดงวา c1, c2 และ c3 เปน centroid ทเราสมขนมา
c1(2, 10), c2(5, 8) and c3(1, 2).
Example: K-Mean Clustering
01/06/57Clustering : K-mean โดย ผศ.วภาวรรณ บวทอง18
ขนตอนท 1 หาความหางกนระหวางขอมล 2 ขอมล คอ หาความหางจากขอมล A =(x1, y1) และ centroid =(x2, y2) โดยใชสตร Euclidean ดงน
หรอ
Example: K-Mean Clustering
01/06/57Clustering : K-mean โดย ผศ.วภาวรรณ บวทอง19
ขนตอนท 2 หาระยะหางระหวางขอมล กบจดศนยกลาง (ตวอยางบางชดขอมล)
รอบท 1 ไดการจดกลมขอมลดงตอไปน
01/06/57Clustering : K-mean โดย ผศ.วภาวรรณ บวทอง20
น ามาสรางกลมใหม
01/06/57Clustering : K-mean โดย ผศ.วภาวรรณ บวทอง21
Example: K-Mean Clustering
01/06/57Clustering : K-mean โดย ผศ.วภาวรรณ บวทอง22
ขนตอนท 3 หาคาเฉลยแตละกลม ใหเปน คาจดศนยกลางใหม
ส าหรบ Cluster 1 มจดเดยวคอ A1(2, 10) แสดงวา C1(2,10) ยงคงเดม ส าหรบ Cluster 2 ม 5 จดอยกลมเดยวกน เพราะฉะนนหา C2 ใหม
( (8+5+7+6+4)/5, (4+8+5+4+9)/5 ) = C2(6, 6) ส าหรบ Cluster 3 ม 2 จดอยกลมเดยวกน
( (2+1)/2, (5+2)/2 ) = C3(1.5, 3.5)
Example: K-Mean Clustering
01/06/57Clustering : K-mean โดย ผศ.วภาวรรณ บวทอง23
รอบท 2
Example: K-Mean Clustering
01/06/57Clustering : K-mean โดย ผศ.วภาวรรณ บวทอง24
รอบท 2
Example: K-Mean Clustering
01/06/57Clustering : K-mean โดย ผศ.วภาวรรณ บวทอง25
Example: K-Mean Clustering
01/06/57Clustering : K-mean โดย ผศ.วภาวรรณ บวทอง26
รอบท 3
รอบท 3
Example: K-Mean Clustering
01/06/57Clustering : K-mean โดย ผศ.วภาวรรณ บวทอง27
รอบท 4
Example: K-Mean Clustering
01/06/57Clustering : K-mean โดย ผศ.วภาวรรณ บวทอง28
รอบท 4
Example: K-Mean Clustering
01/06/57Clustering : K-mean โดย ผศ.วภาวรรณ บวทอง29
ขอดและขอดอยของเทคนค K-means
01/06/57Clustering : K-mean โดย ผศ.วภาวรรณ บวทอง30
ขอด
1. เมอจ านวนขอมลมจ านวนมาก และมจ านวนกลมนอย การหาคาเฉลยแบบ K-means อาจจะค านวณไดเรวกวา การจดกลมแบบอน ๆ (Hierarchical)
2. ขนตอนการหาคาเฉลยแบบ K-means อาจจะไดสมาชก ภายในกลมหนาแนนกวาการจดกลมแบบ Hierarchical โดยเฉพาะถากลมเปนวงกลม
ขอดและขอดอยของเทคนค K-means
01/06/57Clustering : K-mean โดย ผศ.วภาวรรณ บวทอง31
ขอดอย
1. การหาคา K ทเหมาะสมคาดเดาไดยาก
2. ท างานไดไมดถากลมขอมลไมเปนรปวงกลม 3. มขอจากดในเรองของขนาด ความหนาแนน และรปราง
Limitations of K-means: Differing Sizes
01/06/57Clustering : K-mean โดย ผศ.วภาวรรณ บวทอง32
Limitations of K-means: Differing Density
01/06/57Clustering : K-mean โดย ผศ.วภาวรรณ บวทอง33
Limitations of K-means: Non-globular Shapes
01/06/57Clustering : K-mean โดย ผศ.วภาวรรณ บวทอง34
Overcoming K-means Limitations
01/06/57Clustering : K-mean โดย ผศ.วภาวรรณ บวทอง35
One solution is to use many clusters.
Find parts of clusters, but need to put together.
Overcoming K-means Limitations
01/06/57Clustering : K-mean โดย ผศ.วภาวรรณ บวทอง36
Overcoming K-means Limitations
01/06/57Clustering : K-mean โดย ผศ.วภาวรรณ บวทอง37
What Is the Problem of the K-Means Method?
01/06/57Clustering : K-mean โดย ผศ.วภาวรรณ บวทอง38
The k-means algorithm is sensitive to outliers ! Since an object with an extremely large value may substantially distort the
distribution of the data
K-Medoids: Instead of taking the mean value of the object in a cluster as a reference point, medoids can be used, which is the most centrally located object in a cluster
01/06/57Clustering : K-mean โดย ผศ.วภาวรรณ บวทอง39
Exercise
01/06/57Clustering : K-mean โดย ผศ.วภาวรรณ บวทอง40
จากขอมลขางลาง จงใช K-means ในการหา Clusters โดยให K=3 และใชขอมล สามเรคอรดแรกเปนคาน าหนก (weight or center) ของ Cluster เรมตน