1. Trang chủ
  2. » Giáo Dục - Đào Tạo

tiểu luận giữa kì học máy i học cây quyết định

26 0 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Học Cây Quyết Định
Tác giả Trà Trần Quý Bình, Trần Thị Huyền Trang, Trương Bích Thảo, Lê Thị Thúy Trâm, Trần Khánh Duyên
Trường học Trường Đại Học Quy Nhơn
Chuyên ngành Học Máy I
Thể loại Tiểu luận giữa kì
Thành phố Quy Nhơn
Định dạng
Số trang 26
Dung lượng 0,91 MB

Nội dung

Một trường hợp được phân loại bằng cách bắt đầu từ nút gốc của cây, kiểm tra thuộc tính được chỉ định bởi nút này, sau đó di chuyển xuống nhánh cây tương ứng với giá trị của thuộc tính t

Trang 1

TRƯỜNG ĐẠI HỌC QUY NHƠN

KHOA TOÁN VÀ THỐNG KÊ

BÀI TIỂU LUẬN GIỮA KÌ

HỌC MÁY I

HỌC CÂY QUYẾT ĐỊNH

NHÓM 5 – LỚP TUDK44

Các thành viên và phân công nhiệm vụ :

+ Trà Trần Quý Bình (Trưởng nhóm) – Viết code và làm bài tập

+ Trần Thị Huyền Trang – Dịch và trình bày phần 3.1, 3.2 , 3.5

+ Trương Bích Thảo – Dịch và trình bày phần 3.4, 3.6

+ Lê Thị Thúy Trâm – Dịch và trình bày phần 3.7.1, 3.7.2

+ Trần Khánh Duyên – Dịch và trình bày phần 3.7.3, 3.7.4, 3.7.5, 3.8

Trang 2

MỤC LỤC

3.1 GIỚI THIỆU 2

3.2 BIỂU DIỄN CÂY QUYẾT ĐỊNH 2

3.3 CÁC VẤN ĐỀ PHÙ HỢP CHO HỌC CÂY QUYẾT ĐỊNH 3

3.4 THUẬT TOÁN HỌC CÂY QUYẾT ĐỊNH CƠ BẢN 4

3.4.1 THUỘC TÍNH NÀO PHÂN LOẠI TỐT NHẤT? 4

3.4.1.1 ENTROPY(ĐỘ MẤT CÂN BẰNG) ĐO TÍNH ĐỒNG NHẤT CỦA VÍ DỤ 4

3.4.1.2 INFORMATION GAIN ĐO MỨC GIẢM ENTROPY DỰ KIẾN 6

3.4.2 MỘT VÍ DỤ MINH HỌA 8

3.5 TÌM KIẾM KHÔNG GIAN GIẢ THUYẾT TRONG HỌC TẬP CÂY QUYẾT ĐỊNH 9

3.6 THIÊN HƯỚNG SUY LUẬN TRONG HỌC TẬP CÂY QUYẾT ĐỊNH 10

3.6.1 THIÊN HƯỚNG ƯU TIÊN VÀ THIÊN HƯỚNG HẠN CHẾ 11

3.6.2 TẠI SAO ƯU TIÊN CÁC GIẢ THUYẾT NGẮN? 12

3.7 CÁC VẤN ĐỀ TRONG HỌC TẬP CÂY QUYẾT ĐỊNH 13

3.7.1 TRÁNH QUÁ KHỚP DỮ LIỆU (OVERFITTING) 13

3.7.1.1 CẮT TỈA GIẢM LỖI (REDUCED ERROR PRUNING) 15

3.7.1.2 CẮT TỈA QUY TẮC SAU XÂY DỰNG (RULE POST-PRUNNING) 16

3.7.2 KẾT HỢP CÁC THUỘC TÍNH CÓ GIÁ TRỊ LIÊN TỤC 17

3.7.3 CÁC BIỆN PHÁP THAY THẾ ĐỂ CHỌN CÁC THUỘC TÍNH 18

3.7.4 XỬ LÝ CÁC VÍ DỤ HUẤN LUYỆN VỚI THUỘC TÍNH BỊ THIẾU 19

3.7.5 XỬ LÝ CÁC THUỘC TÍNH VỚI CHI PHÍ KHÁC NHAU 20

3.8 TÓM TẮT VÀ ĐỌC THÊM 20

BÀI TẬP 22

Trang 3

CHƯƠNG 3 HỌC CÂY QUYẾT ĐỊNH

Học cây quyết định là một trong những phương pháp thiết thực và được sử dụng rộng rãi nhất cho suy luận quy nạp Đây là một phương pháp để xấp xỉ các hàm giá trị rời rạc và có khả năng chống lại

dữ liệu nhiễu và có thể học được các biểu thức phân tách ( các mệnh đề được kết hợp với nhau bởi phép “hoặc” ( )) Chương này mô tả một danh sách các thuật toán tạo cây quyết định bao gồm các thuật toán được sử dụng rộng rãi như ID3, ASSISTANT và C4.5 Các phương pháp tạo cây quyết định này tìm kiếm một không gian giả thuyết biểu hiện hoàn toàn và do đó tránh được những khó khăn của các không gian giả thuyết bị hạn chế Thiên hướng suy luận của chúng là ưu tiên cây quyết định nhỏ hơn cây quyết định lớn

3.1 GIỚI THIỆU

Học cây quyết định là một phương pháp học máy có giám sát để xấp xỉ các hàm mục tiêu có giá trị rời rạc, trong đó hàm đã học được biểu diễn bằng một cây quyết định Các cây đã học cũng có thể được biểu diễn lại dưới dạng tập hợp các mệnh đề kiểu nếu-thì để cải thiện khả năng đọc của con người Các phương pháp học máy này là một trong những thuật toán suy luận quy nạp phổ biến nhất

và đã được áp dụng thành công cho một loạt các nhiệm vụ từ việc học để chẩn đoán các trường hợp y

tế đến học để đánh giá rủi ro tín dụng của người xin vay

3.2 BIỂU DIỄN CÂY QUYẾT ĐỊNH

Cây quyết định phân loại các trường hợp bằng cách sắp xếp chúng từ gốc cây xuống các nút lá, mỗi nút lá chính là phân loại của một trường hợp nào đó Mỗi nút trong cây xác định một phép thử của

