Tải bản đầy đủ (.doc) (56 trang)

luận văn phân cụm dữ liệu trừ mờ và ứng dụng

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (825.11 KB, 56 trang )

LỜI CẢM ƠN

Lời đầu tiên, em xin gửi lời biết ơn sâu sắc đến PGS.TS Lê Bá Dũng, người đã tận
tình hướng dẫn, chỉ bảo, giúp đỡ em trong suốt quá trình làm luận văn.
Em cũng xin được bày tỏ lòng biết ơn tới các thầy đã tham gia giảng dạy và chia sẻ
những kinh nghiệm quý báu cho tập thể lớp nói chung và cá nhân em nói riêng.

Tôi xin gửi lời cảm ơn tới gia đình, bạn bè, đồng nghiệp đã luôn ủng hộ, động
viên và giúp đỡ để tôi có thể hoàn thành tốt luận văn.
Tôi cũng xin gửi lời cảm ơn tới Ban giám hiệu trường Đại học Khoa học, Ban
chủ nhiệm Khoa Toán-Tin đã tạo điều kiện thuận lợi cho tôi tham gia khóa học và
hoàn thành luận văn.
Một lần nữa, xin chân thành cảm ơn.
Thái Nguyên, tháng 09 năm 2012
Học viên
Trần Thị Yến

i


LỜI CAM ĐOAN

Tôi xin cam đoan luận văn là kết quả của sự tìm hiểu, nghiên cứu các tài liệu
một cách nghiêm túc dưới sự hướng dẫn của PGS. TS Lê Bá Dũng. Nội dung luận
văn được phát triển từ ý tưởng, sự sáng tạo của bản thân và kết quả có được hoàn
toàn trung thực.
Học viên

Trần Thị Yến

ii




MỤC LỤC
LỜI CẢM ƠN................................................................................................................i
LỜI CAM ĐOAN.........................................................................................................ii
MỤC LỤC...................................................................................................................iii
DANH MỤC CÁC TỪ VIẾT TẮT............................................................................iv
DANH MỤC CÁC BẢNG BIỂU, HÌNH ẢNH..........................................................v
MỞ ĐẦU......................................................................................................................1
Chương 1.......................................................................................................................2
TỔNG QUAN VỀ PHÂN CỤM DỮ LIỆU................................................................2
Chương 2.....................................................................................................................19
PHƯƠNG PHÁP PHÂN CỤM TRỪ MỜ................................................................19
Chương 3.....................................................................................................................31
ỨNG DỤNG PHƯƠNG PHÁP PHÂN CỤM TRỪ MỜ.........................................31
PHỤ LỤC...................................................................................................................46
KẾT LUẬN.................................................................................................................49
DANH MỤC CÔNG TRÌNH KHOA HỌC ĐÃ CÔNG BỐ....................................50
TÀI LIỆU THAM KHẢO..........................................................................................51

iii


DANH MỤC CÁC TỪ VIẾT TẮT

CURE

Clustering Using Representatives

DBSCAN


Density based Spatial Clutering of Application with Noise

DENCLUE

Clustering Based on Density Distribution Functions

EM

Expectation Maximization

FCM

Fuzzy C-Means

FSC

Fuzzy Subtractive Clustering

OPTICS

Ordering Points to Identify the Clustering Structure

SC

Subtractive Clustering

iv



DANH MỤC CÁC BẢNG BIỂU, HÌNH ẢNH

Hình 2.1: Hai nhóm dữ liệu của phân cụm trừ mờ
Hình 3.1: Biểu đồ dữ liệu vào và dữ liệu ra
Hình 3.2: Kết quả sau khi phân cụm
Hình 3.3: Hàm thành viên tương ứng với biến vào số ô tô sở hữu
Hình 3.4: Hàm thành viên tương ứng với biến vào số lượng việc làm
Hình 3.5: Hàm thành viên tương ứng với biến vào thu nhập trung bình
Hình 3.6: Ảnh ban đầu của thuật toán phân cụm trừ
Hình 3.7: Ảnh kết quả của thuật toán phân cụm trừ
Hình 3.8: Ảnh ban đầu của thuật toán phân cụm trừ mờ
Hình 3.9: Ảnh kết quả của thuật toán phân cụm trừ mờ
Hình 3.10: Ảnh đầu vào cho cả 2 thuật toán
Hình 3.11: Ảnh kết quả của thuật toán SC với 122 cụm
Hình 3.12: Ảnh kết quả của thuật toán FSC với 18 cụm

v


MỞ ĐẦU
Ngày nay, khai phá dữ liệu (Datamining) đã trở thành một trong những xu
hướng nghiên cứu phổ biến trong lĩnh vực học máy và công nghệ tri thức. Nhiều
thành tựu nghiên cứu của Datamining đã được áp dụng trong thực tế. Datamining có
nhiều hướng quan trọng và một trong các hướng đó là phân cụm dữ liệu (Data
Clustering). Phân cụm dữ liệu là quá trình phân chia một tập dữ liệu ban đầu thành
các cụm dữ liệu sao cho các phần tử trong một cụm "tương tự" (similar) với nhau và
các phần tử trong các cụm khác nhau sẽ "phi tương tự" (dissimilar) với nhau. Phân
cụm dữ liệu là một phương pháp học không giám sát.
Hiện nay, các phương pháp phân cụm đã và đang được phát triển và áp dụng
nhiều trong các lĩnh vực khác nhau, bao gồm: nhận dạng, phân tích dữ liệu, nghiên

cứu thị trường, xử lý ảnh,… Các thuật toán phân cụm cũng rất đa dạng như Kmeans, Pam, C-means, C-means mờ, thuật toán phân cụm trừ,… Để tăng tính ổn
định và chính xác của kết quả phân cụm, ngày càng có các tiếp cận mới. Một trong
những cách tiếp cận đang được nghiên cứu đó là ứng dụng lý thuyết mờ vào bài
toán phân cụm dữ liệu.
Luận văn này trình bày phân cụm dữ liệu, một cách tiếp cận mới về phân cụm
dữ liệu là thuật toán phân cụm trừ mờ và ứng dụng vào bài toán cụ thể.
Luận văn bao gồm các nội dung chính sau:
Chương 1: Tổng quan về phân cụm dữ liệu
Chương 2: Phương pháp phân cụm trừ mờ
Chương 3: Ứng dụng phương pháp phân cụm trừ mờ

1


Chương 1.

