



















Preview text:
Chương 4: Phân lớp và dự báo Tổng quan • Phân lớp là gì? • Dự báo là gì?
• Giới thiệu cây quyết định
• Phân lớp kiểu Bayes
• Những phương pháp phân lớp khác
• Độ chính xác trong phân lớp
Chương 4: Phân lớp và dự báo Phân lớp là gì?
• Mục đích: dự đoán những nhãn phân lớp cho các bộ dữ liệu/mẫu mới
• Đầu vào: một tập các mẫu dữ liệu huấn luyện, với một
nhãn phân lớp cho mỗi mẫu dữ liệu
• Đầu ra: mô hình (bộ phân lớp) dựa trên tập huấn luyện
và những nhãn phân lớp
Chương 4: Phân lớp và dự báo
Ứng dụng phân lớp • Tín dụng • Tiếp thị
• Chẩn đoán y khoa
• Phân tích hiệu quả điều trị • ....
Chương 4: Phân lớp và dự báo Dự đoán là gì?
• Tương tự với phân lớp:
- Xây dựng một mô hình
- Sử dụng mô hình để dự đoán cho những giá trị chưa biết
• Phương thức chủ đạo:
- Hồi quy tuyến tính và nhiều cấp
- Hồi quy không tuyến tính
Chương 4: Phân lớp và dự báo Quy trình phân lớp
• Bước 1: Xây dựng mô hình
- Mô tả các lớp xác định trước
- Tìm luật phân lớp
• Bước 2: Sử dụng mô hình
- Phân lớp các đối tượng chưa biết
- Xác định độ chính xác của mô hình
Chương 4: Phân lớp và dự báo
Các kỹ thuật phân lớp
• Phương pháp sử dụng cây quyết định
• Phương pháp phân lớp xác suất Bayes • Mạng Nơron • Tập thô • ......
Chương 4: Phân lớp và dự báo
Phân lớp dựa trên cây quyết định
Cây quyết định: là một cấu trúc phân cấp của các nút và
các nhánh biểu diễn dưới dạng cây.
1. Dữ liệu dạng các bản ghi: (x,y)=(x ,x ,x ,..,x ,y) 1 2 3 k Trong đó:
- y: là biến phụ thuộc cần phân loại
- x : là các biến độc lập giúp phân loại i 2. Có 3 loại nút:
- Nút gốc: đỉnh trên cùng của cây
- Nút trong: biểu diễn một thuộc tính
- Nút lá: lớp quyết định
3. Nhánh: biểu diễn giá trị có thể có của thuộc tính
Chương 4: Phân lớp và dự báo
Các kiểu cây quyết định
Cây hồi quy (Regression tree):
Uớc lượng các hàm có giá trị là số thực
Ví dụ: ước tính giá một ngôi nhà, khoảng thời gian
một bệnh nhân nằm viện
Cây phân loại (Classification tree):
Phân loại theo các thuộc tính quyết định
Ví dụ: kết quả của một trận đấu (thắng hay thua).
Chương 4: Phân lớp và dự báo
Ví dụ cây quyết định
Tập dữ liệu huấn luyện Dữ liệu chơi golf
Các biến độc lập Biến phụ thuộc Quang cảnh Nhiệt độ Độ ẩm Gió Chơi Nắng Nóng Cao Nhẹ Không Nắng Nóng Cao Mạnh Không Âm u Nóng Cao Nhẹ Có Mưa Ấm áp Cao Nhẹ Có Mưa Mát Trung bình Nhẹ Có Mưa Mát Trung bình Mạnh Không Âm u Mát Trung bình Mạnh Có Nắng Ấm áp Cao Nhẹ Không Nắng Mát Trung bình Nhẹ Có Mưa Ấm áp Trung bình Nhẹ Có Nắng Ấm áp Trung bình Mạnh Có Âm u Ấm áp Cao Mạnh Có Âm u Nóng Trung bình Nhẹ Có Mưa Ấm áp Cao Mạnh Không
Chương 4: Phân lớp và dự báo
Ví dụ cây quyết định
Chương 4: Phân lớp và dự báo
Giải thuật quy nạp cây ID3
Đầu vào: Một tập hợp các tập huấn luyện.
Mỗi tập huấn luyện bao gồm các thuộc tính mô tả
một tình huống, hay một đối tượng nào đó, và một giá trị phân loại của nó.
Ví dụ: - Thuộc tính mô tả (Quang cảnh, Gió,..)
- Thuộc tính phân loại (Chơi Tennis?)
Đầu ra: Cây quyết định
- Có khả năng phân loại đúng đắn các ví dụ trong
tập dữ liệu rèn luyện
- Phân loại đúng cho cả các ví dụ chưa gặp trong tương lai.
Chương 4: Phân lớp và dự báo
Giải thuật quy nạp cây ID3
Function Induce_tree(tập_ví_dụ, tập_thuộc_tính)
if mọi ví dụ trong tập_ví_dụ đều nằm trong cùng một lớp then
return một nút lá được gán nhãn bởi lớp đó
else if tập_thuộc_tính là rỗng then
return nút lá được gán nhãn bởi tuyển của tất cả các lớp trong tập_ví_dụ else
- chọn một thuộc tính P, lấy nó làm gốc cho cây hiện tại;
- xóa P ra khỏi tập_thuộc_tính;
For mỗi giá trị V của P
- tạo một nhánh của cây gán nhãn V;
- Đặt vào phân_vùngV các ví dụ trong tập_ví_dụ có giá trị V tại thuộc tính P;
- Gọi Induce_tree(phân_vùngV, tập_thuộc_tính), gắn kết quả vào nhánh V End For End If End Function
Chương 4: Phân lớp và dự báo
Thuộc tính dùng để phân loại tốt nhất?
Độ đo độ hỗn loạn Entropy:
Gọi S là tập ví dụ Thành viên của S là một ví dụ
Trong đó: mỗi ví dụ thuộc một lớp quyết định hay có một giá trị phân loại.
• 0 Tập ví dụ S có số lượng ví dụ thuộc các loại khác nhau
• Entropy(S) = 0 Tập ví dụ S chỉ toàn ví dụ thuộc cùng
một loại, hay S là thuần nhất.
• Entropy(S) = 1 tập ví dụ S có các ví dụ thuộc các loại
khác nhau với độ pha trộn là cao nhất.
Chương 4: Phân lớp và dự báo
Thuộc tính dùng để phân loại tốt nhất?
Độ đo độ hỗn loạn Entropy:
Tập S là tập dữ liệu rèn luyện.
Giả sử thuộc tính phân loại có hai giá trị (Y/N)
Ta gọi: - p là phần các ví dụ có thuộc tính Y trong tập S. Y
- p là phần các ví dụ có thuộc tính N trong tập S. N Khi đó:
Entropy(S) = -p log p – p log p Y 2 Y N 2 N
Tổng quát cho tập S có nhiều hơn n thuộc tính phân loại (n>2): C
Entropy(S) = p log p i 2 i i1
Chương 4: Phân lớp và dự báo
Thuộc tính dùng để phân loại tốt nhất?
Độ đo độ lợi thông tin Information Gain: -
Phép đo này gọi là lượng thông tin thu được -
Lượng giảm entropy bị gây ra bởi việc phân chia các ví dụ theo thuộc tính này.
Tập S là tập dữ liệu rèn luyện
Độ lợi thông tin Gain(S,A) của thuộc tính A trên tập S, được định nghĩa như sau: | S | Gain(S, A) Entropy(S) v Entropy(S ) v v Valu es(A) | S |
Trong đó: - Values(A) là tập hợp có thể có các giá trị của thuộc tính A
- S là tập con của S chứa các ví dụ có thuộc tính A mang giá V trị v.
Chương 4: Phân lớp và dự báo
Xây dựng cây quyết định
1. Độ hỗn loạn của tập dữ liệu: 𝟗 𝟗 𝟓 𝟓
Entropy(S) = - ( ) log ( ) - ( ) log ( ) = 0.940 𝟏𝟒 2 𝟏𝟒 𝟏𝟒 2 𝟏𝟒
Tập dữ liệu huấn luyện Quang cảnh Nhiệt độ Độ ẩm Gió Chơi Nắng Nóng Cao Nhẹ Không Nắng Nóng Cao Mạnh Không Âm u Nóng Cao Nhẹ Có Mưa Ấm áp Cao Nhẹ Có Mưa Mát Trung bình Nhẹ Có Mưa Mát Trung bình Mạnh Không Âm u Mát Trung bình Mạnh Có Nắng Ấm áp Cao Nhẹ Không Nắng Mát Trung bình Nhẹ Có Mưa Ấm áp Trung bình Nhẹ Có Nắng Ấm áp Trung bình Mạnh Có Âm u Ấm áp Cao Mạnh Có Âm u Nóng Trung bình Nhẹ Có Mưa Ấm áp Cao Mạnh Không
Chương 4: Phân lớp và dự báo
Xây dựng cây quyết định
2. Tính Gain cho từng thuộc tính:
Thuộc tính “Quang cảnh” Gain(S, Quang cảnh) 𝟓 𝟒 𝟓
= Entropy(S) – ( )Entropy(S )Entropy(S ) – ( ) Entropy(S 𝟏𝟒 Nắng) – (𝟏𝟒 Âm u 𝟏𝟒 Mưa) 𝟓 𝟐 𝟐 𝟑 𝟑 𝟒 𝟓 𝟑 𝟑 𝟐 𝟐
= 0.940 – ( )(- ( )log ( ) – ( )log ( )) - ( )(0) - ( )(- ( )log ( ) – ( )log ( )) 𝟏𝟒 𝟓 2 𝟓 𝟓 2 𝟓 𝟏𝟒 𝟏𝟒 𝟓 2 𝟓 𝟓 2 𝟓 = 0.246 Quang cảnh
Tập dữ liệu huấn luyện Quang cảnh Nhiệt độ Độ ẩm Gió Chơi Nắng Nóng Cao Nhẹ Không Nắng Nóng Cao Mạnh Không Nắng Âm u Mưa Âm u Nóng Cao Nhẹ Có Mưa Ấm áp Cao Nhẹ Có Mưa Mát Trung bình Nhẹ Có Mưa Mát Trung bình Mạnh Không Âm u Mát Trung bình Mạnh Có Chơi: 2 Chơi: 4 Chơi: 3 Nắng Ấm áp Cao Nhẹ Không Nắng Mát Trung bình Nhẹ Có Không: 3 Không: 0 Không: 2 Mưa Ấm áp Trung bình Nhẹ Có Nắng Ấm áp Trung bình Mạnh Có Âm u Ấm áp Cao Mạnh Có Âm u Nóng Trung bình Nhẹ Có Mưa Ấm áp Cao Mạnh Không
Chương 4: Phân lớp và dự báo
Xây dựng cây quyết định
2. Tính Gain cho từng thuộc tính:
Thuộc tính “Nhiệt độ” Gain(S, Nhiệt độ) 𝟒 𝟔 𝟒
= Entropy(S) – ( )Entropy(S ) – ( )Entropy(S ) – ( ) Entropy(S ) 𝟏𝟒 Nóng 𝟏𝟒 Ấm áp 𝟏𝟒 Mát 𝟒 𝟔 𝟒 𝟒 𝟐 𝟐 𝟒 𝟑 𝟑 𝟏 𝟏
= 0.940 – ( )(1) - ( )(- ( )log ( ) – ( )log ( )) - ( )(- ( )log ( ) – ( )log ( )) 𝟏𝟒 𝟏𝟒 𝟔 2 𝟔 𝟔 2 𝟔 𝟏𝟒 𝟒 2 𝟒 𝟒 2 𝟒 = 0.029 Nhiệt độ
Tập dữ liệu huấn luyện Quang cảnh Nhiệt độ Độ ẩm Gió Chơi Nắng Nóng Cao Nhẹ Không Nắng Nóng Cao Mạnh Không Nóng Ấm áp Mát Âm u Nóng Cao Nhẹ Có Mưa Ấm áp Cao Nhẹ Có Mưa Mát Trung bình Nhẹ Có Mưa Mát Trung bình Mạnh Không Âm u Mát Trung bình Mạnh Có Chơi: 2 Chơi: 4 Chơi: 3 Nắng Ấm áp Cao Nhẹ Không Nắng Mát Trung bình Nhẹ Có Không: 2 Không: 2 Không: 1 Mưa Ấm áp Trung bình Nhẹ Có Nắng Ấm áp Trung bình Mạnh Có Âm u Ấm áp Cao Mạnh Có Âm u Nóng Trung bình Nhẹ Có Mưa Ấm áp Cao Mạnh Không
Chương 4: Phân lớp và dự báo
Xây dựng cây quyết định
2. Tính Gain cho từng thuộc tính: Thuộc tính “Gió” Gain(S, Gió) 𝟔 𝟖
= Entropy(S) – ( )Entropy(S )Entropy(S 𝟏𝟒 Mạnh) – (𝟏𝟒 Nhẹ) 𝟔 𝟖 𝟔 𝟔 𝟐 𝟐
= 0.940 – ( )(1) - ( )(- ( )log ( ) – ( )log ( )) 𝟏𝟒 𝟏𝟒 𝟖 2 𝟖 𝟖 2 𝟖 = 0.048 Gió
Tập dữ liệu huấn luyện Quang cảnh Nhiệt độ Độ ẩm Gió Chơi Nắng Nóng Cao Nhẹ Không Nắng Nóng Cao Mạnh Không Mạnh Nhẹ Âm u Nóng Cao Nhẹ Có Mưa Ấm áp Cao Nhẹ Có Mưa Mát Trung bình Nhẹ Có Mưa Mát Trung bình Mạnh Không Âm u Mát Trung bình Mạnh Có Chơi: 3 Chơi: 6 Nắng Ấm áp Cao Nhẹ Không Nắng Mát Trung bình Nhẹ Có Không: 3 Không: 2 Mưa Ấm áp Trung bình Nhẹ Có Nắng Ấm áp Trung bình Mạnh Có Âm u Ấm áp Cao Mạnh Có Âm u Nóng Trung bình Nhẹ Có Mưa Ấm áp Cao Mạnh Không
Chương 4: Phân lớp và dự báo
Xây dựng cây quyết định
2. Tính Gain cho từng thuộc tính:
Thuộc tính “Độ ẩm” Gain(S, Độ ẩm) 𝟕 𝟕
= Entropy(S) – ( )Entropy(S ) – ( )Entropy(S ) 𝟏𝟒 Cao 𝟏𝟒 T.Bình 𝟕 𝟑 𝟑 𝟒 𝟒 𝟕 𝟔 𝟔 𝟏 𝟏
= 0.940 – ( )(- ( )log ( ) – ( )log ( )) - ( )(- ( )log ( ) – ( )log ( )) 𝟏𝟒 𝟕 2 𝟕 𝟕 2 𝟕 𝟏𝟒 𝟕 2 𝟕 𝟕 2 𝟕 = 0.151 Độ ẩm
Tập dữ liệu huấn luyện Quang cảnh Nhiệt độ Độ ẩm Gió Chơi Nắng Nóng Cao Nhẹ Không Nắng Nóng Cao Mạnh Không Cao T.bình Âm u Nóng Cao Nhẹ Có Mưa Ấm áp Cao Nhẹ Có Mưa Mát Trung bình Nhẹ Có Mưa Mát Trung bình Mạnh Không Âm u Mát Trung bình Mạnh Có Chơi: 3 Chơi: 6 Nắng Ấm áp Cao Nhẹ Không Nắng Mát Trung bình Nhẹ Có Không: 4 Không: 1 Mưa Ấm áp Trung bình Nhẹ Có Nắng Ấm áp Trung bình Mạnh Có Âm u Ấm áp Cao Mạnh Có Âm u Nóng Trung bình Nhẹ Có Mưa Ấm áp Cao Mạnh Không