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

Áp dụng giải thuật tăng dần cho giải thuật phân nhóm sử dụng xác suất

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.4 MB, 109 trang )

i

LỜI CẢM ƠN
Sau hai năm học tập và làm việc, tơi đã đạt được những tiến bộ đáng khích lệ
trong những bước đầu tiên trên con đường nghiên cứu khoa học của mình. Trong khoảng
thời gian đó, tơi đã nhận được rất nhiều sự giúp đỡ cũng như động viên của mọi người.
Công việc nghiên cứu sẽ không được thành cơng trọn vẹn nếu thiếu sự hỗ trợ đó. Luận
văn này chính là cơ hội tốt để tơi gởi lời cảm đến tất cả mọi người.

Trước tiên, tôi muốn gởi lời cảm ơn và lịng kính trọng đến thầy hướng dẫn của
tơi, TS. Nguyễn Đức Cường vì những góp ý về chun mơn cũng như sự nhiệt tình của
thầy. Mặc dù rất bận rộn trong giảng dạy và nghiên cứu khoa học nhưng thầy đã dành
thời gian quyù báo của mình để xem xét, đưa ra những lời khuyên và khắc phục những
khiếm khuyết trong luận văn.

Kế đến, tôi xin được gởi lời cảm ơn đến thầy PGS.TS. Đỗ Phúc và thầy TS. Quản
Thành Thơ đã dành thời gian để thảo luận và góp ý chân thành. Điều đó đã góp phần giúp
luận văn thêm hồn thiện. Tơi cũng xin gởi lời cảm ơn đến thầy TS. Dương Tuấn Anh và
thầy TS. Đặng Trần Khánh góp ý mang tính khoa học cho luận văn.

Sau cùng, tôi xin cảm ơn gia đình và các bạn học viên Cao học K15 hỗ trợ, động
viên cũng như góp ý trong q trình thực hiện luận văn.

TP.HCM, ngày 20 tháng 12 năm 2006

Nguyễn Thành Tâm


ii

TÓM TẮT


Trong những năm gần đây một số kỹ thuật máy học và khai phá dữ liệu đã
được áp dụng hiệu quả để khám phá những tri thức hữu ích từ dữ liệu. Một
trong những kỹ thuật được sử dụng rộng rãi trong khai phá dữ liệu là họ các
giải thuật phân nhóm có sử dụng xác suất mà đặt biệt là giải thuật Cực đại kỳ
vọng toán (Expectation-Maximization) vì nó dễ hiện thực và đảm bảo tính tăng
đơn điệu chất lượng của mô hình. Tuy nhiên, giải thuật EM cũng còn một số
hạn chế như: phụ thuộc nhiều vào việc khởi tạo các thông số ban đầu, giải
thuật có thể bị kẹt ở điểm cực đại cục bộ cũng như độ phức tạp lớn. Đây cũng
là những hạn chế gặp phải trong giải thuật K-Means nhưng chúng đã được khắc
phục một phần khi áp dụng chiến lược tăng dần (incremental strategy) cho giải
thuật K-Means [1].
Việc áp dụng thành công chiến lược tăng dần lên giải thuật K-Means cùng
với việc hai giải thuật EM và K-Means có nhiều điểm tương đồng dẫn đến việc
chọn giải thuật EM để áp dụng chiến lược tăng dần. Vì vậy, trong luận văn
này, chúng ta sẽ (i) tìm hiểu cách vận dụng chiến lược tăng dần vào các giải
thuật học, (ii) tìm hiểu giải thuật phân nhóm thuộc họ EM và (iii) phân tích và
vận dụng chiến lược tăng dần lên các giải thuật đã tìm hiểu, khảo sát kết quả
trên tập dữ liệu khoa học chuẩn UCI.
Chiến lược tăng dần và two-phase [1] sẽ được áp dụng cho giải thuật EM
trong đề tài này. Tất cả các giải thuật đều được hiện thực trong môi trường
Weka bằng ngôn ngữ Java và MATLAB. Các giải thuật đều được kiểm tra và
so sánh với giải thuật EM gốc trên các tập dữ liệu lớn.


iii

MỤC LỤC
LỜI CẢM ƠN.................................................................................................................i
TÓM TẮT......................................................................................................................ii
MỤC LỤC ................................................................................................................... iii

DANH MỤC HÌNH.......................................................................................................v
DANH MỤC BẢNG BIỂU.........................................................................................vii
1 GIỚI THIỆU ...........................................................................................................1
1.1
Sự cần thiết của việc cải tiến giải thuật EM ..................................................1
1.2
Đối tượng, phạm vi nghiên cứu.......................................................................2
1.2.1
Đối tượng nghiên cứu ..............................................................................2
1.2.2
Phạm vi và mục tiêu của đề tài...............................................................2
1.3
Ý nghóa thực tiễn của đề tài............................................................................3
1.3.1
Tính khả thi .............................................................................................3
1.3.2
Ứng dụng.................................................................................................3
1.4
Nội dung trình bày ..........................................................................................4
2 CÁC NGHIÊN CỨU LIÊN QUAN ........................................................................4
2.1
Chỉ số đo chất lượng mô hình Kurtosis ...........................................................5
2.2
Giải thuật Greedy EM ....................................................................................7
2.3
Giải thuật K-Means ......................................................................................11
2.4
Giải thuật Incremental K-Means ..................................................................12
2.5
Giải thuật Two-Phase K-Means ..................................................................13

