Tải bản đầy đủ (.pdf) (98 trang)

Một số bài toán truy vấn trong cơ sở dữ liệu và ứng dụng

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

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
-----------------------

NGUYỄN ĐẮC TUẤN

MỘT SỐ BÀI TOÁN TRUY VẤN TRONG CƠ SỞ DỮ LIỆU VÀ ỨNG DỤNG

LUẬN VĂN THẠC SĨ KỸ THUẬT
TOÁN TIN ỨNG DỤNG

Hà Nội – 2005


BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
-----------------------

NGUYỄN ĐẮC TUẤN

MỘT SỐ BÀI TOÁN TRUY VẤN TRONG CƠ SỞ DỮ LIỆU VÀ ỨNG DỤNG

LUẬN VĂN THẠC SĨ KỸ THUẬT
TOÁN TIN ỨNG DỤNG

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

NGUYỄN CẢNH LƯƠNG

Hà Nội - 2005




-1-

LỜI CAM ĐOAN
Tôi xin cam đoan kết quả nghiên cứu trong luận văn là
của chính bản thân tôi làm ra, không sao chép của bất kỳ
một tài liệu hoặc một công trình nào khác, nếu sai tôi
hoàn toàn chịu trách nhiệm.
Tác giả luận văn


-2-

LỜI CẢM ƠN
Luận văn được hoàn thành dưới sự hướng dẫn của PGS-TS Nguyễn
Cảnh Lương – Trường đại học Bách Khoa Hà Nội và GS-TSKH Bùi Công
Cường Viện Toán. Tôi xin chân thành cám ơn các Thầy về kiến thức khoa
học mà các Thầy đã giúp đỡ trong quá trình làm luận văn.
Tôi xin chân thành cảm ơn Thầy PGS-TS Phan Trung Huy đã giúp đỡ rất
nhiều trong quá trình học cao học cũng như các ý kiến đóng góp của các Thầy
đối với luận văn.
Tôi xin chân thành cám ơn các Thầy cô đã giảng dạy trong lớp cao học
khóa 2002 –2204. Các Thầy cô đã truyền đạt cho học viên trong lớp rất nhiều
kiến thức mới giúp cho việc ứng dụng và phát triển Tin học trong công tác
của Tôi cũng như của các học viên khác một cách vững chắc và theo kịp với
sự phát triển của công nghệ tin học.
Tôi xin chân thành cám ơn Ban Chủ nhiệm và các Thầy cô trong khoa
Toán Tin đã dành sự ưu ái và tạo điều kiện thuận lợi cho lớp cao học trong hai
năm học 2002-2004.

Nguyễn Đắc Tuấn


-3-

DANH MỤC CÁC HÌNH VẼ
Hình 1.1. Quy trình phát hiện tri thức

8

Hình 2.1. Kết quả phân cụm khi các tiêu chuẩn phân cụm khác nhau

13

Hình 2.2. Phân cụm các tập

18

Hình 2.3. Các loại cụm và đại diện của nó

30

Hình 2.3. Phân chia không gian tìm kiếm

39

Hình 4.1: Phân cấp khái niệm cho mô hình thuộc tính

50


Hình 4.2. Phân cấp trực quan

51

Hình 4.3: Phân cấp khái niệm về tuổi

57

Hình 4.4: Phân cấp khái niệm về mức thu nhập

58

Hình 4.5. Độ mờ của mẫu

62

Hình 4.6. So sánh mẫu cắt với dữ liệu cần tìm

71


-4-

MỤC LỤC
Trang phụ bìa
Lời cam đoan

1

Mục lục


4

CHƯƠNG 1: KHÁI QUÁT VỀ KHÁM PHÁ TRI THỨC VÀ KHAI PHÁ
DỮ LIỆU ........................................................................................................... 8
1.1. Thế nào là khám phá tri thức và khai phá dữ liệu ...................................... 8
1.2. Quy trình của khám phá tri thức ................................................................ 8
1.3. Các phương pháp khai phá dữ liệu............................................................. 9
CHƯƠNG 2: PHƯƠNG PHÁP PHÂN CỤM ................................................ 12
2.1.Các khái niệm cơ bản của phân cụm ......................................................... 12
2.1.1.Giới thiệu ............................................................................................ 12
2.1.1.1.Các ứng dụng của phân cụm ..................................................... 16
2.1.1.2.Các loại đặc trưng ..................................................................... 17
2.1.1.3.Các định nghĩa phân cụm ......................................................... 18
2.2.Các độ đo gần gũi ...................................................................................... 20
2.2.1.Các định nghĩa .................................................................................... 20
2.2.2.Các độ đo gần gũi giữa hai điểm ........................................................ 22
2.2.2.1.Các véc-tơ thực ......................................................................... 22
2.2.2.2.Các véc-tơ rời rạc...................................................................... 25
2.2.2.3.Các độ đo tương tự động .......................................................... 27
2.2.2.4.Các véc với giá trị hỗn hợp ....................................................... 27
2.2.2.5.Các độ đo mờ ............................................................................ 29
2.2.2.6.Dữ liệu bị thiếu ......................................................................... 30
2.2.3.Các hàm gần gũi giữa một điểm và một tập ....................................... 31
2.2.3. Các hàm gần gũi giữa hai tập ............................................................ 33
CHƯƠNG 3: LUẬT KẾT HỢP ...................................................................... 35


