Thuật toán DENCLUE

Một phần của tài liệu Các kỹ thuật phân cụm trong khai phá dữ liệu (Trang 51)

DENCLUE (DENsity-based CLUstEring) là một đại diện thứ ba PCDL dựa

trên mật độ nhưng sử dụng một cách tiếp cận khác, dựa trên tập các hàm phân phối mật độ [10]. Ý tưởng chính của thuật toán như sau:

 Sự tác động của một đối tượng tới láng giềng của nó được xác định bởi hàm ảnh hưởng (Influence Function).

 Mật độ toàn cục được mô hình như là tổng tất cả các hàm ảnh hưởng của các đối tượng.

 Các cụm được xác định bởi các điểm hấp dẫn mật độ (density attactors), các điểm này là các điểm cực đại địa phương của hàm mật độ toàn cục.

Hàm ảnh hưởng được định nghĩa như sau: Cho x, y là hai đối tượng trong

không gian d chiều Fd, hàm ảnh hưởng của đối tượng y lên đối tượng x được xác

định như sau: fBy:FdR y0,  fBy( )x . Hàm ảnh hưởng là hàm tùy chọn, miễn là nó được xác định bởi khoảng cách d(x, y) của các đối tượng, ví dụ như khoảng cách Euclidean. Một số ví dụ về hàm ảnh hưởng như sau:

Hàm sóng ngang: 0 if d(x,y)> ( , ) 1 if d(x,y) square f x y        trong đó  là một ngưỡng.  Hàm Gaussian: 2 2 ( , ) 2 aussian( , ) d x y G f x ye 

Biểu diễn của hàm hai hàm trên được mô tả trong hình 3.15 dưới đây:

Hình 3.15. Biểu diễn hàm ảnh hƣởng sóng ngang và Gaussian

Trong hình, các điểm hấp dẫn mật độ (Density attractors) là các giá trị đỉnh

(cực đại hoá địa phương). Sau đó, một cụm trung tâm với điểm hấp dẫn x* là một tập con C, với hàm mật độ tại x* là nhỏ hơn .

Chúng ta thấy rằng, DENCLUE phụ thuộc nhiều vào ngưỡng nhiễu  (noise

threshold) và tham số mật độ  (density parameter). Mặt khác, DENCLUE có các ưu điểm sau:

 Có cơ sở toán học vững chắc

 Có khả năng xử lý các phần tử ngoại lai

 Cho phép khám phá ra các cụm với hình thù bất kỳ ngay cả đối với các dữ liệu đa chiều.

 Sử dụng các ô lưới và lưu giữ thông tin về các đối tượng thực. Độ phức tạp tính toán của DENCLUE là O(nlogn).

Các thuật toán dựa trên mật độ không thực hiện kỹ thuật phân mẫu trên tập dữ liệu như trong các thuật toán phân cụm phân hoạch, vì điều này có thể làm tăng thêm độ phức tạp do có sự khác nhau giữa mật độ của các đối tượng trong mẫu với mật độ của toàn bộ dữ liệu.

3.4. Các thuật toán phân cụm dựa trên lƣới

3.4.1. Thuật toán STING

Thuật toán STING (STatistical INformation Grid) phân rã tập dữ liệu không

gian thành số hữu hạn các cell sử dụng cấu trúc phân cấp chữ nhật, được mô tả như trong hình 3.16 dưới đây [17]-[23].

Các đối tượng dữ liệu lần lượt được chèn vào lưới và các tham số thống kê ở trên được tính trực tiếp thông qua các đối tượng dữ liệu này. Các truy vấn không gian được thực hiện bằng cách xét các cell thích hợp tại mỗi mức của phân cấp. Có nhiều mức khác nhau cho các cell trong cấu trúc lưới, các cell này hình thành nên

cấu trúc phân cấp như sau: Mỗi cell ở mức cao được phân hoạch thành các cell mức thấp hơn trong cấu trúc phân cấp. Giá trị của các tham số thống kê (như các giá trị trung bình, tối thiểu, tối đa) cho các thuộc tính của đối tượng dữ liệu được tính toán và lưu trữ thông qua các tham số thống kê ở các cell mức thấp hơn.

Một số lợi thế của cách tiếp cận này là [23]:

 Đây là cách tiếp cận truy vấn độc lập khi thông tin thống kê tồn tại các truy vấn độc lập. Nó trình bày tóm tắt các dữ liệu trong từng ô lưới, tạo điều kiện thuận lợi để trả lời một số lớp lớn các truy vấn.

 STING duyệt toàn bộ dữ liệu một lần để tính toán các đại lượng thống kê cho mỗi cell nên độ phức tạp tính toán của STING là O(N), trong đó N là số các đối

