Phân cụm phân cấp sắp xếp một tập dữ liệu đã cho thành một cấu trúc có dạng hình cây, cây phân cấp này đƣợc xây dựng theo kỹ thuật đệ quy. Cây phân cấp có thể đƣợc xây dựng theo hai phƣơng pháp tổng quát là phƣơng pháp trên xuống (Top down) và phƣơng pháp dƣới lên (Bottom up).
Phương pháp “dưới lên” (Bottom up)
Phƣơng pháp này bắt đầu với mỗi đối tƣợng đƣợc khởi tạo tƣơng ứng với các cụm riêng biệt, sau đó tiến hành nhóm các đối tƣợng theo một độ đo tƣơng tự (nhƣ khoảng cách giữa hai trung tâm của hai nhóm), quá trình này đƣợc thực hiện cho đến khi tất cả các nhóm đƣợc hòa nhập vào một nhóm (mức cao nhất của cây phân cấp) hoặc cho đến khi các điều kiện kết thúc thỏa mãn.
Phương pháp “trên xuống” (Top Down)
Bắt đầu với trạng thái là tất cả các đối tƣợng đƣợc xếp trong cùng một cụm. Mỗi vòng lặp thành công, một cụm đƣợc tách thành các cụm nhỏ hơn theo giá trị của một phép đo độ tƣơng tự nào đó cho đến khi mỗi đối tƣợng là một cụm, hoặc cho đến khi điều kiện dừng thỏa mãn.
Trang 27
Sau đây em xin trình bày hai thuật toán điển hình của phƣơng pháp phân cụm phân cấp đó là: CURE và BIRCH.
2.4.2.1. Thuật toán CURE
Thuật toán CURE (Clustering Using REpresentatives) đƣợc đề xuất bởi Sudipto Guha, Rajeev Rastogi và Kyuseok Shim năm 1998, thuật toán sử dụng chiến lƣợc bottom-up của phƣơng pháp phân cụm phân cấp. Thuật toán CURE sử dụng nhiều đối tƣợng để biểu diễn cho một cụm thay vì sử dụng các trọng tâm hay đối tƣợng tâm. Các đối tƣợng đại diện của một cụm ban đầu đƣợc chọn rải rác đều ở các vị trí khác nhau, sau đó chúng đƣợc di chuyển
Hình 4: Phân cụm phân cấp Top-down và Bottom-up
bottom-up Bƣớc 0 Bƣớc 1 Bƣớc 3 Bƣớc 4 Bƣớc 4 Bƣớc 3 Bƣớc 2 Bƣớc 1 Bƣớc 0 Top-down a b c d e de cde abcde Bƣớc 2 ab
Trang 28
bằng cách co lại theo một tỉ lệ nhất định nào đó. Khi hai cụm có cặp đối tƣợng đại diện gần nhất sẽ đƣợc trộn lại thành một cụm.
Các bước thực hiện của thuật toán CURE
Bước 1: Chọn một mẫu ngẫu nhiên S từ tập dữ liệu ban đầu.
Bước 2: Phân hoạch mẫu S này thành các nhóm dữ liệu có kích thƣớc bằng
nhau. Ý tƣởng chính ở đây là phân hoạch mẫu S thành p nhóm dữ liệu bằng nhau, kích thƣớc của mỗi phân hoạch là n’/p (với n’ là kích thƣớc của mẫu).
Bước 3: Phân cụm các điểm cho mỗi nhóm: Tiến hành phân cụm riêng rẽ cho
mỗi nhóm đến khi mỗi nhóm đƣợc phân thành n’/(pq) cụm (với
q>1).
Bước 4: Loại bỏ các phân tử ngoại lai: Trƣớc hết, khi các cụm đƣợc hình
thành cho đến khi số các cụm giảm xuống một phần so với số các cụm ban đầu. Sau đó, trong trƣờng hợp các phần tử ngoại lai đƣợc lấy mẫu cùng với quá trình pha khởi tạo mẫu dữ liệu, thuật toán sẽ tự động loại bỏ các nhóm nhỏ.
Bước 5: Phân cụm cho các cụm riêng biệt: Các đối tƣợng đại diện đƣợc di
chuyển về phía tâm của cụm mới hình thành. Các đối tƣợng này sẽ mô tả hình dạng cụm đó.
Bước 6: Đánh dấu dữ liệu với các nhãn cụm tƣơng ứng.
Hình ảnh sau là thí dụ về các dạng và kích thƣớc cụm dữ liệu đƣợc khám phá bởi CURE:
Trang 29
Đánh giá thuật toán CURE Ưu điểm:
- CURE có khả năng khám phá đƣợc các cụm có hình thù và kích thƣớc bất kỳ trong tập dữ liệu lớn.
- CURE có thể xử lý tốt các phần tử ngoại lai. - Tốc độ thực hiện của CURE nhanh.
Nhược điểm:
- CURE là dễ bị ảnh hƣởng bởi các tham số cho bởi ngƣời dùng nhƣ cỡ mẫu, số cụm mong muốn.
2.4.2.2. Thuật toán BIRCH
BIRCH (Balanced Interative Reducing and Clustering Hierarchies) do Tian Zhang, Amakrishnan và Livny đề xuất năm 1996, là thuật toán phân cụm phân cấp sử dụng chiến lƣợc Top-down. Ý tƣởng của BIRCH là không lƣu toàn bộ đối tƣợng dữ liệu của các cụm trong bộ nhớ mà chỉ lƣu các tham số thống kê. Đối với mỗi cụm dữ liệu, BIRCH chỉ lƣu bộ ba (n, LS, SS), trong đó: n là số đối tƣợng trong cụm, LS là tổng các giá trị thuộc tính của các đối tƣợng trong cụm, và SS là tổng bình phƣơng của các giá trị thuộc tính của các đối tƣợng trong cụm. Bộ ba này đƣợc gọi là đặc trƣng cụm (Cluster Feature - CF). Khi đó các cụm trong tập dữ liệu ban đầu sẽ đƣợc cho dƣới dạng một
Trang 30
cây CF. Ngƣời ta đã chứng minh đƣợc rằng các đại lƣợng thống kê nhƣ độ đo có thể xác định từ cây CF. Hình sau đây mô tả cấu trúc cây CF.
Cây CF là một cây cân bằng nhằm lƣu các đặc trƣng của cụm. Một cây CF chứa các nút trong và các nút lá, nút trong biểu diễn các cụm, nút lá biểu diễn từng đối tƣợng. Cây CF có hai đặc trƣng cơ bản sau:
Yếu tố nhánh (Branching Factor- B) nhằm xác định tối đa các nút con của một nút trong của cây.
Ngƣỡng (Threshold- T) nhằm xác định khoảng cách tối đa giữa bất kỳ một cặp đối tƣợng trong nút lá của cây CF, khoảng cách này chính là đƣờng kính của các cụm con đƣợc lƣu lại ở các nút lá.
… …. ... Root CF1 CF2 CF3 … CF6 CF1 CF2 CF3 … CF5 Non-leaf
PREV CF1 CF2 … CF6 NEXT PREV CF1 CF2 … CF4 NEXT
Leaf Leaf
Trang 31
Thuật toán BIRCH được thực hiện như sau:
Input: CSDL gồm n đối tƣợng, ngƣỡng T.
Output: k cụm dữ liệu.
Bước 1: BIRCH duyệt tất cả các đối tƣợng trong CSDL và xây dựng một cây
CF ban đầu. Ở giai đoạn này các đối tƣợng lần lƣợt đƣợc chèn vào nút lá gần nhất của cây CF (nút lá của cây đóng vai trò cụm con), sau khi chèn xong thì mọi nút trên cây CF đƣợc cập nhật thông tin. Nếu đƣờng kính của cụm con sau khi chèn lớn hơn ngƣỡng T thì nút đƣợc tách. Khi một đối tƣợng đƣợc chèn thích hợp vào nút lá, tất cả các nút trỏ tới gốc của cây đƣợc cập nhật với các thông tin cần thiết.
Bước 2: Nếu cây CF hiện thời không có đủ bộ nhớ trong thì tiến hành xây
dựng một cây CF nhỏ hơn bằng cách điều khiển bởi tham số T (vì tăng T sẽ làm hòa nhập một số các cụm con thành một cụm, điều này làm cho cây CF nhỏ hơn). Bƣớc này không cần yêu cầu bắt đầu đọc dữ liệu lại từ đầu nhƣng vẫn đảm bảo hiệu chỉnh cây dữ liệu nhỏ hơn.
Bước 3: Thực hiện phân cụm: Các nút lá của cây CF lƣu giữ các đại lƣợng
thống kê của các cụm con. Trong bƣớc này, BIRCH sử dụng các đại lƣợng thống kê này để áp dụng một số kỹ thuật phân cụm, thí dụ nhƣ K-Means và tạo ra một khởi tạo cho phân cụm.
Bước 4: Phân phối lại các đối tƣợng dữ liệu bằng cách dùng các đối tƣợng
trọng tâm cho cụm đã đƣợc khám phá từ bƣớc 3. Đây là một bƣớc tùy chọn để duyệt lại tập dữ liệu và gán nhãn lại cho các đối tƣợng dữ liệu tới các trọng tâm gần nhất. Bƣớc này nhằm để gán nhãn cho các dữ liệu khởi tạo và loại bỏ các phần tử ngoại lai.
Trang 32
Bước 5: BIRCH chọn một thuật toán phân cụm bất kỳ (nhƣ thuật toán phân
hoạch) để thực hiện phân cụm cho tất các các nút lá.
Đánh giá thuật toán BIRCH Ưu điểm:
- BIRCH có tốc độ phân cụm nhanh.
- Áp dụng đối với tập dữ liệu lớn, các tập dữ liệu gia tăng theo thời gian.
Nhược điểm:
- Chất lƣợng cụm đƣợc khám phá bởi BIRCH là không tốt. Ngoài ra tham số ngƣỡng T ảnh hƣởng lớn đến kích thƣớc và tính tự nhiên của cụm.