-5-


3.1. Các khái niệm cơ bản ............................................................................... 35
3.1.1. Dãy thuộc tính được công nhận – Cas ............................................... 35
3.1.2.Độ Hỗ trợ (Support) ............................................................................ 36
3.1.3.Luật kết hợp ........................................................................................ 37
3.1.4. Tìm luật kết hợp ................................................................................. 38
3.2.Không gian tìm kiếm ................................................................................. 38
3.3.Thủ tục phân chia ...................................................................................... 42
3.4. Liệt kê tập các thuộc tính phổ biến  - frequent ...................................... 44
2.5. Thủ tục liệt kê tuần tự .............................................................................. 45
CHƯƠNG 4: TRUY VẤN VÀ TÌM KIẾM DỮ LIỆU .................................. 47
4.1. Phương pháp truy vấn và tạo ra câu trả lời xúc tích trong khai phá dữ liệu
......................................................................................................................... 47
4.1.1. Tổng quan .......................................................................................... 47
4.1.2. Các ví dụ ............................................................................................ 48
4.1.3.Các bước triển khai ............................................................................. 49
4.1.3.1.Bước tiền xử lý ......................................................................... 49
4.1.3.2. Bước thực hiện truy vấn .......................................................... 53
4.1.3.3. Bước tổng quát câu trả lời........................................................ 54
4.2.Bổ sung bước tiền xử lý cho thuật toán so sánh mẫu mờ TFUZZ trong
CSDL ............................................................................................................... 61
4.2.1. Thuật toán tìm nhiều lần lặp mẫu theo tiếp cận mờ .......................... 62
4.2.1.1.Phát biểu bài toán ...................................................................... 62
4.2.1.2.Mô hình Ôtomat mờ ................................................................. 62
4.2.2. Xây dựng Tfuzz và bản chất thuật toán ............................................. 63
4.2.2.1 Bản chất thuật toán ................................................................... 63
4.2.2.2 Hoạt động của Ôtômat .............................................................. 63
4.2.2.3 Bản chất của Tfuzz ................................................................... 64


-6-


4.2.2.4. Bổ sung bước tiền xử lý cho thuật toán so sánh mẫu mờ
TFUZZ .................................................................................................. 70
4.3. Thuật toán tính độ mờ trong tìm kiếm dữ liệu bị thiếu thông tin ............ 71
4.3.1.Phát biểu bài toán................................................................................ 71
4.3.2.Ví dụ ................................................................................................... 71
4.3.3.Tư tưởng của thuật toán ...................................................................... 71
4.3.4.Thuật toán ........................................................................................... 72
4.3.5.Độ phức tạp của thuật toán ................................................................. 72
4.3.6.Kết quả thực nghiệm trên CSDL khách hàng ..................................... 73
CHƯƠNG 5: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN................................ 75
5.1. Kết luận .................................................................................................... 75
5.2. Hướng phát triển ...................................................................................... 75
5.2.1.Bước tiền xử lý cho các thuật toán truy vấn với chữ Việt .................. 75
5.2.2.Phối hợp ba phương pháp phân cụm, luật kết hợp và truy vấn dữ liệu
để khai phá dữ liệu trong các thông tin trao đổi trên Internet phục vụ việc
kiểm soát an ninh. ........................................................................................ 75
TÀI LIỆU THAM KHẢO ............................................................................... 77
PHỤ LỤC: CHƯƠNG TRÌNH NGUỒN (VISUAL BASIC 6.0) .................. 78
Chương trình nguồn TFUZZ và tiền xử lý mẫu và dữ liệu trong tìm kiếm .... 78
Giao diện (Form) ......................................................................................... 78
Thuật toán tiền xử lý mẫu ............................................................................ 80
Thuật toán TFUZZ ....................................................................................... 83
Thuật toán tính độ mờ trong tìm kiếm dữ liệu bị thiếu thông tin ................... 92


-7-

PHẦN MỞ ĐẦU
Khoa học máy tính đã khẳng định vai trò của mình trong mối liên hệ với