TỔNG QUAN VỀ PHÂN CỤM DỮ LIỆU
1.1. Khái niệm và mục tiêu của phân cụm dữ liệu
Phân cụm dữ liệu là một kỹ thuật trong khai phá dữ liệu, là quá trình phân chia
một tập dữ liệu ban đầu thành các cụm sao cho các phần tử trong một cụm “tương
tự” với nhau và các phần tử trong các cụm khác nhau sẽ “phi tương tự” với nhau. Số
các cụm dữ liệu được phân ở đây có thể được xác định trước theo kinh nghiệm hoặc
có thể được tự động xác định theo phương pháp phân cụm.
Trong học máy, phân cụm dữ liệu được xem là vấn đề học không có giám sát,
vì nó phải giải quyết vấn đề tìm một cấu trúc trong tập hợp dữ liệu chưa biết trước
các thông tin về cụm hay các thông tin về tập huấn luyện. Trong nhiều trường hợp,
nếu phân lớp được xem là vấn đề học có giám sát thì phân cụm dữ liệu là một bước
trong phân lớp dữ liệu, phân cụm dữ liệu sẽ khởi tạo các lớp cho phân lớp bằng
cách xác định các nhãn cho các nhóm dữ liệu.
Phân cụm có ý nghĩa rất quan trọng trong hoạt động của con người. Ngay từ

lúc bé, con người đã học cách làm thế nào để phân biệt giữa mèo và chó, giữa động
vật và thực vật và liên tục đưa vào sơ đồ phân loại trong tiềm thức của mình. Phân
cụm được sử dụng rộng rãi trong nhiều ứng dụng, bao gồm nhận dạng mẫu, phân
tích dữ liệu, xử lý ảnh, nghiên cứu thị trường... Với tư cách là một chức năng khai
phá dữ liệu, phân cụm có thể được sử dụng như một công cụ độc lập chuẩn để quan
sát đặc trưng của mỗi cụm thu được bên trong sự phân bố của dữ liệu và tập trung
vào một tập riêng biệt của các cụm để giúp cho việc phân tích đạt kết quả.
Một vấn đề thường gặp trong phân cụm là hầu hết các dữ liệu cần cho phân
cụm đều có chứa dữ liệu nhiễu do quá trình thu thập thiếu chính xác hoặc thiếu đầy
đủ, vì vậy cần phải xây dựng chiến lược cho bước tiền xử lý dữ liệu nhằm khắc
phục hoặc loại bỏ nhiễu trước khi chuyển sang giai đoạn phân tích cụm dữ liệu.
Nhiễu ở đây được hiểu là các đối tượng dữ liệu không chính xác, không tường minh

2


hoặc là các đối tượng dữ liệu khuyết thiếu thông tin về một số thuộc tính... Một
trong các kỹ thuật xử lý nhiễu phổ biến là việc thay thế giá trị các thuộc tính của đối
tượng nhiễu bằng giá trị thuộc tính tương ứng. Ngoài ra, dò tìm phần tử ngoại lai
cũng là một trong những hướng nghiên cứu quan trọng trong phân cụm, chức năng
của nó là xác định một nhóm nhỏ các đối tượng dữ liệu khác thường so với các dữ
liệu trong cơ sở dữ liệu, tức là các đối tượng dữ liệu không tuân theo các hành vi
hoặc mô hình dữ liệu nhằm tránh sự ảnh hưởng của chúng tới quá trình và kết quả
của phân cụm.
Tóm lại, phân cụm dữ liệu cần phải giải quyết các vần đề cơ bản như sau:
-

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

-


Xây dựng hàm tính độ tượng tự,

-

Xây dựng các tiêu chuẩn phân cụm,

-

Xây dựng mô hình cho cấu trúc cụm dữ liệu,

-

Xây dựng thuật toán phân cụm và xác lập các điều kiện khởi tạo,

-

Xây dựng các thủ tục biểu diễn và đánh giá kết quả phân cụm.

Theo các nghiên cứu cho thấy thì hiện nay chưa có một phương pháp phân
cụm tổng quát nào có thể giải quyết trọn vẹn cho tất cả các dạng cấu trúc dữ liệu.
Hơn nữa, các phương pháp phân cụm cần có cách thức biểu diễn cấu trúc của các
dữ liệu, với mỗi cách thức biểu diễn khác nhau sẽ có tương ứng một thuật toán phân
cụm phù hợp. Vì vậy phân cụm dữ liệu vẫn đang là một vấn đề khó và mở, vì phải
giải quyết nhiều vấn đề cơ bản một cách trọn vẹn và phù hợp với nhiều dạng dữ liệu
khác nhau, đặc biệt là đối với dữ liệu hỗn hợp đang ngày càng tăng trong các hệ
quản trị dữ liệu và đây cũng là một trong những thách thức lớn trong lĩnh vực khai
phá dữ liệu.
Mục tiêu của phân cụm là xác định được bản chất của các cụm dữ liệu trong
tập dữ liệu chưa có nhãn, theo đó cho phép đi sâu vào phân tích và nghiên cứu cho

từng cụm dữ liệu này nhằm khám phá và tìm kiếm các thông tin tiềm ẩn, hữu ích
phục vụ cho việc ra quyết định. Tuy nhiên, không có tiêu chí nào được xem là tốt

3


nhất để đánh giá hiệu quả của phân cụm, điều này phụ thuộc vào mục đích của phân
cụm, và đòi hỏi người sử dụng phải cung cấp tiêu chí này.
1.2. Các ứng dụng của phân cụm dữ liệu
Phân cụm dữ liệu được ứng dụng trong nhiều lĩnh vực như:
- Thương mại: Phân cụm dữ liệu có thể giúp các thương nhân tìm ra các nhóm
khách hàng quan trọng có đặc trưng tương đồng nhau và đặc tả họ từ các mẫu mua
bán trong cơ sở dữ liệu khách hàng.
- Sinh học: Phân cụm dữ liệu được sử dụng để xác định các loại sinh vật, phân
loại các gen với chức năng tương đồng và thu được các cấu trúc trong các mẫu.
- Quy hoạch đô thị: Nhận dạng các nhóm nhà theo kiểu và vị trí địa lý,... nhằm
cung cấp thông tin cho quy hoạch đô thị.
- Nghiên cứu trái đất: Phân cụm để theo dõi các tâm động đất nhằm cung cấp
thông tin cho nhận dạng các vùng nguy hiểm.
- Thư viện: Phân loại các cụm sách có nội dung và ý nghĩa tương đồng nhau để
cung cấp cho độc giả.
- Bảo hiểm: Nhận dạng nhóm tham gia bảo hiểm có chi phí bồi thường cao,
nhận dạng gian lận thương mại.
- Khai phá web: Có thể khám phá các nhóm tài liệu quan trọng, có nhiều ý
nghĩa trong môi trường Web. Các lớp tài liệu này trợ giúp cho việc khai phá tri thức
từ dữ liệu web,…
1.3. Các yêu cầu của phân cụm dữ liệu
Việc xây dựng và lựa chọn một thuật toán phân cụm là bước then chốt cho
việc giải quyết vấn đề phân cụm, sự lựa chọn này phụ thuộc vào đặc tính dữ liệu
cần phân cụm, mục đích của ứng dụng thực tế hoặc xác định độ ưu tiên giữa chất

