You are on page 1of 100

ĐẠI HỌC THÁI NGUYÊN

KHOA CÔNG NGHỆ THÔNG TIN




Nguyễn Trung Sơn

PHƢƠNG PHÁP PHÂN CỤM VÀ ỨNG DỤNG

Chuyên ngành : KHOA HỌC MÁY TÍNH


Mã số : 60.48.01

LUẬN VĂN THẠC SỸ KHOA HỌC MÁY TÍNH

NGƯỜI HƯỚNG DẪN KHOA HỌC


1. PGS. TS VŨ ĐỨC THI

Thái Nguyên – 2009

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
ĐẠI HỌC THÁI NGUYÊN
KHOA CÔNG NGHỆ THÔNG TIN


Nguyễn Trung Sơn

PHƢƠNG PHÁP PHÂN CỤM VÀ ỨNG DỤNG

Chuyên ngành : KHOA HỌC MÁY TÍNH


Mã số : 60.48.01

LUẬN VĂN THẠC SỸ KHOA HỌC MÁY TÍNH

NGƯỜI HƯỚNG DẪN KHOA HỌC


1. PGS. TS VŨ ĐỨC THI

Thái Nguyên – 2009

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
-2-

MỤC LỤC
TRANG
LỜI CẢM ƠN 5
LỜI MỞ ĐẦU 6
CHƢƠNG I : TỔNG QUAN THUYẾT VỀ PHÂN CỤM DỮ LIỆU 7
1. Phân cụm dữ liệu 7
1.1 Định nghĩa về phân cụm dữ liệu 7
1.2 Một số ví dụ về phân cụm dữ liệu 7
2. Một số kiểu dữ liệu 10
2.1 Dữ liệu Categorical 10
2.2 Dữ liệu nhị phân 13
2.3 Dữ liệu giao dịch 14
2.4 Dữ liệu Symbolic 15
2.5 Chuỗi thời gian(Time Series) 16
3. Phép Biến đổi và Chuẩn hóa dữ liệu 16
3.1 Phép chuẩn hóa dữ liệu 17
3.2 Biến đổi dữ liệu 21
3.2.1 Phân tích thành phần chính 21
3.2.2 SVD 23
3.2.3 Phép biến đổi Karhunen-Loève 24
CHƢƠNG II. CÁC THUẬT TOÁN PHÂN CỤM DỮ LIỆU 28
1. Thuật toán phân cụm dữ liệu dựa vào phân cụm phân cấp 28
1.1 Thuật toán BIRCH 28
1.2 Thuật toán CURE 30
1.3 Thuật toán ANGNES 32
1.4 Thuật toán DIANA 33
1.5 Thuật toán ROCK 33
1.6 Thuật toán Chameleon 34
-3-

2. Thuật toán phân cụm dữ liệu mờ 35


2.1 Thuật toán FCM 36
2.2 Thuật toán εFCM 37
3. Thuật toán phân cụm dữ liệu dựa vào cụm trung tâm 37
3.1 . Thuật toán K – MEANS 37
3.2 Thuật toán PAM 41
3.3 Thuật toán CLARA 42
3.4 Thuật toán CLARANS 44
4. Thuật toán phân cụm dữ liệu dựa vào tìm kiếm 46
4.1 Thuật toán di truyền (GAS) 46
4.2 J- Means 48
5. Thuật toán phân cụm dữ liệu dựa vào lƣới 49
5.1 STING 49
5.2. Thuật toán CLIQUE 51
5.3. Thuật toán WaveCluster 52
6. Thuật toán phân cụm dữ liệu dựa vào mật độ 53
6.1 Thuật toán DBSCAN 53
6.2. Thuật toán OPTICS 57
6.3. Thuật toán DENCLUDE 58
7. Thuật toán phân cụm dữ liệu dựa trên mẫu 60
7.1 Thuật toán EM 60
7.2 Thuật toán COBWEB 61
CHƢƠNG III :ỨNG DỤNG CỦA PHÂN CỤM DỮ LIỆU 62
1. Phân đoạn ảnh 62
1.1. Định nghĩa Phân đoạn ảnh 63
1.2 Phân đoạn ảnh dựa vào phân cụm dữ liệu 65
2. Nhận dạng đối tƣợng và ký tự 71
2.1 Nhận dạng đối tượng 71
-4-

2.2 Nhận dạng ký tự. 75


3. Truy hồi thông tin 76
3.1 Biểu diễn mẫu 78
3.2 Phép đo tương tự 79
3.3 Một giải thuật cho phân cụm dữ liệu sách 80
4. Khai phá dữ liệu 81
4.1 Khai phá dữ liệu bằng Phương pháp tiếp cận. 82
4.2 Khai phá dữ liệu có cấu trúc lớn. 83
4.3 Khai phá dữ liệu trong Cơ sở dữ liệu địa chất. 84
4.4 Tóm tắt 86
KẾT LUẬN ,HƢỚNG PHÁT TRIỂN CỦA ĐỀ TÀI 90
PHỤ LỤC 91
TÀI LIỆU THAM KHẢO 99
-5-

LỜI CẢM ƠN

Em xin chân thành cảm ơn PGS. TS Vũ Đức Thi đã tận tình hướng dẫn
khoa học, giúp đỡ em hoàn thành tốt luận văn tốt nghiệp này.
Em cũng xin gửi lời cảm ơn tới các thầy, cô giáo đã dạy dỗ, và truyền
đạt kiến thức cho em trong suốt quá trình học tập và nghiên cứu

HỌC VIÊN
NGUYỄN TRUNG SƠN
-6-

LỜI MỞ ĐẦU
Trong những năm gần đây, sự phát triển mạnh mẽ của CNTT đã làm
cho khả năng thu thập và lưu trữ thông tin của các hệ thống thông tin tăng
nhanh một cách chóng mặt. Bên cạnh đó, việc tin học hóa một cách ồ ạt và
nhanh chóng các hoạt động sản xuất, kinh doanh cũng như nhiều lĩnh vực
hoạt động khác đã tạo ra cho chúng ta một lượng dữ liệu lưu trữ khổng lồ.
Hàng triệu CSDL đã được sử dụng trong các hoạt động sản xuất, kinh doanh,
quản lý..., trong đó có nhiều CSDL cực lớn cỡ Gigabyte, thậm chí là Terabyte.
Sự bùng nổ này đã dẫn tới một yêu cầu cấp thiết là cần có những kỹ
thuật và công cụ mới để tự động chuyển đổi lượng dữ liệu khổng lồ kia thành
các tri thức có ích. Từ đó, các kỹ thuật khai phá dữ liệu đã trở thành một lĩnh
vực thời sự của nền CNTT thế giới hiện nay nói chung và Việt Nam nói riêng.
Khai phá dữ liệu đang được áp dụng một cách rộng rãi trong nhiều lĩnh vực
kinh doanh và đời sống khác nhau: marketing, tài chính, ngân hàng và bảo
hiểm, khoa học, y tế, an ninh, internet… Rất nhiều tổ chức và công ty lớn trên
thế giới đã áp dụng kỹ thuật khai phá dữ liệu vào các hoạt động sản xuất kinh
doanh của mình và thu được những lợi ích to lớn.
Các kỹ thuật khai phá dữ liệu thường được chia thành 2 nhóm chính:
- Kỹ thuật khai phá dữ liệu mô tả: có nhiệm vụ mô tả về các tính
chất hoặc các đặc tính chung của dữ liệu trong CSDL hiện có.
- Kỹ thuật khai phá dữ liệu dự đoán: có nhiệm vụ đưa ra các dự đoán
dựa vào các suy diễn trên dữ liệu hiện thời.
Bản luận văn này trình bày một số vấn đề về Phân cụm dữ liệu, một
trong những kỹ thuật cơ bản để Khai phá dữ liệu. Đây là hướng nghiên cứu
có triển vọng chỉ ra những sơ lược trong việc hiểu và khai thác CSDL khổng
lồ, khám phá thông tin hữu ích ẩn trong dữ liệu; hiểu được ý nghĩa thực tế của dữ liệu.
Luận văn đƣợc trình bày trong 3 chƣơng và phần phụ lục :
Chương 1 : Trình bày tổng quan lý thuyết về Phân cụm dữ liệu, các kiểu dữ
liệu, Phép biến đổi và chuẩn hóa dữ liệu.
Chương 2 : Giới thiệu, phân tích, đánh giá các thuật toán dùng để phân cụm
dữ liệu
Chương 3 : Trình bày một số ứng dụng tiêu biểu của phân cụm dữ liệu.
Kết luận : Tóm tắt các vấn đề được tìm hiểu trong luận văn và các vấn đề liên
quan trong luận văn, đưa ra phương hướng nghiên cứu tiếp theo.
-7-

CHƢƠNG I :
TỔNG QUAN LÝ THUYẾT VỀ PHÂN CỤM DỮ LIỆU
1. Phân cụm dữ liệu
1.1 Định nghĩa về phân cụm dữ liệu
Phân cụm dữ liệu(Data Clustering) hay phân cụm, cũng có thể gọi là
phân tích cụm, phân tích phân đoạn, phân tích phân loại, là quá trình nhóm
một tập các đối tượng thực thể hay trừu tượng thành lớp các đối tượng tương
tự. Một cụm là một tập hợp các đối tượng dữ liệu mà các phần tử của nó
tương tự nhau cùng trong một cụm và phi tương tự với các đối tượng trong
các cụm khác. Một cụm các đối tượng dữ liệu có thể xem như là một nhóm
trong nhiều ứng dụng.
1.2 Một số ví dụ về phân cụm dữ liệu
1.2.1 Phân cụm dữ liệu phục vụ cho biểu diễn dữ liệu gene
Phân cụm là một trong những phân tích được sử dụng thường xuyên
nhất trong biểu diễn dữ liệu gene (Yeung et al., 2003; Eisen at al., 1998). Dữ
liệu biểu diễn gene là một tâp hợp các phép đo được lấy từ DNA microarray
(còn gọi là DNA chip hay gene chip) là một tấm thủy tinh hoặc nhựa trên đó
có gắn các đoạn DNA thành các hàng siêu nhỏ. Các nhà nghiên cứu sử dụng
các con chip như vậy để sàng lọc các mẫu sinh học nhằm kiểm tra sự có mặt
hàng loạt trình tự cùng một lúc. Các đoạn DNA gắn trên chip được gọi là
probe (mẫu dò). Trên mỗi điểm của chip có hàng ngàn phân tử probe với trình
tự giống nhau. Một tập hợp dữ liệu biểu diễn gene có thể được biểu diễn
thành một ma trận giá trị thực :

 x11 x12  x1d 


 
 x 21 x 22  x 2 d 
D ,
    
 
x x n 2  x nd 
 n1
Trong đó :
- n là số lượng các gen
- d là số lượng mẫu hay điều kiện thử
- xij là thước đo biểu diễn mức gen i trong mẫu j
-8-

Bởi vì các biểu ma trận gốc chứa nhiễu, giá trị sai lệch, hệ thống biến thể,
do đó tiền xử lý là đòi hỏi cần thiết trước khi thực hiện phân cụm.

Khai phá dữ liệu

Phân loại
Ước lượng
Khai phá dữ liệu trực tiếp Dự đoán
Khai phá dữ liệu gián tiếp

Phân cụm
Luật kết hợp
Diễn giải và trực quan hóa

Hình 1 Tác vụ của Khai phá dữ liệu

Dữ liệu biểu diễn gen có thể được phân cụm theo hai cách. Cách thứ nhất
là nhóm các các mẫu gen giống nhau, ví dụ như gom các dòng của ma trận D.
Cách khác là nhóm các mẫu khác nhau trên các hồ sơ tương ứng, ví dụ như
gom các cột của ma trận D.
1.2.2 Phân cụm dữ liệu phục trong sức khỏe tâm lý
Phân cụm dữ liệu áp dụng trong nhiều lĩnh vực sức khỏe tâm lý, bao
gồm cả việc thúc đẩy và duy trì sức khỏe, cải thiện cho hệ thống chăm sóc sức
khỏe, và công tác phòng chống bệnh tật và người khuyết tật (Clatworthy et
al., 2005). Trong sự phát triển hệ thống chăm sóc sức khỏe, phân cụm dữ liệu
được sử dụng để xác định các nhóm của người dân mà có thể được hưởng lợi
từ các dịch vụ cụ thể (Hodges và Wotring, 2000). Trong thúc đẩy y tế, nhóm
phân tích được sử dụng để lựa chọn nhắm mục tiêu vào nhóm sẽ có khả năng
đem lại lợi ích cho sức khỏe cụ thể từ các chiến dịch quảng bá và tạo điều
kiện thuận lợi cho sự phát triển của quảng cáo. Ngoài ra, phân cụm dữ liệu
-9-

được sử dụng để xác định các nhóm dân cư bị rủi ro do phát triển y tế và các
điều kiện những người có nguy cơ nghèo.
1.2.3 Phân cụm dữ liệu đối với hoạt đông nghiên cứu thị trường
Trong nghiên cứu thị trường, phân cụm dữ liệu được sử dụng để phân
đoạn thị trường và xác định mục tiêu thị trường (Chrisoppher, 1969;
Saunders, 1980, Frank and Green, 1968). Trong phân đoạn thị trường, phân
cụm dữ liệu thường được dùng để phân chia thị trường thành nhưng cụm
mang ý nghĩa, chẳng han như chia ra đối tượng nam giới từ 21-30 tuổi và
nam giới ngoài 51 tuổi, đối tượng nam giới ngoài 51 tuổi thường không có
khuynh hướng mua các sản phẩm mới.
1.2.4 Phân cụm dữ liệu đối với hoạt động Phân đoạn ảnh
Phân đoạn ảnh là việc phân tích mức xám hay mầu của ảnh thành các
lát đồng nhất (Comaniciu and Meer, 2002). Trong phân đoạn ảnh, phân cụm
dữ liệu thường được sử dụng để phát hiện biên của đối tượng trong ảnh.
Phân cụm dữ liệu là một công cụ thiết yếu của khai phá dữ liệu, khai
phá dữ liệu là quá trình khám phá và phân tích một khối lượng lớn dữ liệu để
lấy được các thông tin hữu ích (Berry and Linoff, 2000). Phân cụm dữ liệu
cũng là một vấn đề cơ bản trong nhận dạng mẫu (pattern recognition). Hình
1.1 đưa ra một danh sách giản lược các tác vụ đa dạng của khai phá dữ liệu và
chứng tỏ vai trò của phân cụm dữ liệu trong khai phá dữ liệu.
Nhìn chung, Thông tin hữu dụng có thể được khám phá từ một khối
lượng lớn dữ liệu thông qua phương tiện tự động hay bán tự động (Berry and
Linoff, 2000). Trong khai phá dữ liệu gián tiếp, không có biến nào được chọn
ra như một biến đích, và mục tiêu là để khám phá ra một vài mối quan hệ
giữa tất cả các biến. Trong khi đó đối với khai phá dữ liệu gián tiếp một vài
biến lại được chọn ra như các biến đích. Phân cụm dữ liệu là khai phá dữ liệu
gián tiếp, bởi vì trong khai phá dữ liệu, ta không đảm bảo chắc chắn chính xác
cụm dữ liệu mà chúng ta đang tìm kiếm, đóng vai trò gì trong việc hình thành
các cụm dữ liệu đó, và nó làm như thế nào.
Vấn đề phân cụm dữ liệu đã được quan tâm một cách rộng rãi, mặc dù
chưa có định nghĩa đồng bộ về phân cụm dữ liệu và có thể sẽ không bao giờ
là một và đi đến thống nhất.(Estivill-Castro,2002; Dubes, 1987; Fraley and
Raftery, 1998). Nói một cách đại khái là : Phân cụm dữ liệu, có nghĩa là ta
-10-

cho một tập dữ liệu và một phương pháp tương tự, chúng ta nhóm dữ liệu lại
chẳng hạn như điểm dữ liệu trong cùng một nhóm giống nhau và điểm dữ liệu
trong các nhóm khác nhau về sự không đồng dạng. Rõ ràng là vấn đề này
được bắt gặp trong nhiều ứng dụng, chẳng hạn như khai phá văn bản, biểu
diễn gen, phân loại khách hàng, xử lý ảnh…
2. Một số kiểu dữ liệu
Thuật toán phân cụm dữ liệu có nhất rất nhiều liên kết với các loại dữ
liệu. Vì vậy, sự hiểu biết về quy mô, bình thường hoá, và gần nhau là rất quan
trọng trong việc giải thích các kết quả của thuật toán phân cụm dữ liệu. Kiểu
dữ liệu nói đến mức độ lượng tử hóa trong dữ liệu (Jain và Dubes, 1988;
Anderberg, 1973) - một thuộc tính duy nhất có thể được gõ như nhị phân, rời
rạc, hoặc liên tục. thuộc tính nhị phân có chính xác hai giá trị, như là đúng
hoặc sai. Thuộc tính rời rạc có một số hữu hạn các giá trị có thể, vì thế các
loại nhị phân là một trường hợp đặc biệt của các loại rời rạc (xem hình 2).
Dữ liệu quy mô, mà chỉ ra tầm quan trọng tương đối của các con số,
cũng là một vấn đề quan trọng trong phân cụm dữ liệu. Vậy liệu có thể được
chia thành quy mô định lượng và quy mô định tính. quy mô định lượng bao
gồm quy mô danh nghĩa và quy mô giới hạn; quy mô định tính bao gồm quy
mô khoảng và quy mô khoảng tỷ lệ (hình 3). các kiểu dữ liệu sẽ được xem xét
trong phần này .
2.1 Dữ liệu Categorical
Thuộc tính Categorical cũng được gọi là thuộc tính danh nghĩa, thuộc
tính này đơn giản là sử dụng như tên, chẳng hạn như các thương hiệu xe và
tên của các chi nhánh ngân hàng. Chúng ta xem xét các dữ liệu tập hợp với
một số hữu hạn các điểm dữ liệu, một thuộc tính trên danh nghĩa của các điểm
dữ liệu trong tập dữ liệu có thể chỉ có một số hữu hạn các giá trị; như vậy, các
loại danh nghĩa cũng là một trường hợp đặc biệt của kiểu rời rạc.
-11-

Kiểu dữ liệu

Rời rạc Liên tục

Danh nghĩa Nhị phân

Đối xứng Bất đối xứng

Hình 2. Biểu đồ các dạng dữ liệu

Quy mô dữ liệu

Định lượng Định tính

Danh nghĩa Giới hạn Tỷ lệ Khoảng

Hình 3. Biểu đồ quy mô dữ liệu


Trong phần này, chúng ta sẽ giới thiệu các bảng biểu tượng và bảng tần
số và ký hiệu một số bộ dữ liệu Categorical.

Bảng 1 Mẫu ví dụ của tập dữ liệu Categorical


Bản ghi Giá trị
x1 (A, A, A, A, B, B)
x2 (A, A, A, A, C, D)
x3 (A, A, A, A, D, C)
x4 (B, B, C, C, D, C)
x5 (B, B, D, D, C, D)

Cho D  x1 , x 2  , x n  là một tập dữ liệu tuyệt đối với khoảng cách
n, được mô tả bởi d thuộc tính Categorical v1, v2,…vd. Đặt DOM(vj) thuộc
-12-

miền thuộc tính vj . Trong tập dữ liệu Categorical đã cho trong bảng 2.1, ví dụ
miền của v1 và v4 là DOM(v1) = {A, B} và DOM(v4) ={A, C, D}, tách biệt.
Cho một tập dữ liệu Categorical D, giả sử rằng
 
DOM v j   A j1 , A j 2 ,  , A jn j với j = 1, 2, … ,d. Gọi Ajl 1  l  n j là trạng
thái thuộc tính Categorical vj đã cho trong tập dữ liệu D. Một bảng Ts của tập
dữ liệu được định nghĩa
Ts = (s1, s2, … , sd), (2.1)

Nơi sj (1  l  d ) là vecto định nghĩa là s j  A j1 , A j 2 ,, A jn j . T

Vì có nhiều trạng thái có thể là các giá trị (hoặc) cho một biến, một
bảng biểu tượng của một tập dữ liệu thường là không duy nhất. Ví dụ, đối với
bộ dữ liệu trong bảng 1, cả hai bảng 2 và Bảng 3 là bảng biểu tượng của nó.
Bảng tần số được tính theo một bảng biểu tượng và nó đã chính xác
cùng kích thước như bảng biểu tượng. Đặt C là một cụm. Sau đó, bảng tần số
Tf (C) của các cụm C được định nghĩa là
Tf C    f1 C , f 2 C , , f d C , (2.2)
Nơi f j C  là một vecto được định nghĩa
 
T f C   f j1 C , f j 2 C ,, f jn j C  ,
T
(2.3)
Bảng 2. Một trong những bảng biểu tượng của bộ dữ liệu trong bảng 1

AA A A B B
 
 B B C C C C 
 D D D D 

Bảng 3 : Bảng biểu tượng của bộ dữ liệu trong bảng 1.

 AB D A B C 
 
 B AC C C B 
 A D D D 

Nơi fjr(C) (1  j  d ,1  r  n j ) là số điểm dữ liệu trong cụm C mà giá trị
Ajr tại mảng thứ j, v.v
f jr C   x  C : x j  A jr , (2.4)
-13-

Nơi xj là giá trị bộ phận j của x


Đối với một bảng biểu tượng cho trước của bộ dữ liệu, bảng tần số của
mỗi cụm là duy nhất lên đến rằng bảng biểu tượng. Ví dụ, đối với bộ dữ liệu
trong bảng 2.1, cho C được một cụm, trong đó C = (x1, x2, x3). Sau đó, nếu sử
dụng các biểu tượng trình bày trong bảng 2 bảng tần số tương ứng cho các
nhóm C được cho trong bảng 2.4. Nhưng nếu sử dụng bảng biểu tượng trình
bày trong Bảng 2.3, sau đó là bảng tần số cho các nhóm C được cho trong
bảng 2.5.
Để có được bộ dữ liệu Categorical D, chúng ta thấy rằng Tf(D) là một
bảng tính toán tần số trên cơ sở dữ liệu toàn bộ thiết lập. Giả sử D là phân
vùng không chồng chéo vào k cụm C1, C2,..., Ck. Sau đó chúng ta có
k
f jr D    f jr Ci  (2.5)
i 1

Với tất cả r = 1, 2, … , nj và j = 1, 2, …d.


2.2 Dữ liệu nhị phân
Một thuộc tính nhị phân là một thuộc tính có hai giá trị chính xác nhất
có thể, chẳng hạn như "Đúng" hay "Sai" Lưu ý rằng các biến nhị phân có thể
được chia thành hai loại:. biến nhị phân Đối xứng và các biến nhị phân bất đối
xứng. Trong một biến nhị phân đối xứng, hai giá trị có quan trọng không kém
nhau. Một ví dụ là "nam-nữ". Biến nhị phân đối xứng là một biến danh nghĩa.
Trong một biến không đối xứng, một trong những giá trị của nó mang tầm
quan trọng hơn biến khác . Ví dụ, "có" là viết tắt của sự hiện diện của một
thuộc tính nhất định và "không" nghĩa là sự vắng mặt của một thuộc tính nhất
định.
Một vecto nhị phân x với kích thước d được định nghĩa là (x1, x2,…,
xd)(Zhang and Srihari 2003), nơi xi  0,11  i  d  là giá trị thành phần j của x.
Vecto khối nhị phân I của kích thước d là một vecto nhị phân với mỗi giá trị
nhập vào bằng 1. Việc bổ xung một vecto nhị phân x được định nghĩa là
xI x , nơi I là một đơn vị vecto nhị phân có cùng kích thước như x.
Xét hai vecto nhị phân x và y trong không gian d, và cho S ij x, y 
i, j  0,1 biểu thị số lần xuất hiện của i trong x và j trong y tương ứng, ví dụ
Sij x, y   k : xk  i và yk  j , k  1,2,, d  . (2.6)
-14-

Sau đó, rõ ràng chúng ta có đẳng thức sau :


d
S11 x, y   x. y   xi yi , (2.7a)
i 1
_ _ d
S00 x, y   x . y   1  xi 1  yi , (2.7b)
i 1

_ d
S01 x, y   x . y   1  xi  yi , (2.7c)
i 1

_ d
S10 x, y   x. y   xi 1  yi , (2.7d)
i 1

Ta cũng có :
d  S 00  x, y   S 01  x, y   S10  x, y   S11  x, y . (2.8)
Bảng 4: Bảng tính toán tần số từ bảng biểu tượng trong bảng 2

 3 3 3 311
 
 0 0 0 011
 0 011
 
Bảng5: Bảng tính toán tần số từ bảng biểu tượng trong bảng 3

 3 0 0 311
 
 0 3 0 011
 3 011
 

2.3 Dữ liệu giao dịch


Cho một tập hợp các phần tử I = (I1, I2,. . . , Im), một giao dịch là một
tập hợp con của I (Yang et al, 2002b.; Wang et al, 1999a.; Xiao và Dunham,
2001). Một tập dữ liệu giao dịch là một tập hợp các giao dịch, ví dụ
D  t i : t i  I , i  1,2,  n. . Giao dịch có thể được đại diện bởi vector nhị phân,

trong đó mỗi mục biểu thị các có hay không có mục tương ứng. Ví dụ, chúng
ta có thể đại diện cho một giao dịch ti do véc tơ nhị phân (bi1, bi2,.., bim.), nơi
bij = 1 nếu IJ ∈ ti và bij = 0 nếu Ij  ti. Từ điểm này, các dữ liệu giao dịch là
-15-