tất cả các lĩnh vực từ nghiên cứu khoa học, nghiên cứu vũ trụ, xã hội …cho
đến tổ chức các trò chơi, giải trí. Các hình thức biểu diễn thông tin qua các
con số, các ký tự văn bản, sự kiện, hình ảnh, đồ họa, âm thanh, đoạn phim có
một giá trị sử dụng nào đó đối với người sử dụng chúng đều được lưu trữ
trong máy tính.
Vậy việc lưu trữ và xử lý thông tin này như thế nào? Đó chính là một
ngành khoa học: Cơ sở dữ liệu. Cơ sở dữ liệu là một sưu tập các dữ liệu được
tổ chức có cấu trúc, liên quan logic với nhau để sao cho dữ liệu có thể dễ dàng
lưu trữ, thao tác, tìm kiếm và xử lý để trả lời các câu hỏi, đưa ra các tri thức
phục vụ con người.
Một bài toán đặc biệt lý thú được đặt ra là: với một khối lượng dữ liệu
lớn, đặc biệt là với dữ liệu bị mất hoặc thiếu thông tin thì làm sao có thể đưa
ra các tri thức? Để giải quyết bài toán này, người ta đã phát triển một ngành
kỹ thuật phát hiện tri thức và khai phá dữ liệu (KDD - Knowledge Discovery
and Data Mining). Để khai phá dữ liệu có nhiều phương pháp, trong đó có ba
phương pháp đã và đang được nghiên cứu, ứng dụng rộng rãi đó là: phân cụm
(Clustering), luật kết hợp (Association Rule) và truy vấn dữ liệu (Query
processing in database). Tùy theo từng mô hình bài toán mà có thể ứng dụng
độc lập một trong ba phương pháp hoặc có thể phối hợp đồng thời cả ba
phương pháp. Chính vì sự hỗ trợ lẫn nhau của ba phương pháp này nên trong
luận văn tôi trình bày cả ba phương pháp trên, trong đó đi sâu vào một số bài
toán truy vấn dữ liệu trong cơ sở dữ liệu quan hệ và ứng dụng.


-8-

CHƯƠNG 1
KHÁI QUÁT VỀ KHÁM PHÁ TRI THỨC VÀ KHAI PHÁ DỮ LIỆU
Trong chương 1 trình bày một cái nhìn tổng quát về khám phá tri thức
(Knowledge discovery) và khai phá dữ liệu (Data mining). Các bước trong

quy trình khai phá dữ liệu và tổng quát về các phương pháp khai phá dữ liệu.
1.1. Thế nào là khám phá tri thức và khai phá dữ liệu
Khám phá tri thức trong CSDL là một quy trình của sự nhận biết hợp lý,
mới lạ, các tiềm năng có ích và cuối cùng là các mẫu (patterns) hoặc các mô
hình (models) có thể hiểu được trong CSDL.
Khai phá dữ liệu là một bước trong quá trình khám phá tri thức gồm có
các thuật toán khai phá dữ liệu đặc biệt mà dưới một số hữu hạn phép tính có
ích là tìm ra được các mẫu hoặc các mô hình trong dữ liệu.
Nói một cách khác, mục đích của khám phá tri thức và khai phá dữ liệu
là tìm ra các mẫu hoặc các mô hình quan tâm tồn tại trong CSDL
1.2. Quy trình của khám phá tri thức
Gồm 5 bước

Hình 1.1. Quy trình phát hiện tri thức


-9-

Bước đầu tiên là tìm hiểu lĩnh vực ứng dụng và đưa công thức cho bài
toán. Bước này làm rõ điều kiện tiên quyết cho tri thức hữu ích được rút ra và
lựa chọn các phương pháp khai phá dữ liệu thích hợp trong bước 3 tùy theo
mục đích ứng dụng và bản chất của dữ liệu
Bước thứ 2 là sự thu thập và tiền xử lý dữ liệu, bao gồm sự lựa chọn
nguồn dữ liệu, việc loại bỏ nhiễu hoặc thông tin phụ, việc xử lý dữ liệu bị
mất, sự chuyển đổi và rút gọn dữ liệu
Bước thứ 3 là khai phá dữ liệu. đó là rút ra các mẫu hoặc các mô hình ẩn
trong dữ liệu. Một mô hình (model) có thể được xem như là một đại diện
chung cho một cấu trúc mà tóm tắt thành phần hệ thống dưới dữ liệu hoặc mô
tả cách mà dữ liệu có thể nảy sinh ra. Ngược lại, một mẫu (pattern) là một cấu
trúc cục bộ có thể kết nối chỉ một nhóm biến hoặc một số ít trường hợp. Các

lớp chủ yếu của các phương pháp khai phá dữ liệu là các mô hình dự báo như
sự phân loại (classification) và hồi quy (regression); sự phân đoạn
(segmentation); sự phân cụm (clustering);
Bước thứ 4 là làm sáng tỏ tri thức đã được khám phá, đặc biệt là làm
sáng tỏ trong các từ ngữ của mô tả và sự dự báo là hai đích chính của hệ
thống khám phá.
Bước cuối cùng là đưa tri thức được khám phá vào ứng dụng thực tế.
1.3. Các phương pháp khai phá dữ liệu
Với hai đích chính của khai phá dữ liệu là Dự đoán (Prediction) và Mô tả
(Description), người ta thường sử dụng các phương pháp sau cho khai phá dữ
liệu:
Phân loại (classification) là một chức năng để sắp xếp (map) đề mục dữ
liệu lên một vài lớp tiền định nghĩa.