3 CƠ SỞ LÝ THUYẾT ...........................................................................................16
3.1
Khai phá dữ liệu (data mining) .....................................................................16
3.1.1
Định nghóa .............................................................................................16
3.1.2
Tại sao phải khai phá dữ liệu? ..............................................................22
3.1.3
Ứng dụng khai phá dữ liệu ....................................................................23
3.1.4
Các tiêu chuẩn trong khai phá dữ liệu ..................................................25
3.1.5
Các kỹ thuật dùng trong khai phá dữ liệu .............................................26
3.1.6
Kỹ thuật phân nhóm ..............................................................................27
3.2
Ước lượng Cực đại kỳ vọng toán ..................................................................46
3.2.1
Bài toán ước lượng ................................................................................46
3.2.2
Cực đại cục bộ của hàm likelihood.......................................................48
3.2.3
Giải thuật cực đại kỳ vọng toán EM .....................................................49
3.3
Chiến lược tăng dần (incremental strategy) .................................................51
3.3.1
Định nghóa .............................................................................................51
3.3.2
Lợi ích của chiến lược tăng dần ............................................................52
4 PHÂN TÍCH, THIẾT KẾ VÀ HIỆN THỰC .........................................................52

4.1
Phân tích .......................................................................................................52
4.1.1
Khả năng áp dụng chiến lược tăng dần cho giải thuật EM...................52
4.1.2
Xác định các cluster trong giải thuật EM vaø haøm “distortion” .............53


iv
4.1.3
Tập dữ liệu có kích thước lớn và tập “compression”............................57
4.2
Weka.............................................................................................................59
4.2.1
Tổng quan về Weka ..............................................................................59
4.2.2
Explorer.................................................................................................68
4.2.3
Knowledge flow ....................................................................................68
4.2.4
Experimenter.........................................................................................69
4.2.5
Simple CLI ............................................................................................70
4.2.6
Arff Viewer ...........................................................................................71
4.2.7
Các giải thuật phân nhóm trong Weka .................................................71
4.2.8
Phát triển ứng dụng dựa trên Weka ......................................................71
4.2.9

Nhúng máy học vào ứng dụng ..............................................................72
4.2.10 Thêm mới một mô hình máy học vào Weka.........................................72
4.3
Thiết kế.........................................................................................................73
4.3.1
Áp dụng chiến lược tăng dần cho giải thuật EM...................................73
4.3.2
Áp dụng ý tưởng của giải thuật Two-Phase K-Means cho giải thuật EM
75
4.4
Hiện thực ......................................................................................................76
4.5
Thử nghiệm ...................................................................................................87
4.5.1
Định dạng dữ liệu ..................................................................................87
4.5.2
Thử nghiệm trên tập dữ liệu tự tạo .......................................................88
4.5.3
Thử nghiệm trên tập dữ liệu UCI..........................................................91
4.5.4
Thử nghiệm trên tập dữ liệu có kích thước lớn .....................................94
5 ĐÁNH GIÁ – KẾT LUẬN ...................................................................................98
5.1
Đánh giá .......................................................................................................98
5.2
Kết luận ........................................................................................................98
6 HƯỚNG PHÁT TRIỂN ........................................................................................99
6.1
Hướng phát triển giải thuật ...........................................................................99
6.2

Hướng phát triển ứng dụng ...........................................................................99
THUẬT NGỮ SỬ DỤNG ...........................................................................................99
TÀI LIỆU THAM KHẢO ........................................................................................101


v

DANH MỤC HÌNH
Hình 2-1 .............................................................................................................................. 5
Hình 2-2: Sơ đồ khối giải thuật Greedy EM .................................................................... 9
Hình 2-3: Minh họa giải thuật greedy EM thực hiện [3,4]............................................ 10
Hình 2-4: Sơ đồ khối giải thuật K-Means....................................................................... 11
Hình 2-5: Mã giả giải thuật Incremental K-Means [1].................................................. 12
Hình 2-6: Sơ đồ khối giải thuật Incremental K-Means ................................................. 13
Hình 2-7: Giải thuật Two-Phase K-Means [1] ............................................................... 14
Hình 3-1: Khai phá dữ liệu được xem như một quy trình khai phá tri thức [2] ............ 17
Hình 3-2: Kiến trúc của hệ thống khai phá dữ liệu thường gặp [2].............................. 18
Hình 3-3: Crisp-DM [16] ................................................................................................. 26
Hình 3-4: Sơ đồ khối giải thuật K-Means....................................................................... 32
Hình 3-5: Minh họa giải thuật K-Means [2]................................................................... 32
Hình 3-6: Minh họa giải thuật K-Medoids [2] ............................................................... 34
Hình 3-7: Minh họa giải thuật PAM [2] ......................................................................... 35
Hình 3-8: So sánh hoạt động giữa hai nhóm giải thuật gộp [2] .................................... 36
Hình 3-9: Minh họa giải thuật AGNES [2]..................................................................... 38
Hình 3-10: Minh họa giải thuật DIANA [2] ................................................................... 39
Hình 3-11: Minh họa khái niệm directly density-reachable [2].................................... 40
Hình 3-12: Minh họa khái niệm density-reachable [2] ................................................. 41
Hình 3-13: Minh họa khái niệm density-connected....................................................... 41
Hình 3-14: Minh họa giải thuật DBSCAN với dữ liệu nhiễu [2] ................................. 42
Hình 3-15: Kết quả của giải thuật DBSCAN với Eps và MinPts khác nhau [2] .......... 42

