1. Trang chủ
  2. » Luận Văn - Báo Cáo

Một thuật toán phân cụm mờ khi số cụm không xác định

55 742 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 55
Dung lượng 1,11 MB

Nội dung

Tùy theo đặc điểm cấu trúc của tập dữ liệu và mục đích sử dụng, có các phương pháp giải quyết khác nhau như: Phân cụm dựa vào phân hoạch, phân cụm theo phân cấp, phân cụm dựa vào mật độ

Trang 1

ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

MỘT THUẬT TOÁN PHÂN CỤM MỜ KHI SỐ CỤM

Trang 2

DANH MỤC CÁC HÌNH VẼ

Hình 1.1 Biểu diễn nhị phân của một chữ cái viết tay 11

Hình 1.2 : Trộn 2 cụm theo thuật toán CURE 19

Hình 2.1: Các cụm mờ 30

Hình 2.2 : reach_distk(p2,0) với K=4 35

Hình 2.3 Điểm đen biểu diễn đối tƣợng điểm màu đỏ biểu diễn tâm.Error! Bookmark not defined Hình 3.1: Tập dữ liệu DB1 44

Hình 3.2: DB1 đã loại ngoại lai Điểm hình sao biểu diễn tâm 44

Hình 3.3: Kết quả phân cụm với Valid Clusters= 9 Các điểm màu đỏ là tâm 45

Hình 3.4: Đồ thị hàm F(k) Với k=9 hàm F(k) đạt giá trị cực đại 45

Hình 3.5: Tập dữ liệu DB2 48

Hình 3.6: Kết quả phân cụm với Valid Clusters= 11 Các tâm là các điểm màu đỏ.49 Hình 3.7: Đồ thị hàm F(k) Với k=11 hàm F(k) đạt giá trị cực đại 49

Trang 3

DANH MỤC CÁC THUẬT NGỮ VIẾT TẮT

BIRCH Balanced Iterative Reducing and Clustering using

Hierarchies NP-Hard None Polynomial – Hard

EM Expectation Maximazation

PAM Partitioning Around Medoids

CLARA Clustering LARge Applications

AGNES Agglomerative Nesting (AGNES) Object

DIANA Divisive Analysis

CURE Clustering Using Representatives

OPTICS Ordering Points To Identify the Clustering

Structure STING A Statistical Information Grid Approach to Spatial

Data Mining

LOF Local Outlier Factor

DBSCAN A Density-Based Algorithm for Discovering

Clusters in Large Spatial Databases with Noise

Trang 4

MỤC LỤC

LỜI CẢM ƠN 1

DANH MỤC CÁC HÌNH VẼ 2

DANH MỤC CÁC THUẬT NGỮ VIẾT TẮT 3

MỞ ĐẦU 5

CHƯƠNG I TỔNG QUAN VỀ PHÂN CỤM DỮ LIỆU 8

1 Giới thiệu 8

2 Biểu diễn dữ liệu 9

2.1 Ma trận mẫu Error! Bookmark not defined 2.2 Ma trận tương đồng Error! Bookmark not defined 2.3 Các kiểu dữ liệu và tỷ xích Error! Bookmark not defined 2.4 Các hàm khoảng cách 11

3 Các thuật toán và các phương pháp phân cụm dữ liệu 13

3.1 Phương pháp dựa vào phân hoạch 13

3.1.1 Thuật toán K-means 14

3.1.2 Thuật toán phân cụm K-medoids 15

3.2 Các phương pháp phân cụm dựa vào phân cấp 17

3.2.1 Thuật toán BIRCH: Balanced Iterative Reducing and Clustering using Hierarchies 17

3.2.2 Thuật toán CURE: Clustering Using Representatives 19

3.2.3 Thuật toán CHAMELEON 20

3.3 Các phương pháp dựa vào mật độ 20

3.4 Các phương pháp phân cụm dựa trên lưới 24

CHƯƠNG II TIỀN XỬ LÝ VÀ CẢI TIẾN KHỞI TẠO CHO THUẬT TOÁN PHÂN CỤM DỮ LIỆU MỜ 30

1 Tổng quan về phân cụm dữ liệu mờ 30

2 Phương pháp loại bỏ phần tử ngoại lai 34

3 Các vấn đề trong thuật toán FCM và cách khắc phụcError! Bookmark not defined Chương III ƯỚC LƯỢNG SỐ CỤM 37

1 Tổng quan về ước lượng số lượng cụm 39

2 Hàm đánh giá ước lượng số cụm 41

3 Kết quả thực nghiệm 43

KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 52

TÀI LIỆU THAM KHẢO 54

Trang 5

MỞ ĐẦU

Bài toán phân cụm dữ liệu thuộc lĩnh vực học không giám sát, nhằm phân tập dữ liệu thành các tập con, thỏa mãn điều kiện các đối tượng trong cũng một tập con có độ tương đồng cao, và ngược lại các đối tượng ở các tập con khác nhau thì có độ tương đồng thấp Hay nói cách khác, bài toán phân cụm dữ liệu là bài toán khám phá cấu trúc của tập dữ liệu Tùy theo đặc điểm cấu trúc của tập dữ liệu

và mục đích sử dụng, có các phương pháp giải quyết khác nhau như: Phân cụm dựa vào phân hoạch, phân cụm theo phân cấp, phân cụm dựa vào mật độ và phân cụm dựa vào lưới

Tư tưởng của phương pháp phân hoạch là tìm cách phân chia tập dữ liệu thành các tập không giao nhau, thỏa mãn điều kiện làm tối ưu hàm đánh giá Trong mỗi tập con thường có ít nhất một phần tử đại diện, phần tử đại diện có thể

là tâm của tập con đó Mỗi đối tượng trong tập dữ liệu được phân vào cụm có điểm đại diện gần với đối tượng đó nhất Quá trình này lặp đi lặp lại cho tới khi hàm mục tiêu không thay đổi Có nhiều thuật toán áp dụng phương pháp này như: K-Means, K-Medoids, EM Các phương pháp phân cụm theo phân hoạch có thể phân cụm dữ liệu với thời gian rất nhanh đối với các tập dữ liệu lớn tuy nhiên nó

có thể phân cụm sai trong trường hợp hình dạng các cụm không phải là hình cầu, hoặc dữ liệu chứa nhiễu và yêu cầu phải xác định trước số lượng cụm

Phương pháp phân cấp phân tách các tập đối tượng theo hai cách: “Bottom - Up” hoặc “Top - Down” Tiếp cận “Bottom – Up” bắt đầu với mỗi đối tượng được xem như một nhóm, sau đó trộn các đối tượng hay các nhóm theo các hàm như hàm khoảng cách giữa các tâm của hai nhóm và điều này được thực hiện cho tới khi tất cả các nhóm được trộn vào làm một nhóm hoặc cho tới khi điều kiện kết thúc được thỏa mãn Tiếp cận theo phương pháp “Top-Down”, bắt đầu với tất cả các đối tượng nằm trong cùng một cụm Trong mỗi lần lặp, một cụm được tách ra thành các cụm nhỏ hơn theo một ước lượng nào đó Điều này được thực hiện cho tới khi mỗi đối tượng là một cụm, hoặc cho tới khi điều kiện kết thúc thỏa mãn Các thuật toán áp dụng phương pháp này là : BIRCH, CURE, CHAMELEON

Phần lớn các phương pháp phân cụm các đối tượng dựa trên khoảng cách giữa các đối tượng (thường sử dụng khoảng cách Euclidean) Vì thế có thể chỉ tìm thấy các cụm có dạng hình cầu và sẽ khó khăn khi khám phá các cụm có hình dạng bất kỳ

Đối với các phương pháp được phát triển dựa trên quan niệm về mật độ Các cụm tiêu biểu được xét là các vùng có các đối tượng tập trung đậm đặc và

Trang 6

được phân chia bởi các vùng có mật độ thấp (đặc trưng cho nhiễu) Các phương pháp dựa trên mật độ có thể sử dụng để lọc ra các nhiễu (phần tử ngoại lai), và khám phá ra các cụm có hình dạng bất kỳ

