2. 1. Giới thiệu
2. Cây quyết định
3. Từ CSDL đến cây định danh
4. Từ cây đến luật
5. Nhận xét
6. Tổng kết
7. Tài liệu tham khảo
12/9/2009 2
3. Machine Learning
Supervised Learning Un-supervised Learning
-Học 1 hàm từ dữ liệu
huấn luyện
-Dữ liệu huấn luyện là các
cặp (input,output)
-Bài toán: phân lớp (Hàm
học được áp dụng vào dữ
liệu chưa biết để xác định
output cho dữ liệu đó)
-Học để xác định tập dữ
liệu được phân bố như thế
nào
-Dữ liệu học không có nhãn
(output)
- Bài toán: gom nhóm
12/9/2009 3
4. Machine Learning
Supervised Learning Un-supervised Learning
Giải quyết bài toán phân
lớp:
-Cây quyết định
-Luật
-Naïve Bayes
-Mạng neural
-SVM
-…
-Học để xác định tập dữ
liệu được phân bố như thế
nào
-Dữ liệu học không có nhãn
(output)
- Bài toán: gom nhóm
12/9/2009 4
5. Là cấu trúc phân cấp các nút + nhánh
Mỗi nút được liên kết với 1 tập các câu trả
lời có thể
Mỗi nút không phải là lá được gắn với 1
test chia tập các câu trả lời thành các tập
con ứng với kết quả test
Mỗi nhánh là kết quả test từ tập các câu
trả lời xuống tập con
12/9/2009 5
7. Dữ liệu
quan sát
Cây quyết
định
Luật quyết
định
Dự đoán trên dữ
liệu chưa biết
12/9/2009 7
8. Có nhiều thuật toán xây dựng cây quyết
định:
12/9/2009 8
Hunt’sAlgorithm
CART
ID3, C4.5
Cây định danh
9. •Cơ sở dữ liệu
•Luật Occam
•Xây dựng cây định danh
•Độ hỗn loạn trung bình
•Thủ tục đâm chồi (Sprouter)
12/9/2009 9
10. Tập các mẫu quan sát được trong thực tế
Mỗi mẫu có 1 thuộc tính cuối cùng là
thuộc tính dùng để phân lớp (dự
đoán/định danh đối tượng)
Sử dụng để huấn luyện cây quyết định
12/9/2009 10
11. Name Hair
color
Height Weight Lotion Result
Sarah blonde average light no sunburned
Dana blonde tall average yes none
Alex brown short average yes none
Annie blonde short average no sunburned
Emily red short average no sunburned
Pete brown average heavy no none
John brown average heavy no none
Katie blonde short light yes none
12/9/2009 11
12. 3 màu tóc x 3 chiều cao x 3 cân nặng x 2 sử
dụng lotion = 54 tổ hợp có thể
12/9/2009 12
Xác suất 1 mẫu mới trùng với mẫu quan sát:
8/54 = 15%
Thực tế: số lượng thuộc tính và giá trị thuộc
tính rất lớn không thể tìm bằng cách so
khớp từ bảng
Hướng giải quyết:
Đề ra 1 thủ tục phân lớp chính xác từng mẫu
Thủ tục đúng trên số lượng đủ lớn mẫu có khả
năng đúng trên các mẫu mà nhãn lớp là chưa biết
13. Hair color
Lotion used
Emily
Alex
Pete
John
Sarah
Annie
Dana
Katie
blonde
red brown
No Yes
12/9/2009 13
14. Hair color
Weight
Alex
Annie
Blonde Red Brown
Height
Short Average
Tall
Weight
Dana
Pete
Sarah
Hair color
Blonde Red Brown
Katie
12/9/2009 14
Emily John
Average
Heavy
Light
Average
Heavy
Light
15. Thế giới vốn dĩ là đơn giản [*].
Cây định danh nhỏ nhất mà nhất quán với
các mẫu cây có khả năng nhất trong
việc phân lớp chính xác các đối tượng
chưa biết
Cây định danh (1) tốt hơn (2)
[*] William Ockham (1285–1349): "Entities should not be multiplied unnecessarily."
Làm sao xây dựng cây
12/9/2009 15
định danh nhỏ nhất?
16. Chỉ có thể xây dựng cây “nhỏ”, mặc dù
không đảm bảo là “nhỏ nhất”
Thủ tục: chia để trị
Tìm test cho nút gốc: Chia CSDL thành các tập
con với càng nhiều mẫu thuộc cùng 1 lớp càng tốt
Với mỗi tập chứa nhiều hơn 1 lớp, chọn 1 test
khác để chia tập không đồng nhất thành các tập
con đồng nhất
Điều kiện dừng:
Mỗi nút lá chỉ gồm các mẫu đồng nhất
Không còn thuộc tính nào có thể phân chia nữa
=> Thủ tục này cực tiểu hóa độ hỗn loạn dữ
liệu
12/9/2009 16
17. 12/9/2009 17
Hair color
Lotion used
Emily
Alex
Pete
John
red brown
No
Sarah
Annie
Emily
Pete
John
Yes
Dana
Alex
Katie
blonde
Sarah
Dana
Annie
Katie
Height
Dana
Pete
average
Sarah
Emily
John
tallshort
Alex
Annie
Katie
Weight
Emily
Pete
John
Average
Dana
Alex
Annie
HeavyLight
Sarah
Katie
18. Height
short average tall
Alex Sarah Dana
Annie Emily Pete
Katie John
Weight Lotion used
No Yes
Light Average Heavy Sarah
Annie Dana
Sarah Dana Emily
Emily Alex
Katie Alex Pete
Pete Katie
Annie John
John
Hair color
Emily
Alex
Pete
John
red
12/9/2009 18
brownblonde
Sarah
Dana
Annie
Katie
20. Height
short average tall
Annie Sarah Dana
Katie
Weight
Light Average Heavy
Sarah Dana
Katie Annie
Lotion used
No
Sarah
Annie
Yes
Dana
Katie
Hair color
Emily
Alex
Pete
John
red
12/9/2009 20
brownblonde
Sarah
Dana
Annie
Katie
21. c
12/9/2009 21
b
nbcnbc
nt nb nb
nb
log2Average disorder
Trong đó:
• nb là số mẫu của nhánh b
• nt là tổng số mẫu của tất cả các nhánh
• nbc là tổng số mẫu của nhánh b thuộc lớp c
22. Mô tả sự “hỗn loạn” trong 1 tập dữ liệu:
ĐHL = 0 nếu tập dữ liệu là đồng nhất (chỉ gồm 1
lớp)
ĐHL = 1 nếu tập dữ liệu chứa tất cả các lớp
c nb nb
nbc nbc
log2Disorder
Disorder
1.0
0.5
0
0 0.5 1.0
Fraction in one class
0.5
0
0 0.5 1.0
Fraction in one class
Disorder
1.0
12/9/2009 22
23. Hair color
Emily
Alex
Pete
John
red brownblonde
Sarah
Dana
Annie
Katie
0 0.5
3
8
0
4 2
log
8 4
Average disorder
2
4
Disorderin the branch b set
12/9/2009 23
b nt
2 2
log
2 1
4 2
4 8
nb
Test Disorder
Hair 0.5
28. Lặp đến khi: mỗi nút lá chỉ gồm các mẫu
đồng nhất hoặc không còn thuộc tính nào
có thể phân chia nữa
12/9/2009 28
Chọn 1 nút lá có tập các mẫu không đồng
nhất
Thay thế nút lá đó bằng 1 nút test mà nó sẽ
chia tập mẫu không đồng nhất thành các tập
không đồng nhất ở mức độ tối thiểu dựa vào
độ đo tính hỗn loạn
29. •Rút luật từ cây
•Loại bỏ các tiền đề luật không cần
thiết
•Loại bỏ luật thừa
•Thủ tục tỉa cành (Pruner)
12/9/2009 29
30. Theo dấu mỗi đường dẫn từ gốc lá
Lấy các phép thử làm tiền đề
Các nút lá làm kết luận
1. Nếu tóc vàng, có dùng kem thì không sao
2. Nếu tóc vàng, không dùng kem thì cháy
nắng
3. Nếu tóc đỏ thì cháy nắng
4. Nếu tóc nâu thì không sao
12/9/2009 30
31. Ai có dùng kem cũng không bị cháy nắng
1. Nếu tóc vàng, có dùng kem thì không sao
2. Nếu tóc vàng, không dùng kem thì cháy
nắng
3. Nếu tóc đỏ thì cháy nắng
4. Nếu tóc nâu thì không sao
12/9/2009 31
32. Có 2 luật cho kết luận cháy nắng, 2 luật
cho kết luận không sao
Có thể bỏ bớt 2 luật và thêm 1 luật mặc
định (được áp dụng khi không có luật nào
thỏa)
1. Nếu tóc vàng, không dùng kem thì cháy
nắng
2. Nếu tóc đỏ thì cháy nắng
3. Nếu không có luật nào thỏa thì không sao
12/9/2009 32
33. Tạo 1 luật cho mỗi đường đi từ gốc đến lá
trong cây quyết định
Đơn giản hóa mỗi luật bằng cách loại bỏ
những tiền đề không ảnh hưởng KL mà
cây có được
Thay thế những luật có chung KL bằng 1
luật mặc định mà luật này sẽ được kích
hoạt khi không có luật nào khác được kích
hoạt
12/9/2009 33
34. Ưu điểm của cây quyết định:
12/9/2009 34
Dễ xây dựng
Phân lớp mẫu mới nhanh
Dễ dàng diễn giải cho các cây kích thước nhỏ
Khuyết điểm:
Không thể học tăng cường
35. Ưu điểm của cây quyết định:
12/9/2009 35
Dễ xây dựng
Phân lớp mẫu mới nhanh
Dễ dàng diễn giải cho các cây kích thước nhỏ
Vấn đề gặp phải: quá khớp (Overfitting)
với dữ liệu huấn luyện do:
Dữ liệu nhiễu
Dữ liệu thiếu
=> Giảm độ chính xác khi phân lớp mẫu mới
36. Giải quyết overfitting:
12/9/2009 36
Loại bỏ trước: Dừng thêm nhánh cây
ngay khi nó tạo ra độ đo dưới 1 ngưỡng
nào đó
▪ Làm sao chọn ngưỡng??
Loại bỏ sau: Loại bớt nhánh từ cây hoàn
chỉnh (từ dưới lên)
▪ Sử dụng dữ liệu độc lập để kiểm tra và loại
bớt (đánh giá bằng percentage split hoặc
cross validation)
37. Theo luật Occam: thế giới đơn giản. Do vậy,
cách giải thích đơn giản nhất bao phủ được
toàn bộ dữ liệu là cách hiệu quả nhất
1 cách để định danh/phân lớp dữ liệu là sử
dụng cây quyết định với đường đi đến mỗi nút
là 1 phép thử
Sử dụng các độ đo để xác định nên dùng phép
thử trên thuộc tính nào của tập dữ liệu
Sau khi xây được cây, rút thành luật bằng cách
duyệt các đường đi từ gốc đến lá
Đơn giản tập luật bằng cách loại bớt các tiền đề
thừa và các luật thừa
12/9/2009 37
38. 1. Patrick H.
12/9/2009 38
W., “Artificial Intelligence”, Third
edition,1992
2. Russell S., “Artificial – A model approach”,
Second edition, 2003
3. Han J., “Data mining, Concepts and
Technique”, Second edition, 2006
4. Quinlan, J. R. 1986. Induction of Decision
Trees. Mach. Learn. 1, 1 (Mar. 1986), 81-106
5. Leech W. J., “A Rule Based Process Control
of the
Exhibit,
Method with Feedback,” Proceedings
International Conference and
Instrument Society of America, 1986