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

Khai Phá Dữ Liệu-Các kỹ thuật phân lớp và dự đoán doc

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 (533.05 KB, 55 trang )

Khai Phá Dữ Liệu
Nguyễn Nhật Quang

Viện Công nghệ Thông tin và Truyền thông
Trường Đại học Bách Khoa Hà Nội
Năm học 2010-2011
Nội dung môn học:
 Giới thiệu về Khai phá dữ liệu

 Giới thiệu v

công cụ WEK
A
 Tiền xử lý dữ liệu
 Phát hiện các luật kết hợp

Các kỹ thuật phân lớpvàdự đoán

Các

kỹ

thuật

phân

lớp



dự



đoán
 Phân lớp bằng phương pháp học Bayes
 Học cây quyết định
 Các kỹ thuật phân nhóm
2
Khai Phá Dữ Liệu
Bài toán phân lớp
 Bài toán phân lớp (Classification)

Đ
ối với m

t t
ập
các ví d

/bản
g
hi
(
instances/records
)


gọ
i là t
ập

ộ ập ụ g( )

gọ
ập
huấn luyện/học (training/learning set)
 Mỗi bản ghi được biểu diễn bằng một tập các thuộc tính, trong
đó có m

t thu

c tính
p
hân lớ
p

(
class attribute
)
ộ ộ p p( )
 Tìm/học một hàm cho thuộc tính phân lớp (hàm phân lớp) đối
với các giá trị của các thuộc tính khác
 Sử dụng một tập các ví dụ khác với các ví dụ học để
kiểm tra độ chính xác của hàm phân lớp học được – gọi

tậpkiểmthử (test set)


tập

kiểm

thử


(test

set)
 Thông thường, tập dữ liệu ban đầu được chia thành 2 tập (không
giao nhau): training set (để học hàm phân lớp) và test set (để
kiểmthử hàm phân lớphọc được)
kiểm

thử

hàm

phân

lớp

học

được)
3
Khai Phá Dữ Liệu
Phân lớp vs. Dự đoán
 Bài toán phân lớp (Classification problem)