lượng của các cụm hay tốc độ thực hiện thuật toán,...
Hầu hết các nghiên cứu và phát triển thuật toán phân cụm dữ liệu đều nhằm
thỏa mãn các yêu cầu cơ bản sau:

4


Có khả năng mở rộng: Nhiều thuật toán phân cụm làm việc tốt với những tập
dữ liệu nhỏ (chứa ít hơn 200 đối tượng), tuy nhiên một cơ sở dữ liệu lớn có thể chứa
tới hàng triệu đối tượng. Việc phân cụm trên một tập dữ liệu lớn có thể làm ảnh
hưởng tới kết quả. Vậy các thuật toán phân cụm dữ liệu có khả năng mở rộng cao là
cần thiết.
Khả năng thích nghi với các kiểu dữ liệu khác nhau: Thuật toán có thể áp
dụng hiệu quả cho việc phân cụm các tập dữ liệu với nhiều kiểu dữ liệu khác nhau
như dữ liệu kiểu số, kiểu nhị phân, dữ liệu định danh, hạng mục,... và thích nghi với
kiểu dữ liệu hỗn hợp.
Khám phá các cụm với hình dạng bất kỳ: Do hầu hết các cơ sở dữ liệu có
chứa nhiều cụm dữ liệu với các hình thù khác nhau như: hình lõm, hình cầu, hình
que,... Vì vậy, để khám phá được các cụm có tính tự nhiên thì các thuật toán phân
cụm cần phải có khả năng khám phá ra các cụm dữ liệu có hình thù bất kỳ.
Tối thiểu lượng tri thức cần cho xác định các tham số đầu vào: Do các giá trị
đầu vào thường ảnh hưởng rất lớn đến thuật toán phân cụm và rất phức tạp để xác
định các giá trị vào thích hợp đối với các cơ sở dữ liệu lớn.
Ít nhạy cảm với thứ tự của dữ liệu vào: Cùng một tập dữ liệu, khi đưa vào xử
lý cho thuật toán phân cụm dữ liệu với các thứ tự vào của các đối tượng dữ liệu ở
các lần thực hiện khác nhau thì không ảnh hưởng lớn đến kết quả phân cụm.
Khả năng thích nghi với dữ liệu nhiễu cao: Hầu hết các dữ liệu phân cụm
trong khai phá dữ liệu đều chứa đựng các dữ liệu lỗi, dữ liệu không đầy đủ, dữ liệu
rác. Thuật toán phân cụm không những hiệu quả đối với các dữ liệu nhiễu mà còn
tránh dẫn đến chất lượng phân cụm thấp do nhạy cảm với nhiễu.

Ít nhạy cảm với thứ tự của các tham số đầu vào: Nghĩa là giá trị của các tham
số đầu vào khác nhau ít gây ra các thay đổi lớn đối với kết quả phân cụm.
Thích nghi với dữ liệu đa chiều: Thuật toán có khả năng áp dụng hiệu quả cho
dữ liệu có số chiều khác nhau.
Dễ hiểu dễ cài đặt và khả thi: Người sử dụng có thể chờ đợi những kết quả
phân cụm dễ hiểu, dễ lý giải và dễ sử dụng. Nghĩa là, sự phân cụm có thể cần được

5


giải thích ý nghĩa và ứng dụng rõ ràng. Việc nghiên cứu cách để một ứng dụng đạt
được mục tiêu rất quan trọng có thể gây ảnh hưởng tới sự lựa chọn các phương
pháp phân cụm.
Với những yêu cầu đáng chú ý này, ta tìm hiểu về phân cụm diễn ra như
sau: Thứ nhất, tìm hiểu các kiểu dữ liệu khác và cách chúng có thể gây ảnh hưởng
tới các phương pháp phân cụm. Thứ hai, đưa ra một cách phân loại chúng trong các
phương pháp phân cụm. Sau đó, nghiên cứu chi tiết mỗi phương pháp phân cụm,
bao gồm các phương pháp phân hoạch, các phương pháp phân cấp, các phương
pháp dựa trên mật độ, các phương pháp dựa trên lưới và các phương pháp dựa trên
mô hình. Ta cũng khảo sát sự phân cụm trong không gian đa chiều và các biến thể
của các phương pháp khác.
1.4. Các kỹ thuật tiếp cận và một số thuật toán cơ bản trong phân cụm dữ liệu
Có nhiều thuật toán phân cụm, nhưng để đưa ra một sự phân loại rõ nét của
các phương pháp phân cụm là khó khăn bởi vì các loại này có thể chồng chéo lên
nhau, do đó một phương pháp có thể có những đặc tính của một số thuật toán khác
nhau. Các phương pháp phân cụm chính có thể được phân loại như sau:
1.4.1. Các phương pháp phân cụm phân hoạch - Partitioning Methods
Với một tập dữ liệu gồm n phần tử và k (k ≤ n) là số cụm được tạo thành. Một
thuật toán phân hoạch tổ chức các phần tử dữ liệu vào k phân vùng, mỗi phân vùng
thể hiện một cụm dữ liệu và thỏa mãn: mỗi cụm phải chứa ít nhất một phần tử dữ

liệu và mỗi phần tử dữ liệu chỉ thuộc vào một cụm.
Để đưa ra được k phân mảnh, một phương pháp phân mảnh tạo ra một phân
mảnh khởi tạo, sau đó sử dụng kỹ thuật lặp để cải thiện phân mảnh bằng cách di
chuyển các phần tử dữ liệu từ cụm này sang cụm khác. Tiêu chuẩn tổng quát của
quá trình phân mảnh tốt là các phần tử thuộc cùng một cụm thì “gần gũi” hoặc có
liên quan đến nhau, các phần tử khác cụm thì “xa nhau” hoặc rất khác nhau. Có
nhiều tiêu chuẩn khác nhau để đánh giá chất lượng của các phân mảnh.

6


