Phương pháp dựa trên mật độ (Density-Based Methods)

Một phần của tài liệu các hướng tiếp cận của bài toán phân cụm dữ liệu (Trang 49 - 56)

Phương pháp dựa trên mật độ phân cụm các đối tượng dữ liệu dựa trên mối quan hệ của các đối tượng dữ liệu với các điểm lân cận của các điểm dữ liệu đó. Phân cụm dựa trên mật độ (có điều kiện cụm cục bộ) giống như các điểm có khả năng liên kết theo mật độ (density-connected). Một cụm được mở rộng theo hướng bất kỳ mà mật độ dẫn theo, do đó phương pháp này có khả năng tìm ra các cụm có hình dạng phức tạp. Mặc dù chỉ duyệt tập dữ liệu một lần nhưng phương pháp này có khả năng loại bỏ phần tử nhiễu và phần tử ngoại lai. Phương pháp này phù hợp với các đối tượng có trường dữ liệu kiểu số, dữ liệu thuộc tính chỉ là thuộc tính mô tả thêm cho các đối tượng không gian.

Phương pháp này có thể tiếp cận theo 2 hướng chính: liên kết dựa trên mật độ và hàm mật độ.

Các thuật toán thuộc phương pháp này bao gồm DBSCAN (Density Based

Spatial Clustering of Application with Noise), OPTICS (Ordering Points to Identify the Clustering Structure), DENCLUE (Density-based CLUstEring), DBCLASD

(Distribution Based Clustering of Large Spatial Databased). Dưới đây mô tả hai trong số các thuật toán trên.

DBSCAN (Density based Spatial Clutering of Application with Noise) [11] [14] được đề xuất năm 1996 bởi Ester, P.Kriegel và J.Sande, khi nghiên cứu các thuật toán phân cụm dữ liệu không gian dựa trên định nghĩa cụm là tập tối đa các điểm liên thông về mật độ. Thuật toán thực hiện tốt trên không gian 2 chiều, 3 chiều hay một số không gian nhiều chiều khác; thích hợp với cơ sở dữ liệu có mật độ phân bố dày đặc kể cả có phần tử nhiễu.

Hình 2.13: Hình dạng các cụm được khám phá bởi DBSCAN

Một số khái niệm sử dụng trong giải thuật DBSCAN

1. Lân cận với ngưỡng Eps của một điểm: Lân cận với ngưỡng Eps của một điểm p ký hiệu là Neps(p) được xác định như sau:

Neps(p) = {q D | khoảng cách dist(p,q) Eps} với D là tập dữ liệu cho

trước.

Một điểm p muốn nằm trong một cụm C nào đó thì NEps(p) phải có tối thiểu MinPts điểm. Số điểm tối thiểu được chọn là bao nhiêu cũng là bài toán khó vì nếu số điểm tối thiểu lớn thì chỉ những điểm nằm thực sự trong cụm C mới đạt đủ tiêu chuẩn, trong khi đó những điểm nằm ngoài biên của cụm không thể đạt đựơc điều đó. Ngược lại, nếu số điểm tối thiểu là nhỏ thì mọi điểm sẽ rơi vào một cụm.

Theo định nghĩa trên, chỉ những điểm thực sự nằm trong cụm mới thoả mãn điều kiện là điểm thuộc vào cụm. Những điểm nằm ở biên của cụm thì không thoả mãn điều kiện đó, bởi vì thông thường thì lân cận với ngưỡng Eps của điểm biên bé

hơn lân cận với ngưỡng cũng Eps của điểm nhân.

Để tránh được điều này, có thể đưa ra một tiêu chuẩn khác để định nghĩa một điểm thuộc vào một cụm như sau: Nếu một điểm p muốn thuộc một cụm C phải tồn tại một điểm q mà p q N∈ Eps(q) và số điểm NEps(q) phải lớn hơn điểm tối thiểu. Điều

này dẫn đến ba phép đo được sử dụng để mô tả thuộc tính của các điểm dữ liệu, là mật độ liên lạc trực tiếp, mật độ liên lạc và mật độ liên thông được định nghĩa như sau:

2. Một điểm dữ liệu p được gọi là điểm nhân (core - point) nếu miền lân cận của p với bán kính Eps có ít nhất là minpt điểm.

3. Mật độ - đến được trực tiếp (Directly Density-reachable) : q được gọi là

đến được theo mật độ trực tiếp nếu p là điểm nhân và q ∈ Neighbor(p,

Eps).

Hình 2.14: Mật độ - đến được trực tiếp

4. Mật độ - đến được (Density - Reachable): Một điểm p được gọi là mật độ

- đến được từ điểm q theo tham số Eps và MinPts nếu tồn tại một dãy p =

p0, p1,…, pn = q với pi là đến được theo mật độ trực tiếp từ pi+1.

Hình 2.15: Mật độ - đến được.