- 10 -

Hồi quy (Regression) là một chức năng để sắp xếp đề mục dữ liệu tới giá
trị thực dự báo có thể. Các ứng dụng dự báo là rất nhiều, như dự báo về nhu
cầu tiêu dùng.
Phân cụm (clustering) là nhiệm vụ mô tả phổ biến nơi người ta tìm ra
một tập hữu hạn của phân loại hoặc phân cụm để mô tả dữ liệu. Các phân loại
này có thể loại trừ lẫn nhau hoặc thấu đáo mọi khía cạnh hoặc bao gồm sự đại
diện phong phú như phân loại thứ tự hay bằng nhau.
Tổng hợp (Summarization) bao hàm các phương pháp tìm các mô tả
ngắn gọn cho một tập con của dữ liệu..
Mô hình phụ thuộc (Dependency Modeling) bao gồm sự tìm kiếm một
mô hình mà mô tả các sự phụ thuộc có ý nghĩa giữa các biến. Các mô hình
phụ thuộc tồn tại ở hai mức: mức cấu trúc của mô hình định nghĩa các biến là
phụ thuộc cục bộ trên mỗi biến khác, ngược lại mức định lượng của mô hình

định nghĩa cường độ sự phụ thuộc sử dụng vài độ chia số.
Sự phát hiện thay đổi và độ lệch (Change and Deviation Dectection)
hướng tập trung vào khám phá hầu hết các sự thay đổi đáng kể trong dữ liệu
từ các giá trị được đo trước đó.
Biểu diễn mô hình (Model Representation) là ngôn ngữ L để mô tả các
mẫu khám phá. Nếu đại diện quá bị giới hạn thì không một số lượng của thời
gian học hoặc các ví dụ sẽ sản xuất ra mô hình chính xác cho dữ liệu.
Kiểm định mô hình (Model Evaluation) sẽ dự toán cách đưa ra mẫu đặc
biệt (mô hình và các tham số của nó). Ước lượng độ chính xác dự báo dựa
trên cơ sở sự phù hợp ngược nhau. Ước lượng chất lượng mô tả gồm có độ
chính xác dự báo, tính mới lạ, tính hữu dụng, tính có thể hiểu được của mô
hình được đưa ra. Cả hai tiêu chuẩn thống kê và logic đều có thể được sử
dụng cho mô hình ước lượng. Ví dụ như nguyên lý maximum lựa chọn các
tham số cho mô hình mà sản xuất ra cái tốt nhất vừa với dữ liệu huấn luyện.


- 11 -

Mô hình tìm kiếm (Search) bao gồm 2 thành phần: Tham số tìm kiếm và
mô hình tìm kiếm. Trong tham số tìm kiếm thuật toán bắt buộc tìm cho các
tham số mà sự đánh giá mô hình theo giá trị tiêu chuẩn đưa ra dữ liệu được
quan sát và một đại diện mô hình được định dạng. Mô hình tìm kiếm xuất
hiện như là một vòng lặp trên tham số phương pháp tìm kiếm: đại diện mô
hình được thay đổi


- 12 -

CHƯƠNG 2
PHƯƠNG PHÁP PHÂN CỤM

Chương 2 nghiên cứu về phương pháp phân cụm. Với tập dữ liệu ban
đầu, để thực hiện công việc phân cụm cần phải làm các bước là: chọn lựa đặc
trưng, chọn độ đo gần gũi, tiêu chuẩn phân cụm, thuật toán phân loại, công
nhận và trình diễn kết quả.
2.1.Các khái niệm cơ bản của phân cụm
2.1.1.Giới thiệu
Mục tiêu chủ yếu của phân cụm là việc phân chia tập các dạng thành các
cụm (cluster) dễ nhận biết (sensible) nhất. Với cách này có thể khai phá ra sự
tương tự nhau hay không tương tự giữa các dạng và từ đó có thể rút ra các kết
luận có giá trị về chúng.
Phân cụm được áp dụng trong rất nhiều lĩnh vực như:
-Trong kinh doanh: Phân cụm các khách hàng theo các tiêu chí lựa
chọn như: tuổi, giới tính, ngành nghề, mức thu nhập, địa phương,...
-Sinh vật học : sinh học, thực vật, động vật.
-Y học : bệnh lý học, tâm thần học.
-Khoa học xã hội : xã hội học, khảo cổ.
-Khoa học trái đất : địa lý học, địa chất.
-Các ngành kỹ thuật ứng dụng.
Sự phân cụm có thể ở nhiều hình thức khác nhau trong từng hoàn cảnh
cụ thể như sau :
-Học có giám sát, học không giám sát, lý thuyết nhận dạng.
-Sự phân chia (partition) : trong lý thuyết đồ thị.
-Sự phân loại bằng số : trong sinh học và sinh thái học.
-Topology: trong khoa học xã hội.


- 13 -