Hình 3-16: Minh họa khái niệm Core-distance và Reachability-distance ................... 44
Hình 3-17: Minh họa thứ tự cluster trong giải thuật OPTICS........................................ 45
Hình 3-18: Chiến lược tăng dần ...................................................................................... 52
Hình 4-1: Ví dụ minh họa phát triển ứng dụng dựa vào Weka..................................... 67
Hình 4-2: Giao diện của Explorer................................................................................... 68
Hình 4-3: Giao diện của Knowledge Flow..................................................................... 69
Hình 4-4: Giao diện của Experimenter........................................................................... 70
Hình 4-5: Giao diện của CLI........................................................................................... 70
Hình 4-6: Giao diện của ARFF Viewer.......................................................................... 71
Hình 4-7: Giải thuật Incremental EM ............................................................................. 74
Hình 4-8: Sơ đồ khối giải thuật Incremental EM........................................................... 75
Hình 4-9: Giải thuật Two-Phase EM .............................................................................. 76
Hình 4-10: Sơ đồ khối giải thuật Two-Phase EM .......................................................... 76
Hình 4-11: Các gói phần mềm chính dùng trong giải thuật Incremental EM .............. 77
Hình 4-12: Sơ đồ lớp IEM ............................................................................................... 78
Hình 4-13: Sơ đồ lớp TwoPhaseEM ............................................................................... 78
Hình 4-14: Sơ đồ tuần tự giao tiếp giữa Weka và đối tượng IEM ................................ 84


vi
Hình 4-15: Sơ đồ tuần tự giao tiếp giữa Weka và đối tượng TwoPhaseEM ................ 85
Hình 4-16: Chi tiết hiện thực giải thuật IEM ................................................................. 85
Hình 4-17: Storyboard cách dùng giải thuật trong Weka ............................................. 86
Hình 4-18: Các bước thực hiện thự nghiệm giải thuật trong Weka .............................. 87
Hình 4-19: Tập dữ liệu Gauss 1, Gauss 2 và Gauss 3................................................... 89
Hình 4-20: Kết quả thử nghiệm trên tập dữ liệu Gauss 1 ............................................. 89
Hình 4-21: Kết quả thử nghiệm trên tập dữ liệu Gauss 2 ............................................. 90
Hình 4-22: Kết quả thử nghiệm trên tập dữ liệu Gauss 3 ............................................. 91
Hình 4-23: Kết quả thử nghiệm trên tập dữ liệu Iris ..................................................... 92
Hình 4-24: Kết quả thử nghiệm trên tập dữ liệu CPU................................................... 93

Hình 4-25: Kết quả thử nghiệm trên tập dữ liệu Ionosphere ........................................ 93
Hình 4-26: Tập dữ liệu Gauss 4, Gauss 5 và Gauss 6................................................... 94
Hình 4-27: So sánh giải thuật EM và IEM trên tập Gauss 4 ......................................... 95
Hình 4-28: So sánh giải thuật EM và IEM trên tập Gauss 5 ......................................... 96
Hình 4-29: So sánh giải thuật EM và IEM trên tập Gauss 6 ......................................... 96
Hình 4-30: Thời gian chạy của các giải thuật trên tập dữ liệu lớn .............................. 97


vii

DANH MỤC BẢNG BIỂU
Bảng 4-1: Các lớp cơ bản trong gói weka.core.............................................................. 60
Bảng 4-2: Các giải thuật xử lý dữ liệu trong Weka....................................................... 61
Bảng 4-3: Danh sách các giải thuật phân lớp ................................................................ 63
Bảng 4-4: Các giải thuật siêu phân lớp quan trọng trong Weka................................... 65
Bảng 4-5: Bảng so sánh các giải thuật .......................................................................... 66
Bảng 4-6: Các tập dữ liệu Gauss .................................................................................... 88
Bảng 4-7: Các tập dữ liệu UCI ....................................................................................... 91
Bảng 4-8: Các tập dữ liệu Gauss có kích thước lớn ....................................................... 94
Bảng 4-9: Tập dữ liệu có kích thước lớn ........................................................................ 97


Đề tài: p dụng chiến lược tăng dần trong các giải thuật phân nhóm

Trang 1/102

1 GIỚI THIỆU
1.1 Sự cần thiết của việc cải tiến giải thuật EM
Như chúng ta biết, kỹ thuật khai phá dữ liệu trong những năm gần đây đã có
những bước phát triển mạnh mẽ và dần hoàn thiện. Nó đã gây được sự chú ý