Để đạt được tối ưu toàn cục trong phân cụm dựa trên phân hoạch yêu cầu phải
liệt kê đầy đủ tất cả các phân mảnh có thể có. Thay vào đó, hầu hết các ứng dụng
chấp nhận một trong các phương pháp heuristic phổ biến, như thuật toán K-means
mỗi cụm được đại diện bởi giá trị trung bình của các phần tử trong cụm, thuật toán
K-medoids mỗi cụm được đại diện bởi một phần tử nằm gần tâm cụm.
Các phương pháp phân cụm heuristic hiệu quả với các cụm hình cầu với tập
dữ liệu vừa và nhỏ. Để tìm ra các cụm có hình dạng phức tạp và tập dữ liệu lớn thì
các phương pháp này cần được mở rộng.
Các phương pháp phân cụm dựa trên phân hoạch được biết tới như K-means,
K-medoids, PAM, CLARA, CLARANS,... Trong đó, K-means và K-medoids được
dùng phổ biến hơn cả.
Thuật toán K-means sử dụng khoảng cách giữa các phần tử dữ liệu tới các tâm
cụm để phân cụm. Trong thuật toán này, chúng ta phải chọn một giá trị k là số cụm
mong muốn, và chọn ngẫu nhiên k phần tử dữ liệu làm k tâm cụm ban đầu. Sau đó
tính khoảng cách từ các phần tử dữ liệu đến k tâm cụm. Kết nạp các phần tử dữ liệu
vào cụm có tâm cụm gần nhất. Xác định tâm cụm mới cho các cụm, với tâm cụm
mới là giá trị trung bình của các phần tử trong cụm. Quá trình này lặp lại cho đến
khi các cụm không thay đổi. Thuật toán này thích hợp với các cụm dữ liệu có dạng
hình cầu. Nhược điểm của nó là phải xác định trước số lượng cụm, khó xử lý được

nhiễu và phần tử ngoại lai.
Thuật toán K-medoids có thể khắc phục được nhiễu hoặc phần tử ngoại lai
bằng cách chọn phần tử gần tâm cụm nhất làm đại diện cho cụm, gọi là phần tử
medoid. Với k là số lượng cụm mong muốn, chọn k phần tử bất kỳ làm các medoid
ban đầu. Gán mỗi phần tử còn lại vào cụm có medoid gần nhất. Thay thế các
medoid hiện tại bằng các medoid mới sao cho chất lượng phân cụm được cải thiện.
Chất lượng phân cụm được đánh giá bởi hàm tính độ phi tương tự giữa một phần tử
vào medoid của cụm chứa nó. Quá trình này lặp lại cho đến khi hội tụ. Thuật toán
K-medoids hiệu quả hơn K-means khi xử lý nhiễu hoặc phần tử ngoại lai, nhưng độ
phức tạp tính toán lại lớn hơn.

7


* Thuật toán K-means:
Thuật toán phân cụm K-means do MacQueen đề xuất năm 1967, là thuật toán
phân cụm trong đó các cụm được định nghĩa bởi trọng tâm của các phần tử. Phương
pháp này dựa trên độ đo khoảng cách tới giá trị trung bình của các đối tượng dữ liệu
trong cụm, nó được xem như là trung tâm của cụm. Như vậy, nó cần khởi tạo một
tập trung tâm các trung tâm cụm ban đầu, và thông qua đó nó lặp lại các bước gồm
gán mỗi đối tượng tới cụm mà có tâm cụm gần nhất, và tính toán tại tâm của mỗi
cụm trên cơ sở các đối tượng thuộc cụm. Quá trình lặp này dừng khi các tâm hội tụ.
Trong thuật toán K-means, chọn một giá trị k là số cụm cần xác định và sau đó
chọn ngẫu nhiên k đối tượng làm tâm cụm khởi tạo. Tính toán khoảng cách giữa đối
tượng dữ liệu và mỗi tâm cụm để tìm kiếm phần tử nào là tương tự (khoảng cách
gần nhất) và thêm vào cụm đó. Tính lại tâm cụm cho mỗi cụm (giá trị trung bình
của các đối tượng dữ liệu trong cụm) và lặp lại quá trình cho đến khi mỗi các đối
tượng dữ liệu là một bộ phận của cụm nào đó và không đổi.
Mục đích của thuật toán K-means là sinh k cụm dữ liệu {C1, C2,…,Ck} từ một
tập dữ liệu ban đầu chứa n đối tượng trong không gian d chiều X i ={Xi1, X i2 ,…,

k

X in }, i = 1, n , sao cho hàm tiêu chuẩn: E = ∑

i =1

∑ x∈Ci D 2 ( x − mi )

đạt giá trị tối

thiểu. Trong đó: mi là trọng tâm của cụm Ci, D là khoảng cách giữa hai đối tượng.
Trọng tâm của một cụm là một vectơ, trong đó giá trị của mỗi phần tử của nó
là trung bình cộng của các thành phần tương ứng của các đối tượng vectơ dữ liệu
trong cụm đang xét. Tham số đầu vào của thuật toán là số cụm k, và tham số đầu ra
của thuật toán là các trọng tâm của cụm dữ liệu. Độ đo khoảng cách D giữa các đối
tượng dữ liệu thường được sử dụng là khoảng cách Euclide vì đây là mô hình
khoảng cách mà dễ lấy đạo hàm và xác định các cực trị tối thiểu. Hàm tiêu chuẩn và
độ đo khoảng cách có thể được xác định cụ thể hơn tùy vào ứng dụng hoặc quan
điểm của người dùng.
Thuật toán K-means được trình bày như sau:

8


Input: Tập dữ liệu S và số cụm mong muốn k.
Output: Tập các cụm Ci (1 ≤ i ≤ k) và hàm tiêu chẩn E đạt giá trị tối thiểu.
Các bước thực hiện:
Bước 1: Khởi tạo
Chọn k trọng tâm {mj} (1 ≤ j ≤ k) ban đầu trong không gian Rd (d là
số chiều của dữ liệu). Việc lựa chọn này có thể là ngẫu nhiên hoặc theo kinh

nghiệm.
Bước 2: Tính toán khoảng cách
Đối với một điểm Xi (1≤ i ≤ n), tính toán khoảng cách của nó tới mỗi trọng
tâm mj (1 ≤ j ≤ k ). Sau đó tìm trọng tâm gần nhất đối với mỗi đối tượng
Bước 3: Cập nhật lại trọng tâm
Đối với mỗi 1 ≤ j ≤ k, cập nhật trọng tâm cụm mj bằng cách xác định
trung bình cộng các vectơ đối tượng dữ liệu.
Bước 4: Điều kiện dừng
Lặp các bước 2 và 3 cho đến khi các trọng tâm của cụm không thay đổi.
1.4.2. Phương pháp phân cụm phân cấp - Hierarchical Methods
Một phương pháp phân cụm phân cấp hoạt động bằng cách nhóm các đối
tượng dữ liệu vào một cây của các cụm. Phương pháp phân cụm phân cấp có thể
được phân loại là hợp nhất hoặc chia tách, tùy thuộc vào việc phân ly có thứ bậc
được hình thành dựa trên kiểu bottom-up (hòa trộn) hay top-down (phân chia). Hiệu
quả của một phương pháp phân cụm phân cấp thuần túy bỏ qua sự không có khả
năng để điều chỉnh một lần một quyết định hợp nhất hoặc chia tách đã được thực
hiện. Nghĩa là, nếu một quyết định hợp nhất hoặc chia tách cụ thể đã được thực
hiện, sau đó đẫn tới một lựa chọn kém thì phương pháp này không thể quay trở lại
và chỉnh sửa nó. Các nghiên cứu gần đây đã nhấn mạnh sự tích hợp của sự hợp nhất
phân cấp với các phương pháp lặp di dời.
Có hai loại phương pháp phân cụm phân cấp:
Phân cụm phân cấp hợp nhất: Đây là chiến lược từ dưới lên bắt đầu bằng cách
đặt mỗi đối tượng trong một cụm riêng của mình, sau đó sát nhập các cụm nguyên
9