Các phương pháp phân cụm dựa trên mật độ thường sử dụng hai tham số là Eps và Minpts để xác định các cụm có thể được khám phá Mật độ là số các đối tượng lân cận của một đối tượng dữ liệu theo một ngưỡng nào đó Với phương pháp này, khi xác định được một cụm dữ liệu thì việc phát triển thêm các đối tượng mới thực hiện bằng cách kiểm tra xem số các đối tượng lân cận (Minpts) của đối tượng này phải lớn hơn ngưỡng Eps cho trước

Để nâng cao chất lượng của phân cụm, cách tiếp cận dựa trên lưới sử dụng cấu trúc lưới của dữ liệu Nó lượng tử hóa khoảng cách vào một số hữu hạn các ô

là cấu trúc dạng lưới để tất cả các phép toán phân cụm thực hiện được Ưu điểm chính của cách tiếp cận này là nó xử lý nhanh đặc biệt phụ thuộc vào số lượng của các đối tượng dữ liệu, chỉ phụ thuộc vào số lượng các ô ở mỗi chiều trong không gian lượng hóa

Để nắm bắt hình dạng tự nhiên của cụm và tránh sự ảnh hưởng của các phần tử ngoại lai tốt hơn, các thuật toán phân cụm mờ được đề xuất và đã cung cấp một cách tiếp cận khác để tìm kiếm cấu trúc của tập dữ liệu Một trong những đặc điểm chính của các thuật toán này là nắm bắt tính chất chưa rõ ràng của dữ liệu thực Do đó, người sử dụng được cung cấp thêm thông tin về cấu trúc trong tập dữ liệu để có thể phân cụm bằng một mô hình không mờ Thuật toán phân cụm

dữ liệu mờ, cũng như các thuật toán dựa vào phân hoạch và phân cấp đòi hỏi người sử dụng phải cung cấp số lượng cụm của tập dữ liệu Đối với một tập dữ liệu thông thường thì chúng ta chưa biết trước số cụm, và người sử dụng thường không phải là chuyên gia để đánh giá số cụm, vì vậy một câu hỏi được đặt ra là làm thế nào để phân cụm dữ liệu với số cụm chưa biết trước ? Làm thế nào để tìm kiếm tối ưu số lượng cụm ? Đối với các tập dữ liệu phức tạp thì sao?

Do đó, để có thể giải quyết được các vấn đề nêu trên trong luận văn sẽ đề xuất một phương pháp phân cụm dữ liệu mờ với số cụm không xác định Thuật toán này đầu tiên sẽ loại bỏ phần tử ngoại lại ra khỏi tập dữ liệu, cải tiến khởi tạo tâm ban đầu cho thuật toán phân cụm mờ K-Means, với K là chạy trong một khoảng cho trước Để xác định giá trị K đúng với số lượng cụm thực của tập dữ liệu, tôi đề xuất hàm đánh giá chất lượng phân cụm cho các kết quả phân cụm của thuật toán phân cụm mờ K-Means tương ứng với mỗi giá trị của K

Trang 7

Vì vậy, luận văn được trình bày thành 4 chương Nội dung chính trong các chương được trình bày như sau:

Chương 1 trình bày cách biểu diễn dữ liệu trong máy tính nhằm phục vụ cho quá trình phân cụm, giới thiệu độ tương đồng giữa các đối tượng trong tập dữ liệu, các phương pháp phân cụm dữ liệu Với mỗi phương pháp phân cụm sẽ trình bày một số thuật toán tương ứng

Chương 2 trình bày về thuật toán phân cụm dữ liệu mờ, phương pháp phát hiện các phần từ ngoại lại dựa vào đặc trưng ngoại lai cục bộ trong tập dữ liệu

Chương 3 trình bày về đề xuất thuật toán phân cụm mờ với số cụm chưa xác chưa xác định Cụ thể, luận văn sẽ trình bày phương pháp loại bỏ phần tử ngoại lại trước khi phân cụm, cải tiến khởi tạo tâm ban đầu cho thuật toán phân cụm mờ K-Means, đề xuất hàm đánh giá chất lượng phân cụm của thuật toán phân cụm mờ với K chạy trong đoạn cho trước Cũng trong chương này, luận văn sẽ trình bày kết quả thực nghiệm đối với hai tập dữ liệu, đồng thời so sánh chất lượng phân cụm đối với hai hàm đánh giá chất lượng cụm là Index Partition, và Entropy Partition

Cuối cùng là chương kết luận, hướng phát triển và tài liệu tham khảo

Trang 8

CHƯƠNG I TỔNG QUAN VỀ PHÂN CỤM DỮ LIỆU

1 Giới thiệu

Phân cụm dữ liệu là một kỹ thuật quan trọng trong công nghệ tri thức được ứng dụng rộng rãi và đa dạng trong các ngành khoa học như sinh học, tâm lý học, y học, ngành marketing, thị giác máy tính, và điều kiển học v.v Phân cụm dữ liệu tổ chức dữ liệu bằng cách nhóm các đối tượng có độ tương đồng cao để khám phá cấu trúc của dữ liệu mà không yêu cầu các giả thiết cho trước từ các phương pháp thống kê Mục tiêu của phương pháp phân cụm dữ liệu chỉ đơn giản là tìm kiếm các nhóm đối tượng theo hình dạng tự nhiên Các thuật toán phân cụm hướng tới việc tìm kiếm cấu trúc trong dữ liệu Phương pháp này còn được gọi là

“học không thầy” hay “học không có giám sát” (Unsupervised Learning) trong lĩnh vực nhận dạng mẫu (Pattern Recognition) nói riêng và trong trí tuệ nhân tạo nói chung [1]

Một cụm bao gồm một tập các đối tượng có độ tương đồng cao Định nghĩa

về cụm được phát biểu một cách không hình thức như sau: Một cụm là một tập các thực thể (các đối tượng) tương tự nhau, và các thực thể ở các cụm khác nhau thì không giống nhau

Tùy vào từng ứng ứng dụng, đặc tính của dữ liệu và từng phương pháp phân cụm cụ thể, chúng ta có thể xem xét các dữ liệu như là các điểm trong không gian thỏa mãn điều kiện khoảng cách giữa hai điểm bất kỳ trong một cụm bé hơn khoảng cách giữa một điểm bất kỳ trong cụm đó với một điểm bất kỳ không thuộc cụm hoặc các cụm có thể được mô tả như là các vùng chứa các đối tượng có mật

độ cao trong không gian nhiều chiều, được tách với các vùng chứa các đối tượng

có mật độ thấp hơn

Chúng ta có thể dễ dàng phát biểu không hình thức về một cụm, nhưng lại rất khó để có thể đưa ra một định nghĩa hình thức về cụm Bởi vì thực tế thì các đối tượng được nhóm vào trong các cụm theo các mục đích khác nhau trong từng ứng dụng Dữ liệu có thể cho thấy các cụm theo hình dạng và theo các kích thước cụm

Các phương pháp phân cụm dữ liệu thường được chia làm 4 loại : Phương pháp dựa vào phân hoạch ( Partition Based Data Clustering Method), phương pháp phân cấp (Hierarchical Based Data Clustering Method), phương pháp dựa trên mật độ (Density Based Data Clustering Method), phương pháp dựa trên lưới (Grid Based Data Clustering Method) Cụ thể của dữ liệu Các phương pháp phân cụm này sẽ được trình bày chi tiết phần 4 của chương này

Trang 9

Các vấn đề liên quan tới bài toán phân cụm dữ liệu là vấn đề biểu diễn dữ liệu trong máy tính, xác định phương pháp, từ đó đưa ra thuật toán cụ thể để áp dụng, đồng thời xác định độ tương đồng giữa các đối tượng Đối với các thuật toán trong phương pháp dựa vào phân hoạch thì chúng ta còn phải xây dựng hàm đánh giá phù hợp để thuật toán cho ra kết quả phân cụm tốt

2 Biểu diễn dữ liệu

