Professional Documents
Culture Documents
Gom Cụm Dữ Liệu: Ha Le Hoai Trung
Gom Cụm Dữ Liệu: Ha Le Hoai Trung
Ha Le Hoai Trung
5/11/2021 1
Nội Dung
1. Tổng quan về gom cụm dữ liệu
2. Gom cụm dữ liệu bằng mạng Kmean
3. Gom cụm dữ liệu bằng mạng Kohonen
4. Một số phương pháp khác
5/11/2021 2
Tổng quan về gom cụm dữ liệu
• Outlier detection
5/11/2021 3
Tổng quan về gom cụm dữ liệu
• Nhận diện phần tử biên (outliers) và giảm thiểu nhiễu
(noisy data): phân tích cụm (cluster analysis)
5/11/2021 4
Tổng quan về gom cụm dữ liệu
5/11/2021 5
Tổng quan về gom cụm dữ liệu
5/11/2021 6
Tổng quan về gom cụm dữ liệu
5/11/2021 7
Tổng quan về gom cụm dữ liệu
5/11/2021 8
Tổng quan về gom cụm dữ liệu
• Tiền xử lý dữ liệu (data preprocessing)
• Nhận dạng mẫu (pattern recognition)
• Xử lý ảnh (image processing)
• Phân mảnh thị trường (market segmentation)
• Gom cụm tài liệu (www document clustering)
•…
5/11/2021 9
Tổng quan về gom cụm dữ liệu
• Gom cụm
Gom cụm dữ liệu/đối tượng vào các cụm
Các đối tượng trong cùng một cụm tương tự với
nhau hơn so với đối tượng ở các cụm khác
Gom cụm
5/11/2021 10
Tổng quan về gom cụm dữ liệu
• Gom cụm
Gom cụm dữ liệu/đối tượng vào các cụm
Các đối tượng trong cùng một cụm tương tự với
nhau hơn so với đối tượng ở các cụm khác
Intra-cluster
distances are
minimized.
Inter-cluster
distances are
maximized.
5/11/2021 11
Tổng quan về gom cụm dữ liệu
Ma trận dữ liệu Ma trận khác biệt
N Đối tượng D(i, j) sự khác biệt
P Thuộc tính giữa đối tượng i và j
5/11/2021 13
Tổng quan về gom cụm dữ liệu
• Độ đo khoảng cách Minkowski
𝑞 𝑞 𝑞 𝑞
𝑑 𝑖, 𝑗 = 𝑥𝑖1 − 𝑥𝑗1 + 𝑥𝑖2 − 𝑥𝑗2 + … + 𝑥𝑖𝑝 − 𝑥𝑗𝑝
5/11/2021 14
Tổng quan về gom cụm dữ liệu
5/11/2021 15
Tổng quan về gom cụm dữ liệu
5/11/2021 16
Tổng quan về gom cụm dữ liệu
• Bao nhiêu cụm nên được tạo ra?
• Mỗi cụm nên có bao nhiêu phần tử?
5/11/2021 17
2 cụm 4 cụm
Tổng quan về gom cụm dữ liệu
• Các yêu cầu
Khả năng co giãn về tập dữ liệu (scalability)
Khả năng xử lý nhiều kiểu thuộc tính khác nhau (different types of
attributes)
Khả năng khám phá các cụm với hình dạng tùy ý(clusters with
arbitrary shape)
Tối thiểu hóa yêu cầu về tri thức miền trong việc xác định các
thông số nhập (domain knowledge for input parameters)
Khả năng xử lý dữ liệu có nhiễu (noisy data)
5/11/2021 18
Tổng quan về gom cụm dữ liệu
• Các yêu cầu
Khả năng gom cụm tăng dần và độc lập với thứ tự của dữ
liệu nhập (incremental clustering and insensitivity to the
order of input records)
Khả năng xử lý dữ liệu đa chiều (high dimensionality)
Khả năng gom cụm dựa trên ràng buộc (constraintbased
clustering)
Khả diễn và khả dụng (interpretability and usability)
5/11/2021 19
Tổng quan về gom cụm dữ liệu
• Phân loại các phương pháp gom cụm
Phân hoạch (partitioning)
Phân cấp (hierachical)
Dựa trên mật độ (density-based)
Dựa trên lưới (grid-based)
Dựa trên mô hình (model-based)
5/11/2021 20
Tổng quan về gom cụm dữ liệu
• Phân hoạch (partitioning)
5/11/2021 21
Tổng quan về gom cụm dữ liệu
5/11/2021 22
Gom cụm dữ liệu bằng thuật toán K-Means
5/11/2021 23
Thuật toán gom cụm K-Means
• Ý tưởng
Mỗi cụm được đại diện bởi trọng tâm
Phân đối tượng vào một cụm nếu khoảng cách từ đối
tượng đó đến trọng tâm của cụm đang xét nhỏ nhất
Cập nhật lại trọng tâm của cụm
Lặp lại quá trình trên đến khi hàm mục tiêu nhỏ hơn
ngưỡng cho phép hoặc các trọng tâm không đổi
5/11/2021 24
Thuật toán gom cụm K-Means
• Thuật toán
1. Chọn ngẫu nhiên k điểm làm trọng tâm ban đầu của
k cụm
2. Gán từng điểm vào cụm có trọng tâm gần điểm
đang xét. Dừng khi không có phép gán nào được
thực hiện.
3. Tính lại trọng tâm từng cụm
4. Quay lại bước 2
5/11/2021 25
Thuật toán gom cụm K-Means
5/11/2021 26
Thuật toán gom cụm K-Means
Ví dụ
• Phân cụm với k=2 dữ liệu là các tập điểm sau:
xi1 Xi2
X1 1 3
X2 1.5 3.2
x3 1.3 2.8
x4 3 1
5/11/2021 27
Thuật toán gom cụm K-Means
Ví dụ
• k=2
• Khởi tạo ma trận phân hoạch M[4,2] // 4 cột ứng với 4 điểm, 2 dòng
ứng với 2 cụm
x1 x2 x3 X4
C1 1 0 0 0
c2 0 1 1 1
5/11/2021 28
Thuật toán gom cụm K-Means
Ví dụ
• Tính vector trọng tâm v1(v11, v12), v2(v21, v22)
xi1 Xi2 x1 x2 x3 X4
X1 1 3 C1 1 0 0 0
X2 1.5 3.2 c2 0 1 1 1
x3 1.3 2.8
x4 3 1
m21∗x12m22∗x22m23∗x32m24∗x42
𝑣22 =
m21 m22 m23m24
• V2=(1.93, 2.33)
0 ∗3 1∗3.2 1∗ 2.8 1∗1 7
= = = 2.33
5/11/2021 0 111 3 32
Thuật toán gom cụm K-Means
Ví dụ
• Tính khoảng cách euclide xi1 Xi2
X1 1 3
• 𝑑 𝑥1, 𝑣1 = (𝑥11 − 𝑣11)2 +(𝑥12 − 𝑣12)2 X2 1.5 3.2
x3 1.3 2.8
= (1 − 1)2 +(3 − 3)2 = 0
x4 3 1
5/11/2021 34
Thuật toán gom cụm K-Means
Ví dụ
• D(x2, v1)=0.54 < d(x2, v2)=0.97 x2 được xếp vào c1
• D(x3, v1)=0.36 < d(x3, v2)=0.78 x3 được xếp vào c1
• D(x4, v1)=2.83 < d(x4, v2)=1.7 x4 được xếp vào c2
X1 X2 X3 X4
• Cập nhật ma trận M C1 1 1 1 0
C2 0 0 0 1
5/11/2021 35
Nhận xét
• Ưu điểm
Nhanh
Phù hợp với các cụm hình cầu
• Hạn chế
Phải xác định trước k
Không đảm bảo được tối ưu toàn cục
Không thể xử lý nhiễu và ngoại lai
Chỉ áp dụng được khi tính được trọng tâm
5/11/2021 36
Bài tập nhóm
• Nhóm: 5 sinh viên. Thời gian: 10 phút
• Sử dụng thuật toán K_means và độ đo Euclide để phân tập 7 điểm
sau thành 3 cụm.
P1 3 6
P2 5 4
P3 1 8
P4 1 10
P5 7 8
P6 8 8
P7 2 9
5/11/2021 37
Gom cụm dữ liệu bằng mạng Kohonen
5/11/2021 38
Gom cụm bằng mạng Kohonen
• Học có giám sát (supervised learning)
• Biết trước số lớp cần phân loại.
• Dựa vào đặc trưng của các bộ dữ liệu đầu vào (đã thuộc vào
một phân lớp), học để phân lớp vào một trong các lớp đã
biết.
• Bài toán Phân lớp
• Học không có giám sát (unsupervised learning)
• Không biết trước số lớp cần phân loại
• Bài toán Gom cụm
5/11/2021 39
Gom cụm bằng mạng Kohonen
• Mạng Kohonen được đề xuất và phát triển bởi Teuvo
Kohonen vào những năm 1980
• Self-Organizing Map (SOM), Kohonen map, Kohonen
Artifical Neural Networks
• Là phương pháp học không giám sát
• Thực hiện ánh xạ để giảm kích thước tập huấn luyện
• Mạng neural truyền thẳng sử dụng thuật toán học không
giám sát
5/11/2021 40
Gom cụm bằng mạng Kohonen
• Ý tưởng:
Với tập đối tượng O, gom cụm các đối tượng thành
các cụm sao cho:
Các đối tượng trong cùng cụm cụm có mức độ tương tự
cao
Các đối tượng khác cụm có mức tương tự thấp
Self-Organizing Map biểu diễn một tập các đối
tượng thành các điểm trên ma trận 2 chiều, khoảng
cách giữa các đối tượng trên ma trận phản ánh độ
tương đồng giữa các đối tượng
5/11/2021 41
Gom cụm bằng mạng Kohonen
5/11/2021 42
Gom cụm bằng mạng Kohonen
• Ý tưởng:
Kích thước ma trận (map) được xác định từ đầu,
trọng số của các phần tử (neural) được khởi tạo ngẫu
nhiên
Trong quá trình học, dùng độ đo để tìm neural có
khoảng cách nhỏ nhất đến mẫu học, gọi là neural
chiến thắng
Cập nhật trọng số và vùng lân cận
5/11/2021 43
Gom cụm bằng mạng Kohonen
• Có rất nhiều biến thể của thuật toán gom cụm
bằng mạng Kohonen
• Ứng dụng: phân tích đầu tư, phân loại khách
hàng, phân loại tài liệu,…
5/11/2021 44
Tài liệu tham khảo
1. Đỗ Phúc, Giáo trình Khai thác dữ liệu, ĐHQG TPHCM, 2012.
2. Đỗ Phúc, Slide Bài giảng Khai thác dữ liệu, ĐHQG TPHCM.
3. Khoa Khoa học và Kỹ thuật máy tính, Bài giảng Khai phá dữ
liệu, Trường Đại học Bách khoa Tp. Hồ Chí Minh, 2019.
4. Hồ Tú Bảo, Introduction to knowledge discovery and data mining,
IOIT, 2001.
5. Jiawei Han, Micheline Kamber, and Jian Pei, Data Mining
Concepts and Techniques, 3 edition, Morgan Kaufmann
Publishers, 2011.
6. X. Wu, V. Kumar, J. Ross Quinlan, Top 10 Algorithms in Data
Mining, Chapman & Hall/CRC, Taylor & Francis Group, LLC, 2009.
7. Graham J. Williams, Simeon J. Simoff, “Data Mining: Theory,
Methodology, Techniques, and Applications”, Springer-Verlag,
2006.
5/11/2021 45