Ví dụ sau được lấy từ sinh học. Có những động vật sau: cừu, chó, mèo
(động vật có vú), chim sẻ, chim mòng biển (chim), rắn, thằn lằn (bò sát), cá

vàng, cá đối đỏ, cá mập xanh (cá), ếch (lưỡng cư)
Ta lấy một ví dụ điển hình trong Sinh học để minh hoạ cho việc phân
cụm :
Giả sử có các loài động vật như sau : cừu, mèo, chó (loại động vật có
vú); chim sẻ, chim mòng biển (loài chim); rắn, thằn lằn (bò sát); cá vàng, cá
đối đỏ, cá mập xanh (cá), ếch (lưỡng thể).
Bây giờ mục tiêu của ta là phân chúng thành các cụm theo các tiêu
chuẩn, tiêu chuẩn phân cụm cần phải được định nghĩa trước khi tiến hành việc
phân cụm. Mỗi tiêu chuẩn phân cụm có thể cho ta một kết quả phân cụm khác
nhau.


- 14 -

Cừu, chó,
mèo, cá mập

(a)
Cá vàng,
cá đối đỏ
Cá mập

Rắn,thằn lằn
Chim sẻ,chim mòng
Biển,chó,mèo,cừu

Rắn,thằn lằn
Chim sẻ,chim mòng
Biển,cá vàng,cá đối đỏ


Cá vàng,
cá đối đỏ
Cá mập

(b)
Rắn,thằn lằn
Chim sẻ,chim mòng
Biển,cá vàng,cá đối đỏ

(c)

(d)

ếch

Cá vàng,
cá đối đỏ

Hình 2.1. Kết quả phân cụm khi các tiêu chuẩn phân cụm khác nhau
Phân loại là một trong những hành vi cơ bản và nguyên thuỷ nhất của loài
người nhằm thu nhận lượng thông tin vô cùng lớn hàng ngày diễn ra sống
động trong thực tế và xử lý mọi thông tin đơn lẻ là điều không thể được. Do
đó, loài người thực hiện phân loại các thực thể thành các nhóm, mỗi nhóm
được đặc trưng theo các đặc tính chung của mọi thực thể mà nhóm đó chứa
đựng. Ví dụ như trong chúng ta ai ai cũng có khái niệm về con gà trống do
vậy khi ta nhìn thấy con gà trống là ta nghĩ ngay đến tiếng gáy của nó mặc dù
thực tế ta chưa nghe tiếng gáy của con gà trống đó.
Ta giả sử rằng mọi dạng đều có thể biểu diễn thông qua các đặc trưng,
các đặc trưng hình thành nên các vec tơ đặc tính l-chiều.



- 15 -

Sau đây là các bước để thực hiện công việc phân cụm:
Chọn lựa đặc trưng : Các đặc trưng phải được lựa chọn hợp lý để có
thể mã hoá nhiều nhất thông tin liên quan đến mục tiêu công việc mà ta quan
tâm. Lưu ý rằng phải giảm tối đa những dư thừa thông tin giữa các đặc trưng.
Các đặc trưng cần được tiền xử lý trước khi tiến hành các bước sau đó.
Chọn độ đo gần gũi : Độ đo gần gũi là việc chỉ ra mức độ tương tự hay
không tương tự giữa hai vector đặc trưng. Ta phải đảm bảo rằng tất cả các
vector đặc trưng góp phần như nhau trong việc tính toán độ đo gần gũi và
không có đặc trưng nào át hẳn đặc trưng nào. Điều này được đảm nhận bởi
quá trình tiền xử lý.
Tiêu chuẩn phân cụm : Phụ thuộc vào chuyên gia ở lĩnh vực mà ta quan
tâm, và chuyên gia cần giải thích thuật ngữ “dễ nhận biết” dựa vào các dạng
của cụm và được chuyên gia lĩnh vực cho rằng đang tiềm ẩn ở tập dữ liệu .
Chẳng hạn như một cụm loại chặt (compact) của các vector đặc trưng trong
không gian l-chiều có thể dễ nhận thấy trong một tiêu chuẩn, trong khi một
cụm loại “dài và mỏng” lại có thể được dễ nhận thấy bằng tiêu chuẩn khác.
Tiêu chuẩn phân loại có thể được biểu diễn bằng một hàm chi phí hay một vài
loại quy tắc khác.
Thuật toán phân loại: Cần lựa chọn một sơ đồ thuật toán riêng biệt
nhằm làm sáng tỏ cấu trúc cụm của tập dữ liệu.
Công nhận kết quả: Khi đã có kết quả phân loại thì ta phải kiểm tra tính
đúng đắn của nó. Điều này thường được thực hiện bằng việc sử dụng các
kiểm định tính phù hợp.
Trình diễn kết quả: Trong nhiều trường hợp, chuyên gia trong lĩnh vực
ứng dụng cần phải kết hợp kết quả phân cụm với những bằng chứng thực
nghiệm và phân tích để đưa ra các kết luận đúng đắn.



