You are on page 1of 29

GIỚI THIỆU MÁY HỌC

MÔ HÌNH NAÏVE BAYES


TRÍ TUỆ NHÂN TẠO
Nội dung trình bày
2

 Giới thiệu Máy học


 Các vấn ñề và ví dụ của Máy học
 Mô hình Naïve Bayes
Học là gì?
3

 ghi nhớ ñiều gì ñó


 học các sự kiện qua quan sát và thăm dò
 cải thiện các kỹ năng vận ñộng và/hay nhận
thức qua việc luyện tập
 tổ chức tri thức mới thành các biểu diễn tổng
quát, hiệu quả

“Học là quá trình tự cải biến của hệ, rút ra từ


quá khứ những thứ giúp hành ñộng thích hợp
hơn trong tương lai”
Qui nạp
4

 Socrates là người, ñã chết.


 Platon là người, ñã chết.
 Aristote là người, ñã chết.
 …
 Tất cả mọi người ñều chết.
 Hawking là người, sẽ chết.
Phân loại Máy học
5

 Học có giám sát: cho trước một tập mẫu các


cặp input/output, tìm một luật thực hiện việc dự
ñoán các kết xuất gắn với các input mới
 Học không giám sát: cho trước một tập mẫu,
nhưng chưa gán nhãn, gom nhóm các mẫu
thành các cụm “tự nhiên”
 Học tăng cường: một agent tương tác với thế
giới thực hiện các quan sát, hành ñộng, và
ñược thưởng hay phạt; nó sẽ học ñể chọn các
hành ñộng theo cách ñể nhận ñược nhiều phần
thưởng
Học có giám sát
6

 Cho một tập các thuộc tính X1, X2, …, Xn gọi là


các thuộc tính quan sát. Xi có miền xác ñịnh DXi
 Một thuộc tính Y gọi là thuộc tính phân lớp. Y có
miền xác ñịnh DY
 Cho một tập các dữ liệu (gọi là dữ liệu học hay
huấn luyện): D = {<xt, yt>}, xt = <x1t, x2t, …, xnt>∈
DX1 x DX2 x … x DXn, yt ∈ DY. Mỗi phần tử trong D
gọi là một mẫu học
 Cho một mẫu quan sát x = <x1, x2, …, xn> hỏi giá
trị của thuộc tính phân lớp Y gắn với mẫu này là
gì? (hay x thuộc lớp nào?)
Học một Hàm
7

Cho trước một tập mẫu các cặp input/output, tìm một hàm
làm tốt ñược công việc biểu diễn mối quan hệ
 Phát âm: hàm ánh xạ từ ký tự sang âm thanh

 Ném một quả bóng: hàm ánh xạ từ vị trí ñích thành quỹ

ñạo cánh tay


 ðọc các chữ viết tay: hàm ánh xạ từ tập các ñiểm ảnh

thành các ký tự
 Chẩn ñoán bệnh: hàm ánh xạ từ các kết quả xét nghiệm

thành các loại bệnh tật


Các vấn ñề ñể học một hàm
8

 ghi nhớ

 lấy trung bình

 tổng quát hoá


Bài toán ví dụ
9

Khi nào thì lái xe (drive or walk) ? Phụ thuộc vào:


 nhiệtñộ (temperature)
 mưa tuyết dự kiến (expected precipitation)
 ngày trong tuần (day of the week)
 cô ấy có cần ñi mua sắm trên ñường về hay không
(whether she needs to shop on the way home)
 cô ấy ñang mặc gì (what’s she wearing)
Ghi nhớ
10

temp precip day shop clothes


80 none sat no casual walk
19 snow mon yes casual drive
65 none tues no casual walk
19 snow mon yes casual
Ghi nhớ
11

temp precip day shop clothes


80 none sat no casual walk
19 snow mon yes casual drive
65 none tues no casual walk
19 snow mon yes casual drive
Lấy trung bình
12
Xử lý nhiễu trong dữ liệu
temp precip day shop clothes
80 none sat no casual walk
80 none sat no casual drive
80 none sat no casual drive
80 none sat no casual walk
80 none sat no casual walk
80 none sat no casual walk
80 none sat no casual walk
80 none sat no casual
Lấy trung bình
13
Xử lý nhiễu trong dữ liệu
temp precip day shop clothes
80 none sat no casual walk
80 none sat no casual drive
80 none sat no casual drive
80 none sat no casual walk
80 none sat no casual walk
80 none sat no casual walk
80 none sat no casual walk
80 none sat no casual walk
Nhiễu cảm biến
14
Xử lý nhiễu trong dữ liệu
temp precip day shop clothes
81 none sat no casual walk
82 none sat no casual walk
78 none sat no casual drive
21 none sat no casual drive
18 none sat no casual drive
19 none sat no casual drive
17 none sat no casual drive
20 none sat no casual
Nhiễu cảm biến
15
Xử lý nhiễu trong dữ liệu
temp precip day shop clothes
81 none sat no casual walk
82 none sat no casual walk
78 none sat no casual drive
21 none sat no casual drive
18 none sat no casual drive
19 none sat no casual drive
17 none sat no casual drive
20 none sat no casual drive
Tổng quát hoá
16
Xử lý dữ liệu chưa từng gặp trước ñây
temp precip day shop clothes
71 none fri yes formal drive
38 none sun yes casual walk
62 rain weds no casual walk
93 none mon no casual drive
55 none sat no formal drive
80 none sat no casual walk
19 snow mon yes casual drive
65 none tues no casual walk
Tổng quát hoá
17
Xử lý dữ liệu chưa từng gặp trước ñây
temp precip day shop clothes
71 none fri yes formal drive
38 none sun yes casual walk
62 rain weds no casual walk
93 none mon no casual drive
55 none sat no formal drive
80 none sat no casual walk
19 snow mon yes casual drive
65 none tues no casual walk
58 rain mon no casual
Một phương pháp học ñơn giản
18
Nearest Neighbor
 Nhớ tất cả dữ liệu
 Khi ñược hỏi:
 Tìm dữ liệu ñã biết giống nhất
 Trả về kết quả gắn với dữ liệu ñó
Naïve Bayes
19

 Dựa trên luật suy diễn xác suất của Bayes


P(X | Y).P(Y)
P(Y | X ) = _________________
P(X)
 Cập nhật xác suất của giả thiết dựa trên chứng
cứ
 Chọn giả thiết có xác suất lớn nhất sau khi tích
hợp các chứng cứ
 Thuật toán ñặc biệt hữu ích cho các lĩnh vực có
nhiều ñặc trưng
Naïve Bayes (tt)
20

 Gọi X = (X1, X2, …, Xn) là các thuộc tính quan sát, Y


là thuộc tính phân lớp.
 Với quan sát x, tìm yk ∈ DY sao cho P(y = yk|x) là
lớn nhất.
P(x|y=yk).P(y=yk)
P(y = yk|x) = _______________________
P(x)
 P(x) là như nhau ñối với mọi phân lớp
 Mô hình Naïve Bayes giả sử các thuộc tính quan
sát ñộc lập có ñiều kiện khi cho trước Y
P(x|y=yk) = P(x1|y=yk).P(x2|y=yk)…P(xn|y=yk)
Naïve Bayes (tt)
21

 Các xác xuất tính bằng cách thống kê tần xuất


trong tập dữ liệu
 P(yk) = P(y=yk) = (số mẫu thuộc lớp yk)/(tổng
số mẫu)
 Ri(xi,yk) = P(Xi=xi|y=yk) = (số mẫu trong lớp yk
có Xi = xi)/(số mẫu của lớp yk)

 ∏i=1..nRi(xi,yk)
S(yk) = P(yk).
 Chọn lớp yk sao cho S(yk) lớn nhất
Ví dụ
22

f1 f2 f3 f4 y  P(1) = 5/10: tỷ lệ các mẫu


0 1 1 0 1 dương(y=1)
0 0 1 1 1  P(0) = 5/10: tỷ lệ các mẫu
1 0 1 0 1 âm(y=0)
0 0 1 1 1  R1(1,1) = 1/5: tỷ lệ tất cả các mẫu
0 0 0 0 1
dương có ñặc trưng 1 = 1
1 0 0 1 0  R1(0,1) = 4/5: tỷ lệ tất cả các mẫu
dương có ñặc trưng 1 = 0
1 1 0 1 0
 R1(1,0) = 5/5: tỷ lệ tất cả các mẫu