của các tổ chức cũng như các nhà phát triển Cơ sở dữ liệu và được đánh giá là
thị trường tiềm năng trong những năm tới. Đáng chú ý nhất là hai công ty phần
mềm lớn cũng là hai nhà phát triển Hệ quản trị Cơ sở dữ liệu lớn nhất thế giới
là Microsoft và Oracle đang dần hoàn thiện tiêu chuẩn và đưa khai phá dữ liệu
vào sản phẩm thương mại của mình.
Có rất nhiều nhóm kỹ thuật khai phá dữ liệu được xem xét và đưa vào ứng
dụng thương mại như phân loại, phân nhóm, … Trong đó, khi nhắc đến kỹ thuật
phân nhóm, người ta thường nghó ngay đến giải thuật K-Means và Cực đại kỳ
vọng toán (EM) 1. Thực tế cho thấy trong họ kỹ thuật phân nhóm của mình,
Microsoft cũng chỉ giới thiệu hai giải thuật này trong sản phẩm SQL Server
2005, đây cũng là phiên bản mới nhất tính đến thời điểm này.
Tuy nhiên, giải thuật EM hiện nay vẫn còn một số hạn chế như: phụ thuộc
nhiều vào việc khởi tạo các thông số ban đầu, giải thuật có thể bị kẹt ở điểm
cực đại cục bộ cũng như độ phức tạp lớn. Các hạn chế này làm giảm khả năng
ứng dụng của giải thuật EM cũng như gây khó khăn cho người dùng giải thuật.
Vì vậy, việc cải tiến giải thuật EM thành công có ý nghóa rất lớn trong họ kỹ
thuật phân nhóm và góp phần vào sự phát triển của khai phá dữ liệu.

1

Giải thuật cực đại kỳ vọng toán do Dempster phát triển vào năm 1977, tên tiếng Anh là Expectation
Maximization, thường được gọi tắt là EM.

Học viên: Nguyễn Thành Tâm

GVHD: TS.Nguyễn Đức Cường


Đề tài: p dụng chiến lược tăng dần trong các giải thuật phân nhóm


Trang 2/102

1.2 Đối tượng, phạm vi nghiên cứu
1.2.1 Đối tượng nghiên cứu
Như đã đề cập ở trên, có rất nhiều giải thuật được dùng trong phân nhóm dữ
liệu mà trong đó phải kể đến là giải thuật Cực đại kỳ vọng toán (EM) dựa trên
phân phối Gauss của xác suất. Tuy nhiên giải thuật này còn một số hạn chế
như [3,4,5]:(i) chưa biết số nhóm, (ii) không có cách tổng quát để khởi tạo
thông số ban đầu cho giải thuật, (iii) giải thuật có thể bị kẹt tại điểm cực đại
cục bộ. Để giải quyết những khó khăn (ii) và (iii), chúng ta sẽ xem xét và áp
dụng chiến lược tăng dần (incremental strategy) 2 cho giải thuật EM. Vậy, đối
tượng nghiên cứu chính trong đề tài này là giải thuật EM và chiến lược tăng
dần.
1.2.2 Phạm vi và mục tiêu của đề tài
-

Nghiên cứu chiến lược tăng dần trong giải thuật K-Means [1]

-

p dụng chiến lược này cho giải thuật EM

-

Nghiên cứu giải thuật Two-Phase K-Means [1]

-

Xây dựng giải thuật Two-Phase EM áp dụng cho tập dữ liệu lớn


-

Thiết kế, hiện thực và thử nghiệm kết quả của các giải thuật trên tập dữ
liệu khoa học UCI 3

-

Nhận xét đánh giá kết quả đạt được

2

Chiến lược tăng dần đã được áp dụng thành công trong giải thuật K-Means, xem thêm tài liệu tham
khảo [1]
3
Dữ liệu khoa học UCI được dùng trong nghiện cứu các giải thuật máy học và khai phá dữ liệu. Có thể
tải dữ liệu này tại />
Học viên: Nguyễn Thành Tâm

GVHD: TS.Nguyễn Đức Cường


Đề tài: p dụng chiến lược tăng dần trong các giải thuật phân nhóm

Trang 3/102

1.3 Ý nghóa thực tiễn của đề tài
1.3.1 Tính khả thi
Giải thuật EM và K-Means rất giống nhau vì có nhiều điểm tương đồng như [7]
Kết quả là một tập hợp các nhóm dữ liệu được phân biệt hóa dựa trên
tập thuộc tính

Có vòng lặp có giới hạn để tìm sự phân nhóm khả thi dựa trên các hàm
đánh giá
Quy định số lượng cluster cố định
Sự hội tụ cục bộ của hàm đánh giá
Do đó, chúng ta có thể áp dụng các chiến lược đã áp dụng thành công cho
giải thuật K-Means vào giải thuật EM.
Việc chiến lược tăng dần cũng như các chiến lược khác đã được áp dụng
thành công cho giải thuật K-Means [1,15], đã tạo động lực cho việc nghiên cứu
các chiến lược này cho giải thuật EM. Do đó, bên cạnh việc nghiên cứu và áp
dụng chiến lược tăng dần cho giải thuật EM, luận văn còn xem xét khả năng
phát triển giải thuật EM dùng cho khối lượng dữ liệu lớn dựa vào ý tưởng của
giải thuật Two-Phase K-Means [1].
1.3.2 Ứng dụng
Như đã đề cập ở trên, giải thuật EM có những mặt hạn chế làm giảm đi khả
năng áp dụng nó trong thực tế. Do đó, việc cải tiến giải thuật EM có ý nghóa
thiết thực như:
-

Giảm chi phí tính toán

-

Giải thuật không bị kẹt tại điểm cực đại cục bộ

Học viên: Nguyễn Thành Tâm

GVHD: TS.Nguyễn Đức Cường


Đề tài: p dụng chiến lược tăng dần trong các giải thuật phân nhóm


-

Trang 4/102

Có khả năng áp dụng khai phá dữ liệu trên tập dữ liệu lớn 4

1.4 Nội dung trình bày
Trong đề tài này, chúng ta sẽ đề cập đến các vấn đề sau đây:
-

Tổng quan về các nghiên cứu trước đây và hiện tại về khai phá dữ liệu