một số thuộc tính của trường hợp và mỗi nhánh của một nút tương ứng với một trong những giá trị

của thuộc tính đó Một trường hợp được phân loại bằng cách bắt đầu từ nút gốc của cây, kiểm tra thuộc tính được chỉ định bởi nút này, sau đó di chuyển xuống nhánh cây tương ứng với giá trị của thuộc tính trong ví dụ đã cho Quá trình này sau đó được lặp lại cho cây con bắt nguồn từ nút mới

Hình 3.1 minh họa một cây quyết định đã học điển hình Cây quyết định này phân loại các ngày

thứ Bảy theo việc chúng có thích hợp để chơi quần vợt hay không Ví dụ, trường hợp (Quang cảnh =

Nắng, Nhiệt độ = Nóng, Độ ẩm = Cao, Gió = Mạnh) sẽ được sắp xếp xuống nhánh ngoài cùng bên

trái của cây quyết định này và do đó nó được phân loại là một trường hợp tiêu cực (nghĩa là cây dự

đoán rằng PlayTennis = không ) Cây này và ví dụ được sử dụng trong Bảng 3.2 để minh họa thuật

toán tách lớp ID3 được điều chỉnh từ (Quinlan 1986)

Nói chung, các cây quyết định thể hiện sự kết hợp theo phép “hoặc” ( ) của các mệnh đề là sự kết hợp của phép “và” ( ) các ràng buộc đối với các giá trị thuộc tính của các trường hợp Mỗi đường

đi từ gốc cây đến một lá tương ứng với một liên kết “và” của các phép kiểm tra thuộc tính và cây quyết định chính là liên kết “hoặc” của các liên kết “và” trên Ví dụ, cây quyết định trong Hình 3.1 tương ứng với biểu thức :

(Quang cảnh = Nắng  Độ ẩm = Bình thường)

(Quang cảnh = Mưa  Gió = Yếu ớt)

Trang 4

3.3 CÁC VẤN ĐỀ PHÙ HỢP CHO HỌC CÂY QUYẾT ĐỊNH

Mặc dù sự đa dạng của các phương pháp học cây quyết định đã được phát triển với các khả năng

và yêu cầu khác nhau, nhưng học cây quyết định thường phù hợp nhất với các bài toán có các đặc điểm sau:

• Các trường hợp được biểu diễn bởi các cặp thuộc tính-giá trị Các trường hợp được mô tả bởi một

tập hợp cố định các thuộc tính (ví dụ: Nhiệt độ) và các giá trị của chúng (ví dụ: Nóng) Tình huống

dễ dàng nhất cho học cây quyết định là khi mỗi thuộc tính nhận một số lượng nhỏ các giá trị rời

rạc có thể (ví dụ: Nóng, Nhẹ, Lạnh) Tuy nhiên, các phần mở rộng của thuật toán cơ bản (được

thảo luận trong Phần 3.7.2) cũng cho phép xử lý các thuộc tính có giá trị thực (ví dụ: biểu thị

Nhiệt độ bằng số)

• Hàm mục tiêu có các giá trị đầu ra rời rạc Cây quyết định trong Hình 3.1 gán một phân loại

“boolean” (ví dụ: có hoặc không) cho mỗi ví dụ Các phương pháp cây quyết định dễ dàng mở

rộng cho các hàm có nhiều hơn hai giá trị đầu ra có thể Một phần mở rộng quan trọng hơn cho phép học các hàm mục tiêu với các đầu ra có giá trị thực, mặc dù việc áp dụng các cây quyết định trong cài đặt này ít phổ biến hơn

• Mô tả khác biệt có thể được yêu cầu Như đã nói ở trên, cây quyết định biểu diễn các biểu thức

phân biệt một cách tự nhiên

• Dữ liệu đào tạo có thể chứa lỗi Các phương pháp học cây quyết định có thể chống lại các lỗi, cả

các lỗi trong phân loại các ví dụ huấn luyện và các lỗi trong các giá trị thuộc tính mô tả các ví dụ này

• Dữ liệu huấn luyện có thể chứa các giá trị thuộc tính bị thiếu Phương pháp cây quyết định có

thể được sử dụng ngay cả khi một số ví dụ huấn luyện có giá trị chưa biết (ví dụ: nếu Độ ẩm trong

ngày chỉ được biết cho một số ví dụ huấn luyện) Vấn đề này được thảo luận trong Phần 3.7.4 Nhiều vấn đề thực tế đã được tìm thấy để phù hợp với những đặc điểm này Phương pháp cây quyết định trước đây đã được áp dụng cho các vấn đề như phân loại bệnh nhân y tế theo căn bệnh của

họ, phân loại trục trặc thiết bị bởi nguyên nhân của chúng và phân loại người xin vay bởi khả năng họ

Trang 5

không thể trả được nợ Những bài toán như vậy, trong đó nhiệm vụ là phân loại các ví dụ thành một

trong những nhóm rời rạc có thể, thường được gọi là bài toán phân loại

Phần còn lại của chương này được tổ chức như sau Phần 3.4 trình bày thuật toán ID3 cơ bản cho học cây quyết định và mô tả chi tiết hoạt động của thuật toán này Phần 3.5 xem xét việc tìm kiếm không gian giả thuyết được thực hiện bởi thuật toán rút gọn này, so sánh nó với các thuật toán từ Chương 2 Phần 3.6 mô tả thiên hướng suy luận (các giả định đưa ra để giúp mô hình hoc tìm ra cây quyết định tốt nhất từ dữ liệu huấn luyện) của thuật toán học cây quyết định này và khám phá tổng quát hơn một thiên hướng suy luận gọi là dao cạo Occam, tương ứng với ưu tiên cho giả thuyết đơn giản nhất Phần 3.7 thảo luận về vấn đề quá khớp của dữ liệu huấn luyện(overfitting), cùng với các chiến lược chẳng hạn như cắt tỉa các quy tắc sau khi học để giải quyết vấn đề này Phần này cũng thảo luận về một số chủ đề nâng cao hơn như mở rộng thuật toán để chứa các thuộc tính có giá trị thực, dữ liệu huấn luyện với các thuộc tính không được quan sát và các thuộc tính với chi phí khác nhau

3.4 THUẬT TOÁN HỌC CÂY QUYẾT ĐỊNH CƠ BẢN

