Professional Documents
Culture Documents
Chuong 5
Chuong 5
CHƯƠNG 5
CÁC KỸ THUẬT
PHÂN LỚP
1
9/4/2020
2
9/4/2020
◦ Đầu ra: mô hình phân lớp như luật phân lớp, cây
quyết định hoặc công thức toán mô tả lớp.
3
9/4/2020
Ví dụ phân lớp:
◦ Phân lớp khách hàng đề có cho vay vốn hay không.
Training
Data
Classifier
NAME RANK YEARS TENURED (Model)
Mike Assistant Prof 3 no
Mary Assistant Prof 7 yes
Bill Professor 2 yes IF rank = ‘professor’
Jim Associate Prof 7 yes
Dave Assistant Prof 6 no
OR years > 6
Anne Associate Prof 3 no THEN tenured = ‘yes’
8
4
9/4/2020
Classifier
Testing
Data Unseen Data
(Jeff, Professor, 4)
NA M E RANK YEARS TENURED
Tom Assistant Prof 2 no
M erlisa Associate Prof 7 no
Tenured?
G eorge Professor 5 yes
Joseph Assistant Prof 7 yes
9
10
5
9/4/2020
◦ Tốc độ
11
12
6
9/4/2020
no yes yes
13
◦ SLIQ, SPRINT
14
7
9/4/2020
◦ Thuộc tính được chọn là thuộc tính có lợi nhất cho quá trình phân
lớp
15
H (Y | X ) Pr( X v) H (Y | X v)
v:values of X
Y: là nhãn lớp
X: là thuộc tính
v: giá trị của thuộc tính X
Pr(Y|X=v): xác suất Y có điều kiện X=v
H(Y|X): là độ hỗn loạn trung bình của X
16
8
9/4/2020
18
9
9/4/2020
Hình dáng
Kích cỡ Màu
Lớn Đỏ sắc Cầu Nón
Nhỏ Xanh Hộp Trụ
Trung bình Vàng
√1 √2 3 5
√4 √2 √1 3 √4 6
√1 √7 √2 √4 √7
6
3 5
5 6
√7
19
20
10
9/4/2020
Hình dáng
Cầu Nón
Hộp
Trụ
Mua Mua ? Không mua
21
Kích cỡ
Màu sắc
Trung Xanh Đỏ
bình
3 3 √7
√7
11
9/4/2020
Màu sắc
Đỏ Xanh
Cầu Nón
Hộp Trụ
Mua Mua Không mua
Màu sắc
Đỏ Xanh
Mua Không mua
23
BÀI TẬP
Hãy cho biết các quyết định chưa biết (có dấu ?)
9/4/2020 24
12
9/4/2020
25
26
13
9/4/2020
27
28
14
9/4/2020
29
30
15
9/4/2020
31
32
16
9/4/2020
33
34
17
9/4/2020
Điều kiện dừng hay Để tránh overfitting, ta không tiếp tục phân chia
node đó và coi nó là một leaf node:
◦ Nếu tổng số leaf node vượt quá một ngưỡng nào đó.
◦ Nếu khoảng cách từ node đó đến root node đạt tới một giá trị nào
đó.
36
18
9/4/2020
37
19
9/4/2020
20
9/4/2020
◦ GainRatio(A) = Gain(A)/SplitInfo(A)
v | Dj | | Dj |
SplitInfo A ( D) log 2 ( )
j 1 |D| |D|
42
21
9/4/2020
5 5 5 5
𝑆𝑝𝑙𝑖𝑡𝐼𝑛𝑓𝑜 ờ ế D =− × 𝑙𝑜𝑔 − × 𝑙𝑜𝑔
14 14 14 14
4 4
− × 𝑙𝑜𝑔
14 14
43
44
22
9/4/2020
45
◦ Nếu thuộc tính A chia tập dữ liệu huấn luyện thành v tập con thì
| D1 | |D |
gini A ( D ) gini ( D 1) ... v gini ( D v )
|D | |D |
◦ Chọn thuộc tính Gini Index nhỏ nhất để phân chia tập dữ liệu.
46
23
9/4/2020
47
◦ Ví dụ:
2 2
9 5
Gini( D) 1 0.459
14 14
5 4 5
Giniage ( D) Gini(2,3) Gini(4,0) Gini(3,2) 0.343
14 14 14
48
24
9/4/2020
◦ Information gain:
◦ Gain Ratio:
◦ Mất cân bằng trong trường hợp một bên quá nhỏ so với bên còn lại
49
Luật IF – THEN
50
25
9/4/2020
◦ Trong đó:
◦ “Điều kiện”: có thể là một hay nhiều thuộc tính kết hợp.
51
52
26
9/4/2020
coverage(R) =
53
Thì khi đó
Coverage(R) = = 40%
Accuracy(R) = = 50%
54
27
9/4/2020
55
56
28
9/4/2020
57
◦ Dựa trên lớp: các lớp (thuộc tính) được xếp theo độ phổ biến hay
theo chi phí khi phân lớp sai, các luật sẽ theo thứ tự ưu tiên của
các lớp này.
◦ Dựa trên luật: các luật được xếp hạng theo độ đo chất lượng luật
(độ chính xác, độ phủ, …) hoặc theo ý kiến chuyên gia
58
29
9/4/2020
59
◦ Mỗi luật được tạo ra từ mỗi nhánh (từ gốc đến lá).
◦ Mỗi cặp thuộc tính-giá trị dọc theo đường dẫn tạo
nên phép kết.
60
30
9/4/2020
61
Các luật
◦ IF age = young AND student = no THEN buys_computer = no
62
31
9/4/2020
63
◦ Chia tập huấn luyện thành các bảng con theo từng giá trị của lớp.
◦ Thưc hiện việc so sánh các giá trị của thuộc tính trong từng bảng con và
tính số lần xuất hiện.
64
32
9/4/2020
65
66
33
9/4/2020
67
68
34
9/4/2020
69
70
35
9/4/2020
71
72
36
9/4/2020
73
74
37
9/4/2020
Bài tập
Cho tập huấn luyện sau: giả sử thuộc tính chơi tennis là
thuộc tính phân lớp
Quang cảnh Nhiệt độ Độ ẩm Sức gió Chơi tennis
Nắng Nóng Cao Yếu Không
Nắng Nóng Cao Mạnh Không
Mây Nóng Cao Yếu Có
Mưa Trung bình Cao Yếu Có
Mưa Lạnh Bình Thường Yếu Có
Mưa Lạnh Bình Thường Mạnh Không
Mây Lạnh Bình Thường Mạnh Có
Nắng Trung bình Cao Yếu Không
Nắng Lạnh Bình Thường Yếu Có
Mưa Trung bình Bình Thường Yếu Có
Nắng Trung bình Bình Thường Mạnh Có
Mây Trung bình Cao Mạnh Có
Mây Nóng Bình Thường Yếu Có
Mưa Trung bình Cao Mạnh Không 75
Bài tập
Sử dụng lần lượt các tập luật thu được để xác định lớp
cho mẫu mới.
76
38
9/4/2020
Bài tập
Bước 1: Chia bảng theo thuộc tính Chơi tennis
Quang cảnh Nhiệt độ Độ ẩm Sức gió Chơi tennis
Mây Nóng Cao Yếu Có
Mưa Trung bình Cao Yếu Có
Mưa Lạnh Bình Thường Yếu Có
Mây Lạnh Bình Thường Mạnh Có
Nắng Lạnh Bình Thường Yếu Có
Mưa Trung bình Bình Thường Yếu Có
Nắng Trung bình Bình Thường Mạnh Có
Mây Trung bình Cao Mạnh Có
Mây Nóng Bình Thường Yếu Có
Quang cảnh Nhiệt độ Độ ẩm Sức gió Chơi tennis
Nắng Nóng Cao Yếu Không
Nắng Nóng Cao Mạnh Không
Mưa Lạnh Bình Thường Mạnh Không
Nắng Trung bình Cao Yếu Không
Mưa Trung bình Cao Mạnh Không
77
78
39
9/4/2020
79
Naïve Bayes xem các thuộc tính xảy ra độc lập với
nhau (lí do tại sao gọi là “naïve”).
80
40
9/4/2020
• Việc phân lớp là quá trình xác định P(Ci|X), xác suất mà giả thuyết
đúng với mẫu dữ liệu X cho trước.
• P(X|Ci) là khả năng quan sát mẫu X khi cho trước giả thuyết về
phân lớp.
81
P(X|Ci).P(Ci)
P(Ci|X) =
P(X)
• Do P(X) là hằng số cho mọi lớp nên chỉ cần tìm cực đại của:
P(X|Ci).P(Ci)
P(Ci|X) =
P(X)
82
41
9/4/2020
𝑃 𝑋𝐶 = 𝑃(𝑥 |𝐶 )
= 𝑃 𝑥 𝐶 𝑥𝑃 𝑥 𝐶 𝑥 … 𝑥𝑃(𝑥 |𝐶 )
Một tập học D_train, trong đó mỗi ví dụ học x được biểu diễn là một
vectơ n chiều: (x1, x2, … , xn)
83
X = (Age<=30, Income =
Medium, Student = Yes,
Credit_Rating = Fair)
84
42
9/4/2020
– C1:buys_computer = ‘yes’
– C2:buys_computer = ‘no’
85
– P(C1 ) = 9/14
– P(C2 ) = 5/14
• Tính giá trị xác suất của mỗi giá trị thuộc tính đối với mỗi phân lớp
86
43
9/4/2020
◦ P(X|C1)=P(Age=Young|C1).P(Income=Medium|C1).P(Student=Yes|C1).P(Cred
it_Rating=Fair|C1 ) = (2/9).(4/9).(6/9).(6/9) = 0.044
◦ P(X|C2)=P(Age=Young|C2).P(Income=Medium|C2).P(Student=Yes|C2).P(Cred
it_Rating=Fair|C2 ) = (3/5).(2/5).(1/5).(2/5) = 0.019
87
44
9/4/2020
89
◦ Sửa lỗi laplace bằng cách bổ sung mỗi trường hợp (Ci) một
dữ liệu “ảo”.
◦ P(income=low|Ci) = 1/1003;
◦ P(income=medium|Ci) = 991/1003;
◦ P(income=high|Ci) = 11/1003.
◦ Tổng quát
90
45
9/4/2020
Ví dụ
91
Ví dụ
Tính:
P(C1) = 9/14
P(C2) = 5/14
92
46
9/4/2020
Ví dụ
◦ P(C1|X1)=P(X1|C1)*P(C1)=P(C1)*P(sunny|y)*P(cool|y)*P(high|
y)*P(strong|y)=0.005
◦ P(C2|X1)=P(X1|C2)*P(C2)=P(C2)*P(sunny|n)*P(cool|n)*P(high|
n)*P(strong|n)=0.021
93
Ví dụ
• P(C1|X2)=P(X2|C1)*P(C1)=P(C1)*P(ovecast|y)*P(cool|y)*P(high|y
)*P(strong|y)=0.011
• P(C2|X2)=P(X2|C2)*P(C2)=P(C2)*P(ovecast|n)*P(cool|n)*P(high|n
)*P(strong|n)=0
94
47
9/4/2020
Ví dụ
95
Ví dụ
96
48
9/4/2020
Ví dụ
• P(C1|X2)=P(X2|C1)*P(C1)=P(C1)*P(ovecast|y)*P(cool|y)
*P(high|y)*P(strong|y)=0.011
• P(C2|X2)=P(X2|C2)*P(C2)=P(C2)*P(ovecast|n)*P(cool|n)
*P(high|n)*P(strong|n)=0.005
97
• Ưu điểm:
– Đạt được kết quả khá tốt trong hầu hết các trường hợp
• Khuyết điểm:
◦ Việc giả sử các thuộc tính độc lập có thể sẽ làm giảm độ chính xác
vì thực tế có thể tồn tại sự phụ thuộc giữa chúng.
98
49
9/4/2020
99
100
50
9/4/2020
D X, Y = 𝑥 −𝑦
101
Thuộc tính có giá trị lớn sẽ quyết định khoảng cách các đối
tượng. Income sẽ quyết đinh ???
Các thuộc tính có miền giá trị khác nhau chuẩn hóa:
102
51
9/4/2020
𝑣 − min 𝑣
𝑎 =
max 𝑣 − min 𝑣
Ví dụ: nhiệt độ có các giá trị 20, 24, 26, 27, 30 Giá trị chuẩn
hóa của 26 là:
26 − 20
= 0.6
30 − 20
103
104
52
9/4/2020
Bài tập
Cust Age Income(K) No. cards Response
Lâm 35 35 3 Yes
Hưng 22 50 2 No
Mai 28 40 1 Yes
Lan 45 100 2 No
Thủy 20 30 3 Yes
Tuấn 34 55 2 No
Minh 63 200 1 No
Vân 55 140 2 No
Thiện 59 170 1 No
Ngọc 25 40 4 Yes
Vinh 39 43 1 ?
106
53
9/4/2020
107
54