Phương pháp học Bayes Bayesian classificationcit.ctu.edu.vn/~dtnghi/dataminingR/bn.pdf ·...

24
Khoa Công Nghệ Thông Tin Trường Đại Học Cần Thơ Đỗ Thanh Nghị [email protected] Cần Thơ 12-02-2019 Phương pháp học Bayes Bayesian classification

Transcript of Phương pháp học Bayes Bayesian classificationcit.ctu.edu.vn/~dtnghi/dataminingR/bn.pdf ·...

Page 1: Phương pháp học Bayes Bayesian classificationcit.ctu.edu.vn/~dtnghi/dataminingR/bn.pdf · Giải thuật naive Bayes ngây thơ các thuộc tính (biến) có độ quan trọng

Khoa Công Nghệ Thông TinTrường Đại Học Cần Thơ

Đỗ Thanh Nghị[email protected]

Cần Thơ12-02-2019

Phương pháp học Bayes Bayesian classification

Page 2: Phương pháp học Bayes Bayesian classificationcit.ctu.edu.vn/~dtnghi/dataminingR/bn.pdf · Giải thuật naive Bayes ngây thơ các thuộc tính (biến) có độ quan trọng

Nội dung

Giới thiệu về Bayesian classification

Giải thuật học của naive Bayes

Kết luận và hướng phát triển

2

Page 3: Phương pháp học Bayes Bayesian classificationcit.ctu.edu.vn/~dtnghi/dataminingR/bn.pdf · Giải thuật naive Bayes ngây thơ các thuộc tính (biến) có độ quan trọng

Nội dung

Giới thiệu về Bayesian classification

Giải thuật học của naive Bayes

Kết luận và hướng phát triển

3

Page 4: Phương pháp học Bayes Bayesian classificationcit.ctu.edu.vn/~dtnghi/dataminingR/bn.pdf · Giải thuật naive Bayes ngây thơ các thuộc tính (biến) có độ quan trọng

Bayesian classification

lớp các giải thuật học

dựa trên định lý Bayes

mạng Bayes và naive Bayes

kết quả sinh ra có thể dịch được

giải quyết các vấn đề về phân lớp, gom nhóm, etc.

được ứng dụng thành công : phân tích dữ liệu, phân loại text, spam, etc.

4

Giới thiệu về Bayesian classification

Giải thuật học của naive Bayes

kết luận và hướng phát triển

Page 5: Phương pháp học Bayes Bayesian classificationcit.ctu.edu.vn/~dtnghi/dataminingR/bn.pdf · Giải thuật naive Bayes ngây thơ các thuộc tính (biến) có độ quan trọng

5

Giới thiệu về Bayesian classification

Giải thuật học của naive Bayes

kết luận và hướng phát triển

Top 10 DM algorithms (2015)

Page 6: Phương pháp học Bayes Bayesian classificationcit.ctu.edu.vn/~dtnghi/dataminingR/bn.pdf · Giải thuật naive Bayes ngây thơ các thuộc tính (biến) có độ quan trọng

Nội dung

Giới thiệu về Bayesian classification

Giải thuật học của naive Bayes

Kết luận và hướng phát triển

6

Page 7: Phương pháp học Bayes Bayesian classificationcit.ctu.edu.vn/~dtnghi/dataminingR/bn.pdf · Giải thuật naive Bayes ngây thơ các thuộc tính (biến) có độ quan trọng

Giải thuật naive Bayes

ngây thơ

các thuộc tính (biến) có độ quan trọng như nhau

các thuộc tính (biến) độc lập có điều kiện khi được cho lớp/nhãn

nhận xét

giả thiết các thuộc tính độc lập không bao giờ đúng

nhưng trong thực tế, naive Bayes cho kết quả khá tốt

7

Giới thiệu về Bayesian classification

Giải thuật học của naive Bayes

kết luận và hướng phát triển

Page 8: Phương pháp học Bayes Bayesian classificationcit.ctu.edu.vn/~dtnghi/dataminingR/bn.pdf · Giải thuật naive Bayes ngây thơ các thuộc tính (biến) có độ quan trọng

Dữ liệu weather, dựa trên các thuộc tính (Outlook, Temp, Humidity, Windy), quyết định (play/no)

8

Giới thiệu về Bayesian classification

Giải thuật học của naive Bayes

kết luận và hướng phát triển

Outlook Temp Humidity Windy Play

Sunny Hot High False No

Sunny Hot High True No

Overcast Hot High False Yes

Rainy Mild High False Yes

Rainy Cool Normal False Yes

