Giải thuật phõn cụm K-means

Một phần của tài liệu Tiểu luận Phân cụm tập kết quả tìm kiếm web dựa vào tập thô dung sai (Trang 33 - 35)

T C= [tcx,y] MxM

3.1.4.Giải thuật phõn cụm K-means

Giải thuật được thực hiện để sinh ra K nhúm ( K được chọn phụ thuộc vào chiều dài (số lượng cỏc snippet) của D)

Gii thut

Input: D – tập N snippet, K- số nhúm, δ - ngưỡng tương tự với …

Output: K nhúm cỏc snippet từ tập D (cú thể nạp chồng) với giỏ trị thuộc mờ

1. Khởi tạo đại diện của mỗi nhúm C1, C2 , …., CK bằng cỏc chọn ngẫu nhiờn K snippet từ tập D. K đại diện nhúm được ký hiệu lần lượt như sau: R1, R2, …, RK

2. repeat

3. for each di∈ D do

4. for each cluster Ck, k=1,…,K do

5. Tớnh mức độ tương tự giữa xấp xỉ trờn của sniptet di với phần tửđại diện Rk : S(UR(di), Rk) ( sử dụng phộp đo lường theo hệ số gúc cosin)

6. if S(UR(di), Rk) > δ then

7. gỏn di vào nhúm Ck , với mức độ tương tự bằng giỏ hàm thuộc vào nhúm: m(di, Ck) = S(UR(di), Rk)

8. end if

9. end for

10. end for

11. for each cluster Ck do

13. end for

14. until khụng cú sự thay đổi hoặc chỉ thay đổi rất it giỏ trị của hàm thuộc

/* Vỡ do yờu cầu ràng buộc mức độ tương tự giữa cỏc snippet phải lớn hơn ngưỡng δ, do vậy mà sau tất cả cỏc vũng lặp trờn vẫn tồn tại một số snippet

khụng được gắn vào bất cứ nhúm nào. Lỳc này cú 2 giải phỏp được đặt ra: + Tạo ra một nhúm đặc biệt Other và gắn tất cỏc snippet chưa thuộc nhúm nào vào trong nhúm Other

+ Gắn những tài liệu đú vào những nhúm mà chỳng cú lỏng giềng gần nhất cũng ở trong nhúm đú.

Trong bài này thỡ chọn giải phỏp 2 */

15. for each du chưa được phõn lớp (chưa được gắn vào bất kỳ nhúm nào) do

16. Tỡm lỏng giềng gần nhất của du ký hiệu NN(du) với mức độ tương tự

khỏc khụng

17. Trong số những nhúm mà NN(du) thuộc về, chọn một nhúm Ck mà NN(du) cú hàm thuộc là mạnh nhất

18. Gỏn du vào nhúm Ck và tớnh giỏ trị của hàm thuộc (tớnh mức độ phụ

thuộc của du vào nhúm Ck) như sau: m(du, Ck) = m(NN(du),Ck) * S(UR(du),UR (NN(du))) 19. end for 20. if cần thiết ta cú thể xỏc định lại phần tử đại diện của nhúm Rk đối với những nhúm cú sự thay đổi. * Giải thuật xỏc định đại diện nhúm (determine_cluster_representatives(RK)) Đại diện nhúm Rk thể hiện nột đặc trưng tiờu biểu của nhúm k, do đú : - Mỗi snippet d trong nhúm C phải chứa ớt nhất một từ trong R .

- Những từ trong Rk phải xuất hiện trong hầu hết cỏc snippet thuộc nhúm Ck .

- Khụng phải từ nào trong Rk cũng cần phải xuất hiện trong mỗi snippet thuộc về nhúm Ck .

Trọng sốđối với mỗi từ tj trong Rkđược tớnh như sau:

}{ i k j i { i k j i C d ij ij d t C d w w i k ∈ ∈ = ∑ ∈ Giải thuật: 1. Rk= ∅ (adsbygoogle = window.adsbygoogle || []).push({});

2. for all di∈ Ck and tj∈ di do 3. if f fCk(tj)/Ck >σ do 4. Rk = Rk ∪ tj

5. end if 6. end for

7. if di∈ Ck and di∩ Rk = ∅ then

8. Rk = Rk ∪ argmaxRk ∪argmaxtjdiwij 9. end if

trong đú fC (tj)

k là số tài liệu trong nhúm Ck cú chứa từ tj .

Một phần của tài liệu Tiểu luận Phân cụm tập kết quả tìm kiếm web dựa vào tập thô dung sai (Trang 33 - 35)