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

Khai phá luật kết hợp mờ và ứng dụng trong cơ sở dữ liệu cước điện thoại

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.34 MB, 79 trang )


ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ


TRỊNH THỊ ANH LOAN



KHAI PHÁ LUẬT KẾT HỢP MỜ
VÀ ỨNG DỤNG TRONG
CƠ SỞ DỮ LIỆU CƯỚC ĐIỆN THOẠI

Ngành : Công nghệ thông tin
Chuyên ngành : Hệ thống thông tin
Mã số : 60 48 05

LUẬN VĂN THẠC SỸ

NGƯỜI HƯỚNG DẪN KHOA HỌC: PGS.TS. ĐOÀN VĂN BAN


Hà Nội - 2010


1

MỤC LỤC
MỤC LỤC 1

BẢNG KÝ HIỆU CÁC TỪ VIẾT TẮT 4



DANH SÁCH HÌNH VẼ 5

DANH SÁCH BẢNG BIỂU 6

MỞ ĐẦU 7

CHƯƠNG 1: TỔNG QUAN VỀ KHAI PHÁ DỮ LIỆU 10

1.1. Khai phá d liu 10

1.1.1. Mc tiêu ca khai phá d liu 10

1.1.2. Khái nim khai phá d liu 12

1.1.3. Các bưc chính ca quá trình phát hin tri thc trong CSDL 13

1.1.4. Kin trúc mt h thng khai phá d liu 15

1.2. Hưng tip cn và k thut chính trong khai phá d liu 17

1.2.1. Hưng tip cn và k thut chính trong khai phá d liu 17

1.2.2. Kiu d liu trong khai phá d liu 18

1.2.3. Mt s phương pháp khai phá d liu 19

1.3. ng dng ca khai phá d liu 21

1.3.1. Ưu th ca khai phá d liu 21


1.3.2. ng dng ca KPDL 23

1.3.3. Phân loi các h thng khai phá d liu 23

1.3.4. Xu hưng trong khai phá d liu 24

1.4. Kt lun chương 1 25

CHƯƠNG II: LUẬT KẾT HỢP 27

2.1. Gii thiu 27

2.2. Phát biu bài toán khai phá lut kt hp 29

2.2.1. Lut kt hp 29

2.2.2. Phát biu bài toán khai phá lut kt hp 32



2

2.3. Lut kt hp nh phân 34

2.4. Lut kt hp có thuc tính s 36

2.4.1. Lut kt hp có thuc tính s 36

2.4.2. Các phương pháp ri rc hóa 38


2.5. Nhng hưng tip cn chính trong khai phá lut kt hp 40

2.6. Kt lun chương 2. 43

CHƯƠNG 3: KHAI PHÁ LUẬT KẾT HỢP MỜ 44

3.1. Tp m 44

3.1.1. Tp m 44

3.1.2. Khái nim tp m trong lĩnh vc khai phá d liu 44

3.2. Ri rc hoá thuc tính da vào tp m 45

3.3. Lut kt hp m 48

3.4. Mt s thut toán khai phá lut kt hp m 50

3.5. Thut toán khai phá lut kt hp m MFAMI 51

3.5.1. Gii thiu v thut toán 51

3.5.2. Mt s khái nim 52

3.5.3. Phát hin lut 53

3.6. Kt lun chương III. 61

CHƯƠNG 4: CÀI ĐẶT THUẬT TOÁN MFAMI 62


4.1. Gii thiu 62

4.1.1. Các d liu chính trong vin thông 62

4.1.2. Mt s ng dng khai phá d liu trong vin thông 63

4.2. Cài t thut toán MFAMI trên CSDL cưc in thoi 65

4.2.1. Ngun d liu cưc in thoi 65

4.2.2. Mô t cu trúc d liu 66

4.2.3. Môi trưng cài t 67

4.2.4. Kt qu cài t thut toán 67



3

4.3. Kt lun chương 4 73

KẾT LUẬN 74

TÀI LIỆU THAM KHẢO 76



4



BẢNG KÝ HIỆU CÁC TỪ VIẾT TẮT

Viết tắt Từ hoặc cụm từ đầy đủ
KPDL Khai phá d liu
CSDL Cơ s d liu
KDD Knowledge Discovery in Databases
MFAMI Mining Fuzzy Association Rules Using Mutual Information


5


DANH SÁCH HÌNH VẼ

Hình 1.1. S tin hóa công ngh CSDL 10
Hình 1.2. Quá trình phát hin tri thc trong CSDL 14
Hình 1.3. Kin trúc in hình ca h thng khai phá d liu 16
Hình 2.1. Minh ha v lut kt hp 28
Hình 2.2. Ví d v vn  “im biên gãy” khi ri rc hóa d liu 40
Hình 3.1.  th hàm thuc ca thuc tính thi gian àm thoi 46
Hình 3.2. Các bưc ca thut toán MFAMI 54
Hình 3.3.  th xác nh mc  thuc ca thuc tính 57
Hình 4.1. Ngun d liu cưc in thoi 65


6



DANH SÁCH BẢNG BIỂU

Bng 2.1. Ví d v mt CSDL giao dch 29
Bng 2.2. Các tp mc ph bin trong CSDL bng 2.1 31
Bng 2.3. Lut kt hp sinh t tp ph bin ABE 33
Bng 2.4. CSDL chi tit ca 9 cuc gi in thoi 37
Bng 2.5. Ri rc hóa thuc tính s ri rc hu hn hoc hng mc 38
Bng 2.6. Ri rc hóa thuc tính s liên tc 39
Bng 3.1. CSDL chi tit ca 8 cuc gi in thoi 48
Bng 3.2. Min giá tr ca các tp m ca thuc tính thi gian àm thoi 56


7

MỞ ĐẦU

