Hierarchical Clustering Là Gì?

Hierarchical Clustering (phân cụm phân cấp) là một thuật toán học máy phân nhóm dữ liệu thành một cấu trúc cây, không cần chỉ định trước số lượng cụm. Nó tạo ra một biểu đồ hình cây gọi là dendrogram, giúp bạn nhìn thấy toàn bộ mối quan hệ giữa các điểm dữ liệu ở nhiều mức độ khác nhau.
Khác với K-Means bắt bạn chọn trước “chia làm mấy nhóm”, Hierarchical Clustering để dữ liệu tự nói lên cấu trúc của nó. Bạn có thể cắt cây ở bất kỳ độ cao nào để拿到 số lượng cụm mong muốn.
Cách Thức Hoạt Động Của Hierarchical Clustering
Có hai hướng tiếp cận chính: Agglomerative (từ dưới lên) và Divisive (từ trên xuống).
Agglomerative — Gom Nhóm Từ Dưới Lên
Đây là hướng phổ biến nhất. Mỗi điểm dữ liệu ban đầu là một cụm riêng biệt. Thuật toán tìm hai cụm gần nhau nhất rồi gộp lại. Quá trình lặp đi lặp lại cho đến khi tất cả hợp thành một cụm duy nhất.
Cách đo khoảng cách giữa các cụm (linkage) quyết định kết quả rất nhiều. Single linkage lấy khoảng cách nhỏ nhất giữa hai điểm thuộc hai cụm. Complete linkage lấy khoảng cách lớn nhất. Average linkage dùng trung bình. Ward’s method tối thiểu hóa phương sai khi gộp.
Divisive — Chia Tách Từ Trên Xuống
Ngược lại, bắt đầu với một cụm lớn chứa tất cả dữ liệu. Thuật toán tìm cách chia thành hai cụm con, rồi tiếp tục chia từng cụm con cho đến khi mỗi điểm là một cụm riêng. Phương pháp này ít dùng hơn vì tính toán phức tạp hơn.
Dendrogram Là Gì và Cách Đọc
Dendrogram là biểu đồ hình cây cho thấy quá trình gộp hoặc chia cụm. Trục tung thể hiện khoảng cách (hoặc độ tương đồng) giữa các cụm. Mỗi đường ngang đại diện cho một lần gộp.
Để chọn số lượng cụm, bạn vẽ một đường ngang cắt qua dendrogram. Vị trí bạn cắt quyết định bao nhiêu cụm sẽ có. Cắt càng cao, cụm càng ít nhưng tổng quát hơn. Cắt càng thấp, cụm càng nhiều nhưng chi tiết hơn.
Sự Khác Biệt Giữa Hierarchical Clustering và K-Means
K-Means yêu cầu bạn xác định trước số cụm (k), nhạy cảm với giá trị khởi tạo ban đầu, và chỉ hoạt động tốt với cụm hình cầu. Hierarchical Clustering không cần biết trước số cụm, hoạt động với bất kỳ hình dạng cụm nào, và tạo ra cấu trúc phân cấp mà K-Means không thể.
Trade-off là tốc độ. K-Means chạy nhanh, độ phức tạp O(nk). Hierarchical Clustering chậm hơn đáng kể, độ phức tạp O(n² log n) cho agglomerative. Với dataset lớn hơn vài chục nghìn điểm, Hierarchical Clustering bắt đầu gặp vấn đề về hiệu năng.
Ưu Điểm Của Hierarchical Clustering
Không cần chọn trước số cụm. Đây là lợi thế lớn nhất. Bạn xây dendrogram xong rồi mới quyết định, dựa trên trực quan thay vì đoán mò.
Cấu trúc phân cấp cung cấp thông tin phong phú. Trong phân tích khách hàng, bạn có thể xem ở cấp cao: VIP vs thường, rồi cấp thấp hơn: VIP tích cực vs VIP thụ động. K-Means chỉ cho bạn một mức phân chia duy nhất.
Deterministic. Chạy lại nhiều lần trên cùng dữ liệu luôn cho cùng kết quả. K-Means có thể cho kết quả khác nhau mỗi lần chạy do khởi tạo ngẫu nhiên.
Nhược Điểm Cần Lưu Ý
Chi phí tính toán cao. Với 10.000 điểm dữ liệu, ma trận khoảng cách đã tốn 100 triệu ô. Với 100.000 điểm, con số đó là 10 tỷ. Hierarchical Clustering không phù hợp cho big data.
Quyết định gộp không thể hoàn tác. Một khi hai cụm đã gộp, thuật toán không bao giờ tách chúng ra lại. Nếu ở bước đầu gộp sai, sai lầm lan truyền đến cuối. Đây là điểm yếu so với K-Means có thể hội tụ lại.
Nhạy cảm với nhiễu và outlier. Một điểm nhiễu ở giữa hai cụm có thể kéo chúng lại gần nhau, tạo ra kết quả phân cụm sai lệch.
Ứng Dụng Thực Tế
Phân tích khách hàng (customer segmentation): chia khách hàng theo hành vi mua sắm, từ đó cá nhân hóa marketing. Hierarchical Clustering đặc biệt phù hợp vì khách hàng tự nhiên có cấu trúc phân cấp — ngành > loại khách > nhóm chi tiết.
Sinh học và genomics: phân loại gen,蛋白质, hoặc loài sinh vật theo cấu trúc tiến hóa. Dendrogram trong sinh học chính là biểu đồ phân loại thứ bậc mà Darwin đã mơ tới.
Phân tích văn bản: nhóm tài liệu, bài báo theo chủ đề ở nhiều cấp độ. Một bài viết có thể thuộc “công nghệ” > “AI” > “LLM” mà không cần gán nhãn trước.
Phát hiện bất thường: các điểm dữ liệu gộp vào cụm muộn nhất (ở độ cao cao nhất trên dendrogram) thường là outlier.
Chọn Linkage Nào?
Single linkage dễ bị “chaining” — các cụm kéo dài như chuỗi sausage, hai cụm gần nhau chỉ cần một điểm nối. Complete linkage ngược lại, tạo cụm gọn nhưng dễ bị outlier kéo phình. Ward’s method thường cho kết quả cân đối nhất, tối ưu phương sai nên giống K-Means về mặt tối ưu hóa.
Trên thực tế, Ward là mặc định an toàn cho đa số bài toán. Nếu dữ liệu có nhiều nhiễu, thử average linkage. Tránh single linkage trừ khi bạn biết mình đang làm gì.
Khi Nào Nên Dùng Hierarchical Clustering?
Dataset nhỏ đến trung bình (dưới 10.000 điểm). Khi bạn cần hiểu cấu trúc phân cấp của dữ liệu. Khi không biết trước bao nhiêu cụm là hợp lý. Khi cần visualization trực quan qua dendrogram.
Ngược lại, nếu dataset lớn, cần tốc độ, và đã biết số cụm, K-Means hoặc DBSCAN là lựa chọn tốt hơn. Hierarchical Clustering cũng không scale tốt cho streaming data — mỗi lần thêm điểm mới, phải chạy lại từ đầu.
Lời Kết
Hierarchical Clustering là thuật toán đẹp về mặt lý thuyết, trực quan về mặt biểu diễn, và mạnh mẽ khi bạn cần khám phá cấu trúc ẩn trong dữ liệu. Nó không phải lựa chọn cho mọi bài toán, nhưng khi phù hợp, dendrogram cung cấp insight mà không thuật toán phân cụm nào khác cho được.
Nếu bạn mới làm quen với unsupervised learning, Hierarchical Clustering là bước đệm tuyệt vời để hiểu cách dữ liệu tự tổ chức — trước khi chuyển sang các phương pháp phức tạp hơn như DBSCAN hay spectral clustering.
Thuật ngữ liên quan
- .htaccess Là Gì? Tệp Cấu Hình Apache Giải Thích Dễ Hiểu Cho Người Mới
- 301 Redirect Là Gì? Hướng Dẫn Chuyển Hướng URL Không Mất SEO
- Adam Optimizer Là Gì? Giải Thích Dễ Hiểu Về Bộ Tối Ưu Hàng Đầu Deep Learning
- Adapter Layer (Lớp Adapter) Là Gì? Giải Thích Dễ Hiểu Cho Người Mới
- Adversarial Training (Huấn Luyện Đối Kháng) Là Gì? Giải Thích Dễ Hiểu Cho Người Mới
Xem toàn bộ thư viện thuật ngữ AI & SEO A-Z.