- 16 -

Trong một số trường hợp, cần có cả các bước phân tích khuynh hướng
phân cụm, trong bước này có các kiểm định khác nhau để chỉ ra tập dữ liệu có
hay không có một cấu trúc phân cụm. Ví dụ như tập dữ liệu của ta có thể hoàn
toàn ngẫu nhiên do đó có thể mọi cố gắng phân cụm đều không mang lại kết
quả nào cả.
Chúng ta cần lưu ý rằng việc lựa chọn các đặc trưng, độ đo gần gũi,
tiêu chuẩn phân cụm có thể cho các kết quả phân cụm khác nhau. Vì vậy việc
lựa chọn các tiêu chuẩn này phụ thuộc vào kinh nghiệm, năng lực, kiến thức
của chuyên gia trong lĩnh vực mà ta quan tâm. Tính chủ quan của chuyên gia
là yếu tố thực tế mà chúng ta cần tôn trọng và chấp nhận.
2.1.1.1.Các ứng dụng của phân cụm
Phân cụm là một công cụ quan trọng trong nhiều ứng dụng. Ta đề cập
đến một số ứng dụng sau đây :
Giảm dữ liệu: Giả sử ta có một lượng dữ liệu lớn (N). Quá trình phân
cụm sẽ cho kết quả là phân nhóm các dữ liệu này thành m cụm dữ liệu dễ
nhận biết và tất nhiên m<Rút ra các giả thuyết: Các giả thuyết này có liên quan đến tính tự nhiên
của dữ liệu và phải được kiểm tra bằng việc dùng một số tập dữ liệu khác.
Kiểm định giả thuyết: Chúng ta thực hiện phân cụm để xem xét xem có
tồn tại một cụm nào đó trong tập dữ liệu thoả mãn các giả thiết đã cho hay
không . Đơn cử xem xét giả thuyết sau: “ Các công ty lớn đầu tư ra nước
ngoài” để kiểm tra, ta áp dụng kỹ thuật phân cụm với một tập đại diện lớn các
Công ty. Giả sử rằng mỗi công ty có đặc trưng thông qua quy mô hoạt động,
các hoạt động ở nước ngoài và khả năng hoàn thành các dự án khả thi và
thành công. Nếu sau khi phân cụm, một cụm các Công ty được hình thành
gồm các công ty lớn và có đầu tư ra nước ngoài (ta không quan tâm đến tiêu



- 17 -

chuẩn khả năng thực hiện các dự án khả thi) thì giả thuyết đã được phân cụm
bằng kỹ thuật phân cụm đã được thực hiện .
Dự đoán trên cơ sở các cụm: Đầu tiên ta sẽ phân cụm một tập dữ liệu
thành các cụm mang đặc điểm của các dạng mà nó chứa. Sau đó, khi có một
dạng mới chưa biết ta sẽ xác định xem nó sẽ có khả năng thuộc về cụm nào
nhất và dự đoán được một số đặc điểm của dạng này thông qua các đặc trưng
chung của cả cụm.
2.1.1.2.Các loại đặc trưng
Có 4 loại đặc trưng như sau :
Các đặc trưng danh nghĩa (norminal) : Gồm các đặc trưng mà các giá
trị của nó mã hoá các trạng thái. Ví dụ cho một đặc trưng là giới tính của một
người thì các giá trị có thể có là 1 ứng với nam và 0 ứng với nữ. Hiển nhiên là
sự so sánh về lượng nào giữa các giá trị này đều không mang lại ý nghĩa nào.
Các đặc trưng thứ tự (ordinal) : không như loại đặc trưng ở trên, loại
này các giá trị của nó có thể được sắp một cách có ý nghĩa. Ta có thể xét ví dụ
sau: xét đặc trưng của thể hiện mức độ hoàn thành khoá học của một sinh
viên. Giả sử các giá trị có thể là 4,3,2,1 tương đương với các ý nghĩa : “xuất
sắc”; “rất tốt”; “tốt”; “không tốt”. Các giá trị này được sắp xếp theo một thứ
tự có ý nghĩa nhưng sự so sánh giữa hai giá trị liên tiếp nhau thì không quan
tâm đến lượng.
Các đặc trưng đo theo khoảng (interval-scaled) : Với một đặc trưng cụ
thể nếu sự khác biệt giá trị giữa hai giá trị là có ý nghĩa về mặt số lượng thì ta
có đặc trưng đo theo khoảng (còn gọi là thang khoảng). Ta có thể lấy ví dụ về
đặc trưng nhiệt độ của một cơ thể con người, nếu từ 38-39 độ thì ta coi là sốt;
còn nếu trên 39 độ xem như là sốt cao. Do đó mỗi khoảng nhiệt độ mang ý
nghĩa riêng biệt.



- 18 -