Chúng ta ang sng trong mt xã hi ngp tràn d liu: d liu khoa hc,
d liu y t, d liu nhân khu hc, d liu tài chính, và các d liu tip th
Con ngưi không có thi gian  xem xét ht các d liu này. Vì vy, chúng ta
phi tìm cách  phân tích d liu t ng,  phân loi d liu t ng,  tng
hp d liu t ng,  phát hin và mô t các xu hưng trong nó t ng, và 
cnh báo các d thưng t ng. ây là mt trong nhng lĩnh vc năng ng và
thú v nht ca cng ng nghiên cu cơ s d liu (CSDL). Các nhà nghiên
cu trong các lĩnh vc bao gm s liu thng kê, trc quan hóa, trí tu nhân to,
và hc máy ang óng góp cho lĩnh vc này. B rng ca lĩnh vc này làm cho
chúng ta khó có th nm bt ưc nhng tin b phi thưng ca nó trong vài
thp k qua [19].
Khai phá d liu (KPDL) là mt ch  mi, nhưng s lưng các bài báo
dành cho chúng (c quan im lý thuyt và thc tin) là khá n tưng. KPDL ã
tr thành mt trong nhng hưng nghiên cu chính trong lĩnh vc khoa hc máy

tính và công ngh tri thc. Hàng lot nghiên cu,  xut ra i ã ưc th
nghim và ng dng thành công vào i sng.
KPDL bao gm rt nhiu hưng tip cn. Các k thut chính ưc áp dng
trong lĩnh vc này phn ln ưc tha k t lĩnh vc CSDL, hc máy, trí tu
nhân to, lý thuyt thông tin, xác sut thng kê, và tính toán hiu năng cao. Các
bài toán ch yu trong KPDL là phân lp/d oán (classification/prediction),
phân cm (clustering), khai phá lut kt hp (association rules mining), khai phá
chui (sequence mining), .v.v. Lĩnh vc này cũng là im hi t và giao thoa
ca rt nhiu lĩnh vc khác. Vi s kt hp ca nhiu thành tu nghiên cu
trong các lĩnh vc khác, KPDL có ưc s toàn din và y  trong cách tìm
kim và x lý thông tin mt cách tiên tin, hiu qu. KPDL ã và ang ưc
ng dng thành công vào thương mi, tài chính & th trưng chng khoán, sinh
hc, y hc, giáo dc, vin thông, .v.v.
Khai phá lut kt hp là mt k thut quan trng ca KPDL ưc  xut
vào năm 1993 và phát trin mnh m trong nhng năm gn ây. Nhng nghiên
cu v lut kt hp gn ây tp trung xây dng các thut toán khai phá lut kt
hp mi, hiu qu hoc ci tin, phát trin các thut toán hiu qu hơn t các


8

thut toán ã có.
Ý tưng liên kt lut kt hp vi lý thuyt tp m ã xut hin t vài năm
trưc. Ý tưng ban u xut phát t n lc  x lý các thuc tính s trong
CSDL, trong ó vic phân chia các giá tr s vào các tp rõ có th dn n vic
ánh giá cao hơn hoc thp các giá tr  gn biên. Tp m có th khc phc vn
 này bng cách cho phép mt phn t có th thuc vào các tp khác nhau. Lý
thuyt tp m cung cp nhng công c cn thit  thc hin các tính toán trên
các cu trúc d liu khác nhau.
Vic s dng logic m trong mô hình quan h cung cp mt cách hiu qu

 x lý d liu s vi các thông tin không chính xác, không chc chn hoc
không y . Lý thuyt tp m ngày càng ưc s dng nhiu và thưng xuyên
hơn trong các h thng thông minh bi vì mi quan h ca nó vi cách lp lun
ca con ngưi [36]. Mt s nghiên cu ã chng minh ưc hiu sut vưt tri
ca logic m trong KPDL và kho d liu [36].
Ý thc ưc ây là mt lĩnh vc nghiên cu có nhiu trin vng, tôi ã
chn hưng nghiên cu “Khai phá lut kt hp m và ng dng trong CSDL
cưc in thoi” cho  tài lun văn ca mình. Phương pháp nghiên cu ch yu
ca lun văn là kho sát, phân tích ni dung các bài báo khoa hc v KPDL và
khai phá lut kt hp m ưc công b trong nhng năm gn ây. T các kt
qu nghiên cu lý thuyt kt hp vi nhng vn  t ra trong bài toán thc t,
lun văn cũng  xut phương pháp th nghim gii quyt vn  khai phá lut
trong thc t.
Ngoài phn m u và kt lun, lun văn ưc t chc thành 4 chương sau:
• Chương I gii thiu mt s ni dung cơ bn v KPDL như mc tiêu,
nh nghĩa v KPDL và KDD, các bưc chính trong quá trình phát
hin tri thc. Chương này cũng  cp n các hưng tip cn và k
thut chính trong KPDL cùng vi mt s phương pháp KPDL. S a
dng ca d liu, các nhim v KPDL, và các cách tip cn KPDL t
ra nhiu thách thc trong vn  nghiên cu KPDL. Phn cui ca
chương này phác ha nhng ưu th, ng dng chính ca lĩnh vc này
và nhng hưng nghiên cu ang và s ưc chú trng trong thi gian
ti.
• Chương II tp trung gii thiu v bài toán “khai phá lut kt hp”.


9

Chương này cung cp nhng hiu bit cn thit v bài toán khai phá
lut kt hp, như: phát biu bài toán, gii thiu thut toán nguyên thy