H ộthà tiê ó iá t ị ời (di t
ldt t

H
ọc m
ột



m mục
tiê
u c
ó
g


t
r

r
ời
rạc
(
a
di
scre
t
e-va
l
ue
d

t
arge
t

function)

 Miền giá trị: một tập các nhãn lớp (class labels) xác địn trước
 Với mỗi ví dụ cần phân loại, hệ thống xác định nhãn lớp của nó
 Bài toán d

đoán/hồi
q
u
y

(
Prediction/re
g
ression
p
roblem
)
ự qy( g p )
 Học một hàm mục tiêu có giá trị liên tục (a continuous-valued
target function)
Miề iá t ị tậ áiátị ố th (l b)

Miề
n g


t
r

:
tậ

p c
á
c g


t
r

s


th
ực
(
rea
l
num
b
ers
)
 Với mỗi ví dụ cần dự đoán, hệ thống xác định giá trị dự đoán của

4
Khai Phá Dữ Liệu
Học có vs. không có giám sát
 Học có giám sát (supervised learning)

Mỗi

dụ

học
gồm
2
phần
:

tả
(
biểu
diễn
)
của

dụ
học


Mỗi

dụ
học
gồm
2

phần
:


tả
(

biểu
diễn
)

của

dụ
học
,

nhãn lớp(hoặcgiátrịđầu ra mong muốn) củavídụ học đó
 Bài toán học phân lớp (classification problem)
Dtrain
={(<
Biểudiễncủax
><
Nhãn lớpcủax
>)}
D
_
train
=

{(<
Biểu
_
diễn
_
của
_

x
>
,
<
Nhãn
_
lớp
_
của
_
x
>)}
 Bài toán học dựđoán/hồi quy (prediction/regression problem)
D_train = {(<Biểu_diễn_của_x>, <Giá_trị_đầu_ra_của_x>)}
 Học không có giám sát (unsupervised learning)
 Mỗivídụ họcchỉ chứamôtả (biểudiễn) củavídụ học đó- mà
không

bất
kỳ
thông
tin
nào
về
nhãn
lớp
hay
giá
trị
đầu

ra
mong
không

bất
kỳ
thông
tin

nào
về
nhãn
lớp
hay

giá
trị
đầu
ra
mong
muốncủavídụ học đó
 Bài toán học phân cụm (Clustering problem)
Tập
học
Dtrain
={(<
Biểudiễncủax
>)}
Tập
học

D
_
train
=

{(<
Biểu
_
diễn
_
của
_
x
>)}
5
Khai Phá Dữ Liệu
Các khái niệm cơ bản về xác suất
 Giả sử chúng ta có một thí nghiệm (ví dụ: đổ một quân xúc sắc) mà
kết quả của nó mang tính ngẫu nhiên (phụ thuộc vào khả năng có thể
xảy ra)
 Không gian các khả năng S. Tập hợp tất cả các kết quả có thể xảy ra
Ví dụ:
S
=
{123456}
đốivới thí nghiệm đổ quân xúc sắc


dụ:


S

{1
,
2
,
3
,
4
,
5
,
6}
đối

với

thí

nghiệm

đổ

quân

xúc

sắc
 Sự kiện E. Một tập con của không gian các khả năng
Ví dụ: E= {1}: kết quả quân súc xắc đổ ra là 1

ế ắ ổ ố
Ví dụ: E= {1,3,5}: k
ế
t quả quân súc x

c đ

ra là một s

lẻ
 Không gian các sự kiện W. Không gian (thế giới) mà các kết quả của
s

ki

n có thể xả
y
ra
ự ệ y
Ví dụ: W bao gồm tất cả các lần đổ súc xắc
 Biến ngẫu nhiên A. Một biến ngẫu nhiên biểu diễn (diễn đạt) một sự
kiệnvàcómộtmức độ về khả năng xảyrasự kiện này
kiện
,




một


mức

độ

về

khả

năng

xảy

ra

sự

kiện

này
6
Khai Phá Dữ Liệu
Biểu diễn xác suất
P(A): “Phầncủa không gian (thế giới) mà trong đó A là đúng”
Không gian sự
kiện
(
khôn
g
g
ian

(
g
g
củatấtcả các giá
trị có thể xảyra
của A)
Không gian mà
trong đó A là
đúng
Không gian mà
[
http://www cs cmu edu/~awm/tutorials
]
Không

gian



trong đó A là sai
7
Khai Phá Dữ Liệu
[
http://www
.
cs
.
cmu
.
edu/~awm/tutorials

]
Các biến ngẫu nhiên Bool
 Một biến ngẫu nhiên Bool có thể nhận một trong 2 giá trị
đúng (
true
)hoặcsai(
false
)
đúng

(
true
)

hoặc

sai

(
false
)
 Các tiên đề

0

P(A)

1

0



P(A)


1
• P(true)= 1

P(false)
=
0
P(false)

0
• P(A V B)= P(A) + P(B) - P(A ∧ B)

Các hệ quả

Các

hệ

quả

• P(not A)≡ P(~A)= 1 - P(A)

P(A)
=
P(A


B) + P(A

~B)
P(A)

P(A


B)

+

P(A


B)
8
Khai Phá Dữ Liệu
Các biến ngẫu nhiên nhiều giá trị
Một biến ngẫu nhiên nhiều giá trị có thể nhận một trong số
k
(
>2
)

g
iá trị {v
1
,
v

2
,
…,v
k
}
()g
1
2
k
jivAvAP
ji

=
=

= if 0)(
P(A=v
1
V A=v
2
V V A=v
k
) = 1

=
=
=


=


=
i
v
A
P
v
A
v
A
v
A
P
2
1
)
(
)
(
1)( ==

k
j
vAP

=



j

j
i
v
A
P
v
A
v
A
v
A
P
1
2
1
)
(
)

(
1=
j
[]
()
)(
1
21 j
i
j
i

vABPvAvAvABP =∧==∨∨=∨=∧

9
Khai Phá Dữ Liệu
[ />1
j
=
Xác suất có điều kiện (1)
 P(A|B) là phần của không gian (thế giới) mà trong đó A
là đúng, với điềukiện(đãbiết) là
B
đúng


đúng,

với

điều

kiện

(đã

biết)



B
đúng

 Ví dụ
•A: Tôi sẽ đi đá bóng vào ngày mai
•B: Trời sẽ không mưa vào ngày mai
•P(A|B): Xác suất của việc tôi sẽ đi đá bóng vào
ngày mai nếu (đã biết rằng) trời sẽ không mưa (vào
ài)
ng
à
y ma
i)
10
Khai Phá Dữ Liệu
Xác suất có điều kiện (2)
Định nghĩa:
)
,
(
)
|
(
B
A
P
B
A
P
Định

nghĩa:
)(

)
,
(
)
|
(
BP
B
A
P
=
Không
gian
Các h


q
uả:
gian


trong
đó B
đú
ệ q
P(A,B)=P(A|B).P(B)
đú
ng
Không gian mà
tron

g
đó
A
đún
g
P(A|B)+P(~A|B)=1

k
)
|
(
g
g

=
=
=
i
i
Bv
A
P
1
1
)
|
(
11
Khai Phá Dữ Liệu
Các biến độc lập về xác suất (1)

 Hai sự kiện A và B được gọi là độc lập về xác suất nếu
xác suất của sự kiện
A
là như nhau đối với các trườn
g

g
hợp:
• Khi sự kiện B xảy ra, hoặc

Khi sự kiện
B
không xảyra hoặc

Khi

sự

kiện

B
không

xảy

ra
,
hoặc
• Không có thông tin (không biết gì) về việc xảy ra của sự kiện B


Ví dụ



dụ
•A: Tôi sẽ đi đá bóng vào ngày mai
•B: Tuấn sẽ tham
g
ia tr

n đá bón
g
n
g
à
y
mai
g ậ ggy
•P(A|B) = P(A)
→ “Dù Tuấn có tham gia trận đá bóng ngày mai hay không cũng không
ả hh ở tới ết đị h ủ tôi ề iệ đi đábó à i”

n
h

h
ư

ng
tới

quy
ết

đị
n
h
c

a
tôi
v

v
iệ
c
đi

đá


ng ng
à
y ma
i
.

12
Khai Phá Dữ Liệu
Các biến độc lập về xác suất (2)
Từ định nghĩa của các biến độc lập về xác suất

P(A|B)
=
P(A)
, chúng ta thu đượccácluậtnhư sau
P(A|B) P(A)
,

chúng

ta

thu

được

các

luật

như

sau
• P(~A|B) = P(~A)
• P(B|A) = P(B)
• P(A,B) = P(A). P(B)
• P(~A,B) = P(~A). P(B)
• P(A,~B) = P(A). P(~B)
• P(~A,~B) = P(~A). P(~B)
13
Khai Phá Dữ Liệu

Xác suất có điều kiện với >2 biến
 P(A|B,C) là xác suấtcủa A đốivới(đã
biết
)
à
C
biết
)
B v
à
C
 Ví dụ
B C
• A: Tôi sẽđidạobờ sông vào sáng mai
• B: Thờitiết sáng mai rất đẹp
C
Tôi

dậ

à
á
i
A
P(A|B C)

C
:
Tôi
s


dậ
ys

mv
à
os
á
ng ma
i
• P(A|B,C): Xác suấtcủaviệctôisẽđidạo
d

cbờ sôn
g
vào sán
g
mai
,
nếu
(
đãbiếtrằn
g
)

P(A|B
,
C)

g

g
,
(
g
)
thờitiết sáng mai rất đẹpvàtôisẽ dậysớm
vào sáng mai
14
Khai Phá Dữ Liệu
Độc lập có điều kiện
 Hai biến A và C được gọi là độc lập có điều kiện đối với
biến
B
,nếuxácsuấtcủa
A
đốivới
B
bằng xác suấtcủa
A
biến

B
,

nếu

xác

suất


của

A
đối

với

B
bằng

xác

suất

của

A
đối với B và C
 Côn
g
thức đ

nh n
g
hĩa:
P
(A|B
,
C) = P(A|B)
g ị g

,
 Ví dụ
• A: Tôi sẽ đi đá bóng vào ngày mai
• B: Trận đá bóng ngày mai sẽ diễn ra trong nhà
• C: Ngày mai trời sẽ không mưa

P(A|B,C)
=
P(A|B)
P(A|B,C) P(A|B)
→ Nếu biết rằng trận đấu ngày mai sẽ diễn ra trong nhà, thì xác
suất của việc tôi sẽ đi đá bóng ngày mai không phụ thuộc
vào thờitiết
vào

thời

tiết
15
Khai Phá Dữ Liệu
Các quy tắc quan trọng của xác suất
 Quy tắc chuỗi (chain rule)

P(A
B)
=
P(A|B) P(B)
=
P(B|A) P(A)


P(A
,
B)
=

P(A|B)
.
P(B)
=

P(B|A)
.
P(A)
• P(A|B) = P(A,B)/P(B) = P(B|A).P(A)/P(B)

P(A,B|C)
=
P(A
,
B
,
C)/P(C)
=
P(A|B
,
C).P(B
,
C)/P(C)
P(A,B|C)


P(A
,
B
,
C)/P(C)

P(A|B
,
C).P(B
,
C)/P(C)
= P(A|B,C).P(B|C)
Độclậpvề xác suấtvàđộclậpcóđiềukiện

Độc

lập

về

xác

suất



độc

lập




điều

kiện
• P(A|B) = P(A); nếu A và B là độc lập về xác suất

P(A
,
B|C)
=
P(A|C).P(B|C)
;nếu
A

B
là độclậpcóđiều
P(A
,
B|C)

P(A|C).P(B|C)
;

nếu

A


B



độc

lập



điều

kiện đối với C
• P(A
1
,…,A
n
|C) = P(A
1
|C)…P(A
n
|C); nếu A
1
,…,A
n
là độc lập
có điềukiện đốivới
C


điều


kiện

đối

với

C
16
Khai Phá Dữ Liệu
Định lý Bayes
)
(
)().|(
)|(
D
P
hPhDP
DhP =
 P(h): Xác suất trước (prior probability) của giả thiết (vd: phân
)
(
D
P
lớp) h
 P(D): Xác suất trước của sự kiện tập dữ liệu D được quan sát
ấ ủ
 P(D|h): Xác su

t c


a sự kiện tập dữ liệu
D
được quan sát,
nếu biết rằng giả thiết h là đúng

P(h|D)
:Xácsuất(cóđiềukiện) củagiả thiết
h
là đúng nếu

P(h|D)
:

Xác

suất

(có

điều

kiện)

của

giả

thiết

h



đúng
,
nếu

biết rằng tập dữ liệu D được quan sát
→ Các phương pháp suy diễn dựa trên xác suất sẽ sử
dụng xác suấtcóđiềukiện(
posterior probability
) này!
dụng

xác

suất



điều

kiện

(
posterior

probability
)

này!

17
Khai Phá Dữ Liệu
Định lý Bayes – Ví dụ (1)
Giả sử chúng ta có tập dữ liệu sau (dự đoán 1 người có chơi tennis)?
Ngày
Ngoài
trời
Nhiệt
độ
Độ
ẩm
Gió
Chơi
tennis
Ngày
Ngoài
trời
Nhiệt
độ
Độ
ẩm
Gió
Chơi
tennis
N1 Nắng Nóng Cao Yếu Không
N2 Nắng Nóng Cao Mạnh Không
N3
Â

C

Yế

N3
Â
mu

ng
C
ao
Yế
u

N4 MưaBìnhthường Cao YếuCó
N5 MưaMátmẻ Bình thường YếuCó

N6 MưaMátm

Bình thường Mạnh Không
N7 Âm u Mát mẻ Bình thường Mạnh Có
N8 Nắng Bình thường Cao Yếu Không

ế
N9 N

ng Mát mẻ Bình thường Y
ế
uCó
N10 MưaBìnhthường Bình thường YếuCó
N11 Nắng Bình thường Bình thường Mạnh Có
18

Khai Phá Dữ Liệu
N12 Âm u Bình thường Cao Mạnh Có
[Mitchell, 1997]
Định lý Bayes – Ví dụ (2)
 Giả thiết h: Anh ta chơi tennis
Tậpdữ liệu
D
:
Ngoài trời

nắng

Gió

mạnh

Tập

dữ

liệu

D
:

Ngoài

trời



nắng


Gió


mạnh
 Xác suất P(h): Xác suất rằng anh ta chơi tennis (bất kể
N
g
oài trời như thế nào và Gió ra sao
)
g
)
 Xác suất P(D): Xác suất rằng Ngoài trời là nắng và Gió là