Điều kiện đầu tiên của tất cả các ứng dụng áp dụng thuật toán phân cụm dữ liệu là trích chọn các đặc trưng cần thiết của các đối tượng trong tập dữ liệu liệu thực, các đối tượng phải được biểu diễn dưới dạng dữ liệu, tức chúng ta phải xác định các kiểu dữ liệu cho các thuộc tính của đối tượng Các thuật toán phân cụm được áp dụng cho từng kiểu dữ liệu Phân cụm dữ liệu là một công cụ để khai thác

dữ liệu và phải được bổ sung các kỹ thuật để hiển thị dữ liệu Hầu hết việc hiển thị

dữ liệu là các biểu đồ biểu diễn dữ liệu trong không gian 2 chiều ( 2 đặc trưng) để biểu diễn các đối tượng Dữ liệu nhiều chiều không phải luôn luôn chính xác khi tạo ra hiển thị bởi một dãy các biểu đồ trong hai chiều, nhưng với tính hợp lệ thì việc biểu diễn này sẽ thuận lợi cho quá trình kiểm chứng các kết quả của các thuật toán phân cụm dữ liệu

Kiểu dữ liệu cung cấp mức độ lượng hóa dữ liệu Một đặc trưng có thể là kiểu nhị phân, có kiểu rời rạc, hoặc liên tục Các đặc trưng kiểu nhị phân có chính xác hai giá trị Đặc trưng nhận giá trị rời rạc là đặc trưng có hữu hạn giá trị, lực lượng của tập giá trị mà đặc trưng rời rạc nhận được thường là nhỏ Ví dụ các mẫu của tín hiệu tiếng nói được lượng hóa bởi 24

mức, vì vậy biểu điễn một đặc trưng cho một mẫu có thể được mã hóa bởi 4 bít Tất cả các đại lượng và các số được lưu trong máy tính với số lượng hữu hạn các số có nghĩa, vì vậy, nói đúng ra tất cả các đặc trưng đều nhận giá trị rời rạc Tuy nhiên thường thuật tiện hơn khi nghĩ rằng khi giá trị đặc trưng như là một điểm trên đường thẳng thực, một điểm có thể nhận một giá trị thực bất kỳ trong một miền giá trị xác định Do đó, đặc trưng này được gọi đặc trưng nhận giá trị liên tục

Tính chất thứ hai của đặc trưng là mức tỷ xích dữ liệu, nó cho biết ý nghĩa của các số Mức tỷ xích dữ liệu có thể phân chia thành mức tỷ xích định tính (định danh và số thứ tự) và mức tỷ xích định lượng (khoảng, tỷ lệ) Mức tỷ xích định danh chỉ đơn giản là các số được sử dụng như là các tên Ví dụ, câu trả lời (yes, no) có thể được mã hóa là (0,1) hoặc (1,0) hoặc (50,100); các số này không mang một ý nghĩa nào trong việc định tính Với mức tỷ xích theo số thứ tự, mức chia số yếu nhất, các số chỉ mang một ý nghĩa với một số khác Ví dụ các mức tỷ xích (1,2,3), (10,20,30) là tương đương theo các quan điểm của số thứ tự Các đặc

Trang 10

trưng và các chỉ số tương đồng nhận giá trị nhị phân và giá trị rời rạc có thể được

mã hóa trên những mức tỷ xích định tính này

Phân biệt các số mang ý nghĩa trong một mức chia khoảng (interval Scale), một đơn vị tính tồn tại, việc biểu diễn các số phụ thuộc vào đơn vị này

Tỷ xích mạnh nhất là tỷ xích theo tỷ lệ, các số mang một ý nghĩa tuyệt đối Điều này có nghĩa là số 0 tồn tại với một đơn vị đo lường, vì vậy tỷ lệ giữa hai số mang ý nghĩa Ví dụ, khoảng cách giữa hai thành phố được ước lượng trong đơn

vị là mét, dặm, hoặc là inches

Khi đã xác định được kiểu dữ liệu các đặc trưng của các các đối tượng Chúng ta phải đưa ra cấu trúc dữ liệu để biểu diễn tập đối tượng cần phân cụm Thông thường tập dữ liệu được biểu diễn dưới dạng ma trận gọi là ma trận mẫu Chúng ta có thể đưa ra khái niệm về ma trận mẫu như sau:

Nếu mỗi đối tượng trong một tập gồm n đối tượng được biểu diễn bởi một tập d thuộc tính, mỗi đối tượng đượcc xem như một mẫu, hay là một vectơ d chiều Tập hợp này được xem như một ma trận mẫu kích thước n*d Mỗi dòng của

ma trận này xác định một mẫu và mỗi cột tương ứng với một đặc trưng d đặc trưng được minh họa như một tập gồm d trục trực giao với nhau N mẫu là các điểm nằm trong không gian d chiều, không gian này còn được gọi là không gian mẫu Chúng ta sử dụng từ “mẫu” như là một điểm trong không gian mẫu, không

mô tả topô của các đối tượng Một cụm được biểu diễn là một tập các mẫu gần nhau hoặc là các đối tượng thỏa mãn các quan hệ không gian Nhiệm vụ của các thuật toán phân cụm dữ liệu là nhận ra các nhóm tự nhiên trong các không gian nhiều chiều Mặc dù quá trình hiển thị dữ liệu bị hạn chế trong không gian 3 chiều, nhưng không được nghĩ rằng các bài toán phân cụm dữ liệu trong không gian nhiều chiều cũng tương tự như phân cụm dư liệu trong 2 hoặc 3 chiều Một tiện lợi của phân cụm dữ liệu là giúp chúng ta tổ chức dữ liệu nhiều chiều khi dữ liệu không thể biểu diễn trong 2 hoặc 3 chiều

Trang 11

Hình 1.1 Hiển thị nhị phân của một chữ cái viết tay

3 Độ tương đồng

Phân cụm dữ liệu là phương pháp nhóm các đối tượng có độ tương tự hay

độ tương đồng cao vào trong một nhóm, các đối tượng ở các nhóm khác nhau thì

có độ tương đồng thấp Độ tương đồng giữa các đối tượng mô tả tính chất giống hoặc khác nhau giữa chúng theo một ý nghĩa nào đó Có rất nhiều hàm được dùng

để biểu diễn độ tương đồng giữa các đối tượng Tuy nhiên, trong khuôn khổ của luận văn, phần này chỉ trình bày một số các hàm đo tương đồng phổ biến hay còn gọi là các hàm khoảng cách Khoảng cách giữa hai mẫu thứ i và mẫu thứ k ký hiệu

là d(i,k) phải thỏa mãn các tính chất sau:

1 d(i,i)=0 với mọi i

2 d(i,k)=d(k,i) với mọi cặp (i,k)

3 d(i,k)>=0 với mọi cặp (i,k)

Hàm đánh giá độ tương đồng có thể được xác định theo một số cách Giả sử rằng chúng ta có một ma trận mẫu [xij] với xij là giá trị của đặc trưng thứ j của mẫu

i Tất cả các đặc trưng là liên tục và được ước lượng theo tỷ xích tỷ lệ Hàm khoảng cách phổ biến là khoảng cách Minkowski [1] dùng để ước lượng độ bất tương đồng Mẫu thứ i tương ứng với dòng thứ i của ma trận mẫu được ký hiệu là một vector cột xi

n i

x x

j

r kj

ij x x k

Trang 12

Các hàm khoảng cách Minkowski thỏa mãn tính chất các tính chất sau:

4 d(i,k)=0 nếu và chỉ nếu xi=xk

5 d(i,k)d(i,m) d(m,k) với mọi (i,m,k) Bất đẳng thức tam giác

Có ba khoảng cách phổ biến sử dụng khoảng cách Minkowsky được định nghĩa như sau:

Khoảng cách Euclidean (r=2):

2 / 1 2

/ 1

1

2

)]