Hầu hết các thuật toán đã được phát triển cho học cây quyết định là các biến thể của một thuật toán cốt lõi sử dụng tìm kiếm tham lam, từ trên xuống trong không gian của các cây quyết định có thể Phương pháp này được minh họa bằng thuật toán ID3 (Quinlan 1986) và thuật toán kế thừa nó C4.5 (Quinlan 1993), tạo thành trọng tâm chính cho cuộc thảo luận của chúng ta ở đây Trong phần này, chúng tôi trình bày thuật toán cơ bản cho học cây quyết định, tương ứng với thuật toán ID3 Trong Phần 3.7, chúng ta xem xét một số phần mở rộng cho thuật toán cơ bản này, bao gồm các phần mở rộng được tích hợp vào C4.5 và các thuật toán khác gần đây hơn cho học cây quyết định

Thuật toán cơ bản của chúng tôi, ID3, tạo ra các cây quyết định bằng cách xây dựng chúng từ trên xuống, bắt đầu bằng câu hỏi “thuộc tính nào sẽ được kiểm tra ở gốc của cây?” Để trả lời câu hỏi này, mỗi thuộc tính mẫu được đánh giá bằng cách sử dụng một bài kiểm tra thống kê để xác định xem một mình nó phân loại các ví dụ đào tạo tốt như thế nào Thuộc tính tốt nhất được chọn và sử dụng làm phép thử tại nút gốc của cây Sau đó, một nút con của nút gốc được tạo ứng mỗi giá trị có thể có của thuộc tính này và các ví dụ huấn luyện được sắp xếp vào các nút con thích hợp (nghĩa là xuống nhánh tương ứng với giá trị cho thuộc tính này của ví dụ) Sau đó, toàn bộ quá trình được lặp lại bằng cách

sử dụng các ví dụ huấn luyện được liên kết với từng nút con để chọn thuộc tính tốt nhất để kiểm tra tại điểm đó trên cây Điều này tạo thành một tìm kiếm tham lam cho một cây quyết định có thể chấp nhận được, trong đó thuật toán không bao giờ quay lại để xem xét lại các lựa chọn trước đó Một phiên bản đơn giản hơn của thuật toán, chuyên dùng để học các hàm có giá trị boolean (nghĩa là quá trình phân loại khái niệm), được mô tả trong Bảng 3.1

3.4.1 THUỘC TÍNH NÀO PHÂN LOẠI TỐT NHẤT?

Lựa chọn trọng tâm trong thuật toán ID3 là chọn thuộc tính nào để kiểm tra tại mỗi nút trong cây Chúng tôi muốn chọn thuộc tính hữu ích nhất cho việc phân loại ví dụ Một thước đo định lượng tốt

về giá trị của một thuộc tính là gì? Chúng ta sẽ định nghĩa một thuộc tính thống kê, được gọi là độ lợi

thông tin(information gain), đo lường mức độ hiệu quả của một thuộc tính đã cho trong việc phân tách

các ví dụ huấn luyện theo mục tiêu phân loại của chúng ID3 sử dụng thước đo information gain này

để chọn trong số các thuộc tính ứng cử viên ở mỗi bước trong khi phát triển cây

3.4.1.1 ENTROPY(ĐỘ MẤT CÂN BẰNG) ĐO TÍNH ĐỒNG NHẤT CỦA VÍ DỤ

Để xác định độ lợi thông tin(information gain) một cách chính xác, chúng ta bắt đầu bằng cách xác định một thước đo thường được sử dụng trong lý thuyết thông tin, được gọi là entropy, đặc trưng cho

độ tinh khiết (purity hoặc impurity) của một tập hợp các ví dụ tùy ý Cho một tập hợp S, chứa các ví

dụ khẳng định và phủ định của một số khái niệm mục tiêu, entropy của S liên quan đến phân loại

boolean này là:

Trang 6

BẢNG 3.1

Tóm tắt thuật toán ID3 chuyên dùng để học hàm có giá trị đầu ra là boolean ID3 là một thuật toán

tham lam phát triển từ trên xuống, tại mỗi nút chọn thuộc tính phân loại tốt nhất các ví dụ đào tạo

cục bộ Quá trình này tiếp tục cho đến khi cây phân loại chính xác các ví dụ huấn luyện hoặc cho đến

khi tất cả các thuộc tính đã được sử dụng

Ở đây p là tỷ lệ các ví dụ dương (+) trong S và p là tỷ lệ các ví dụ âm (-) trong S Trong tất cả các

phép tính liên quan đến entropy, chúng ta định nghĩa 0log(0) bằng 0

Để minh họa, giả sử S là một tập hợp gồm 14 ví dụ của một số khái niệm boolean, bao gồm 9 ví dụ

dương và 5 ví dụ âm (chúng tôi sử dụng ký hiệu [9+, 5-] để tóm tắt một mẫu dữ liệu như vậy) Khi đó

entropy của S tương ứng với phân loại boolean này là:

Entropy([9+, 5-]) = -(9/14) log2(9/14) - (5/14) log2(5/14) = 0,940 (3,2) Chú ý rằng :

• Entropy bằng 0 nếu tất cả các phần tử của S thuộc cùng một lớp Ví dụ: nếu tất cả các phần tử

đều là ví dụ dương (p=1), thì p =0 và Entropy(S) =-1.log2(l) -0.log20 =-1.0-0.log20 = 0

• Entropy là 1 khi tập hợp chứa số ví dụ tích cực bằng số ví dụ tiêu cực Ví dụ: nếu số phần tử

dương bằng số phần tử âm thì p=p = 0,5 và Entropy(S) =-0,5.log2(0,5) -0,5.log2(0,5) = 1

• Tập hợp chứa số lượng ví dụ tích cực và tiêu cực không bằng nhau, thì entropy nằm trong

khoảng từ 0 đến 1

ID3 (Ví dụ, Thuộc tính mục tiêu, Các thuộc tính)

Ví dụ là các ví dụ đào tạo Thuộc tính mục tiêu là thuộc tính có giá trị được dự đoán bởi

cây Các thuộc tính là một danh sách các thuộc tính khác với các thuộc tính đã được kiểm

tra bởi cây quyết định đã học Trả về một cây quyết định phân loại chính xác các Ví dụ đã

cho