Apriori cho khai phá lut kt hp nh phân, cách ri rc hóa d liu
cho các thuc tính s và nhưc im ca chúng. Phn cui chương s
trình bày v nhng hưng tip cn chính trong lch s tn ti và phát
trin ca bài toán này.
• Chương III trình bày v “khai phá lut kt hp m”. Phn u ca
chương  cp n các khái nim v tp m và tp m trong KPDL.
Tip theo là phương pháp ri rc hóa d liu da vào tp m và ưu
im ca chúng. T ó lut kt hp m ưc  xut như mt hưng
khc phc các nhưc im ca bài toán khai phá lut kt hp có thuc
tính s  chương II. Bên cnh s tng hp v mt s thut toán khai
phá lut kt hp m trưc ây, lun văn trình bày thut toán MFAMI
(Mining Fuzzy Association Rules Using Mutual Information) cho vic
khai phá lut kt m hiu qu.
• Chương IV gii thiu v ngun d liu cưc in thoi và kt qu cài
t thut toán MFAMI trên CSDL này.


10

CHƯƠNG 1: TỔNG QUAN VỀ KHAI PHÁ DỮ LIỆU
1.1. Khai phá dữ liệu
1.1.1. Mục tiêu của khai phá dữ liệu
Theo J. Han và M. Kamber [19], quá trình tin hóa ca lĩnh vc công ngh
CSDL ưc mô t như Hình 1.1, trong ó công ngh KPDL ưc coi là dng
tin hóa mi ca công ngh CSDL bt u t cui nhng năm 1980 và không
ngng ưc phát trin v b rng và chiu sâu.
Hệ CSDL mở rộng
(nhng năm gia 1980
n nay)
- Mô hình d

 liu m
r
ng: quan h m rng,
quan h - i tư
ng, suy
lun
-
ng dng m rng:
không gian, thi gian,
a
phương tin, tích cc,

khoa hc, cơ s tri thc
Hình 1.1. S tin hoá công ngh CSDL
Hệ CSDL dựa trên
Web
(nhng năm 1990 n
nay)
- H
 CSDL da trên
XML
- S
 tích hp vi s
phc hi thông tin
- D
 liu và s tích
hp thông tin

Th h mi ca d liu tích hp và


các h thng thông tin (2000 - )
Tp hp d liu và khi to CSDL
(ti cui nhng năm 1960)
- X lý file thô sơ

H qun tr CSDL
(nhng năm 1970 và nhng năm u 1980)
- H thng CSDL phân cp và mng
- Công c mô hình d liu: Mô hình quan h thc th
- Phương pháp ánh ch s và truy nhp: cây B
+
, hàm băm
- Ngôn ng hi SQL …
- Giao din ngưi dùng, nhp liu và kt xut
- X lý truy vn, ti ưu truy vn
- Qun lý giao dch: khôi phc, iu khin tương tranh
-

X
 lý giao dch trc tuyn (OLTP)

Kho dữ liệu và khai phá dữ
liệu
(nhng năm cui 1980 n nay)

- Kho d liu và OLAP
- Khai phá d
 liu và phát hin
tri th
c: phân lp, phân cm,

k
t hp, phân tích mu, phân
tích ngoi lai …
-
ng dng khai phá d liu
m
 rng: khai phá d liu dòng,
khai phá text, khai phá web…


11

Nhng thp k gn ây ã chng kin mt s gia tăng áng k lưng thông
tin hoc d liu ưc lưu tr trong các thit b in t (như là ĩa cng, CD-
ROM, băng t, v v). S tích lũy d liu này xy ra vi mt tc  bùng n.
Ngưi ta ưc oán rng, lưng thông tin trên toàn cu tăng gp ôi sau khong
hai năm và theo ó s lưng cũng như kích c ca các CSDL cũng tăng lên
mt cách nhanh chóng [3]. Theo Fayyad, Piatetsky-Shapiro, Smyth [15], vic
nghiên cu phát trin lĩnh vc KPDL và KDD (Knowledge Discovery in
Databases: KDD) là nhm gii quyt tình trng “ngp tràn thông tin mà thiu
thn tri thc”. Mt s s liu thng kê dưi ây ưc ưa ra vào năm 2006 [17]
ã minh chng cho tình trng "ngp tràn thông tin" là hin nay tn ti nhiu kho
d liu không nhng ã tr nên khng l mà hàng ngày khi lưng ca chúng
còn ưc tăng trưng vi tc  cao. V d liu web, in hình là Alexa sau 7
năm ã có 500 TB, Google ã lưu tr hơn 4 t trang Web vi dung lưng nhiu
trăm TB, IBM Web Fountain vi hơn 160 TB, Internet Archive xp x 300 TB
v v. V CSDL, in hình là Max Planck Institute for Meteorology có ti hơn
220 TB, Yahoo! có hơn 100TB còn AT&T có gn 100 TB. Theo ưc lưng ca
UC Berkeley 2003 thì có ti 5 exabytes (5 triu terabytes) d liu mi ưc
khi to trong năm 2002. Mc ích ca vic thu thp và lưu tr các kho d liu

khng l ưc lit kê trên ây không ngoài mc ích KPDL nhm phát hin các
tri thc mi có ích cho hot ng ca con ngưi trong tp hp các d liu ã thu
thp ưc [1].
Nhng công c KPDL có th d oán các xu th tương lai trên cơ s phân
tích d liu hot ng ca doanh nghip, do ó cho phép các t chc doanh
nghip ưa ra ưc các quyt nh kp thi ưc nh hưng bi tri thc mà
KPDL em li. Tính t ng trong phân tích d liu khin nó chim ưu th hơn
hn so vi các phân tích thông thưng da trên kinh nghim hay các s kin
trong quá kh ca các h thng h tr ra quyt nh trưc ây. Trên cơ s ó
cũng ng thi tr li ưc nhiu vn  trong kinh doanh mà trưc ây khó có
th thc hin vì cn rt nhiu thi gian và công sc  x lý. Vi các ưu im
trên, KPDL ã chng t ưc tính hu dng ca nó trong môi trưng kinh
doanh y tính cnh tranh ngày nay và ưc ng dng rng rãi trong nhiu lĩnh
vc như: thương mi, tài chính, y hc, giáo dc, vin thông …
nh hưng và mc tiêu chính ca KPDL là kt xut tri thc t d liu. Do
ó,  mc cao - tng quát, ta có th coi mc ích chính ca quá trình KPDL là