( ) [(

)

|

| (

d j k

Ngoài các hàm khoảng cách được sử dụng để đánh giá độ tương đồng của các đối tượng nêu trên còn có rất nhiều cách đánh giá độ tương đồng khác, tùy thuộc vào tính chất của tập dữ liệu

Để biểu diễn độ tương đồng của tất cả các đối tượng trong tập dữ liệu, người ta thường sử dụng ma trận để lưu lại giá trị tương đồng giữa các cặp đối tượng Ma trận này được gọi là ma trận tương đồng Có thể đưa ra khái niệm về

ma trận tương đồng như sau:

Ma trận tương đồng [d(i,j)] lưu giá trị tương đồng trong một ma trận, mỗi dòng và mỗi cột của ma trận biểu diễn một mẫu Trong đó d(i,j) là độ tương tự giữa mẫu thứ i và mẫu thứ j Chúng ta bỏ qua các giá trị nằm trên đường chéo chính của ma trận tương đồng khi chúng ta giả sử rằng tất cả các mẫu có cùng mức độ tương đồng với chính nó Chúng ta cũng giả sử rằng ma trận tương đồng

là ma trận có tính đối xứng, tất cả các cặp đối tượng có cùng một giá trị tương đồng, không phụ thuộc vào thứ tự sắp xếp

Một ma trận tương đồng có thể là được gọi là ma trận độ tương tự hoặc cũng có thể gọi là ma trận bất tương đồng

Các giá trị tương đồng cũng có thể là nhận giá trị nhị phân, rời rạc hoặc nhận giá trị liên tục Ví dụ, giả sử rằng một tập đối tượng được phân hoạch vào các tập con Giá trị nhị phân đo độ tương đồng phân nhận giá trị 0 với các cặp đối

Trang 13

tượng ở hai tập con khác nhau và nhận giá trị bằng 1 với các cặp ở cùng một tập con Nếu giá trị tương đồng là một số nguyên từ 1 tới n(n-1)/2 với n là số lượng các đối tượng được xem là ma trận tương đồng nhận giá trị rời rạc Nếu ma trận tương đồng mà các phần tử nhận giá trị là khoảng cách Euclidean giữa các mẫu trong không gian mẫu thì được xem là ma trận tương đồng nhận giá trị liên tục

Các thuật toán phân cụm nhóm các đối tượng, hay các dữ liệu thành phần dựa trên độ tương đồng giữa các cặp đối tượng Các đối tượng được gọi là các điểm, các trường hợp, các thành phần trong các ứng dụng khác nhau

4 Các phương pháp và các thuật toán phân cụm dữ liệu

Phân cụm dữ liệu biểu diễn mỗi quan hệ giữa các đối tượng trong ma trân tương đồng Nếu các đối tượng được đặc tả như là các mẫu hoặc các điểm trong không gian metric, thì độ tương đồng có thể là khoảng cách giữa các cặp đối tượng, như là khoảng cách Euclidean Ma trận mẫu và ma trận tương đồng là những dữ liệu vào cho các thuật toán phân cụm Đã có rất nhiều thuật toán phân cụm được xây dựng nhằm áp dụng vào các mục đích cụ thể Các thuật toán này có thể được phân vào một trong 4 phương pháp sau đây [2]:

1 Phương pháp dựa vào phân hoạch( Partition Based Data Clustering Method)

2 Phương pháp phân cấp (Hierarchical Based Data Clustering Method)

3 Phương pháp dựa trên mật độ (Density Based Data Clustering Method)

4 Phương pháp dựa trên lưới (Grid Based Data Clustering Method)

4.1 Phương pháp dựa vào phân hoạch

Các thuật toán dựa vào phân hoạch để phân cụm dữ liệu là các thuật toán rất phổ biến trong lĩnh vực phân cụm Cho một tập D gồm n đối tượng trong không gian d chiều, và một giá trị K là số lượng cụm Một thuật toán phân hoạch tổ chức các đối tượng vào trong K cụm thỏa mãn điều kiện tổng sai số về độ lệch của mỗi đối tượng tới tâm của nó hoặc từ phân bố của một cụm là nhỏ nhất Các thuật toán phân cụm khác nhau thì thường sử dụng các độ lệch khác nhau Người ta thường gọi độ lệch này là độ tương đồng

Trong phần này sẽ giới thiệu các thuật toán phân cụm dựa vào phân hoạch sau: Thuật toán K-Means (MacQueen, 1967), Thuật toán EM (Expectation Maximazation) (Dempster et al.,1977; Yu et al.,1998; Braley et al 1998), thuật toán K-medoids Ba thuật toán này có các cách biểu diễn các cụm khác nhau Thuật toán K-Means sử dụng tâm (điểm trung bình) của các đối tượng trong một

Trang 14

cụm làm tâm của cụm đó trong khi thuật toán K-Medoids sử dụng đối tượng gần điểm trung bình nhất làm tâm Không giống như thuật toán K-Means và K-Medoid, thuật toán EM sử dụng điểm trung bình và ma trận hệ số kích thước d*d biểu diễn mỗi cụm Thay thế cho việc kết gán mỗi đối tượng tới một tâm duy nhất, thuật toán EM kết gán mỗi đối tượng tới một cụm theo một xác xuất được tính toán từ phân bố của mỗi cụm Theo cách này, mỗi đối tượng có một xác xuất cho mỗi cụm, tạo ra kỹ thuật phân hoạch mờ: Thuật toán Fuzzy K-Means Thuật toán phân cụm mờ K – Means sẽ được trình bày chi tiết trong chương II

Mặc dù các thuật toán phân cụm khác nhau tạo ra kết quả phân cụm nói chung là khác nhau, tuy nhiên ba thuật toán phân hoạch đều có một tiếp cận chung khi tính toán các lời giải của chúng Thật vậy, quan sát ba thuật toán tìm kiếm K tâm và các phân bố để làm tối ưu hàm mục tiêu Một khi đã xác định được K tâm hay các phân bố tối ưu, các đối tượng trong K cụm được xác định Tuy nhiên, để tìm kiếm K tâm hay các phân bố tối ưu là một bài toán NP-Hard (Garey và Johnson,1979) Do đó, một cách để tìm ra các tâm tối ưu cục bộ phải dùng pháp cập nhật tâm nhiều lần cho đến hàm mục tiêu đạt giá trị cực tiểu Ba thuật toán này có các hàm mục tiêu khác nhau và các cách thực hiện khác nhau được thể hiện

ở bước 3 và 4 của thuật toán A Một trở ngại của các thuật toán dựa vào phân hoạch là yêu cầu phải tham số K phải biết trước và chúng không có khả năng để tìm kiếm các cụm theo hình dạng bất kỳ Chúng ta sẽ xem xét các thuật toán một cách chi tiết hơn

Thuật toán A :

Input: số lượng cụm K, và một cơ sở dữ liệu chứa N đối tượng

Outut: một tập gồm K cụm thỏa mãn điều kiện cực tiểu hóa hàm mục tiêu

4.1.1 Thuật toán K-means

Thuật toán K-means (MacQueue, 1967) sử dụng giá trị trung bình của các đối tượng trong một cụm là tâm cụm Hàm mục tiêu được sử dụng trong thuật toán là hàm sai số bình phương được định nghĩa như sau:

Trang 15

Với x là một điểm trong không gian biểu diễn các đối tượng, và mi là giá trị trung bình của cụm Ci

Thuật toán K-means cơ bản dựa theo cấu trúc của thuật toán A Trong bước

3 của thuật toán, K-means gán mỗi đối tượng và trong tâm gần nhất của nó tạo ra tập các cụm mới Trong bước 4, tất cả các tâm của cụm mới được tính toán bằng giá trị trung bình của các đối tượng trong mỗi cụm Quá trình này lặp đi lặp lại cho tới khi hàm mục tiêu E không thay đổi

Thuật toán K-means là tương đối mềm dẻo và hiệu quả trong việc xử lý các tập dữ liệu lớn bởi vì độ phức tạp tính toán của thuật toán là O(NKt), với N là tổng

số các đối tượng, K là số lượng cụm, và t là số vòng lặp Thông thường thì K<<N

và t<<N Thuật toán dừng khi đạt được lời giải cục bộ

Nhược điểm của thuật toán K-means sẽ phân cụm tồi khi dữ liệu chứa nhiễu

và các phần tử ngoại lại, chỉ cần một số lượng nhỏ dữ liệu nhiễu như thế cũng đã ảnh hưởng tới giá trị trung bình

4.1.2 Thuật toán phân cụm K-medoids

Không giống như thuật toán means và thuật toán EM, thuật toán medoids sử dụng đối tượng trong một cụm là tâm cụm đó để thay thế cho việc lấy giá trị trung bình của các đối tượng trong một cụm Điều này làm cho thuật toán K-medoids tránh được nhiễu và phần tử ngoại lai Tuy nhiên, độ phức tạp của thuật toán này cao hơn độ phức tạp của thuật toán K-means

K-Để thực hiện bước 4 trong thuật toán A, thuật toán K-medoids trước đây như PAM ( Partitioning Around Medoids ) (Kaufman & Rousseeuw, 1990) lặp tất

cả K tâm và cố gắng thay thế mỗi tâm bởi N-K đối tượng còn lại Với mỗi sự thay thế này, nếu hàm sai số bình phương E giảm, thì sự thay thế được giữ lại, và vòng lặp tiếp theo của thuật toán A được thực hiện Tuy nhiên, nếu không có sự thay thế nào được tìm thấy sau khi đã thực hiện xong K tâm, tức là không làm giảm hàm E thì thuật toán sẽ kết thúc với nghiệm tối ưu cục bộ

Do độ phức tạp lớn nên thuật toán phân hoạch như PAM chỉ thực hiện hiệu quả đối với các tập dữ liệu nhỏ, nhưng sẽ không phù hợp với các tập dữ liệu lớn

Để thực hiện với các tập dữ liệu lớn, phương pháp phân cụm dựa trên mẫu (Sampling – based method) là CLARA (Clustering LARge Applications) đã được phát triển bởi Kaufman & Rousseeuw Thuật toán chọn một phần của dữ liệu thực làm mẫu thay cho việc xem toàn bộ tập dữ liệu Các tâm được chọn từ các mẫu sử dụng thuật toán PAM và độ bất tương đồng trung bình được tính cho toàn bộ tập

dữ liệu Nếu có một tập các tâm mới có độ bất tương đồng thấp hơn lời giải tốt nhất trước đó, thì lời giải tốt nhất được thay thế bởi tập tâm mới này, chi tiết thuật toán xem ở [2]

Trang 16

4.1.3 Thuật toán EM (Expectation Maximization)

Thay thế việc mỗi một cụm sử dụng một điểm, Thuật toán EM biểu diễn mỗi cụm bằng cách sử dụng phân bố xác xuất Phân bố Gaussian thường được sử dụng bởi vì lý thuyết ước lượng mật độ (Density Estimation Theory), một phân bố một độ bất kỳ cũng có thể xấp xỉ bởi sự kết hợp của các phân bố Gaussian Phân

bố Gaussian d chiều biểu diễn một cụm Ci bằng cách tham số hóa bởi giá trị trung bình của cụm i và ma trận hệ số dd Với một phân bố cụm Ci, xác xuất để xuất hiện đối tượng tại vị trí x được ký hiệu là P(x|i) với:

|

| ) 2 (

)

| (

x P

i x P

Trong thuật toán A, sau khi khởi tạo ngẫu nhiên, thuật toán EM sẽ tính toán

độ phụ thuộc của mỗi đối tượng trong bước 3 bằng cách áp dụng công thức 2 và 4 Các giá trị mới của Wi, i, Mi được tính toán trong bước 4 bằng cách sử dụng công thức sau: Wi = 

D x

x i P

D x

i

x i P

x i P x

)

| (

)

| (

D x

T i i

x i P

x x

x i P

)

| (

) )(

x

P ))(

Trang 17

Khi hàm E tăng không đáng kể giữa hai vòng lặp liên tiếp nhau thì thuật toán dừng Cũng giống như hai thuật toán K-means và K-medoids, thuật toán EM hội tụ tới tối ưu cục bộ

4.2 Các phương pháp phân cụm dựa vào phân cấp

Phương pháp phân cấp tạo phân tách các tập đối tượng theo dạng rẽ nhánh – một cây tách cơ sở dữ liệu một cách đệ quy vào các tập con nhỏ hơn Quá trình tạo cây theo hai cách: “Bottom - Up” hoặc “Top - Down” Tiếp cận “Bottom - Up”, còn được gọi là tiếp cận “vun đống”, bắt đầu với mỗi đối tượng được xem như một nhóm, sau đó trộn các đối tượng hay các nhóm theo các hàm như hàm khoảng cách giữa các tâm của hai nhóm và điều này được thực hiện cho tới khi tất cả các nhóm được trộn vào làm một nhóm hoặc cho tới khi điều kiện kết thúc được thỏa mãn Tiếp cận theo phương pháp “Top-Down”, bắt đầu với tất cả các đối tượng nằm trong cùng một cụm Trong mỗi lần lặp, một cụm được tách ra thành các cụm nhỏ hơn theo một ước lượng nào đó Điều này được thực hiện cho tới khi mỗi đối tượng là một cụm, hoặc cho tới khi điều kiện kết thúc thỏa mãn

Các thuật toán phân cụm trước đây theo phương pháp phân cấp như AGNES và DIANA (Kaufman & Rousseeuw, 1990) thường phải sử dụng các hàm đánh giá đơn giản để tách hoặc trộn các cụm Thực tế thì các bước trộn hoặc tách

là không thuật nghịch, do đó các phương pháp đưa ra thường cho kết quả phân cụm sai

Để nâng cao hiệu quả của thuật toán theo phân cấp, các phương pháp gần đây cố gắng theo một trong hai tiếp cận sau đây Tiếp cận đầu tiên được trình bày bởi các thuật toán như CURE (Guha et al., 1998) và CHAMELEON (Karypis et al., 1999) sử dụng các quy tắc phức tạp hơn khi tách hoặc trộn các cụm Mặc dù việc tách hoặc trộn các cụm vẫn không thuận nghịch trong tiếp cận này, nhưng các lỗi tạo ra là rất ít bởi vì đây là một phương pháp tốt hơn được sử dụng để trộn và tách Tiếp cận thứ hai được biểu diễn bởi các thuật toán như BIRCH (Zhang et all., 1996) là để xác định kết quả ban đầu bằng các sử dụng thuật toán “vung đống” và sau đó sử dụng lặp tìm vị trí tâm để làm mịn kết quả

4.2.1 Thuật toán BIRCH: Balanced Iterative Reducing and Clustering using Hierarchies

BIRCH là một phương pháp phân cụm phân cấp theo “Bottom - Up” Tư tưởng chính của BIRCH là nén các đối tượng dữ liệu vào trong các cụm con và sau đó thực hiện phân cụm với các cụm con này Để trộn các cụm con, số lượng các cụm phải bé hơn hoặc bằng số lượng đối tượng dữ liệu và do đó cho phép quá

Trang 18

trình phân cụm thực hiện trong bộ nhớ trong Các kết quả trong thuật toán chỉ cần quét qua cơ sở dữ liệu một lần

Trong thuật toán BIRCH, mỗi một cụm con được biểu diễn bởi đặc trưng của cụm đó là bộ ba mô tả tóm tắt thông tin về nhóm các đối tượng trong cụm đó Cho N đối tượng {Xi} trong không gian d chiều Một cụm CF(Clustering Feature) của một cụm con được định nghĩa là:

) ,