-

Trình bày một số kỹ thuật khai phá dữ liệu: như phân loại, luật liên kết,
phân nhóm; ...

-

Thiết kế và hiện thực chương trình ứng dụng: phương pháp và giải thuật
sử dụng, qui trình và cách vận hành chương trình ứng dụng, cấu trúc dữ
liệu, giao diện và một thí nghiệm minh họa.

-

Đánh giá và kết luận.

-


Hướng phát triển của đề tài.

2 CÁC NGHIÊN CỨU LIÊN QUAN
Giải thuật EM là giải thuật được dùng rộng rãi nhất so với các giải thuật
máy học khác trên mô hình hỗn hợp. Giải thuật này đảm bảo sự hội tụ về điểm
tối ưu cục bộ nhưng không đảm bảo đó cũng là điểm tối ưu toàn cục vì kết quả
cuối cùng phụ thuộc nhiều vào điều kiện khởi tạo các giá trị của các thông số
ban đầu. Vì lý do này mà đã có rất nhiều nghiên cứu có liên quan nhằm giải
quyết vấn đề này.
Một trong những cách đơn giản đó là khởi tạo các giá trị của các thông số
ban đầu một cách ngẫu nhiên sau đó thực hiện giải thuật nhiều lần rồi chọn lời
giải tốt nhất. Nhưng cách này không được ưa chuộng vì giải thuật không xác
4

Tập dữ liệu có kích thước lớn ví dụ như cơ sở dữ liệu về các thuê bao của các công ty điện thoại, dữ
liệu hàng hóa bán được trong siêu thị…

Học viên: Nguyễn Thành Tâm

GVHD: TS.Nguyễn Đức Cường


Đề tài: p dụng chiến lược tăng dần trong các giải thuật phân nhóm

Trang 5/102

định vì không biết khi nào có lời giải tối ưu nên thường không thích hợp cho
những ứng dụng lớn đòi hỏi tính ổn định cao.
Phần bên dưới sẽ trình bày các nghiên cứu có liên quan theo trình tự thời
gian

2.1 Chỉ số đo chất lượng mô hình Kurtosis
Như chúng ta đã biết, khi thực hiện giải thuật EM, khi thuật toán dừng lại
chúng ta có giá trị cực đại của hàm log-likelihood. Tuy nhiên, giá trị này không
phải là giá trị thể hiện chất lượng của mô hình [15]. Có nghóa là với một giá trị
log-likelihood nào đó khi giải thuật kết thúc, chúng ta chỉ có thể khẳng định đó
là giá trị lớn nhất, còn giữa hai cluster khác nhau không thể dùng giá trị này để
so sánh chất lượng của mô hình.

Hình 2-1
: Giải thuật EM tìm được một nhóm, trong khi đó dữ liệu thực sự được phân bố
trên 2 nhóm [15]. 5
Để đánh giá và so sánh chất lượng của các mô hình Gauss khác nhau, Nikos
Vlassis đã xây dựng một hàm tính tổng chỉ số Kurtosis. Hàm này có giá trị càng
nhỏ thì chất lượng của mô hình càng tốt. Hàm tính tổng chỉ số Kurtosis được
xây dựng như sau [15]:
5

Hàm Gauss với

µ

là giá trị trung bình (mean)

Học viên: Nguyễn Thành Tâm

GVHD: TS.Nguyễn Đức Cường


Đề tài: p dụng chiến lược tăng dần trong các giải thuật phân nhóm


Trang 6/102

Theo giải thuật EM, ta có: 6

π

( t +1 )
j

=

n

1
n

∑ P( j | x

n

µ
σ

i =1
n

P ( j | xi ) xi

P ( j | xi )
i =1



=

n

i =1

2
j

)

(1)

i =1


=


( t +1)
j

i

P( j | xi )( xi − µ (jt +1) ) 2




n

P ( j | xi )
i =1

(2)
(3)

Trong đó:

P ( j | xi ) =

π (jt ) p( xi | j; π (jt ) , σ (jt ) )



K
k =1

p( xi | k ; π k( t ) , σ k(t ) )

Chỉ số Kurtosis được tính dựa vào phương trình sau





−∞

(


x−µj

σj

) p ( x | j )dx = 3

Maø

p( x | j ) =

P( j | x)

πj

p ( x)

Thay vào phương trình trên ta được





−∞

(

x − µ j P ( j | x)
)
p ( x)dx = 3


σj

πj

Tính xấp xỉ tích phân Monte Carlo ta được

 xi − µ j


nπ j i =1  σ j
1

n

4


 P( j | xi ) = 3



Hay
6

Trong đó

π j , µ j ,σ j

lần lượt là xác suất, giá trị trung bình và độ lệch chuẩn của từng cluster


Học viên: Nguyễn Thành Tâm

GVHD: TS.Nguyễn Đức Cường


Đề tài: p dụng chiến lược tăng dần trong các giải thuật phân nhóm

Trang 7/102

4

 xi − µ j 
∑i =1  σ  P( j | xi )
j


=3
n
∑i =1 P( j | xi )
n

Chỉ số Kurtosis của cluster j được tính như sau
4

x −µ 
∑i=1  i σ j  P( j | xi )
j



Kj =
− 3 (4)
n
∑i=1 P( j | xi )
n

Tổng chỉ số Kurtosis sẽ là
K

KT = ∑ π j | K j |
j =1

Dựa vào tổng chỉ số Kurtosis, Nikos Vlassis đã cải tiến giải thuật EM với hàm
mục tiêu

7

là hàm K T . Tuy nhiên, cũng theo tác giả, giải thuật này cũng còn

hạn chế là không làm việc tốt với dữ liệu có nhiễu.
2.2 Giải thuật Greedy EM
Giải thuật Greedy EM ban đầu được Nikos Vlassis phát triển dựa trên giải
thuật EM [4]. Giải thuật này được thực hiện dựa trên ý tưởng: ban đầu xây
dựng mô hình hỗn hợp Gauss chỉ có duy nhất một thành phần, sau đó tiếp tục
thêm một thành phần mới vào mô hình cho đến khi điều kiện dừng được thỏa
mãn [3,4,9,10].
Xét tại một thời điểm nào đó, giả sử một thành phần mới Φ ( x;θ ) được thêm
vào mô hình gồm k thành phần f k ( x) . Ta có hàm likelihood mới:

7


Hàm mục tiêu còn được gọi là hàm chi phí, hàm chất lượng… Giải thuật được thực hiện theo xu hướng
tối ưu hóa hàm này.

Học viên: Nguyễn Thành Tâm

GVHD: TS.Nguyễn Đức Cường


Đề tài: p dụng chiến lược tăng dần trong các giải thuật phân nhóm

Trang 8/102

f k +1 ( x ) = (1 − a ) f k ( x ) + aΦ ( x; φ )
trong đó a ∈ (0,1)
Vậy, thông số của hàm Φ ( x;θ ) được chọn sao cho hàm log-likelihood sau
đạt cực đại
n

n

i =1

i =1

Lk +1 = ∑ log f k +1 ( xi ) = ∑ log[(1 − a ) f k ( xi ) + aΦ ( xi ;θ ) ]
Thực hiện tìm cực trị của hàm trên ta tính được các thông số sau [3]:

P ( k + 1 | xi ) =


aφ ( x i ; µ , σ )
(1 − a) f k ( xi ) + aφ ( xi ; µ , σ )

1 n
a = ∑ P ( k + 1 | xi )
n i =1

(6)




(7)

n

µ (jt +1) =
σ

2
j


=

n

i =1

i =1

n

P ( k + 1 | xi ) xi

P(k + 1 | xi )
i =1

P(k + 1 | xi )( xi − µ (jt +1) ) 2



n

P ( k + 1 | xi )
i =1

(5)

(8)

Vì chỉ có các thông số của thành phần mới thêm vào mô hình được cập nhật
do đó các bước (5) đến (8) là cách đơn giản và nhanh nhất để tìm cực đại cục
bộ của hàm Lk +1 mà không cần phải tính lại các thông số của các thành phần
khác. Điều này đảm bảo thời gian tính toán của thuật toán vẫn tuyến tính. Tuy
nhiên, giải thuật trên vẫn còn một số hạn chế là nó chỉ tìm kiếm cục bộ nên nó
sẽ nhạy với các giá trị ban đầu của các thông số a, µ và σ .
Giải thuật Greedy EM được thực hiện theo những bước sau:
Bước 1: Xác định mô hình tối ưu chỉ gồm 1 thành phần

Học viên: Nguyễn Thành Tâm


GVHD: TS.Nguyễn Đức Cường


Đề tài: p dụng chiến lược tăng dần trong các giải thuật phân nhóm

Trang 9/102

Bước 2: Tìm kiếm một thành phần nào đó trong mô hình rồi tách thành
phần đó thành 2 thành phần khác (dùng giải thuật Partial EM: thực hiện
các phép toán từ (5) đến (8)). Tăng số thành phần của mô hình thêm 1
Bước 3: Thực hiện giải thuật EM cho đến khi hội tụ
Bước 4: Nếu tiêu chuẩn dừng thỏa mãn thì dừng, ngược lại thì lặp lại
bước 2.

Hình 2-2: Sơ đồ khối giải thuật Greedy EM
Ví dụ minh họa hoạt động của giải thuật greedy EM

Học viên: Nguyễn Thành Tâm

GVHD: TS.Nguyễn Đức Cường


Đề tài: p dụng chiến lược tăng dần trong các giải thuật phân nhóm

Trang 10/102

Hình 2-3: Minh họa giải thuật greedy EM thực hiện [3,4].
+ Ưu điểm: Giải thuật Greedy EM là không cần phải xác định số lượng các
cluster, giải thuật đảm bảo hội tụ

- Nhược điểm: Giả sử tại một thời điểm, chúng ta có n cluster thì giải thuật
Greedy EM Phải thực hiện giải thuật Partial EM trên n cluster này trước khi
Học viên: Nguyễn Thành Tâm

GVHD: TS.Nguyễn Đức Cường


Đề tài: p dụng chiến lược tăng dần trong các giải thuật phân nhóm

Trang 11/102

chọn được cluster nào nên được tách ra. Như vậy giải thuật Greedy EM có tính
chất tương tự như giải thuật “Agglomerative” nên độ phức tạp lớn.
2.3 Giải thuật K-Means
Giải thuật K-Means thuộc họ giải thuật phân chia (partitioning), giải thuật
được trình bày với mã giả sau:
Bước1: Chọn ngẫu nhiên K đối tượng cho K cluster
Bước 2: Đối với mỗi đối tượng trong tập dữ liệu, tìm cluster gần nó nhất,
cho nó vào cluster này
Bước 3: Tính lại tâm của các cluster
Bước 4: Nếu tâm của các cluster không “di chuyển” 8, giải thuật dừng.
Ngược lại, lặp lại bước 2.

