Thuật toán phân cụm nửa giám sát dựa trên K-Means

Một phần của tài liệu (LUẬN văn THẠC sĩ) nghiên cứu một số phương pháp phân cụm nửa giám sát ứng dụng cho bài toán phân cụm dữ liệu web server logs​ (Trang 29 - 34)

Chương 1 TỔNG QUAN

2.2. Thuật toán phân cụm nửa giám sát dựa trên K-Means

2.2.1. Thuật toán COP-KMeans

Thuật toán COP-KMeans được giới thiệu năm 2001 có thể xem như là một trong những thuật toán phân cụm nửa giám sát đầu tiên. Thuật tốn này tích hợp các ràng buộc (must-link và cannot-link) vào trong quá trình xây dựng các cụm. Trong quá trình lặp để gán nhãn các điểm, sẽ có sự kiểm tra về tính hợp lệ của điểm được gán vào dựa trên các ràng buộc must-link và cannot-link.

Thuật toán COP K-Means đạt kết quả tốt khi thực hiện thử nghiệm trên các tập dữ liệu từ UCI (xem hình 2.2 và 2.3).

Hình 2.2. Minh họa thuật tốn COP-Kmeans [5]

Hình 2.4. Kết quả so sánh của thuật toán COP-KMeans cho tập dữ liệu Soybean [5]

2.2.2. Thuật toán Seed K-Means

Thuật toán Seed K-means giới thiệu năm 2002 là thuật toán sử dụng một số dữ liệu gán nhãn sẵn tên các cụm nhằm trợ giúp quá trình sinh các trọng tâm đầu tiên cho các cụm của thuật toán K-Means [6].

Trong thuật toán Seed K-Means, tác giả đã sử dụng một số seed nhằm vượt qua hạn chế của thuật toán K-Means trong vấn đề lựa chọn các trọng tâm của các cụm – thuật tốn K-Means thường có các kết quả khác nhau sau mỗi lần thực hiện vì chúng phụ thuộc nhiều vào vấn đề lựa chọn các trọng tâm ngẫu nhiên đầu tiên. Ý tưởng cơ bản của thuật toán Seed-KMeans là sử dụng các seed vào ngay bước khởi tạo các trọng tâm và vì vậy thuật tốn sẽ cho ra kết quả tốt hơn chỉ sau duy nhất một lần thực hiện. Thuật tốn Seed K-Means được trình bày trong Algorithm 1.

Algorithm 1: Seed-KMeans; Input:

Tập dữ liệu X = {x1, x2,…,xn}, xi Rn, số lượng cụm k, S = {S1, S2,…Sl}, l = 1,…, k là tập các seed

Output: k cụm của X

Khởi tạo các trọng tâm cho các cụm sử dụng tập các seed S:

Repeat

Gán mỗi điểm x vào cụm h* gần nó nhất; Tính tốn lại các trọng tâm:

t  (t+1)

Until (Thỏa mãn điều kiện hội tụ)

Hình 2.5 Thuật toán Seed K-Means[6]

Bằng cách khởi tạo K cụm từ tập giống, thuật toán Seed K-Means đã giúp cho người dùng có thể can thiệp và điều chỉnh quá trình phân cụm dữ liệu nhằm đạt được một kết quả phân cụm theo ý muốn của mình một cách nhanh nhất.

Thuật toán dựa trên tập giống Seed K-Means do Basu đề xuất vào năm 2002 là thuật tốn điển hình hiện nay về phân cụm nửa giám sát. Các thông tin bổ trợ đều do người dùng cung cấp. Vậy phân cụm nửa giám sát thực chất là quá trình kết hợp giữa người và máy để làm tăng chất lượng phân cụm.

0 ; ,..., 1 : 1 ) 0 (   x hk tS x Sh h h          ( 1) * * * 1 ) 1 ( 1 t h X x t h t h x S

Thuật toán Seed K–Means sử dụng tập giống nhằm vượt qua hạn chế của thuật toán K-Mean trong vấn đề lựa chọn các trọng tâm của các lớp. Các tập giống sẽ được sử dụng trong quá trình khởi tạo các trọng tâm. Vì vậy, thuật tốn sẽ cho ra kết quả xác định sau duy nhất một lần thực hiện.

Trong Seed K-Means, việc chọn tâm do người dùng chỉ định có thể được thay đổi trong q trình thực hiện thuật tốn.

Thuật toán Seed K-Means đã đạt được những kết quả tốt hơn các thuật toán khác như COP-KMeans, và thuật tốn K-Means truyền thống (xem hình 2.6 và 2.7). Hơn nữa khi sử dụng các dữ liệu gán nhãn trong q trình khởi tạo các cụm, thuật tốn chỉ cần thực hiện duy nhất một lần.

Hình 2.7. Kết quả phân cụm cho tập Yahoo[6]

Một phần của tài liệu (LUẬN văn THẠC sĩ) nghiên cứu một số phương pháp phân cụm nửa giám sát ứng dụng cho bài toán phân cụm dữ liệu web server logs​ (Trang 29 - 34)

Tải bản đầy đủ (PDF)

(57 trang)