tượng. Sau khi xây dựng cấu trúc dữ liệu phân cấp, thời gian xử lý cho các truy vấn là O(K) với K là tổng số cell tại mức thấp nhất (K<<N).

 Thuật toán xử lý truy vấn sử dụng cấu trúc song song hoá.

 Khi dữ liệu được cập nhật, chúng ta không cần phải tính toán lại tất cả thông tin trong ô phân cấp.

Với mỗi ô, chúng ta có các tham số thuộc tính-độc lập (attribute-independent) và thuộc tính-phụ thuộc (attribute-dependent). Tham số thuộc tính-độc lập là:

n- số các đối tượng (các điểm) trong một ô.

Với tham số thuộc tính-phụ thuộc, chúng ta giả sử rằng các thuộc tính ứng với mỗi đối tượng có giá trị kiểu số. Khi đó, có 5 tham số dưới đây cho mỗi ô:

m – giá trị trung bình của của các thuộc tính trong ô. s – độ lệch chuẩn của tất cả các giá trị thuộc tính trong ô min – giá trị tối thiểu của thuộc tính trong ô

max – giá trị tối đa của thuộc tính trong ô.

Trong đó n, m, s, min, max có thể được tính như sau:

i i nn ; i i i m n m n   ; 2 2 2 ( i i ) i i s m n s m n     ; min( i) i

minmin ; max( i)

i

maxmax

Thuật toán STING gồm các bước sau [23]: 1. Xác định tầng để bắt đầu.

2. Với mỗi cell của tầng này, tính toán khoảng cách tin cậy (hoặc ước lượng khoảng) của xác suất mà cell này liên quan tới truy vấn.

3. Từ khoảng cách tin cậy của tính toán trên, gán nhãn có liên quan (relevant) hoặc không có liên quan.

4. Nếu lớp này là lớp dưới cùng, chuyển sang bước 6; nếu khác thì chuyển sang bước 5.

5. Duyệt xuống dưới của cấu trúc cây phân cấp một mức. Chuyển sang bước 2 cho các cells liên quan của lớp có mức cao hơn.

6. Nếu đặc tả được câu truy vấn, chuyển sang bước 8; nếu không thì chuyển sang bước 7.

7. Truy vấn dữ liệu vào trong các cells liên quan và thực hiện xử lý. Trả lại kết quả phù hợp yêu cầu của truy vấn. Chuyển sang bước 9.

8. Tìm các miền có các cells liên quan. Trả lại miền phù hợp với yêu cầu của truy vấn. Chuyển sang bước 9.

9. Dừng.

3.4.2. Thuật toán CLIQUE

Trong không gian đa chiều, các cụm có thể tồn tại trong tập con của các chiều hay còn gọi là không gian con. Thuật toán CLIQUE (CLustering In QUEst) là thuật

toán phân cụm không gian con [17]. Nó phân hoạch tập dữ liệu thành các hình hộp chữ nhật và tìm các hình hộp chữ nhật đặc, nghĩa là các hình hộp này chứa một số các đối tượng dữ liệu trong số các đối tượng láng giềng cho trước. Hợp các hình hộp này tạo thành các cụm dữ liệu. CLIQUE trước hết tìm các cell đặc đơn chiều, tiếp đến chúng tìm các hình chữ nhật 2 chiều, rồi 3 chiều,…, cho đến khi hình hộp chữ nhật đặc k chiều được tìm thấy. CLIQUE có khả năng áp dụng tốt đối với dữ liệu đa chiều, nhưng nó lại rất nhạy cảm với thứ tự của dữ liệu vào, độ phức tạp tính toán của CLIQUE là O(n).

3.4.3. Thuật toán WaveCluster

Thuật toán WaveCluster là phương pháp gần giống với STING, tuy nhiên thuật toán sử dụng phép biến đổi dạng sóng để tìm ô đặc trong không gian. Đầu tiên, kỹ thuật này tóm tắt dữ liệu bằng việc tận dụng cấu trúc dạng lưới đa chiều lên trên không gian dữ liệu. Tiếp theo nó sử dụng phép biến đổi dạng sóng để biến đổi không gian có đặc trưng gốc, tìm kiếm ô đặc trong không gian đã được biến đổi. Phương pháp này phức tạp so với các phương pháp khác chính là ở phép biến đổi.

