HỌC máy, NGUYỄN NHẬT QUANG, ĐHBKHN các PHƯƠNG PHÁP học có GIÁM sát học cây QUYẾT ĐỊNH

37 305 0
HỌC máy, NGUYỄN NHẬT QUANG, ĐHBKHN các PHƯƠNG PHÁP học có GIÁM sát học cây QUYẾT ĐỊNH

Đ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

Học Máy (IT 4862) Nguyễn ễ Nhật hậ Quang quangnn-fit@mail.hut.edu.vn Trường Đại học Bách Khoa Hà Nội Viện Công nghệ thông tin truyền thông Năm học 2011-2012 Nội dung d môn ô học: h „ Giới thiệu chung g „ Đánh giá hiệu hệ thống học máy „ Các phương pháp học dựa xác suất „ Các phương pháp học có giám sát „ Học định (Decision tree learning) „ Các phương pháp học không giám sát „ L cộng Lọc ộ tác tá „ Học tăng cường Học Máy – IT 4862 Học câyy q y định – Giới thiệu „ Học định (Decision tree –DT– learning) • Để học (xấp xỉ) hàm mục tiêu có giá trị rời rạc (discretevalued target function) – hàm phân lớp • Hàm phân lớp biểu diễn định „ Một định biểu diễn (diễn giải) tập luật IF-THEN (dễ đọc dễ hiểu) „ Học H â ết định đị h có ó thể thực th hiệ ả với ới liệu liệ có ó chứa nhiễu/lỗi (noisy data) „ Là ộ g p phương gp pháp p học ọ q quy y nạp ạp ((inductive learning) dùng phổ biến „ Được áp dụng thành công nhiều toán ứng d dụng thực th tế Học Máy – IT 4862 Ví dụ DT: Những tin tức mà quan tâm? “sport”? is present is absent “player”? is present Interested is absent Uninterested “football”? is present Interested is present Interested • (…,“sport”,…,“player”,…) → Interested • (…,“goal”,…) → Interested • (…, ( “sport” sport ,…)) → Uninterested Học Máy – IT 4862 is absent “goal”? is absent Uninterested Ví dụ DT: Một người có chơi tennis không? Outlook=? Sunny Overcast Humidity=? Rain Wind=? Yes High Normal No Yes Strong No Weak Yes • (Outlook=Overcast, Temperature=Hot, Humidity=High, Wind=Weak) → Yes (Outlook=Rain, a , Temperature=Mild, p d, Humidity=High, y g , Wind=Strong) St o g) • (O → No • (Outlook=Sunny, Temperature=Hot, Humidity=High, Wind=Strong) → No Học Máy – IT 4862 Biểu diễn câyy q y định ((1)) „ Mỗi nút (internal node) biểu diễn thuộc tính cần kiểm tra giá trị (an attribute to be tested) ví dụ „ Mỗi nhánh (branch) từ nút tương ứng với giá trị thuộc tính gắn với nút „ Mỗi nút (leaf node) biểu diễn phân lớp (a classification)) „ Một định học phân lớp ví dụ, ụ, g cách duyệt yệ câyy từ nút g gốc đến ộ nút → Nhãn lớp gắn với nút gán cho ví dụ cần phân lớp Học Máy – IT 4862 Biểu diễn câyy q y định ((2)) „ Một định biểu diễn phép tuyển (disjunction) kết hợp (conjunctions) ràng buộc giá trị thuộc tính ví dụ „ Mỗi đường (path) từ nút gốc đến nút tương ứng với kết hợp (conjunction) kiểm tra giá trị thuộc tính (attribute tests) „ Cây định (bản thân nó) phép tuyển (disjunction) kết hợp (conjunctions) „ Các ví dụ → Hãy xét định nêu trước… Học Máy – IT 4862 Những tin tức mà quan tâm? “sport”? is present is absent “player”? is present Interested “football”? is absent is present is absent Uninterested Interested “goal”? is present Interested [(“sport” [( spo t is sp present) ese t) is absent Uninterested ∧ (“player” p aye is sp present ese t)] ∨ [(“sport” is absent) ∧ (“football” is present)] ∨ [(“sport” [( sport is absent) ∧ (“football” football is absent) ∧ (“goal” goal is present)] Học Máy – IT 4862 Một người có chơi tennis không? Outlook=? Sunny Rain Overcast Humidity=? Wind=? Yes High Normal No Yes Strong Weak No Yes [(Outlook=Sunny) ∧ (Humidity=Normal)] ∨ (Outlook=Overcast) ∨ (Outlook [(Outlook=Rain) ∧ (Wind=Weak)] Học Máy – IT 4862 Giải thuật ID3 – Ý tưởngg „ Thực giải thuật tìm kiếm tham lam (greedy search) không gian định „ Xây dựng (học) định theo chiến lược top-down, nút gốc „Ở nút, nút thuộc tính kiểm tra (test attribute) thuộc tính có khả phân loại tốt ví dụ học gắn với nút „ Tạo (sub-tree) nút cho giá trị thuộc tính kiểm tra, tra tập học tách (thành tập con) tương ứng với vừa tạo „ Mỗi thuộc tính phép xuất tối đa lần đ đường t ⠄ Quá trình phát triển (học) định tiếp tục khi… • Cây định phân loại hoàn toàn (perfectly classifies) ví dụ học, • Tất thuộc tính sử dụng Học Máy – IT 4862 10 Ưu tiên trongg học câyy q y định ((2)) „ Đối với tập ví dụ học, tồn nhiều (hơn 1) y định ị p phù hợp ợp với ví dụ ụ học ọ nàyy câyy q „ Cây định (trong số đó) chọn? „ ID3 chọn định phù hợp tìm thấy trình tìm kiếm →Lưu ý trình tìm kiếm, giải thuật ID3 không cân â nhắc hắ llạii llựa chọn h ttrước ((without ith t b backtracking) kt ki ) „ Chiến lược tìm kiếm giải thuật ID3 • Ưu tiên định đơn giản (ít mức độ sâu) • Ưu tiên định thuộc tính có giá trị Information Gain lớn thuộc tính kiểm tra nút gần ầ nút út gốc ố Học Máy – IT 4862 23 Các vấn đề trongg ID3 „ Cây định học phù hợp (over-fit) với ví dụ học „ Xử lý thuộc tính có kiểu giá trị liên tục (kiểu số thực) „ Các đá Cá đánh h giá iá phù hù h hợp h (tốt h Information I f ti Gain) G i ) việc xác định thuộc tính kiểm tra cho nút „ Xử lý ví dụ học thiếu giá trị thuộc tính (missing-value (missing value attributes) „ Xử lý thuộc tính có chi phí (cost) khác → Cải tiến giải thuật ID3 với tất vấn đề nêu giải quyết: giải thuật C4 C4.5 Học Máy – IT 4862 24 Over-fitting học định (1) „ Một định phù hợp hoàn hảo tập huấn luyện có phải giải pháp tối ố ưu? Outlook=? Sunny Humidity=? High „ Nếu tập huấn luyện có nhiễu/lỗi…? Vd: Một ví dụ nhiễu/lỗi (Ví dụ thực mang nhãn Yes, bị gán nhãn nhầm No): (O (Outlook=Sunny, Su y, Temperature=Hot, Humidity=Normal, Wind=Strong, PlayTennis=No) No Yes Normal Wind=? Strong Yes No Weak Yes Học định phức tạp hơn! ((chỉ ví dụ ụ nhiễu/lỗi)) Outlook=? Sunny Overcast Humidity=? High No Học Máy – IT 4862 Rain Overcast Yes Normal …được phát triển tiếp! Rain Wind=? Strong No Weak Yes 25 Over-fitting học định (1) Tiếp tục trình học định làm giảm độ xác tập thử nghiệm tăng độ xác tập học [Mitchell, 1997] Học Máy – IT 4862 26 Giải qquyết y vấn đề over-fittingg (1) ( ) „ chiến lược • Ngừng việc học (phát triển) ể ế định sớm hơn, trước đạt tới cấu trúc cho phép phân loại (khớp) hoàn hảo tập huấn luyện • Học (phát triển) đầy đủ (tương ứng với cấu trúc hoàn toàn phù hợp tập huấn luyện), sau thực trình tỉa (to post-prune) „ Chiến lược tỉa đầy đủ (Post-pruning over-fit trees) thường cho hiệu tốt thực tế → Lý do: Chiến lược “ngừng sớm” việc học cần phải đánh giá xác nên ngừng việc học (phát triển) – Khó xác định! Học Máy – IT 4862 27 Giải vấn đề over-fitting (2) „ Làm để chọn kích thước “phù hợp” ị định? • Đánh giá hiệu phân loại tập tối ưu (validation set) - Đây phương pháp thường sử dụng - f.f f f chính: hí h reduced-error d d pruning i and d rule l post-pruning t i • Áp dụng thí nghiệm thống kê (vd: chi-square test) để đánh giá xem việc mở rộng (hay cắt tỉa) nút có giúp cải thiện hiệu đối ố với tập huấn ấ luyện • Đánh giá độ phức tạp việc mã hóa (thể hiện) ví dụ học y q y định, ị , ngừng g g việc ệ học ọ (phát (p triển)) câyy q y định ị kích thước việc mã hóa tối thiểu - Dựa nguyên lý Minimum Description Length (MDL) ( ) + size(misclassifications(tree)) ( ( )) - Cần cực tiểu hóa: size(tree) Học Máy – IT 4862 28 Reduced-error pruning „ Mỗi nút (khớp hoàn toàn) kiểm tra để cắt tỉa Một nút bị cắt tỉa (sau cắt tỉa nút đó) đạt hiệu không tồi ban đầu ầ đối ố với tập tối ố ưu (validation set) „ Cắt tỉa nút bao gồm việc: „ • Loại bỏ toàn (sub (sub-tree) tree) gắn với nút bị cắt tỉa • Chuyển nút bị cắt tỉa thành nút (nhãn phân lớp) • Gắn với nút (nút bị cắt tỉa) nhãn lớp chiếm số đông tập h ấ luyện huấn l ệ gắn ắ với ới nút út „ Lặp lại việc cắt tỉa nút • Luôn lựa chọn nút mà việc cắt tỉa nút tối đa hóa khả phân loại định tập tối ưu (validation set) • Kết thúc, việc cắt tỉa thêm nút làm giảm khả phân loại định tập tối ưu (validation set) Học Máy – IT 4862 29 Rule post-pruning „ Học (phát triển) định hoàn toàn phù hợp với tập huấn luyện „ Chuyển biểu diễn định học thành tập luật tương ứng (tạo luật cho đường từ nút gốc đến nút lá) „ Rút gọn (tổng quát hóa) luật (độc lập với luật khác), khác) cách loại bỏ điều kiện giúp mang lại cải thiện hiệu phân loại luật „ Sắp Sắ xếp ế lluật ật rút út gọn theo th khả (hiệu quả) phân loại, sử dụng thứ tự cho việc phân loại ví dụ tương lai Học Máy – IT 4862 Outlook=? Sunny Overcast Humidity=? High No Yes Normal Yes Rain Wind=? Strong Weak No Yes IF (Outlook=Sunny) Λ ((Humidity=Normal) y ) THEN (PlayTennis=Yes) 30 Các thuộc tính có ggiá trị liên tục „ Cần xác định (chuyển đổi thành) thuộc tính có giá trị rời rạc, cách chia khoảng giá trị liên tục thành tập khoảng (intervals) không giao „ Đối với thuộc tính (có giá trị liên tục) A, tạo thuộc tính kiểu nhị phân Av cho: Av A>v, sai ngược lại „ Làm để xác định giá trị ngưỡng v “tốt nhất”? → Chọn giá trị ngưỡng v giúp sinh giá trị Information Gain cao „ Ví dụ: • Sắp ắ xếp ế ví dụ học theo giá trị tăng dần ầ đối ố với thuộc tính Temperature • Xác định ví dụ học liền kề khác phân lớp • Có giá trị ngưỡng có thể: Temperature54 Temperature85 • Thuộc tính kiểu ể nhị phân Temperature54 chọn, Gain(S,Temperature54) > Gain(S,Temperature85) Temperature 40 48 60 72 80 90 PlayTennis No No Yes Yes Yes No Học Máy – IT 4862 31 Các đánh giá khác cho lựa chọn thuộc tính „ Xu hướng đánh giá Information Gain → Ưu tiên thuộc tính có nhiều giá trị thuộc tính có giá trị Vd: Thuộc tính Date có số ố lượng ấ lớn giá trị ể - Thuộc tính có giá trị Information Gain cao - Một thuộc tính phân loại hoàn hảo toàn tập huấn luyện (thuộc tính phân chia ví dụ học thành ấ nhiều ề tập có kích thước nhỏ) - Thuộc tính chọn thuộc tính kiểm tra nút gốc (của định có mức độ sâu 1, rộng, rộng nhiều phân nhánh) „ Một đánh giá khác: Gain Ratio →Giảm ảnh hưởng thuộc tính có (rất) nhiều giá trị Gain( S , A) SplitInformation( S , A) Sv S SplitInfor mation ( S , A) = − ∑ log v S v ∈Values ( A ) S GainRatio( S , A) = Học Máy – IT 4862 (trong Values(A) tập giá trị thuộc tính A, Sv={x| x∈S, xA=v}) 32 Xử lý thuộc tính thiếu ggiá trị (1) „ Giả sử thuộc tính A ứng cử cho thuộc tính kiểm tra nút n „ Xử lý với ví dụ x (thiếu) giá trị thuộc tính A (tức là: xA không xác định)? „ Gọi Sn tập ví dụ học gắn với nút n có giá trị thuộc tính A →Giải pháp 1: xA giá trị phổ biến thuộc tính A g số ví dụ thuộc tập p Sn →Giải pháp 2: xA giá trị phổ biến thuộc tính A số ví dụ thuộc tập Sn có phân lớp với x Học Máy – IT 4862 33 Xử lý thuộc tính thiếu ggiá trị (2) →Giải pháp 3: • Tính xác suất pv giá trị v thuộc tính A • Gán phần (fraction) pv ví dụ x nhánh tương ứng nút n • Những ví dụ phần (fractional instances) sử dụng để tính giá trị Information Gain Ví dụ: • Một thuộc th ộ tí tính h kiểu kiể nhị hị phân hâ (0/1) A • Nút n bao gồm: - Một ví dụ x (thiếu giá trị A) - víí d dụ có ó giá iá ttrịị ới A bằ 1, - ví dụ có giá trị A p(xA=1) = 4/10 = 0.4 p(xA=0) = 6/10 = 0.6 Học Máy – IT 4862 Nút n A=1 A=0 • ví dụ có giá trị A =1 • ví dụ có giá trị A =0 • 0.4 x • 0.6 x 34 Các thuộc tính có chi p phí khác „ Trong số toán học máy, thuộc tính gắn với chi phí (độ quan trọng) khác • Ví dụ: Trong việc học để phân loại bệnh y tế, BloodTest có chi phí $150, TemperatureTest có chi phí $10 „ Xu hướng học định • Sử dụng nhiều tốt thuộc tính có chi phí thấp • Chỉ sử dụng thuộc tính có chi phí cao cần thiết (để giúp đạt phân loại đáng tin cậy) „ Làm để học định với chi phí thấp? → Sử dụng đánh giá khác IG cho việc xác định thuộc tính kiểm tra 2Gain ( S , A) − (Cost ( A) + 1) w Gain ( S , A) Cost ( A) [Tan and Schlimmer, 1990] [Nunez, 1988; 1991] Học Máy – IT 4862 (w (∈[0,1]) số xác định mức độ quan trọng chi phí I f Information ti Gain) G i ) 35 Học qquyết định – Khi nào? „ Các ví dụ học biểu diễn cặp (thuộc tính,giá trị) • Phù hợp với thuộc tính có giá trị rời rạc • Đối với thuộc tính có giá trị liên tục, phải rời rạc hóa „ Hàm mục tiêu có giá trị đầu giá trị rời rạc • Ví dụ: Phân loại ví dụ vào lớp phù hợp „ Rất phù hợp hàm mục tiêu biểu diễn dạng tách rời (disjunctive form) „ Tập huấn luyện chứa nhiễu/lỗi • Lỗi phân loại (nhãn lớp) ví dụ học • Lỗi ttrong giá iá ttrịị thuộc th ộ tính tí h biểu biể diễn diễ víí dụ d học h „ Tập huấn luyện chứa thuộc tính thiếu giá trị • Các g giá ttrịị đối đố với ột thuộc t uộc tính t không ô g xác ác định đị đối đố với ột số ví dụ học Học Máy – IT 4862 36 Tài liệu tham khảo • T M Mitchell Machine Learning McGraw-Hill, 1997 • M M N Nunez Economic E i i induction: d ti A case study t d I In Proceedings of the 3rd European Working Session on Learning, EWSL-88, pp.139-145 California: Morgan Kaufmann, 1988 • M Nunez The use of background knowledge in decision tree induction Machine Learning, 6(3): 231-250, 1991 • M M Tan and J J C C Schlimmer Schlimmer Two case studies in costcost sensitive concept acquisition In Proceedings of the 8th National Conference on Artificial Intelligence, AAAI-90, pp.854-860, 1990 Học Máy – IT 4862 37 [...]... việc học để phân loại các bệnh y tế, BloodTest có chi phí $150, trong khi TemperatureTest có chi phí $10 „ Xu hướng học các cây quyết định • Sử dụng càng nhiều càng tốt các thuộc tính có chi phí thấp • Chỉ sử dụng các thuộc tính có chi phí cao khi cần thiết (để giúp đạt được các phân loại đáng tin cậy) „ Làm sao để học một cây quyết định với chi phí thấp? → Sử dụng các đánh giá khác IG cho việc xác định. .. No Yes Y Yes Wind=? i Strong Mild Humidity=? High No Học Máy – IT 4862 Rain Overcast No Weak Yes Normal Yes 22 Ưu tiên trongg học câyy quyết q y định ((2)) „ Đối với một tập các ví dụ học, có thể tồn tại nhiều (hơn 1) quyết y định ị p phù hợp ợp với các ví dụ ụ học ọ nàyy câyy q „ Cây quyết định nào (trong số đó) được chọn? „ ID3 chọn cây quyết định phù hợp đầu tiên tìm thấy trong quá trình tìm kiếm... 0-} Học Máy – IT 4862 Node2 SRain= {3+, 2-} Normal • Gain(SSunny, Humidity) = = 0.97 →Vì vậy, Humidity được chọn là thuộc tính kiểm tra cho nút Node1! Rain 19 Học cây quyết định – Chiến lược tìm kiếm (1) „ ID3 tìm kiếm trong không gian các giả thiết (các cây quyết định có thể) một cây quyết định phù hợp (fits) các ví dụ học „ ID3 thực hiện chiến lược tìm kiếm từ đơn giản đến phức tạp, bắt đầu với cây. .. hắ llạii các á llựa chọn h ttrước ớ đó ((without ith t b backtracking) kt ki ) „ Chiến lược tìm kiếm của giải thuật ID3 • Ưu tiên các cây quyết định đơn giản (ít mức độ sâu) • Ưu tiên các cây quyết định trong đó một thuộc tính có giá trị Information Gain càng lớn thì sẽ là thuộc tính kiểm tra của một nút càng à gần ầ nút út gốc ố Học Máy – IT 4862 23 Các vấn đề trongg ID3 „ Cây quyết định học được... cải thiện giả thiết hiện tại → Nhờ vậy, quá trình tìm kiếm (lời giải) ít bị ảnh hưởng bởi các lỗi (nếu có) của một số ít ví dụ học Học Máy – IT 4862 21 Ưu tiên trongg học câyy quyết q y định ((1)) „ Cả 2 cây quyết định dưới đây đều phù hợp với tập học đã cho „ Vậy thì, thì cây quyết định nào sẽ được ưu tiên (được học) bởi giải thuật ID3? O tl k ? Outlook=? Outlook=? Sunny Overcast Humidity=? High No... Học Máy – IT 4862 (w (∈[0,1]) là hằng số xác định mức độ quan trọng giữa chi phí và I f Information ti Gain) G i ) 35 Học cây qquyết định – Khi nào? „ Các ví dụ học được biểu diễn bằng các cặp (thuộc tính,giá trị) • Phù hợp với các thuộc tính có giá trị rời rạc • Đối với các thuộc tính có giá trị liên tục, phải rời rạc hóa „ Hàm mục tiêu có giá trị đầu ra là các giá trị rời rạc • Ví dụ: Phân loại các. .. các nút • Luôn lựa chọn một nút mà việc cắt tỉa nút đó tối đa hóa khả năng phân loại của cây quyết định đối với tập tối ưu (validation set) • Kết thúc, khi việc cắt tỉa thêm nút làm giảm khả năng phân loại của cây quyết định đối với tập tối ưu (validation set) Học Máy – IT 4862 29 Rule post-pruning „ Học (phát triển) cây quyết định hoàn toàn phù hợp với tập huấn luyện „ Chuyển biểu diễn cây quyết định. .. Weak Yes Học được một cây quyết định phức tạp hơn! ((chỉ bởi vì ví dụ ụ nhiễu/lỗi)) Outlook=? Sunny Overcast Humidity=? High No Học Máy – IT 4862 Rain Overcast Yes Normal …được phát triển tiếp! Rain Wind=? Strong No Weak Yes 25 Over-fitting trong học cây quyết định (1) Tiếp tục quá trình học cây quyết định sẽ làm giảm độ chính xác đối với tập thử nghiệm mặc dù tăng độ chính xác đối với tập học [Mitchell,... Class_Labels, Attributes) Tạo nút Root của cây quyết định If tất cả các ví dụ của Training_Set thuộc cùng lớp c, Return Cây quyết định có nút Root được gắn với (có nhãn) lớp c If Tập thuộc tính Attributes là rỗng, Return Cây quyết định có nút Root được gắn với nhãn lớp p ≡ Majority_Class_Label(Training j y_ _ ( g_Set)) A ← Thuộc tính trong tập Attributes có khả năng phân loại “tốt nhất” đối với Training_Set... khác nhau → Cải tiến của giải thuật ID3 với tất cả các vấn đề nêu trên được giải quyết: giải thuật C4 C4.5 5 Học Máy – IT 4862 24 Over-fitting trong học cây quyết định (1) „ Một cây quyết định phù hợp hoàn hảo đối với tập huấn luyện có phải là giải pháp tối ố ưu? Outlook=? Sunny Humidity=? High „ Nếu như tập huấn luyện có nhiễu/lỗi…? Vd: Một ví dụ nhiễu/lỗi (Ví dụ thực sự mang nhãn Yes, nhưng bị gán ... môn ô học: h „ Giới thiệu chung g „ Đánh giá hiệu hệ thống học máy „ Các phương pháp học dựa xác suất „ Các phương pháp học có giám sát „ Học định (Decision tree learning) „ Các phương pháp học. .. pháp học không giám sát „ L cộng Lọc ộ tác tá „ Học tăng cường Học Máy – IT 4862 Học câyy q y định – Giới thiệu „ Học định (Decision tree –DT– learning) • Để học (xấp xỉ) hàm mục tiêu có giá trị... giải) bị ảnh hưởng lỗi (nếu có) số ví dụ học Học Máy – IT 4862 21 Ưu tiên trongg học câyy q y định ((1)) „ Cả định phù hợp với tập học cho „ Vậy thì, định ưu tiên (được học) giải thuật ID3? O tl

Ngày đăng: 13/11/2015, 18:08

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan