Đ̣I ḤC ĐĨ ÑNG
TR ̀NGăĐ̣I ḤCăS ăPḤM
Đ̃ MINH PH́T
NGăD NGăK ăTHU TăCÂYăQUY TăĐ NHă
XÂYăD NGăH ăTH NGăD ăB́OăKH ăNĔNGăB ăḤC
C AăḤCăSINHăTR ̀NGăTHPTăṾN T ̀NG
T NH QU NGăNGĩI
LU NăVĔNăTḤCăSƾ
H ăTH NGăTHÔNGăTIN
ĐƠăNẵngăậ Nĕmă2019
Đ̣IăḤCăĐĨăÑNG
TR ̀NGăĐ̣I ḤCăS ăPḤM
Đ̃ MINH PH́T
NGăD NGăK ăTHU TăCÂYăQUY TăĐ NHă
XÂYăD NGăH ăTH NGăD ăB́OăKH ăNĔNGăB ăḤC
C A ḤCăSINHăTR ̀NGăTHPTăṾN T ̀NG
T NH QU NGăNGĩI
ChuyênăngƠnh:ăH ăTH NGăTHÔNGăTIN
Mưăs :ă848.01.04
LU NăVĔNăTḤCăSƾ
NG ̀IăH
NGăDẪNăKHOAăḤC:
PGS. TS. VÕ TRUNG HÙNG
ĐƠăNẵng,ănĕmă2019
i
L̀IăCAMăĐOAN
Tôi xin cam đoan:
Nh̃ng ṇi dung trong lụn văn ǹy do tôi tḥc hịn dứi ṣ hứng d̃n tṛc típ
c̉a PGS. TS. Ṽ Trung H̀ng.
Ṃi tham kh̉o d̀ng trong lụn văn đ̀u đực tŕch d̃n r̃ r̀ng v̀ trung tḥc tên
t́c gỉ, tên công tr̀nh, th̀i gian, đ̣a đỉm công b́.
Ṃi sao ch́p không ḥp ḷ, vi pḥm qui ch́ đ̀o ṭo, hay gian tŕ, tôi xin cḥu
hòn tòn tŕch nhịm.
T́c gỉ
Đ̃ Minh Ph́t
---- ' '"-. "[
I
I
�
----- -.
-- -] 7 "-. :···--. -.
T
K€t n6i tr�rc ti€p v6i h� th6ng co s6· do· li�u hi�n c6 t�1i d'n vi d€ thu�n lqi hm1 cho ngLrcri s.r d�mg
trong qua trlnh khai thac h� th6ng.
Tir khoa:
Khai pha do· li�u; cay quy€t dinh; phan 16p do· li�u; thu�t toan C4.5; h� th6ng d�r bao h9c sinh b6 h9c;
Xac nh�n Clta giao vien hu-6'ng din
PGS. TS. VO TRUNG HUNG
Ngu·cri th\l'C hi�n d� tai
DOMINHPHAT
Connecting directly with the existing database system at the agency to make it more convenient for
the users during the process of operating the system.
Key word:
Data mining; decision tree; data classification; C4.5 algorithm; Student prediction system.
Supervior's confirmation
Student
Assoc. Prof. VO TRUNG HUNG
DO MINHPHAT
ii
M CăL C
L̀IăCAMăĐOAN ........................................................................................................... i
DANH M C ĆC T̀ VI T T́T ............................................................................. iv
DANH M C ĆC B NG............................................................................................. v
DANH M C ĆC HỊNH ............................................................................................ vi
M ăĐ U ......................................................................................................................... 1
1. LỦ do chọn đề tài ..................................................................................................... 1
2. Ṃc tiêu................................................................................................................... 2
3. Đối t ợng và ph m vi nghiên c u ........................................................................... 2
4. Ph ơng pháp nghiên c u ......................................................................................... 2
5. ́ nghĩa c a đề tài .................................................................................................... 2
6. Bố c̣c c a luận văn ................................................................................................ 3
CH
NGă1.ăTỔNGăQUANăV ăKHAIăPH́ăD ăLI U ............................................ 4
1.1. Khai phá dữ liệu ................................................................................................... 4
1.1.1. Sơ l ợc về khai phá dữ liệu............................................................................ 4
1.1.2. Kĩ thuật khai phá dữ liệu ................................................................................ 6
1.1.3. Các b ớc xây dựng hệ thống khai phá dữ liệu ............................................... 8
1.1.4. ng ḍng c a khai phá dữ liệu ...................................................................... 8
1.1.5. Kiến trúc c a một hệ thống khai phá dữ liệu ................................................. 9
1.2. Phân lớp dữ liệu bằng cây quyết đ̣nh ................................................................ 10
1.2.1. Phân lớp dữ liệu ........................................................................................... 10
1.2.2. Quá trình phân lớp dữ liệu ........................................................................... 10
1.2.3. Cây quyết đ̣nh ............................................................................................. 12
1.2.4. u điểm c a cây quyết đ̣nh ........................................................................ 13
1.2.5. Xây dựng cây quyết đ̣nh ............................................................................. 13
1.2.6. Rút ra luật từ cây quyết đ̣nh ........................................................................ 14
1.3. Các thuật toán xây dựng cây quyết đ̣nh ............................................................ 15
1.3.1. Thuật toán CLS ............................................................................................ 15
1.3.2. Thuật toán ID3 ............................................................................................. 18
1.3.3. Thuật toán C4.5 ............................................................................................ 23
1.4. T̉ng kết ch ơng 1 ............................................................................................. 26
CH
NGă2.ă NGăD NGăCÂYăQUY TăĐ NHăD ăB́OăKH ăNĔNGăB ăḤCă
C AăḤCăSINH.......................................................................................................... 27
2.1. Tình hình bỏ học c a học sinh ........................................................................... 27
2.1.1. Thực tr ng, nguyên nhân học sinh bỏ học ................................................... 27
2.1.2. Hậu qu c a tình tr ng bỏ học ..................................................................... 28
2.1.3. Kh o sát học sinh bỏ học ............................................................................. 29
2.1.4. Phân tích nguyên nhân bỏ học c a học sinh ................................................ 34
iii
2.1.5. Gi i pháp xây dựng hệ thống ....................................................................... 35
2.2. ng ḍng cây quyết đ̣nh ................................................................................... 37
2.2.1. L ợng hóa dữ liệu để đ a vào thuật toán C4.5 ............................................ 37
2.2.2. Phân tích dữ liệu để xây dựng tập huấn luyện ............................................. 38
2.2.3. Triển khai gi i thuật C4.5 ............................................................................ 40
2.2.4. Xây dựng cây quyết đ̣nh ............................................................................. 42
2.2.5. T o luật từ cây quyết đ̣nh ............................................................................ 53
2.3. T̉ng kết ch ơng 2 ............................................................................................. 53
CH
NGă3. XÂYăD NGăCH
NGăTRỊNHăVĨăTH ăNGHI M ...................... 54
3.1. Xây dựng ch ơng trình ...................................................................................... 54
3.1.1. Các ch c năng c a hệ thống......................................................................... 54
3.1.2. Kiến trúc t̉ng thể c a hệ thống ................................................................... 54
3.1.3. Đặc t chi tiết các thành phần ...................................................................... 55
3.1.4. Cài đặt ch ơng trình ..................................................................................... 57
3.1.5. Giao diện và các ch c năng c a ch ơng trình. ............................................ 58
3.2. Thử nghiệm ch ơng trình................................................................................... 59
3.2.1. Huấn luyện cây quyết đ̣nh........................................................................... 59
3.2.2. Thực nghiệm đánh giá .................................................................................. 62
3.2.3. Triển khai sử ḍng hệ thống......................................................................... 65
3.3. T̉ng kết ch ơng 3 ............................................................................................. 68
K T LU N .................................................................................................................. 69
1. Kết qu đ t đ ợc ................................................................................................... 69
2. H n chế .................................................................................................................. 69
3. H ớng phát triển ................................................................................................... 69
TĨIăLI UăTHAMăKH O........................................................................................... 70
iv
DANH M C ĆC T̀ VI T T́T
TI NG VI T
CLS
Concept Learning System
CNTT
Công nghệ thông tin
CSDL
Cơ s̉ dữ liệu
GD&ĐT
Giáo ḍc và Đào t o
GV
Giáo viên
GVCN
Giáo viên ch nhiệm
HS
Học sinh
ID3
Iterative Dichotomiser 3
KPDL
Khai phá dữ liệu
THPT
Trung học ph̉ thông
TI NG ANH
DPL
Data Pre – Processing Layer
KDD
Knowledge Discovery in Databases
v
DANH M C ĆC B NG
Số hiệu
b ng
1.1
1.2
2.1
2.2
2.3
2.4
2.5
2.6
2.7
2.8
2.9
2.10
2.11
2.12
2.13
2.14
2.15
2.16
2.17
2.18
2.19
2.20
2.21
2.22
2.23
2.24
2.25
2.26
2.27
2.28
2.29
3.1
3.2
3.3
3.4
Tên b ng
Trang
B ng dữ liệu “Học sinh”
Entropy phân theo thuộc tính Hoc_luc đối với tập S
Thống kê học sinh bỏ học
Kh o sát chất l ợng gi ng d y
Kh o sát học sinh bỏ học thuộc diện l u ban
Kh o sát học sinh có hồn c nh khó khăn
Kh o sát bỏ học từ học sinh
Kết qu kh o sát nguyên nhân học sinh bỏ bọc
Thống kê kh o sát học sinh bỏ học trong tình huống thực tế từ học sinh
Kh o sát sinh bỏ học từ giáo viên
Kết qu kh o sát giáo viên
B ng dữ liệu thu gọn từ dữ liệu qu n lí học sinh
B ng dữ liệu huấn luyện
Entropy phân theo thuộc tính HL đối với tập S
Entropy phân theo thuộc tính HK
Entropy phân theo thuộc tính HCGD
Entropy phân theo thuộc tính LB
B ng so sánh kết qu tính GainRatio c a các thuộc tính
B ng dữ liệu tr ng hợp HK=“K”
Entropy phân theo thuộc tính HL đối với tập S1
Entropy phân theo thuộc tính HCGD đối với tập S1
Entropy phân theo thuộc tính LB đối với tập S1
B ng so sánh kết qu tính GainRatio c a các thuộc tính
B ng dữ liệu tr ng hợp HK=“K” và HCGD=“MCCM”
Entropy phân theo thuộc tính HL đối với tập S2
Entropy phân theo thuộc tính LB đối với tập S2
B ng dữ liệu tr ng hợp HK=“TB”
Entropy phân theo thuộc tính HL đối với tập S3
Entropy phân theo thuộc tính HCGD đối với tập S3
Entropy phân theo thuộc tính LB đối với tập S3
B ng so sánh Ratio phân theo thuộc tính đối với tập S3
Thống kê t̉ lệ dự báo học sinh bỏ học theo Học lực
Thống kê t̉ lệ dự báo học sinh bỏ học theo H nh kiểm
Thống kê t̉ lệ dự báo học sinh bỏ học theo Hồn c nh gia đình
Thống kê t̉ lệ dự báo học sinh bỏ học theo diện L u ban
15
21
29
29
30
30
31
31
32
32
33
38
39
42
43
43
44
44
45
46
46
47
47
48
48
48
49
50
50
51
51
64
64
64
65
vi
DANH M C ĆC HỊNH
Số hiệu
hình
1.1.
1.2.
1.4.
1.6.
1.7.
1.8.
1.9.
1.10.
1.11.
1.12.
2.1.
2.2.
2.3.
2.4.
2.5.
2.6.
2.7.
3.1.
3.2.
3.3.
3.4.
3.5.
3.6.
3.7.
3.8.
3.9.
3.10.
3.11.
3.12.
3.13.
3.14.
3.15.
3.16.
Tên hình
Quá trình phát hiện tri th c trong khai phá dữ liệu
Kiến trúc điển hình hệ thống khai phá dữ liệu
Hình 1.3. Xây dựng mơ hình
Sử ḍng mơ hình
Hình 1.5. Ví ḍ về cây quyết đ̣nh
Cây đ ợc t o khi thuộc tính “Hanh_kiem” đ ợc chọn
Cây đ ợc m̉ rộng theo thuộc tính “Hoan_canh”
Cây đ ợc t o bằng thuật toán CLS theo th tự các thuộc tính Hanh_kiem,
Hoan_canh, Luu_ban
Cây đ ợc t o bằng thuật toán CLS theo th tự các thuộc tính Hoc_luc,
Hanh_kiem, Hoan_canh, Luu_ban
Minh họa giá tṛ Entropy(S)
Cây đ ợc t o bằng thuật toán ID3 xuất phát từ thuộc tính Hanh_kiem
Cây hồn ch̉nh đ ợc t o bằng thuật tốn ID3
Mơ hình dự kiến c a hệ thống
Sơ đ̀ thực hiện gi i thuật C4.5
Sơ đ̀ xử lỦ t i nút th i c a cây quyết đ̣nh
Cây quyết đ̣nh b́t đầu từ nút gốc
Cây quyết đ̣nh ng với nhánh HK=“K”
Cây quyết đ̣nh ng với nhánh HK=“TB”
Cây quyết đ̣nh hoàn ch̉nh với tập dữ liệu huấn luyện S
Kiến trúc t̉ng thể c a hệ thống
Cấu trúc tệp dữ liệu huấn luyện
Cấu trúc tệp dữ liệu kiểm thử
Mô t quá trình tiền xử lỦ dữ liệu
Mơ t q trình phân tích dữ liệu
Giao diện làm việc chính c a ch ơng trình
Chọn dữ liệu huấn luyện
Hiển tḥ dữ liệu huấn luyện
Dữ liệu qua tiền xử lỦ dữ liệu
Cây quyết đ̣nh ng với dữ liệu huấn luyện
Tập luật ng với dữ liệu liệu huấn luyện
Đánh giá độ hiệu qu c a thuật toán C4.5
Thống kê t̉ lệ dự báo
Giao diện nhập dữ liệu
Hiển tḥ kết qu dự báo
Xuất kết qu dự báo ra File Excel
Trang
5
9
11
12
13
16
17
17
18
20
22
22
36
41
41
45
49
52
52
55
55
56
56
57
58
59
60
60
61
61
63
63
66
67
67
1
M ăĐ U
1. LỦădoăch năđ ătƠi
Trong những năm gần đây ngành Giáo ḍc Đào t o Qu ng Ngưi rất chú trọng
đầu t đ a ng ḍng công nghệ thông tin vào tr ng học pḥc ṿ công tác qu n lí và
d y học, cơ s̉ h tầng đ ợc đầu t nâng cấp dần hoàn thiện, các ng ḍng và CSDL
đ ợc xây dựng pḥc ṿ công tác qu n lí. Tuy nhiên hiệu qu các ng ḍng trong cơng
tác qu n lí mang l i ch a cao, trong đó có việc qu n lí học sinh, đặc biệt là vấn đề
qu n lí học sinh bỏ học.
Tr ớc tình tr ng học sinh trong T̉nh bỏ học giữa chừng với t̉ lệ cao, ngày
03/03/2017 Ban Th ng ṿ t̉nh y Qu ng Ngưi ra công văn số 1568/CV-TV và ngày
10 tháng 03 năm 2017 y ban nhân dân t̉nh Qu ng Ngưi ra công văn số 1241/UBNDKGVX về việc kiểm tra chấn ch̉nh tình tr ng học sinh bỏ học trên đ̣a bàn t̉nh Qu ng
Ngãi và công văn số 496/SGDĐT-VP ngày 27 tháng 3 năm 2017 c a S̉ Giáo ḍc Đào
t o Qu ng Ngưi về việc tăng c ng các gi i pháp kh́c pḥc học sinh bỏ học [6], [7].
Việc học sinh bỏ học có thể kéo theo nhiều hệ ḷy c tr ớc ḿt lẫn lâu dài, không
ch̉ đối với cá nhân, gia đình học sinh mà c với nhà tr ng và xư hội. Vì vậy, việc dự
đốn phát hiện sớm những học sinh có biểu hiện bỏ học để có những biện pháp phù
hợp ḳp th i nhằm gi m thiểu tình tr ng học sinh bỏ học là một việc làm cần thiết và
cấp bách.
Hiện nay, trong công tác qu n lý học sinh ̉ nhà tr ng th ng biết đ ợc các
nguyên nhân dẫn đến học sinh có kh năng bỏ học một cách đ i khái chung chung.
Việc phân tích, t̉ng hợp các nguyên nhân học sinh bỏ học đư đ ợc một số tác gi đề
cập tìm hiểu nh ng ch a có các công c̣ hỗ trợ để giúp nhà tr ng đánh giá phát hiện
sớm học sinh có kh năng bỏ học hay không.
Để thực hiện ch tr ơng c a ngành về việc chấn ch̉nh tình tr ng học sinh bỏ học
cũng nh tăng hiệu qu ng ḍng CNTT trong qu n lí để h n chế tình tr ng học sinh
bỏ học, trong q trình học tập tơi nhận thấy khai phá dữ liệu là bộ mơn rất hữu ích
trong việc phân lo i các nhóm đối t ợng, tơi nghĩ có thể vận ḍng kiến th c c a môn
học này để xây dựng hệ thống phân lo i học sinh có kh năng bỏ học hay khơng để từ
đó giúp nhà tr ng tìm ra những biện pháp giáo ḍc hợp lỦ nhằm h n chế số l ợng
học sinh bỏ học cao nh hiện nay.
Xuất phát từ những lỦ do trên, đ ợc sự đ̀ng Ủ c a PGS.TS. Võ Trung Hùng, tôi
chọn đề tài: “ ngă d ngăk ă thu tă cơyă quy tă đ nhăxơyă d ngă h ă th ngă d ă b́oă kh̉ă
nĕngăb ăh căc aăh căsinhătr ngăTHPT V năT ng t nh QủngăNgãi” để làm luận
văn th c sĩ.
2
2. M c tiêu
Ṃc tiêu c a đề tài là nghiên c u và xây dựng hệ thống dự báo kh năng bỏ học
c a học sinh tr ng THPT V n T ng t̉nh Qu ng Ngưi, nhằm giúp lưnh đ o nhà
tr ng tìm ra các gi i pháp phù hợp để h n chế tình tr ng học sinh bỏ học, nâng cao
hiệu qu giáo ḍc, giúp cho học sinh có Ủ đ̣nh bỏ học từng b ớc ̉n đ̣nh tinh thần và
thích thú đi học.
3. Đ iăt ngăvƠăph măviănghiênăc u
Đối t ợng nghiên c u
Đối t ợng nghiên c u c a đề tài là học sinh t i tr ng THPT V n T ng; cơ s̉
lỦ thuyết về khai phá dữ liệu và các thuật toán t o cây quyết đ̣nh nh CLS, ID3, C4.5;
ngơn ngữ lập trình C#. Ngồi ra trong luận văn c̀n nghiên c u các biểu mẫu liên quan
đến vấn đề bỏ học c a học sinh; các công văn c a S̉ GD-ĐT Qu ng Ngưi, y Ban
t̉nh Qu ng Ngãi về việc h ớng dẫn chấn ch̉nh, kh́c pḥc tình tr ng bỏ học c a học
sinh.
Phạm vi nghiên c u
Ph m vi nghiên c u là học sinh khối THPT ̉ tr ng THPT V n T ng t̉nh
Qu ng Ngưi, các số liệu về học sinh bỏ học t i tr ng THPT V n T ng các năm học
2015-2016, 2016-2017, 2017-2018. Ngoài ra, trong đề tài tập trung nghiên c u sâu vào
thuật toán C4.5.
4. Ph ngăph́pănghiênăc uă
Nghiên c u lý thuyết
Nghiên c u các tài liệu về cơ s̉ lỦ thuyết; ngôn ngữ lập trình và các cơng nghệ
có liên quan; t̉ng hợp, thu thập các số liệu liên quan đến việc bỏ học c a học sinh.
Nghiên c u thực nghiệm
Sử ḍng các số liệu l u trữ t i tr ng để tìm hiểu về nguyên nhân học sinh bỏ
học cũng nh kh o sát thực tế và hỏi Ủ kiến chuyên gia về nguyên nhân bỏ học c a học
sinh để xây dựng b ng dữ liệu huấn luyện và xây dựng cây quyết đ̣nh trên b ng dữ
liệu đó.
Vận ḍng các cơ s̉ lỦ thuyết để xây dựng ng ḍng, tiến hành kiểm thử đánh giá
hiệu suất c a ng ḍng.
5. ụ nghƿa c aăđ ătƠi
Về ý nghĩa khoa học
Đề tài đ ợc phân tích, t̉ng hợp từ những ngùn dữ liệu đáng tin cậy sẽ là cơ s̉
khoa học để các nghiên c u tiếp theo tham kh o. Kết qu nghiên c u c a đề tài góp
phần xây dựng cơ s̉ khoa học cho việc tìm các gi i pháp để h n chế tình tr ng học
sinh bỏ học ̉ tr ng THPT.
3
Về ý nghĩa thực tiễn
Xây dựng hệ hỗ trợ ra quyết đ̣nh, triển khai hệ thống thử nghiệm t i tr ng
THPT V n T ng nhằm đánh giá hiệu qu tr ớc khi sử ḍng rộng rưi. ng ḍng có
kh năng phân tích đ a ra dự báo học sinh có Ủ đ̣nh bỏ học để nhà tr ng có biện
pháp giúp đỡ, duy trì việc đến lớp cho các em.
6. B ăc căc aălu năvĕn
Nội dung chính c a luận văn đ ợc chia thành 3 ch ơng nh sau:
Ch ngă1: Trình bày cơ s̉ lỦ thuyết làm nền t ng để xây dựng ng ḍng, bao
g̀m: T̉ng quan về khai phá dữ liệu; phân lớp trong khai phá dữ liệu; giới thiệu về cây
quyết đ̣nh trong phân lớp dữ liệu; gi i thuật CLS, ID3 và C4.5 xây dựng cây quyết
đ̣nh.
Ch ngă2:ăTìm hiểu và phân tích thực tr ng, nguyên nhân học sinh bỏ học, nêu
lên những vấn đề c̀n h n chế trong công tác qu n lí ̉ đơn ṿ. ng ḍng thuật tốn
C4.5 để xây dựng cây quyết đ̣nh.
Ch ngă3: Trình bày chi tiết về mơ hình kiến trúc t̉ng thể c a hệ thống và xây
dựng ng ḍng. Tiến hành thử nghiệm trên dữ liệu thực tế, sau đó đánh giá kết qu đ t
đ ợc và kh năng triển khai ng ḍng trên toàn hệ thống.
Cuối cùng là những đánh giá, kết luận và h ớng phát triển c a đề tài.
4
CH
NGă1
TỔNGăQUANăV ăKHAIăPH́ăD ăLI U
Ch ơng này trình bày khái quát về khai phá dữ liệu, các b ớc xây dựng hệ thống
khai phá dữ liệu, phân lớp trong khai phá dữ liệu. Giới thiệu về cây quyết đ̣nh và các
thuật toán xây dựng cây quyết đ̣nh CLS, ID3 và C4.5.
1.1. Khai ph́ d ăli uă
1.1.1. Sơ l ợc về khai phá dữ liệu
Th i đ i ngày nay, mỗi chúng ta đư từng nghe nói và ch ng kiến về sự tăng
tr ̉ng liên ṭc với tốc độ v ợt bậc về dung l ợng dữ liệu do con ng i kh̉i t o, l u
giữ và truyền dẫn; sự tăng tr ̉ng này c̀n gọi là “hiện t ợng bùng n̉ thơng tin”. ớc
tính c mỗi năm l ợng thông tin trên thế giới l i tăng lên kho ng 2 lần[1]. Chính vì
vậy, hiện nay dữ liệu mà con ng i thu thập và l u trữ trong các kho dữ liệu là vơ
cùng lớn, thậm chí lớn đến m c v ợt quá kh năng kiểm soát. Cũng b̉i lỦ do này các
nhà khoa học đư đề cập đến việc t̉ ch c l i dữ liệu sao cho hiệu qu , đáp ng đ ợc
yêu cầu chất l ợng ngày càng cao nhằm hỗ trợ những nhà qu n lỦ ra quyết đ̣nh trong
các t̉ ch c qu n lỦ tài chính, th ơng m i, khoa học,...
Với l ợng dữ liệu tăng nhanh hàng năm, rõ ràng các ph ơng pháp th công
truyền thống áp ḍng để phân tích dữ liệu sẽ khơng hiệu qu , tốn kém và dễ dẫn đến
những sai lệch. Do đó, để có thể sử ḍng hiệu qu hơn nữa các cơ s̉ dữ liệu (CSDL)
lớn thì nhất thiết cần ph i có những kỹ thuật mới và kỹ thuật khai phá dữ liệu (KPDL)
đư đ ợc các nhà khoa học đề cập tới.
Khai phá dữ liệu là một lĩnh vực khoa học mới, ra đ i vào những năm cuối thập
kỷ 80 c a thế kỷ XX, nhằm khai thác những thơng tin, tri th c hữu ích, tiềm ẩn trong
các CSDL c a các t̉ ch c, doanh nghiệp... từ đó thúc đẩy kh năng s n xuất, kinh
doanh, c nh tranh c a t̉ ch c, doanh nghiệp. Các kết qu nghiên c u cùng với những
ng ḍng thành công trong khai phá dữ liệu, khám phá tri th c cho thấy khai phá dữ
liệu là một lĩnh vực khoa học tiềm năng, mang l i nhiều lợi ích, đ̀ng th i có u thế
hơn hẳn so với các cơng c̣ phân tích dữ liệu truyền thống. Hiện nay, khai phá dữ liệu
đ ợc ng ḍng rộng rưi trong các lĩnh vực nh : Phân tích dữ liệu hỗ trợ ra quyết đ̣nh,
điều tṛ y học, tin-sinh học, th ơng m i, tài chính, b o hiểm, text mining, web
mining,...
Có nhiều đ̣nh nghĩa khác nhau về khai phá dữ liệu. Theo giáo s Tom Mitchell
[10] đ a ra đ̣nh nghĩa khai phá dữ liệu nh sau: “Khai phá dữ liệu là việc sử ḍng dữ
liệu ḷch sử để khám phá những qui t́c và c i thiện những quyết đ̣nh trong t ơng lai”.
Với một cách tiếp cận ng ḍng hơn, tiến sĩ Fayyad đư phát biểu: “Khai phá dữ liệu
th ng đ ợc xem là việc khám phá tri th c trong các cơ s̉ dữ liệu, là một q trình
trích xuất những thơng tin ẩn tr ớc đây ch a biết và có kh năng hữu ích, d ới d ng
các qui luật, ràng buộc, qui t́c trong CSDL”. C̀n các nhà thống kê thì xem “Khai phá
dữ liệu là q trình phân tích đ ợc thiết kế thăm d̀ một l ợng cực lớn các dữ liệu
nhằm phát hiện ra các mẫu thích hợp hoặc các mối quan hệ mang tính hệ thống giữa
các biến và sau đó sẽ hợp th c hóa các kết qu tìm đ ợc bằng cách áp ḍng các mẫu
đư phát hiện đ ợc cho tập con mới c a dữ liệu”. Nói tóm l i khai phá dữ liệu là một
b ớc trong quá trình phát hiện tri th c mới từ những dữ liệu đư đ ợc thu thập đ ợc.
5
Nh vậy ta có thể khái quát hóa khái niệm KPDL là “qú tr̀nh kh̉o śt v̀ phân
t́ch ṃt lựng ĺn các d̃ lịu đực lưu tr̃ trong ćc CSDL, kho d̃ lịu,…đ̉ từ đó
tŕch xuất ra ćc thơng tin quan tṛng, có gí tṛ tìm ẩn bên trong”.
Khám phá tri th c trong CSDL (Knowledge Discovery in Databaes – KDD) là
ṃc tiêu chính c a KPDL, do vậy hai khái niệm KPDL và KDD đ ợc các nhà khoa
học xem là t ơng đ ơng nhau. Thế nh ng, nếu phân chia một cách chi tiết thì khai phá
dữ liệu là một b ớc chính trong q trình KDD. Hình 1.1 d ới đây mơ t q trình
phát hiện tri th c trong khai phá dữ liệu [1].
Hình 1.1. Quá trình phát hịn tri thức trong khai phá d̃ lịu
Q trình KPDL có thể phân thành các giai đo n sau:
Chọn lọc: Là b ớc tuyển chọn những tập dữ liệu cần đ ợc khai phá từ các tập
dữ liệu lớn ban đầu theo một số tiêu chí nhất đ̣nh.
Tiền xử lỦ dữ liệu: Là b ớc làm s ch dữ liệu (xử lỦ dữ liệu không đầy đ ,
không nhất quán...), t̉ng hợp dữ liệu (nén, nhóm dữ liệu, tính t̉ng, xây dựng các
histograms, lấy mẫu...), r i r c hóa dữ liệu (r i r c hóa dựa vào histograms,
entropy...). Sau b ớc tiền xử lỦ này, dữ liệu sẽ nhất quán, đầy đ , đ ợc rút gọn
và r i r c hóa.
Biến đ̉i dữ liệu: Là b ớc chuẩn hóa và làm ṃn dữ liệu để đ a dữ liệu về
d ng thuận lợi nhất nhằm pḥc ṿ việc áp ḍng các kỹ thuật khai phá ̉ b ớc sau.
Khai phá dữ liệu: Là b ớc áp ḍng những kỹ thuật phân tích (phần nhiều là
các kỹ thuật học máy) nhằm khai thác dữ liệu, trích lọc những mẫu tin, những
mối quan hệ đặc biệt trong dữ liệu. Đây đ ợc xem là b ớc quan trọng và tốn th i
gian nhất c a tồn bộ q trình KDD.
Đánh giá và biểu diễn tri th c: Những mẫu thông tin và mối quan hệ trong dữ
liệu đư đ ợc phát hiện ̉ b ớc khai phá dữ liệu đ ợc chuyển sang và biểu diễn ̉
d ng gần gũi với ng i sử ḍng nh đ̀ tḥ, cây, b ng biểu và luật. Đ̀ng th i
6
b ớc này cũng đánh giá những tri th c khai phá đ ợc theo những tiêu chí nhất
đ̣nh.
1.1.2. Kĩ thuật khai phá dữ liệu
Theo nguyên lỦ, khi sử ḍng ph ơng th c KPDL để gi i quyết một vấn đề c̣ thể,
cần ph i hình dung ra lo i vấn đề là gì. Có thể t̉ng kết thành hai lo i chính, cũng liên
quan đến các đối t ợng c a khai phá dữ liệu:
KPDL dự đoán (predictive method): là đ 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. KPDL dự đoán bao g̀m các kỹ thuật phân lo i
(classification), h̀i quy (regression)..
KPDL mơ t (descriptive method): có nhiệm ṿ mơ t về các tính chất hoặc
đặc tính chung c a dữ liệu trong CSDL hiện có. Bao g̀m các kỹ thuật: phân c̣m
(clustering), phân tích luật kết hợp (association rules), mẫu tuần tự (sequential
patterns)...
1.1.2.1. Phân ĺp
Phân lớp là q trình xây dựng một mơ hình để mơ t dữ liệu đ ợc phân chia
nh thế nào, nói cách khác, phân lớp là q trình xây dựng một mơ hình bằng cách gán
các đối t ợng dữ liệu (thuộc tính) vào các lớp đư xác đ̣nh.
Tiến trình phân lớp dựa trên 4 thành phần cơ b n:
Lớp (class)
Dự đoán (predictors)
Tập dữ liệu đ ợc đào t o (Training dataset)
Tập dữ liệu kiểm thử (Testing dataset)
Đặc tr ng c a tiến trình phân lo i g̀m những điểm sau:
Input: tập dữ liệu đào t o ch a những đối t ợng với thuộc tính c a nó, với một
số thuộc tính đư đ ợc gán nhãn (phân lớp);
Output: mơ hình (classifier) đ ợc gán b̉i những nhưn c̣ thể cho mỗi đối
t ợng, dựa trên những thuộc tính khác;
Mơ hình sử ḍng để dự đoán những lớp mới, những đối t ợng ch a biết.
Tập dữ liệu kiểm thử cũng dùng để xác đ̣nh độ chính xác c a mơ hình. Khi một
mơ hình phân lo i đ ợc xây dựng, nó sẽ ph i so sánh với những mơ hình khác để lựa
chọn mơ hình tốt nhất. Liên quan đến việc so sánh giữa các mơ hình phân lo i (mơ
hình phân lớp), sẽ có một số thành phần cần đ ợc tính đến:
Kh năng dự đốn (predictive accuracy)
Tốc độ (speed)
Độ m nh mẽ (robustness)
Độ mềm dẻo (scalability)
7
Tính dễ diễn gi i (interpreability)
Độ đơn gi n (simplicity).
1.1.2.2. Phân cụm
Nói đến phân c̣m, nghĩa là nói đến chia một tập dữ liệu thành một vài c̣m
(cluster), dựa trên việc xác đ̣nh những đặc điểm chung.
Các đối t ợng thuộc một c̣m là t ơng tự nhau.
Đối t ợng ̉ c̣m này sẽ ít t ơng tự với đối t ợng ̉ c̣m khác.
tr
Phân c̣m dữ liệu đ ợc sử ḍng nhiều trong các ng ḍng về phân đo n tḥ
ng, phân khúc khách hàng, nhận d ng mẫu, phân lo i trang web…
1.1.2.3. Lụt ḱt ḥp
Luật kết hợp là tiến trình xác đ̣nh những luật pḥ thuộc giữa những nhóm khác
nhau c a hiện t ợng. Khai phá luật kết hợp dựa trên hai b ớc:
Tìm tất c các tập ṃc ph̉ biến, đ ợc xác đ̣nh qua tính hỗ trợ và thỏa mưn độ
hỗ trợ cực tiểu;
Sinh ra các luật kết hợp từ các ṃc ph̉ biến, các luật ph i thỏa mưn độ hỗ trợ
cực tiểu và độ tin cậy cực tiểu.
Ph ơng pháp này đ ợc sử ḍng hiệu qu trong các lĩnh vực nh qu ng cáo có
ch đích, phân tích quyết đ̣nh, qu n lỦ kinh doanh...
1.1.2.4. M̃u tuần ṭ
Mẫu tuần tự là xác đ̣nh những mẫu mà sự xuất hiện c a chúng trong CSDL thỏa
mưn ng ỡng tối thiểu. Luật tuần tự đ ợc sinh ra từ mẫu tuần tự, biểu diễn mối quan hệ
giữa hai lo t sự kiện, lo t sự kiện này sẽ x y ra sau lo t sự kiện kia, tuần tự theo th i
gian, thể hiện tri th c tiềm ẩn c a dữ liệu tuần tự. Khai thác mẫu tuần tự đ ợc ng
ḍng trong nhiều lĩnh vực nh : phân tích tḥ tr ng, phân tích mẫu truy cập web, dự
đoán nhu cầu mua śm c a khách hàng..
1.1.2.5. Hồi quy
Ph ơng pháp h̀i quy là học một hàm ánh x một ṃc dữ liệu và một biến dự
báo giá tṛ thực. Phân tích h̀i quy sẽ xác đ̣nh đ ợc đ̣nh l ợng quan hệ giữa các biến,
và qu ng bá giá tṛ một biến pḥ thuộc vào giá tṛ c a những biến khác.
Ph ơng pháp h̀i quy khác với phân lớp dữ liệu là h̀i quy dùng để dự đoán
những giá tṛ liên ḷc, c̀n phân lớp dữ liệu là dự đoán các giá tṛ r i r c. Các ng ḍng
c a ph ơng th c h̀i quy:
Kinh tế
Dự báo th i tiết.
8
1.1.3. Các b ớc xây dựng hệ thống khai phá dữ liệu
B ớc 1: Xác đ̣nh ṃc tiêu bài toán. B ớc đầu tiên trong quá trình khai phá dữ
liệu đó là ph i xác đ̣nh rõ ṃc tiêu, nhiệm ṿ c a bài toán.
B ớc 2: Thu thập dữ liệu. Sau khi xác đ̣nh đ ợc ṃc tiêu, nhiệm ṿ c a bài
toán, ta tiến hành thu thập các dữ liệu liên quan, ta có thể tiến hành chọn lọc các mẫu
tiêu biểu để gi m độ lớn c a tập huấn luyện.
B ớc 3: Làm s ch dữ liệu và chuyển đ̉i dữ liệu.
Đây là một b ớc rất quan trọng trong dự án khai phá dữ liệu. Ṃc đích c a làm
s ch dữ liệu là lo i bỏ những dữ liệu thừa, khơng nhất qn, có ch a nhiễu. Quá trình
làm s ch dữ liệu sẽ cố ǵng thêm giá tṛ vào những giá tṛ ḅ thiếu, làm ṃn các điểm
nhiễu và sửa l i các dữ liệu không nhất quán.
B ớc 4: Xây dựng mô hình. Đối với mỗi bài tốn trong khai phá dữ liệu đều có
nhiều mơ hình để gi i quyết. Để lựa chọn chính xác mơ hình nào tốt hơn là khó khăn,
chúng ta nên thử gi i quyết bài tốn bằng nhiều mơ hình khác nhau r̀i tiến hành so
sánh lựa chọn, để tìm ra mơ hình tối u nhất, thích hợp nhất với bài tốn đặt ra.
B ớc 5: Đánh giá mơ hình, đánh giá mẫu. Sau khi áp ḍng một số các mơ hình
chúng ta sẽ đánh giá lựa chọn xem mơ hình nào tốt hơn.
B ớc 6: Báo cáo. Sau khi xây dựng và đánh giá mô hình thích hợp, chúng ta nên
đ a ra các báo cáo dự đoán d ới d ng biểu đ̀ hay b ng số liệu.
B ớc 7: Dự đoán. Trong hầu hết các bài tốn khai phá dữ liệu, tìm ra các mẫu ch̉
là một nửa c a yêu cầu, nửa yêu cầu c̀n l i là đ a ra các dự đốn.
B ớc 8: Tích hợp vào ng ḍng. Tích hợp khai phá dữ liệu và ng ḍng là b ớc
cuối cùng trong khai phá dữ liệu. Ṃc tiêu là đ a tri th c tìm kiếm đ ợc vào ng
ḍng.
B ớc 9: Qu n lỦ mơ hình. Mỗi một mơ hình khai phá dữ liệu đều có một v̀ng
đ i phát triển. Tuy vậy trong một số tr ng hợp các mẫu là thay đ̉i th ng xuyên,
trong những tr ng hợp đó thì mơ hình ph i đ ợc t o mới liên ṭc và việc t o ra mơ
hình mới là ph i tự động.
1.1.4.
ng dụng c a khai phá dữ liệu
Khai phá dữ liệu tuy không ph i là một cách tiếp cận mới, song nó l i thu hút rất
nhiều sự quan tâm c a các nhà nghiên c u và phát triển nh vào những ng ḍng thực
tiễn c a nó. D ới đây là một số ng ḍng điển hình đ ợc sử ḍng ph̉ biến trong từng
lĩnh vực c̣ thể:
Nhận d ng (Pattern recognition)
Tin - sinh (Bio-informatics)
Khai phá dữ liệu văn b n, dữ liệu web (Textmining & Webmining)
Trong tài chính và tḥ tr
ng ch ng khốn (Finace & Stock market)
9
Trong điều tṛ y học (Medical treatment)
Trong b o hiểm (Insurance)
Phát hiện gian lận (Fraud detection)
Các ng ḍng phát hiện và cô lập lỗi trên hệ thống m ng viễn thông (Network
fault isolation)
1.1.5. Kiến trúc c a một hệ thống khai phá dữ liệu
Hình 1.2. Kín trúc đỉn hình ḥ th́ng khai phá d̃ lịu
Kiến trúc điển hình c a một hệ thống khai phá dữ liệu đ ợc trình bày trong hình
1.2 [1]. Trong kiến trúc hệ thống này, các ngùn dữ liệu cho các hệ thống khai phá dữ
liệu bao g̀m hoặc CSDL, hoặc kho dữ liệu, hoặc World Wide Web, hoặc kho ch a dữ
liệu kiểu bất kỳ khác, hoặc t̉ hợp các kiểu dữ liệu đư kể trên.
Cơ s̉ tri th c, bao ch a các tri th c miền ng ḍng hiện có, đ ợc sử ḍng trong
thành phần hệ thống khai phá dữ liệu để làm tăng tính hiệu qu c a thành phần này.
Một số tham số c a thuật toán khai phá dữ liệu t ơng ng sẽ đ ợc tinh ch̉nh theo tri
th c miền sẵn có từ cơ s̉ tri th c trong hệ thống. Cơ s̉ tri th c c̀n đ ợc sử ḍng
trong việc đánh giá các mẫu đư khai phá đ ợc xem chúng có thực sự hấp dẫn hay
khơng, trong đó có việc đối ch ng mẫu mới với các tri th c đư có trong cơ s̉ tri th c.
Nếu mẫu khai phá đ ợc là thực sự hấp dẫn thì chúng đ ợc b̉ sung vào cơ s̉ tri th c
để pḥc ṿ cho ho t động tiếp theo c a hệ thống. Nh vậy, ngùn tri th c b̉ sung vào
cơ s̉ tri th c ̉ đây không ch̉ từ lập luận logic theo các hệ toán logic để có tri th c
10
mới, không ch̉ do con ng i hiểu biết thêm về thế giới khách quan để b̉ sung vào mà
c̀n là tri th c đ ợc phát hiện một cách tự động từ ngùn dữ liệu.
1.2. Phơnăl păd li u bằngăcơyăquy tăđ nh
1.2.1. Phân lớp dữ liệu
Phân lớp là một trong những mối quan tâm nhiều nhất c a con ng i trong quá
trình làm việc với một tập hợp đối t ợng. Điều này giúp con ng i có thể tiến hành
việc śp xếp, tìm kiếm các đối t ợng một cách thuận lợi. Khi biểu diễn đối t ợng vào
các CSDL, tính chất lớp vốn có c a đối t ợng trong thực tế th ng đ ợc biểu diễn
t ơng ng bằng một thuộc tính “lớp” riêng biệt. Chẳng h n, trong hệ thống thông tin
qu n lỦ th viện, thuộc tính về lo i t liệu có miền giá tṛ là tập tên chuyên ngành c a
t liệu, g̀m các giá tṛ nh “Tin học”, “Vật lỦ”; hay hệ thống qu n lí học sinh, thuộc
tính về xếp lo i học lực có thể đ ợc phân thành các lớp Giỏi, Khá, Trung bình, Yếu,
Kém; … Tr ớc đây các công việc gán giá tṛ c a thuộc tính lớp th ng đ ợc làm một
cách th công. Nh ng hiện nay, với sự bùng n̉ c a thông tin và các lo i dữ liệu, việc
đánh giá, thuộc tính lớp một cách th cơng là rất khó khăn, có thể nói là khơng thể. Do
vậy, các ph ơng pháp phân lớp tự động là rất cần thiết và là một trong những ch đề
chính trong khai phá dữ liệu.
Các CSDL th ng ch a nhiều thơng tin ẩn – các thơng tin có thể sử ḍng pḥc
ṿ quá trình phân lớp. Các gi i thuật phân lớp th ng phân tích dữ liệu nhằm tìm ra
các mơ hình mơ t các lớp dữ liệu, từ đó có thể quyết đ̣nh đ ợc một phần tử dữ liệu
mới là thuộc lớp nào.
Việc tìm ra lớp c a một phần tử dữ liệu mới trong nhiều tr ng hợp có Ủ nghĩa
rất quan trọng, nó hỗ trợ q trình ra quyết đ̣nh thơng minh, thậm chí là những quyết
đ̣nh mang tính chất sống c̀n. Ví ḍ, một nhân viên ngân hàng cho vay vốn rất muốn
có hệ thống có kh năng tự học từ các dữ liệu ḷch sử để có thể quyết đ̣nh đ ợc một
đơn vay vốn mới là “an toàn” hay “m o hiểm” để từ đó có quyết đ̣nh phù hợp là cho
vay hay không, hay vay với số tiền bao nhiêu là hợp lỦ. Hay một bác sĩ rất muốn có hệ
thống hỗ trợ phân tích dữ liệu điều tṛ ḷch sử để dự đoán xem một bệnh nhân mới với
những triệu ch ng thu đ ợc sẽ thuộc bệnh nào, trên cơ s̉ đó sẽ có các phác đ̀ điều tṛ
t ơng ng.
1.2.2. Quá trình phân lớp dữ liệu
B n chất c a bài toán phân lớp là dự đoán các nhưn (hay lớp) c a các phần tử dữ
liệu đầu vào và các nhưn (hay lớp) này là các giá tṛ r i r c. Thông th ng các gi i
thuật phân lớp th ng ho t động thông qua 2 b ớc [1]:
B ớc th nhất: Xây dựng mô hình t̀ tập dữ liệu huấn luyện
b ớc này, nó sẽ phân tích dữ liệu đư gán nhãn để tìm ra mơ hình phù hợp mơ
t tập dữ liệu đó, b ớc này đ ợc gọi là bức ḥc (learning step) hay pha ḥc (learning
11
phase) và tập dữ liệu gán nhãn pḥc ṿ quá trình này đ ợc gọi là d̃ lịu huấn luỵn
(training data).
Dữ liệu huấn luyện là ṭp ćc phần tử d̃ lịu (data point) có gán nhãn, hay cịn
đ ợc gọi là b̉n ghi (tuple) mô t dữ liệu và nhưn t ơng ng c a b n ghi đó. Một phần
tử dữ liệu X th ng đ ợc biểu diễn bằng một vector n chiều X ( x1 , x2 ,..., xn ) trong đó
mỗi phần tử trong vector xi ch a một giá tṛ biểu diễn thuộc tính (attribute) Ai c a
phần tử dữ liệu đó. Một thuật ngữ khác cùng Ủ nghĩa với khái niệm thuộc tính là khái
niệm đặc tr ng (feature). Vì nhưn c a các phần tử dữ liệu đ ợc đi kèm với dữ liệu
trong tập dữ liệu huấn luyện nên b ớc này c̀n đ ợc gọi là ḥc có gím śt (supervised
learning). Hay nói cách khác các gi i thuật phân lớp là thuộc lớp gi i thuật ḥc có
giám sát. Về b n chất trong b ớc này, các gi i thuật phân lớp học ra hàm y f ( X) để
từ đó, khi có một phần tử X mới nó sẽ dự đốn ra nhãn Y t ơng ng với nó. Theo khía
c nh này thì ta có thể thấy đ ợc b ớc th nhất này là q trình học ra một hàm hay
một ánh x nó có kh năng phân lo i đ ợc các lớp dữ liệu. Tùy theo các gi i thuật
khác nhau mà hàm f ( X ) này có thể có các d ng khác nhau nh ̉ d ng luật (rule), cây
quyết đ̣nh (dicision tree) hay các công th c d ng tốn học,…
H̀nh 1.3. Xây ḍng mơ h̀nh
B ớc th hai: S̉ dụng mơ hình, kỉm tra v̀ phân lớp
Sau khi học đ ợc hàm phân lớp, các gi i thuật có thể dùng để dự đốn các dữ
liệu mới. Tuy nhiên tr ớc khi đem gi i thuật vào ng ḍng trong thực tế, các gi i thuật
ph i tr i qua b ớc th 2 là b ớc kiểm tra hiệu năng c a chúng.
Nếu độ chính xác c a mơ hình đ ợc ớc l ợng dựa trên tập dữ liệu huấn luyện
thì kết qu thu đ ợc là rất kh quan vì mơ hình ln có xu h ớng qú ph̀ ḥp
(overfit) dữ liệu. Quá phù hợp dữ liệu là hiện t ợng kết qu phân lớp trùng khít với dữ
liệu thực tế vì q trình xây dựng mơ hình phân lớp từ tập dữ liệu huấn luyện có thể đư
kết hợp những đặc điểm riêng biệt c a tập dữ liệu đó. Do vậy, để tránh hiện t ợng quá
12
ph̀ ḥp, một tập dữ liệu khác gọi là ṭp d̃ lịu kỉm thử (testing set) sẽ đ ợc sử ḍng
để đo độ chính xác c a gi i thuật. Thông th ng tập dữ liệu kiểm thử sẽ không ch a
bất kỳ phần tử dữ liệu nào nằm trong tập dữ liệu huấn luyện. Cũng giống tập dữ liệu
huấn luyện, trong tập dữ liệu kiểm thử, từng phần tử dữ liệu cũng có nhưn đi kèm. Các
nhưn này đ ợc dùng để so sánh với nhưn đ ợc các gi i thuật phân lớp dự đoán. Tỷ lệ
đoán đúng nhưn c a các gi i thuật phân lớp đ ợc gọi là đ̣ ch́nh x́c (accuracy) c a
gi i thuật. Khi chất l ợng phân lớp c a các gi i thuật là chấp nhận đ ợc trong một
miền dữ liệu c̣ thể nào đó, ta có thể dùng chúng để dự đoán lớp c a các phần tử dữ
liệu mới hoàn toàn ch a biết tr ớc.
H̀nh 1.4. Sử dụng mơ h̀nh
Trong mơ hình phân lớp, thuật tốn phân lớp giữ vai tr̀ trung tâm, quyết đ̣nh tới
sự thành cơng c a mơ hình phân lớp. Do vậy chìa khóa c a vấn đề phân lớp dữ liệu là
tìm ra đ ợc một thuật tốn phân lớp nhanh, hiệu qu , có độ chính xác cao và có kh
năng m̉ rộng đ ợc. Trong đó kh năng m̉ rộng c a thuật toán đ ợc đặc biệt chú
trọng và phát triển.
1.2.3. Cây quyết định
Cây quyết đ̣nh là một trong những gi i pháp trực quan và hữu hiệu để mơ t q
trình phân lớp dữ liệu. Trên cây quyết đ̣nh, chúng ta tìm đ ợc các luật, những luật này
cung cấp những thơng tin hữu ích để hỗ trợ việc ra quyết đ̣nh gi i quyết một vấn đề
nào đó.
Trong lĩnh vực học máy, cây quyết đ̣nh là một kiểu mơ hình dự báo (predictive
model), nghĩa là một ánh x từ các quan sát về một sự vật, hiện t ợng tới các kết luận
về giá tṛ ṃc tiêu c a sự vật, hiện t ợng. Mỗi nút trong (Node) t ơng ng với một
biến, đ ng nối giữa nó với nút con c a nó thể hiện giá tṛ c̣ thể cho biến đó. Mỗi nút
lá đ i diện cho giá tṛ dự đoán c a biến ṃc tiêu, cho tr ớc các giá tṛ dự đoán c a các
biến đ ợc biểu diễn b̉i đ ng đi từ nút gốc tới nút lá đó. Kỹ thuật học máy dùng
13
trong cây quyết đ̣nh đ ợc gọi là học bằng cây quyết đ̣nh, hay ch̉ gọi với cái tên nǵn
gọn là cây quyết đ̣nh [1], [2].
Cây quyết đ̣nh là biểu đ̀ phát triển có cấu trúc d ng cây, nh mơ t trong hình
vẽ sau:
Hình 1.5. Ví dụ v̀ cây quýt đ̣nh
Trong cây quyết đ̣nh:
Gốc: là node trên cùng c a cây
Node trong: biểu diễn một kiểm tra trên một thuộc tính đơn (hình chữ nhật)
Nhánh: biểu diễn các kết qu c a kiểm tra trên node trong (mũi tên)
Node lá: biểu diễn lớp hay sự phân phối lớp (hình tr̀n)
1.2.4. u đỉm c a cây quyết định
So với các ph ơng pháp khai phá dữ liệu khác, cây quyết đ̣nh là ph ơng pháp có
một số u điểm [1]:
Cây quyết đ̣nh t ơng đối dễ hiểu
Dễ tính tốn khi phân lớp
Đ̀i hỏi m c xử lỦ tiền dữ liệu đơn gi n
Kh năng xử lỦ với c hai thuộc tính liên ṭc và r i r c
Kết qu dự đoán bằng cây quyết đ̣nh có thể thẩm đ̣nh bằng cách thống kê.
1.2.5. Xây dựng cây quyết định
Xây dựng cây quyết đ̣nh là công đo n quan trọng nhất trong việc sử ḍng cây
quyết đ̣nh để khai phá dữ liệu. Quá trình xây dựng cây quyết đ̣nh g̀m ba b ớc cơ
b n sau:
Bức 1: Ṭo cây quýt đ̣nh
T i b ớc này việc t o cây quyết đ̣nh b́t đầu từ gốc, đến từng nhánh và phát triển
quy n p theo cách th c chia để tṛ cho tới khi đ t đ ợc cây quyết đ̣nh với tất c các lá