mạnh
 P(D|h): Xác suất rằng Ngoài trời là nắng và Gió là mạnh,
nếu biết rằng anh ta chơi tennis
P(h|D)
:Xácsuấtrằng anh ta chơi tennis nếubiếtrằng

P(h|D)
:

Xác

suất

rằng


anh

ta

chơi

tennis
,
nếu

biết

rằng

Ngoài trời là nắng và Gió là mạnh
 Giá trị xác suất có điều kiện nà
y
sẽ được dùn
g
để dự đoán xem anh ta có
y g
chơi tennis hay không?
19
Khai Phá Dữ Liệu
Cực đại hóa xác suất có điều kiện
 Vớimộttập các giả thiết (các phân lớp) có thể H, hệ thống học
sẽ tìm
g
iả thiế
t

có th

xả
y
ra nhấ
t
(
the most
p
robable
g
y
(
p
hypothesis) h(∈H) đốivớicácdữ liệu quan sát được D
 Giả thiết h này đượcgọilàgiả thiếtcực đại hóa xác suấtcó
điềukiện(maximum a posteriori – MAP)
)|(maxarg DhPh
M
AP
=
Hh∈
)
(
)().|(
maxarg
D
P
hPhDP
h

H
h
MAP

=
(bởi định lý Bayes)
)
(
D
P
H
h

)().|(maxarg hPhDPh
H
h
MAP

=
(P(D) là như nhau
đối với các
g
iả thiết
h
)
20
Khai Phá Dữ Liệu
H
h


g
)
MAP – Ví dụ
 Tập H bao gồm2 giả thiết(cóthể)