12

mô t (description) và d oán (prediction) [2]. D oán dùng mt s bin hoc
trưng trong CSDL  d oán hoc v giá tr chưa bit hoc v giá tr s có
trong tương lai ca các bin. Mô t hưng ti vic tìm ra các mu mô t d liu.
D oán và mô t có tm quan trng khác nhau i vi các thut toán KPDL.
 mc chi tit - c th, d báo và mô t ưc th hin thông qua các bài
toán c th như mô t khái nim, quan h kt hp, phân cm, phân lp, hi quy,
mô hình ph thuc, phát hin bin i và  lch và mt s bài toán c th khác.
1.1.2. Khái niệm khai phá dữ liệu
Lĩnh vc KPDL và KDD ã cun hút các phương pháp, thut toán và k
thut t nhiu chuyên ngành nghiên cu khác nhau như hc máy, thu nhn mu,

CSDL, thng kê, trí tu nhân to, thu nhn tri thc trong h chuyên gia… nhm
hưng ti cùng mt mc tiêu thng nht là trích lc ra ưc các tri thc t d
liu trong các CSDL khng l. Tính phong phú và a dng ó ã dn n mt
thc trng là tn ti mt s quan nim khác nhau v lĩnh vc nghiên cu gn gũi
nht vi lĩnh vc này - KDD. Vi nhng gì ã trình bày  trên, chúng ta có th
hiu mt cách sơ lưc rng KPDL là quá trình tìm kim nhng thông tin (tri
thc) hu ích, tim n và mang tính d báo trong các tp d liu ln. Như vy,
chúng ta nên gi quá trình này là phát hin tri thc. Tuy nhiên các nhà khoa hc
trong lĩnh vc này ng ý vi nhau rng hai thut ng trên là tương ương và có
th thay th cho nhau. H lý gii rng, mc ích chính ca quá trình phát hin tri
thc là thông tin và tri thc có ích, nhưng i tưng mà chúng ta phi x lý rt
nhiu trong sut quá trình ó li chính là d liu.
Mt khác, khi chia các bưc trong quá trình khám phá tri thc, mt s nhà
nghiên cu li cho rng, KPDL ch là mt bưc trong quá trình khám phá tri
thc.
Như vy, khi xét  mc tng quan thì hai thut ng này là tương ương
nhau, nhưng khi xét c th thì KPDL ưc xem là mt bưc trong quá trình
khám phá tri thc [3].
Khái niệm 1.1.
Phát hiện tri thức trong CSDL (đôi khi còn được gọi là KPDL) là một quá
trình không tầm thường nhận ra những mẫu có giá trị, mới, hữu ích tiềm năng
và hiểu được trong dữ liệu [15].


13

Là lĩnh vc nghiên cu và trin khai ưc phát trin nhanh chóng và rng
ln, li ưc rt nhiu nhóm nghiên cu ti nhiu a im khác nhau trên th
gii ng thi quan tâm, cho nên tn ti rt nhiu cách tip cn khác nhau i
vi lĩnh vc KDD. Vì lý do ó mà trong nhiu tài liu, các nhà khoa hc trên th

gii ã s dng nhiu thut ng khác nhau mà chúng ưc coi là mang cùng
nghĩa vi KDD như chit lc tri thc (knowledge extraction), phát hin thông tin
(information discovery), thu hoch thông tin (information harvesting), khai qut
d liu (data archaeology) và x lý mu d liu (data pattern processing)
Khái niệm 1.2.
Khai phá dữ liệu là một bước trong quá trình phát hiện tri thức trong
CSDL, thi hành một thuật toán KPDL để tìm ra các mẫu từ dữ liệu theo khuôn
dạng thích hợp [15].
Ngoài ra, theo B.Kovalerchuk và E.Vityaev [7], Friedman ã tng hp mt
s quan nim sau ây liên quan v khái nim "Khai phá d liu":
• Quá trình không tầm thường để nhận biết từ dữ liệu ra các mẫu có giá
trị, mới, hữu dụng và hiểu được (Fayyad)
• Quá trình trích lọc các thông tin chưa biết trước, có thể nhận thức
được, có thể tác động được từ CSDL lớn và sử dụng chúng để tạo ra
quyết định công tác (Zekulin)
• Tập các phương pháp được dùng trong quá trình phát hiện tri thức
nhằm tường minh các quan hệ và các mẫu chưa biết trước chứa trong
dữ liệu (Ferruzza)
• Quá trình hỗ trợ quyết định khi tìm kiếm những mẫu thông tin chưa
biết và hữu ích từ CSDL lớn (Parsaye)
1.1.3. Các bước chính của quá trình phát hiện tri thức trong CSDL
Toàn b quá trình KDD thưng ưc chia thành các bưc sau ây [3].
1. Trích chn d liu (data selection): là bưc trích chn nhng tp d
liu cn ưc khai phá t các tp d liu ln (databases, data
warehouses, data repositories) ban u theo mt s tiêu chí nht nh.
2. Tin x lý d liu (data preprocessing): ây là giai on làm sch d
liu và cu hình li,  ây mt s k thut ưc áp dng  i phó vi


14


tính không y , nhiu, và không phù hp ca d liu . Bưc này
cũng c gng  gim d liu bng cách s dng chc năng tng hp
và nhóm, các phương pháp nén d liu, histograms, ly mu, v v.
Ngoài ra, các k thut ri rc hoá d liu (Bining, ri rc hóa da vào
histograms, da vào entropy, da vào phân khong, .v.v) có th ưc
s dng  làm gim s lưng các giá tr cho mt thuc tính liên tc.
Sau bưc này, d liu ưc làm sch , hoàn chnh, thng nht.