• Tạo một nút Gốc cho cây

• Nếu tất cả các Ví dụ đều dương, trả về Gốc cây quyết định nút đơn , với nhãn = +

• Nếu tất cả các Ví dụ đều âm, trả về Gốc cây quyết định nút đơn , với nhãn = -

• Nếu Các thuộc tính rỗng, trả về Gốc cây quyết định nút đơn , với nhãn = giá trị phổ biến

nhất của Thuộc tính mục tiêu trong Ví dụ

• Nếu không thì bắt đầu

• Athuộc tính từ Các thuộc tính phân loại các Ví dụ tốt nhất ( là phép gán)

• Thuộc tính quyết định cho GốcA

• Với mỗi giá trị có thể vi của A

• Thêm một nhánh cây mới bên dưới Gốc, tương ứng với phép kiểm tra A = vi

• Lấy Ví dụ (v i ) là tập con của tập Ví dụ gồm các ví dụ có giá trị vi đối với thuộc tính A

• Nếu Ví dụ (v i ) là rỗng

• Bên dưới nhánh cây mới này thêm một nút là với nhãn = giá trị phổ biến nhất

của Thuộc tính mục tiêu trong Ví dụ

• Ngược lại, dưới mỗi nhánh cây mới thêm một cây con tạo bởi thuật toán ID3(Ví dụ (v i ), Thuộc tính mục tiêu, Các thuộc tính –{A})

(Các thuộc tính –{A} là tập các thuộc tính ban đầu bỏ đi thuộc tính A)

• Kết thúc

• Trả về Gốc

* Thuộc tính tốt nhất là thuộc tính có information gain cao nhất, được định nghĩa trong phương

trình (3.4)

Trang 7

Một cách giải thích về entropy từ lý thuyết thông tin là nó xác định số lượng bit tối thiểu của thông

tin cần thiết để mã hóa sự phân loại của một thành viên tùy ý của S (nghĩa là một thành viên của S

được lấy ngẫu nhiên với xác suất đồng nhất) Ví dụ: nếu plà 1, người nhận biết rằng ví dụ được chọn

sẽ dương, vì vậy không cần gửi bất kì tin nhắn và entropy bằng không Mặt khác, nếu plà 0,5, cần một bit để chỉ ra ví dụ được chọn là dương hay âm Nếu p là 0,8, thì một tập hợp các tin nhắn có thể được mã hóa bằng cách sử dụng trung bình ít hơn 1 bit cho mỗi tin nhắn bằng cách gán mã ngắn hơn cho tập hợp các ví dụ dương và mã dài hơn cho các ví dụ âm có ít có khả năng hơn

Cho đến lúc này chúng ta đã thảo luận về entropy trong trường hợp đặc biệt khi phân loại mục tiêu

là boolean Tổng quát hơn, nếu thuộc tính mục tiêu có thể nhận c giá trị khác nhau, thì entropy của S

tương ứng với phân loại (c-wise) này được định nghĩa là:

2 1

trong đó p i là tỷ lệ các ví dụ của S thuộc loại i Lưu ý logarit vẫn là cơ số 2 vì entropy là thước đo độ

dài mã hóa dự kiến được đo bằng bits Cũng lưu ý rằng nếu thuộc tính mục tiêu có thể nhận c giá trị

có thể, thì entropy có thể lớn bằng log2c

3.4.1.2 INFORMATION GAIN ĐO MỨC GIẢM ENTROPY DỰ KIẾN

Với entropy làm thước đo độ tinh khiết trong tập hợp các ví dụ huấn luyện, giờ đây chúng ta có thể xác định thước đo hiệu quả của một thuộc tính trong việc phân loại dữ liệu huấn luyện Thước đo

mà chúng ta sẽ sử dụng, được gọi là information gain(độ lợi thông tin), đơn giản là mức giảm dự kiến của entropy gây ra bởi việc phân chia các ví dụ theo thuộc tính này Chính xác hơn, information gain của một thuộc tính A so với một tập hợp các ví dụ S kí hiệu Gain(S, A), được định nghĩa là

Trang 8

( )

v Values A

S Gain S A Entropy S Entropy S

S

trong đó Values(A) là tập hợp tất cả các giá trị có thể có của thuộc tính A, và S v là tập con của S mà

thuộc tính A có giá trị v (nghĩa là Sv= {sS | A(s)= v } ).Lưu ý rằng số hạng đầu tiên trong phương

trình (3.4) chỉ là entropy của tập hợp ban đầu S và số hạng thứ hai là giá trị kỳ vọng của entropy sau khi S được phân vùng bằng thuộc tính A Entropy kỳ vọng được mô tả bởi số hạng thứ hai này chỉ đơn giản là tổng của các entropy của các tập hợp con S v , được đánh trọng số bởi tỷ lệ của các ví dụ thuộc

S v có công thức tính là S v

S Gain(S, A) còn là mức giảm dự kiến của entropy do biết giá trị của thuộc

tính A Nói cách khác, Gain(S, A) là độ lợi thông tin mà thuật toán học máy thu được về giá trị hàm

mục tiêu, dựa trên giá trị của một số thuộc tính A khác Giá trị của Gain(S, A) là số bit được tiết kiệm

khi mã hóa giá trị mục tiêu của một thành viên tùy ý của S , bằng cách biết giá trị của thuộc tính A

Ví dụ: giả sử S là tập hợp các ngày(các ví dụ đào tạo) được mô tả bởi các thuộc tính bao gồm Gió,

có thể có các giá trị Yếu hoặc Mạnh Như trước đây, giả sử S là một tập hợp chứa 14 ví dụ, [9+, 5-] Trong số 14 ví dụ này, giả sử 6 ví dụ dương và 2 ví dụ âm có Gió = Yếu và phần còn lại có Gió =

Mạnh Độ lợi thông tin (information gain) thu được do sắp xếp 14 ví dụ ban đầu theo thuộc tính Wind

sau đó có thể được tính như sau :

Values(Gió) = Yếu, Mạnh; S = [9+, 5-]; S Yếu[6+,2-]; SMạnh[3+, 3-]

v Values Gio

S Gain S Gio Entropy S Entropy S

Information gain là thước đo chính xác được ID3 sử dụng để chọn thuộc tính tốt nhất ở mỗi bước trong

quá trình phát triển cây Việc sử dụng information gain để đánh giá mức độ phù hợp của các thuộc tính được tổng hợp trong Hình 3.3 Trong hình này, information gain của hai thuộc tính khác nhau,

Độ ẩm và Gió, được tính toán để xác định thuộc tính nào là tốt nhất để phân loại các ví dụ huấn luyện

được trình bày trong Bảng 3.2

HÌNH 3.3

Độ ẩm cho độ lợi thông tin(information gain) lớn hơn Gió đối với mục tiêu phân loại Ở đây, E là viết

tắt của entropy và S là tập hợp các ví dụ ban đầu Cho một tập hợp ban đầu gồm 9 mẫu dương tính và

5 mẫu âm tính, [9+, 5-], sắp xếp chúng theo Độ ẩm tạo ra các tập hợp [3+, 4-] (Độ ẩm = Cao) và [6+, 1-] ( Độ ẩm = Bình thường) Độ lợi thông tin thu được từ sự phân vùng này là 0,151, lớn hơn so với

độ lợi thông tin chỉ là 0,048 đối với thuộc tính Gió

Trang 9

3.4.2 MỘT VÍ DỤ MINH HỌA

Để minh họa hoạt động của ID3, ta xét nhiệm vụ học được thể hiện bằng các ví dụ huấn luyện trong

Bảng 3.2 Ở đây, thuộc tính mục tiêu PlaỵTennis, có các giá trị có thể là có hoặc không cho các buổi

sáng thứ bảy khác nhau, sẽ được dự đoán dựa trên các thuộc tính khác của buổi sáng trong yêu cầu Xem xét bước đầu tiên thông qua thuật toán, trong đó nút trên cùng của cây quyết định được tạo

BẢNG 3.2 Các ví dụ huấn luyện cho khái niệm mục tiêu PlayTennis

Thuộc tính nào nên được kiểm tra đầu tiên trong cây? ID3 xác định information gain cho từng thuộc tính ứng cử viên (tức là Quang cảnh, Nhiệt độ, Độ ẩm và Gió), sau đó chọn thuộc tính có information

gain cao nhất Việc tính toán information gain cho hai trong số các thuộc tính này được thể hiện trong

Hình 3.3 Các giá trị information gain cho cả bốn thuộc tính là

Gain(S, Quang cảnh) = 0,246 Gain(S, Độ ẩm) = 0,151

Gain(S, Gió) = 0,048 Gain (S, Nhiệt độ)= 0,029

trong đó S biểu thị tập hợp các ví dụ huấn luyện từ Bảng 3.2

Theo thước đo information gain ban đầu, thuộc tính Quang cảnh cung cấp dự đoán tốt nhất về thuộc tính mục tiêu PlayTennis qua các ví dụ huấn luyên Do đó, Quang cảnh được chọn làm thuộc

tính quyết định cho nút gốc và các nhánh được tạo bên dưới gốc tương ứng với từng giá trị có thể có

của nó (ví dụ: Nắng, Âm u và Mưa) Một phần kết quả cây quyết định được thể hiện trong Hình 3.4, cùng với các ví dụ huấn luyện được sắp xếp theo từng nút con mới Lưu ý rằng mọi ví dụ mà Quang

cảnh = Âm u đều là là ví dụ với thuộc tính PlayTennỉs có giá trị “Có” Do đó, nút này của cây trở thành

nút lá với phân loại PlayTennis = Yes Ngược lại, các phần tử con tương ứng với Quang cảnh = Nắng

và Quang cảnh = Mưa vẫn có entropy khác không và cây quyết định sẽ được xây dựng thêm bên dưới

các nút này

Quá trình chọn một thuộc tính mới và phân vùng các ví dụ huấn luyện được lặp lại cho mỗi nút con không đầu cuối(không phải là nút lá hay nút gốc), lần này chỉ sử dụng các ví dụ huấn luyện được liên kết với nút đó Các thuộc tính đã được tích hợp cao hơn (các thuộc tính dùng để tạo nút có cấp cao hơn trước đó đã được sử dụng trong đường dẫn đang xét) sẽ bị loại trừ, do đó, bất kỳ thuộc tính

đã cho nào cũng chỉ có thể xuất hiện nhiều nhất một lần dọc theo bất kỳ đường đi nào trong cây Quá trình này tiếp tục cho mỗi nút lá mới cho đến khi một trong hai điều kiện được đáp ứng: (1) mọi thuộc tính đã được đưa vào dọc theo đường dẫn này qua cây hoặc (2) các ví dụ huấn luyện được liên kết với nút lá này đều có cùng một thuộc tính mục tiêu giá trị (nghĩa là entropy của chúng bằng không) Hình

Trang 10

3.4 minh họa các tính toán về information gain cho bước tiếp theo trong việc phát triển cây quyết định

Cây quyết định cuối cùng mà ID3 học được từ 14 ví dụ huấn luyện của Bảng 3.2 được thể hiện trong Hình 3.1

3.5 TÌM KIẾM KHÔNG GIAN GIẢ THUYẾT TRONG HỌC TẬP CÂY QUYẾT ĐỊNH

Cũng như các phương pháp học quy nạp khác, ID3 có thể được mô tả như là việc tìm kiếm một không gian các giả thuyết phù hợp với các ví dụ huấn luyện Không gian giả thuyết được tìm kiếm bởi ID3 là tập hợp các cây quyết định có thể ID3 thực hiện tìm kiếm leo cây đồi cao, từ đơn giản đến phức tạp trong không gian giả thuyết này, bắt đầu với cây trống, sau đó xem xét dần dần các giả thuyết phức tạp hơn để tìm kiếm cây quyết định phân loại chính xác dữ liệu huấn luyện Hàm đánh giá hướng

dẫn tìm kiếm leo đồi này là thước đo information gain.Việc tìm kiếm này được mô tả trong Hình 3.5

SNắng = {N1,N2,N8,N9,N11} Gain(SNắng, Độ ẩm) = 0.970 – (3/5).0 – (2/5).0=0.970

Gain(SNắng, Nhiệt độ)= 0.970 – (2/5).0—(2/5).1-(1/5).0=0.57

Gain(SNắng, Gió)=0.970 – (2/5).1-(3/5).0.918=0.19

Hình 3.4