Các đặc trưng đo theo tỷ lệ (ratio-scaled): Nếu xét ví dụ : nhiệt độ
ngoài trời tại Hà Nội là 10 độ - xem là rét ; nhiệt độ ngoài trời ở Luân đôn là 1
độ thì ta không nói được là tỷ lệ nhiệt độ ở Luân đôn lạnh gấp 10 lần nhiệt độ
ở Hà Nội. Nếu lấy ví dụ khác một bà nội trợ đi chợ mua một xúc thịt bò 5 kg
thì xúc thịt bò ấy sẽ nặng gấp 5 lần một người khác mua xúc thịt bò 1 kg. Như
vậy đặc trưng cân nặng là một đặc trưng đo theo tỷ lệ.
2.1.1.3.Các định nghĩa phân cụm
Định nghĩa 1:
Cho X là một tập dữ liệu :
X={x1,x1,...xN }
Ta định nghĩa m-phân cụm của X như một sự phân chia X thành m tập
(cụm): C1, C2, . . . ,Cm sao cho thoả mãn 3 điều kiện sau :
+ Ci   , i=1,…,m
m

+

 Ci  X
i 1

+ Ci

Cj   , i  J , i,j=1,...,m

Thêm vào đó, các vector trong một cụm là tương tự nhau hơn so với
các vector thuộc một cụm khác. Lượng hoá thuật ngữ tương tự và không
tương tự phụ thuộc rất nhiều vào loại của cụm. Chẳng hạn loại cụm chặt thì

có một số độ đo phù hợp, trong khi loại cụm có hình dáng dài lại phù hợp hơn
với các loại độ đo khác . (xem hình 2.2) . Với định nghĩa này, mỗi vector chỉ
thuộc về một cụm riêng nên loại phân cụm này đôi khi được gọi là chặt hay rõ
(hard or crisp).


- 19 -

(a)Các tập chặt

(b) Các tập dài,mỏng (c)Các tập dạng cầu
và elipxôit

Hình 2.2. Phân cụm các tập
Định nghĩa 2:
Dựa vào khái niệm tập mờ ta có thể định nghĩa như sau :
Một sự phân cụm mờ X thành m cụm được mô tả bởi m hàm thuộc u j
sao cho:
Uj : X -> [0,1], j=1,...,m

(1.2)

Và :
m

Uj( xj) = 1 , i=1,2,….,N
j 1

N


0<

Uj( xj) < N=1, j=1,2,….,m

(1.3)

j 1

Mỗi cụm trong tình huống này có thể không được định nghĩa một cách
chính xác. Điều đó nói rằng mỗi vector x thuộc nhiều hơn một cụm, với mỗi
cụm nó lại thuộc với độ thuộc uj :
Uj gần 1 : mức độ thuộc của x vào cụm thứ j là cao.
Uj gần 0 : mức độ thuộc của x vào cụm thứ j là thấp.
Nếu một hàm thuộc có giá trị gần 1 với hai vector thì hai vector này
được xem là tương tự nhau.
Điều kiện (1.3) đảm bảo rằng không tồn tại một cụm mà không chứa
bất kỳ vec tơ nào.


- 20 -

Định nghĩa 1 là trường hợp riêng của định nghĩa 2 khi hàm thuộc chỉ
nhận hai giá trị 0 và 1, khi này người ta gọi nó là hàm đặc trưng.
2.2.Các độ đo gần gũi
2.2.1.Các định nghĩa
Ta bắt đầu với việc định nghĩa liên quan đến độ đo giữa các vectơ sau
đó sẽ mở rộng với trường hợp độ đo giữa các tập véc-tơ.
Một độ đo không tương tự (DM) d trên X là một hàm:
d: XxX -> R
Trong đó R là tập số thực sao cho:

d0  R : - < d0  d(x,y) < +  , x,y  X
d(x,x) = d0,

x  X

(1.4)
(1.5)

Và:
d(x,y) = d(y,x) x,y  X

(1.6)

Nếu ngoài ra :
d(x,y) = d0

nếu và chỉ nếu x = y

(1.7)


d(x,z)  d(x,y) + d(y,z), x,y,z  X

(1.8)

thì d được gọi là một DM metric. (1.7) cho ta biết độ đo không tương tự
nhỏ nhất khi hai véc-tơ là đồng nhất. Dễ thấy khoảng cách Euclid là một độ
đo không tương tự metric (DM metric).
b. Một số độ đo tương tự (SM) s trên X là một hàm:
s: XxX - >R

sao cho :
S0  R : - < S(x,y)  S0 < +  , x,y  X
S(x,x) = S0,

x  X

(1.9)
(1.10)

Và:
S(x,y) = S(y,x) x,y  X

(1.11)


- 21 -

Nếu ngoài ra :
nếu và chỉ nếu x = y

S(x,y) = S0

(1.12)


S(x,y)S(y,z)[S(x,y) + S(y,z)]S(x,z), x,y,z  X

(1.13)

thì S được gọi là một SM metric.