Rainy Cool Normal True No

Overcast Cool Normal True Yes

Sunny Mild High False No

Sunny Cool Normal False Yes

Rainy Mild Normal False Yes

Sunny Mild Normal True Yes

Overcast Mild High True Yes

Overcast Hot Normal False Yes

Rainy Mild High True No

Page 9: Phương pháp học Bayes Bayesian classificationcit.ctu.edu.vn/~dtnghi/dataminingR/bn.pdf · Giải thuật naive Bayes ngây thơ các thuộc tính (biến) có độ quan trọng

Dữ liệu weather, dựa trên các thuộc tính (Outlook, Temp, Humidity, Windy), quyết định (play/no)

Outlook Temp Humidity Windy Play

Sunny Hot High False No

Sunny Hot High True No

Overcast Hot High False Yes

Rainy Mild High False Yes

Rainy Cool Normal False Yes

Rainy Cool Normal True No

Overcast Cool Normal True Yes

Sunny Mild High False No

Sunny Cool Normal False Yes

Rainy Mild Normal False Yes

Sunny Mild Normal True Yes

Overcast Mild High True Yes

Overcast Hot Normal False Yes

Rainy Mild High True No 9

Giới thiệu về Bayesian classification

Giải thuật học của naive Bayes

kết luận và hướng phát triển

5/14

5

No

9/14

9

Yes

Play

3/5

2/5

3

2

No

3/9

6/9

3

6

Yes

True

False

True

False

Windy

1/5

4/5

1

4

NoYesNoYesNoYes

6/9

3/9

6

3

Normal

High

Normal

High

Humidity

1/5

2/5

2/5

1

2

2

3/9

4/9

2/9

3

4

2

Cool2/53/9Rainy

Mild

Hot

Cool

Mild

Hot

Temperature

0/54/9Overcast

3/52/9Sunny

23Rainy

04Overcast

32Sunny

Outlook

5/14

5

No

9/14

9

Yes

Play

3/5

2/5

3

2

No

3/9

6/9

3

6

Yes

True

False

True

False

Windy

1/5

4/5

1

4

NoYesNoYesNoYes

6/9

3/9

6

3

Normal

High

Normal

High

Humidity

1/5

2/5

2/5

1

2

2

3/9

4/9

2/9

3

4

2

Cool2/53/9Rainy

Mild

Hot

Cool

Mild

Hot

Temperature

0/54/9Overcast

3/52/9Sunny

23Rainy

04Overcast

32Sunny

Outlook

Page 10: Phương pháp học Bayes Bayesian classificationcit.ctu.edu.vn/~dtnghi/dataminingR/bn.pdf · Giải thuật naive Bayes ngây thơ các thuộc tính (biến) có độ quan trọng

Dữ liệu weather, dựa trên các thuộc tính (Outlook, Temp, Humidity, Windy), quyết định (play/no)

5/14

5

No

9/14

9

Yes

Play

3/5

2/5

3

2

No

3/9

6/9

3

6

Yes

True

False

True

False

Windy

1/5

4/5

1

4

NoYesNoYesNoYes

6/9

3/9

6

3

Normal

High

Normal

High

Humidity

1/5

2/5

2/5

1

2

2

3/9

4/9

2/9

3

4

2

Cool2/53/9Rainy

Mild

Hot

Cool

Mild

Hot

Temperature

0/54/9Overcast

3/52/9Sunny

23Rainy

04Overcast

32Sunny

Outlook

5/14

5

No

9/14

9

Yes

Play

3/5

2/5

3

2

No

3/9

6/9

3

6

Yes

True

False

True

False

Windy

1/5

4/5

1

4

NoYesNoYesNoYes

6/9

3/9

6

3

Normal

High

Normal

High

Humidity

1/5

2/5

2/5

1

2

2

3/9

4/9

2/9

3

4

2

Cool2/53/9Rainy

Mild

Hot

Cool

Mild

Hot

Temperature

0/54/9Overcast

3/52/9Sunny

23Rainy

04Overcast

32Sunny

Outlook

10

Giới thiệu về Bayesian classification

Giải thuật học của naive Bayes

kết luận và hướng phát triển

Outlook Temp. Humidity Windy Play

Sunny Cool High True ? quyết định (play=yes/no)

Likelihood(yes) = 2/9 x 3/9 x 3/9 x 3/9 x 9/14 = 0.0053

Likelihood(no) = 3/5 x 1/5 x 4/5 x 3/5 x 5/14 = 0.0206

Xác suất :

P(yes) = 0.0053 / (0.0053 + 0.0206) = 0.205