• h
1
: Anh ta chơi tennis
1
• h
2
: Anh ta không chơi tennis
 Tính giá trị của2 xácxuấtcóđiềukiện: P(h
1
|D), P(h
2
|D)
 Giả thiếtcóthể nhất h
MAP
=h
1
nếu P(h
1
|D) ≥ P(h
2
|D); ngược
lạithìh
MAP
=h
2


Bởi

P(D)
=
P(D h
)
+
P(D h
)

như
nhau
đối
với
cả
2
giả

Bởi

P(D)
=
P(D
,
h
1
)
+
P(D
,

h
2
)

như
nhau
đối
với
cả
2

giả
thiết h
1
và h
2
, nên có thể bỏ qua đạilượng P(D)
 Vì v
ậy
,
cần tính 2 biểuthức:
P(
D
|
h
1
)
.P
(
h

1
)

ậy
,
(|
1
)(
1
)
P(D|h
2
).P(h
2
), và đưa ra quyết định tương ứng
• Nếu P(D|h
1
).P(h
1
) ≥ P(D|h
2
).P(h
2
), thì kếtluận là anh ta chơi tennis
N
l i
thì
kết
l ậ


h
t
khô
h i
ti

N
gược
l

i
,
thì
kết
l
u

n

an
h

t
a
khô
ng c
h
ơ
i
t