3. Bin i d liu (data transformation): trong bưc này, d liu ưc
chuyn dng hoc hp nht thành dng thích hp cho KPDL. Bin i
d liu có th liên quan n vic làm mn và chun hóa d liu . Sau
bưc này, d liu ã sn sàng cho bưc KPDL.
4. Khai phá d liu (data mining): ây ưc xem là bưc quan trng nht
trong quá trình KDD. Nó áp dng mt s k thut KPDL (ch yu là
t hc máy và các lĩnh vc khác)  khai phá, trích chn ưc nhng
mu (patterns) thông tin, nhng mi liên h (relationships) c bit
trong d liu.
5. Biu din và ánh giá tri thc (knowledge representation & evaluation):
nhng mu thông tin và mi liên h trong d liu ã ưc khai phá 
bưc trên ưc chuyn dng và biu din  mt dng gn gũi vi ngưi

s dng như  th, cây, bng biu, lut, .v.v. ng thi bưc này cũng
ánh giá nhng tri thc khám phá ưc theo nhng tiêu chí nht nh.

Hình 1.2. Quá trình phát hin tri thc trong CSDL


15

1.1.4. Kiến trúc một hệ thống khai phá dữ liệu
Kin trúc in hình ca mt h KPDL ưc trình bày trong hình 1.3 [19].
Trong kin trúc này, các ngun d liu cho các h thng KPDL 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 ã lit kê nói trên. Cơ s tri thc, bao cha các
tri thc hin có v min ng dng, ưc s dng trong thành phn KPDL  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 KPDL
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 d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ó i chng vi các
tri thc ã có trong cơ s tri thc. Nu mu khai phá ưc thc s hp dn thì
ưc b sung vào cơ s tri thc  phc v cho hot ng tip theo ca h
thng. Như vy, ngun tri thc b sung vào cơ s tri thc  ây không ch t lp
lun lôgic theo các h toán lôgic  có tri thc 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 tri thc ưc phát hin
mt cách t ng t ngun d liu.
KPDL là mt bưc chính trong quá trình phát hin tri thc t s lưng ln
d liu ã lưu tr trong CSDL, kho d liu hoc các nơi lưu tr khác. Kt qu
ca bưc này là nhng mu áng quan tâm ưc ưa n cho ngưi dùng hoc
lưu gi như là tri thc mi trong cơ s tri thc.



16

Kin trúc ca h thng KPDL có th có các thành phn chính sau [19]:

• CSDL, kho d liu, WorldWideWeb, kho cha d liu khác: ây là
mt hoc mt tp CSDL, kho d liu, 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 ã lit kê nói trên.
Các k thut làm sch d liu và tích hp d liu có th ưc thc
hin trên d liu.
• Phc v CSDL/kho d liu: có trách nhim ly d liu liên quan da
trên yêu cu ca ngưi KPDL.
• Cơ s tri thc: ây là tri thc min ưc s dng  hưng dn vic
tìm kim hoc ánh giá s thú v ca các mu thú v. Tri thc này có
th bao gm các mc phân cp khái nim, ưc s dng  t chc các
thuc tính hoc giá tr thuc tính thành các cp tru tưng. Tri thc
như  tin cy ca ngưi s dng, có th ưc s dng  ánh giá 
thú v ca mu cũng có th ưc bao gm. Các ví d khác ca tri thc
min là các ràng buc thú v b sung hoc ngưng, và siêu d liu (ví
d, mô t d liu t nhiu ngun không ng nht).
Giao din ngưi dùng
ánh giá mu khai phá ưc
Thành phn khai phá d liu
Phc v CSDL/Kho d liu
Cơ s
tri thc
Làm sch, tích hp và chn la d liu
Hình 1.3. Kin trúc in hình ca h thng khai phá d liu
CSDL
Kho d liu
World Wide

W
eb

Các kiu kho
th
ô
ng tin kh
ác



17

• Thành phn khai phá d liu: ây là thành phn cn thit i vi h
thng KPDL, bao gm mt tp các chc năng như mô t, phân tích
tính kt hp và tính tương quan, phân lp, d báo, phân tích cm, phân
tích ngoi lai, và phân tích s tin hóa.
• ánh giá mu: Thành phn này thưng s dng các  o và tương tác
vi thành phn KPDL  tp trung tìm kim các mu thú v. Nó có th
s dng các ngưng  lc ra các mu phát hin ưc. Ngoài ra, thành
phn ánh giá mu có th ưc tích hp vi thành phn KPDL, ph
thuc vào các phương pháp KPDL ưc s dng.
• Giao din ngưi dùng: Thành phn này là thành phn giao tip gia
ngưi s dng và h thng KPDL, cho phép ngưi dùng tương tác vi
h thng bng cách xác nh mt truy vn hoc mt nhim v KPDL,
cung cp thông tin  giúp tp trung tìm kim, thăm dò và KPDL da
trên kt qu KPDL trung gian. Ngoài ra, thành phn này cho phép
ngưi dùng tìm các lưc  CSDL và kho d liu hoc các cu trúc d
liu, ánh giá các mu khai phá ưc, và trc quan hoá các mu trong
các dng khác nhau.