Hai điểm của cụm C có thể không đến được với nhau bởi vì cả hai cùng không thoả mãn điều kiện nhân. Mặc dù vậy, phải tồn tại một điểm nhân trong C mà cả hai điểm đều có thể đến được từ điểm đó.

5. Mật độ - liên thông (Density - Connected): Một điểm p gọi là mật độ - liên thông với q nếu có một điểm 0 mà cả p và q đều là mật độ - đến được từ 0.

Hình 2.16: Mật độ - liên thông

6. Cụm: Một tập con C khác rỗng của D được gọi là một cụm (cluster) theo Eps và minpts nếu thoả mãn hai điều kiện:

a. Với mọi p, q ∈ D, nếu p ∈ C và q có thể đến được từ p theo Eps và Minpts thì p ∈ C.

b. Với mọi p, q ∈ C, p liên thông theo mật độ với q theo Eps và

Minpts.

7. Dữ liệu nhiễu (noise): Giả sử C1, C2, …, Ck là các cụm trong tập dữ liệu D theo tham số Eps và MinPts, một điểm dữ liệu nếu không thuộc vào cụm nào trong các cụm C1, C2, …, Ck thì gọi là nhiễu, tức là nhiễu = {p |

∀i = 1… k, p ∉ Ci}

Hình 2.17: Cụm và nhiễu.

Ngoài việc sử dụng các định nghĩa trên, DBSCAN còn có hai bổ đề để quan trọng để kiểm tra tính đúng đắn của thuật toán. Với các tham số Eps và MinPts đã

cho trước chúng ta có thể phát hiện một cụm theo phương pháp mật độ theo hai bước sau:

- Thứ nhất chọn một điểm bất kì trong CSDL thỏa mãn điều kiện điểm nhân, coi điểm này là hạt giống (seed).

- Thứ hai tìm tất cả các điểm kề mật độ với điểm hạt giống trong cụm.

Bổ đề 1: Giả sử p là một điểm trong D và ||NEps(p)||  MinPts. Tập O = {o | oD và o có thể liên lạc từ p} là một cụm theo Eps và MinPts.

Không rõ ràng rằng cụm C được xác định bởi duy nhất một điểm nhân nào của nó. Tuy nhiên, mỗi điểm trong C là điểm kề mật độ với một điểm nhân bất kì của C và theo đó C chính xác chứa các điểm mà kề mật độ với một điểm nhân bất kì của C.

Bổ đề 2: Giả sử C là một cụm theo Eps và MinPts, p là điểm bất kỳ trong C với ||NEps(p)|| MinPts. Khi đó, C trùng với tập O = {o | oD và o có thể liên lạc

theo Eps và MinPts}.

Ý tưởng chính của DBSCAN là với mỗi điểm của cụm láng giềng thuộc bán kính cho trước có chứa số điểm là ít nhất, ví dụ mật độ trong láng giềng có thể vượt quá ngưỡng nào đó. Vùng láng giềng có hình dạng được xác định bằng việc chọn hàm khoảng cách của 2 điểm, ký hiệu dist(p, q), tùy thuộc vào ứng dụng đó. Chẳng hạn nếu chọn hàm khoảng cách Manhattan thì vùng láng giềng có hình chữ nhật.

Khái niệm được dùng trong thuật toán này là tham số toàn cục Eps và

MinPts, đối tượng nhân (core) và đối tượng biên (border). Tham số Eps là bán kính

lớn nhất của miền láng giềng. Miền láng giềng Eps của điểm p, ký hiệu NEps(p), là

các điểm q thuộc không gian đối tượng D sao cho khoảng cách dist(p, q) ≤ Eps.

Tham số MinPts là số điểm ít nhất nằm trong vùng láng giềng Eps của điểm đó. Đối tượng nhân là các đối tượng thực sự nằm bên trong cụm và đối tượng biên là các đối tượng nằm trên đường biên của cụm. Số điểm trong miền Eps của đối tượng biên nhỏ hơn so với đối tượng nhân.

Thuật toán chi tiết như sau:

B1: Tạo đồ thị gồm các đối tượng trong tập dữ liệu

B2: Với mỗi điểm nhân c vẽ cạnh từ c tới mọi điểm p thuộc NEps(c)

B4: Nếu N không chứa bất kỳ điểm nhân nào thì dừng

B5: Lấy điểm nhân c trong N

B6: Gán X = tập các điểm mà từ c có thể đi tiếp đến

B6.1. Tạo cụm chứa X ∪ {c}

B6.2. Gán N = N \ (X ∪ {c})

B7: Quay lại B4.

Thuật toán DBSCAN yêu cầu hai tham số là Eps và minpts từ người dùng, việc xác định giá trị của hai tham số này có ảnh hưởng lớn đến các cụm được phát hiện. Tham số Eps xác định tập các đối tượng lân cận của một đối tượng dữ liệu. Minpts là tham số ngưỡng mật độ của các đối tượng dữ liệu.