enn
i
s
21
Khai Phá Dữ Liệu
Đánh giá khả năng xảy ra cao nhất
 Phương pháp MAP: Với một tập các giả thiết có thể H, cần
tìm m

t
g
iả thiết c

c đ

i hóa
g
iá tr

: P
(
D
|
h
)
.P
(
h
)
ộ g ự ạ g ị

(|) ()
 Giả sử (assumption) trong phương pháp đánh giá khả năng
xảy ra cao nhất (maximum likelihood estimation – MLE):
Tất ả áiả thiết đề óiátị á ấtt ớ h h
Tất
c

c
á
c g
iả

thiết

đề
u c
ó
g


t
r

x
á
c su
ất

t



c n
h
ư n
h
au:
P(h
i
)=P(h
j
), ∀h
i
,h
j
∈H
 Phươn
g

p

p
MLE tìm
g
iả thiết c

c đ

i hóa
g
iá tr



P(
D
|
h
)
;

gp p g ự ạ g ị
(|)
;
trong đó P(D|h) được gọi là khả năng xảy ra (likelihood) của
dữ liệu D đối với h
Giả thiết đ ihó khả ă ả ( i lik lih d

Giả

thiết
cực
đ

i


a
khả
n
ă
ng x


y ra
(
max
i
mum
lik
e
lih
oo
d

hypothesis)
)|(maxarg hDPh
H
h
MLE

=
22
Khai Phá Dữ Liệu
H
h

MLE – Ví dụ
 Tập H bao gồm 2 giả thiết có thể
• h
1
: Anh ta chơi tennis
• h

2
: Anh ta không chơi tennis
D: Tập dữ liệu (các ngày) mà trong đó thuộc tính Outlook có giá trị Sunny
và thuộc tính Wind có giá trị Strong
 Tính 2 giá trị khả năng xảy ra (likelihood values) của dữ liệu D
đối với 2 giả thiết: P(D|h
1
) và P(D|h
2
)

P(Ngoài
-
trời
=
Nắng
Gió
=
Mạnh
|
h
)
=1/8

P(Ngoài
-
trời
=
Nắng
,

Gió
=
Mạnh
|
h
1
)

=

1/8
• P(Ngoài-trời=Nắng, Gió=Mạnh | h
2
) = 1/4
 Giả thiết MLE h
MLE
=
h
1
nếu
P
(D|h
1
)
≥ P(D|h
2
)
; và n
g
ư


c
MLE
1
1
2
g ợ
lại thì h
MLE
=h
2
→ Bởi vì P(Ngoài-trời=Nắng, Gió=Mạnh |h
1
) < P(Ngoài-
trời=Nắn
g
,

G
ió=M

nh
|
h
2
)
,
h

thốn

g
kết lu

n rằn
g
:
A
nh ta sẽ
g
,

|
2
)
, ệ g ậ g
không chơi tennis!
23
Khai Phá Dữ Liệu
Phân loại Naïve Bayes (1)
 Biểudiễn bài toán phân loại (classification problem)

