Thuật toán lập nhóm theo cây phân cấp

Một phần của tài liệu xây dựng tập thuộc tính rút gọn theo cách tiếp cận tập thô (Trang 43 - 45)

* Thuật toán theo cây phân cấp từ trên xuống (Top Down Hierachical Clustering)

Input: M: số văn bản;

Output: Cây phân cấp trên xuống của các văn bản;

Bước 1: Gán các văn bản vào 1 nhóm

Bước 2: Tìm điều kiện phân chia thành 2 nhóm.

Bước 3: Chia các nhóm đó thành 2 nhóm. Xóa nhóm cũ, cập nhật nhóm mới. Bước 4: Lặp Bước 1 và Bước 3 đến khi mỗi văn bản thuộc vào 1 nhóm.

* Thuật toán theo cây phân cấp từ dƣới lên (Bottom Up Hierachical Clustering)

Input: M: số văn bản;

Output: Cây phân cấp từ dưới lên của các văn bản;

Thuật toán:

Bước 1: Gán các văn bản vào 1 nhóm Bước 2: Tính độ tương tự giữa các nhóm.

Bước 3: Chọn ra 2 nhóm có độ tương tự cao nhất, kết hợp lại thành 1 nhóm mới, loại bỏ nhóm cũ.

Bước 4: Lặp lại bước 2 và bước 3 cho đến khi chỉ còn 1 nhóm duy nhất chứa bộ các văn bản.

* Giải thuật lập nhóm Non Hierachical Clustering Overlap

Input: Tập văn bản D gồm m văn bản, K là số văn bản cần lập nhóm. Output: K nhóm chứa các văn bản đã được phân nhóm.

Thuật toán:

Bước 1: Xác định các đại diện ban đầu R1, R2…Rk của các nhóm C1, C2…Ck , như là K văn bản được chọn ngẫu nhiên trong tập D.

Bước 2: Với mỗi văn bản dj thuộc D, tính độ tương tự S(U(R, dj), Rk) giữa các xấp xỉ cận trên U(R, dj) của nó và các đại diện nhóm Rk với k=1…K; Nếu độ tương tự lớn hơn một ngưỡng cho trước thì gán dj vào Ck đó và lấy giá trị độ đo tương tự này như thứ tự xếp hạng của văn bản trong nhóm m(dj) của dj trong Ck.

Bước 3: Với mỗi nhóm Ck, xác định lại đại diện Rk của nó.

Bước 4: Lặp lại bước 2 và 3 cho đến khi có rất ít hoặc không có sự thay đổi nào trong các thành viên của các nhóm.

         N k kj N k kj N k kj j k j j D d d S 1 2 2 1 2 1 1 2 1 2 1, ) (    

Bước 5: Coi du là các văn bản chưa phân nhóm sau bước 2, 3, 4 và NN (du) là các văn bản lân cận nhất (độ tương tự khác 0) trong các nhóm đã thiết lập. (Trong đó: NN (Neasets Neighbor) - văn bản gần nhất); Gán du vào nhóm chứa NN(du) và xác định các thành viên nhóm của du trong lớp này bằng công thức:

m(du) =m((NN)( du)) x S(U(R, du), U(R, NN(du))). Xác định lại các đại diện Rk, k=1…K.

Một phần của tài liệu xây dựng tập thuộc tính rút gọn theo cách tiếp cận tập thô (Trang 43 - 45)

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

(66 trang)