(N LS ,SS

CF

Trong đó, N là số lượng các đối tượng trong một cụm, LS

là tổng của N điểm tức LS

tố nhánh B, và ngưỡng T Nhân tố nhánh là số lượng cực đại các đỉnh con mà một đỉnh trong có thể có Tham số ngưỡng là đường kính tối đa của các cụm con được lưu trữ tại mỗi đỉnh lá của cây Hai tham số này ảnh hưởng đển cỡ của cây kết quả

Cây CF được xây dựng một cách tự động theo cách các đối tượng được chèn vào Một đối tượng được chèn vào một lá gần nhất (Cụm con) Nếu đường kính của một cụm con được lưu trữ trong đỉnh lá sau khi chèn lớn hơn giá trị ngưỡng thì sau đó đỉnh lá này và có thể có các đỉnh khác sẽ được tách Sau khi chèn một đối tượng mới, thông tin được truyền về gốc của cây Cỡ của cây có thể

bị thay đổi bằng cách thay đổi giá trị ngưỡng Nếu giá trị ngưỡng tạo ra cây CF không lưu được trong bộ nhớ trong thì giá trị ngưỡng được tăng lên và cây CF được xây dựng lại mà không cần thiết đọc lại tất cả các đối tượng trong cơ sở dữ liệu Sau khi cây CF được xây dựng, một thuật toán phân cụm bất kỳ, như các thuật toán phân cụm theo phân hoạch được sử dung để thực hiện quá trình phân cụm trong bộ nhớ trong Để cải tiến chất lượng phân cụm hơn nữa, một hoặc nhiều lần quét cơ sở dữ liệu có thể được thực hiện Độ phức tạp thuật toán là O(N), với N là số lượng đối tượng được phân cụm

Các kết quả thực hiện cho thấy thuật toán có tính mềm dẻo đối với số lượng các đối tượng, và chất lượng phân cụm là tốt Tuy nhiên, khi một đỉnh trong cây

Trang 19

CF chỉ thỏa mãn về giới hạn số lượng các đối tượng theo kích thước của nó, một đỉnh không phải luôn luôn tương ứng với một cụm thực mang tính tự nhiên như người sử dụng mong muốn Hơn nữa, nếu các cụm không phải có hình dạng là hình cầu, BIRCH không thực hiện tốt bởi vì nó sử dụng khái niệm bán kính hoặc đường kính để điều khiển giới hạn của một cụm Xem chi tiết thuật toán này ở [7]

4.2.2 Thuật toán CURE: Clustering Using Representatives

Không giống các phương pháp vun đống truyền thống như AGNES, CURE

là một phương pháp vun đống sử dụng quy tắc phức tạp để trộn các cụm

Có hai ý tưởng chính mà CURE sử dụng để đạt được các cụm có chất lượng cao Đầu tiên, thay cho việc sử dụng các tâm hoặc các đối tượng để biểu diễn tâm một cụm, số lượng các đối tượng xác định được lựa chọn để biểu diễn mỗi cụm Thứ hai, các đối tượng được lựa chọn để biểu diễn cụm được co tới các tâm của cụm bằng nhân tố co  nằm trong đoạn [0,1]

Tại mỗi bước của thuật toán, hai cụm có các cặp biểu diễn các cụm gần nhau nhất được trộn vào với nhau Tiếp cận này cho phép CURE điều chỉnh tốt hình dạng của các cụm không phải là hình cầu Các cụm co trợ giúp loại bỏ ảnh hưởng của các phần tử ngoại lai Do đó, CURE là một thuật toán mạnh tránh được các phần tử ngoại lai và nhận ra các cụm không phải là hình cầu và có cỡ tùy ý

Nó mềm dẻo đối với các cơ sở dữ liệu lớn mà không ảnh hưởng với chất lượng cụm Hình 1.2 biểu diễn quá trình trộn hai cum con với nhau theo CURE và việc

co các điểm dữ liệu tới tâm cụm được tạo ra Các điểm đen ở trong hình là các điểm được chọn để biểu diễn mỗi cụm con Xem chi tiết thuật toán này ở [8]

Hình 1.2 : Trộn 2 cụm theo thuật toán CURE

Các điểm đại diện gần nhau nhất

Trộn

Trang 20

4.2.3 Thuật toán CHAMELEON

Tương tự như thuật toán CURE, CHAMELEON là thuật toán phân cụm cố gắng cái tiến chất lượng phân cụm bằng cách sử dụng chuẩn phức tạp hơn khi trộn hai cụm với nhau

Hai cụm được trộn với nhau nếu tính chất liên thông và tính đóng của cụm kết quả là tương tự như tính liên thông và tính đóng của hai cụm con

Để tạo ra các cụm con ban đầu, đầu tiên CHAMELEON tạo ra đồ thị G=(V,E) với mỗi đỉnh v V biểu diễn đối tượng dữ liệu và trọng số cạnh

)