tử thành các cụm lớn hơn và lớn hơn, cho đến khi tất cả các đối tượng trong một
cụm duy nhất hoặc cho đến khi các điều kiện kết thúc phân cụm được thỏa mãn.
Hầu hết các phương pháp phân cụm phân cấp thuộc loại này. Chúng chỉ khác nhau
trong định nghĩa về sự tương tự của các phần tử trong cụm.

Phân cụm phân cấp chia tách: Đây là chiến lược từ trên xuống, đảo ngược của
phân cụm phân cấp hợp nhất bằng cách bắt đầu với tất cả các đối tượng trong một
cụm. Sau đó chia nhỏ cụm thành từng phần nhỏ hơn và nhỏ hơn, cho đến khi mỗi
đối tượng hình thành một cụm riêng của mình hoặc cho đến khi các điều kiện thúc
được thỏa mãn, chẳng hạn như một số mong muốn về các cụm đạt được, hoặc
đường kính của mỗi cụm trong một ngưỡng nhất định.
Một số thuật toán phân cụm phân cấp: Thuật toán CURE (Clustering Using
REpresentatives) là thuật toán sử dụng chiến lược bottom-up, Thuật toán BIRCH,
Thuật toán AGNES, Thuật toán DIANA, Thuật toán ROCK, Thuật toán
CHAMELEON.
* Thuật toán CURE:
Thuật toán CURE (Clustering Using REpresentatives) là thuật toán sử dụng
chiến lược Bottom up của kỹ thuật phân cụm phân cấp. Hầu hết các thuật toán thực
hiện phân cụm với các cụm hình cầu và kích thước tương tự, như vậy là không hiệu
quả khi xuất hiện các phần tử ngoại lai. Thuật toán CURE khắc phục được vấn đề
này và tốt hơn với các phân tử ngoại lai. Thuật toán này định nghĩa một số cố định
các điểm đại diện nằm rải rác trong toàn bộ không gian dữ liệu và được chọn để mô
tả các cụm được hình thành. Các điểm này được tạo ra bởi trước hết lựa chọn các
đối tượng nằm rải rác cho cụm và sau đó “co lại” hoặc di chuyển chúng về trung
tâm cụm bằng nhân tố co cụm. Quá trình này được lặp lại và như vậy trong quá
trình này, có thể đo tỉ lệ gia tăng của cụm. Tại mỗi bước của thuật toán, hai cụm có
cặp các điểm đại diện gần nhau (mỗi điểm trong cặp thuộc về mỗi cụm khác nhau)
được hoà nhập.
Như vậy, có nhiều hơn một điểm đại diện mỗi cụm cho phép CURE khám phá
được các cụm có hình dạng không phải hình cầu. Việc co lại các cụm có tác dụng

10


làm giảm tác động của các phần tử ngoại lai. Như vậy, thuật toán này có khả năng

xử lý tốt trong các trường hợp có các phân tử ngoại lai và làm cho nó hiệu quả với
những hình dạng không phải là hình cầu và kích thước độ rộng biến đổi. Hơn nữa,
nó tỉ lệ tốt với cơ sở dữ liệu lớn mà không làm giảm chất lượng phân cụm.
Để xử lý được các cơ sở dữ liệu lớn, CURE sử dụng mẫu ngẫu nhiên và phân
hoạch, một mẫu là được xác định ngẫu nhiên trước khi được phân hoạch, và sau đó
tiến hành phân cụm trên mỗi phân hoạch, như vậy trên mỗi phân hoạch là từng phần
đã được phân cụm, quá trình này lặp lại cho đến khi ta thu được phân hoạch đủ tốt.
Các cụm thu được lại được phân cụm lần thứ hai để thu được các cụm con mong
muốn, nhưng mẫu ngẫu nhiên không nhất thiết đưa ra một mô tả tốt cho toàn bộ tập
dữ liệu.
CURE là thuật toán tin cậy trong việc khám phá ra các cụm với hình dạng bất
kỳ và có thể áp dụng tốt đối với dữ liệu có phần tử ngoại lai, và trên các tập dữ liệu
hai chiều. Tuy nhiên, nó lại rất nhạy cảm với các tham số như số các đối tượng đại
diện, tỉ lệ của các phần tử đại diện.
Thuật toán CURE được thực hiện qua các bước cơ bản như sau:
- Chọn một mẫu ngẫu nhiên từ tập dữ liệu ban đầu.
- Phân hoạch mẫu này thành nhiều nhóm dữ liệu có kích thước bằng nhau: Ý
tưởng chính ở đây là phân hoạch mẫu thành p nhóm dữ liệu bằng nhau, kích thước
của mỗi phân hoạch là n’/p (n’ là kích thước của mẫu).
- Phân cụm các điểm của mỗi nhóm: Thực hiện phân cụm dữ liệu cho các
nhóm cho đến khi được phân thành n’/(pq) cụm (với q > 1).
- Loại bỏ các phân tử ngoại lai: Trước hết, khi các cụm được hình thành cho
đến khi số các cụm giảm xuống một phần so với số các cụm ban đầu. Sau đó, trong
trường hợp các phần tử ngoại lai được lấy mẫu cùng với quá trình pha khởi tạo mẫu
dữ liệu, thuật toán sẽ tự động loại bỏ các nhóm nhỏ.
- Phân cụm các cụm không gian: Các đối tượng đại diện cho các cụm di
chuyển về hướng trung tâm cụm, nghĩa là chúng được thay thế bởi các đối tượng
gần trung tâm hơn.

11



