Chương 2. CÁC PHƯƠNG PHÁP PHÂN CỤM DỮ LIỆU
2.5. Phương pháp phân dựa trên mật độ
Phương pháp này nhóm các đối tượng dữ liệu dựa trên hàm mật độ xác định, mật độ là số đối tượng lân cận của một đối tượng dữ liệu theo một ngưỡng nào đó.
Trong cách tiếp cận này, khi một dữ liệu đã được xác định thì nó tiếp tục phát triển thêm các đối tượng dữ liệu mới miễn là số các đối tượng lân cận này phải lớn hơn một ngưỡng đã được xác định trước. Phương pháp phân cụm dựa trên mật độ của các đối tượng để xác định các cụm dữ liệu có thể được phát hiện ra các cụm dữ liệu
1(a): The Dataset 1(b): 1st Step 1(c): 2nd Step 1(d): Last Step
32
với các hình thù bất kỳ. Kỹ thuật này có thể khắc phục được các phần tử ngoại lai hoặc các giá trị nhiễu tốt. Tuy nhiên, việc xác định tham số mật độ của thuật toán là rất khó khăn, trong khi các tham số này lại ảnh hưởng rất lớn đến kết quả phân cụm [10].
2.5.2. Thuật toán DBSCAN
Định nghĩa 2.1. Lân cận với ngưỡng Eps của một điểm p, ký hiệu NEps(p) được xác định như sau: NEps(p) = (qD | khoảng cách dist(p,q) < Eps}, D là tập dữ liệu cho trước.
Một điểm p muốn nằm trong 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.
Hình 2.4. Lân cận với ngưỡng của điểm p.
Theo định nghĩa trên, chỉ những điểm thực sự nằm trong cụm mới thỏa 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 thỏa 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 thì bé hơn lân cận với ngưỡng cũng là 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 là nếu một điểm p muốn thuộc vào một cụm C phải tồn tại một điểm q mà pNEps(q) phải lớn hơn số đ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
33
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:
Định nghĩa 2.2. (Mật độ liên lạc trực tiếp) Một điểm p được gọi là liên lạc trực tiếp từ điểm q với ngưỡng Eps nếu:
1. p NEps(q)
2. ||NEps(q)|| MinPts (điều kiện nhân), điểm q gọi là điểm nhân.
Có thể thấy liên lạc trực tiếp là một hàm phản xạ và đối xứng với hai điểm nhân và bất đối xứng nếu một trong hai điểm đó không phải là điểm nhân.
Định nghĩa 2.3. (Mật độ liên lạc) Một điểm p được gọi là mật độ liên lạc từ một điểm q theo tham số Eps và MinPts nếu tồn tại một dãy p = p1, p2, ..., pn = q thỏa mãn pi+1 là có thể liên lạc trực tiếp từ pi với i = 1..n-1.
Hai điểm biên của một cụm C có thể không liên lạc được với nhau bởi vì cả hai đều không thỏa mãn điều kiện nhân.
Hình 2.5. Mật độ liên lạc
Định nghĩa 2.4. (Mật độ liên thông) Một điểm p được gọi là liên thông với điểm q theo tham số Eps và MinPts nếu tồn tại một điểm O mà cả hai bên điểm p, q đều có thể liên lạc được tham số Eps và MinPts. Mật độ liên thông có tính chất đối xứng và phản xạ.
34
Hình 2.6. Mật độ liên thông
Định nghĩa 2.5. (Cụm) Giả sử D là một tập hợp các điểm dữ liệu. Một tập con C khác rỗng của D được gọi là một cụm theo Eps và MinPts nếu thỏa mãn hai điều kiện:
1. Với mọi p,qD, nếu pC và q có thể liên lạc được từ p theo Eps và MinPts thì qC.
2. Với mọi p,qC, p liên thông với q theo Eps và MinPts.
Định nghĩa 2.6. (Nhiễu) Giả sử C1, C2, ..., Ck là các cụm trong tập dữ liệu D theo tham số Eps và MinPts, điểm dữ liệu nhiễu là điểm dữ liệu không phụ thuộc vào cụm nào trong các cụm C1, C2,..., Ck, tức là N = {p| với mọi i=1..k Ci}.
Với hai tham số Eps và MinPts cho trước, có thể khám phá các cụm theo hai bước:
1. Bước 1: Chọn một điểm bất kỳ từ tập dữ liệu ban đầu thỏa mãn điều kiện nhân.
2. Bước 2: Lấy tất cả các điểm liên lạc với điểm nhân đã chọn để tạo thành cụm.
Bổ đề 2.1. Giả sử p là một điểm trong D, ||NEps(p) MinPts, tập O={o | o
D và o có thể liên lạc từ p theo Eps và MinPts}|| là một cụm theo Eps và MinPts.
Như vậy, cụm C không hoàn toàn là duy nhất. Mỗi điểm trong C liên lạc từ
35
bất kỳ điểm nhân nào của C, vì vậy C chứa đúng một số điểm liên thông với điểm nhân tùy ý.
Bổ đề 2.2. Giả sử C là một cụm theo Eps va MinPts, p là một đ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 từ p theo Eps và MinPts}.
Thuật toán DBSCAN được phát biểu như sau:
1. DBSCAN khởi tạo p điểm tùy ý.
2. Lấy tất cả các điểm liên lạc mật độ từ p tới Eps và MinPts 3. Nếu p là điểm nhân thì tạo ra một cụm theo Eps và MinPts
4. Nếu p là điểm biên, không có điểm nào là liên lạc mật độ từ p và DBSCAN sẽ thăm các điểm tiếp theo của cơ sở dữ liệu.
5. Tiếp tục quá trình trên cho đến khi tất cả các điểm đều được xử lý.
Thuật toán DBSCAN thích nghi với tập dữ liệu có mật độ dày và khám phá các cụm có hình dạng bất kỳ trong không gian cơ sở dữ liệu có nhiễu. Nó định nghĩa cụm là tập tối đa các điểm liên thông mật độ.
Phân cụm dựa trên mật độ là tập các đối tượng liên thông mật độ mà tối đa về liên lạc mật độ, các đối tượng không được chứa trong các cụm thì gọi là nhiễu.
Trên thực tế, DBSCAN tìm kiếm cho các cụm bằng cách kiểm tra các đối tượng láng giềng nhỏ hơn một ngưỡng tối thiểu, tức là có tối thiểu MinPts đối tượng và mỗi đối tượng trong cụm tồn tại một đối tượng khác trong cụm giống nhau với khoảng cách nhỏ hơn một ngưỡng Eps. Tìm tất cả các đối tượng mà các láng giềng của nó thuộc về lớp các đối tượng đã được xác định ở trên, một cụm được xác định bằng một tập tất cả các đối tượng liên thông mật độ với các láng giềng của nó.
DBSCAN lặp lại tìm kiếm ngay khi các đối tượng liên lạc mật độ từ các đối tượng trung tâm, nó có thể bao gồm việc kết hợp một số các cụm có mật độ liên lạc. Quá trình kết thúc khi không tìm được điểm mới nào có thể thêm vào bất cứ cụm nào.
36
DBSCAN có thể tìm ra các cụm với hình thù bất kỳ, trong khi đó tại cùng một thời điểm ít bị ảnh hưởng bởi thứ tự của các đối tượng dữ liệu nhập vào. Khi đó một đối tượng chèn vào chỉ tác động đến một láng giềng nhất định. Mặt khác, DBSCAN bắt đầu với một điểm tùy ý và xây dựng mật độ láng giềng có thể được đối với Eps và MinPts. Vì vậy, DBSCAN yêu cầu người dùng xác định bán kính Eps của các láng giềng và số các láng giềng tối thiểu MinPts, các tham số này khó mà xác định được tối ưu, thông thường nó được xác định bằng phép chọn ngẫu nhiên theo kinh nghiệm. Độ phức tạp của DBSCAN là O(n2), nhưng nếu áp dụng chỉ số không gian để giúp xác định các láng giềng của một đối tượng dữ liệu thì độ phức tạp của DBSCAN đã được cải tiến là O(nlogn). Thuật toán DBSCAN có thể áp dụng cho các tập dữ liệu không gian lớn đa chiều, khoảng cách Euclid được sử dụng để đo sự tương tự giữa các đối tượng nhưng không hiệu quả đối với dữ liệu đa chiều.
Trừ một số trường hợp ngoại lệ, kết quả của DBSCAN là độc lập với đối tượng duyệt các đối tượng dữ liệu. Eps và MinPts là hai tham số toàn cục được xác định bằng thủ công hoặc theo kinh nghiệm [13], [15].
Một số đặc điểm của thuật toán DBSCAN:
+ Các cụm khác nhau có thể có mật độ khác nhau + Các cụm có thể tuân theo một thứ tự
Thực nghiệm thuật toán DBSCAN tại địa chỉ