Việc xác định giá trị Eps và MinPts tối ưu là một bài toán cần tìm lời giải, bởi vì nếu các giá trị đủ lớn thì mọi điểm thuộc cụm đó đều phải thỏa mãn. Tuy nhiên nếu các giá trị đó nhỏ thì có thể rơi vào trường hợp mọi điểm trong tập dữ liệu đều thuộc một cụm.

Thuật toán này sử dụng cấu trúc cây R*-tree để lưu trữ tập dữ liệu. DBSCAN có độ phức tạp tính toán khi chưa dùng cây chỉ mục để xử lý là O(n2) và sau khi

dùng R*-tree là O(n*log(n)).

2.6.3.2. Thuật toán DENCLUE

DENCLUE (Density-based CLUstEring) được giới thiệu năm 1998 bởi Hinne Burg Kein [13] là thuật toán phân cụm tổng quát, được đề xuất vào năm 1998 bởi Hinne Burg Kein. Thuật toán này được xây dựng dựa trên các ý tưởng: (1) sự ảnh hưởng của mỗi điểm dữ liệu có thể biểu diễn dưới dạng mô hình thông qua hàm toán học, gọi là hàm ảnh hưởng (influence function) dùng để mô tả ảnh hưởng của điểm dữ liệu lên vùng láng giềng của nó; (2) toàn bộ mật độ của không gian dữ liệu có thể được mô hình hóa theo giải tích là tổng các hàm ảnh hưởng của mọi điểm dữ liệu; (3) các cụm có thể được xác định theo toán học bởi các điểm mật độ cao (density attractor), trong đó điểm mật độ cao là điểm đạt cực đại hàm mật độ toàn cục.

Với đối tượng x, y trong không gian d-chiều ký hiệu Fd, hàm ảnh hưởng của đối tượng y lên x là một hàm f y :FdR0+

B được định nghĩa dưới dạng một hàm ảnh hưởng cơ bản f : f y(X) fb(x,y)

B

b = . Hàm ảnh hưởng có thể là hàm bất kỳ xác định khoảng cách của hai véc tơ d(x, y) trong không gian d chiều.

Hàm mật độ tại điểm x Fd là tổng các hàm ảnh hưởng của tất cả các điểm dữ liệu. Với n là các đối tượng dữ liệu mô tả bởi tập véc tơ D={x1, x2,…, xn}Fd, hàm mật độ được định nghĩa ∑ = = n i i x B D B x f x F 1 ) ( ) ( .

Hàm mật độ cục bộ (local density function)

∈ ∧ = ) ( 1 1( ) ) ( x near x x B D x f x f trong đó

hàm near(x) được xác định với x1 near(x) thì d(x1, x) ≤ σnear. Hàm mật độ cục bộ quan tâm đến sự ảnh hưởng của các điểm gần với điểm đang xét và ảnh hưởng của các điểm xa thì bỏ qua.

Thuật toán DENCLUE gồm 2 bước như sau:

Bước 1: Xây dựng bản đồ chứa không gian dữ liệu cần phân cụm để việc tính

toán hàm mật độ được thực hiện nhanh hơn. Tiến hành phân chia không gian bằng khối siêu lập phương d-chiều có độ dài cạnh là 2σ, sau đó dựng cây lưu trữ dữ liệu bằng cấu trúc cây B+-tree hoặc cây tìm kiếm ngẫu nhiên và chỉ lưu trữ các khối siêu

lập phương có chứa dữ liệu. Mỗi nút trên cây tương ứng với một khối c, cần lưu thêm thông tin số điểm dữ liệu trong khối, tổng giá trị trong khối để tính giá trị trung bình mean(c) của mỗi khối. Nếu cụm thuộc nhiều khối, cần cho biết các khối láng giềng với khối đang xét. Thông thường khối c2 được gọi là liên thông với c1 khi giá trị khoảng cách d(mean(c1), mean(c2)) ≤ 4σ.

Bước 2: Thực hiện việc phân cụm, chỉ có những khối có mật độ cao Cp và các khối liên thông của chúng được xem xét trong quá trình phân cụm. Tính hàm mật

độ cục bộ fD(x)

và điểm mật độ cao x* của điểm x, nếu hàm mật độ của x* thỏa mãn điều kiện thì điểm x được phân loại và gán vào cụm theo x* [20].

Thuật toán có độ phức tạp tính toán là O(n*log(n)) và phụ thuộc nhiều vào tham số mật độ và ngưỡng nhiễu, việc chọn tham số thích hợp ảnh hưởng đến chất lượng của các cụm thu được. Tuy nhiên thuật toán cho kết quả tốt kể cả tập dữ liệu lớn và có nhiễu, thậm chí các cụm có hình dạng bất kỳ trong tập dữ dữ liệu đa chiều cũng được mô tả trong công thức toán đơn giản. Cấu trúc dữ liệu theo ô lưới làm cho thuật toán có khả năng xử lý các khối dữ liệu lớn kể cả dữ liệu đa chiều.

Một phần của tài liệu các hướng tiếp cận của bài toán phân cụm dữ liệu (Trang 49 - 56)

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

(100 trang)
w