Phương pháp này có một số ưu điểm như [17]:

 Cung cấp cụm không gian giám sát, khử nhiễu các thông tin bên ngoài biên của cụm. Theo cách đó, vùng đặc trong không gian đặc trưng gốc hút các điểm ở gần và ngăn chặn các điểm ở xa. Vì vậy, các cụm tự động nổi bật và làm sạch khu vực xung quanh nó, do đó, các kết quả tự động loại phần tử ngoại lai.

 Đa phân giải là thuộc tính hỗ trợ dò tìm các cụm có các mức biến đổi chính xác.  Thực hiện nhanh với độ phức tạp thuật toán là O(n), trong đó n là số đối tượng trong CSDL. Thuật toán có thể thích hợp với xử lý song song.

 Xử lý tập dữ liệu lớn có hiệu quả, khám phá các cụm có hình dạng bất kỳ, xử lý phần tử ngoại lai, mẫn cảm với thứ tự vào, và không phụ thuộc các tham số vào như số các cụm hoặc bán kính láng giềng.

Hình 3.18. Ứng dụng của thuật toán WaveCluster

3.5. Phân cụm dựa trên mô hình

3.5.1. Thuật toán EM

Thuật toán EM (Expectation - Maximization) được xem như là thuật toán dựa

trên mô hình hoặc là mở rộng của thuật toán k-means. Thật vậy, EM gán các đối tượng cho các cụm đã cho theo xác suất phân phối thành phần của đối tượng đó. Phân phối xác suất thường được sử dụng là phân phối xác suất Gaussian với mục đích là khám phá lặp các giá trị tốt cho các tham số của nó bằng hàm tiêu chuẩn là hàm lôgarit của đối tượng lên dữ liệu, đây là hàm tốt để mô hình xác suất cho các đối tượng dữ liệu. EM có thể khám phá ra nhiều hình dạng cụm khác nhau, tuy nhiên do thời gian lặp của thuật toán khá nhiều nhằm xác định các tham số tốt nên chi phí tính toán của thuật toán khá cao. Đã có một số cải tiến được đề xuất cho EM dựa trên các tính chất của dữ liệu: có thể nén, có thể sao lưu trong bộ nhớ và có thể hủy bỏ. Trong các cải tiến này, các đối tượng bị hủy bỏ khi biết chắc chắn được nhãn phân cụm của nó, chúng được nén khi không bị loại bỏ và thuộc về một cụm quá lớn so với bộ nhớ và chúng sẽ được lưu lại trong các trường hợp còn lại.

Sơ đồ các bước thực hiện thuật toán EM được mô tả trong hình 3.19 dưới đây:

1. Khởi tạo tham số:  (0) (0) (0) (0) (0) (0)

0 1 , 2 ,..., k ,p1 ,p2 ,...,pk      2. Bước E ( ) 2 ( ) ( ) 2 ( ) ( , ) ( , ) ( , , ) ( , ) ( , ) ( , , ) t t k j t j t k i i i j k t t t k t k k j j j P x P P x P P x P x P x P                 3. Bước M ( 1) ( , ) ( , ) i k t k t k i i k t k P x x P x          ; ( 1) ( i k, )t t k i P x p R    

4. Lặp lại bước 2 và 3 cho đến khi đạt được kết quả.

Bảng 3.1. Bảng tổng kết các thuộc tính của các thuật toán PCDL kiểu số

Thuật toán Tham số đầu vào Thích hợp với Cấu trúc cụm Xử lý phần tử ngoại lai

Độ phức tạp tính toán Các phƣơng pháp phân cụm phân cấp

k-means Số các cụm Các cụm tách rời Hình cầu Không O(Ikn)

PAM Số các cụm Các cụm tách rời, tập dữ liệu nhỏ Hình cầu Không O(Ik(n - k)2)

CLARA Số các cụm Tập dữ liệu tương đối lớn Hình cầu Không O(ks2+ k(n - k))

CLARANS Số các cụm, số tối đa các láng giềng

Tập dữ liệu không gian Hình cầu Không O(kn2)

Các phƣơng pháp phân cụm phân cấp BIRCH Yếu tố nhánh, đường

kính cụm

Tập dữ liệu lớn Hình cầu Có O(n)

CURE Số các cụm, số cụm đại diện

Tập dữ liệu trung bình Hình bất kỳ Có O(n2 log n)

Các phƣơng pháp phân cụm dựa trên mật độ DBSCAN Bán kính của cụm, số

tối thiểu các điểm trong các cụm

DENCLUE Bán kính của các cụm, số tối thiểu các đối tượng

Tập dữ liệu lớn Hình bất kỳ Có O(n log n)

OPTICS Bán kính của các cụm (min, max), số tối thiểu các đối tượng

Tập dữ liệu lớn Hình bất kỳ Có O(n log n)

Các phƣơng pháp phân cụm dựa trên lƣới STING Số các cells trong mức

thấp nhất, Số các đối tượng trong cell

Tập dữ liệu không gian lớn Các giới hạn đứng và giới hạn ngang

Có O(n)

WaveCluster Số các cells cho từng chiều, sóng, Số các

ứng dụng biến đổi

Tập dữ liệu không gian lớn Hình bất kỳ Có O(n)