một trường hợp đặc biệt của dữ liệu nhị phân. Ví dụ phổ biến nhất của dữ liệu
giao dịch là thị trường dữ liệu trong giỏ hàng. Trong một thị trường
thiết lập dữ liệu trong giỏ hàng, giao dịch có chứa một tập hợp con của tập
tổng số mặt hàng mà có thể được mua. Ví dụ, sau đây là hai giao dịch: (táo,
bánh), (táo, món ăn, trứng, cá,). Nói chung, nhiều giao dịch được thực hiện
các mục thưa thớt phân phối. Ví dụ, một khách hàng chỉ có thể mua một số
mặt hàng từ một cửa hàng với hàng nghìn mặt hàng. Như đã chỉ ra bởi Wang
et al. (1999a), cho các giao dịch được thực hiện các mục thưa thớt phân phối,
cặp tương tự là không cần thiết, cũng không đủ để đánh giá xem một cụm
giao dịch là tương tự.
2.4 Dữ liệu Symbolic
Dữ liệu Categorical và dữ liệu nhị phân là loại dữ liệu cổ điển, và dữ
liệu symbolic là một phần mở rộng của các kiểu dữ liệu cổ điển. Trong bộ dữ
liệu thông thường, các đối tượng đang được coi là cá nhân (lần đầu các đối
tượng tự) (Malerba et al, 2001.), trong khi đó tại tập dữ liệu symbolic , các đối
tượng là nhiều hơn "thống nhất" do có nghĩa là các mối quan hệ. Như vậy, các
dữ liệu symbolic được nhiều hơn hoặc ít hơn đồng nhất hoặc các nhóm của
các cá nhân (thứ hai đối tượng tự)
(Malerba et al, 2001.). Malerba et al. (2001) được xác định một dữ liệu
symbolic được thiết lập để một lớp hoặc nhóm của các cá nhân mô tả bởi một
số thiết lập giá trị hoặc biến phương thức. Biến A được gọi là giá trị thiết lập
nếu nó đóng vai trò giá trị của nó trong thiết lập miền của nó. Một biến
phương thức là một thiết lập giá trị biến với một biện pháp hoặc phân phối
một (tần số, xác suất, hoặc trọng lượng) kết hợp với mỗi đối tượng.
Gowda và Diday (1992) tóm tắt sự khác biệt giữa dữ liệu symbolic và
dữ liệu thông thường như sau:
• Tất cả các đối tượng trong một dữ liệu symbolic có thể không được
định nghĩa về các biến tương tự.
• Mỗi biến có thể mất nhiều hơn một giá trị hoặc thậm chí khoảng một
giá trị.
• Các biến trong một dữ liệu symbolic phức tạp có thể mất giá trị bao
gồm một hoặc nhiều đối tượng cơ bản.
-16-

• Các mô tả của một đối tượng tượng trưng có thể phụ thuộc vào mối
quan hệ hiện tại giữa các đối tượng khác.
• Các giá trị các biến mất có thể cho thấy tần suất xuất hiện, khả năng
tương đối, mức độ quan trọng của các giá trị, vv.
Dữ liệu Symbolic có thể được tổng hợp từ các dữ liệu khác thường vì
lý do đó là riêng tư. Trong số liệu điều tra dân số, ví dụ, các dữ liệu được tạo
sẵn ở dạng tổng hợp để đảm bảo rằng các nhà phân tích dữ liệu không thể xác
định một cá nhân hay một doanh nghiệp duy nhất thành lập.
2.5 Chuỗi thời gian(Time Series)
Chuỗi thời gian là những hình thức đơn giản nhất của dữ liệu tạm thời.
Chính xác, một chuỗi thời gian là một chuỗi của số thực đại diện cho các phép
đo của một biến thực tế tại các khoảng thời gian bằng (Gunopulos và Das,
2000). Ví dụ, giá cổ phiếu các phong trào, nhiệt độ tại một điểm nào đó, và
khối lượng bán hàng theo thời gian tất cả đo là các chuỗi thời gian.
Một chuỗi thời gian là rời rạc nếu biến được xác định trên một tập hữu
hạn các điểm thời gian. Nhiều nhất của chuỗi thời gian gặp phải trong phân
tích cụm là thời gian rời rạc. Khi một biến được định nghĩa ở tất cả các điểm
trong thời gian, sau đó là chuỗi thời gian là liên tục.
Nói chung, một chuỗi thời gian có thể được coi là một hỗn hợp của bốn
thành phần sau (Kendall và Ord, 1990):
1. Một xu hướng, ví dụ., các phong trào lâu dài;
2. Biến động về xu hướng đều đặn hơn hoặc ít hơn;
3. Một thành phần theo mùa;
4. Một hiệu ứng dư hoặc ngẫu nhiên.
3. Phép biến đổi và chuẩn hóa dữ liệu
Trong nhiều ứng dụng của phân cụm dữ liệu, dữ liệu thô, hoặc đo đạc
thực tế, không được sử dụng trực tiếp, trừ khi một mô hình xác suất cho các
thế hệ khuôn mẫu có sẵn (Jain và Dubes, 1988). Việc chuẩn bị cho việc phân
cụm dữ liệu yêu cầu một số loại chuyển đổi, chẳng hạn như biến đổi và
chuẩn hóa dữ liệu. Một số phương pháp biến đổi dữ liệu thường được sử dụng
để phân cụm dữ liệu sẽ được thảo luận trong phần. Một số phương pháp
chuẩn hoá dữ liệu được trình bày trong Phần 4.1.
Edited by Foxit Reader
Copyright(C) by Foxit Corporation,2005-2009
For Evaluation
-17- Only.

Để thuận tiện hãy cho D*  x1* , x2* ,, xn*  biểu thị tập dữ liệu thô d-chiều.
Từ đó ma trận dữ liệu là một ma trân n x d được cho bởi
 x11* x12*  x1*d 
 * 
x  x2*d 
x , x ,, x 
*
* T x22
* *
  21
  
1 2 n (4.1)
  
 x* xn* 2 * 
 xnd
 n1 
3.1 Phép chuẩn hóa dữ liệu
Chuẩn hoá làm cho dữ liệu giảm kích thước đi. Nó có ích để xác định
tiêu chuẩn hoá chỉ số. Sau chuẩn hóa, tất cả các kiến thức về vị trí và quy mô
của các dữ liệu gốc có thể bị mất. Nó là cần thiết để chuẩn hóa các biến trong
trường hợp các biện pháp không giống nhau, chẳng hạn như khoảng cách
Euclide, là nhạy cảm với những khác biệt trong độ lớn hoặc quy mô của các
biến đầu vào (Milligan và Cooper, 1988). Các phương pháp tiếp cận các
chuẩn hoá của các biến bản chất của hai loại: Chuẩn hóa toàn cục và chuẩn
hoá trong cụm.
Chuẩn hóa hóa toàn cục làm chuẩn các biến trên tất cả các yếu tố trong
các tập dữ liệu. Trong vòng-cụm tiêu chuẩn hoá dùng để chỉ tiêu chuẩn hóa
xảy ra trong các cụm biến mỗi ngày. Một số hình thức tiêu chuẩn hoá có thể
được sử dụng trong các chuẩn hóa toàn cục và chuẩn hóa trong phạm vi rất
tốt, nhưng một số hình thức chuẩn hoá chỉ có thể được sử dụng trong chuẩn
hoá toàn cục.
Không thể trực tiếp chuẩn hóa các biến trong các cụm trong phân cụm,
bởi vì các cụm không được biết trước khi chuẩn hóa. Để khắc phục khó khăn
này, khác phương pháp phải được thực hiện. Tổng thể và Klett (1972) đề xuất
một cách tiếp cận lặp rằng các cụm thu được đầu tiên dựa trên số ước lượng
tổng thể và sau đó sử dụng các cụm để giúp xác định các biến bên trong nhóm
chênh lệch đối với chuẩn hoá trong một phân cụm thứ hai.
Để chuẩn hóa dữ liệu thô được đưa ra trong phương trình (4,1), ta có
thể trừ một thước đo vị trí và phân chia một biện pháp quy mô cho mỗi biến.
Đó là,
xij*  L j
xij  (4.2)
Mj
Edited by Foxit Reader
Copyright(C) by Foxit Corporation,2005-2009
For Evaluation
-18- Only.

nơi xij biểu thị giá trị đã được chuẩn hóa, L j là vị trí đo, và M j là quy mô đo.
Chúng tôi có thể có được phương pháp tiêu chuẩn hoá khác nhau bằng
cách chọn khác nhau LJ và MJ trong phương trình (4,2). Một số phương pháp
chuẩn hoá nổi tiếng trung bình, tiêu chuẩn độ lệch, phạm vi, Huber của dự
toán, dự toán biweight Tukey's, và Andrew ước tính của sóng.
Bảng 4,1 cho một số hình thức tiêu chuẩn hoá, nơi x *j , R *j và  *j , có
nghĩa là, phạm vi, và độ lệch chuẩn của biến thứ j, tương ứng, nghĩa là

1 n
x   xij*
*
j (4.3a)
n i 1
R*j  max xij*  min xij* , (4.3b)
1i  n 1i  n

1
 1 n * 2
 *j   
 n  1 i 1
( xij  x *j )2 

(4.3c)

Bây giờ chúng ta thảo luận về một số chi tiết các hình thức chung của
tiêu chuẩn hoá và thuộc tính .z-score là một hình thức của tiêu chuẩn hoá
được sử dụng để chuyển biến thể bình thường để tạo điểm chuẩn. Cho một tập
hợp các dữ liệu thô D*, các Z-score công thức chuẩn được định nghĩa là
xij*  x *j
 
xij  Z1 x  *
ij
 *j (4.4)

Nơi x *j ,  *j có nghĩa là các mẫu và độ lệch chuẩn của các thuộc tính thứ
j, tương ứng.
Biến đổi sẽ có một ý nghĩa của 0 và phương sai một trong số 1. Vị trí
quy mô và thông tin của biến gốc đã bị mất. Chuyển đổi này cũng là trình bày
trong (Jain và Dubes, 1988, trang 24). Một điều quan trọng hạn chế của chuẩn
hóa Z1 là nó phải được áp dụng trong tiêu chuẩn toàn cầu và không ở trong
phạm vi-cụm tiêu chuẩn hoá (Milligan và Cooper, 1988). Trong thực tế, hãy
xem xét trường hợp hai cụm tách ra cũng tồn tại trong các dữ liệu. Nếu một
mẫu có vị trí mỗi hai cụm trung tâm, sau đó trong vòng-cụm chuẩn sẽ chuẩn
hóa các mẫu nằm tại cụm trung tâm về không vectơ. Bất kỳ thuật toán
clustering sẽ nhóm hai số không vectơ với nhau, có nghĩa là hai nguyên mẫu
Edited by Foxit Reader
Copyright(C) by Foxit Corporation,2005-2009
For Evaluation
-19- Only.

sẽ được được nhóm cho một cluster. Điều này tạo ra một kết quả phân nhóm
rất gây hiểu nhầm.
Bảng 4.1 Một vài phép chuẩn hóa dữ liệu, nơi x *j , R *j và  *j được định nghĩa
trong biểu thức 4.3
Tên Lj Lj
z-score x *j  *j

USTD 0  *j

Maxium 0 max xij*


1 i  n

Mean x *j 1
Median x *n 1 nếu n là lẻ
j
2

1
1 * 
 xn  x*n  2  nếu n là chẵn

2 2j j
2 
n
Sum 0
x
i 1
*
ij

Range min xij* R *j


1i  n

Chuẩn hóa USTD (Độ lệch chuẩn các trọng không chính xác) cũng
tương tự như chuẩn hoá điểm z-score và được định nghĩa là

 
xij  Z 2 xij* 
xij*
 *j
(4.5)

Nơi  *j được định nghĩa trong biểu thức (4.3c)


Biến đổi bởi Z2 sẽ có một phương sai của 1. Kể từ khi có điểm số
không được trung tâm bằng cách trừ đi có nghĩa là, các thông tin vị trí giữa
các điểm vẫn còn. Như vậy, chuẩn hóa Z2 sẽ không phải chịu những vấn đề
của sự mất thông tin về các Cụm centroids.
Phương pháp chuẩn hoá thứ ba trình bày trong Milligan và Cooper
(1988) là sử dụng điểm tối đa về biến:
xij*
 
xij  Z 3 x *
ij (4.6)
max xij*
1i  n
Edited by Foxit Reader
Copyright(C) by Foxit Corporation,2005-2009
For Evaluation
-20- Only.

X
Một X biến đổi bởi Z3 sẽ có một ý nghĩa và độ lệch chuẩn
max( X )
X
, nơi X và  X là trung bình và độ lệch chuẩn của biến gốc. Z3 là nhạy
max( X )
cảm với sự hiện diện của Outliers (Milligan và Cooper, 1988). Nếu một đơn
lớn quan sát trên một biến được trình bày, Z3 sẽ chuẩn hóa các giá trị còn lại
để gần 0. Z3 có vẻ là có ý nghĩa chỉ khi biến này là một biện pháp trong một
phạm vi tỷ lệ (Milligan và Cooper, 1988).
Hai quy chuẩn có liên quan đến việc sử dụng phạm vi của biến đã được
trình bày trong (Milligan và Cooper, 1988):

xij  Z 4 xij*    xij*


R*j
(4.7a)

xij*  min xij*


xij  Z 5 x    *
ij
1i  n

R *j
, (4.7b)

Nơi R *j là phạm vi thuộc tính thứ j được định nghĩa trong biểu thức
(4.3b)
X
Một biến X biến đổi bởi Z4 và Z5 sẽ có nghĩa là và
max( X )  min( X )
X  min( X ) X
, tương ứng, và có cùng độ lệch chuẩn . Cả
max( X )  min( X ) max( X )  min( X )
hai Z4 và Z5 dễ phải sự hiện diện của Outliers.

Một tiêu chuẩn hoá trên cơ sở bình thường hóa với tổng của các quan
sát trình bày trong (Milligan và Cooper, 1988) được định nghĩa là

 
xij  Z 6 xij*  n
xij*
, (4.8)
x
i 1
*
ij

Các Z6 chuyển đổi sẽ bình thường hóa tổng giá trị chuyển thành sự
1
thống nhất và các chuyển có nghĩa là sẽ có . Như vậy, có nghĩa là sẽ được
n
liên tục trên tất cả các biến.
-21-

Một cách tiếp cận rất khác nhau của chuẩn hoá mà bao gồm việc
chuyển đổi các điểm đến đánh giá cao được trình bày trong (Milligan và
Cooper, 1988) và được định nghĩa là

   
xij  Z 7 xij*  Rank xij* , (4.9)
Nơi Rank(X) là cấp chỉ định cho X
n 1
Một biến chuyển bởi Z7 sẽ có một ý nghĩa của và một phương sai
2
2n  1 n  1 
của n  1   . Việc chuyển đổi cấp bậc làm giảm tác động của
 6 4 
Outliers trong dữ liệu.
Conover và Iman (1981) đề xuất bốn loại chuyển đổi cấp bậc.
Hạng nhất chuyển đổi trình bày được xếp hạng từ nhỏ đến lớn nhất, với điểm
số nhỏ nhất có hạng nhất, điểm thứ hai nhỏ nhất có thứ hạng hai, vv. Cấp bậc
trung bình được chỉ định trong trường hợp quan hệ.
3.2 Biến đổi dữ liệu
Biến đổi Dữ liệu có gì đó để làm gì với dữ liệu chuẩn hoá, nhưng nó là
phức tạp hơn hơn so với chuẩn hoá dữ liệu. Chuẩn hoá dữ liệu tập trung vào
các biến, nhưng Biến đổi dữ liệu tập trung vào các dữ liệu toàn bộ thiết lập.
Theo Chuẩn hoá dữ liệu như vậy, có thể được được xem như là một trường
hợp đặc biệt của Biến đổi dữ liệu i. Trong phần này, trình bày một số dữ liệu
kỹ thuật Biến đổi có thể được sử dụng trong phân cụm dữ liệu.
3.2.1 Phân tích thành phần chính
Mục đích chính của phân tích thành phần chính (PCA) (Ding và He,
2004; Jolliffe, 2002) là giảm chiều cao của một chiều đặt dữ liệu bao gồm một
lượng lớn số biến tương quan và đồng thời giữ lại càng nhiều càng tốt của
biến đổi hiện diện trong tập dữ liệu. Các thành phần chính (PC) là các biến
mới được không tương quan và ra lệnh như vậy là người đầu tiên giữ lại vài
phần lớn các biến thể hiện diện trong tất cả các bản gốc biến.
Các PC được định nghĩa như sau. Cho v  v1 , v 2 ,, v d  là một vectơ của
d ngẫu nhiên biến, nơi ’ là hoạt động transpose. Bước đầu tiên là tìm một
hàm tuyến tính một a1v của các yếu tố của v có tối đa các phương sai, mà a1 là
một vectơ d-chiều a11 , a12 ,  , a1d  do đó,
-22-

d
a1 ' v   a1i vi
i 1

Sau khi tìm a1v, a2 v,, aj 1v , chúng tôi tìm một hàm tuyến tính aj v không
tương quan với a1v, a2 v,, aj 1v và có phương sai tối đa. Sau đó chúng ta sẽ tìm
thấy d chức năng như vậy tuyến tính sau khi bước d. Biến bắt nguồn thứ j
PC . Nhìn chung, hầu hết các biến thể trong v sẽ được chiếm bởi các PC vài
lần đầu tiên.
Để tìm mẫu của PC, chúng ta cần phải biết ma trận hiệp phương sai
 của v Trong hầu hết các trường hợp thực tế, ma trận hiệp phương sai
 chưa được biết, và nó sẽ được thay thế bằng một mẫu
ma trận hiệp phương sai . Đối với j = 1, 2,. . . , d, nó có thể được cho thấy thứ
j PC được cho bởi zj = aj v , nơi aj là một eigenvector của  tương ứng với
các thứ giá trị j lớn nhất λj.
Trong thực tế, ở bước đầu tiên, z1 = aj v có thể tìm thấy bằng cách giải
quyết tối ưu hoá vấn đề sau đây:
Maximize var a1v  a1a  1 ,
Nơi var a1v  được tính như sau
 
var a1' v  a1'  a1

Để giải quyết vấn đề tối ưu hóa ở trên, các kỹ thuật của nhân đấu
Lagrange có thể được sử dụng. Cho λ là một số nhân Lagrange. Ta muốn tối
đa hóa

a1'  a1   a1' a  1 .  (4.10)
Phương trình khác(4.10) với a1, chúng ta có
 a  a  0
1 1

  I a  0
d 1

Nơi Id là ma trận nhận dạng d x d


Vì  là giá trị riêng của  và a1 là vecto đặc trưng đồng vị.
a1'  a1  a1' a1   ,
-23-

a1 là vecto đặc trưng đồng vị với giá trị riêng lớn nhất của  . Trong
thực tế nó có thể được biểu diễn là một PC thứ j là aj v , nơi aj là một vecto
đặc trưng của tương ứng với thứ j lớn nhất giá trị riêng  j (Jolliffe, 2002).
Trong (Dinh và He, 2004), PCA là làm việc để giảm chiều của dữ liệu
thiết lập và sau đó thuật toán K-means được áp dụng trong không gian con
PCA.
Các ví dụ khác của PCA áp dụng trong phân tích cụm dữ liệu có thể
được tìm thấy trong (Yeung và Ruzzo, 2001). Trình diễn PCA là tương đương
với giá trị thực hiện phân hủy từ (SVD) trên các hiệp phương sai ma trận của
dữ liệu. ORCLUS sử dụng SVD (Kanth et al, 1998) kỹ thuật. Để tìm hiểu tùy
tiện theo định hướng không gian con với phân cụm dữ liệu tốt.
3.2.2 SVD
SVD là một kỹ thuật mạnh mẽ trong tính toán ma trận và phân tích,
chẳng hạn như việc giải quyết các hệ thống phương trình tuyến tính và xấp xỉ
ma trận. SVD cũng là một kỹ thuật nổi tiếng chiếu tuyến tính và đã được sử
dụng rộng rãi trong nén dữ liệu và ảo (Andrews và Patterson, 1976a, b). trong
mục này, phương pháp SVD là phương pháp tóm tắt.
Cho D  x1 , x2 ,, xn  là một số dữ liệu được đặt trong một không
gian d-chiều. Sau đó, D có thể được đại diện bởi một n x n ma trận X là
X  xij nd ,
Nơi xij giá trị thành phần của xi
Cho   1 , 2 ,, d  là cột của X,
1 n
j   xij ,
n  1 i 1
j  1,2,, d ,

và để cho en là một vectơ cột của n chiều dài với tất cả các yếu tố tương
đương với nó. Sau đó, SVD thể hiện X  en  là,
X  en   USV T (4.11)
trong đó U là một ma trận n × n trực giao, ví dụ, nghĩa là, UTU = I là
ma trận đơn vị. S là một ma trận chéo chứa các giá trị số ít, và V là một ma
trận unita d × d , ví dụ, VHV = I, nơi VH là ma trận chuyển vị liên hợp của V.
-24-

Các cột của ma trận V là vecto đặc trưng của ma trận hiệp phương sai
C của X; chính xác
1 T
C X X   T   V V T (4.12)
n
Kể từ khi C là ma trận chéo đối diện d × d, nó có d là số tự nhiên vecto
đặc trưng trực giao. Mà không mất tổng quát, để cho các giá trị riêng của C
giảm : λ1 ≥ λ2 ≥ … ≥ λd. Hãy σj (j = 1,2 ,..., d) là độ lệch chuẩn của cột thứ j
của X, nghĩa là,
1
1
xij   j 2  .
n


2
j 
 n i 1 
 của C là bất biến theo luân phiên, nghĩa là,
d d

    2j   j
j 1 j 1

Chú ý rằng en X  n và en en  n từ phương trình (4.11) và (4.12),


T T

chúng ta có
VS T SV T  VS TU TUSV T
  X  en    X  en  
T

 X T X   T enT X  X T en    T enT en 
 X T X  n T 
nVV T . (4.13)
Kể từ khi V là một ma trận trực giao, từ phương trình (4,13), các giá trị
từ có liên quan đến các giá trị riêng bởi
s 2j  n j , j  1,2,d .

Các vecto đặc trưng chiếm các máy tính của X, và các tính năng không
tương quan sẽ được thu được do chuyển đổi Y   X  en  V . PCA chọn các
tính năng với giá trị riêng cao nhất.
3.2.3 Phép biến đổi Karhunen-Loève
Các phép biến đổi Karhunen-Loève (KL) có liên quan với các giải thích
cấu trúc dữ liệu thông qua một số tuyến tính kết hợp của các biến. Giống như
PCA, phép biến đổi KL cũng là cách tối ưu cho dự án d- chiều điểm để giảm
điểm chiều sao cho sai số của dự án (tức là tổng của khoảng cách bình
phương (SSD)) là tối thiểu (Fukunaga, 1990).
-25-

Cho D  x1 , x2 ,, xn  là một tập dữ liệu không gian d chiều, và X là


đồng vị ma trận d x d. nghĩa là X  xij nd với xij là giá trị j thành phân của xi.

xi i  1,2,, n  là vecto d chiều. Chúng có thể hiển thị không lỗi bằng
phép tính tổng vecto tuyến tính độc lập như
d
xi   yij Tj  yi T
j 1

hoặc X  Y T , (4.14)
nơi yi   yi1, yi 2,, yid , và
 y1 
 
y 
Y   2 ,  1 ,2 ,,d 

 
y 
 d
Các ma trận d × d cơ sở  và chúng ta biết thêm có thể cho rằng những
hàng  hình thức một bộ trực giao, nghĩa là,

1 for i  j,
i Tj  
0 for i  j,
hay  T  I dd ,
Nơi I d d là ma trận đơn vị I d d
Sau đó , từ phương trình (4.14), bộ phận của yj có thể được tính toán
bằng
yi  xi , i  1,2,, n,

hoặc
Y  X
Vì vậy, Y chỉ đơn giản là một biến đổi trực giao của X.  j được gọi là
véc tơ thứ j tính năng và yij là thành phần thứ j của mẫu xi trong không gian
tính năng này. Để giảm bớt chiều, chúng ta chỉ chọn m(m<d) tính năng vectơ
có thể gần đúng X tốt. Xấp xỉ có thể được thu được bằng cách thay thế các
thành phần của yj với hằng chọn trước (Fukunaga, 1990, trang 402):
d d
xˆi (m)   yij Tj  b  ij
T
j ,
j 1 j  m 1
-26-

 1T   mT 1 
   
hoặc xˆi (m)  Y (1, m)      ,
 T    T 
 m  d 

nơi Y (1, m) là ma trận n x m có được bằng cột m đầu tiên của Y, có nghia
là Y(1, m)  yij nm , và một ma trận n  (m  d ) với (i, j) nhập từ bi,m+j.
Mà không mất tổng quát, chúng ta giả định rằng chỉ có các thành phần
m đầu tiên của mỗi yj được tính toán. Sau đó, các lỗi của các kết quả là xấp xỉ
d
xi (m)  xi  xˆi (m)  (y
j  m 1
ij  bij ) Tj ,

 mT 1 
 
shoặc X (m)  (Y (m  1, d )  B)  ,
 T 
 d 
Nơi Y (m  1), d ) là ma trận n  (m  d ) được hình thành bởi cột cuối m-d
cột của Y

Chú ý rằng X và X là các ma trận ngẫu nhiên, bởi vậy lỗi vuông xấp
xr là
 2 (m)  E X (m)  2


 E Tr (X (m)X T (m)) 
 E Tr (Y (m  1, d )  B)(Y (m  1, d )  B) ) T

 Ey  bij  . 
n d

2
ij (4.15)
i 1 j  m 1

Với mỗi lựa chọn điều kiện hằng số bij, Ta nhận được giá trị  2 ( m ) . Lựa
chọn tối ưu cho bij là một trong  2 ( m ) nhỏ nhất. Từ phương trình (4.15) Lựa
chọn tối ưu cho bij, là
 2
bij

 (m)  2 Eyij  bij  0, 