,

(v i v j nếu hai đỉnh v iv j thuộc K - láng giềng của nhau Trọng số của mỗi cạnh trong đồ thị G biểu diễn tính đóng giữa hai đối tượng dữ liệu được kết nối.Có nghĩa là cạnh sẽ được đánh trọng số nếu hai đối tượng dữ liệu là gần nhau Sau đó CHAMELEON sử dụng thuật toán phân hoạch đồ thị để phân hoạch G một cách

đệ quy vào trong nhiều đồ thị con không liên thông với nhau bằng cách sử dụng phương pháp min-cut trên đồ thị G tại mỗi bước của quá trình đệ quy Thuật toán min-cut trên đồ thị G phân hoạch G vào trong hai phần có kích thước bằng nhau thỏa mãn tổng trong số các cách bị cắt là bé nhất Mỗi đồ thị con sau đó được xử

lý như là một cụm ban đầu và sau đó sử dụng lặp đi lặp lại thuật toán phân cụm phân cấp theo “Bottom- Up” để kết hợp hai cụm có độ tương đồng nhất, quá trình này lặp đi lặp lại cho tơi khi thỏa mãn điều kiện kết thúc Quá trình này được minh họa trong hình 4

CHAMELEON xác định độ tương đồng giữa hai cụm Ci và Cj theo độliên thông tương đối RI(Ci ,Cj) và tính chất đóng tương đối RC(Ci,Cj).Độ liên thông của một cụm được định nghĩa là tổng trọng số các cạnh được loại bỏ khi thực hiện thuật toán min-cut trên một cụm, định nghĩa độ liên thông tương đối RI(Ci,Cj) là

tỷ số giữa độ liên thông của cụm Ci và cụm Cj với tổng trung bình giữa độ liên thông của cụm Ci và cụm Cj Tương tự, tính đóng RC(Ci,Cj) giữa hai cụm Ci và Cj được định nghĩa là tỷ số giữa tính đóng của cụm Ci và cụm Cj với tổng trung bình tính đóng của cụm Ci và cụm Cj Xem chi tiết thuật toán này ở [9]

4.3 Các phương pháp dựa vào mật độ

Hầu hết các phương pháp phân hoạch truyền thống phân cụm đều dựa trên khoảng cách giữa các đối tượng Các phương pháp này chủ yếu tìm ra các cụm có dạng hình cầu và rất khó để tìm ra các cụm có hình dạng ngẫu nhiên Phương pháp phân cụm dựa vào mật độ xem các cụm như là các vùng có mật độ các đổi tượng lớn trong không gian dữ liệu Các phương pháp dựa vào mật độ có thể sử dụng để loại bỏ nhiễu, và phát hiện ra các cụm có hình dạng ngẫu nhiên

Trang 21

Thuật toán dựa vào mật độ đầu tiên là thuật toán DBSCAN(Ester et al., 1996), thuật toán này xem xét mật độ theo lân cận của mỗi đối tượng, nếu số lượng các đối tượng trong khoảng cách  của một đối tượng lớn hơn MinPts thì đối tượng đó được xem là nằm trong một cụm Bởi vì các cụm tìm được phụ thuộc vào tham số  và MinPts, nên thuật toán DBSCAN dựa trên khả năng của người

sử dụng để lựa chọn tập tham số tốt

Để tránh được vấn đề này, năm 1999 Ankerst để xuất phương pháp sắp xếp các cụm được gọi là OPTICS OPTICS tính toán việc sắp xếp các cụm có tham số

để phân cụm tự động Xem chi tiết hai thuật toán này ở [2]

4.3.1 DBSCAN: phương pháp phân cụm dựa trên mật độ của các vùng được liên kết với mật độ đủ lớn

DBSCAN (Density - Based Spatial Clustering of Applications with noise) (Ester

et al.,1996)

DBSCAN là một thuật toán phân cụm dựa vào mật độ Thuật toán nhóm các vùng có mật độ đủ cao vào trong các cụm, và tìm kiếm các cụm với hình dạng tự nhiên trong trong các tập dữ liệu không gian Thuật toán yêu cầu 2 tham số đầu vào là  và Minpts Các đối tượng nằm trong hình cầu bán kính  của một đối tượng được gọi là -lận cận của đối tượng đó và và đối tượng có ít nhất là Minpts đối tượng khác là e-lân cận thì được gọi là đối tượng lõi (Core Object) Phân cụm

dữ liệu theo thuật toán DBSCAN áp dụng các luật sau đây:

- Một đối tượng có thể nằm trong một cụm nếu và chỉ nếu nó nằm trong e-lân cận của một đối tượng lõi thuộc cụm đó

- Một đối tượng lõi o nằm thuộc e-lân cận của một đối tượng lõi p khác thì o bắt buộc phải nằm cùng một cụm với p

- Một đối tượng không lõi q nằm trong e-lân cận của các đối tượng p1,…, pi, i>0, thì q phải nằm cùng một cụm chứa ít nhất một đói tượng lõi thuộc p1,…, pi

- Một đối tượng không lõi r không nằm thuộc e-lân cận của một đối tượng lõi bất kỳ thì được xem là nhiễu

Ví dụ: Xem xét hình dưới đây với  là bán kính của hình tròn và Minpts

=3 Chúng ta biểu diễn các đối tượng lõi là các điểm hình tròn, còn các đối tượng không lõi là các điểm có dạng hình tròn Trong hình… biểu diễn hai cụm, C1 và

Trang 22

C2 được tìm kiếm bởi thuật toán DBSCAN Các đối tượng dữ liệu nằm trong C1 hoặc C2 đều thuộc  - lân cận của ít nhất một đối tượng lõi nằm trong C1 hoặc C2

và không có hai đối tượng lõi nào thỏa mãn thuộc -lân cận của nhau và do đó chúng có thể năm ở các cụm khác nhau Đối tượng không lõi M nằm trong -lân cận của T và R, với T là đối tượng lõi thuộc C1 và R là đối tượng lõi thuộc C2 Điều này dẫn tới có thể phân M vào C1 hoặc C2 khi nó là biên của hai cụm Cuối cùng, đối tượng S có thể được xem là nhiễu bởi vì nó là một đối tượng không lõi

và không thuộc -lân cận của các đối tượng lõi

Để tìm kiếm các cụm , DBSCAN kiểm tra - lân cận của mỗi đối tượng trong cơ sở dữ liệu Nếu -lân cận của một điểm p chứa nhiều hơn MinPts, một cụm mới với p là đối tượng lõi được tạo ra Các đối tượng trong -lân cận của p được phân vào cụm mới này Các đối tượng lõi trong lân cận này sẽ được xử lý tượng tự như p và điều này làm cho kích thước của cụm tăng lên Khi không còn đối tượng lõi để xử lý, các đối tượng lõi khác trong cơ sở dữ liệu sẽ được tìm kiếm

và tạo nên một cụm mới khác Chú ý rằng trong quá trình làm tăng kích thước của cụm theo thuật toán DBSCAN, một đối tượng lõi đã nằm trong một cụm khác có thể bị phân cụm đang xử lý và kết quả là làm trộn hai cụm với nhau Quá trình kết thúc khi không có điểm nào được phân vào các cụm

4.3.2 OPTICS: Ordering Point To Identify the Clustering Structure

Mặc dù thuật toán DBSCAN có thể tìm kiếm các cụm với hình dạng tự nhiên của trong trong tập dữ liệu chứa nhiễu, tuy nhiên nó bị ảnh hưởng rất lớn bởi hai tham số là  và MinPts Để tìm kiếm các cụm được xem là chấp nhận được, người sử dụng có thể chạy thuật toán này nhiều lần trong các tập giá trị káhc nhau của hai tham số Nếu không có một hướng dẫn nào để lựa chọn hai tham số này thì tổng thời gian thực hiện có thể là rất lớn và dẫn đến không khả thi

Để khắc phục khó khăn này, phương pháp xếp loại một cụm được gọi là OPTICS (Ordering Point To Identify the Clustering Structure) đã được đề xuất

Trang 23

Cũng giống như thuật toán DBSCAN, thuật toán OPTICS yếu cầu hai tham số đầu vào là  và MinPts Tuy nhiên, thay cho việc tạo ra kết quả phân cụm của một cặp giá trị của hai tham số này, thuật toán OPTICS một dãy các điểm dữ liệu có thứ tự là kết quả của việc phân cụm với giá trị thấp hơn  và với cùng một giá trị của MinPts có thể dễ dàng xác định và tính toán

Bằng cách kiểm tra thuật toán DBSCAN, có thể dễ dàng thấy rằng mới một hằng số MinPts, giảm  tới giá trị mới ‟ sẽ tạo ra hai tác động:

- Một đối tượng lõi có thể trở thành không lõi bởi vì nó không có ít nhất MinPts đối tượng trong ‟- lân cận của nó

- Một đối tượng không lõi ban đầu trong -lân cận của một số đối tượng lõi có thể trở thành nhiễu bởi vì chúng không nằm trong  ‟- lân cận của các đối tượng lõi hoặc bởi vì các đối tượng lõi này đã trở thành các đối tượng không phải là lõi

Do đó có thể thấy rằng, hai tác động này sẽ tạo ra kết quả tập các cụm

mà các tập này nằm hoàn toàn trong các tập các cụm được tìm thấy với giá trị cao hơn của  Do đó, để tạo ra một tập các cụm được sắp xếp, chỉ cần lưu các giá trị ngưỡng cho mỗi đối tượng dữ liệu thỏa mãn tạo động của một giá trị  nào đó Các giá trị cần được lưu là khoảng cách lõi và khoảng đạt được:

- Khoảng cách lõi của một đối tượng p ký hiệu là core(p) là khoảng cách nhỏ nhất thỏa mãn core(p)-lân cận chứa đúng MinPts đối tượng Nếu p không là đối tượng lõi với  ban đầu thì khoảng cách lõi của p không xác định

- Khoảng cách đạt được của đối tượng p đối với đối tượng o, ký hiệu là reach(o,p) là khoảng cách nhỏ nhất thỏa mãn p nằm trong reach(o,p)-lân cận của o và o còn là đối tượng lõi đối với reach(o,p) Nếu o không là đối tượng lõi với  , thì reach(o,p) không xác định

Thuật toán OPTICS tạo ra một thứ tự các đối tượng trong cơ sở dữ liệu, ngoài ra còn lưu khoảng cách lõi và khoảng các đạt được phù hợp cho mỗi đối tượng Những thông tin này đủ để tìm kiếm tất cả các cụm với ‟ bất kỳ nhỏ

hơn được sử dụng để xếp loại

Xếp phân cụm cho một tập dữ liệu có thể được biểu diễn bởi đồ họa, điều này trở giúp cho chúng ta có thể hiểu hơn về cụm Ví dụ, trong hình… là biểu đồ cho tập dữ liệu 2 chiều, biểu đồ biểu diễn tổng quan về dữ liệu và các cụm của chúng Đã có mốt số phương pháp được phát triển để hiển các cấu trúc cụm trong không gian nhiều chiều

Trang 24

Hình

4.4 Các phương pháp phân cụm dựa trên lưới

Các phương pháp phân cụm dựa vào mật độ như DBSCAN, OPTICS phải đổi có thể sẽ thất bại trong không gian dữ liệu với số chiều cao và phải thiết lập các tham số  và MinPts Để nâng cao hiệu quả của phân cụm, tiếp cận phân cụm dựa trên lưới sử dụng cấu trúc dữ liệu dạng lưới Tiếp cận này phân chia không gian dữ liệu vào một số lượng hữu hạn các ô tạo nên dạng hình lưới Tiện lợi chính của tiếp cận này là thời gian xử lý nhanh và nó không phụ thuộc vào số lượng các đối tượng dữ liệu, chỉ phụ thuộc vào số lượng các ô ở mỗi chiều trong không gian lượng hóa

Một số thuật toán cơ bản của tiếp cận dựa trên lưới là thuật toán STING, thuật toán này tìm kiếm theo thống kê các thông tin nằm trong các ô Thuật toán WaveCluster phân cụm dữ liệu sử dụng phương pháp biến đối sóng và thuật toán CLIQUE trình bày cách tiếp cận dựa vào mật độ và dựa vào lưới để phân cụm dữ liệu nằm trong không gian với số chiều lớn Xem chi tiết ở [2]

4.4.1 STRING: A STatistical INformation Grid approach

STING là một cấu trúc dữ liệu đa mức dựa trên lưới, trong không gian

dữ liệu được chia thành các ô hình chữ nhật Có các ô tương ứng với các mức khác nhau để giải quyết bài toán, cách phân chia ô như vậy tạo ra một cấu trúc phân cấp: mỗi ô ở mức cao được phân chia thành một số ô ở mức thấp hơn tiếp theo Thông tin thống kê liên quan tới thuộc tính của mỗi ô như mean, maximum, minimum được tính toán trước và lưu trữ Những thông tin thông kê này sẽ trợ giúp cho quá trình truy vấn như sau:

Trang 25

Trong hình … trình bày 3 tầng liên tiếp nhau của cấu trúc STING, mỗi ô

ở tầng trên được phân chia thành bốn ô ở tầng tiếp theo Các tham số thống kê ở mức cao có thể được dễ dàng tính toán bởi các tham số từ các ô ở mức thấp hơn Các tham số này bao gồm: số lượng đối tượng trong ô: count, giá trị trung bình: mean, độ lệch chuẩn: s, giá trị nhỏ nhất của thuộc tính của các đối tượng trong ô: min, giá trị lớn nhất của thuộc tính của các đối tượng trong ô: max và kiểu phân

bố trong các ô Dữ liệu được đưa vào trong cấu trúc lưới bắt đầu từ mức thấp nhất Các tham số count, m, s, min, max ở mức này được tính toán trực tiếp từ dữ liệu Giá trị của phân bố có thể được đặt bởi người sử dụng Kiếu phân bố ở ô mức cao được tính toán dựa trên các kiểu phân bố ở các ô tương ứng ở mức thấp kề nó theo một ngưỡng cho trước Nếu các phân bố ở mức thấp giống nhau và bị lỗi khi kiểm tra bởi ngưỡng, kiểu phân bố ở ô mức cao sẽ là không xác định (được đặt là none)

Để thực hiện phân cụm trên cấu trúc lưới, người sử dụng cung cấp mật

độ ở các ô như là tham số đầu vào Sử dụng tham số này, áp dụng tiếp cận down, phương pháp dựa trên lưới tìm các vùng có mật độ chấp nhận được bằng việc thực hiện các thao tác sau:

Top- Một tần với cấu trúc phân cấp được xác định để thực hiện tiến trình trả lời truy vấn Tầng này bao gồm một số lượng nhỏ các ô Với mỗi ô trong tầng, tính khoảng chắc chắn mà các ô trong đó sẽ trở thành một cụm Các ô không chắc chắn sẽ bị loại bỏ

 Các ô thỏa mãn truy vấn được tinh chỉnh lại bằng cách lặp lại thủ tục tại mức tiếp theo của cấu trúc

 Tiến trình này được lặp lại cho đến khi mức cuối cùng được tìm thấy Tại đó, nếu truy vấn xác định được kết quả, các vùng chứa các ô thích hợp thỏa mãn truy vấn được trả về Trường hợp khác, dữ liệu rơi vào các ô thiưch hợp

Trang 26

được khôi phục lại, và tiến trình tiếp theo được thực hiện cho đến khi chúng gặp các yêu cầu của truy vấn

4.4.2 WaveCluster: Clustering Wavelet transformation

WaveCluster là thuật toán phân cụm đa chiều với việc tổng hợp dữ liệu bằng cách sử dụng cấu trúc lưới đa chiều trong vùng dữ liệu Sau đó sử dụng biến đổi sóng để biến đổi các khoảng đặc trưng gốc, tìm kiếm các vùng dày đặc trong khoảng được biến đổi

Trong tiếp cận này, mỗi ô tổng hợp thông tin của một nhóm các điểm có thể ánh xạ vào ô Thông tin tổng quát này là đặc thù làm thích hợp với bộ nhớ lưu trữ trong để sử dụng biến đổi sóng đa chiều và các phân tích cụm tiếp theo

Một biến đổi sóng là kỹ thuật xử lý tín hiệu để phân tích một tín hiệu thành chuỗi các dải sóng con Mô hình sóng có thể ứng dụng cho các tín hiệu n-chiều bằng cách áp dụng một chiều sóng biến đổi n lần Sự cuộn lại với một nhân thích hợp trả về trong một khoảng được biến đổi sẽ là các cụm tự nhiên dễ xác định Các cụm có thể được xác định bằng việc tìm kiếm các vùng trong vùng mới

Biến đổi sóng có thể sử dụng hữu ích trong phân cụm với các ưu điểm sau:

 Cung cấp phân cụm giám sát Nó sử dụng khối hình nón để lọc các vùng nơi chứa các điểm cụm, cùng thời gian đó, nó khử nhiễu các thông tin yếu bên ngoài biên các cụm Do đó, các vùng dày đặc trong vùng đặc trung ban đầu sẽ hút các điểm gần nó nhất, và ngăn chặn các điểm xa nó Điều này có nghĩa là các cụm trong dữ liệu tự động đứng yên tại đó và xóa các vùng xung quanh chúng Do đó,

ưu điểm khác là biến đổi sóng có thể tự động thực hiện loại bỏ các phần tử ngoạilai

Trang 27

Hình : Một ví dụ của vùng dữ liệu đặc trung 2-chiều

Hình : các vùng đặc trung đa năng của 10 a) mức 1; b) mức 2; c) mức 3

 Khả năng đa năng của biến đổi sóng có thể giúp nhận ra các cụm có mức thay đổi chính xác cao