Hình 2-4: Sơ đồ khối giải thuật K-Means
8

Khái niệm không “di chuyển” ở đây có thể hiểu như tâm của cluster không thay đổi khi được tính lại

Học viên: Nguyễn Thành Tâm


GVHD: TS.Nguyễn Đức Cường


Đề tài: p dụng chiến lược tăng dần trong các giải thuật phân nhóm

Trang 12/102

2.4 Giải thuật Incremental K-Means
Giải thuật Incremental K-Means là một cải tiến của giải thuật K-Means
được Tiến sỹ Nguyễn Đức Cường phát triển năm 2004 trong luận văn tốt
nghiệp [1] dựa trên việc tính toán “distortion” 9 của các cluster. Giải thuật này
bao gồm hai giai đoạn là giai đoạn học bình thường (giai đoạn 1) và giai đoạn
tăng số lượng nhóm (giai đoạn 2).
Gán k=1.
Giai đoạn 1: Học bình thường
Bước 1:
Nếu k=1, chọn một điểm tùy ý làm tâm cluster
Nếu k > 1, chèn tâm của cluster mới vào cluster có distortion lớn
nhất.
Bước 2:
Gán mỗi đối tượng trong tập training vào cluster gần nhất và cập
nhật tâm của cluster.
Bước 3:
Nếu tâm cluster không di chuyển, nhảy đến giai đoạn 2. Ngược
lại, nhảy đến giai đoạn 1, bước 2.
Giai đoạn 2: Tăng số cluster
Nếu k còn nhỏ hơn một giá trị xác định trước thì tăng k thêm 1 và quay
lại giai đoạn 1 bước 1. Ngược lại thì dừng giải thuật.
Hình 2-5: Mã giả giải thuật Incremental K-Means [1]


9

“Distortion” của các cluster đại diện cho chất lượng của từng cluster. Nó đã được tính toán và kiểm
chứng trong tài liệu tham khảo [1].

Học viên: Nguyễn Thành Tâm

GVHD: TS.Nguyễn Đức Cường


Đề tài: p dụng chiến lược tăng dần trong các giải thuật phân nhóm

Trang 13/102

Hình 2-6: Sơ đồ khối giải thuật Incremental K-Means
+ Ưu điểm: không bị kẹt ở điểm tối ưu cục bộ.
- Nhược điểm: giải thuật vẫn còn phụ thuộc vào giá trị khởi tạo ban đầu của
tâm các cluster. Có thể áp dụng chiến lược tìm kiếm để giảm thiểu ảnh hưởng
này.
2.5 Giải thuật Two-Phase K-Means 10
Trong thời đại khoa học công nghệ phát triển nhanh chóng như ngày nay,
khối lượng dữ liệu mà con người có ngày càng trở nên to lớn hơn. Điều này dẫn
đến những đòi hỏi phải có những giải thuật xử lý những khối lượng dữ liệu lớn,
đối với các giải thuật máy học cũng vậy. Đối với việc xử lý khối lượng dữ liệu
10

Two-Phase K-Means được đặt tên theo cách hoạt động của nó. Nó chính là giải thuật K-Means được
cải tiến, hoạt động theo 2 giai đoạn ( 2 phases). Xem thêm tài liệu tham khảo [1].

Học viên: Nguyễn Thành Tâm


GVHD: TS.Nguyễn Đức Cường


Đề tài: p dụng chiến lược tăng dần trong các giải thuật phân nhóm

Trang 14/102

lớn, người ta thường quan tâm đến hai vấn đề chính là không gian và thời gian
xử lý, mà từ đó đề ra những chiến lược thích hợp.
Về không gian, giả sử chúng ta có khối dữ liệu có kích thước lớn hơn kích
thước bộ nhớ. Khi đó dữ liệu được đưa vào bộ nhớ từng phần và được xử lý
trước, khi xử lý xong thì dữ liệu mới tiếp tục được đưa thêm vào... Khi thực
hiện chiến lược này, người thiết kế giải thuật phải trú trọng đến các kỹ thuật
cache, kỹ thuật index nhằm giúp cho việc truy xuất dữ liệu nhanh, chính xác và
hiệu quả. Đây cũng là chiến lược được áp dụng trong giải thuật Two-Phase KMeans được Tiến sỹ Nguyễn Đức Cường phát triển [1].
Ngoài vấn đề không gian, người ta còn quan tâm đến thời gian thực hiện
giải thuật. Nếu thời gian thực hiện giải thuật không tuyến tính (hoặc gần như
tuyến tính) với kích thước của dữ liệu thì việc áp dụng giải thuật hầu như không
khả thi.
Giải thuật Two-Phase K-Means gồm hai giai đoạn chính như sau:
Giai đoạn 1:

Repeat
-

Thêm các đối tượng dữ liệu mới vào buffer

-


Nếu đây là lần lặp đầu tiên thì
p dụng giải thuật Incremental K-Means trên buffer cho đến khi hội tụ

Ngược lại, áp dụng giải thật K-Means trên buffer cho đến khi hội tụ
-

Thêm tập cluster vào tập compression

Until tập dữ liệu là rỗng
Giai đoạn 2:

- p dụng giải thuật Incremental K-Means trên tập compression với mỗi phần
tử có trọng số là số đối tượng thuộc phần tử đó.