Một
tập
học
D train
trong
đó
mỗi

dụ

học
x
được
biểu
diễn


Một

tập
học
D
_
train
,
trong
đó
mỗi

dụ
học
x
được
biểu
diễn


một vectơ n chiều: (x
1
, x

2
, , x
n
)
• Một tậpxácđịnh các nhãn lớp: C={c
1
, c
2
, , c
m
}
• Vớimột ví dụ (mới) z, z sẽđược phân vào lớp nào?
 Mục tiêu: Xác định phân lớpcóthể (phù hợp) nhất đốivới z
)|(maxarg zcPc
i
Cc
MAP
i

=
)
|
(
max
arg
2
1
i
MAP
z

z
z
c
P
c
=
)
, ,,
|
(
max
arg
2
1
n
i
Cc
MAP
z
z
z
c
P
c
i

)
, ,
,
(

)().|, ,,(
maxarg
2
1
21
n
iin
C
c
MAP
z
z
z
P
cPczzzP
c
i

=
(bởi định lý Bayes)
24
Khai Phá Dữ Liệu
)
, ,
,
(
2
1
n
C

c
i

Phân loại Naïve Bayes (2)
 Để tìm được phân lớpcóthể nhất đốivới z…
)
(
)
|
(
(
P(z
z
z
)

)
(
)
.
|
, ,,
(
maxarg
21 iin
Cc
MAP
c
P
c

z
z
z
P
c
i

=
(
P(z
1
,z
2
,
,
z
n
)


như nhau với các lớp)

Giả sử (assumption) trong phương pháp phân loại Naïve

Giả

sử

(assumption)


trong

phương

pháp

phân

loại

Naïve

Bayes. Các thuộc tính là độc lập có điều kiện (conditionally
independent) đối với các lớp
n

=
=
n
j
ijin
czPczzzP
1
21
)|()|, ,,(

Phân loại Naïve Bayes tìm phân lớpcóthể nhất đốivới
z

Phân


loại

Naïve

Bayes

tìm

phân

lớp



thể

nhất

đối

với

z

=

=
n
j

iji
Cc
NB
czPcPc
i
1
)|().(maxarg
25
Khai Phá Dữ Liệu
j

×