Cây quyết định đã học được một phần từ bước đầu tiên của ID3 Các ví dụ huấn luyện được sắp xếp

theo các nút con tương ứng Nút con của Âm u chỉ có các ví dụ tích cực và do đó trở thành một nút lá với phân loại Có Hai nút còn lại sẽ được mở rộng hơn nữa, bằng cách chọn thuộc tính có information

gain cao nhất so với các tập hợp con mới của các ví dụ

Bằng cách xem ID3 dưới dạng không gian tìm kiếm và trạng thái tìm kiếm, chúng ta có thể hiểu

rõ hơn về các khả năng và hạn chế của nó

Không gian giả thiết của cây quyết định là một không gian đầy đủ của các hàm có giá trị rời rạc

hữu hạn, tương ứng với các thuộc tính có sẵn Bởi vì mọi hàm có giá trị rời rạc có thể được biểu diễn bằng một số cây quyết định, ID3 tránh được một trong những rủi ro chính của các phương pháp tìm kiếm không gian giả thuyết không đầy đủ (chẳng hạn như các phương pháp chỉ xem xét các giả thuyết liên hợp): không gian giả thuyết có thể không chứa hàm mục tiêu

ID3 chỉ duy trì một giả thuyết hiện tại duy nhất khi nó tìm kiếm trong không gian của các cây quyết định Ví dụ, điều này trái ngược với không gian phiên bản trước đó của phương pháp Candidate-

Elimination, không gian duy trì tập hợp tất cả các giả thuyết nhất quán với các ví dụ huấn luyện có

sẵn Bởi việc chỉ xác định một giả thuyết duy nhất, ID3mất đi những khả năng có được từ việc trình bày rõ ràng tất cả các giả thuyết nhất quán Ví dụ: nó không có khả năng xác định có bao nhiêu cây quyết định thay thế phù hợp với dữ liệu huấn luyện có sẵn hoặc đặt ra các giả định trường hợp mới để giải quyết tối ưu giữa các giả thuyết cạnh tranh này

Trang 11

HÌNH 3.5

Tìm kiếm không gian giả thuyết theo ID3 ID3 tìm kiếm trong không gian của các cây quyết định có thể từ đơn giản nhất đến ngày càng phức tạp, được hướng dẫn bởi việc đánh giá độ quan trọng của thuộc tính trong việc phân loại

dữ liệu thông qua thông số (information gain )

• ID3 ở dạng thuần túy không thực hiện xử lý ngược trong quá trình tìm kiếm Một khi nó chọn một thuộc tính để kiểm tra ở một cấp độ cụ thể trong cây, nó sẽ không bao giờ quay lại để xem xét lại lựa chọn này Ở đó, nó dễ gặp phải những rủi ro thông thường của việc tìm kiếm leo đồi mà không quay lại: hội tụ đến các nghiệm(giải pháp) tối ưu cục bộ, không tối ưu toàn cục Trong trường hợp ID3, một giải pháp tối ưu cục bộ tương ứng với cây quyết định mà nó chọn dọc theo đường dẫn tìm kiếm duy nhất mà nó khám phá Tuy nhiên, giải pháp tối ưu cục bộ này có thể ít được mong muốn hơn so với các cây quyết định khác có thể gặp phải dọc theo một nhánh tìm kiếm khác Dưới đây chúng tôi thảo luận về một phần mở rộng bổ sung một hình thức quay lui (sau khi cắt tỉa cây quyết định)

• ID3 sử dụng tất cả các ví dụ đào tạo ở mỗi bước trong quá trình tìm kiếm để đưa ra các quyết định dựa trên thống kê về cách điều chỉnh lại giả thuyết hiện tại của nó Điều này trái ngược với các phương pháp đưa ra quyết định tăng dần, dựa trên các ví dụ đào tạo riêng lẻ (ví dụ: FIND-S hoặc CANDIDATE-ELIMINATION).Một lợi thế của việc sử dụng các thuộc tính thống kê của tất cả các

ví dụ (ví dụ: information gain) là kết quả tìm kiếm ít nhạy hơn với các lỗi trong các ví dụ đào tạo riêng

lẻ ID3 có thể dễ dàng được mở rộng để xử lý dữ liệu huấn luyện nhiễu bằng cách sửa đổi tiêu chuẩn kết thúc của nó để chấp nhận các giả thuyết không chính xác hoàn toàn đối với dữ liệu huấn luyện

3.6 THIÊN HƯỚNG SUY LUẬN TRONG HỌC TẬP CÂY QUYẾT ĐỊNH

Quy tắc mà ID3 tổng quát hóa từ các ví dụ huấn luyện quan sát được để phân loại các trường hợp không nhìn thấy được là gì? Nói cách khác, thiên hương suy luận của nó là gì? Nhớ lại từ Chương 2 rằng thiên hướng suy luận là tập hợp các giả định, cùng với dữ liệu huấn luyện, suy luận biện minh (suy luận từ các lý do, bằng chứng cụ thể) các phân loại do người học chỉ định cho các trường hợp trong tương lai

Đưa ra một tập hợp các ví dụ huấn luyện, thường sẽ có nhiều cây quyết định điển hình phù hợp với các ví dụ này Do đó, việc mô tả thiên hướng suy luận của ID3 bao gồm việc mô tả cơ sở để nó chọn một trong số các giả thuyết này thay vì các giả thuyết khác Vậy ID3 chọn cây quyết định nào trong số những cây quyết định này? Nó chọn cây có thể chấp nhận được đầu tiên mà nó gặp trong quá trình tìm kiếm leo đồi, từ đơn giản đến phức tạp trong không gian của các cây quyết định có thể Nói một cách đại khái, thiên hướng tìm kiếm của ID3 là (a) ưu tiên chọn các cây ngắn hơn chọn các cây

dài và (b) chọn các cây đặt các thuộc tính có thông số information gain cao nhất gần gốc nhất Do sự

tương tác tinh tế giữa thuật toán tìm kiếm định hướng trong viêc lựa chọn thuộc tính được sử dụng bởi ID3 và các ví dụ huấn luyên cụ thể mà nó gặp phải, nên sẽ thật khó để mô tả chính xác thiên hướng suy luận được ID3 thể hiện Tuy nhiên, chúng ta có thể mô tả gần đúng thiên hướng của nó là ưu tiên cho các cây quyết định ngắn, đơn giản hơn các cây phức tạp