Hình 2-7: Giải thuật Two-Phase K-Means [1]
Học viên: Nguyễn Thành Tâm

GVHD: TS.Nguyễn Đức Cường


Trang 15/102

Phase 2: Processing
compression set

Phase 1: Processing dataset

Đề tài: p dụng chiến lược tăng dần trong các giải thuật phân nhóm

Hình 2-8: Sơ đồ khối giải thuật Two-Phase K-Means

+ Ưu điểm: giải thuật có thể hoạt động đối với tập dữ liệu lớn và trả về kết quả
gần như tối ưu chỉ qua một lượt xử lý tập dữ liệu, nó dùng chiến lược nén để
việc tính toán hiệu quả hơn.
- Nhược điểm: việc thực hiện giải thuật Incremental K-Means trong giai đoạn 1
của giải thuật còn phức tạp, ảnh hưởng đến thời gian tính toán chung của giải
thuật. Ngoài ra, trong quá trình tính toán, giải thuật này làm méo thông tin về
bán kính của các cluster do sử dụng tập “compression”.

Học viên: Nguyễn Thành Tâm

GVHD: TS.Nguyễn Đức Cường


Đề tài: p dụng chiến lược tăng dần trong các giải thuật phân nhóm

Trang 16/102

3 CƠ SỞ LÝ THUYẾT
3.1 Khai phá dữ liệu (data mining)
3.1.1 Định nghóa
Nói một cách đơn giản, khai phá dữ liệu là việc rút trích thông tin hay tri
thức từ những khối dữ liệu khổng lồ nhằm mục đích đem lại lợi ích cho con
người. Như vậy, chúng ta đã có thông tin đó là dữ liệu. Vậy làm thế nào để
biến thông tin này thành thông tin có ích cho chúng ta. Lúc đó thông tin này
mới được gọi là tri thức. Dó đó, việc khai phá dữ liệu có thể hiểu là “khai phá
tri thức trong dữ liệu” nhưng cụm từ này thì quá dài còn cụm từ “khai phá tri
thức” lại không nói lên được ý nghóa của việc khai phá tri thức từ khối dữ liệu
lớn. Từ đây, cụm từ khai phá dữ liệu dần được mọi người chấp nhận rộng rãi.
[2]
Nhiều người đồng nhất khai phá dữ liệu là khám phá tri thức từ cơ sở dữ

liệu (KDD) nhưng cũng có số đông những người khác xem khai phá dữ liệu là
một trong những bước cơ bản trong quy trình khám phá tri thức từ cơ sở dữ liệu.
Hình 3-1 mô tả quy trình khám phá tri thức từ cơ sở dữ liệu trong đó khai phá
dữ liệu là một bước của quá trình này. Quy trình này gồm nhiều bước được thực
hiện lặp lại như sau [1,2]

Học viên: Nguyễn Thành Tâm

GVHD: TS.Nguyễn Đức Cường


Đề tài: p dụng chiến lược tăng dần trong các giải thuật phân nhóm

Trang 17/102

Hình 3-1: Khai phá dữ liệu được xem như một quy trình khai phá tri thức
[2]
-

Hiểu nghiệp vụ và dữ liệu.

-

Chuẩn bị dữ liệu.

-

Mô hình hóa dữ liệu.

-


Hậu xử lý và đánh giá mô hình.

-

Triển khai tri thức, từ đây quay trở lại bước đầu tiên.

Trong thực tế khai phá dữ liệu là một quá trình rút trích tri thức từ dữ liệu
trong các cơ sở dữ liệu, các kho dữ liệu, ... Do đó, kiến trúc của một hệ thống
khai phá dữ liệu thường như Hình 3-2.

Học viên: Nguyễn Thành Tâm

GVHD: TS.Nguyễn Đức Cường


Đề tài: p dụng chiến lược tăng dần trong các giải thuật phân nhóm

Trang 18/102

Hình 3-2: Kiến trúc của hệ thống khai phá dữ liệu thường gặp [2]
Tiến sỹ ZhaoHui Tang, hiện đang làm việc tại Microsoft và cũng là trưởng
nhóm phát triển khai phá dữ liệu cho SQL Server, đã đúc kết được kinh nghiệm
trong thực hiện khai phá dữ liệu là phải triển khai một dự án khai phá dữ liệu.
Trong dự án này người ta sẽ theo 8 bước cơ bản được lặp lại theo chu kỳ mà
ông gọi là vòng đời của dự án (life cycle) 11 như sau [16]:
Bước 1: Thu thập dữ liệu
Bước đầu tiên trong khai phá dữ liệu thường là thu thập dữ liệu. Dữ liệu
thường được lưu trữ trong nhiều hệ thống khác nhau từ nhiều nguồn khác nhau
do đó bước đầu tiên là rút trích các dữ liệu này sao cho có thể dùng cho việc

phân tích dữ liệu. Ví dụ nếu chúng ta muốn phân tích người dùng web có xu
hướng duyệt web của một công ty như thế nào mà công ty này lại có nhiều web
server, thì bước đầu tiên là phải tải tất cả các dữ liệu web log từ các web server
này.

11

Vòng đời của dự án khai phá dữ liệu khác với quy trình khai phá dữ liệu. Nó là một phần của quy
trình khai phá dữ liệu.

Học viên: Nguyễn Thành Tâm

GVHD: TS.Nguyễn Đức Cường


×