k-Means: Giải thuật k-means [1] cú tham số đầu vào là k và phõn hoạch tập
cỏc đối tượng bờn trong một cluster và xem đú là trọng tõm của cluster. Giải thuật này hoạt động như sau: Trước tiờn, lựa chọn ngẫu nhiờn kđối tượng, mỗi đối tượng là một biểu diễn ban đầu cho trọng tõm của một cluster. Mỗi đối tượng cũn lại được gỏn vào cluster mà gần giống với nú nhất dựa trờn khoảng cỏch giữa đối tượng đú và trọng tõm của cluster. Sau đú tớnh toỏn lại trọng tõm cho mỗi cluster. Quỏ trỡnh này lặp lại cho tới khi hàm tiờu chuẩn hội tụ. Thụng thường tiờu chuẩn bỡnh phương lỗi (square-error criterion) được sử dụng:
với E là tổng bỡnh phương lỗi của tất cảđối tượng trong tập dữ liệu; p là điểm trong khụng gian mụ tả một đối tượng; mi là trọng tõm của cluster Ci (cả p và mi là đa chiều). Giải thuật này được tổng kết lại như sau:
Hỡnh sau minh họa giải thuật k-means:
Hỡnh 1.7: Clustering dựa trờn giải thuật k-means
Phương phỏp này tương đối bền vững và hiệu quả trong xử lý tập dữ liệu lớn bởi vỡ độ phức tạp tớnh toỏn của giải thuật là O(nkt) với n là tổng số đối tượng, k là số
cluster và t là số lần lặp. Thụng thường k << n và t << n . Giải thuật này thường kết thỳc khi đạt tối ưu húa cục bộ. Tuy nhiờn, phương phỏp này chỉ ỏp dụng được khi giỏ trị trung bỡnh (trọng tõm) của một cluster được định nghĩa; điều này khú cú thể ỏp dụng được trong một sốứng dụng khi dữ liệu cú dạng phức tạp. Phương phỏp này chỉ phự hợp đối với việc phỏt hiện cỏc cluster lồi.
Cú một vài mở rộng cho giải thuật này, chẳng hạn giải thuật EM
(Expectation-Maximization). Trong khi k-means mỗi đối tượng được gỏn cho một cluster thỡ với phương phỏp EM mỗi đối tượng được gỏn cho mỗi cluster tương ứng với một biểu diễn trọng số xỏc suất của cỏc thành viờn của nú. Núi cỏch khỏc, khụng cú vựng biờn rừ ràng giữa cỏc cluster. Phần tiếp theo sẽ trỡnh bày về giải thuật này.
Expectation-Maximization: Giải thuật này[1] thuộc về nhúm cỏc phương phỏp clustering dựa trờn mụ hỡnh, cố gắng tối ưu húa sự phụ hợp giữa dữ liệu ban đầu với một vài mụ hỡnh toỏn học. Cỏc phương phỏp này thường giả thiết rằng dữ liệu được sinh ra dựa trờn sự pha trộn của cỏc phõn bố xỏc suất. EM là một sự mở rộng của phương phỏp k-means.
Trong thực tế, mỗi cluster cú thể được biểu diễn một cỏch toỏn học bởi một tham số phõn bố xỏc suất. Tồn bộ dữ liệu là sự hũa trộn của cỏc phõn bố này, sử dụng mụ hỡnh mật độ hỗn hợp (mixture density model) hữu hạn của k phõn bố xỏc
suất trong đú mỗi phõn bố biểu diễn cho mỗi cluster. Vấn đề ởđõy là xỏc định cỏc tham số của cỏc phõn bố xỏc suất phự hợp nhất cho dữ liệu. Hỡnh vẽ sau minh họa một vớ dụ đơn giản về mụ hỡnh mật độ hỗn hợp cú giới hạn; ở đõy cú hai cluster trong đú mỗi cluster tũn theo phõn bố chuẩn hoặc phõn bố Gaussian với cỏc giỏ trị trung bỡnh và độ lệch tiờu chuẩn.
Hỡnh 1.8: Mỗi cluster được biểu diễn bởi một phõn bố xỏc suất
EM bắt đầu bằng việc khởi tạo cỏc ước lượng hay phỏng đoỏn về cỏc tham số của mụ hỡnh hỗn hợp (mixture model), sau đú lặp lại quỏ trỡnh gỏn giỏ trị cho cỏc đối tượng dựa vào mật độ hỗn hợp được tạo ra bởi vector tham số húa. Cỏc đối tượng đĩ được tớnh giỏ trị sau đú được sử dụng để cập nhật lại cỏc tham số phỏng đoỏn. Mỗi đối tượng được gỏn cho một xỏc suất mà xỏc suất này sở hữu một tập cỏc giỏ trị thuộc tớnh nào đú và đối tượng thuộc về một cluster nào đú. Giải thuật này được mụ tả như sau:
1. Tạo ra một phỏng đoỏn ban đầu cho vector tham số húa: Chọn ra một cỏch ngẫu nhiờn k đối tượng để biểu diễn giỏ trị trung bỡnh của cluster hoặc tõm của cluster cũng như phỏng đoỏn cho cỏc tham số thờm vào. 2. Lặp lại 2 bước E (Expectation) và M (Maximization):
Trong đú p(xi|Ck) = N(mk, Ek(xi)) dựa trờn phõn bố chuẩn (chẳng hạn
Gaussian) xung quanh giỏ trị trung bỡnh mk, với ExpectationEk. Núi cỏch khỏc, ở bước này thỡ với mỗi cluster sẽ tớnh toỏn lại giỏ trị xỏc suất cho cỏc thành viờn của cluster. Cỏc xỏc sũt này là thành viờn
clusterđược mong đợi cho đối tượng xi.
b. Bước M: Sử dụng xỏc suất phỏng đoỏn ở trờn để tớnh toỏn lại cỏc tham số của mụ hỡnh, chẳng hạn: