Thuật toán phân cụm tuần tự BSAS

Một phần của tài liệu Một số thuật toán phân cụm trong khai phá dữ liệu (Trang 35)

Giả sử, tất cả các vector chỉ được tham gia một lần duy nhất vào thuật toán và số lượng cụm là không được biết trước.

Ký hiệu d(x, C) là khoảng cách từ điểm x đến cụm C. Người dùng cần vào các tham số là:

 Ngưỡng không tương tự .

 Số cụm lớn nhất cho phép q.

Ý tưởng cơ bản của thuật toán là: mỗi vector sẽ được hoặc đưa vào một cụm đã có hoặc tạo ra một cụm mới dựa vào khoảng cách của nó tới các cụm đã có sẵn.

Gọi m là số cụm mà thuật toán tạo ra, ta có sơ đồ thuật toán sau:

Các lựa chọn độ đo d(x, C) khác nhau dẫn tới kết quả của thuật toán cũng khác nhau. Khi cụm C được đại diện bằng một vector, d(x, C) trở thành:

d(x, C) = d(x, mC) (2.4)

ở đây mC là đại diện của cụm C. Nếu sử dụng vector trung bình làm đại diện thì việc cập nhật vector này có thể lặp lại theo công thức sau:

Sơ đồ thuật toán phân cụm tuần tự cơ sở

(Basic Sequential Algorithmic Scheme - BSAS)

1. m = 1; Cm = {x1} // Khởi tạo 2. For i = 2 to N do Begin a. Tìm 1 : ( , ) min ( , ) k i k i j j m C d x C d x C    b. If (d(xi, Ck) > ) AND (m < q) then i. m = m + 1; Cm = {xi} // Tạo ra một cụm mới c. Else

ii. Ck = Ck{xi} // Thêm xi vào cụm gần nhất

iii. Cập nhật các đại diện (nếu cần thiết) - End {if}

( 1). k k k k new old C C new C new C n m x m n    (2.5) w ne k C

n là số vector của cụm Ck sau khi thêm vector x vào Ck w( )

ne old

k k

C C

m m là một vector đại diện cho Ck sau khi (trước khi) thêm vector x vào Ck Các thuật toán ở đó mỗi cụm được đại diện bởi một vector thành viên của cụm được gọi là các thuật toán dựa trên tiêu chuẩn phân cụm tổng quát và các thuật toán mà tất cả các vector được sử dụng bằng vector đại diện của nó (vector trung bình chẳng hạn) được gọi là các thuật toán dựa trên tiêu chuẩn phân cụm cục bộ.

Không khó để thấy rằng thứ tự các vector tham gia vào thuật toán BSAS có tầm quan trọng trong các kết quả phân cụm. Thứ tự các vector khác nhau có thể dẫn tới các kết quả phân cụm khác nhau.

Một nhân tố quan trọng khác ảnh hưởng tới kết quả phân cụm là sự chọn lựa ngưỡng . Giá trị ngưỡng này ảnh hưởng trực tiếp tới số cụm được sinh ra. Nếu 

quá nhỏ, thuật toán sẽ tạo ra các cụm không mong muốn; mặt khác, nếu  quá lớn, thuật toán sẽ tạo ra ít cụm. Trong cả hai trường hợp, số cụm sinh ra đều không phù hợp với tập dữ liệu. Khi số cụm lớn nhất được phép q là không giới hạn, chúng ta để tuỳ thuật toán “quyết định” về số các cụm.

Hình 2-1. Sự phụ thuộc của số cụm đƣợc tạo ra và số cụm lớn nhất đƣợc phép q.

Xét ví dụ hình 2.1, ở đây ba cụm là chặt và khá độc lập được tạo thànhbởi các điểm của X. Nếu q = 2, thuật toán BSAS sẽ không thể tìm ra ba cụm. Trong trường hợp đó, hai cụm bên phải sẽ gộp thành một cụm. Mặt khác, nếu q không giới hạn, thuật toán BSAS có thể đưa ra ba cụm (với một lựa chọn xấp xỉ ). Tuy nhiên, ràng buộc

q trở nên cần thiết khi phải phân chia thực hiện mà ở đó các tài nguyên tính toán bị giới hạn.                        

Nhận xét

 Sơ đồ BSAS có thể sử dụng độ đo tương tự thay cho độ đo không tương tự với sửa đổi nhỏ; nghĩa là, toán tử min được thay bằng toán tử max.

 Thuật toán BSAS, với phân cụm theo điểm đại diện, có khuynh hướng hình thành nên các cụm chặt. Do đó, nó không thích hợp nếu cần phải đưa ra nhiều loại cụm khác nhau.

Một phần của tài liệu Một số thuật toán phân cụm trong khai phá dữ liệu (Trang 35)

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

(131 trang)