1 0 0 0 0
âm có ñặc trưng 1 = 1
1 1 0 1 0
 R1(0,0) = 0/5: tỷ lệ tất cả các mẫu
1 0 1 1 0 âm có ñặc trưng 1 = 0
Ví dụ
23

f1 f2 f3 f4 y R1(1,1) = 1/5 R1(0,1) = 4/5


0 1 1 0 1 R1(1,0) = 5/5 R1(0,0) = 0/5
0 0 1 1 1
1 0 1 0 1 R2(1,1) = 1/5 R2(0,1) = 4/5
0 0 1 1 1 R2(1,0) = 2/5 R2(0,0) = 3/5
0 0 0 0 1
1 0 0 1 0 R3(1,1) = 4/5 R3(0,1) = 1/5
1 1 0 1 0 R3(1,0) = 1/5 R3(0,0) = 4/5
1 0 0 0 0
1 1 0 1 0 R4(1,1) = 2/5 R4(0,1) = 3/5
1 0 1 1 0 R4(1,0) = 4/5 R4(0,0) = 1/5
Dự ñoán
R1(1,1) = 1/5 R1(0,1) = 4/5
R1(1,0) = 5/5 R1(0,0) = 0/5
R2(1,1) = 1/5 R2(0,1) = 4/5
R2(1,0) = 2/5 R2(0,0) = 3/5
R3(1,1) = 4/5 R3(0,1) = 1/5
R3(1,0) = 1/5 R3(0,0) = 4/5
R4(1,1) = 2/5 R4(0,1) = 3/5
R4(1,0) = 4/5 R4(0,0) = 1/5
 Mẫu mới x = <0,0,1,1>
 S(1) = P(1) * R1(0,1) * R2(0,1) * R3(1,1) * R4(1,1) = .205
 S(0) = P(0) * R1(0,0) * R2(0,0) * R3(1,0) * R4(1,0) = 0
 Ta có S(1) > S(0), do ñó dự ñoán lớp 1

Trang 24
Phép sửa lỗi Laplace
25

Tránh sự xuất hiện của 0 trong xác suất

•P(yk) = (số mẫu thuộc lớp yk + 1)/(tổng số mẫu + số phân


lớp)

•Ri(xi,yk) = (số mẫu trong lớp yk có Xi = xi + 1)/(số mẫu của


lớp yk + |DXi|)
Ví dụ với Sửa lỗi
26

f1 f2 f3 f4 y R1(1,1) = 2/7 R1(0,1) = 5/7


0 1 1 0 1 R1(1,0) = 6/7 R1(0,0) = 1/7
0 0 1 1 1
1 0 1 0 1 R2(1,1) = 2/7 R2(0,1) = 5/7
0 0 1 1 1 R2(1,0) = 3/7 R2(0,0) = 4/7
0 0 0 0 1
1 0 0 1 0 R3(1,1) = 5/7 R3(0,1) = 2/7
1 1 0 1 0 R3(1,0) = 2/7 R3(0,0) = 5/7
1 0 0 0 0
1 1 0 1 0 R4(1,1) = 3/7 R4(0,1) = 4/7
1 0 1 1 0 R4(1,0) = 5/7 R4(0,0) = 2/7
Dự ñoán
R1(1,1) = 2/7 R1(0,1) = 5/7
R1(1,0) = 6/7 R1(0,0) = 1/7
R2(1,1) = 2/7 R2(0,1) = 5/7
R2(1,0) = 3/7 R2(0,0) = 4/7
R3(1,1) = 5/7 R3(0,1) = 2/7
R3(1,0) = 2/7 R3(0,0) = 5/7
R4(1,1) = 3/7 R4(0,1) = 4/7
R4(1,0) = 5/7 R4(0,0) = 2/7
 Mẫu mới x = <0,0,1,1>
 S(1) = R1(0,1) * R2(0,1) * R3(1,1) * R4(1,1) = .156
 S(0) = R1(0,0) * R2(0,0) * R3(1,0) * R4(1,0) = .017
 Ta có S(1) > S(0), do ñó dự ñoán lớp 1

Trang 27
ðiều cần nắm
28

 Các vấn ñề của học máy


 Hiểu và sử dụng ñược mô hình Naïve Bayes
 Nắm ñược các vấn ñề của Naïve Bayes
Thắc mắc
29

You might also like