1.2. Hướng tiếp cận và kỹ thuật chính trong khai phá dữ liệu
1.2.1. Hướng tiếp cận và kỹ thuật chính trong khai phá dữ liệu
Là lĩnh vc nghiên cu và trin khai ưc phát trin nhanh chóng và rng
ln, li ưc rt nhiu nhóm nghiên cu ti nhiu a im khác nhau trên th
gii ng thi quan tâm, cho nên tn ti rt nhiu cách tip cn khác nhau i
vi lĩnh vc KPDL. Chúng có th ưc phân loi theo chc năng, các loi tri
thc, loi d liu ưc khai phá, hoc bt c iu gì phù hp tiêu chun [19].
Dưi ây là mt s cách tip cn chính .
• Phân lp và d báo: phương pháp này c gng sp xp mt i tưng
nht nh vào mt lp thích hp trong s các lp ã bit. S lưng các
lp và tên ca nó chc chn ưc bit n. Ví d, chúng ta có th phân
lp hoc d oán các khu vc a lý theo d liu thi tit và khí hu.
Phương pháp này thưng s dng các k thut và khái nim in hình
trong hc máy như cây quyt nh, k-min, mng thn kinh nhân to,
máy h tr vector, .v.v. Phân lp còn ưc gi là hc có giám sát.


18

• Lut kt hp (association rules): là dng lut biu din tri thc  dng
khá ơn gin. Ví d “80% sinh viên ăng ký hc CSDL thì có ti
70% trong s h ăng ký hc phân tích thit k các h thng thông
tin”. Hưng tip cn này ưc ng dng nhiu trong các lĩnh vc
kinh doanh, tài chính, th trưng chng khoán, y hc, tin sinh hc,
giáo dc .v.v.
• Phân cm & phân on: phương pháp này c gng sp xp các i
tưng theo tng cm nhưng s lưng và tên ca các cm chưa ưc
bit trưc. Phân cm và phân on ưc gi là hc không có giám sát.
• Khai phá mu theo th t / theo thi gian (sequential/temporal patterns
mining): Cũng tương t như KPDL bng lut kt hp nhưng có thêm

tính th t và tính thi gian. Hưng tip cn này ưc ng dng nhiu
trong lĩnh vc tài chính và th trưng chng khoán bi vì chúng có tính
d báo cao.
• Mô t khái nim (concept description & summarization): mc tiêu
chính ca phương pháp này là tìm các c trưng và tính cht ca các
khái nim. in hình nht cho bài toán này là các bài toán như tng
quát hóa, tóm tt các c trưng d liu ràng buc…Tóm tt văn bn là
mt ví d in hình.
1.2.2. Kiểu dữ liệu trong khai phá dữ liệu
V nguyên lý chung, ngun d liu ưc s dng  tin hành KPDL nhm
phát hin tri thc là rt phong phú và a dng, trong ó in hình nht là CSDL
quan h, kho d liu, CSDL giao dch, các h thng d liu và thông tin m
rng khác [1].
• C s d liu quan h
Tính ph bin ca h thng CSDL quan h hin nay to ra mt h qu t
nhiên quy nh CSDL quan h là mt ngun u vào in hình nht, ưc quan
tâm trưc ht ca KPDL. Hơn na, mt trong nhng mu ưc quan tâm là mu
v các loi “quan h” mà vi bn cht ca mình, h thng CSDL tim n các mu
dng như th. Như ã bit trong lý thuyt CSDL, h thng CSDL thưng bao
gm mt tp các bng (hai chiu dc và ngang). H thng CSDL quan h còn bao
gm mt mô hình ng nghĩa mà thông thưng là mô hình thc th - quan h.


19

• Kho d liu
Kho d liu là mt kt qu xut hin trong quá trình tin hoá các h h tr
quyt nh. Quá trình phát hin tri thc trong CSDL tip nhn u vào là các h
thng CSDL, các nhà kho t chc d liu t các ngun và các d liu mô t.
Các nghiên cu và trin khai liên quan ti kho d liu ch dn khuynh

hưng hin ti ca các h thng thông tin qun lý ph bin là nhm vào vic thu
thp, làm sch d liu giao dch và to cho chúng  linh hot khi tìm kim trc
tuyn. ng thi vi s phát trin ca công ngh kho d liu, các h thng tích
hp các ngun d liu c d liu trong quá kh ln d liu tác nghip ã ưc
xây dng. Nhiu h thng KPDL có u vào t siêu d liu cùng các d liu
ngun trong các kho d liu.
• Cơ s d liu giao dch
Mt lp bài toán KPDL ph bin là khai phá quan h kt hp, trong ó in
hình là bài toán khai phá lut kt hp, ưc xut phát t vic xem xét các CSDL
giao dch. D liu giao dch chính là d liu nguyên thu xut hin trong nh
nghĩa v lut kt hp cùng vi các  do ca lut như  h tr và  tin cy.
Khi m rng d liu t d liu giao dch sang d liu vô hưng, hoc d liu
phc tp hơn có trong các CSDL quan h, các gii pháp khai phá lut kt hp
ưc ci tin  thích ng vi s bin i này. Các gii pháp ng dng lý thuyt
tp m và lý thuyt tp thô tương ng vi vic m rng min d liu cn khai
phá ã ưc tin hành trong nhiu công trình nghiên cu.
• Các h thng d liu m rng
Trong quá trình phát trin, các phương pháp và thut toán KPDL thích hp
i vi các CSDL m rng và các kiu kho cha d liu ưc  xut. Các
phương pháp và thut toán này phù hp vi các CSDL trong CSDL hưng i
tưng, CSDL không gian - thi gian, CSDL tm thi, d liu chui thi gian, d
liu dòng, CSDL Text, CSDL a phương tin, CSDL hn tp, CSDL k tha và
Word Wide Web.
1.2.3. Một số phương pháp khai phá dữ liệu
Có rt nhiu các phương pháp KPDL, mi phương pháp có nhng c im
riêng và phù hp vi mt lp các bài toán vi các dng d liu và min d liu
nht nh. Dưi ây là mt s phương pháp thưng ưc dùng [7].


20