Mà đã cho
bij  Eyij   Exi  j ,

hoặc
B  EY (m  1)m, d   E ( X )(m 1 , , d ).
-27-

Cho  là ma trận hiệp phương sai của X, do đó chúng ta có


x

 ( X  EX ) ( X  EX )
x
T

 x1   Ex1

 ( x , , x )  EX  ,  EX n 
T
1
T
n
T T
  
)       


 xn   Exn 


n

 ( x  EX )
i 1
i i
T
( xi  Exi ).

Do đó  2 ( m ) có thể được viết lại như sau :

 Ey  bij  
n d
 2 ( m)   ij
2

i 1 j  m 1

n d
   x  Ex  x  Ex 
T T
j i i i i j
i 1 j  m 1

n
 n

   Tj   xi  Exi T xi  Exi  j
j  m 1  i 1 
d
  
j  m 1
T
j X
j. (4.16)

Nó có thể chỉ ra lựa chọn tối ưu thỏa mãn  j (Fukunaga,1990)


 X
 j   j j .
Do đó  j là vecto đặc trưng của  x
.Do đó phương trình (4.16) trở
thành
d
 2 ( m)  
j  M 1
j

Từ ma trận hiệp phương sai của X,  x


là semidefinite đối diện, nó có
giá trị riêng d không âm. Nếu chúng tôi chọn vecto đặc trưng m tương ứng
với các giá trị riêng m lớn nhất, sau đó là lỗi vuông sẽ được giảm thiểu.
-28-

CHƢƠNG II
CÁC THUẬT TOÁN PHÂN CỤM DỮ LIỆU
1. Thuật toán phân cum dữ liệu dựa vào phân cụm phân cấp
1.1 Thuật toán BIRCH
Thuật toán phân cụm khác cho tập dữ liệu lớn, được gọi là BIRCH. Ý
tưởng của thuật toán là không cần lưu toàn bộ các đối tượng dữ liệu của các
cụm trong bộ nhớ mà chỉ lưu các đại lượng thống kê. Thuật toán đưa ra hai
khái niệm mới để theo dõi các cụm hình thành , phân cụm đặc trưng là tóm tắt
thông tin về một cụm và cây phân cụm đặc trưng(cây CF) là cây cân bằng
được sử dụng lưu trữ cụm đặc trưng( được sử dụng để mô tả cụm tóm tắt).
Trước tiên được gọi là cụm đặc trưng, là một bộ ba(n, LS, SS), trong đó n là
số các điểm trong phân hoạch cụm con, LS là tổng số các giá trị thuộc tích và
SS là tổng bình phương của các điểm đó. Đặc trưng tiếp theo là cây CF, mà
đơn giản là cây cân bằng mà lưu bộ ba này. Có thể chứng mình rằng, các đại
lượng thống kê chuẩn, như là độ đo khoảng cách, có thể xác định từ cây CF.
Hình 4.10 dưới đây biểu thị một ví dụ về cây CF. Có thể thấy rừng, tất cả các
nút trong cây lưu tổng các đặc trưng cụm CF, các nút con, trong khi đó các
nút là lưu trữ các đặc trưng của các cụm dữ liệu.
Cây CF chứa các nút trong và nút là, nút trong là nút chứa các nút con
và nút lá thì không có con. Nút trong lưu trữ các tổng đặc trưng cụm(CF) của
các nút con của nó. Một cây (CF) được đặc trưng bởi hai tham số :
- Yếu tố nhánh (Braching Factor – B) : Nhằm xác định tối đa các nút
con của một nút lá trong của cây
- Ngưỡng(Threshold – T) : khoảng cách tối đa giữa bất kỳ một cặp đối
tượng trong nút lá của cây, khoảng cách này còn gọi là đường kính của các
cụm con được lưu tại các nút lá.
Hai tham số này có ảnh hưởng đến kích thước của cây CF. thuật toán BIRCH
thực hiện gồm hai giai đoạn:
Giai đoạn 1 : BIRCH quét tất cả các đối tượng trong CSDL để xây
dựng cây CF khởi tọa, mà được lưu trữ trong bộ nhớ. Trong giai đoạn này ,
các đối tượng lần lượt được chèn vào nút lá gần nhất của cây CF(nút lá của
cây đóng vai trò là cụm con), sau khi chèn xong thì tất cả các nút trong cây
CF được cập nhật thông tin. Nếu đường kính của cụm con sau khi chèn là lớn
-29-

hơn ngưỡng T, thì nút lá được tách. Quá trình lặp lại cho đến khi tất cả các đối
tượng trong cây chỉ được đọc một lần, để lưu toàn bộ cây CF trong bộ nhớ thì
cần phải điều chỉnh kích thước của cây CF thông qua điều chỉnh ngưỡng T.
Giai đoạn 2 : BIRCH lựa chọn một thuật toán phân cụm(như thuật toán
phân cụm phân hoạch) để thực hiện phân cụm cho các nút lá của cây CF

Hình 4.10 : Cây CF sử dụng trong BIRCH

Thuật toán BIRCH thực hiện qua các bƣớc cơ bản nhƣ sau :
1. Các đối tượng dữ liệu lần lượt được chèn vào cây C, sau khi chèn hết các
đối tượng thì thu được cây CF khởi tạo. Một đối tượng được chèn vào nút
là gần nhất tạo thành cụm con. Nếu đường kính của cụm con này lớn hơn T
thì nút lá được tách ra. Khi một đối tượng thích hợp được chèn vào nút lá,
tất cả các nút trỏ tới gốc của cây được cập nhật với thông tin cần thiết
2. Nếu cây CF hiện thời không có đủ bộ nhớ trong khi tiến hành xây dựng
một cây CF nhỏ hơn: Kích thước của cây CF được điều khiển bởi tham số
F và vì vậy việc chọn một giá trị lớn hơn cho nó sẽ hòa nhập một số cụm
con thành một cụm, điều này làm cho cây CF nhỏ hơn. Bước này không
cần yêu cầu đọc dữ liệu lại từ đầu nhưng vẫn đảm bảo hiệu chỉnh cây dữ
liệu nhỏ hơn.
3. Thực hiện phân cụm: Các nút lá cây CF lưu trữ các đại lượng thống kê
-30-

của các cụm con. Trong bước này, BIRCH sử dụng các đại lượng thống kê
này để áp dụng một số kỹ thuật phân cụm, ví dụ K-means và tạo ra một
khởi tạo cho phân cụm.
4. Phân phối lại các đối tượng dữ liệu bằng cách dùng các đối tượng trọng
tâm cho các cụm được khám phá từ bước 3: Đây là một bước tùy chọn để
duyệt lại tập dữ liệu và gán lại nhãn cho các đối tượng dữ liệu tới các trọng
tâm gần nhất. Bước này nhằm để gán nhãn cho các dữ liệu khởi tạo và loại
bỏ các đối tượng ngoại lai

Với cấu trúc cây CF được sử dụng, BIRCH có tốc độ thực hiện PCDL
nhanh và có thể áp dụng đối với tập CDSL lớn, BIRCH cũng có hiệu quả khi
áp dụng với tập dữ liệu tăng trưởng theo thời gian. BIRCH thực hiện tính toán
khá tốt, độ phức tạp tính toán của BIRCH là tuyến tính tỷ lệ với số các đối
tượng, do BIRCH chỉ duyệt toàn bộ dữ liệu một lần với một lần quét thêm tùy
chọn( thực hiện phân cụm lại các nút lá cây của CF), có thể được đo trong
thời gian O(n) với n là số đối tượng dữ liệu. thuật toán này kết hợp các cụm
gần nhau và xây dựng lại cây CF, tuy nhiên mỗi nút trong cây CF có thể chỉ
lưu trữ một số hữu hạn bởi kích thước của nó. BIRCH vẫn có một hạn chê :
thuật toán này có thể không xử lý tốt nếu các cụm không có hình dạng cầu,
bởi vì nó sử dụng khái niệm bán kính hoặc đường kính để kiểm soát ranh giới
các cụm và chất lượng của các cụm được khám phá không được tốt. Nếu
BIRCH sử dụng khoảng cách Eucle, nó thực hiện tốt chỉ với các dữ liệu số,
mặt khác tham số vào T có ảnh hưởng rất lớn tới kích thước tự nhiên của
cụm. Việc ép các đối tượng dữ lieeujlamf cho các đối tượng của cụm có thể là
đối tượng kết thúc của cụm khác, trong khi các đối tượng gần nhau có thể bị
hút bởi các cụm khác nếu chúng được biểu diễn cho thuật toán theo một thứ
tự khác. BIRCH không thích hợp với dữ liệu đa chiều.
1.2 Thuật toán CURE
Trong khi 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 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
-31-

nằm rải rác trong 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 hòa 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 là hình cầu. Việc co lại các
cụm có tác dụng 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 trường hợp có các phần tử ngoại lại và
làm cho 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 CSDL lớn mà không làm giảm
chất lượng phân cụm. Hình 3.14 dưới đây là ví dụ về quá trình xử lý của
CURE

Hình 3.14 : Cụm dữ liệu khai phá bởi thuật toán CURE
Để xử lý được các CSDL lớn, CURE sử dụng 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 đó được tiến hành phân cụm trên mỗi phân hoạch, như vậy mỗi phân
hoạch là từng phần đã được phân cụm, các cụm thu hoạch, như vậy mỗi phân
hoach là từng phần đã được phân cụm, 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.
-32-

Thuật toán CURE đƣợc thực hiện qua các bƣớc cơ bản sau :
1. Chọn một mẫu ngẫu nhiên từ tập dữ liệu ban đầu.
2. 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 ở đâ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 mẫu).
3. Phân cụm các điểm của mỗi nhóm : Thực hiện PCDL cho các
nhóm cho đến khi mỗi nhóm được phân thành n’/pq(với q>1).
4. 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ỏ
5. 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.
6. Đánh dấu dữ liệu với các nhãn tương ứng.

Độ phức tạp tính toán của thuật toán CURE là O(n2log(n)). CURE là
thuật toán tin cậy trong việc khám phá ra các cụm với hình thù 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ệ co của các phần tử đại diện.
1.3 Thuật toán ANGNES
Phương pháp phân hoạch ANGNES là kỹ thuật kiểu tích tụ. ANGNES
bắt đầu ở ngoài với mỗi đối tượng dữ liệu trong các cụm riêng lẻ. Các cụm
được hòa nhập theo một số loại của cơ sở luật, cho đến khi chỉ có một cụm ở
đỉnh của phân cấp, hoặc gặp điều kiện dừng. Hình dạng này của phân cụm
phân cấp cũng liên quan đến tiếp cận bottom-up bắt đầu ở dưới với các nút lá
trong mỗi cụm riêng lẻ và duyệt lên trên phân cấp tới nút gốc, nơi tìm thấy
cụm đơn cuối cùng với tất cả các đối tượng dữ liệu được chứa trong cụm đó.
-33-

1.4 Thuật toán DIANA