Thiên hướng suy luận gần đúng của ID3: Cây ngắn hơn được ưu tiên hơn so với cây lớn hơn

Trên thực tế, người ta đã có thể nghĩ ra một thuật toán tương tự như ID3 thể hiện chính xác thiên

hướng suy luận này Xét một thuật toán bắt đầu với cây rỗng và tìm kiếm breadth first(tìm kiếm trong

cây quyết định có độ sâu nhỏ nhất trước với độ sâu của cây là số lượng các nút đi từ gốc đến nút lá xa

Trang 12

nhất) và qua đó các cây quyết định ta xét sẽ phức tạp hơn khi tiến hành tìm kiếm, đầu tiên xem xét tất

cả các cây có độ sâu 1, sau đó là tất cả các cây có độ sâu 2, Sau khi tìm thấy cây quyết định phù hợp với dữ liệu huấn luyện, nó sẽ trả lại cây quyết định thích hợp nhỏ nhất ở độ sâu tìm kiếm đó (ví dụ:

cây có ít nút nhất) Chúng ta hãy gọi thuật toán breadth-first này là BFS-ID3 BFS-ID3 tìm thấy cây

quyết định ngắn nhất và do đó thể hiện chính xác thiên hướng “các cây ngắn hơn được ưu tiên hơn các cây dài hơn” ID3 có thể được xem như một xấp xỉ hiệu quả đối với BFS-ID3, sử dụng tìm kiếm định

hướng tham lam để cố gắng tìm cây ngắn nhất mà không cần tiến hành toàn bộ tìm kiếm breadth-first

trong không gian giả thuyết

Bởi vì ID3 sử dụng tìm kiếm định hướng theo information gain và chiến lược leo đồi, nó thể hiện

hướng đi phức tạp hơn BFS-ID3 Đặc biệt, không phải lúc nào nó cũng tìm được cây nhất quán ngắn

nhất và nó có xu hướng ưu tiên những cây có thuộc tính với thông số information gain cao gần gốc

nhất

Một xấp xỉ gần đúng hơn với thiên hướng suy luận của ID3: Cây ngắn hơn được ưu tiên hơn

cây dài hơn Cây ưu tiên đặt các thuộc tính có information gain cao gần gốc hơn các thuộc tính khác

có information gain thấp

3.6.1 THIÊN HƯỚNG ƯU TIÊN VÀ THIÊN HƯỚNG HẠN CHẾ

Có một sự khác biệt thú vị giữa các loại thiên hướng suy luận do ID3 thể hiện và thuật toán CANDIDATE-ELIMINATIONđược thảo luận trong Chương 2

Xem xét sự khác biệt giữa tìm kiếm không gian giả thuyết trong hai phương pháp sau:

• ID3 tìm kiếm một không gian giả thuyết đầy đủ (nghĩa là một không gian có khả năng biểu thị bất

kỳ hàm có giá trị rời rạc hữu hạn nào) Nó tìm kiếm không đầy đủ trong không gian này, từ các

giả thuyết đơn giản đến phức tạp, cho đến khi điều kiện kết thúc của nó được đáp ứng (ví dụ: cho đến khi tìm thấy một giả thuyết phù hợp với dữ liệu) Thiên hướng suy luận của nó chỉ là kết quả thứ tứ sắp xếp các giả thuyết theo chiến lược tìm kiếm của nó Không gian giả thuyết của nó không thiệu thêm bất kì thiên hướng bổ sung nào

• Không gian phiên bản của thuật toán CANDIDATE-ELIMINATION tìm kiếm một không gian

giả thuyết không đầy đủ (nghĩa là một không gian chỉ có thể hiện một tập hợp con các khái niệm

có khả năng dạy được) Nó tìm kiếm hoàn toàn không gian này, tìm ra mọi giả thuyết phù hợp với

dữ liệu huấn luyện Thiên hướng suy luận của nó chỉ là hệ quả của khả năng thể hiện của việc trình bày giả thuyết của nó Chiến lược tìm kiếm của nó không giới thiệu thiên hướng bổ sung

Tóm lại, thiên hướng suy luận của ID3 xuất phát từ chiến lược tìm kiếm của nó, trong khi thiên

hướng suy luận của thuật toán CANDIDATE-ELIMINATIONxuất phát từ định nghĩa về không gian

tìm kiếm của nó

Do đó, thiên hướng suy luận của ID3 là ưu tiên cho một số trọng tâm giả thuyết hơn các giả thuyết

khác (ví dụ: đối với các giả thuyết ngắn hơn), không có giới hạn nghiêm ngặt đối với các giả thuyết

có thể được liệt kê cuối cùng Hình thức của thiên hướng này thường được gọi là thiên hướng ưu tiên (hay cách khác là thiên hướng tìm kiếm) Ngược lại, thiên hướng của thuật toán CANDIDATE-

ELIMINATIONở dạng hạn chế phân loại đối với tập hợp các giả thuyết được xem xét Hình thức thiên hướng này thường được gọi là thiên hướng hạn chế (hoặc, cách khác, thiên hướng ngôn ngữ)

Với giả định rằng một số dạng thiên hướng suy luận là cần thiết để tổng quát hóa ngoài dữ liệu huấn luyện (xem Chương 2), chúng ta sẽ ưu tiên loại thiên hướng suy luận nào: thiên hướng ưu tiên hay thiên hướng hạn chế ?

Thông thường, thiên hướng ưu tiên được mong muốn hơn so với thiên hướng hạn chế, bởi vì nó cho phép người học làm việc trong một không gian giả thuyết hoàn chỉnh được đảm bảo chứa hàm mục tiêu chưa biết Ngược lại, một xu hướng hạn chế hạn chế nghiêm ngặt tập hợp các giả thuyết tiềm năng thường ít được mong muốn hơn, bởi vì nó đưa ra khả năng loại trừ hoàn toàn hàm mục tiêu chưa biết

Trong khi ID3 thể hiện thiên hướng ưu tiên thuần túy và CANDIDATE-ELIMINATION hoàn toàn là thiên hướng hạn chế, thì một số hệ thống nổi bật lại kết hợp cả hai Ví dụ, hãy xem xét chương

Trang 13