P(no) = 0.0206 / (0.0053 + 0.0206) = 0.795

Page 11: Phương pháp học Bayes Bayesian classificationcit.ctu.edu.vn/~dtnghi/dataminingR/bn.pdf · Giải thuật naive Bayes ngây thơ các thuộc tính (biến) có độ quan trọng

Định lý Bayes

11

Giới thiệu về Bayesian classification

Giải thuật học của naive Bayes

kết luận và hướng phát triển

Probability of event H given evidence E :

A priori probability of H : Pr[H]

Probability of event before evidence is seen

A posteriori probability of H : Pr[H | E]

Probability of event after evidence is seen

]Pr[

]Pr[]|Pr[]|Pr[

E

HHEEH

Page 12: Phương pháp học Bayes Bayesian classificationcit.ctu.edu.vn/~dtnghi/dataminingR/bn.pdf · Giải thuật naive Bayes ngây thơ các thuộc tính (biến) có độ quan trọng

Luật Bayes

12

Giới thiệu về Bayesian classification

Giải thuật học của naive Bayes

kết luận và hướng phát triển

học phân lớp khi có dữ liệu đến

Evidence E = dữ liệu

Event H = giá trị lớp của dữ liệu

naïve :

]Pr[

]Pr[]|Pr[]|Pr[]|Pr[]|Pr[ 21

E

HHEHEHEEH n

Page 13: Phương pháp học Bayes Bayesian classificationcit.ctu.edu.vn/~dtnghi/dataminingR/bn.pdf · Giải thuật naive Bayes ngây thơ các thuộc tính (biến) có độ quan trọng

Luật Bayes

13

Giới thiệu về Bayesian classification

Giải thuật học của naive Bayes

kết luận và hướng phát triển

Outlook Temp. Humidity Windy Play

Sunny Cool High True ?Evidence E

xác suất của lớp “yes”

]|Pr[]|Pr[ yesSunnyOutlookEyes

]|Pr[ yesCooleTemperatur

]|Pr[ yesHighHumidity

]|Pr[ yesTrueWindy

]Pr[

]Pr[

E

yes

]Pr[149

93

93

93

92

E

Page 14: Phương pháp học Bayes Bayesian classificationcit.ctu.edu.vn/~dtnghi/dataminingR/bn.pdf · Giải thuật naive Bayes ngây thơ các thuộc tính (biến) có độ quan trọng

Xác suất = 0

14

Giới thiệu về Bayesian classification

Giải thuật học của naive Bayes

kết luận và hướng phát triển

giá trị của thuộc tính không xuất hiện trong tất cả các lớp(“Humidity = high” của lớp “yes”)

Probability will be zero!

A posteriori probability will also be zero!

sử dụng Laplace estimator

xác suất không bao giờ có giá trị 0

0]|Pr[ Eyes

0]|Pr[ yesHighHumidity

Page 15: Phương pháp học Bayes Bayesian classificationcit.ctu.edu.vn/~dtnghi/dataminingR/bn.pdf · Giải thuật naive Bayes ngây thơ các thuộc tính (biến) có độ quan trọng

Laplace estimator

15

Giới thiệu về Bayesian classification

Giải thuật học của naive Bayes

kết luận và hướng phát triển

ví dụ : thuộc tính outlook cho lớp yes

trọng số có thể không bằng nhau, nhưng tổng phải là 1

9

3/2

9

3/4

9

3/3

Sunny Overcast Rainy

9

2 1p

9

4 2p

9

3 3p

Sunny Overcast Rainy

Page 16: Phương pháp học Bayes Bayesian classificationcit.ctu.edu.vn/~dtnghi/dataminingR/bn.pdf · Giải thuật naive Bayes ngây thơ các thuộc tính (biến) có độ quan trọng

Giá trị thuộc tính nhiễu

16

Giới thiệu về Bayesian classification

Giải thuật học của naive Bayes

kết luận và hướng phát triển

học : bỏ qua dữ liệu nhiễu

phân lớp : bỏ qua các thuộc tính nhiễu

ví dụ :Outlook Temp. Humidity Windy Play

? Cool High True ?

Likelihood(yes) = 3/9 3/9 3/9 9/14 = 0.0238

Likelihood(no) = 1/5 4/5 3/5 5/14 = 0.0343

P(yes) = 0.0238 / (0.0238 + 0.0343) = 41

P(no) = 0.0343 / (0.0238 + 0.0343) = 59

Page 17: Phương pháp học Bayes Bayesian classificationcit.ctu.edu.vn/~dtnghi/dataminingR/bn.pdf · Giải thuật naive Bayes ngây thơ các thuộc tính (biến) có độ quan trọng

Dữ liệu liên tục

17

Giới thiệu về Bayesian classification

Giải thuật học của naive Bayes

kết luận và hướng phát triển

Page 18: Phương pháp học Bayes Bayesian classificationcit.ctu.edu.vn/~dtnghi/dataminingR/bn.pdf · Giải thuật naive Bayes ngây thơ các thuộc tính (biến) có độ quan trọng

Dữ liệu liên tục

18

Giới thiệu về Bayesian classification

Giải thuật học của naive Bayes

kết luận và hướng phát triển

giả sử các thuộc tính có phân phối Gaussian

hàm mật độ xác suất được tính như sau

mean

standard deviation

hàm mật độ xác suất f(x)

n

iix

n 1

1

n

iix

n 1

22 )(1

1

2

2

2

)(

2

1)(

x

exfKarl Gauss, 1777-1855great German mathematician

Page 19: Phương pháp học Bayes Bayesian classificationcit.ctu.edu.vn/~dtnghi/dataminingR/bn.pdf · Giải thuật naive Bayes ngây thơ các thuộc tính (biến) có độ quan trọng

Dữ liệu liên tục

19

Giới thiệu về Bayesian classification

Giải thuật học của naive Bayes

kết luận và hướng phát triển

ví dụ : 0340.02.62

1)|66(

2

2

2.62

)7366(

eyesetemperaturf

Page 20: Phương pháp học Bayes Bayesian classificationcit.ctu.edu.vn/~dtnghi/dataminingR/bn.pdf · Giải thuật naive Bayes ngây thơ các thuộc tính (biến) có độ quan trọng

Dữ liệu liên tục

20

Giới thiệu về Bayesian classification

Giải thuật học của naive Bayes

kết luận và hướng phát triển

phân lớp Outlook Temp. Humidity Windy Play

Sunny 66 90 true ?

Likelihood(yes) = 2/9 0.0340 0.0221 3/9 9/14 = 0.000036

Likelihood(no) = 3/5 0.0291 0.0380 3/5 5/14 = 0.000136

P(yes) = 0.000036 / (0.000036 + 0. 000136) = 20.9

P(no) = 0.000136 / (0.000036 + 0. 000136) = 79.1

Page 21: Phương pháp học Bayes Bayesian classificationcit.ctu.edu.vn/~dtnghi/dataminingR/bn.pdf · Giải thuật naive Bayes ngây thơ các thuộc tính (biến) có độ quan trọng

Nội dung

Giới thiệu về Bayesian classification

Giải thuật học của naive Bayes

Kết luận và hướng phát triển

21

Page 22: Phương pháp học Bayes Bayesian classificationcit.ctu.edu.vn/~dtnghi/dataminingR/bn.pdf · Giải thuật naive Bayes ngây thơ các thuộc tính (biến) có độ quan trọng

Kết luận

naïve Bayes

cho kết quả tốt trong thực tế mặc dù chịu những giả thiết về tính độc lập có điều kiện (khi được cho nhãn/lớp) của các thuôc tính

phân lớp không yêu cầu phải ước lượng một cách chính xác xác suất

dễ cài đặt, học nhanh, kết quả dễ hiểu

sử dụng trong phân loại text, spam, etc

tuy nhiên khi dữ liệu có nhiều thuộc tính dư thừa thì naïve Bayes không còn hiệu quả

dữ liệu liên tục có thể không tuân theo phân phối chuẩn (=> kernel density estimators)

22

Giới thiệu về Bayesian classification

Giải thuật học của naive Bayes

kết luận và hướng phát triển

Page 23: Phương pháp học Bayes Bayesian classificationcit.ctu.edu.vn/~dtnghi/dataminingR/bn.pdf · Giải thuật naive Bayes ngây thơ các thuộc tính (biến) có độ quan trọng

Hướng phát triển

naïve Bayes

chọn thuộc tính con từ các thuộc tính ban đầu

chỉ sử dụng các thuộc tính con để học phân lớp

mạng Bayes : mối liên quan giữa các thuộc tính

tìm kiếm thông tin (ranking)

23

Giới thiệu về Bayesian classification

Giải thuật học của naive Bayes

kết luận và hướng phát triển

Page 24: Phương pháp học Bayes Bayesian classificationcit.ctu.edu.vn/~dtnghi/dataminingR/bn.pdf · Giải thuật naive Bayes ngây thơ các thuộc tính (biến) có độ quan trọng