- Phương pháp quy np
- Cây quyt nh và lut
- Khai phá lut kt hp
- Các phương pháp phân lp và hi quy phi tuyn
- Phân nhóm và phân on
- Các phương pháp da trên mu
- Khai phá d liu văn bn
- Mng nơ-ron
- Gii thut di truyn
- Mô hình ph thuc da trên  th xác sut
- Mô hình hc quan h
Các thut toán KPDL t ng vn mi ch  giai on phát trin ban u.
Ngưi ta vn chưa ưa ra ưc mt tiêu chun nào trong vic quyt nh s
dng phương pháp nào và trong trưng hp nào thì có hiu qu.
Hu ht các phương pháp KPDL u mi i vi lĩnh vc kinh doanh. Hơn
na li có rt nhiu k thut, mi k thut ưc s dng cho nhiu bài toán khác
nhau. Mi phương pháp u có im mnh và im yu ca nó, nhưng hu ht
các im yu u có th khc phc ưc. Vì vy, cn tìm cách áp dng mi k
thut tht ơn gin, d s dng  không cm thy nhng phc tp vn có ca
k thut ó.
 so sánh các k thut cn phi có mt tp ln các quy tc và các phương
pháp thc nghim tt. Thưng thì các quy tc này không ưc s dng khi ánh
giá các k thut mi nht. Vì vy mà nhng yêu cu ci thin  chính xác
không phi lúc nào cũng thc hin ưc.
Nhiu công ty ã ưa ra nhng sn phm s dng kt hp nhiu k thut
KPDL khác nhau vi hy vng nhiu k thut thì s tt hơn. Nhưng thc t cho
thy không phi như vy, nhiu k thut ch thêm nhiu rc ri và gây nhiu khó
khăn cho vic so sánh gia các phương pháp và các sn phm. Theo nhiu ánh
giá cho thy khi ã hiu ưc các k thut và nghiên cu tính ging nhau gia

chúng, ngưi ta thy rng nhiu k thut lúc u có v khác nhau nhưng thc


21

cht thì chúng li ging nhau. Tuy nhiên ánh giá này cũng ch  tham kho vì
cho n nay KPDL vn còn là k thut mi cha nhiu tim năng mà ngưi ta
chưa khai thác ht.
1.3. Ứng dụng của khai phá dữ liệu
1.3.1. Ưu thế của khai phá dữ liệu
KPDL thc cht không có gì mi mà hoàn toàn da trên các phương pháp
cơ bn ã bit. Vy KPDL có gì khác so vi các phương pháp ó và ti sao
KPDL li có ưu th hơn hn chúng? Các phân tích sau s gii áp nhng câu hi
này [2].
• Hc máy (machine learning)
Tuy phương pháp hc máy ã ưc ci tin  có th phù hp vi mc ích
KPDL, nhưng s khác bit gia thit k, các c im ca CSDL ã làm nó tr
nên không phù hp vi mc ích này, mc dù n nay phn ln các phương
pháp KPDL vn da trên nn tng cơ s ca phương pháp hc máy.
Trong các h qun tr CSDL, mt CSDL là mt tp hp d liu ưc tích
hp mt cách logic, ưc lưu trong mt hay nhiu tp, và ưc t chc  lưu
tr, sa i và ly thông tin mt cách hiu qu và d dàng. Trong hc máy, thut
ng CSDL ch yu  cp ti mt tp các mu (instance hay example) ưc lưu
trong mt tp. Các mu thưng là các vector thuc tính có  dài c nh, thông
tin v tên thuc tính và dãy giá tr ca chúng ôi khi cũng ưc lưu li như trong
t in d liu. Mt thut toán hc còn s dng tp d liu và các thông tin kèm
theo tp d liu ó làm u vào và u ra biu th kt qu ca vic hc.
Vi so sánh CSDL thông thưng và CSDL trong hc máy như trên, có th
thy là hc máy có kh năng áp dng cho CSDL, bi vì không phi hc trên tp
các mu mà hc trên tp các bn ghi ca CSDL. Tuy nhiên KDD làm tăng thêm

các khó khăn vn ã là in hình trong hc máy và ã vưt quá kh năng ca
hc máy. Trong thc t CSDL thưng ng, không y , b nhiu và ln hơn
nhiu so vi các tp d liu hc máy in hình. Các yu t này làm cho hu ht
các thut toán hc máy tr nên không hiu qu trong hu ht các trưng hp. Vì
vy trong KPDL cn tp trung rt nhiu công sc vào vic vưt qua nhng vn
 này trong CSDL.


22

• Phương pháp h chuyên gia
Các h chuyên gia c gng nm bt các tri thc thích hp vi mt bài toán
nào ó. Các k thut thu thp giúp cho vic ly tri thc t chuyên gia con ngưi.
Mi phương pháp ó là mt cách suy din các lut t các ví d và gii pháp i
vi bài toán chuyên gia ưa ra. Phương pháp này khác vi KPDL  ch các ví
d ca chuyên gia thưng  mc cht lưng cao hơn rt nhiu so vi các d liu
trong CSDL và chúng thưng ch bao quát ưc các trưng hp quan trng.
Hơn na, các chuyên gia s xác nhn tính có giá tr và hu dng ca các mu
phát hin ưc. Cũng như vi các công c qun tr CSDL,  phương pháp này
òi hi có s tham gia ca con ngưi trong vic phát hin tri thc.
• Phát kin khoa hc
KPDL rt khác vi phát kin khoa hc  ch nhng khai phá trong CSDL ít
có ch tâm và có iu khin hơn. Các d liu khoa hc có t thc nghim nhm
loi b mt s tác ng ca các tham s  nhn mnh  bin thiên ca mt
hay mt s tham s ích. Tuy nhiên, các CSDL thương mi thưng ghi li mt
s lưng tha thông tin v các d án ca h  t ưc mt s mc ích v mt
t chc. S dư tha này có th là hin hin hay n cha trong các mi quan h
d liu. Hơn na các nhà khoa hc có th to li các thí nghim và có th tìm ra
rng các thit k ban u không thích hp. Trong khi ó các nhà qun lý CSDL
hu như không th xa x i thit k li các trưng d liu và thu thp li d liu.