- Đánh dấu dữ liệu với các nhãn tương ứng.
1.4.3. Phương pháp phân cụm dựa trên mật độ - Density-Based Methods
Để khám phá ra các cụm với hình dạng tùy ý, phương pháp phân cụm dựa trên
mật độ đã được phát triển. Những cụm đặc trưng này như các vùng dày đặc của các
đối tượng trong không gian dữ liệu được phân cách bởi các vùng mật độ thấp (đại
diện cho nhiễu).
Các thuật toán phân cụm dựa trên mật độ:
- DBSCAN (Density based Spatial Clutering of Application with Noise) thực
hiện chia các cụm sao cho mật độ của các đối tượng dữ liệu trong từng cụm lớn hơn
một ngưỡng đặt ra.
- OPTICS (Ordering Points to Identify the Clustering Structure) mở rộng thuật
toán DBSCAN, đưa ra một trật tự cụm thu được từ một vùng rộng các thiết lập
tham số.
- DENCLUE (Clustering Based on Density Distribution Functions) là phương
pháp phân cụm dựa trên một tập hợp các hàm phân bố mật độ.
* Thuật toán DBSCAN:
DBSCAN (Density based Spatial Clutering of Application with Noise) phân
cụm dựa trên sự quan sát thực tế thấy rằng, mật độ của những điểm trong cùng một
cụm thì lớn hơn rất nhiều so với mật độ của những điểm không thuộc cụm đó. Từ
quan sát đó, DBSCAN thực hiện chia các cụm sao cho mật độ của các đối tượng
dữ liệu trong từng cụm lớn hơn một ngưỡng đặt ra.
Thuật toán DBSCAN yêu cầu hai tham số là Eps và minpts từ người dùng.
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.
Một số khái niệm sử dụng trong DBSCAN:
- 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 NEps(p) được xác định như sau: NEps (p) = {q ∈ D | dis(p, q) ≤
Eps}


12


- 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à minpts điểm.
- q được gọi là đến được theo mật độ trực tiếp (directly density reachble) nếu
p là điểm nhân và q ∈ Neighbor(p, Eps).
- q được gọi là đến được theo mật độ (density reachble) từ p nếu có 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.
- Một điểm p gọi là nối mật độ với q nếu có một điểm 0 mà cả p và q đều là
đến được theo mật độ từ 0.
- 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
thoả mãn hai điều kiện:
∀p, q ∈ D, nếu p ∈ C và q có thể đến được từ p theo Eps và Minpts thì q ∈
C.
∀p, q ∈ C, p liên thông theo mật độ với q theo Eps và Minpts.
- Dữ liệu nhiễu (noise): Một điểm dữ liệu nếu không phụ thuộc vào cụm nào
thì gọi là nhiễu: nhiễu = {p | ∀i = 1…k, p ∉ ci}.
Để tìm ra các cụm, DBSCAN lần lượt duyệt lại mọi đối tượng thuộc cơ sở dữ
liệu và mở rộng đến tất cả những điểm có cùng mật độ có thể đi đến được từ p với
hai tham số Eps và minpts. Nếu đối tượng dữ liệu p là đối tượng dữ liệu nhân thì tập
các điểm đến được mật độ từ p sẽ tạo ra một cụm. Trong trường hợp ngược lại,
duyệt đến đối tượng dữ liệu kế tiếp trong cơ sở dữ liệu cho đến khi tất cả các đối
tượng dữ liệu đã được duyệt qua.
Eps và Minpts được xác định trước bởi người dùng. Minpts thường được đặt
bằng 2n với n là số đối tượng trong không gian dữ liệu. Eps được xác định bởi người
sử dụng trong từng ứng dụng cụ thể. Việc lựa chọn giá trị Eps có thể được hỗ trợ
bởi đồ thị 2n – dist (đồ thị biểu diễn hàm ánh xạ mỗi một điểm p đến khoảng cách
của điểm lân cận thứ 2n của điểm p)

DBSCAN được thiết kế để xử lý với dữ liệu có nhiễu và hiệu quả trong việc
loại trừ ngoại lai. Mặc dù DBSCAN có thể tìm ra được cụm với hình thù bất kỳ
nhưng DBSCAN không thể xác định được cụm với hình dạng lồng nhau. Một điểm
13


yếu của DBSCAN là DBSCAN yêu cầu hai tham biến từ người sử dụng là Eps và
Minpts được xác định cố định trên toàn bộ cơ sở dữ liệu nhưng Eps thì được xác
định lại sau mỗi lần chạy của DBSCAN.
DBSCAN có thể áp dụng với dữ liệu lớn và thứ tự của dữ liệu đầu vào không
ảnh hưởng tới kết quả phân cụm. Trong thực tế, thời gian để tính toán và dự đoán
giá trị Eps là khá lớn. DBSCAN không xử lý được với cơ sở dữ liệu nhiều nhiễu.
1.4.4. Phương pháp phân cụm dựa trên lưới - Grid-Based Methods
Các phương pháp tiếp cận phân nhóm dựa trên lưới sử dụng một cấu trúc dữ
liệu lưới đa phân giải. Lượng tử hóa không gian đối tượng vào một số hữu hạn của
các ô, hình thành nên một cấu trúc lưới mà trên đó tất cả các thao tác cho phân cụm
được thực hiện. Ưu điểm chính của phương pháp này là thời gian xử lý nhanh, mà
thường độc lập với số lượng đối tượng dữ liệu, nhưng phụ thuộc vào số lượng các ô
trong mỗi chiều của không gian lượng tử hóa.
Một số ví dụ điển hình của phương pháp tiếp cận dựa trên lưới bao gồm Sting,
khám phá các thông tin thống kê được lưu trữ trong các ô lưới; WaveCluster, phân
cụm bằng cách sử dụng một phương pháp biến đổi biến thiên trong một thời gian
nhất định; CLIQUE, đại diện cho một cách tiếp cận dựa trên mật độ và lưới trong
không gian dữ liệu có số chiều lớn.
* Thuật toán STING:
STING (STatistical Information Grid) là kỹ thuật phân cụm đa phân giải dựa
trên lưới, trong đó vùng không gian dữ liệu được phân rã thành số hữu hạn các ô
chữ nhật, điều này có nghĩa là các ô lưới được hình thành từ các ô lưới con để thực
hiện phân cụm. Có nhiều mức của các ô chữ nhật tương ứng với các mức khác nhau
của phân giải trong cấu trúc lưới, và các ô này hình thành cấu trúc phân cấp: mỗi ô

ở mức cao được phân hoạch thành số các ô nhỏ ở mức thấp hơn tiếp theo trong cấu
trúc phân cấp. Các điểm dữ liệu được nạp từ cơ sử dữ liệu, giá trị của các tham số
thống kê gồm: số trung bình - mean, số tối đa - max, số tối thiểu - min, số đếm count, độ lệch chuẩn - s, …
Thuật toán STING gồm các bước sau:
14