trình được mô tả trong Chương 1 để đưa ra một hàm đánh giá bằng số khi chơi trò chơi Trong trường hợp này, hàm đánh giá đã học được biểu diễn bằng một tổ hợp tuyến tính của một tập hợp cố định các đặc trưng để đánh giá trò chơi và thuật toán học tập điều chỉnh các tham số của tổ hợp tuyến tính này

để phù hợp nhất với dữ liệu huấn luyện có sẵn Trong trường hợp này, quyết định sử dụng một hàm tuyến tính để biểu diễn hàm đánh giá thể hiện một thiên hướng hạn chế (không thể biểu diễn các hàm đánh giá phi tuyến tính ở dạng này) Đồng thời, việc lựa chọn một phương pháp điều chỉnh tham số

cụ thể (thuật toán LMS trong trường hợp này) thể hiện một thiên hướng ưu tiên xuất phát từ việc tìm kiếm có thứ tự trong không gian của tất cả các giá trị tham số có thể

3.6.2 TẠI SAO ƯU TIÊN CÁC GIẢ THUYẾT NGẮN?

Thiên hướng suy luận của ID3 ưu tiên các cây quyết định ngắn hơn có phải là cơ sở hợp lý để tổng quát hóa ngoài dữ liệu huấn luyện không? Các triết gia và những người khác đã tranh luận về câu hỏi này trong nhiều thế kỷ và cuộc tranh luận vẫn chưa có lời giải cho đến ngày nay William of Occam

là một trong những người đầu tiên thảo luận về câu hỏi này, vào khoảng năm 1320, vì vậy thiên hướng này thường được gọi là Lưỡi cạo Occam(nguyên tắc đơn giản hóa)

Lưỡi cạo Occam: Giả thuyết đơn giản nhất phù hợp với dữ liệu

Tất nhiên, việc đặt tên cho một thiên hướng suy luận không có nghĩa nó được chứng minh là đúng Tại sao ưu tiên giả thuyết đơn giản hơn? Lưu ý rằng các nhà khoa học đôi khi dường như đi theo khuynh hướng quy nạp này Ví dụ, các nhà vật lý thích những lời giải thích đơn giản cho chuyển động của các hành tinh hơn là những lời giải thích phức tạp hơn Tại sao? Một lý do là vì có ít giả thuyết ngắn hơn giả thuyết dài (dựa trên các lập luận tổ hợp đơn giản), người ta sẽ có ít khả năng để tìm thấy một giả thuyết ngắn ngẫu nhiên phù hợp dữ liệu huấn luyện Ngược lại, thường có nhiều giả thuyết rất phức tạp phù hợp dữ liệu huấn luyện hiện tại nhưng không thể tổng quát hóa chính xác cho dữ liệu chưa biết tiếp theo Ví dụ, hãy xem xét các giả thuyết cây quyết định Có nhiều cây quyết định có 500 nút hơn cây quyết định có 5 nút Đưa ra một tập hợp nhỏ gồm 20 ví dụ đào tạo, chúng tôi có thể mong đợi có thể tìm thấy nhiều cây quyết định có 500 nút phù hợp với các mẫu này, v.v., tuy nhiên, chúng tôi sẽ ngạc nhiên hơn nếu cây quyết định gồm 5 nút có thể hoàn toàn phù hợp với dữ liệu này Do đó, chúng ta có thể tin rằng cây 5 nút ít có khả năng là một sự trùng hợp thống kê hơn(hai hay nhiều sự kiện xảy ra cùng một lúc hoặc trong cùng mẫu dự liệu nhưng không có liên hệ hay tương quan thật sự)

và giả thuyết này ưu tiên hơn giả thuyết 500 nút

Khi xem xét kỹ hơn, hóa ra có một khó khăn lớn với lập luận trên Bằng lý do tương tự, chúng tôi

có thể lập luận rằng người ta nên ưu tiên các cây quyết định chứa chính xác 17 nút lá với cây chứa 11 nút không phải lá, cây mà sử dụng thuộc tính quyết định A1 ở gốc và kiểm tra các thuộc tính A2 đến

A11, theo thứ tự số Có tương đối ít những cây như vậy, và chúng ta có thể lập luận (bằng cách lập luận tương tự như trên) rằng cơ hội tiên nghiệm của chúng ta để tìm được một cây nhất quán với một tập hợp dữ liệu tùy ý là vô cùng nhỏ Khó khăn ở đây là có rất nhiều tập hợp giả thuyết nhỏ mà người ta

có thể xác định được, hầu hết chúng khá phức tạp Tại sao chúng ta nên tin rằng tập hợp các giả thuyết

nhỏ bao gồm các cây quyết định với các mô tả ngắn sẽ phù hợp hơn bất kỳ tập hợp giả thuyết nhỏ nào

khác mà chúng ta có thể xác định?

Một vấn đề thứ hai với lập luận trên đối với Lưỡi cạo Occam là kích thước của một giả thuyết

được xác định bởi biểu diễn cụ thể được sử dụng nội bộ bởi người học Hai người học sử dụng các

biểu diễn nội bộ khác nhau có thể do đó đưa ra các giả thuyết khác nhau, cả hai đều biện minh cho các kết luận mâu thuẫn của họ bằng dao cạo của Occam! Ví dụ, hàm được biểu diễn bởi cây quyết định đã học trong Hình 3.1 có thể được biểu diễn dưới dạng một cây chỉ với một nút quyết định, bởi một người học sử dụng các thuộc tính boolean X Y Z, trong đó chúng ta định nghĩa các thuộc tính X Y Z là đúng cho trường hợp chúng được phân loại dương bởi cây quyết định trong hình 3.1 và sai nếu ngược lại

Do đó, hai người học, cả hai đều áp dụng Lưỡi cạo Occam, sẽ tổng quát hóa theo những cách khác

nhau nếu một người sử dụng thuộc tính X Y Z để mô tả các ví dụ của nó và người kia chỉ sử dụng các thuộc tính Quang Cảnh, Nhiệt độ, Độ ẩm và Gió

Lập luận cuối cùng này cho thấy rằng Lưỡi cạo Occam sẽ tạo ra hai giả thuyết khác nhau từ các

ví dụ huấn luyện giống nhau khi nó được áp dụng bởi hai người học nhận thức các ví dụ này theo các

Ngày đăng: 06/08/2024, 16:20

w