Ví dụ, hình 10 đưa ra một mẫu vùng hai chiều đặc trưng, với mỗi điểm trong hình ảnh đại diện cho thuộc tính hoặc giá rtị của một đối tượng trong tập dữ liệu khôgn gian Hình 11 đưa ra kết quả biến đổi sóng tại các giải pháp khác nhau,

từ một mức mịn (mức 1) đến mức thô (scale3) Tại mỗi mức có 4 dải con đưa ra tại điểm trái cao hơn cung phần tư thứ nhất làm nổi bật các lân cận trung bình xung quanh mỗi điểm dữ liệu Dải sóng con tại góc phải trên góc phần tư thứ hai làm nổi bật các cung của dữ liệu Dải sóng con tại góc trái dưới góc phần tư thứ 3 làm nối bật các cung dọc, trong khi tại góc phải dưới làm nổi bật góc

Thuật toán phân cụm dựa trên sóng có thời gian là rất nhanh, với độ phức tạp tính toán là O(n), với n là số đối tượng trong CSDL Thuật toán thực hiện có thể dễ dang song song hóa

WaveCluster là thuật toán dựa trên lưới và mật độ Nó thích nghi với tất cả các yêu cầu của một thuật toán phân cụm tốt: nó có thể thực hiện tên các tập dữ liệu lớn một cách có hiệu quả, khám phá ra các cụm với dình dạng bất kỳ, loại bỏ các phần tử ngoại lai, và khôngn hạy cảm với đầu vào Trong nghiên cứu thực nghiệm, WaveCluster làm tốt hơn BIRCH, CLARANS và DBSCAN về cả hai tiêu chuẩn là tính hiệu quả và chất lượng của các cụm

Ngày đăng: 25/03/2015, 09:52

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w