DIANA thực hiện đối lập với AGNES. DIANA bắt đầu với tất cả các
đối tượng dữ liệu được chứa trong một cụm lớn và chia tách lặp lại, theo phân
loại giống nhau dựa trên luật, cho đến khi mỗi đối tượng dữ liệu của cụm lớn
được chia tách hết. Hình dang của cụm phân cấp cùng liên quan đế tiếp cận
top-down bắt đầu tại mức đỉnh nút gốc, với tất cả các đối tượng dữ liệu, trong
một cụm, và duyệt xuống các nút lá dưới cùng nơi tất cả các đối tượng dữ
liệu từng cái được chứa trong cụm của chính mình.
Trong mỗi phương pháp của hai phương pháp, có thể số các cụm dẫn
tới các mức khác nhau trong phân cấp bằng cách duyệt lên hoặc xuống cây.
Mỗi mức có thể khác nhau số các cụm và tất nhiên kết quả cũng khác nhau.
Một hạn chế lớn của cách tiếp cận này là các cụm được hòa nhập hoặc phân
chia một lần, không thể quay lại quyết định đó, cho dù hòa nhập hoặc phân
chia không phải là thích hợp ở mức đó
1.5 Thuật toán ROCK
--------Main module---------
Procedure cluster(S,k)
Begin
1. link:=compute_links(S)
2. for each s  S do
3. q[s]:= build_local heap(link, s)
4. Q:=build_global heap(S, q)
5. while size(Q)> k do{
6. w:= extract_max(Q)
7. v:= max(q[u])
8. delete(Q, v)
9. w:= merge(u,v)
10. for each x  q[u]  q[v] do {
11. link[x, w]:=link[x, u]+ link[x, v]
12. delete(q[x], u); delete(q[x], v)
13. insert(q[x], w, g(x, w); insert(q[x], w, g(x, w)
14. update(Q, x, q[x])
15. }
-34-

16. insert(W, w, q[w]


17. deallocate(q[u]); deallocate(q[v])
18. }
end

---------------------Compute_links Procedure-------------
Procedure compute_links(S)
Begin
1. Compute nbrlist[i] for every point i in S
2. Set link[i,j] to be zero all i,j
3. for i:=1 to n do {
4. N:= nbrlist[i]
5. for j:=1 to [N]-1 do
6. for 1:= j+1 to [N]-1 do
7. link[N[j], N[l]:=link[N[j], N[l]+1
8. }
End

1.6 Thuật toán Chameleon


Phương pháp Chameleon một cách tiếp cận khác trong việc sử dụng mô
hình động để xác định các cụm nào được hình thành. Bước đầu tiên của
Chameleon là xây dựng một đồ thị mật độ thưa và sau đó ứng dụng một thuật
toán phân hoạch đồ thị để PCDL với số lớn của các cụm con. Tiếp theo,
Chameleon thực hiện tích tụ phân cụm phân cấp, như AGNES, bằng hòa
nhập các cụm con nhỏ theo hai phép đo, mối quan hệ liên thông và mối quan
hệ gần nhau của các nhóm con. Do đó, thuật toán không phụ thuộc vào người
sử dụng các tham số như K-means và có thể thích nghi.
Thuật toán này khảo sát mô hình động trong phân cụm phân cấp. Trong
đó, hai cụm được hòa nhập nêu giữa hai cụm có liên quan mật thiết tới quan
hệ kết và gần nhau của các đối tượng trong các cụm. Quá trình hòa nhập dễ
dàng khám phá các cụm tự nhiên và đồng nhất, ứng dụng cho tất cả các kiểu
dữ liệu miễn là hàm tương tự được xác định.
-35-

Nó khắc phục được nhược điểm các phương pháp CURE và ROCK. Lý
do là CURE và lược đồ liên quan lờ đi thông tin về liên kết của các đối tượng
trong hai cụm khác nhau, trong khi ROCK lược đồ liên quan lờ đi thông tin
về gần nhau của hai cụm mà lại chú trọng quá về liên kết.
CURE sử dụng thuật toán phân hoạch đồ thị để phân cụm các đối tượng
dữ liệu vào trong một số lớn một cách tương đối nhỏ của các cụm con.
Chameleon sử dụng thuật toán phân cụm phân cấp để tìm các cụm xác thực
bằng cách lặp nhiều lần kết hợp hoặc hòa nhập các cụm con. Để xác định các
cặp của nhiều cụm con tương tự, phải tính toán cả hai liên kết và gần nhau của
các cụm, đặc biệt các đặc trưng bên trong của các cụm đang được hòa nhập.
Như vậy, nó không phụ thuộc vào mô hình tĩnh và có thể từ động thích
nghi với đặc trưng bên trong của các cụm đang được hòa nhập. Nó có khả
năng hơn để khám phá các cụm có hình thù bất kỳ có chất lượng cao hơn
CURE và DBSCAN nhưng chi phí xử lý dữ liệu đa chiều phụ thuộc vào O(n2)
thời gian cho n các đối tượng trong trường hợp xấu nhất.
2. Thuật toán phân cụm dữ liệu mờ
Phân cụm dữ liệu mờ (FCM) là phương pháp phân cụm dữ liệu 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 quát khái niệm phân hoạch mờ để mô tả cấu
trúc cụm 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
hoạch mờ. Dunn(19730 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ũ m để
xây dựng thuật toán phân cụm mờ Fuzzy C-means(FCM), và được chứng
minh độ hội tụ của các thuật toán là cực tiểu cục bộ.
Thuật toán FCM đã được áp dụng thành công trong giải quyết một số
lớn các bài toán PCDL như trong nhận dạng mẫu, xử lý ảnh, y học,… Tuy
nhiên, nhược điểm lớn nhất của FCM là nhạy cảm với 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 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 (Kellet, 1993),
-36-

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( PCM ).
2.1 Thuật toán FCM
Thuật toán FCM gồm một chuỗi các phép lặp qua lại giữa phương trình
(5) và (6). Như vậy FCM sử dụng phép lặp để tối ưu hàm mục tiêu, dựa trên
đo đạc độ tương tự có trọng số giưa xk và cụm trung tâm Vi, sau mỗi vòng
lặp, thuật toán tính toán và cập nhật phân tử ujk trong ma trân phân hoạch U.
Phép lặp sẽ dừng khi max ij uijk 1  uijk   , trong đó  là chuẩn kết thúc giữa 0
và 1, trong khi k là các bước lặp. Thủ tục này hội tụ tới cực tiểu cục bộ hay
điểm yên ngựa của Jm(u, V). Thuật toán FCM tính toán ma trận phân hoạch U
và kích thước của các cụm để thu được các mô hình mờ từ ma trận này.
Các bƣớc thực hiện của thuật toán FCM nhƣ sau:
Input : Số cụm c và tham số mũ m cho hàm mục tiêu J;
Output : c cụm dữ liệu sao cho hàm mục tiêu trong (1) đạt giá trị cực tiểu;
Begin
1. Nhập tham số c (1<c<n) m  1, . Khởi tạo mà trận
 
V  vij ,V ( 0)  R sxc , j  0;

2. Repeat
j:=j+1
Tính ma trận phân hoạch mờ U(j) theo công thức (5)
Cập nhật các trung tâm V ( j )  v1( j ) , v2( j ) ,..., vc( j ) dựa vào (6) và U(j)
3. 
Until u ( j 1)  U ( j ) F

 ;

4. Trình diễn các cụm kết quả;


End

Trong đó , * F là tiêu chuẩn Frobenious được định nghĩa như sau:


* F  Tr (UU T )   u 2 và tham số  trước.
2
i k ik

Việc chọn các tham số cụm rất ảnh hưởng đến kết quả phân cụm, tham
số này thường được chọn theo phép ngẫu nhiên hoặc theo Heuristic.
Đối với m 1 thì thuật toán K-means trở thành thuật toán rõ. Đối với
1
m   thì thuật toán FCM trở thành thuật toán phân cụm mờ với : uik 
c
-37-

Chưa có quy tắc nào nhằm lựa chọn tham số m đảm bảo việc phân cụm
hiệu quả, thông thường chọn m = 2
Độ phức tạp của thuật toán FCM tương đương với độ phức tạp của
thuật toán K-means trong trường hợp số đối tượng của tập dữ liệu cần phân
cụm là rất lớn. Tóm lại, thuật toán phân cụm mờ FCM là một mở rộng của
thuật toán K-means nhằm để khám phá ra các cụm chồng lên nhau, tuy nhiên,
FCM vẫn chứa đựng các nhược điểm của thuật toán K-means trong việc xử lý
đối với các phần tử ngoại lai và nhiễu trong dữ liệu. Thuật toán εFCM được
trình bày dưới đây là một mở rộng của thuật toán FCM nhằm khắc phục các
nhược điểm này.
2.2 Thuật toán εFCM
Input : Số cụm c và các tham số m, ε cho hàm mục tiêu J;
Output : Các cụm dữ liệu sao cho hàm mục tiêu trong (2) đạt giá trị cực
tiểu;
Begin
1. Nhập tham số c(1<c<n), m  1, và   0 . Khởi tạo ma trận V=[vij],
V(0), thiết lập j = 0;
2. Repeat
j:=j+1;
Tính ma trận phân hoạch mờ U(j)
Cập nhật các trung tâm V ( j )  v1( j ) , v2( j ) ,..., vc( j ) 
3. Until u ( j 1)  U ( j ) F   ;
4. Trình diễn các cụm kết quả;
End.
3. Thuật toán phân cụm dữ liệu dựa vào cụm trung tâm
3.1 . Thuật toán K – means
K- means là thuật toán phân cụm mà định nghĩa các cụm bởi trung tâm
của các phương tử. Phương pháp này dựa trên độ đo khoảng cách 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à trung tầm gần, và
tính toán tại trung tâm của mỗi cụm trên cơ sở gán mới cho các đối tượng.
Quá trình này dừng khi các trung tâm hội tụ
-38-

Hình 3.2 : Các thiết lập để xác định danh giới các cụm ban đầu
Trong phương pháp K-means, chọn một giá trị k và sau đó chọn ngẫu
nhiên k trung tâm của các đối tượng dữ liệu. Tính toán khoảng cách giữa đối
tượng dữ liệu trung bình mỗi cùm để tìm kiếm phần tử nào là tương tự và
thêm vào cụm đó. Từ khoảng cách này có thể tính toán trung bình mới của
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ác cụm k
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 chứa n đối tượng trong không gian d chiều Xi = {xi1,
xi2,…xid}, i = 1  n, sao cho hàm tiêu chuẩn :
k
E   xC D 2  x  mi  đạt giá trị tối thiểu,
i
i 1

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 cụm là một vecto, trong đó giá trị của mỗi phần tử của
nó là trung cộng của các thành phần tương ứng của các đối tượng vecto 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ác 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 nên 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.
-39-

Hình 3.3 Tính toán trọng tâm của các cụm mới
Các bƣớc cơ bản của thuật toán K – means
Input : Số cụm k và các trọng tâm cụm m j  j 1
k

Output : các cụm C i  1  i  k  và hàm tiêu chuẩn E đạt giá trị tối thiểu.
Begin
Bƣớc 1 : Khởi tạo
Chọn k trọng tâm m j  j 1 ban đầu trong không gian Rd (d là số
k

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ỗi điểm X i 1  i  k  , tính toán khoảng cách của nó tới
mỗi trọng tâm m j 1  i  k  . Sau đó tìm trọng tâm gần nhất đối với điểm.
Bƣớc 3 : Cập nhật lại trọng tâm
Đối với mỗi 1  i  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 vecto đối tượng dữ liệu.
Điều kiện dừng :
Lặp lại các bước 2 và 3 cho đến khi các trọng tâm của cụm không
thay đổi.
End.
-40-

K- means biểu diễn các cụm bởi các trọng tâm của các đối tượng trong
cụm đó Thuật toán K-means chi tiết được trình bày :
BEGIN
1. Nhập n đối tượng dữ liệu
2. Nhập k cụm dữ liệu
3. MSE = 
4. For I = 1 to k do mi  X i(i1)*n/k  ; // khởi tạo k trọng tâm
5. Do {
6. OldMSE = MSE
7. MSE’ = 0
8. for j = 1 to k do
9. {m’[j]=0; n’[j]=0}
10. End for
11. For I =1 to n do
12. For j =1 to k do
13. Tính toán khoảng cách Euclide bình phương :
D2(x[i]; m[j]
14. Endfor
15. Tìm trọng tâm gần nhất m[h] tới X[i]
16. m’[h] = m’[h] + X[i] ; n’[h] = n’[h]+1;
17. MSE’=MSE’ + D2(x[i]; m[j]
18. Endfor
19. n[j] = max(n’[j], 1); m[j] = m’[j]/n[j];
20. MSE’=MSE’
21. } while (MSE’<=OldMSE)
END.
Trong đó :
- MSE : Sai số bình phương trung bình hay là hàm tiêu chuẩn
- D2(x[i]; m[j] : Khoảng cách Euclide từ đối tượng thứ i tới trọng tâm j;
- OldMSE m’[j], n’[j] : Biến tạm lưu giá trị cho trạng thái trung gian
cho các biến tương ứng
-41-

Hình 3.6 : Ví dụ hình dạng cụm dữ liệu sau khi phân cụm bằng K-means
Chất lượng của thuật toán K –mean phụ thuộc nhiều vào các tham số
đầu vào như : số cụm k, và k trọng tâm khởi tạo ban đầu. Trong trường hợp
các trọng tâm khởi tạo ban đầu mà quá lệch so với các trọng tâm cụm tự nhiên
thì kết quả phân cụm của K – means là rất thấp, nghĩa là các cụm dữ liệu được
khám phá rất lệch so với các cụm trong thực tế. Trên thực tế, chưa có một giải
pháp nào để chọn tham số đầu vào, giải pháp thường được sử dụng nhất là thử
nghiệm với các giá trị đầu vào , giải pháp thường được sử dụng nhất là thử
nghiệm với giá trị đầu vào k khác nhau rồi sau đó chọn giải pháp tốt nhất.
3.2 Thuật toán PAM
Thuật toán PAM là thuật toán mở rộng của thuật toán K-means nhằm
có khả năng xử lý hiệu quả đối với dữ liệu nhiễu hoặc phần tử ngoại lai,
PAM sử dụng các đối tượng medoid để biểu diễn cho các cụm dữ liệu, một
đối tượng medoid là đối tượng đặt tại vị trí trung tâm nhất bên trong mỗi cụm.
Vì vậy, đối tượng medoid ít bị ảnh hưởng của các đối tượng ở rất xa trung
tâm, trong khi đó các trọng tâm của thuật toán K – means lại rất bị tác động
bởi các điểm xa trung tâm này. Ban đầu, PAM khởi tạo k đối tượng medoid
và phân phối các đối tượng còn lại vào các cụm với đối tượng medoid đại
diện tương ứng sao cho chúng tương tự đối với medoid trong cụm nhất.
Giả sử Oj là đối tượng không phải medoid mà Om là một đối tượng
medoid, khi đó ta nói Oj thuộc về cụm có đối tượng medoid là Om làm đại
diện nếu d(Oj, Om) = minOe(Oj, Oe); trong đó d(Oj, Om) là độ phi tương tự giữa
Oj và Oe, minOe là giá trị nhỏ nhất của độ phi tương tự giữa Oj và tất cả các
đối tượng medoid của các cụm dữ liệu. chất lượng của mỗi cụm được khám
phá được đánh giá thông qua độ phi tương tự trung bình giữa một đối tượng
và đối tượng medoid tương ứng với cụm của nó, nghĩa là chất lượng phân
cụm được đánh giá thông qua chất lượng của tất cả các đối tượng medoid. Độ
-42-

phi tương tự được xác định bằng độ đo khoảng cách, thuật toán PAM được áp
dụng cho dữ liệu không gian. Để xác định các medoid, PAM được áp dụng
cho dữ liệu không gian. Để xác định các medoid, PAM bắt đầu bằng cách lựa
chon k đối tượng medoid bất kỳ. Sau mỗi bước thực hiện , PAM cố gắng hoán
chuyển giữa đối tượng Medoid Om và một đối tượng Op, không phải là
medoid, miễn là sự hoán chuyển này nhằm cải tiến chất lượng của phân cụm,
quá trình này kết thúc khi chất lượng phân cụm không thay đổi. Chất lượng
phân cụm được đánh giá thông qua hàm tiêu chuẩn, chất lượng phân cụm tốt
nhất khi hàm tiêu chuẩn đạt giá trị tối thiểu.
PAM tính giá trị Cjmp cho tất cả các đối tượng Oj để làm căn cứ cho
việc hoán chuyển giữa Om và Op.
Om : là đối tượng medoid hiện thời cần được thay thế :
Op : là đối tượng medoid mới thay thế cho Om;
Oj : Là đối tượng dữ liệu ( Không phải medoid) có thể được di chuyển
sang cụm khác;
Oj,2 : Là đối tượng medoid hiện thời gần đối tượng Oj nhất

Các bước thực hiện thuật toán PAM


Input : Tập dữ liệu có n phần tử, số cụm k.
Output : k cụm dữ liệu sao cho chất lượng phân hoạch là tốt nhất.
BEGIN
1. Chọn k đối tượng medoid bất kỳ;
2. Tính TCmp cho tất cả các cặp đối tượng Om, Op. Trong đó, Om là đối
tượng medoid và Op là đối tượng không phải medoid;
3. Chọn cặp đối tượng Om và Op. Tính MinOm, MinOp, TCmp, nếu TCmp
là âm thay thế Om bởi Op và quay lại bước 2. Nếu TCmp dương,
chuyển sang bước 4;
4. Với mỗi đối tượng không phải medoid, xác định đối tượng medoid
tương tự với nó nhất đồng thời gán nhãn cụm cho chúng.
END.
3.3 Thuật toán CLARA
Thuật toán CLARA được đưa ra nhằm khắc phục nhược điểm của thuật
toán PAM trong trường hợp giá trị k và n là lớn. CLARA tiến hành trích mẫu
cho tập dữ liệu có n phần tử, nó áp dụng thuật toán PAM cho mẫu này và tìm
-43-

ra các đối tượng trung tâm medoid cho mẫu được trích ra từ dữ liệu này. Nếu
mẫu dữ liệu được trích theo một cách ngẫu nhiên, thì các medoid của nó xấp
xỉ với các medoid của toàn bộ tập dữ liệu ban đầu. Để tiến tới một xấp xỉ tốt
hơn, CLARA đưa ra nhiều cách lấy mẫu và thực hiện phân cụm cho mỗi
trường hợp, sau đó tiến hành chọn kết quả phân cụm tốt nhất khi thực hiên
phân cụm trên mẫu này. Để đo chính xác, chất lượng của các cụm được đánh
giá thông qua độ phi tương tự trung bình của toàn bộ các đối tượng dữ liệu
trong tập đối tượng dữ liệu ban đầu. Kết quả thực nghiệm chỉ ra rằng, 5 mẫu
dữ liệu có kích thước 40 +2k cho kết quả tốt. Các bước thực hiện của thuật
toán CLARA :
CLARA (5);
BEGIN
1. For i = 1 to 5 do
2. Lấy một mẫu có 40 + 2k đối tượng dữ liệu ngẫu nhiên từ tập dữ liệu
và áp dụng thuật toán PAM cho mẫu dữ liệu này nhằm để tìm các đối
tượng medoid đại diện cho các cụm.
3. Đối với mỗi tượng Oj trong tập dữ liệu ban đầu, xác định đối tượng
medoid tương tự nhất trong số k đối tượng medoid.
4. Tính đố phi tương tự trung bình cho phân hoạch các đối tượng thu
được ở bước trước, nếu giá rị này bé hơn giá trị tối thiểu hiện thời thì
sử dụng giá trị này thay cho giá trị tối thiểu ở trạng thái trước, như
vậy, tập k đối tượng medoid xác định ở bước này là tốt nhất cho đến
thời điểm này.
5. Quay về bước 1
END
Phương pháp medoid không hiệu quả với trường hợp tập dữ liệu lớn,
như vậy, phương pháp dựa trên mẫu được gọi là CLARA. Ở đây, một phần
nhỏ dữ liệu hiện thời được chọn như một đại diện của dữ liệu thay vì sử dụng
toàn bộ dữ liệu và sau đó medoid được chọn từ mẫu sử dụng PAM. Nếu mẫu
được chọn theo cách ngẫu nhiên thì nó có thể cần phải đại diện tập dữ liệu
gốc. Các đối tượng đại diện (medoids) được chọn là tương tự mà đã được
chọn từ tập dữ liệu. Nó đưa ra nhiều mẫu của tập dữ liệu, áp dụng PAM trên
-44-

mỗi mẫu, và trả lại cụm tốt nhất ở đầu ra, như vậy, CLARA có thể xử lý với
tập dữ liệu lớn hơn PAM.
3.4 Thuật toán CLARANS
CLARANS cũng sử dụng kiểu k-medoids , nó kết hợp thuật toán PAM
với chiến lược tìm kiếm kinh nghiệm mới. Ý tưởng cơ bản của CLARANS là
không xem xét tất cả các khả năng có thể thay thế các đối tượng tâm medoids
bới một đối tượng khác, nó ngay lập tức thay thế các đối tượng tâm này nếu
việc thay thế này có tác động tốt đến chất lượng phân cụm chứ không cần xác
định cách thay thế tối ưu nhất.
CLARANS lấy ngẫu nhiên một đối tượng của k đối tượng medoid
trong tâm cụm và cố gắng thay thế nó với một đối tượng chọn ngẫu nhiên
trong (n-k) đối tượng còn lại. Cụm thu được sau khi thay thế đối tượng trung
tâm được gọi là một láng giềng của phân hoạch cụm trước đó. Số các láng
giềng được hạn chế bởi tham số do người dùng đưa vào là Maxneighbor, quá
trình lựa chọn các láng giềng này hoàn toàn ngẫu nhiên. Tham số Numlocal
cho phép người dùng xác định số vòng lặp tối ưu cục bộ được tìm kiếm.
Không phải tất cả các láng giếng được duyệt mà chỉ có Maxneighbor số láng
giềng được duyệt. Nếu một láng giềng tốt hơn được tìm thấy, thì CLARANS
di chuyển láng giềng đó tới nút và quá trình bắt đầu lặp lại; nếu không kết
quả cụm hiện thời là tối ưu cục bộ. Nếu tối ưu cục bộ được tìm thấy, thì
CLARANS bắt đầu với lựa chọn nút ngẫu nhiên mới trong tìm kiếm tối ưu
cục bộ mới.
CLARANS không thích hợp với tập dữ liệu lớn bởi vì nó lấy phần nhỏ
của toàn bộ tập dữ liệu và phần này được chọn để đại diện toàn bộ tập dữ liệu
và thực hiện sau đó. CLARANS không bị giới hạn không gian tìm kiếm như
đối với CLARA, và trong cùng một lượng thời gian thì chất lượng của các
cụm phân được là lớn hơn CLARA.
Một số khái niệm sử dụng trong thuật toán CLARANS được định nghĩa
như sau:
Giả sử O là một tập có n đối tượng và M  O là tập các đối tượng tâm
mediod, NM = O- M là tập các đố tượng không phải tâm. Các đối tượng dữ
liệu sử dụng trong thuật toán CLARANS là các khối đa diện. Mỗi đối tượng
được diễn tả bằng một tập các cạnh, mỗi cạnh được xác định bằng hai điểm.
-45-

Giả sử P  R3 là một tập tất cả các điểm . Nói chung, các đối tượng ở đây là
các đối tượng dữ liệu không gian và chúng ta định nghĩa tâm của một đối
tượng chính là trung bình cộng toán học của tất cả các đỉnh hay còn gọi là
trọng tâm :
center : O  P
Giả sử dist là một hàm khoảng cách, khoảng cách thường được chọn ở
đây là khoảng cách Eucliean : dist : PxP  R0
Hàm khoảng cách dist có thể mở rộng cho các điểm của khối đa diện
thông qua hàm tâm : dist : OxO  R0 sao cho
dist(oi , o j )  dist (center (oi ), center (o j ))

Mỗi đối tượng được gán cho một tâm medoid của cụm nếu khoảng
cách từ trọng tâm của đối tượng đó tới tâm medoid của nó là nhỏ nhất. Vì vậy,
định nghĩa tâm medoid như sau : medoid : O  M sao cho
medoid (o)  mi , mi  M , mi  M : dis(o, mi )  dist (o, m j ), o  O . Cuối cùng định nghĩa

một cụm tới tâm mediod mi tương ứng là một tập con các đối tượng trong O
với medoid(o) = mi
Giả sử C0 là tập tất cả các phân hoạch của O. Hàm tổng để đánh giá
chất lượng một phân hoạch được định nghĩa như sau : total_distance : C0  R0
sao cho total_distance(c)=  dist (o, mi ) với mi  M , o  cluster ( mi )
Thuật toán chi tiết CLARANS :
Input : O,k, dist, numlocal và maxneighbor;’
Output : k cụm dữ liệu;
CLARANS(int k, function dist, int numlocal, int maxneighbor)
BEGIN
For (i = 1 ; 1 <= numlocalk; i++{
current.creat_randomly(k);
j=1;
while (j <= maxneighbor) {
current.select_radom(old, new);
diff = current.caculate_distance_difference(old, new);
if (diff < 0){
current.exchange(old, new);
-46-

j = 1;
}
Else j++; //end if
} //end while
Dist = current.caculate_total_distance();
If (disr < smallest_dist) {
Best = current;
Smallest_dist= dist;
} // end if
}// end for
END.

4. Thuật toán phân cụm dữ liệu dựa vào tìm kiếm


4.1 Thuật toán di truyền (GAS)
Thuật toán di truyền GAS lần đầu tiên được đề xuất bởi Holland (1975)
là một họ tính toán mô hình lấy cảm hứng từ tương tự của sự tiến hóa và di
truyền dân số. Gas vốn song song và đặc biệt thích hợp cho việc giải quyết
vấn đề tối ưu hóa phức tạp.Filho et al. (1994) trình bày một cuộc khảo sát của
khí cùng với một GA đơn giản viết bằng C ngôn ngữ.
Thông thường, chỉ có hai thành phần chính của GAS được vấn đề phụ
thuộc: các vấn đề mã hóa và chức năng đánh giá (ví dụ, khách quan chức
năng). Ngay cả đối với cùng một vấn đề, có thể sử dụng mã hóa khác nhau.
Ví dụ, trong các k-có nghĩa là thuật toán di truyền, Krishna và Narasimha
(1999) làm việc string-of-group-số mã hóa, trong khi Maulik và
Bandyopadhyay (2000) được mã hóa các chuỗi sao cho mỗi chuỗi là một
chuỗi các thực số đại diện cho các trung tâm cụm.
Trong GAS, các tham số của không gian tìm kiếm được mã hoá trong
các hình thức gọi là chuỗi nhiễm sắc thể. AGA maintains dân (set) của N
chuỗi mã hoá cho một số dân số cố định kích thước N và tiến hóa qua các thế
hệ. Trong mỗi thế hệ, ba nhà khai thác di truyền, nghĩa là, tự nhiên, lựa chọn,
xuyên chéo , và đột biến, được áp dụng cho dân số hiện nay để sản xuất một
số dân mới. Mỗi chuỗi trong dân số liên kết với một giá trị thể dục tùy thuộc
vào giá trị của hàm mục tiêu. Dựa trên nguyên tắc sống còn của các lắp rắp ,
-47-

một chuỗi vài trong số dân hiện hành được lựa chọn và từng được phân công
một số bản sao, và sau đó một thế hệ mới của dây đang mang lại bằng cách áp
dụng chéo và đột biến để các chuỗi được chọn.
Nói chung, một GA điển hình có những năm thành phần cơ bản: mã
hóa, khởi tạo, lựa chọn, crossover, và đột biến. Mã hóa là phụ thuộc vào vấn
đề dưới xem xét. Trong giai đoạn khởi, dân số (set) của chuỗi sẽ được ngẫu
nhiên tạo ra. Sau giai đoạn khởi, có một lặp của các thế hệ. Số lượng của các
thế hệ được xác định bởi người sử dụng. Trong khí, chuỗi tốt nhất thu được
cho đến nay được lưu trữ trong một vị trí riêng biệt bên ngoài dân số và sản
lượng cuối cùng là chuỗi tốt nhất trong số tất cả có thể có chuỗi kiểm tra trong
toàn bộ quá trình.
Murthy và Chowdhury (1996) đề xuất một GA trong một nỗ lực để đạt
được tối ưu giải pháp cho các vấn đề clustering. Trong thuật toán này, các
chức năng đánh giá được xác định như là tổng của bình phương khoảng cách
Euclide của các điểm dữ liệu từ các cụm tương ứng của họ trung tâm. Ngoài
ra, đơn điểm chéo (Michalewicz, 1992), nghĩa là, các nhà điều hành chéo giữa
hai dây, được thực hiện tại một vị trí, và các chiến lược elitist, nghĩa là, các
chuỗi hay nhất được mang từ trước đến dân số kế tiếp, được sử dụng.
Tseng và Yang (2001) đề xuất một cách tiếp cận di truyền được gọi là
clustering đến tự động phân nhóm vấn đề. Clustering là phù hợp với phân
nhóm dữ liệu với nhỏ gọn cụm hình cầu, và số cụm có thể được kiểm soát
gián tiếp bởi một tham số w. Thuật toán sẽ sản xuất một số lượng lớn các cụm
nhỏ gọn với một giá trị nhỏ của w và nó sẽ sản xuất một số lượng nhỏ hơn của
cụm lỏng hơn với một giá trị lớn của w. A di truyền phân nhóm dựa trên thuật
toán nhằm tìm ra các cụm nonspherical đã được đề xuất bởi Tseng và Yang
(2000).
Garai và Chaudhuri (2004) đề xuất một phân nhóm di truyền được
hướng dẫn theo cấp bậc thuật toán mà có thể tìm thấy tùy tiện có hình cụm.
Thuật toán này bao gồm hai giai đoạn. Lúc đầu, tập dữ liệu gốc là bị phân hủy
thành một số nhóm phân mảnh để lây lan trong quá trình GAsearch ở giai
đoạn thứ hai trong toàn bộ không gian. Sau đó, các thứ bậc Cụm trộn thuật
toán (HCMA) được sử dụng. Trong quá trình sát nhập, một kỹ thuật gọi là các
-48-

cluster liền kề kiểm tra thuật toán (ACCA) được sử dụng để thử nghiệm kề
của hai cụm phân đoạn để họ có thể được sáp nhập vào một nhóm.
Krishna và Narasimha (1999) và Bandyopadhyay và Maulik (2002) đề
xuất hai thuật toán phân nhóm khác nhau dựa trên GAS và k phổ biến có
nghĩa là thuật toán. Trong di truyền k-có nghĩa là thuật toán (GKA), Krishna
và Narasimha (1999) được sử dụng k-có nghĩa là nhà điều hành thay vì các
nhà điều hành chéo để tăng tốc độ hội tụ, trong khi ở kga-clustering,
Bandyopadhyay và Maulik (2002) được sử dụng các nhà điều hành crossover-
đơn điểm.
Cowgill et al. (1999) đề xuất một thuật toán-based clustering di truyền
được gọi là COWCLUS. Trong COWCLUS, chức năng đánh giá là tỷ lệ
phương sai (VR) được định nghĩa trong điều kiện cô lập cụm bên ngoài và
tính đồng nhất cụm nội bộ. Mục tiêu của thuật toán là để tìm các phân vùng
với VR tối đa.
4.2 J- Means
Cho D   x1, x2 ,, xn  là một tập đối tượng và SD được hiểu là tất cả các
phần của D.
k
min   x  zi
2

PDS D
i 1 xCi

Nơi k là số lượng cụm , . được hiểu là Euclidean chuẩn tắc, và zi là


tâm của cụm Ci
1
Zi 
Ci
x
xCi

Với i = 1, 2,…k

Thuật toán J-mean :

Bước 1 (khởi) Hãy để PD = (C1, C2,. . . , Ck) là một phân vùng ban đầu của
D, zi là trọng tâm của cụm Ci, và fopt được mục tiêu hiện chức năng giá trị;

S2 (điểm chiếm đóng) Tìm điểm trống, nghĩa là, điểm trong D không trùng
với một cụm trọng tâm trong một dung sai nhỏ;
-49-

S3 (Bước khu phố) Tìm phân vùng tốt nhất PD và mục tiêu tương ứngchức
năng giá trị f  trong các khu phố nhảy của giải pháp hiện tại PD:

S31 (khai phá láng giềng) Đối với mỗi j (j = 1, 2,..., N), lặp lại sau bước
sau: (a) tái định cư. Thêm một cụm mới centroid Z k+1 tại một số điểm
trống xj vị trí và tìm thấy những chỉ số i của trọng tâm tốt nhất để xóa; cho
vij biểu sự thay đổi trong giá trị hàm mục tiêu; (b) Giữ tốt nhất. Giữ đôi chỉ
số i và j nơi vij là tối thiểu;

S32 (chuyển hay thay thế) Nếu trọng tâm zi’ bởi xj và cập nhật các thành
viên nhóm cho phù hợp để có được P phân vùng mới PD ; đặt f  : fopt  vi ' j '
S4 (Chấm dứt hoặc di chuyển) Nếu f   fopt , dừng; nếu không, di chuyển
đến láng giềng tốt nhất Giải pháp PD ; đặt PD là giải pháp hiện hành và quay
về bước S2.
5. Thuật toán phân cụm dữ liệu dựa vào lƣới
5.1 STING
STING 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 cells chữ nhât, điều này
có ý nghĩa là các cells lưới được hình thành từ các cells lưới con để thực hiện
phân cụm. Có nhiều mức của các cells 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 cells này hình thành cấu trúc
phân cấp : mỗi cells ở mức cao được phân hoạch thành các số các cells 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ừ
CSDL, giá trị của các tham số thống kê cho các thuộc tính của đối tượng dữ
liệu trong mỗi ô lưới được tính toán từ dữ liệu và lưu trữ thông qua các tham
số thống kê ở các cell mức thấp hơn (điều này giống với cây CF). Các 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,…
Các đối tượng dữ liệu lần lượt được chèn vào lưới và các tham số thống
kê ở trên được tính trực tiếp thông qua các đối tượng dữ liệu này. Các truy
vấn không gian được thực hiện bằng cách xét các cells thích hợp tại mỗi mức
-50-

phân cấp. Một truy vấn không gian được xác định như là một thông tin khôi
phục lại của dữ liệu không gian và các quan hệ của chúng. STING có khả
năng mở rộng cao , nhưng do sử dụng phương pháp đa phân giải nên nó phụ
thuộc chặt chẽ vào trọng tâm của mức thấp nhất. Đa phân giải là khả năng
phân rã tập dữ liệu thành các mức chi tiết khác nhau. Khi hòa nhập các cells
của cấu trúc lưới để hình thành các cụm, nó không xem xét quan hệ không
gian giữa các nút của mức con không được hòa nhập phù hợp( do chúng chỉ
tương ứng với các cha của nó) và hình dạng của các cụm dữ liệu khám phá là
isothetic, tất cả ranh giới của các cụm có các biên ngang và dọc, theo biên của
các cells và không có đường biên chéo được phát hiện ra.
Các lợi thế của cách tiếp cận này so với các phương pháp phân cụm dữ
liêu khác :
- Tính toán dựa trên lưới là truy vấn độc lập vi thông tin thống kê được
bảo quản trong mỗi cells đại diện nên chỉ cần thông tin tóm tắt của dữ liệu
trong cells chứ không phải là dữ liệu thực tế và không phụ thuộc vào câu truy vấn.
- Cấu trúc dữ liệu lưới thuận tiện cho quá trình xử lý song song và cập
nhật liên tục.
- Duyệt toàn bộ CSDL một lần để tính toán các đại lượng thống kê cho
mỗi cells, nên nó hiệu quả và do đó độ phức tạp thời gian để tạo các cụm xấp
xỉ O(n), trong đó n là tổng số các đối tượng. Sau khi xây dựng cấu trúc phân
cấp, thời gian xử lý cho các truy vấn là O(g), trong đó g là tổng số cells lưới ở
mức thấp (g<<n)
Các hạn chế của thuật toán này :
- Trong khi sử dụng cách tiếp cận đa phân giải để thực hiện phân tích
cụm chất lượng của phân cụm STING hoàn toàn phụ thuộc vào tính chất hộp
ở mức thấp nhất của cấu trúc lưới. Nếu tính chất hộp là mịn, dẫn đến chi phí
thời gian xử lý tăng, tính toán trở nên phức tạp và nếu mức dưới cùng là quá
thô thì nó có thể làm giảm bớt chất lượng và độ chính xác của phân tích cụm.
Thuật toán STING :
1. Xác định tầng để bắt đầu
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à cells này liên quan tới truy vấn
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
-51-

không liên quan.


4. Nếu lớp này là lớp cuối cùng , chuyển sang Bước 6; nếu khác thì chuyển
sang Bước 5
5. Duyệt xuống dưới của cấu trúc cây phân cấp một mức. Chuyển sang
Bước 2 cho các cells mà hình thành các cells liên quan của lớp có mức cao
hơn.
6. Nếu đặc tả được câu truy vấn, chuyển sang bước 8; nếu không thì
chuyển sang bước 7.
7. Truy lục lại dữ liệu vào trong các cells liên quan và thực hiện xử lý. Trả
lại kết quả phù hợp yêu cầu của truy vấn. Chuyển sang Bước 9.
8. Tìm thấy các miền có các cells liên quan. Trả lại miền mà phù hợp với
yêu cầu của truy vấn. Chuyển sang bước 9
9. Dừng
5.2. Thuật toán CLIQUE
Trong không gian đa chiều, các cụm có thể tồn tại trong tập con của các
chiều hay còn gọi là không gian con. Thuật toán CLIQUE là thuật toán hữu
ích cho PCDL không gian đa chiều trong các CSDL lớn thành các không gian
con. Thuật toán này bao gồm các bước :
- Cho n là tập lớn của các điểm dữ liệu đa chiều; không gian dữ liệu
thường là không giống nhau bởi các điểm dữ liệu. Phương pháp này xác định
những vùng gần, thưa và “đặc” trong không gian dữ liệu nhất định, bằng cách
đó phát hiện ra toàn thể phân bố mẫu của tập dữ liệu.
- Một đơn vị là dày đặc nếu phần nhỏ của tất cả các điểm dữ liệu chứa
trong nó vượt quá tham số mẫu đưa vào. Trong thuật toán CLIQUE, cụm
được định nghĩa là tập tối đa liên thông các đơn vị dày đặc.
Các đặc trƣng của CLINQUE
- Tự động tìm kiếm không gian con của không gian đa chiều, sao cho
mật độ đặc của các cụm tồn tại trong không gian con.
- Mẫn cảm với thứ tự của dữ liệu vào và không phù hợp với bất kỳ quy
tắc phân bố dữ liệu nào.
- Phương pháp này tỷ lệ tuyến tính với kích thước vào và có tính biến
đổi tốt khi số chiều của dữ liệu tăng.
-52-

Nó phân hoạch tập dữ liệu thành các hình hộp chữ nhật và tìm các hình
hộp chữ nhật đặc, nghĩa là các hình hộp này chứa một số các đối tượng dữ
liệu trong số các đối tượng láng giếng cho trước. Hợp các hình hộp này tạo
thành các cụm dữ liệu. Tuy nhiên , CLINQUE được bắt đầu bằng cách tiếp
cận đơn giản do đó chính xác của kết quả phân cụm có thể bị ảnh hưởng dẫn
tới chất lượng của các phương pháp này có thể giảm.
Phương pháp bắt đầu nhận dạng các cells đặc đơn chiều trong không
gian dữ liệu và tim kiếm phân bố của dữ liệu, tiếp đến CLINQUE lần lượt tìm
các hình chữ nhật 2 chiều, 3 chiều,…., cho đến khi hình hộp chữ nhật đặc k
chiều được tìm thấy, độ phức tạp tính toán của CLIQUE là O(n)
5.3. Thuật toán WaveCluster
Thuật toán WaveCluster là phương pháp gần giống với STING, tuy
nhiên thuật toán sử dụng phép biến đổi dạng sóng đẻ tìm ô đặc trong không
gian. Đầu tiên kỹ thuật này tóm tắt dữ liệu bằng việc tận dụng cấu trúc dạng
lưới đa chiều lên trên không gian dữ liệu. Tiếp theo nó sử dụng phép biến đổi
dạng sóng để biến đổi không gian có đặc trưng gốc, tìm kiếm ô đặc trong
không gian đã được biến đổi. Phương pháp này là phức tạp với các phương
pháp khác chính là ở phép biến đổi.
Ở đây, mỗi cells lưới tóm tắt thông tin các điểm của một nhóm ánh xạ
vào trong cells. Đây là thông tin tiêu biểu thích hợp đưa vào bộ nhớ chính để
sử dụng phép biến đổi dạng sóng đa phân giải và tiếp theo là phân tích cụm.
Một phép biến đổi dạng sóng là kỹ thuật dựa trên cơ sở xử lý tín hiệu và xử lý
ảnh bằng phân tích tín hiệu với tần số xuất hiện trong bộ nhớ chính. Bằng việc
thực hiện một loạt các phép biến đổi ngược phức tạp cho nhóm này,nó cho
phép các cụm trong dữ liệu trở thành rõ ràng hơn. Các cụm này có thể được
xác định bằng tìm kiếm ô đặc trong vùng mới.
Phương pháp này phức tạp, nhưng lại có những lợi thế :
- Cung cấp cụm không giám sát, khử nhiễu các thông tin bên ngoài biên
của cụm. Theo cách đó, vùng đặc trong không gian đặc trưng gốc hút các
điểm ở gần và ngăn chặn các điểm ở xa. Vì vậy, các cụm tự động nổi bật và
làm sạch khu vực xung quanh nó, do đó các kết quả tự động loại phần tử
ngoại lai.
-53-

- Đa phân giải là thuộc tính hỗ trợ dò tìm các cụm có các mức biến đổi
chính xác.
- Thực hiện nhanh với độ phức tạp của thuật toán là O(n), trong đó n là
số đối tượng trong CSDL. Thuật toán có thể thích hợp với xử lý song song.
- Xử lý tập dữ liệu lớn có hiệu quả, khám phá các cụm có hình dạng bất
kỳ, xử lý phần tử ngoại lai, mẫn cảm với thứ tự vào, và không phụ thuộc vào
các tham số vào như số các cụm hoặc bán kính láng giềng.
6. Thuật toán phân cụm dữ liệu dựa vào mật độ
6.1 Thuật toán DBSCAN
Thuật toán DBSCAN thích nghi với mật độ dầy để phân cụm và khám
phá ra các cụm có hình dạng bất kỳ trong không gian CSDL có nhiễu. Nó có
đị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 vào 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 độ; mỗi đối tượng không được chứa trong cụm là được xem
xét 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 mà có số đố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ỏ 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
đã 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 độ 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ụ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.
DBSCAN có thể tìm ra các cụm với hình thù bất kỳ, trong khi đo 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 có một đối tượng được chèn vào chỉ tác động đến một láng giếng xác
định. Mặt khác , DBSCAN sử dụng tham số Eps và MinPts trong thuật toán
để kiểm soát mật độ của các cụm . 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 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 hoặc theo kinh
-54-

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
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 Eucle có thể áp
dụng cho tập dữ liệu không gián lớn đa chiều, khoảng cách Eclide đượ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 [10][15]
- Định nghĩa 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)={q  D} 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 một cụm C nào đó thì NEps(p) phải có tối thiểu
MinPts điểm. Số điểm tối thiểu được chọn là bao nhiêu cũng là bài toán khó
vì nếu số điểm tối thiểu lớn thì chỉ những điểm nằm thực sự trong cụm C mới
đạt đủ tiêu chuẩn, trong khi đó những điểm nằm ngoài biên của cụm không
thể đạt được điều đó. Ngược lại, nếu số điểm tối thiểu là nhỏ thì mọi điểm sẽ
rơi vào một cụm.
Theo định nghĩa trên, chỉ những điểm 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ủa Eps của điểm nhân.
Để tránh được điều này, có thể đưa ra một tiêu chuẩn khác để định
nghĩa một điểm thuộc vào một cụm như sau : Nếu một điểm p muốn thuộc
một cụm C phải tồn tại một điểm thuộc một cụm như sau: Nếu một điểm p
muốn thuộc một cụm C phải tồn tại một điểm q mà p  NEps (q) và số điểm
trong p  NEps (q) phải lớn hơn điểm tối thiểu. Điều này dẫn ba phép đo được
sử dụng để mô tả thuộc tính cảu các điểm dữ liệu, là mật độ liên lạc trực tiếp,
mật độ liên lạc và mật độ liên lạc và mật độ liên thông được định nghĩa như
sau :
- Định nghĩa 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. NEsp  q   MinPts (điều kiện nhân), điểm q gọi là điểm nhân.
-55-

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 3 : Mật độ liên lạc
Một điểm p được gọi là 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êm 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.
- Định nghĩa 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 điểm p, q đều có thể liên lạc được theo
tham số Eps và MinPts. Mật độ liên thông có tính chất đối xứng và phản xạ.
- Định nghĩa 5 : Cụm
Giả sử D là một tập 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 p, q  D , nếu p  C và q có thể liên lạc được từ p theo Eps và
MinPts thì q  C
2. Với p, q C ,p liên thông với q theo Eps và MinPts.
- Định nghĩa 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 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 :
- 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.
- 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ổ đề 1 : Giả sử p là một điểm trong D, N Esp ( p)  MinPts tập O ={o/o 
D và 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, tuy nhiên, mỗi điểm
trong C liên lạc từ bất cứ một đ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 ý.
-56-

Bổ đề 2 : Giả sử C là một cum theo Eps và MinPts, p là một điểm bất


kỳ trong C với N Esp ( p)  MinPts . Khi đó, C trùng với tập O ={o/o  D và o có
thể liên lạc từ p theo Eps và MinPts}.
Thuật toán : DBSCAN khởi tạo điểm p tùy ý và lấy tất cả các điểm liên
lạc mật độ từ p tới Eps và MinPts. Nếu p là điểm nhân thì thủ tục trên tạo ra
một cụm theo Eps và MinPts ( bổ đề 2), nếu p là một điểm biên, không có
điểm nào liên lạc mật độ từ p và DBSCAN sẽ đi thăm điểm tiếp theo của tập
dữ liệu.
Nếu sử dụng giá trị toàn cục Eps và Minpts, DBSCAN có thể hòa nhập
hai cụm ( Định nghĩa 5) thành một cụm nếu mật độ của hai cụm gần bằng
nhau. Giả sử khoảng cách giữa hai tập dữ liệu S1 và S2 được định nghĩa là
dist(S1, S2) = min{dist(p, q) {p  S1 và p  S2}.
Thuật toán DBSCAN
--------------main Module----------------
DBSCAN(SetOfPoints, Eps, MinOts)
//SetOfPoints is UNCLASSIFIED
Clusterid:=NextId(NOISE);
FOR i FROM 1 TO SetOfPoints.size DO
Point := SetOfPoints.get(i);
IF PointClId = UNCLASSIFIED THEN
IF ExpandCluster (SetOfPoints, Point, ClusterId, Eps, MinPts ) THEN
ClusterId.= nextld(ClusterId)
END IF
END IF
END FOR
FOR END; I/DBSCAN
--------ExpandCluster Procedure -------
ExpandClusster(SetOfPoints, Points, ClId, Eps, MinPts): Boolean; seeds:=
SetOfPoints.regionQuery(Point, E ps) IF seeds.size < MinPts THEN // no
core point
SetOfPoints.changeclId(Point, NOISE), RETURN False;
ELSE //all points in seeds are density-reachable from Point
SetOfPoints.changeClId(seeds, ClId); seeds.delete(Point); WHILE
-57-

seeds <> Empty DO


currentP:= seeds.firstO; result:=
SetOfPoints.regionQuery(CurrentP, Eps);
IF result.size >= MinPts THEN
FOR i FROM 1 to result.size 00 resultpP:= result.get(i); IF
resultp.ClId IN {UNCLASSIFIED, NOISE) THEN
IF resultp.ClId = UNCLASSIFIED THEN
seeds.append(resultP);
END IF
SetOfPoints.changeC1Id(resultP, C1Id),
ENDIF; //UNCLASSIFIED or NOISE
END FOR;
END IF ;// result.size >= Minpts
Seed.delete(CurrentP)
END WHILE ;//seeds <> Empty
RETURN True;
END IF;
END ;//ExpandCluster
Trong đó SetOfPoints hoặc là tập dữ liệu ban đầu hoặc là cụm được
khám phá từ bước trước, C1Id (ClusterId) là nhãn đánh dấu phần tử dữ liệu
nhiễu có thể thay đổi nếu chúng có thể liên lạc mật độ từ một điểm khác trong
CSDL, điều này chỉ xảy ra đối với các điểm biên của dữ liệu. hàm
SetOfPoints.get(i) trả về phần tử thứ I của SetofPoints. Thủ tục
SetOfPoints.regionQuery(Point, Eps) trả về một danh sách các điểm dữ liệu
lân cận với điểm Point trong ngưỡng Eps từ tập dữ liệu SetOfPoint. Trừ một
số trường hợp ngoại lệ, kết quả của DBSCAN là độc lập với thứ tự 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. Tham số Eps được đưa vào là nhỏ so với
kích thước của không gian dữ liệu, thì độ phức tạp tính toán trung bình của
mỗi truy vấn là O(logn).
6.2. Thuật toán OPTICS
Thuật toán này là mở rộng của DBSCAN, tuy nhiên nó cải tiến bằng
cách giảm bớt các tham số đầu vào. Thuật toán này không phân cụm các điểm
-58-

dữ liệu mà thực hiện tính toán và sắp xếp trên các điểm dữ liệu theo thứ tự
tăng dần nhằm tự động PCDL và phân tích cụm tương tác hơn là đưa ra phân
cụm một tập dữ liệu rõ ràng. Đây là thứ tự mô tả cấu trúc phân dữ liệu cụm
dựa trên mật độ của dữ liệu, nó chứa thông tin tương ứng với phân cụm dựa
trên mật độ từ một dãy các tham số được thiết lập và tạo thứ tự của các đối
tượng trong CSDL, đồng thời lưu trữ khoản cách lõi và khoảng cách liên lạc
phù hợp của mỗi đối tượng. Hơn nữa, thuật toán được đề xuất rút ra các cụm
dựa trên thứ tự thông tin. Như vậy thông tin đủ cho trích ra tất cả các cụm dựa
trên mật độ khoảng cách bất kỳ  mà nhỏ hơn khoảng cách  được sử dụng
trong sinh thứ tự.
Việc sắp xếp thứ tự được xác định bởi hai thuộc tính riêng của các điểm
dữ liệu đó là khoảng cách nhân và khoảng cách liên lạc. Các phép đo này
chính là kích thước mà có liên quan đến quá trình của thuật toán DBSCAN,
tuy nhiên, chúng được sử dụng để xác định thứ tự của các điểm dữ liệu đã
được xắp xếp. Thứ tự dựa tren cơ sở các điểm dữ liệu mà có khoảng cách
nhân nhỏ nhất và tăng dần độ lớn. Điều duy nhất về phương pháp này là
người sử dụng không phải xác định giá trị  hoặc MinPts phù hợp.
Thuật toán này có thể phân cụm các đối tượng đã cho với các tham số
đầu vào như  và MinPts, nhưng nó vẫn cho phép người sử dụng tùy ý lựa
chon các giá trị tham số mà sẽ dãn đến khám phá các cụm chấp nhận được.
Các thiết lập tham số thường dựa theo kinh nghiệm tập hợp và khó xác định,
đặc biệt là với các tập dữ liệu đa chiều.
Tuy nhiên, nó cũng có độ phức tạp thời gian thực hiện như DBSCAN
bởi vì có cấu trúc tương đương với DBSCAN : O(nlogn)- n là kích thước của
tập dữ liệu. Thứ tự cụm của tập dữ liệu có thể được biểu diễn bằng đồ thị, và
được minh họa trong hình sau, có thể thấy ba cụm, giá trị  quyết định số cụm
6.3. Thuật toán DENCLUDE
DENCLUDE đưa ra cách tiếp cận khác với các thuật toán phân cụm
dựa trên mật độ trước đó, cách tiếp cận này xem xét mô hình được sử dụng
một công thức toán để mô tả mỗi điểm dữ liệu sẽ ảnh hưởng trong mô hình
như thế nào được gọi là hàm ảnh hưởng có thể xem như một hàm mà mô tả
ảnh hưởng của điểm dữ liệu với các đối tượng làng giếng của nó. Ví dụ về
hàm ảnh hưởng là các hàm parabolic, hàm sóng ngang, hoặc hàm Gaussian.
-59-

Như vậy , DENCLUDE là phương pháp dựa trên một tập các hàm phân phố
mật độ và được xây dựng ý tưởng chính như sau :
- Ảnh hưởng của mỗi điểm dữ liệu có thể là hình thức được mô hình sử
dụng một hàm tính toán, được gọi là hàm ảnh hưởng, mô tả tác động của điểm
dữ liệu với các đối tượng láng giềng của nó;
- Mật độ toàn cục của không gian dữ liệu được mô hình phân tích như
là tổng các hàm ảnh hưởng của tất cả các điểm dữ liệu;
- Các cụm có thể xác định chính xác bởi việc xác định mật độ cao
(density attractors), trong đó mật độ cao là các điểm cực đại hàm mật độ toàn cục.
Sử dụng các cells lưới không chỉ giữ thông tin về các cells lưới mà thực
tế nó còn chứa đựng cả các điểm dữ liệu. Nó quản lý các cells trong một cấu
trúc truy cập dựa trên cây, và như vậy nó nhanh hơn so với một số các thuật
toán có ảnh hưởng, như DBSCAN. Tuy nhiên, phương pháp này đòi hỏi chọn
lựa kỹ lưỡng tham biến mật độ và ngưỡng nhiễu, việc chọn lựa tham số là
quan trọng ảnh hưởng tới chất lượng của các kết quả phân cụm.
Định nghĩa : Cho x, y là hai đối tượng trong không gian d chiều ký hiệu
là Fd. Hàm ảnh hưởng của đối tượng y  F d lên đối tượng x là một hàm
f By : F d  R0 mà được định nghĩa dưới dạng một hàm ảnh hưởng cwo bản
f By ( X )  fb ( x, y) . Hàm ảnh hưởng có thể là một hàm bất kỳ; cơ bản là xác định
khoảng cách của hai vecto d(x, y) trong không gian d chiều, ví dụ như khoảng
cách Euclide. Hàm khoảng cách có tính chất phản xạ và đối xứng. Ví dụ về
hàm ảnh hưởng như sau :
0 if d ( x, y)  
- Hàm ảnh hưởng sóng ngang : f square ( x, y)  
1 if d ( x, y)  
Trong đó  là một ngưỡng.
d ( x , y )2

- Hàm ảnh hưởng Gaussian: f square ( x, y )  e 2 2

Mặt khác, hàm mật độ tại điểm x  F d được đinh nghĩa là tổng các hàm
ảnh hưởng của tất ả các điểm dữ liệu. Cho n là các đối tượng dữ liệu được mô
tả bởi một tập vecto D   x1,..., xn 
  F d hàm mật độ được định nghĩa như sau :
n
FBD ( x)   FBx (i ) ( x)
i 1
-60-

Hàm mật độ được thành lập dựa trên ảnh hưởng Gauss được xác định
như sau :
n d ( x , xi )2

F D
Gauss (d )   e 2 2

i 1

DENCLUE phụ thuộc nhiều vào ngưỡng nhiễu và tham số mật độ,
nhưng DENCLUE có các lợi thế chính được so sánh với các thuật toán phân
cụm khác sau đây :
- Có cơ sở toán học vững chắc và tổng quát hóa các phương pháp phân
cụm khác, bao gồm các phương pháp phân cấp, dựa trên phân hoạch
- Có các đặc tính phân cụm tốt cho các tập dữ liệu với số lượng lớn và
nhiễu
- Cho phép các cụm có hình dạng bất kỳ trong tập dữ liệu đa chiều
được mô tả trong công thức toán.
Độ phức tạp tính toán của DENCLUDE là O(nlogn). Các thuật toán
dựa trên mật độ không thực hiện kỹ thuật phân mẫu trên tập dữ liệu như trong
các thuật toán phân cụm phân hoạch, vì điều này có thể làm tăng thêm độ
phức tạp đã có sự khác nhau giữa mật độ của các đối tượng trong mẫu với mật
độ của toàn bộ dữ liệu.
7. Thuật toán phân cụm dữ liệu dựa trên mẫu
7.1 Thuật toán EM
Thuật toán EM được xem như là thuật toán dựa trên mẫu hoặc là mở
rộng của thuật toán K-means. Thật vậy, EM gán các đối tượng cho các cụm
đã cho theo xác suất phân phỗi thành phần của đối tượng đó. Phân phối xác
suất thường được sử dụng là phân phối xác suất Gaussian với mục đích là
khám phá lặp các giá trị tốt cho các tham số của nó bằng hàm tiêu chuẩn là
hàm 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 nên chi phí tính toán của thuật toán khá cao. Đã có một số cải
tiến được đề xuất cho EM dựa trên các tính chất của dữ liệu : có thể nén, có
thể sao lưu trong bộ nhớ và có thể hủy bỏ. Trong các cải tiến này, các đối
tượng bị hủy bỏ khi biết chắc chắn được nhãn phân cụm của nó, chúng được
-61-

nén khi không loại bỏ và thuộc về một cụm quá lớn so với bộ nhớ và chúng sẽ
được lưu lại trong các trường hợp còn lại.
Thuật toán được chia thành hai bước và quá trình đó được lặp lại cho
đến khi vấn đề được giải quyết :
1
2 
- E: a  h, b h
1 1
 
2 2
ab
- M : a, b   
6(b  c  d )
1. Khởi tạo tham số :
0  1(0) ,  2(0) ,,  K(0) , p1(0) , p2(0) ,, pk(0) 
2. Bước E

P x ,   
 
P xk  j , t P j , t 

 
P xk i , (i t ) , 2 Pi (t )
Pxk , t   Px 
i ,  , 2 Pj(t )
j k t (t )
k k i

3. Bước M :  i(t 1) 


 P x ,  x i k t k

 P x ,  
k

k i k t

pi(t 1) 
 Pk i xk , t 
R
4. Lặp lại bước 2, 3 cho đến khi đạt kết quả

7.2 Thuật toán COBWEB


COBWEB là cách tiếp cận để biểu diễn các đối tượng dữ liệu theo kiểu
cặp thuộc tính – giá trị. COBWEB thực hiện bằng cách tạo cây phân lớp,
tương tự như khái niệm của BIRCH, tuy nhiên cấu trúc cây khác nhau. Mỗi
nút của cây phân lớp là đại diện cho khái niệm của đối tượng dữ liệu và tất cả
các điểm mà ở dưới lớp đó là cùng thuộc một nút. COBWEB sử dụng công cụ
phân loại để quản lý cấu trúc cây. Từ đó các cụm hình thành dựa trên phép đo
độ tương tự mà phân loại giữa tương tự và phi tương tự, cả hai có thể mô tả
phân chia giá trị thuộc tính giữa các nút trong lớp. Cấu trúc cây cũng có thể
mô tả phân chia giá trị thuộc tính giữa các nút trong lớp. Cấu trúc cây cũng có
thể được hợp nhất hoặc phân tách khi chèn một nút mới vào cây. Có hai
phương pháp cải tiến cho COBWEB và CLASSIT và AutoClass.
-62-

CHƢƠNG III
ỨNG DỤNG CỦA PHÂN CỤM DỮ LIỆU
1. Phân đoạn ảnh
Phân đoạn ảnh là một bộ phận cấu thành cơ bản trong nhiều lĩnh vực
có ứng dụng máy tính và có thể được coi như là một lĩnh vực nghiên cứu cơ
bản của phân cụm dữ liệu (Rosenfeld and Kak 1982). Việc phân đoạn các
ảnh dựa vào việc hiển thị một hệ thống phân tích hình ảnh phụ thuộc vào cảnh
hiện thị, Hình dạng ảnh, cấu hình, và bộ chuyển đổi dùng để chuyển đổi ra
ảnh kỹ thuật số, và cuối cùng là đầu ra(mục tiêu) của hệ thống.
Các ứng dụng của phương pháp phân cụm dữ liệu đối với vấn đề phân
đoạn ảnh ảnh đã được công nhân hơn ba thập kỷ trước, và những nỗ lực tiên
phong vẫn là nền tảng được sử dụng ngày nay. Nền tảng lặp lại là xác định
các véc-tơ đặc tính ở mỗi một điểm ảnh mà ảnh đó chứa cả hàm số mật độ của
ảnh và hàm số bản thân vị trí điểm ảnh. Ý tưởng này được mô tả hình () bên
dưới. Ý tưởng này rất thành công khi sử dung đối với các ảnh có mật độ(có
hay không chứa kết cấu ảnh), dải(biên độ) ảnh, và ảnh đa phổ.

Hình 25. Tính năng đại diện cho clustering. Hình ảnh và vị trí các
phép đo được chuyển đến các tính năng. Cụm trong không gian tính năng
tương ứng với các phân đoạn hình ảnh.
-63-

1.1. Định nghĩa Phân đoạn ảnh


Phân đoạn ảnh được hiểu thông thường là việc phân tách ảnh đầu vào
thành các miền (các lớp đối tượng riêng rẽ) mỗi đối tượng được gọi là một
ảnh con. Để phân biệt đối tượng này với đối tượng khác và tiện lợi cho các
bước phân tích tiếp theo, mỗi đối tượng được gán một nhãn. Thực chất của
phân đoạn ảnh là phép đối sánh mẫu. Mỗi ảnh con được phân tách chứa các
thuộc tính (mật độ, mầu, chứa vân).
Nếu ta cho:

là một ảnh đầu vào với Nr dòng, và Nc cột và giá trị quan sát xij với điểm ảnh
(i, j), phép phân đoạn ảnh có thể được biểu diễn thành :

với lth đoạn

chứa một tập hợp con của các các kết nối tọa độ điểm ảnh. Không có đoạn
nào chia sẻ vị trí điểm ảnh S i  S j  i  j  , và phép hợp của các phân đoạn
bao toàn bộ ảnh U ik1 S i  1...N r  1... N c . Jain và Dubes[1981], sau khi Fu và
Mui[1981] phát hiện ra 3 kỹ thuật sử dụng để phân đoạn ảnh từ một ảnh đầu
vào là : Kỹ thuật phân đoạn ảnh dựa trên miền, Kỹ thuật phân đoạn ảnh dựa
trên biên,và kỹ thuật phân đoạn ảnh bằng phân cụm dữ liệu.
Hãy xem xét sự hữu dụng của việc tạo ngưỡng một mức xám đơn giản
để phân đoạn một ảnh cường độ tương phản cao. Hình 26(a) biểu diễn một
ảnh thang-đo-sáng của mã vạch của một sách giáo khoa được scan trên một
máy quét hình phẳng. Phần b biểu diễn kết quả của một tác vụ tạo ngưỡng cơ
bản được thiết kế để chia tách miền tối và sang trên vùng mã vạch. Các bước
nhị phân hóa như vậy thường được sử dụng trong các hệ thống nhận diện ký
tự. Sự tạo ngưỡng ảnh hưởng đến phân cụm dữ liệu điểm ảnh thành hai nhóm
dựa trên phép đo cường độ một chiều [Rosenfeld 1969; Dunn et al.1974].
Một bước xử lý sau chia tách các lớp thành các vùng được liên kết. Trong
khi đó ngưỡng mức xám đơn giản là đủ môi trường ảnh được kiểm soát được
tiếp nhận và nhiều nhà khoa học đã cống hiến các phương pháp thích hợp cho
-64-

việc tạo ngưỡng [Weszka 1978; Trier và Jain 1995], các ảnh phức tạp đỏi
hỏi nhiều kỹ thuật phân đoạn chi tiết hơn.
Nhiều phân đoạn sử dụng cả hai phép đo quang phổ (ví dụ như Máy
quét đa quang phổ được sử dụng trong viễn thám) và không gian (dựa trên vị
trí điểm ảnh trên một ảnh phẳng).Phép đo ở mỗi điểm ảnh từ đó tương ứng
trực tiếp tới nội dung của một mẫu.

(a)

(b)

(c)
Hình 26. Nhị phân hóa thông qua ngưỡng. (a): Ảnh thang đo xám gốc. (b)
Biểu đồ mức xám. (c) Kết quả của việc tạo ngưỡng
-65-

1.2 Phân đoạn ảnh dựa vào phân cụm dữ liệu


Việc áp dụng các tính năng của địa phương để phân khúc clustering
quy mô hình ảnh màu xám-được tài liệu trong Schachter et al. [1979]. Tài liệu
nhấn mạnh đến việc lựa chọn thích hợp của tính năng ở mỗi điểm ảnh chứ
không phải là phương pháp phân cụm, và đề xuất việc sử dụng các mặt phẳng
tọa độ hình ảnh (không gian thông tin) là tính năng bổ sung để được làm việc
tại các phân nhóm dựa trên phân khúc. Mục tiêu của phân cụm là có được một
chuỗi các cụm hyperellipsoidal bắt đầu với các trung tâm cụm vị trí tại các vị
trí mật độ tối đa trong không gian mẫu, và các cụm phát triển về các trung tâm
cho đến khi một thử nghiệm tốt đẹp của  2 cho phù hợp đã bị vi phạm. Một
loạt các tính năng được thảo luận và áp dụng cho cả hai màu xám và màu sắc
hình ảnh.
Một thuật toán phân cụm kết tụ đã được áp dụng bởi Silverman và
Cooper [1988] cho vấn đề của học không giám sát của cụm vectơ hệ số cho
hai mô hình ảnh tương ứng với các phân đoạn hình ảnh. Các mô hình đầu tiên
là đa thức cho các số đo hình ảnh quan sát; giả định ở đây là hình ảnh là một
bộ sưu tập của đồ thị liền kề nhiều bề mặt, mỗi một hàm đa thức của các mặt
phẳng tọa độ hình ảnh, được lấy mẫu trên lưới đường quét để tạo ra các hình
ảnh quan sát . Thuật toán tiền xử lý bằng cách lấy vectơ của hệ số của hình
vuông ít nhất phù hợp với các dữ liệu trong cửa sổ hình ảnh M phân chia. Một
thuật toán phân cụm kết tụ hòa trộn (ở mỗi bước) hai cụm có một cụm toàn
cầu tối thiểu giữa-khoảng cách Mahalanobis . Cùng một khuôn khổ đã được
áp dụng đối với phân khúc của hình ảnh kết cấu, nhưng có hình ảnh như mô
hình đa thức là không thích hợp, và một tham số ngẫu nhiên Markov mô hình
trường đã được giả định để thay thế.
Wu và Leahy [1993] mô tả việc áp dụng các nguyên tắc của dòng chảy
mạng để phân loại không giám sát, yielding một cuốn tiểu thuyết thuật toán
phân cấp cho phân cụm dữ liệu. Về bản chất, kỹ thuật này xem các mẫu
không nhãn như các nút trong một đồ thị, trong đó trọng lượng của một cạnh
(chẳng hạn như dung tích) là một thước đo giống nhau giữa các nút tương
ứng. Cụm được xác định bằng cách loại bỏ các cạnh của đồ thị để tạo phân
chia kết nối đồ thị con. Trong phân khúc hình ảnh, điểm ảnh được 4-láng
giềng hoặc 8-láng giềng ở các cạnh chia sẻ hình ảnh máy bay trong đồ thị kề
-66-

xây dựng, và trọng lượng của một cạnh đồ thị dựa trên độ lớn của một cạnh
hình ảnh đưa ra giả thuyết giữa các điểm ảnh liên quan (độ lớn này được tính
bằng cách sử dụng mặt nạ đơn giản phái sinh). Do đó, việc phân đoạn này
hoạt động bằng cách tìm đường nét đóng cửa trong hình ảnh, và tốt nhất là có
nhãn cạnh hơn là dựa trên khu vực trên.
Trong Vinod et al. [1994], hai mạng nơ-ron thần kinh được thiết kế để
thực hiện mô hình phân cụm khi kết hợp. Một hai tầng mạng hoạt động trên
một biểu đồ đa chiều của dữ liệu để xác định "nguyên mẫu" được sử dụng để
phân loại các mô hình đầu vào thành các cụm. Những nguyên mẫu được phát
triển thành mạng lưới phân loại, một hai điều hành mạng lớp trên biểu đồ các
dữ liệu đầu vào, nhưng được định hướng để có trọng lượng khác nhau từ
mạng lựa chọn nguyên mẫu. Trong cả hai mạng lưới, các biểu đồ của hình
ảnh được sử dụng để trọng lượng đóng góp của mô hình là một trong những
mẫu láng giềng theo xem xét đến vị trí của nguyên mẫu hay phân loại cuối
cùng; như vậy, nó có khả năng là mạnh mẽ hơn khi so sánh với các kỹ thuật
đó là một giả định tiềm ẩn mật độ tham số chức năng cho các lớp mẫu. Kiến
trúc này đã được thử nghiệm trên màu xám quy mô và các vấn đề phân khúc màu.
Jolion et al. [1991] mô tả một quá trình để tách các cụm tuần tự từ các
mô hình đầu vào thiết lập bằng cách xác định các khu vực hyperellipsoidal có
chứa một phần nhỏ trong quy định của các điểm không phân lớp trong bộ này.
Các khu vực chiết xuất được so sánh với nhất lắp đa biến Gaussian mật độ
thông qua một thử nghiệm Kolmogorov-Smirnov, và chất lượng phù hợp
được sử dụng như là một con số đáng để chọn vùng tốt nhất 'ở mỗi phép lặp.
Quá trình này tiếp tục cho đến khi dừng lại là một tiêu chí hài lòng. Thủ tục
này được áp dụng cho các vấn đề của lựa chọn ngưỡng cho phân khúc đa
ngưỡng của hình ảnh cường độ và phạm vi phân khúc của hình ảnh.
Kỹ thuật Clustering cũng đã được thành công được sử dụng cho các
phân đoạn của nhiều hình ảnh , đó là một nguồn phổ biến của các dữ liệu
đầu vào cho ba chiều đối tượng hệ thống công nhận [Jain và Flynn 1993].
Phạm vi cảm biến ảnh lưới tọa độ thường trở lại với giá trị đo tại mỗi điểm
ảnh đang được các tọa độ của một vị trí trong không gian 3D. Những vị trí 3D
có thể được hiểu là những địa điểm mà các tia đang nổi lên từ các địa điểm máy
bay hình ảnh trong một bó cắt nhau của các đối tượng ở phía trước của cảm biến.
-67-

Các tính năng của cơ bản của khái niệm phân cụm dữ đặc biệt hấp dẫn
cho các phân khúc hình ảnh từ nhiều (không giống như đo cường độ) các
phép đo tại mỗi điểm ảnh có cùng một đơn vị (chiều dài); này sẽ làm cho
quảng cáo hoc biến đổi hoặc chuẩn hóa hình ảnh tính năng không cần thiết
nếu mục tiêu của họ là để áp đặt bằng rộng trên các tính năng đó. Tuy nhiên,
phạm vi ảnh phân đoạn thường gắn thêm để đo không gian chức năng, loại bỏ
lợi thế này.
Hình ảnh của một hệ thống được mô tả trong phạm vi phân khúc
Hoffman và Jain [1987] sử dụng phân cụm bình phương lỗi trong một không
gian sáu chiều tính năng như một nguồn của một phân khúc "ban đầu" là tinh
tế (thường là qua việc sáp nhập các phân đoạn) thành đầu ra các phân đoạn.
Kỹ thuật này được nâng cao trong Flynn và Jain [1991], và được sử dụng
trong một so sánh có hệ thống gần đây của phân đoạn hình ảnh [Hoover et al.
1996]; như vậy, nó có lẽ là một trong những giới hạn kỹ thuật phân cụm tồn
tại lâu nhất phạm vi đã thực hiện tốt trên rất nhiều hình ảnh.
Việc phân đoạn này hoạt động như sau. Tại mỗi điểm ảnh (i, j) trong
phạm vi hình ảnh đầu vào, các đo lường được ký hiệu tương ứng 3D
x ij , yij , z ij , nơi xij là một hàm tuyến tính của j (số cột) và yij là một hàm tuyến

tính của tôi (số lượng hàng). Một k  k láng giềng của (i, j) được sử dụng để
ước lượng bề mặt 3D nij  nijx , nijy , nijz  tại (i, j), thông thường bằng việc tìm kiếm
ít nhất-ô vuông phẳng phù hợp với các điểm 3D trong láng giềng. Các véc tơ
tính năng cho điểm ảnh tại (i, j) là sáu chiều xij , yij , zij , nijx , nijy , nijz  , và một phân
khúc ứng cử viên được tìm thấy bởi phân cụm các vectơ tính năng này. Vì các
lý do thực tế, không phải vector tính năng của mỗi điểm ảnh được sử dụng
trong các thủ tục phân cụm; thường 1.000 vectơ tính năng được lựa chọn bởi
lấy mẫu phụ.
Thuật toán CLUSTER [Jain và Dubes 1988] đã được sử dụng để có
được các nhãn phân đoạn cho mỗi điểm ảnh. CLUSTER là một thuật toán mở
rộng của thuật toán k-means, nó có khả năng xác định một số cụm của một
tập dữ liệu, mỗi một số khác nhau của các cụm. Hoffman và Jain [1987] cũng
thử nghiệm với các kỹ thuật phân nhóm khác (ví dụ, hoàn chỉnh, liên kết, liên
kết đơn, đồ thị, lý thuyết, và các thuật toán lỗi bình phương) và hàng
CLUSTER để cung cấp sự kết hợp tốt nhất về hiệu suất và độ chính xác. Một
-68-

lợi thế bổ sung của CLUSTER là nó tạo ra một chuỗi các cụm đầu ra (tức là,
một cụm 2-giải pháp lập thông qua một Kmax – cụm giải pháp mà Kmax được
chỉ định bởi người dùng và thường là 20 hoặc hơn); mỗi phân nhóm theo thứ
tự sản lượng này thống kê clustering kết hợp giữa-cụm tách và trong cụm
phân tán -. Phân cụm tối ưu hóa các số liệu thống kê này được chọn là một
trong cụm tốt nhất. Mỗi điểm ảnh trong phạm vi hình ảnh được gán nhãn
phân đoạn của các trung tâm cụm gần nhất. Điều này bước phân loại khoảng
cách tối thiểu không được bảo đảm để sản xuất phân đoạn đó được kết nối
trong mặt phẳng hình ảnh, do vậy, một thành phần kết nối ghi nhãn thuật toán
phân bổ các nhãn mới cho các khu vực phân chia được đặt trong cùng một
nhóm. Hoạt động tiếp theo bao gồm các xét nghiệm loại bề mặt, việc sáp nhập
các bản vá liền kề sử dụng một thử nghiệm cho sự hiện diện của mép nhăn
hoặc nhảy cạnh giữa các phân đoạn liền kề, và ước lượng thông số bề mặt.

(a) (b)

(c) (d)
Hình 27. Phân đoạn ảnh bằng phân cụm dữ liệu.
(a): Ảnh đầu vào. (b): Mặt bằng chính tắc hình ảnh được chọn. (c): Bước đầu
phân đoạn (19 nhóm giải pháp) trả lại bằng cách sử dụng CLUSTER 1000
sáu chiều mẫu từ hình ảnh như là một mẫu thiết lập. (d): kết quả phân đoạn
cuối cùng(8 phân đoạn) (c) (d) sau khi đã xử lý
-69-

Hình 27 cho thấy tiến trình này được áp dụng cho một loạt hình
ảnh. Một phần của hình hiển thị nhiều hình ảnh đầu vào; phần b cho thấy sự
phân bố của bề mặt. Trong c một phần, các phân đoạn đầu tiên trở lại bởi
CLUSTER và sửa đổi để đảm bảo phân đoạn kết nối được hiển thị. Phần d
cho thấy phân khúc cuối cùng được tạo ra bởi việc sáp nhập các bản vá lỗi kề
mà không có một mép nhăn đáng kể giữa chúng. Các cụm cuối cùng hợp lý
khác biệt đại diện cho các bề mặt có trong này đối tượng phức tạp.
Các phân tích kết cấu hình ảnh đã được quan tâm bởi các nhà nghiên
cứu trong vài năm. Kết cấu kỹ thuật phân đoạn đã được phát triển bằng cách
sử dụng một loạt các mô hình kết cấu và hoạt động hình ảnh. Nguyên và
Cohen [1993], kết cấu phân khúc hình ảnh đã được địa chỉ hóa mẫu với hình
ảnh như là một hệ thống phân cấp của hai trường Markov ngẫu nhiên, lấy
một số số liệu thống kê đơn giản từ mỗi khối hình để tạo thành một vector
tính năng, và phân nhóm các khối bằng cách sử dụng phương pháp K-means
mờ. Thủ tục phân cụm ở đây là sửa đổi để cùng nhau ước tính số lượng các
cụm cũng như các thành viên trong mờ của mỗi véc tơ tính năng cho các cụm
khác nhau.
Một hệ thống phân chia hình ảnh cho kết cấu đã được mô tả bởi Jain và
Farrokhnia [1991]; ở đó, bộ lọc Gabor đã được sử dụng để có được một bộ
28-định hướng và tính năng chọn lọc các kết cấu trong các láng giềng của
mỗi điểm ảnh. 28 tính năng được giảm đến một số lượng nhỏ hơn thông qua
một thủ tục lựa chọn tính năng, và các tính năng kết quả được tiền xử lý và
sau đó nhóm bằng cách sử dụng chương trình CLUSTER.
Một bảng thống kê [Dubes 1987] được sử dụng để lựa chọn tốt nhất các
cụm. Tối thiểu khoảng cách phân loại được sử dụng để nhãn mỗi điểm ảnh
trên hình ảnh gốc. Kỹ thuật này đã được thử nghiệm trên một số kết cấu ghép
bao gồm các kết cấu Brodatz tự nhiên và hình ảnh tổng hợp. Hình 28 (a) cho
thấy một khảm kết cấu bao gồm bốn đầu vào của các kết cấu Brodatz phổ
biến [Brodatz 1966]. Phần b cho thấy phân khúc sản xuất khi các tính năng
lọc Gabor được ghép để chứa các thông tin không gian (tọa độ pixel). Bộ lọc
này dựa vào kỹ thuật Gabor đã được chứng minh rất mạnh và đã được mở
rộng tới các phân đoạn tự động của văn bản trong tài liệu [Jain và hattacharjee
1992] và phân đoạn của các đối tượng trong nền phức tạp [Jain et al. 1997].
-70-

(a) (b)
Hình 28. Kết quả của kết cấu phân đoạn ảnh (a): kết cấu khảm 4 lớp. (b):
bốn nhóm giải pháp thực hiện bởi giải thuật CLUSTER với tọa độ điểm ảnh
bao gồm trong các tính năng thiết lập.
Phân cụm dữ liệu có thể được sử dụng như là một giai đoạn tiền xử lý
để xác định các lớp học mẫu để phân loại giám sát tiếp theo. Taxt và
Lundervold [1994] và Lundervold et al. [1996] mô tả một thuật toán
clustering partitional và một kỹ thuật ghi nhãn hướng dẫn sử dụng để xác định
các lớp vật liệu (ví dụ, não tủy chất lỏng, chất trắng, bắp Khối, khối u) trong
các hình ảnh được đăng ký của một con người có được ở đầu năm kênh khác
nhau hình ảnh cộng hưởng từ (yielding một năm chiều tính năng vector tại
mỗi điểm ảnh). Một số phân cụm đã thu được và kết hợp với kiến thức tên
miền (nhân lực chuyên môn) để xác định các lớp khác nhau. Quyết định quy
định phân loại giám sát được dựa trên những lớp này được lấy. Hình 29 (một)
cho thấy một trong những kênh của một đầu vào-đa quang phổ hình ảnh; phần
b cho thấy 9-cụm kết quả. Thuật toán K-means là đã được áp dụng cho các
phân khúc của LANDSAT hình ảnh trong Solberg et al. [1996]. Các trung
tâm cụm ban đầu được chọn tương tác của một nhà điều hành đào tạo, và
tương ứng với các lớp học sử dụng đất như khu vực đô thị, đất (thực vật miễn
phí) các khu vực, rừng, đồng cỏ, và nước. Hình 30 (một) cho thấy những hình
ảnh đầu vào hoàn trả như màu xám; phần b cho thấy kết quả của thủ tục phân
cụm dữ liệu.
-71-

(a) (b)

Hình 29. Phân đoạn ảnh y tế đa quang phổ. (a)Kênh duy nhất của ảnh đầu
vào. (b) 9 cụm phân đoạn ảnh

(a) (b)
Hình 30: Phân đoạn ảnh LANDSAT. (a) Bản gốc hình ảnh ESA /
EURIMAGE / Sattelitbild). (b): Cảnh đã được phân cụm.
2.Nhận dạng đối tƣợng và ký tự
2.1 Nhận dạng đối tƣợng
Việc sử dụng các phân nhóm để xem nhóm đối tượng 3D cho mục đích
công nhận đối tượng trong phạm vi dữ liệu đã được mô tả trong Dorai và Jain
[1995]. Các thuật ngữ dùng để chỉ xem một hình ảnh phạm vi của một đối
tượng thu được từ bất cứ quan điểm tùy ý. Hệ thống xem xét, làm việc theo
một quan điểm phụ thuộc (hoặc xem trung tâm) cách tiếp cận đối với vấn đề
công nhận đối tượng; mỗi đối tượng được công nhận là đại diện trong điều
khoản của một thư viện hình ảnh loạt các đối tượng đó.
-72-

Có rất nhiều ý có thể có của một đối tượng 3D và mục tiêu một trong
những công việc mà là để tránh kết hợp một đầu vào xem không rõ đối với
từng hình ảnh của từng đối tượng. Một chủ đề phổ biến trong văn học công
nhận đối tượng được lập chỉ mục, trong đó xem chưa biết được sử dụng để
chọn một tập hợp con của điểm của một tập hợp con của các đối tượng trong
cơ sở dữ liệu để so sánh hơn nữa, và từ chối tất cả các điểm khác của đối
tượng. Một trong những cách tiếp cận để đánh chỉ sử dụng các khái niệm của
các tầng lớp xem; một lớp học xem là tập hợp các điểm chất lượng tương tự
của một đối tượng. Trong tác phẩm đó, các lớp học xem đã được xác định bởi
phân cụm dữ liệu; phần còn lại của tiểu mục này vạch ra các kỹ thuật.
Xem đối tượng đã được nhóm lại vào các lớp học dựa trên hình dạng
giống nhau của các tính năng phổ. Mỗi hình ảnh đầu vào của một đối tượng
xem trong sản lượng cô lập một vector tính năng mà nó mô tả. Các tính năng
vector chứa trong mười phút đầu tiên trung tâm của một hình bình thường

m1   (h) H (h) hoá quang phổ phân phối, H (h) , của một đối tượng xem là

thu được từ dữ liệu phạm vi của nó bằng cách xây dựng một biểu đồ của các
giá trị chỉ số hình dạng (có liên quan đến các giá trị bề mặt cong) và tích lũy
tất cả các đối tượng điểm ảnh mà rơi vào mỗi thùng. Bởi bình thường hóa
quang phổ đối với diện tích tổng số đối tượng, quy mô (size) khác nhau mà có
thể tồn tại giữa các đối tượng khác nhau được gỡ bỏ. Tại thời điểm đầu tiên

m1 tính toán mà có ý nghĩa H (h) :

m1   (h) H (h) . (1)
h

Với momen trung tâm khác, mp, 2  p  10 được định nghĩa là :


_
m p   h  m1  H h  (2)
p

Do đó các vecto đặc tính được biểu thị bằng R  m1 , m2 ,..., m10 , nằm
Trong khoảng [-1,1].
1
 2 n

Tại O = O , O ,..., O là một lựa chọn của n đối tượng 3D với cảnh nằm
-73-

i
trong cơ sở dữ liệu. MD. cảnh thứ i của j đối tượng, O j trong cơ sở dữ liệu
i ii i
được biểu thị bằng L j , R j , nơi L j là đối tượng nhãn và R j là vecto đặc
tính.
 i
Cho một tập đối tượng đại diện Ri = L1 , R1 ,  L1 , R1
i i i
 mà mô tả m cảnh
của i đối tượng, mục tiêu là để lấy ra một phần của cảnh
 i i i

Pi = C1 , C2 ,  , Cki . Mỗi cụm trong Pi chứa những cảnh của đối tượng thứ
i mà đối tượng đó đã được cấp tượng tự dựa trên sự không giống nhau giữa
các thời điểm tương ứng với các tính năng của hình quang phổ của các cảnh .
i i
Các biện pháp của không giống nhau giữa R j và Rk được định nghĩa :

D R , R    R 
10
2
i
j
i
k
i
jl  Rkli (3)
l 1

Phân cụm dữ liệu Cảnh(Views)


Một cơ sở dữ liệu chứa khoảng 3,200 ảnh của 10 đối tượng điêu khắc
khác nhau với 320 cảnh được sử dụng [Dorai and Jain 1995].
Các hình ảnh dao động từ 320 quan điểm có thể (xác định bởi lưới tổ
ong của xem-mặt cầu bằng cách sử dụng khối 20 mặt ) của các đối tượng đã
được tổng hợp. Hình 31 cho thấy một tập hợp con của tập hợp các điểm của
Rắn hổ mang được sử dụng trong thử nghiệm. Hình dạng phổ của từng xem là
tính véc tơ đặc tính và sau đó tính năng của nó được xác định. Cảnh của từng
đối tượng đang tụ tập, dựa trên D đo không giống nhau giữa vectơ thời điểm
của họ bằng cách sử dụng các kết nối Đề án clustering thứ bậc [Jain và Dubes
1988]. Các nhóm thứ bậc thu được với 320 cảnh của đối tượng Rắn hổ mang
được hiển thị trong hình 32. Cảnh của nhóm phân cấp chín đối tượng khác
cũng tương tự như các dendrogram trong hình 32. Dendrogram này được cắt
ở mức độ không giống nhau là 0,1 hoặc ít hơn để có được nhỏ gọn và cũng
cách nhau cụm. Các clusterings thu được theo cách này chứng minh rằng
quan điểm của từng đối tượng rơi vào một vài cụm khác biệt rõ rệt. Các trọng
tâm của mỗi cụm này đã được xác định bởi máy tính trung bình của vectơ thời
điểm của lượt xem rơi vào một cụm.
-74-

Hình 31. Một tập con các cảnh của ảnh Rắn hổ mang được chọn từ 320 cảnh
Dorai và Jain [1995] chứng minh rằng phân nhóm này dựa trên xem
nhóm đối tượng phù hợp với thủ tục tạo điều kiện về tính chính xác phân loại
và số lượng phù hợp cần thiết cho việc phân loại đúng của xem thử. Xem đối
tượng được nhóm thành các cụm xem nhỏ gọn và đồng nhất, như vậy chứng
tỏ sức mạnh của cluster dựa trên sơ đồ tổ chức xem và phù hợp với đối tượng
có hiệu quả.
-75-

Hình 32 : Cấu trúc của một nhóm gồm 320 cảnh của một tác phẩm điêu khắc
con rắn hổ mang.
2.2 Nhận dạng ký tự.
Kỹ thuật nhận dạng ký dựa vào phân cụm dữ liệu được phát triển bởi
Connell và Jain [1998] để nhận biết lexemes trong văn bản viết tay cho các
mục đích của nhà văn viết tay công nhận độc lập. Sự thành công của một hệ
thống nhận dạng chữ viết là cực kỳ phụ thuộc vào chấp nhận bởi người sử
dụng tiềm năng. Nhà văn phụ thuộc hệ thống cung cấp một mức độ cao hơn
sự công nhận chính xác hơn so với các hệ thống nhà văn độc lập, nhưng đòi
hỏi một lượng lớn dữ liệu đào tạo. Một nhà văn độc lập hệ thống, mặt khác,
phải có khả năng nhận ra nhiều phong cách văn bản nhằm đáp ứng một người
dùng cá nhân. Khi các biến thiên của phong cách văn bản phải được bắt giữ
bởi một hệ thống tăng, nó càng trở nên khó khăn để phân biệt đối xử giữa các
lớp khác nhau do số lượng chồng chéo nhau trong không gian tính năng này.
Một trong những giải pháp cho vấn đề này là để tách các dữ liệu từ những
-76-

phong cách viết khác nhau cho mỗi lớp học vào lớp con khác nhau, được gọi
là lexemes. Những lexemes đại diện cho các phần của dữ liệu được dễ dàng
hơn tách ra từ các dữ liệu của các tầng lớp khác hơn mà lexeme thuộc.
Trong hệ thống này, chữ viết là bị bắt bởi số hoá các tọa độ (x, y) và vị
trí của các cây bút và vị trị đặt điểm bút (lên hoặc xuống) với tỷ lệ lấy mẫu
không đổi. Sau một số lấy lại mẫu, bình thường hoá, và làm mịn, mỗi nét bút
là đại diện như là một chuỗi dài biến-điểm. Một số liệu dựa trên đàn hồi mẫu
lập trình phù hợp và năng động, được xác định để cho phép khoảng cách giữa
hai nét để được tính toán.
Sử dụng các khoảng cách tính bằng cách này, một ma trận gần nhau
được xây dựng của từng loại chữ số (tức là, 0 thông qua 9). Mỗi biện pháp ma
trận khoảng cách lớp trong cho một lớp chữ số cụ thể. Chữ số trong một lớp
đặc biệt là nhóm trong một thực nghiệm để tìm một số lượng nhỏ các nguyên
mẫu. Phân cụm được thực hiện bằng cách sử dụng chương trình CLUSTER
mô tả ở trên [Jain và Dubes 1988], trong đó véc tơ tính năng cho một chữ số
của nó là N lân cận đến con số của cùng một lớp. CLUSTER phân nhóm tốt
nhất cho mỗi giá trị của K trên một số phạm vi, trong đó K là số cụm vào đó
dữ liệu này là để được phân vùng. Theo dự đoán, có nghĩa là lỗi bình phương
(MSE) giảm đơn điệu như là một chức năng của K. Các "tối ưu" giá trị của K
được chọn bằng cách xác định một “đầu gối” trong biểu đồ của MSE vs K.
Khi đại diện cho một cụm chữ số của một mẫu thử nghiệm duy nhất, tốt nhất
nhận diện on-line kết quả được công nhận đã thu được bằng cách sử dụng các
chữ số đó là gần nhất để tới trung tâm cụm's. Sử dụng sơ đồ này, một tỷ lệ
nhận diện chính xác là 99,33%.
3. Truy hồi thông tin
Thông tin hồi thông tin (Information Retrieval) có liên quan với lưu trữ
tự động và lấy các tài liệu [Rasmussen 1992]. Nhiều thư viện các trường đại
học sử dụng hệ thống IR để cung cấp truy cập vào các cuốn sách, tạp chí, và
các tài liệu khác. Các thư viện đó sử dụng đề án Li-brary of Congress
Classification (LCC) (Phân loại Thư viện Quốc hội Mỹ), đề án này hiệu quả
cho việc lưu trữ và truy tìm sách. Đề án LCC bao gồm các lớp có nhãn A đến
Z [LC Classification Outline 1990] được sử dụng để ký tự hóa sách thuộc các
đối tượng khác nhau. Ví dụ, nhãn Q tương ứng với sách trong lĩnh vực khoa
-77-

học, và bảo đảm chất lượng phân lớp được phân công toán học. Nhãn QA76
tới QA76.8 được sử dụng để phân loại sách liên quan đến máy tính và các lĩnh
vực khác của khoa học máy tính.
Có một số vấn đề liên quan đến việc phân loại các sách bằng cách sử
dụng sơ đồ LCC. Một số trong số này được liệt kê dưới đây:
(1) Khi một người sử dụng đang tìm kiếm một cuốn sách trong thư viện
mà với một chủ đề anh ta quan tâm, số LCC một mình có thể không thể để lấy
tất cả các sách có liên quan. Điều này là do số lượng phân loại được chỉ định
cho những cuốn sách hay các loại chủ đề thường được nhập vào trong cơ sở
dữ liệu không có đủ thông tin liên quan đến tất cả các chủ đề được bảo hiểm
trong một cuốn sách. Để minh họa điểm này, chúng ta hãy xem xét cuốn sách
“Các thuật toán cho phân cụm dữ liệu” của Jain và Dubes [1988]. Số LCC của
nó là 'QA 278.J35'. Trong số này LCC, QA 278 tương ứng với chủ đề 'phân
tích cụm', J tương ứng với tên tác giả đầu tiên và 35 là số serial phân công của
Thư viện Quốc hội. Các loại chủ đề cho cuốn sách này được cung cấp bởi nhà
xuất bản (mà thường được nhập vào trong cơ sở dữ liệu để tạo điều kiện tìm
kiếm) là nhóm phân tích, xử lý dữ liệu và thuật toán. Có một chương trong
sách này [Jain và Dubes 1988] rằng đề với tầm nhìn máy tính, xử lý hình ảnh,
và phân khúc hình ảnh. Vì vậy, một người sử dụng tìm kiếm cho văn học trên
máy vi tính và tầm nhìn, đặc biệt, hình ảnh phân khúc sẽ không thể truy cập
cuốn sách này bằng cách tìm kiếm cơ sở dữ liệu với sự giúp đỡ của một trong
hai số LCC hoặc các loại đối tượng được cung cấp trong cơ sở dữ liệu. Số
LCC cho sách tầm nhìn máy tính được TA 1632 [LC Classification 1990] đó
là rất khác với QA số 278.J35 được đăng ký cho cuốn sách này.
2) Có một vấn đề cố hữu trong giao LCC số sách ở một khu vực phát
triển nhanh. Ví dụ, chúng ta hãy xem xét các khu vực của các mạng thần kinh.
Ban đầu, thể loại 'QP' trong LCC Đề án đã được sử dụng để nhãn sách và thủ
tục tố tụng tại hội nghị khu vực này. Ví dụ, Proceedings of the Joint
International Conference on Neural Networks [IJCNN'91] được giao QP của
số 363,3 '. Tuy nhiên, hầu hết các cuốn sách gần đây trên các mạng thần kinh
được cho một số cách sử dụng các nhãn thể loại 'QA'; Proceedings of
IJCNN'92 các [IJCNN'92] được phân công bảo đảm chất lượng của số 76,87 '.
Nhiều nhãn cho sách đối phó với cùng một chủ đề sẽ buộc họ được đặt trên
-78-

ngăn xếp khác nhau trong một thư viện. Do đó, có một cần phải cập nhật các
nhãn phân loại theo thời gian trong một kỷ luật mới nổi.
(3) việc giao một số cho một cuốn sách mới là một vấn đề khó khăn.
Một cuốn sách có thể đối phó với các chủ đề tương ứng với hai hoặc nhiều số
LCC, và do đó, chỉ định một số duy nhất cho cuốn sách như vậy là rất khó khăn.
Murty và Jain [1995] mô tả một kiến thức dựa trên lược đồ phân nhóm
để đại diện nhóm các cuốn sách, trong đó thu được bằng cách sử dụng CR
ACM (Hội máy tính Máy vi tính Xem lại) phân loại cây [ACM CR
Classifications 1994]. Cây này được sử dụng bởi các tác giả góp phần ACM
ấn phẩm khác nhau để cung cấp các từ khóa trong các hình thức thể loại ACM
nhãn CR. Cây này bao gồm 11 nút ở cấp độ đầu tiên. Các nút là có nhãn A
đến K. Mỗi nút trong cây này có một nhãn đó là một chuỗi của một hay nhiều
ký hiệu. Những biểu tượng này được ký tự chữ-số. Ví dụ, I515 là nhãn của
một nút cấp độ thứ tư trong cây.
3.1 Biểu diễn mẫu
Mỗi cuốn sách được thể hiện như một danh sách tổng quát [Sangal
1991] của những dây bằng cách sử dụng phân loại cây ACM CR. Vì mục đích
ngắn gọn trong đại diện, các cấp, các nút thứ tư trong cây phân loại ACM CR
được gắn nhãn bằng cách sử dụng chữ số 1-9 và ký tự A đến Z. Ví dụ, các nút
con của I.5.1 (mô hình) được dán nhãn I.5.1 0,1 đến I.5.1.6. Ở đây, I.5.1.1
tương ứng với các nút có nhãn xác định, và I.5.1.6 là viết tắt của nút có nhãn
structural.Ina thời trang tương tự, tất cả các cấp, các nút thứ tư trong cây có
thể được gắn nhãn là cần thiết. Từ bây giờ, các dấu chấm ở giữa biểu tượng
kế tiếp sẽ được bỏ qua để đơn giản hóa các đại diện. Ví dụ, I.5.1.1 sẽ được ký
hiệu là I511.
Minh họa cho quá trình này đại diện với sự giúp đỡ của các cuốn sách
của Jain và Dubes [1988]. Có năm chap-ters trong cuốn sách này. Để đơn
giản chế biến, chỉ xem xét có các thông tin trong các nội dung chương. Có
một mục duy nhất trong bảng nội dung cho các chương 1, 'Giới thiệu', và vì
vậy không lấy bất kỳ từ khoá từ này. Chương 2, có nhãn ' Dữ liệu Đại diện,'
đã đề mục tương ứng với các nhãn của các nút trong cây phân loại ACM CR
[ACM CR Classifications 1994] được đưa ra dưới đây:
(1a) I522 (feature evaluation and selection),
-79-

(2b) I532 (similarity measures), and


(3c) I515 (statistical).
Dựa trên những phân tích trên, Chương 2 của Jain và Dubes [1988] có
thể được đặc trưng bởi sự phân ly trọng ((I522 ∨ I532 ∨ I515) (1,4)). Các
trọng lượng (1,4) biểu thị rằng nó là một trong bốn chương, trong đó có vai
trò trong các đại diện của cuốn sách. Căn cứ vào bảng nội dung, chúng tôi có
thể sử dụng một hoặc nhiều dây I522, I532, I515 và đại diện cho Chương 2.
Tương tự như vậy, chúng tôi có thể đại diện cho chương khác trong cuốn sách
này như các phép tuyển trọng dựa trên các bảng nội dung và phân loại cây
ACM CR. Các đại diện của toàn bộ cuốn sách, sự kết hợp của tất cả các cơ
quan đại diện chương, được cho bởi (((I522 ∨ I532 ∨ I515) (1,4) ∧ ((I515
∨ I531) (2,4)) ∧ ((I541 ∨ I46 ∨ I434) (1,4))).
Hiện nay, các đại diện được tạo ra bằng tay bằng cách quét các bảng
nội dung của sách trong lĩnh vực khoa học máy tính như ACM cây phân loại
CR cung cấp kiến thức về cuốn sách khoa học máy tính. Các chi tiết của bộ
sưu tập của cuốn sách được sử dụng trong nghiên cứu này có sẵn trong Murty
và Jain [1995].
3.2 Phép đo tƣơng tự
Sự giống nhau giữa hai cuốn sách dựa trên sự giống nhau giữa các
chuỗi tương ứng. Hai trong số các chức năng nổi tiếng, khoảng cách giữa một
cặp dây được [Baeza-Yates 1992] khoảng cách Hamming và sửa khoảng
cách. Không phải của các chức năng này khoảng cách hai có thể được sử
dụng trong các ứng dụng có ý nghĩa này. Ví dụ sau minh hoạ điểm. Hãy xem
xét ba dây I242, I233, và H242. Những chuỗi là các nhãn (predicate logic đại
diện cho kiến thức, lập trình logic, và các hệ thống cơ sở dữ liệu phân tán)
trong ba cấp độ thứ tư, các nút trong cây phân loại ACM CR. Các nút I242 và
I233 là cháu của các nút có nhãn I2 (trí tuệ nhân tạo) và H242 là một cháu của
các nút có nhãn H2 (cơ sở dữ liệu quản lý). Vì vậy, khoảng cách giữa I242 và
I233 phải nhỏ hơn mà giữa I242 và H242. Tuy nhiên, khoảng cách Hamming
và sửa khoảng cách [Baeza-Yates 1992] cả hai đều có một giá trị 2 giữa I242
và I233 và giá trị của 1 giữa I242 và H242. Hạn chế này thúc đẩy định nghĩa
của một biện pháp tương tự mới mà bắt đúng sự giống nhau giữa các chuỗi ở
trên. Sự giống nhau giữa hai chuỗi được định nghĩa là tỷ lệ chiều dài của tiền
-80-

tố phổ biến nhất [Murty và Jain 1995] giữa hai dây với chiều dài của chuỗi
đầu tiên. Ví dụ, sự giống nhau giữa chuỗi I522 và I51 là 0,5. Các biện pháp
tương tự được đề xuất là không đối xứng, vì sự giống nhau giữa I51 và I522
là 0,67. Các giá trị tối thiểu và tối đa là biện pháp tương tự này là 0,0 và 1,0,
tương ứng. Các kiến thức về các mối quan hệ giữa các nút trong cây phân loại
ACM CR là bị bắt bởi các đại diện trong các hình thức dây. Ví dụ, nút có
nhãn công nhận là mẫu đại diện là I5 chuỗi, trong khi I53 chuỗi tương ứng với
các nút có nhãn clustering. Sự giống nhau giữa hai nút (I5 và I53) là 1,0. Một
biện pháp đối xứng của tương [Murty và Jain 1995] được sử dụng để xây
dựng một ma trận tương tự có kích thước 100 x 100 tương ứng với 100 cuốn
sách được sử dụng trong các thí nghiệm.
3.3 Một giải thuật cho phân cụm dữ liệu sách
Vấn đề phân nhóm có thể được nêu như sau. Cho một bộ sưu tập B của
cuốn sách, chúng ta cần để có được một tập C thiết lập các cụm. Một gần
dendrogram(cây các cụm) [Jain và Dubes 1988], sử dụng Thuật toán phân
cụm kết nối kết tụ hoàn toànhoàn để thu thập 100 cuốn sách được thể hiện
trong hình 33. Bảy cụm thu được bằng cách chọn một ngưỡng   có giá trị
0,12. Nó nổi tiếng mà các giá trị khác nhau cho   có thể cung cấp cho
clusterings khác nhau. Ngưỡng giá trị này được chọn bởi vì " khoảng cách "
trong dendrogram giữa các cấp mà sáu và bảy cụm được hình thành là lớn
nhất. Xét nghiệm các lĩnh vực chủ đề của cuốn sách [Murty và Jain 1995]
trong các cụm tiết lộ rằng các cụm thu được là thực sự có ý nghĩa. Mỗi cụm
được đại diện bằng cách sử dụng một danh sách các chuỗi s và cặp sf tần số,
nơi sf là số sách trong các cụm, trong đó s là hiện tại. Ví dụ, cụm c1 chứa 43
cuốn sách thuộc về nhận diện mô hình, các mạng thần kinh, trí tuệ nhân tạo và
tầm nhìn máy tính; một phần của R(C1) đại diện của nó được đưa ra dưới đây.
W(C1) = ((B718,1), (C12,1), (D0,2),
(D311,1), (D312,2), (D321,1),
(D322,1), (D329,1),... (I46,3),
(I461,2), (I462,1), (I463, 3),
... (J26,1), (J6,1),
(J61,7), (J71,1))
-81-

Những cụm sách và mô tả cluster tương ứng có thể được sử dụng như
sau: Nếu một người sử dụng đang tìm kiếm sách, nói, về hình ảnh phân khúc
(I46), sau đó chúng ta chọn cụm C1 vì đại diện của mình có chứa I46 chuỗi.
Sách B2 (Neurocomputing) và B18 (Neural Networks: Lateral Inhibition) là
cả hai thành viên của nhóm C1 mặc dù số LCC của họ khá khác nhau (B2 là
QA76.5.H4442, B18 là QP363.3.N33).
Bốn sách bổ sung có nhãn B101, B102, B103, B104 và đã được sử
dụng để nghiên cứu các vấn đề của việc phân công phân loại số sách mới.
Những số LCC của những cuốn sách này là: (B101) Q335.T39, (B102)
QA76.73.P356C57, (B103) QA76.5.B76C.2, và (B104) QA76.9D5W44.
Những quyển sách này được giao cho các cụm dựa trên phân loại hàng xóm
gần nhất. Những hàng xóm gần nhất của B101, một cuốn sách về nhân tạo
tình báo, là B23 và vì vậy B101 được phân công cụm C1. Nó được quan sát
thấy sự phân công của bốn sách các cụm tương ứng là có ý nghĩa, chứng tỏ
rằng kiến thức dựa trên phân cụm dữ liệu rất hữu ích trong việc giải quyết các
vấn đề liên quan đến lấy tài liệu.
4. Khai phá dữ liệu
Trong những năm gần đây chúng ta đã thấy bao giờ tăng khối lượng dữ
liệu thu thập của tất cả các loại. Với rất nhiều dữ liệu có sẵn, nó là cần thiết để
phát triển các thuật toán mà có thể lấy thông tin từ các cửa hàng có ý nghĩa
rộng lớn. Tìm kiếm nuggets hữu ích của thông tin giữa các số lượng rất lớn
của các dữ liệu đã được biết đến như là các lĩnh vực khai phá dữ liệu.
Khai phá dữ liệu có thể được áp dụng cho quan hệ, giao dịch, và cơ sở
dữ liệu không gian, cũng như các cửa hàng lớn dữ liệu có cấu trúc như World
Wide Web. Có nhiều dữ liệu trong hệ thống khai thác sử dụng ngày nay, và
các ứng dụng bao gồm Cục Ngân khố Hoa Kỳ phát hiện rửa tiền, Hiệp hội
Bóng rổ Quốc gia huấn luyện viên phát hiện xu hướng và mô hình của các
cầu thủ chơi cho cá nhân và các đội, và phân loại các mô hình của trẻ em
trong hệ thống chăm sóc nuôi dưỡng [Hedberg 1996] . Một số tạp chí gần đây
đã có những vấn đề đặc biệt về khai phá dữ liệu [1996 Cohen, Cross 1996,
Wah 1996].
-82-

4.1 Khai phá dữ liệu bằng Phƣơng pháp tiếp cận.


Khai phá dữ liệu, giống như phân cụm dữ liệu, là một hoạt động thăm
dò, do đó, phương pháp phân cụm dữ liệu đang rất thích hợp để khai phá dữ
liệu. Phân cụm dữ liệu thường là một bước khởi đầu quan trọng của một số
trong quá trình khai phá dữ liệu [Fayyad 1996]. Một số phương pháp khai
phá dữ liệu sử dụng phương pháp phân cụm dữ liệu được cơ sở dữ liệu phân
khúc, mẫu tiên đoán, và trực quan hóa cơ sở dữ liệu lớn.
Phân đoạn. Phương pháp phân cụm dữ liệu được sử dụng trong khai
phá dữ liệu vào cơ sở dữ liệu phân khúc thành các nhóm đồng nhất. Điều này
có thể phục vụ mục đích của nén dữ liệu (làm việc với các cụm hơn là các cá
nhân), hoặc để nhận biết các đặc điểm của dân số phụ thuộc mà có thể được
nhắm mục tiêu cho các mục đích cụ thể (ví dụ, tiếp thị nhằm vào người già).
Thuật toán phân cụm dữ liệu K-means [Faber 1994] đã được sử dụng
để phân cụm điểm ảnh trong hình ảnh Landsat [Faber et al. 1994]. Mỗi điểm
ảnh ban đầu có 7 giá trị từ các ban nhạc vệ tinh khác nhau, bao gồm hồng
ngoại. Những giá trị 7 là khó khăn cho con người để đồng hóa và phân tích
mà không cần sự trợ giúp. Các điểm ảnh với các giá trị 7 tính năng được
nhóm thành 256 nhóm, sau đó mỗi điểm ảnh được gán giá trị của cụm trung
tâm. Hình ảnh này sau đó có thể được hiển thị với những thông tin không gian
còn nguyên vẹn. Con người người xem có thể nhìn vào một hình ảnh đơn và
xác định một khu vực quan tâm (ví dụ, đường cao tốc hoặc rừng) và nhãn nó
như là một khái niệm. Hệ thống này sau đó xác định điểm ảnh khác trong
cùng một nhóm như là một ví dụ của khái niệm đó.
Đoán trước mẫu. Thống kê phương pháp phân tích dữ liệu thường liên
quan đến thử nghiệm một mô hình giả thuyết của các nhà phân tích đã có
trong tâm trí. Khai thác dữ liệu có thể giúp người dùng phát hiện giả thuyết
tiềm năng trước khi sử dụng các công cụ thống kê. Đoán trước mô hình sử
dụng phân nhóm để các nhóm, sau đó infers quy tắc để characterize các nhóm
và đề xuất các mô hình. Ví dụ, người đăng ký tạp chí có thể được nhóm dựa
trên một số yếu tố (tuổi tác, giới tính, thu nhập, vv), sau đó các nhóm kết quả
đặc trưng trong một nỗ lực để tìm một mô hình mà sẽ phân biệt các thuê bao
này sẽ gia hạn đăng ký của họ từ những người mà sẽ không [Simoudis 1996].
Hình ảnh. Cụm trong cơ sở dữ liệu lớn có thể được sử dụng để hình dung, để
-83-

hỗ trợ các nhà phân tích của con người trong việc xác định các nhóm và nhóm
con có đặc điểm tương tự. WinViz [Lee và Ong 1996] là một công cụ khai
thác dữ liệu trực quan, trong đó có nguồn gốc cụm có thể được xuất khẩu như
các thuộc tính mới mà sau đó có thể được đặc trưng bởi hệ thống. Ví dụ, ngũ
cốc ăn sáng được nhóm theo calo, đạm, chất béo, natri, chất xơ, carbohydrate,
đường, kali, vitamin và các nội dung trên phục vụ. Khi thấy các cụm kết quả,
người sử dụng có thể xuất các cụm để Win-Viz là thuộc tính. Hệ thống này
cho thấy rằng một trong những cụm được đặc trưng bởi nội dung kali cao, và
các nhà phân tích của con người nhận ra các cá nhân trong nhóm như là thuộc
cám "gia đình ngũ cốc", dẫn đến một khái quát rằng "ngũ cốc, cám nhiều chất
kali."
4.2 Khai phá dữ liệu có cấu trúc lớn.
Khai thác dữ liệu thường được thực hiện trên cơ sở dữ liệu quan hệ
giao dịch và cũng đã xác định các lĩnh vực mà có thể được sử dụng như là các
tính năng, nhưng đã được nghiên cứu gần đây về cơ sở dữ liệu có cấu trúc lớn
như World Wide Web [Etzioni 1996].
Ví dụ về các nỗ lực gần đây để phân loại các văn bản web bằng cách sử
dụng từ ngữ hoặc các chức năng của các từ như tính năng bao gồm Maarek và
Shaul [1996] và Chekuri et al. [1999]. Tuy nhiên, bộ tương đối nhỏ các mẫu
đào tạo có nhãn và chiều hạn chế rất lớn sự thành công cuối cùng của tự động
phân loại tài liệu web dựa trên những từ như tính năng.
Chứ không phải là nhóm tài liệu trong một không gian tính từ,
Wulfekuhler và Punch [1997] cụm từ từ một bộ sưu tập nhỏ của World Wide
Web tài liệu trong không gian văn bản. Các dữ liệu mẫu thiết lập bao gồm 85
tài liệu từ các miền trong sản xuất người dùng khác nhau 4-xác định loại (lao
động, luật pháp, chính phủ, và thiết kế). 85 tài liệu chứa 5.190 thân cây khác
biệt từ sau khi các từ thông dụng (các, và, trong) đã được gỡ bỏ. Kể từ từ
được chắc chắn không phải không tương quan, họ sẽ rơi vào nơi cụm từ được
sử dụng một cách thống nhất trên toàn bộ tài liệu có giá trị tương tự như của
tần số trong mỗi tài liệu.
Phương pháp phân cụm bằng K-means có nghĩa là phân nhóm đã được
sử dụng để nhóm các từ 5.190 thành 10 nhóm. Một kết quả đáng ngạc nhiên
là trung bình 92% trong các từ rơi vào một cụm duy nhất, mà sau đó có thể
-84-

được loại bỏ để khai thác dữ liệu mục đích. Các cụm nhỏ nhất có điều khoản
đó vào một con người có vẻ ngữ nghĩa liên quan. Các cụm 7 nhỏ nhất từ một
hoạt động tiêu biểu được thể hiện trong hình 34.
Điều khoản được sử dụng trong ngữ cảnh bình thường, hoặc điều kiện
duy nhất mà không xảy ra thường xuyên trên toàn bộ tài liệu đào tạo sẽ có xu
hướng cụm thành nhóm thành viên lớn 4000. Điều này sẽ chăm sóc các lỗi
chính tả, tên riêng mà không thường xuyên, và các điều khoản được sử dụng
theo cách tương tự trong suốt đặt toàn bộ tài liệu. Điều khoản sử dụng trong
bối cảnh cụ thể (như tập tin trong bối cảnh nộp đơn sáng chế, hơn là một tập
tin máy tính) sẽ xuất hiện trong các tài liệu phù hợp với điều kiện thích hợp
khác cho rằng bằng sáng chế (bối cảnh đó, phát minh ra) và do đó sẽ có xu
hướng cụm lại với nhau. Trong số các nhóm từ, ngữ cảnh đặc biệt nổi bật so
với đám đông.
Sau khi discarding cluster lớn nhất, các thiết lập nhỏ hơn các tính năng
có thể được sử dụng để xây dựng các truy vấn để tìm ra các tài liệu khác có
liên quan trên Web tiêu chuẩn sử dụng công cụ tìm kiếm web (ví dụ, Lycos,
Alta Vista, mở văn bản). Tìm kiếm trên Web với các điều khoản lấy từ cụm từ
cho phép phát hiện ra các chủ đề hạt mịn (ví dụ, gia đình y tế để lại) trong
vòng loại được định nghĩa rộng rãi (ví dụ, lao động).
4.3 Khai phá dữ liệu trong Cơ sở dữ liệu địa chất.
Khai phá cơ sở dữ liệu là một nguồn lực quan trọng trong việc thăm dò
dầu mỏ và sản xuất. Nó được phổ biến kiến thức trong ngành công nghiệp dầu
mà chi phí điển hình của một khoan mới ra nước ngoài cũng là trong khoảng
$ 3-40, nhưng cơ hội của trang web đó là một thành công kinh tế là 1 trong
10. Thêm thông tin và có hệ thống khoan quyết định một cách đáng kể có thể làm
giảm chi phí sản xuất chung.
Tiến bộ trong công nghệ khoan và các phương pháp thu thập dữ liệu có
dẫn đến các công ty dầu mỏ và ancillaries của họ thu thập một lượng lớn địa
vật lý / dữ liệu địa chất từ giếng sản xuất và các trang web thăm dò, và sau đó
tổ chức chúng thành các cơ sở dữ liệu lớn. Kỹ thuật khai thác dữ liệu gần đây
đã được sử dụng để lấy được chính xác phân tích mối quan hệ giữa các hiện
tượng quan sát và các thông số. Những mối quan hệ sau đó có thể được sử
dụng để định lượng dầu và khí đốt.
-85-

Về chất lượng, trữ lượng tốt phục hồi có bão hòa hydrocarbon cao đang
mắc kẹt bởi trầm tích rất xốp (chứa porosity) và bao quanh bởi số lượng lớn
các loại đá cứng có ngăn chặn sự rò rỉ dầu khí từ xa. Một khối lượng lớn các
trầm tích xốp là rất quan trọng để tìm dự trữ phục hồi tốt, do đó phát triển
đáng tin cậy và chính xác các phương pháp cho dự toán của porosities trầm
tích từ các dữ liệu thu thập là chìa khóa để ước tính tiềm năng dầu khí. Các
quy tắc chung của các chuyên gia ngón cái sử dụng cho tính toán độ xốp, rỗng
là nó là một chức năng luật số mũ của chiều sâu:
 F  x1 , x2 ,, xm . Depth
Độ xốp = K.e (4)
Một số yếu tố như các loại đá, cấu trúc, và xây bằng xi măng như các
thông số của F chức năng bối rối mối quan hệ này. Điều này đòi định nghĩa
của ngữ cảnh thích hợp, trong đó cố gắng khám phá ra công thức đo độ xốp.
Bối cảnh địa chất được thể hiện trong điều khoản của hiện tượng địa chất, như
là hình học, lithology, nén chặt, và lún, liên kết với khu vực. Nó nổi tiếng
rằng những thay đổi bối cảnh địa chất từ lưu vực để lưu vực (các khu vực địa
lý khác nhau trên thế giới) và cũng từ khu vực tới khu vực trong một lưu vực
[Allen và Allen 1990; Biswas 1995]. Hơn nữa, tính năng tiềm ẩn trong bối
cảnh có thể khác nhau rất nhiều. Mô hình kết hợp các kỹ thuật đơn giản, mà
làm việc trong lĩnh vực kỹ thuật mà là hạn chế bởi hành vi của con người gây
ra hệ thống và cũng thành lập luật của vật lý, không thể áp dụng trong lĩnh
vực thăm dò dầu khí. Đến địa chỉ này, phân nhóm dữ liệu đã được sử dụng để
xác định ngữ cảnh có liên quan, và sau đó phát hiện ra phương trình được
thực hiện trong bối cảnh mỗi. Mục đích là để lấy các tập con x1, x2, ..., xm từ
một tập lớn các tính năng địa chất, và F mối quan hệ chức năng nhất định
chức năng đo độ rỗng, xốp trong khu vực.
Các phương pháp tổng thể minh hoạ trong Hình 35, bao gồm hai bước
chính: (i) Bối cảnh định nghĩa bằng cách sử dụng các kỹ thuật Phân cụm
không giám sát, và (ii) phát hiện bằng cách phân tích Phương trình hồi quy
[Li và Biswas 1995]. Bất thăm dò dữ liệu thu thập từ một vùng ở lưu vực
Alaska được phân tích bằng cách sử dụng phương pháp phát triển. Các đối
tượng dữ liệu (mẫu) được mô tả về 37 đặc điểm địa chất, như độ xốp, tính
thấm, mật độ kích thước hạt, và phân loại, số lượng các mảnh khoáng sản
khác nhau (ví dụ, thạch anh, Chert, fenspat) hiện nay, tính chất của các mảnh
-86-

đá , lỗ chân lông đặc điểm, và xây bằng xi măng. Tất cả những tính năng các
giá trị được đo bằng số được thực hiện trên mẫu được lấy từ các bản ghi tốt
trong quá trình khoan thăm dò.
Thuật toán phân cụm dữ liệu K-means đã được sử dụng để xác định
một tập các đồng nhất cấu trúc địa chất nguyên thủy
(g1, g2, ..., gm). Những nguyên thủy này sau đó đã được ánh xạ vào mã đơn vị
so với bản đồ đơn vị địa tầng học. Hình 36 mô tả một bản đồ một phần cho
một tập hợp các giếng và bốn cấu trúc nguyên thủy. Bước tiếp theo trong quá
trình phát hiện được xác định phần của khu vực giếng được tạo thành từ cùng
một trình tự của địa chất nguyên thủy. Mỗi trình tự quy định một Ci ngữ cảnh.
Từ một phần của bản đồ Hình 36, trong bối cảnh C1 = g2 . g1 . g2 . g3 đã được
xác định tại hai khu vực tốt (của 300 và 600 series). Sau khi bối cảnh đã được
xác định, dữ liệu điểm thuộc bối cảnh từng được nhóm lại với nhau cho
derivation phương trình. Thủ tục dẫn xuất derivation làm việc phân tích hồi
qui [Sen và Srivastava 1990].
Phương pháp này được áp dụng cho một tập dữ liệu của khoảng 2.600
đối tượng tương ứng với mẫu đo thu thập từ giếng là các lưu vực Alaska.
K-means đã nhóm dữ liệu này đặt thành bảy nhóm. Như minh hoạ,
Chúng ta chọn một bộ 138 đối tượng đại diện cho một bối cảnh để phân tích.
Các tính năng nhất định nghĩa cụm này đã được lựa chọn, và các chuyên gia
surmised rằng bối cảnh đại diện cho một vùng độ xốp rỗng thấp, được mô
hình bằng cách sử dụng các thủ tục hồi qui.
4.4 Tóm tắt
Có rất nhiều ứng dụng, nơi ra quyết định và phân tích mẫu thăm dò đã
được thực hiện trên dữ liệu lớn đặt ra. Ví dụ, trong lấy tài liệu, một tập hợp
các tài liệu có liên quan có thể tìm thấy một vài trong số hàng triệu tài liệu của
các chiều của hơn 1000. Có thể xử lý những vấn đề này rất hữu ích nếu một
số trừu tượng của dữ liệu được thu được và được sử dụng trong việc ra quyết
định, hơn là trực tiếp bằng cách sử dụng dữ liệu toàn bộ thiết lập. Bởi trừu
tượng hóa dữ liệu, chúng tôi có nghĩa là một đại diện đơn giản và gọn nhẹ của
dữ liệu. Đơn giản này giúp máy chế biến có hiệu quả hay một con người trong
comprehending cấu trúc trong dữ liệu một cách dễ dàng. Thuật toán phân cụm
dữ liệu rất lý tưởng cho việc đạt được các dữ liệu trừu tượng.
-87-

Trong bài này, chúng ta đã kiểm tra các bước khác nhau trong phân
nhóm: (1) mô hình đại diện, (2) tính toán tương tự, (3) nhóm quy trình, và (4)
đại diện cụm. Ngoài ra, cũng đề cập đếnận thống kê, mờ, thần kinh, tiến hóa,
và kiến thức dựa trên phương pháp tiếp cận để phân cụm dữ liệu. Chúng ta có
bốn mô tả các ứng dụng của phân nhóm: (1) Phân đoạn ảnh, (2) nhận diện đối
tượng, (3) truy hồi tài liệu, và (4) khai phá dữ liệu.

Hình 36. Mã vùng so với bản đồ đơn vị địa tầng một phần của khu vực
nghiên cứu.
Phân cụm dữ liệu là một quá trình của các nhóm dữ liệu dựa trên một
thước đo tương tự. Phân cụm dữ liệu là một quá trình chủ quan; cùng một bộ
các dữ liệu thường xuyên cần phải được phân vùng khác nhau cho các ứng
dụng khác nhau. Chủ quan này làm cho quá trình phân nhóm khó khăn. Điều
này là do một thuật toán đơn hoặc phương pháp tiếp cận là không đủ để giải
quyết mọi vấn đề phân cụm dữ liệu. Một giải pháp có thể nằm trong chủ quan
này phản ánh trong các hình thức kiến thức. Kiến thức này được sử dụng hoặc
ngầm hoặc rõ ràng trong một hoặc nhiều giai đoạn của Phân cụm dữ liệu.
Kiến thức dựa trên thuật toán phân nhóm sử dụng kiến thức một cách rõ ràng.
Bước khó khăn nhất trong phân nhóm là tính năng khai thác hoặc mẫu
đại diện. Các nhà nghiên cứu mẫu nhận diện công nhận thuận tiện tránh bước
-88-

này bằng cách giả sử rằng các đại diện được khuôn mẫu có sẵn như là đầu vào
của thuật toán phân cụm dữ liệu. Kích thước nhỏ, tập hợp dữ liệu, đại diện mô
hình có thể thu được dựa trên kinh nghiệm trước đây của người dùng với vấn
đề này. Tuy nhiên, trong trường hợp các bộ dữ liệu lớn, đó là khó khăn cho
người sử dụng để theo dõi sự quan trọng của mỗi tính năng trong phân cụm
dữ liệ. Một giải pháp là làm cho các phép đo như nhiều trên các mẫu càng tốt
và sử dụng chúng trong khuôn mẫu đại diện. Nhưng nó không thể sử dụng
một bộ sưu tập lớn các phép đo trực tiếp trong phân cụm dữ liệu vì chi phí
tính toán. Vì vậy, một số tính năng khai thác / lựa chọn phương pháp tiếp cận
đã được thiết kế để có được kết hợp tuyến tính hoặc phi tuyến của các phép
đo có thể được dùng để đại diện cho các mẫu. Hầu hết các đề án đề nghị cho
khai thác tính năng / lựa chọn thường được lập lại trong tự nhiên và không thể
được sử dụng trên các tập dữ liệu lớn do chi phí tính toán.
Bước thứ hai trong phân nhóm là giống nhau tính toán. Một loạt các đề
án đã được sử dụng để tính toán giống nhau giữa hai mô hình. Họ sử dụng
kiến thức hoặc ngầm hoặc rõ ràng. Hầu hết các kiến thức dựa trên thuật toán
phân nhóm sử dụng kiến thức rõ ràng trong tính toán tương tự. Tuy nhiên, nếu
không phải là đại diện cho các mẫu bằng cách sử dụng các tính năng phù hợp,
sau đó nó không phải là có thể làm cho một phân vùng có ý nghĩa không phân
biệt chất lượng và số lượng kiến thức được sử dụng trong tính toán tương tự.
Không có đề án phổ chấp nhận được đối với máy tính giống nhau giữa các
mẫu đại diện bằng cách sử dụng một hỗn hợp của cả hai tính năng định lượng.
Không giống nhau giữa một cặp mẫu được đại diện bằng cách sử dụng một
thước đo khoảng cách đó có thể hoặc không thể có một số liệu.
Bước tiếp theo trong phân nhóm là nhóm các bước lại với nhau. Có hai
nhóm đề án rộng rãi: đề án theo kế thừa và phân vùng. Các đề án có nhiều
thứ bậc linh hoạt, và các đề án phân vùng ít tốn kém. Các thuật toán phân
vùng nhằm tối đa hóa khả năng lôi tiêu chí bình phương. Thúc đẩy bởi sự thất
bại của các lỗi bình phương thuật toán phân cụm dữ liệu phân vùng trong việc
tìm kiếm các giải pháp tối ưu cho vấn đề này, một bộ sưu tập lớn các phương
pháp đã được đề xuất và được sử dụng để có được một giải pháp toàn cầu tối
ưu cho vấn đề này. Tuy nhiên, các đề án được giới hạn cho phép về mặt tính
toán trên dữ liệu lớn đặt ra. Đề án phân cụm dữ liệu dựa trên mạng
-89-

nowrron(ANN) được triển khai thần kinh của các thuật toán phân nhóm, và
họ chia sẻ các tài sản không mong muốn của các thuật toán. Tuy nhiên, ANNs
có khả năng tự động bình thường hóa dữ liệu và trích xuất các tính năng. Một
quan sát quan trọng là ngay cả khi một đề án có thể tìm thấy giải pháp tối ưu
cho vấn đề phân vùng bình phương lỗi, nó vẫn có thể thu ngắn của các yêu
cầu vì không thể-đẳng hướng bản chất của các cụm.
Trong một số ứng dụng, ví dụ trong truy hồi tài liệu, nó có thể hữu ích
để có một phân nhóm đó không phải là một phân vùng. Điều này có nghĩa là
các cụm chồng chéo. Phân cụm dữ liệu mờ Fuzzy là chức năng rất lý tưởng
cho mục đích này. Ngoài ra, các thuật toán phân nhóm mờ có thể xử lý dữ
liệu hỗn hợp các loại. Tuy nhiên, một vấn đề lớn với phân cụm dữ liệu mờ là
nó rất khó để có được các giá trị thành viên. Một cách tiếp cận tổng hợp có
thể không làm việc vì bản chất chủ quan của phân cụm dữ liệu. Nó là cần thiết
để đại diện cho các cụm thu được trong một hình thức thích hợp để giúp nhà
sản xuất quyết định. Kiến thức dựa trên phân nhóm đề án tạo ra các mô tả
bằng trực giác hấp dẫn của các cụm. Họ có thể được sử dụng ngay cả khi các
mô hình được đại diện bằng cách sử dụng một sự kết hợp các đặc tính và định
lượng, miễn là kiến thức liên kết một khái niệm và các tính năng hỗn hợp có
sẵn. Tuy nhiên, việc triển khai các đề án về khái niệm phân cụm dữ liệu có
ước tính rất đắt tiền và không phù hợp cho nhóm tập hợp dữ liệu lớn.
Thuật toán K-means và giải thuật dựa trên mạng nowrron thần kinh
của , lưới Kohonen, là thành công nhất được sử dụng trên bộ dữ liệu lớn.
Điều này là do là thuật toán K-means đơn giản để thực hiện và ước tính hấp
dẫn vì thời gian tuyến tính phức tạp của nó. Tuy nhiên, nó không khả thi để sử
dụng ngay cả thuật toán này thời gian tuyến tính trên dữ liệu lớn đặt ra. Thuật
toán gia tăng như lãnh đạo và thực hiện thần kinh của nó, mạng Art, có thể
được sử dụng để cụm tập dữ liệu lớn. Nhưng họ có xu hướng tự phụ thuộc.
Phân chia và chinh phục là một heuristic mà đã được khai thác theo đúng thiết
kế thuật toán máy tính để giảm chi phí tính toán. Tuy nhiên, cần khôn ngoan
sử dụng trong các phân nhóm để đạt được kết quả có ý nghĩa.
Tóm lại, Phân cụm dữ liệu là một vấn đề thú vị, hữu ích, và đầy thách
thức. Nó có tiềm năng lớn trong các ứng dụng như nhận điện đối tượng, phân
đoạn hình ảnh, và các chọn lọc và truy hồi thông tin. Tuy nhiên cần cẩn thận
thiết kế một vài lựa chọn có thể để khai thác tiềm năng này.
-90-

KẾT LUẬN
Các vấn đề đƣợc tìm hiểu trong luận văn
Tổng hợp, nghiên cứu những nét cơ bản lý thuyết và ứng dụng thực tiễn
của Phân cụm dữ liệu. Với sự phát triển ngày càng lớn như vũ bão của Công
nghệ thông tin và sự to ra về Cơ sở dữ liệu thông tin. Do đó yêu cầu về
nghiên cứu hoàn thiện, áp dụng phương pháp, kỹ thuật Phân cụm dữ liệu là
rất cần thiết và có ý nghĩa to lớn
Trong chương 1, luận văn trình bày tổng quan, lý thuyết về phân cụm
dữ liệu, và một số lý thuyết liên quan trực tiếp đến khai phá dữ liệu. Chương
2, giới thiệu tổng quát các thuật toán phân cụm dữ liệu, thuật toán phân cụm
dữ liệu là rất nhiều, Luận văn chỉ đề cập một số thuật toán phổ biến, thông
dụng. Chương 3 là nói về một số ứng dụng tiêu biểu của phân cụm dữ liệu
như Phân đoạn ảnh, Nhận diện ký tự và đối tượng, Truy hồi thông tin, và
Khai phá dữ liệu.

HƢỚNG PHÁT TRIỂN CỦA ĐỀ TÀI

Phân cụm dữ liệu và ứng dụng của Phân cụm dữ liệu là hướng nghiên
cứu cần thiết, quan trọng, Tuy nhiên đây cũng là mảng rất rộng, bao hàm
nhiều phương pháp, kỹ thuật, và hình thành nhiều nhóm khác nhau.
Trong quá trình nghiên cứu, thực hiện luận văn mặc dù đã cố gắng tập
trung nghiên cứu và tham khảo nhiều tài liệu, bài báo, tạp chí khoa học trong
và ngoài nước, nhưng do trình độ còn có nhiều giới hạn không thể tránh khỏi
thiếu sót và hạn chế. Em rất mong được sự chỉ bảo đóng góp nhiều hơn nữa
của các thày, cô giáo, các nhà khoa học…

HƢỚNG NGHIÊN CỨU PHÁT TRIỂN

- Tiếp tục nghiên cứu thêm về lý thuyết về phân cụm dữ liệu


- Xây dựng, phát triển thêm các kỹ thuật, ứng dụng của Phân cụm dữ
liệu.
-91-

PHỤ LỤC :
XÂY DỰNG CHƢƠNG TRÌNH “PHÂN CỤM DỮ LIỆU VỚI
THUẬN TOÁN K-MEANS BẰNG NGÔN NGỮ VISUAL BASIC 6.0”

Giao diện chương trình :


-92-

* Người sử dụng chọn số lượng cụm dữ liệu, sau đó click ngẫu nhiên vào
khung( nhập dữ liệu X, Y).
Chương trình tạo cụm trên cơ sở tối giản bình phương khoảng cách
giữa dữ liệu và cụm trọng tâm tương ứng, mỗi điểm biểu thị cho một đối
tượng và tọa độ (X, Y) mô tả hai thuộc tính của đối tượng. Màu sắc của điểm
và số nhãn biểu thị cho cụm dữ liệu
* Thuật toán phân cụm K-Means làm việc như sau :
Nếu số lượng dữ liệu nhỏ hơn số cụm thì ta gán mỗi dữ liệu là một
trọng tâm của cụm. Mỗi trọng tâm sẽ có một số cụm. Nếu số lượng lớn dữ
liệu lớn hơn số cụm, với mỗi dữ liệu, ta tính toán khoảng cách tới tất cả các
trọng tâm và lấy khoảng cách tối thiểu. Dữ liệu này được nói là thuộc về cụm
có khoảng cách tối thiểu tới dữ liệu này.
Khi chúng ta không chắc chắn về vị trị của trọng tâm, ta cần điều chỉnh
vị trí trọng tâm dựa vào dữ liệu đã cập nhật hiện tại. Sau đó, ta gán tất cả dữ
liệu tới trọng tâm mới này. Quá trình này được lặp lại cho tới khi không còn
dữ liệu di chuyển sang cụm khác. Về mặt toán học, vòng lặp này có thể chứng
minh là hội tụ.
-93-

Ví dụ sau khi chạy chương trình với số cụm = 9


-94-

Mã nguồn chƣơng trình


Option Explicit

Private Data() ' Row 0 = cluster, 1 =X, 2= Y; Sè l-îng d÷ liÖu trong


c¸c cét
Private Centroid() As Single ' côm trung t©m (X vµ Y) cña c¸c côm; Sè
l-îng côm = Sè l-îng cét
Private totalData As Integer ' Tæng sè d÷ liÖu (tæng sè cét)
Private numCluster As Integer ' Tæng sè c¸c côm

##############################################################
' C¸c form ®iÒu khiÓn
' + Form_Load
' + cmdReset_Click
' + txtNumCluster_Change
' + Picture1_MouseDown
' + Picture1_MouseMove
'
##############################################################

Private Sub Form_Load()


Dim i As Integer

Picture1.BackColor = &HFFFFFF ' ®Æt mÇu = tr¾ng


Picture1.DrawWidth = 10 ' §é lín cña ®iÓm
Picture1.ScaleMode = 3 ' pixels

'§-a ra sè l-îng cña côm


numCluster = Int(txtNumCluster)
ReDim Centroid(1 To 2, 1 To numCluster)
For i = 0 To numCluster - 1
'T¹o nh·n
If i > 0 Then Load lblCentroid(i)
lblCentroid(i).Caption = i + 1
lblCentroid(i).Visible = False
Next i
End Sub

Private Sub cmdReset_Click()


' refress l¹i d÷ liÖu
Dim i As Integer

Picture1.Cls ' Lµm s¹ch ¶nh


-95-

Erase Data ' Xãa d÷ liÖu


totalData = 0

For i = 0 To numCluster - 1
lblCentroid(i).Visible = False ' Kh«ng hiÖn nh·n
Next i

'Cho phÐp thay ®æi sè l-îng côm


txtNumCluster.Enabled = True
End Sub

Private Sub txtNumCluster_Change()


'Thay ®æi sè l-îng côm vµ reset l¹i d÷ liÖu
Dim i As Integer

For i = 1 To numCluster - 1
Unload lblCentroid(i)
Next i
numCluster = Int(txtNumCluster)
ReDim Centroid(1 To 2, 1 To numCluster)
'Gäi sù kiÖn cmdReset_Click
For i = 0 To numCluster - 1
If i > 0 Then Load lblCentroid(i)
lblCentroid(i).Caption = i + 1
lblCentroid(i).Visible = False
Next i
End Sub

Private Sub Picture1_MouseDown(Button As Integer, Shift As Integer, X As


Single, Y As Single)
'Thu thËp d÷ liÖu vµ tr×nh diÔn kÕt qu¶
Dim colorCluster As Integer
Dim i As Integer

'V« hiÖu kh¶ n¨ng cã thÓ thay ®æi sè l-îng côm


txtNumCluster.Enabled = False

' T¹o d÷ liÖu chøc n¨ng


totalData = totalData + 1
ReDim Preserve Data(0 To 2, 1 To totalData) ' Chó ý : B¾t ®Çu víi 0 cho
dßng
Data(1, totalData) = X
Data(2, totalData) = Y
-96-

'Thùc hiÖn k-mean clustering


Call kMeanCluster(Data, numCluster)

'Tr×nh diÔn kÕt qu¶


Picture1.Cls
For i = 1 To totalData
colorCluster = Data(0, i) - 1
If colorCluster = 7 Then colorCluster = 12 ' NÕu mÇu tr¾ng (NÕu gièng
mÇu nÒn th× thay ®æi thµnh mµu kh¸c)
X = Data(1, i)
Y = Data(2, i)
Picture1.PSet (X, Y), QBColor(colorCluster)
Next i

'HiÖn thÞ côm trung t©m


For i = 1 To min2(numCluster, totalData)
lblCentroid(i - 1).Left = Centroid(1, i)
lblCentroid(i - 1).Top = Centroid(2, i)
lblCentroid(i - 1).Visible = True
Next i
End Sub

Private Sub Picture1_MouseMove(Button As Integer, Shift As Integer, X As


Single, Y As Single)
lblXYValue.Caption = X & "," & Y
End Sub
'
##############################################################
' FUNCTIONS
' + kMeanCluster:
' + dist: Kho¶ng c¸ch tÝnh to¸n
' + min2: Trë l¹i gi¸ trÞ nhá nhÊt gi÷a hai sè
'
##############################################################

Sub kMeanCluster(Data() As Variant, numCluster As Integer)


' Hµm chÝnh ®Ó ph©n côm d÷ liÖu thµnh k côm
' input: + Ma trËn d÷ liÖu (0 tíi 2, 1 tíi TotalData); Row 0 = cluster, 1 =X, 2=
Y; D÷ liÖu trong c¸c cét
' + numCluster: Sè l-îng côm ng-êi dïng muèn d÷ liÖu ®-îc ph©n côm
' + C¸c biÕn ®Þa ph-¬ng: Centroid, TotalData
' ouput: o) Côm trung t©m ®· ®-îc cËp nhËt
' o) G¸n sè l-îng c¸c côm vµo d÷ liÖu (= row 0 of Data)
Dim i As Integer
-97-

Dim j As Integer
Dim X As Single
Dim Y As Single
Dim min As Single
Dim cluster As Integer
Dim d As Single
Dim sumXY()
Dim isStillMoving As Boolean

isStillMoving = True
If totalData <= numCluster Then
Data(0, totalData) = totalData
Centroid(1, totalData) = Data(1, totalData) ' X
Centroid(2, totalData) = Data(2, totalData) ' Y
Else
'TÝnh to¸n kho¶ng c¸ch tèi thiÓu ®Ó g¸n d÷ liÖu míi
min = 10 ^ 10 'Sè lín
X = Data(1, totalData)
Y = Data(2, totalData)
For i = 1 To numCluster
d = dist(X, Y, Centroid(1, i), Centroid(2, i))
If d < min Then
min = d
cluster = i
End If
Next i
Data(0, totalData) = cluster
Do While isStillMoving
' Vßng lÆp nµy ch¾c ch¾n héi tô
'TÝnh to¸n c¸c träng t©m míi
ReDim sumXY(1 To 3, 1 To numCluster) ' 1 =X, 2=Y, 3= §Õm sè
l-îng d÷ liÖu
For i = 1 To totalData
sumXY(1, Data(0, i)) = Data(1, i) + sumXY(1, Data(0, i))
sumXY(2, Data(0, i)) = Data(2, i) + sumXY(2, Data(0, i))
sumXY(3, Data(0, i)) = 1 + sumXY(3, Data(0, i))
Next i
For i = 1 To numCluster
Centroid(1, i) = sumXY(1, i) / sumXY(3, i)
Centroid(2, i) = sumXY(2, i) / sumXY(3, i)
Next i

'G¸n tÊt c¶ d÷ liÖu tíi c¸c träng t©m míi


isStillMoving = False
For i = 1 To totalData
-98-

min = 10 ^ 10 'Sè lín


X = Data(1, i)
Y = Data(2, i)
For j = 1 To numCluster
d = dist(X, Y, Centroid(1, j), Centroid(2, j))
If d < min Then
min = d
cluster = j
End If
Next j
If Data(0, i) <> cluster Then
Data(0, i) = cluster
isStillMoving = True
End If
Next i
Loop
End If
End Sub
Function dist(X1 As Single, Y1 As Single, X2 As Single, Y2 As Single) As
Single
' TÝnh to¸n kho¶ng c¸ch Euclidean
dist = Sqr((Y2 - Y1) ^ 2 + (X2 - X1) ^ 2)
End Function
Private Function min2(num1, num2)
' Trë vÒ gi¸ trÞ nhá nhÊt gi÷a hai sè
If num1 < num2 Then
min2 = num1
Else
min2 = num2
End If
End Function
-99-

TÀI LIỆU THAM KHẢO

[1]. M.R Anderber, Cluster analysis of application, A cademic Press, New York, 1973
[2]. B.S. Everitt, Cluster Analysis, Edward Amold coblished by Haisted Press and
imprint of john Wiley & Sons Inc., 3rd edition, 1993
[3]. D.Fisher, Knowledged acquisition via incremental conceptual clustering, in
Machine Learing
[4] Zou, H., T. Hastie, and R. Tibshirani: Sparse principal component analysis. Journal
of Computational and Graphical Statistics, 15(2):265{286, 2006.
[5] Hall, P., H.G. Muller, and J.L. Wang: Properties of principal component methods for
functional and longitudinal data analysis. Ann. Statist, 34(3):1493{1517, 2006.
[6] Yao, F., H.G. Muller, A.J. Cli_ord, S.R. Dueker, J. Follett, Y. Lin, B.A. Buchholz,
and J.S. Vogel: Shrinkage Estimation for Functional Principal Component Scores
with Application to the Population Kinetics of Plasma Folate. Biometrics, 59:676{
685, 2003.
[7] Liang, K.Y. and S.L. Zeger: Longitudinal data analysis using generalized linear
models. Biometrika, 73(1):13{22, 1986.
[8] Maaten, L. J. P. van der, E. O. Postma, and H. J. van den Herik: Dimensionality
reduction: A comparative review. 2007.
http://www.cs.unimaas.nl/l.vandermaaten/dr/DR_draft.pdf Preprint published online.
[9] Fan, J. and I. Gijbels: Variable Bandwidth and Local Linear Regression Smoothers.
The Annals of Statistics, 20(4):2008{2036, 1992.
[10] Data Clustering Theory, Algorithms, and Applications. Guojun Gan, Chaoqun Ma,
Jianhong Wu. 2007

You might also like