• Phương pháp thng kê
Mc dù các phương pháp thông kê cung cp mt nn tng lý thuyt vng
chc cho các bài toán phân tích d liu nhưng ch có tip cn thng kê thun tuý
thôi thì chưa . Th nht, các phương pháp thng kê chun không phù hp i
vi các kiu d liu có cu trúc trong rt nhiu CSDL. Th hai, các phương
pháp thông kê hoàn toàn b d liu iu khin, nó không s dng tri thc sn có
v lĩnh vc. Th ba, các kt qu ca phân tích thông kê có th s rt nhiu và
khó có th làm rõ ưc. Cui cùng các phương pháp thông kê cn có s hưng
dn ca ngưi dùng  xác nh phân tích d liu như th nào và  âu.
S khác nhau cơ bn gia KPDL và thng kê là  ch KPDL là mt
phương tin ưc dùng bi ngưi dùng cui ch không phi là các nhà thng
kê. KPDL t ng hoá quá trình thng kê mt cách hiu qu, vì vy làm nh bt
công vic ca ngưi dùng cui, to ra mt công c d s dng hơn. Như vy,


23

nh có KPDL, vic d oán và kim tra rt vt v trưc ây có th ưc ưa lên
máy tính, ưc tính, d oán và kim tra mt cách t ng.
1.3.2. Ứng dụng của KPDL
Mc dù KPDL là mt xu hưng nghiên cu tương i mi, nhưng thu hút
nhiu nhà nghiên cu bi vì các ng dng thc t ca nó trong nhiu lĩnh vc.
Sau ây là mt s ng dng tiêu biu:
• Phân tích d liu và h tr ra quyt nh: ng dng này là ph bin
trong thương mi, tài chính và th trưng chng khoán, .v.v.
• Y t: tìm kim s liên quan tim năng gia các triu chng, chn
oán, và phương pháp iu tr (dinh dưng, toa thuc, bác sĩ phu
thut, .v.v.).
• Khai phá text và web: tóm tt tài liu, khôi phc văn bn và tìm kim
văn bn, phân lp văn bn và siêu văn bn.

• Tin sinh hc: tìm kim và so sánh thông tin di truyn in hình hoc
c bit như b gen và DNA, các mi quan h ngm gia mt s gen
và mt s bnh di truyn, .v.v.
• Tài chính & th trưng chng khoán: kim tra d liu  trích xut
thông tin d oán cho giá ca các loi c phiu.
• Nhng ng dng khác (vin thông, bo him y t, thiên văn hc, chng
khng b, th thao, .v.v.).
1.3.3. Phân loại các hệ thống khai phá dữ liệu
KPDL là mt công ngh tri thc liên quan n nhiu lĩnh vc nghiên
cu khác như CSDL, hc máy, trí tu nhân to, trc quan hoá d liu và tri
thc, .v.v. Chúng ta có th phân loi các h thng KPDL theo các tiêu chí khác
nhau như sau:
• Phân loi da trên loi d liu ưc khai phá: các h thng KPDL làm
vic vi CSDL quan h, kho d liu , CSDL giao dch, CSDL hưng
i tưng, CSDL không gian và thi gian, CSDL a phương tin,
CSDL văn bn và web, .v.v.
• Phân loi da trên loi tri thc khai phá ưc: các h thng KPDL có


24

th phân loi da theo loi tri thc mà chúng khai phá ưc, nghĩa là
da vào các chc năng khai phá như mô t, tóm tt, lut kt hp, phân
lp, d báo, phân cm, .v.v.
• Phân loi da trên loi k thut ưc s dng: Các công c KPDL như
các h thng x lý phân tích trc tuyn (OLAP), s dng k thut hc
máy (cây quyt nh, mng nơron nhân to, k-min, thut toán gen, máy
h tr vector, tp thô, tp m, .v.v.), trc quan hoá d liu, .v.v.
• Phân loi da trên các lĩnh vc h thng KPDL ưc ng dng: các h
thng KPDL ưc s dng trong các lĩnh vc khác nhau như: thương

mi (ngành công nghip bán l), vin thông, tin sinh hc, iu tr y t,
tài chính và th trưng chng khoán, bo him y t, .v.v.
1.3.4. Xu hướng trong khai phá dữ liệu
S a dng ca d liu, các nhim v KPDL, và các cách tip cn
KPDL t ra nhiu thách thc trong vn  nghiên cu KPDL. S phát trin
ca các h thng và phương pháp KPDL hiu qu, vic xây dng các môi
trưng KPDL tương tác và tích hp, vic thit k các ngôn ng KPDL, và
vic ng dng các k thut KPDL  gii quyt các vn  ng dng ln là
nhim v quan trng i vi các nhà nghiên cu KPDL, h thng KPDL và
các nhà phát trin ng dng. Phn này  cp n mt s vn  ang thu hút
s chú ý ca các nhà nghiên cu KPDL.
• OLAM (khai phá phân tích trc tuyn) - mt s kt hp ca CSDL,
kho d liu, và khai phá d liu. Ngày nay, các h qun tr CSDL như
Oracle, MS SQL Server, IBM DB2 có tích hp chc năng OLAP và
kho d liu  to iu kin cho ngưi s dng trong vic khôi phc
và phân tích d liu. Các nhà nghiên cu trong lĩnh vc này hy vng
s vưt qua ưc nhng gii hn hin ti bng cách phát trin h
thng OLAM a mc ích  h tr d liu giao dch cho hot ng
kinh doanh hàng ngày cũng như các phân tích d liu cho vic ra
quyt nh [19].
• Các h thng khai thác d liu có th khai phá các loi khác nhau ca
tri thc t loi d liu khác nhau [7] [19].
• Làm th nào  tăng cưng hiu sut,  chính xác, kh năng m rng,

×