CLIQUE Kích thước của lưới, số tối thiểu các điểm trong mỗi lưới

Tập dữ liệu lớn đa chiều Hình bất kỳ Có O(n)

3.6. Các thuật toán phân cụm dữ liệu kiểu hạng mục

Chúng ta coi các thuộc tính CSDL có giá trị kiểu hạng mục (categorical). Các giá trị này không thể được sắp xếp một cách đơn lẻ, và do đó, phân cụm dữ liệu kiểu hạng mục thực sự là một thách thức. Chúng ta tổng kết các đặc trưng của các dữ liệu như vậy trong danh sách dưới đây [9]-[17]-[24]:

 Dữ liệu kiểu hạng mục không sắp xếp đơn lẻ: Có một số cách để sắp xếp nhưng không có cách nào là có hiệu quả vượt trội

 Dữ liệu kiểu hạng mục có thể được trực quan hoá phụ thuộc vào một sự sắp xếp đặc biệt.

 Dữ liệu kiểu hạng mục định nghĩa cấu trúc tiên nghiệm (priori structure) để làm việc.

 Dữ liệu kiểu hạng mục có thể được ánh xạ lên trên các số đơn trị, như là một hệ quả, khoảng cách Euclidean có thể được sử dụng để xác định các lân cận của nó khi các hệ quả là không chắc chắn.

Guha và các cộng sự đưa ra một ví dụ: giả sử CSDL của các đối tượng 1 tới 6 được cho bởi các bộ như sau: (a) {1, 2, 3, 5} , (b) {2, 3, 4, 5} , (c) {1, 4} , và (d) {6} . Các đối tượng này có thể được xem như là các vector 0 và 1 biểu thị sự có mặt của các đối tượng này bên trong các bộ dữ liệu tương ứng. Bốn bộ dữ liệu trở thành:

{1, 2, 3, 5}  {1, 1, 1, 0, 1, 0} {2, 3, 4, 5}  {0, 1, 1, 1, 1, 0} {1, 4}  {1, 0, 0, 1, 0, 0} {6}  {0, 0, 0, 0, 0, 1}

Sử dụng khoảng cách Euclidean giữa bộ dữ liệu (a) và (b), ta có:

2 2 2 2 2 2 1 2

(1 0 0  1 0 0 )  2

Đây là khoảng cách nhỏ nhất giữa các cặp của các bộ dữ liệu, trộn (a) và (b) sử dụng một giải thuật phân cấp dựa theo trọng tâm. Trọng tâm của cụm mới là {0.5, 1, 1, 0.5, 1, 0}. Trong các bước dưới đây, (c) và (d) có khoảng cách nhỏ nhất, và như vậy chúng sẽ được trộn với nhau. Tuy nhiên, việc đó cũng tương ứng với việc trộn bộ dữ liệu {1, 4} với bộ dữ liệu {6}, không có các đối tượng chung, giả thiết rằng việc phù hợp dựa trên sự có mặt (presence) là quan trọng hơn việc phù hợp dựa trên sự vắng mặt (absence). Sau đó, chúng ta đạt được kết luận rằng khi sử dụng ánh xạ

không trong cụm tương tự cuối cùng được xếp cùng nhau. Trong trường hợp đặc biệt này, khoảng cách Hamming sẽ thực hiện tốt hơn.

Rõ ràng, chúng ta cần các phương pháp khác nhau, và các độ đo tương tự đặc biệt khác nhau, để khám phá các nhóm “tự nhiên” của dữ liệu kiểu hạng mục.

3.6.1. Thuật toán k-modes

Thuật toán đầu tiên hướng về phía các tập dữ liệu kiểu hạng mục là mở rộng của thuật toán k-means, gọi là thuật toán k-modes. Ý tưởng của thuật toán tương tự với k-means và cấu trúc thuật toán không thay đổi. Chỉ khác là sử dụng độ đo tương tự để so sánh các đối tượng dữ liệu. [17]-[24]

Những điểm khác nhau đặc biệt là:

 Sử dụng một độ đo phi tương tự (dissimilarity measure).  Means được thay thế bởi modes

 Sử dụng một phương thức dựa trên tần xuất để cập nhật các modes.

3.6.1.1. Độ đo phi tương tự

Cho X và Y là hai đối tượng kiểu hạng mục được mô tả bởi m thuộc tính hạng mục. Độ đo phi tương tự giữa X và Y được định nghĩa bởi tổng các thuộc tính hạng mục không phù hợp tương ứng của hai đối tượng. Số các thuộc tính không phù hợp càng ít thì hai đối tượng càng giống nhau.. Độ đo này thường được tham chiếu tới

Một phần của tài liệu Các kỹ thuật phân cụm trong khai phá dữ liệu (Trang 51)