Bước 1: Xác định tầng để bắt đầu.
Bước 2: Với mỗi cái của tầng này, tính toán khoảng tin cậy (hoặc ước lượng
khoảng) của xác suất mà ô này liên quan tới truy vấn.
Bước 3: Từ khoảng tin cậy của tính toán trên, gán nhãn cho là có liên quan
hoặc không liên quan.
Bước 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.
Bước 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 ô mà hình thành các ô liên quan của lớp có mức cao hơn.
Bước 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.
Bước 7: Truy lục dữ liệu vào trong các ô liên quan và thực hiện xử lý. Trả lại
kết quả thực hiện yêu cầu của truy vấn. Chuyển sang bước 9.
Bước 8: Tìm thấy các miền có các ô liên quan. Trả lại miền phù hợp với yêu
cầu truy vấn. Chuyển xang bước 9.
Bước 9: Dừng.
1.4.5. Phương pháp phân cụm dựa trên mô hình - Model-Based Clustering
Methods
Phương pháp phân cụm dựa trên mô hình cố gắng để tối ưu hóa sự phù hợp
giữa dữ liệu cho trước và một số mô hình toán học. Những phương pháp này
thường được dựa trên giả định rằng các dữ liệu được tạo ra bởi sự hòa nhập của các
phân bố xác suất cơ bản.
Các thuật toán phân cụm dữ liệu dựa trên mô hình:

- Thuật toán EM (Expectation Maximization) gán các đối tượng cho các cụm
đã cho theo phân phối xác suất thành phần của đối tượng đó, thường sử dụng phân
phối xác suất Gaussian.
- Phân cụm dựa trên khái niệm (Conceptual Clustering) là một dạng của phân
cụm trong học máy (machine learning) cung cấp một chiến lược phân lớp trên tất cả
các đối tượng. Phân cụm thông thường chủ yếu xác định các nhóm đối tượng tương
15


tự, nhưng phân cụm dựa trên khái niệm tìm kiếm các mô tả đặc trưng cho từng
nhóm, mỗi nhóm đại diện cho một khái niệm hoặc lớp. Do đó, phân cụm dựa trên
khái niệm gồm hai bước: thực hiện phân cụm và sau đó mô tả đặc tính. Ở đây, chất
lượng phân cụm là sự kết hợp chặt chẽ các yếu tố như tính tổng quát và sự đơn giản
của các mô tả khái niệm được đề xuất. Các thuật toán cụ thể như: COBWEB,
CLASSIT,…
- Tiếp cận mạng nơron (Neural Network Approach): một mạng nơron là tập
hợp các đơn vị vào/ ra được kết nối với nhau, mỗi kết nối có một trọng số. Các
mạng nơron có một số đặc tính riêng biệt làm cho nó trở thành phương pháp phổ
biến cho phân cụm dữ liệu. Thứ nhất, các mạng nơron là những kiến trúc xử lý song
song và phân tán. Thứ hai, các mạng nơron học bằng cách điều chỉnh trọng số kết
nối của chúng sao cho phù hợp nhất với dữ liệu. Thứ ba, các mạng nơron xử lý
vector số và yêu cầu mô hình đối tượng được đại diện bởi các đặc tính định lượng.
* Thuật toán EM:
Thuật toán EM (Expectation Maximization) được nghiên cứu từ năm 1958 bởi
Hartley và được nghiên cứu đầy đủ bởi Dempster, Laird và Rubin công bố năm
1977. Thuật toán này nhằm tìm ra sự ước lượng về khả năng lớn nhất của các tham
số trong mô hình xác suất (Các mô hình phụ thuộc vào các biến tiềm ẩn chưa được
quan sát), nó đượ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 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 logarit khả năng của đối tượng 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 lên chi phí tính 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ể huỷ bỏ. Trong các cải tiến này, các đối tượng bị huỷ
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ị

16


loại bỏ và thuộc về một cụm quá lớn trong bộ nhớ và chúng sẽ được lưu lại trong
các trường hợp còn lại.
Thuật toán được chia thành 2 bước xử lý: Đánh giá dữ liệu chưa được gán
nhãn (bước E) và đánh giá các tham số của mô hình, khả năng lớn nhất có thể xảy
ra (bước M).

1
2

E:

µ→a=

M:

a, b → µ =

1


2

b=

h,

µ
1

2

h

a+b
6(b + c + d )

Các bước của thuật toán:
- Khởi tạo tham số:
0

‫ { = ג‬μ1(0), μ2(0),…, μk(0),p1(0),p2(0),….pk(0) }

- Bước E:
P (ωi xk , λt ) =

P ( x k ω j , λt ) P (ω j , λt )
P ( xk λt )

=


P ( x k ωi , λ(i t ) ,σ 2 ) Pi ( t )



k

P ( x k ω j , λ(jt ) ,σ 2 ) Pj(t )

- Bước M:
µ i(t +1) =

∑ P(ω x , λ ) x
∑ P(ω x , λ )
i

k

i

k

Pi ( t +1) =



k

k


t

k

k

t

P (ωi xk , λt )
R

- Lặp lại bước 2 và 3 cho đến khi đạt được kết quả.
1.4.6 Phương pháp phân cụm có dữ liệu ràng buộc
Sự phát triển của phân cụm dữ liệu không gian trên cơ sở dữ liệu lớn đã cung
cấp nhiều công cụ tiện lợi cho phân tích thông tin địa lý, tuy nhiên hầu hết các thuật
toán này cung cấp rất ít cách thức cho người dùng để xác định các ràng buộc trong
thế giới thực cần phải được thoả mãn trong quá trình phân cụm. Để phân cụm dữ

17


liệu không gian hiệu quả hơn, các nghiên cứu bổ sung cần được thực hiện để cung
cấp cho người dùng khả năng kết hợp các ràng buộc trong thuật toán phân cụm.
Một số nhánh nghiên cứu được phát triển trên cơ sở các phương pháp phân
cụm có dữ liệu ràng buộc như sau:
- Phân cụm thống kê: Dựa trên các khái niệm phân tích hệ thống, nhánh
nghiên cứu này sử dụng các độ đo tương tự để phân hoạch các đối tượng, nhưng chỉ
áp dụng cho các dữ liệu có thuộc tính số.
- Phân cụm khái niệm: Các kỹ thuật phân cụm được phát triển áp dụng cho dữ
liệu hạng mục, chúng phân cụm các đối tượng theo các khái niệm mà chúng xử lý.

- Phân cụm mờ: Thông thường mỗi phương pháp phân cụm dữ liệu phân một
tập dữ liệu ban đầu thành các cụm dữ liệu có tính tự nhiên và mỗi đối tượng dữ liệu
chỉ thuộc về một cụm dữ liệu, phương pháp này chỉ phù hợp với việc khám phá ra
các cụm có mật độ cao và rời nhau. Tuy nhiên, trong thực tế, các cụm dữ liệu lại có
thể chồng lên nhau (một số các đối tượng dữ liệu thuộc về nhiều các cụm khác
nhau), người ta đã áp dụng lý thuyết về tập mờ trong phân cụm dữ liệu để giải quyết
cho trường hợp này, cách thức kết hợp này được gọi là phân cụm mờ. Trong
phương pháp phân cụm mờ, độ phụ thuộc của đối tượng dữ liệu xk vào cụm thứ i (
u ik ) có giá trị thuộc đoạn [0, 1]. Ý tưởng trên đã được giới thiệu bởi Ruspini (1969)