c. Tiếp theo ta mở rộng định nghĩa trên để có thể đo độ đo gần gũi giữa
các tập con của X .
Cho U là một tập các tập con của X, nghĩa là các và U={D1, D2,... Dk}.
Một độ đo gần gũi  trên U là một hàm :
 : U x U ->R

Các công thức (1.4)-(1.8) cho độ đo không tương tự và (1.9)-(1.13) cho
độ đo tương tự được lặp lại với việc thay thế x,y,X lần lượt bởi Di, Dj, U.
Thông thường, các độ đo gần gũi giữa hai tập Di, Dj được định nghĩa
thông qua độ đo gần gũi giữa các phần tử của chúng .
Ví dụ : Cho X={x1, x2, x3, x4, x5, x6 } và U={{x1, x2 },{x1, x4 }, {x3, x4,
x5 }, {x1, x2, x3, x4, x5 }} và hàm không tương tự sau đây :
ss

d (Di,Dj) =

min d2(x,y)
xDi,yDj
với d2 là khoảng cách Euclid giữa hai véc-tơ .
min

Giá trị nhỏ nhất có thể có của

d

ss
min

là 0 .


Vì khoảng cách Euclid giữa một véc-tơ với bản thân nó bằng 0 nên



ss

d

min

d

min

ss

(Di,Dj) =0
(Di,Dj) =

d

ss
min

(Dj,Di)

Vì vậy hàm này là một độ đo không tương tự nhưng nó không phải là
một độ đo không tương tự metric vì (1.7) không được thoả mãn. Thật vậy,
hãy xét các véc-tơ Di , Dj có phần tử chung, chẳng hạn : {x1, x2 }và {x1, x4 }
thì:



- 22 -

d

ss
min

({x1, x2 },{x1, x4 })=0

trong khi chúng là 2 tập khác nhau.
Một cách trực giác thì các định nghĩa trên cho thấy các DM là ngược
với các SM. Chẳng hạn, nếu d là một DM(metric) với d(x,y)>0, x, y  X thì
s=a/d với a>0 là một SM(metric) ; với d max là một khoảng cách lớn nhất trong
mọi cặp phần tử của X. Các nhận xét tương tự cũng đúng cho độ đo tương tự
và không tương tự giữa các tập véc-tơ.
Trong những phần sau chúng ta sẽ ký hiệu bmax và bmin lần lượt là giá trị
max và min của tập dữ liệu X.
2.2.2.Các độ đo gần gũi giữa hai điểm
2.2.2.1.Các véc-tơ thực
Các độ đo không tương tự :
Trong thực hành thì các độ đo không tương tự phổ biến sử dụng là :
+ Các DM metric có trọng số lp :
l

dp(x,y) = (  wi|xi – yi|p) 1/p

(1.14)


i 1

wi  0 , i  1,...l
wi là hệ số trọng số thứ i, chúng được sử dụng chủ yếu với các véc-tơ
giá trị thực.
Nếu wi =1, i  1,...l ta có các DM metric không trọng số.
Nếu p=2 ta có khoảng cách Euclid.
Các DM metric có trọng số l2 được tổng quát hoá như sau :
d(x,y) = ( x  y)tB9x  y)

(1.15)

với B là ma trận đối xứng xác định dương. Nó bao gồm cả khoảng cách
Mahalanobis là một trường hợp đặc biệt và khoảng cách Mahalanobis cũng là
một DM metric .


- 23 -

Các DM metric có trọng số lp đặc biệt cũng thấy trong thực hành là
chuẩn mahattan l1 (có trọng số):
l

Dl(x,y) =

 wi | xi  yi |

(1.16)

i 1


Và chuẩn

l



(có trọng số):

d(x,y) = max wi | xi  yi |

(1.17)

1 i  l

Chuẩn l1 và

l



có thể được xem như là ước lượng trên và ước lượng

dưới của chuẩn l2, thật vậy :
d(x,y)  d2(x,y) d(x,y) d1(x,y)
Khi l=1 thì tất cả các chuẩn lp trùng nhau.
Dựa vào các DM trên ta có thể định nghĩa các SM tương ứng là
sp( x, y)  b max dp( x, y)

+ Các DM khác là :








xi  yi |
|______
bj  a

dG(x,y) =-log10 1  1l


j

(1.18)

ở đây, bj và aj là các giá trị lớn nhất và nhỏ nhất của đặc trưng thứ j. Dễ
dàng thấy đây là một DM metric và nó không chỉ dựa trên x và y mà còn dựa
vào toàn bộ tập X, vì thế nếu

d

G

( x, y) là khoảng cách giữa hai véc-tơ x,y và

d’G(x,y) là khoảng cách giữa hai véc-tơ trên nhưng là khi chúng thuộc X thì
nói chung :

dG(x,y)  d’G(x,y)
Một độ đo không tương tự nữa là :
j j
dQ(x,y) = 1  l   x____
y
x

y

j

j

2

(1.18)

+ Các độ đo tương tự :
Các độ đo tương tự phổ biến nhất trong thực tế là :


×