và được Dunn áp dụng năm 1973 nhằm xây dựng một phương pháp phân cụm mờ
dựa trên tối thiểu hóa hàm tiêu chuẩn. Bezdek (1982) đã tổng quát hóa phương pháp
này và xây dựng thành thuật toán phân cụm mờ c-means (FCM) có sử dụng trọng số
mũ. Sau đó nhiều phương pháp được đề xuất để cải tiến thuật toán FCM như: Phân
cụm dựa trên xác suất (keller, 1993), phân cụm nhiễu mờ (Dave, 1991), phân cụm
dựa trên toán tử Lp Norm (kersten, 1999), thuật toán ε -Insensitive Fuzzy c-means.
Một cách tiếp cận khác của phương pháp phân cụm mờ có khả năng xác định số
lượng cụm và các tâm cụm gồm: giải thuật Mountain, thuật toán phân cụm trừ và
phân cụm trừ mờ.

18


Chương 2.

PHƯƠNG PHÁP PHÂN CỤM TRỪ MỜ
(Fuzzy Substractive Clustering)
2.1. Phân cụm mờ và thuật toán phân cụm mờ
2.1.1. Tổng quan về phân cụm mờ
Trong cuộc sống, chúng ta đã gặp rất nhiều ứng dụng của bài toán phân cụm.

Chẳng hạn như trong ngành bưu điện, hàng ngày bưu điện phải phân loại thư theo
mã nước, trong mã nước lại phân loại theo mã tỉnh/ thành phố, sau đó khi thư về
đến bưu điện tỉnh thì bưu điện tỉnh lại phân loại thư theo quận/ huyện để gửi đi, đến
bưu điện quận/ huyện lại phân loại thư theo xã/ phường để gửi thư. Đó chính là một
ứng dụng của bài toán phân cụm rõ.
Ta có thể phát biểu bài toán phân cụm rõ như sau: Cho tập dữ liệu mẫu X, ta
kiểm tra các điểm dữ liệu xem nó giống với đặc điểm của nhóm nào nhất thì ta gán
điểm dữ liệu đó vào trong nhóm đó.
Nhưng trong thực tế không phải lúc nào bài toán phân cụm rõ cũng áp dụng
được. Chẳng hạn, ta có phép phân loại sau: Những người đi xe máy xịn thì thuộc
nhóm người giàu, những người đi xe máy thường thuộc nhóm người bình dân. Vậy
người nghèo mà đi xe máy xịn thì chúng ta xếp người đó vào nhóm nào? Vì vậy,
chúng ta cần đưa vào khái niệm bài toán phân cụm mờ.
Trong các phương pháp phân cụm đã giới thiệu trong chương trước, mỗi
phương pháp phân cụm phân hạch một tập dữ liệu ban đầu thành các cụm dữ liệu có
tính tự nhiên và mỗi đối tượng dữ liệu chỉ thuộc về một cụm dữ liệu, phương pháp
này chỉ phù hợp với việc khám phá ra các cụm có mật độ cao và rời nhau, với
đường biên giữa các cụm được xác định tốt. Tuy nhiên, trong thực tế, đường biên
giữa các cụm có thể mờ, các cụm có thể chồng lên nhau, nghĩa là một số các đối
tượng dữ liệu thuộc về nhiều các cụm khác nhau, do đó mô hình này không mô tả
được dữ liệu thực. Vì vậy người ta đã áp dụng lý thuyết về tập mờ trong phân cụm
19


dữ liệu để giải quyết cho trường hợp này. Cách thức kết hợp này được gọi là phân
cụm mờ.
Phân cụm mờ là phương pháp phân cụm dữ liệu mà cho phép mỗi điểm dữ
liệu thuộc về hai hoặc nhiều cụm thông qua bậc thành viên. Ruspini (1969) giới
thiệu khái niệm phân hoạch mờ để mô tả cấu trúc của tập dữ liệu và đề xuất một
thuật toán để tính toán tối ưu phân hạch mờ. Dunn (1973) mở rộng phương pháp

phân cụm và đã phát triển thuật toán phân cụm mờ. Ý tưởng của thuật toán là xây
dựng một phương pháp phân cụm mờ dựa trên tối thiểu hóa hàm mục tiêu. Bezdek
(1981) cải tiến và tổng quát hóa hàm mục tiêu mờ bằng cách đưa ra trọng số mũ để
xây dựng thuật toán phân cụm mờ và được chứng minh độ hội tụ của các thuật toán
là cực tiểu cục bộ.
Các thuật toán trong phân cụm mờ:
- Thuật toán C-means mờ là thuật toán phân cụm mờ tương ứng của thuật toán
K-means, hai thuật toán này cùng sử dụng chung một chiến lược phân cụm dữ liệu.
Thuật toán C-means mờ hay còn gọi tắt là thuật toán FCM (Fuzzy C-means) đã
được áp dụng thành công trong giải quyết một số bài toán lớn về phân cụm dữ liệu
như nhận dạng mẫu (nhận dạng vân tay, ảnh), xử lý ảnh (phân tách các cụm ảnh
màu, cụm màu), y học (phân loại bệnh nhân, phân loại triệu chứng),… Tuy nhiên,
nhược điểm lớn nhất của thuật toán FCM là tập dữ liệu lớn, tập dữ liệu nhiều chiều,
nhạy cảm với các nhiễu và phần tử ngoại lai trong dữ liệu, nghĩa là các trung tâm
cụm có thể nằm xa so với trung tâm thực của cụm.
- Đã có nhiều các phương pháp đề xuất để cải tiến cho nhược điểm trên của
thuật toán FCM bao gồm: Phân cụm dựa trên xác suất (keller, 1993), phân cụm
nhiễu mờ (Dave, 1991), phân cụm dựa trên toán tử LP Norm (Kerten, 1999) và
thuật toán ε-Insensitive Fuzzy C-means (εFCM) và thuật toán FCM cải tiến.
- Với thuật toán FCM, số lượng cụm phải được khởi tạo trước. Một hướng tiếp
cận khác có thể tự xác định được số lượng cụm và các tâm cụm là giải thuật
Mountain. Cải tiến của giải thuật Mountain được đưa ra là thuật toán phân cụm trừ
và phân cụm trừ mờ.

20


×