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

Nhập môn trí tuệ nhân tạo

37 0 0

Đ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

Nội dung

11/16/2022 VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG SCHOOL OF INFORMATION AND COMMUNICATIONS TECHNOLOGY IT3160 Nhập mơn Trí tuệ nhân tạo Artificial Intelligence PGS.TS Phạm Văn Hải & PGS.TS Lê Thanh Hương https://users.soict.hust.edu.vn/haipv Nội dung môn học       Chương Tổng quan Chương Tác tử thông minh Chương Giải vấn đề Chương Tri thức suy diễn Chương Biểu diễn tri thức Chương Học máy  Giới thiệu học máy  K láng giềng gần  Phân lớp Naïve Bayes  Học định  Mạng nơron https://users.soict.hust.edu.vn/haipv 11/16/2022 Giới thiệu Học máy • Học máy (ML - Machine Learning) lĩnh vực nghiên cứu Trí tuệ nhân tạo (Artificial Intelligence) • Câu hỏi trung tâm ML: → “How can we build computer systems that automatically improve with experience, and what are the fundamental laws that govern all learning processes?” [Mitchell, 2006] • Vài quan điểm học máy: → Một q trình nhờ hệ thống cải thiện hiệu suất (hiệu hoạt động) [Simon, 1983] → Việc lập trình máy tính để tối ưu hóa tiêu chí hiệu suất dựa liệu kinh nghiệm khứ [Alpaydin, 2010] https://users.soict.hust.edu.vn/haipv Một máy học • Ta nói máy tính có khả học tự cải thiện hiệu suất hoạt động P cho công việc T cụ thể, dựa vào kinh nghiệm E • Như tốn học máy biểu diễn (T, P, E) • T: cơng việc (nhiệm vụ) • P: tiêu chí đánh giá hiệu • E: kinh nghiệm https://users.soict.hust.edu.vn/haipv 11/16/2022 Ví dụ toán học máy (1) Lọc thư rác (email spam filtering) •T: Dự đoán (để lọc) thư điện tử thư rác (spam email) •P: số lượng thư điện tử gửi đến phân loại xác •E: Một tập thư điện tử (emails) mẫu, thư điện tử biểu diễn tập thuộc tính (vd: tập từ khóa) nhãn lớp (thư thường/thư rác) tương ứng Thư rác? Thư thường Thư rác Trí Tuệ Nhân Tạo https://users.soict.hust.edu.vn/haipv Ví dụ tốn học máy (2) Nhận dạng chữ viết tay Nhận dạng phân loại từ ảnh chữ viết T: Tỷ lệ (%) từ nhận dạng phân loại P: Một tập ảnh chữ viết, ảnh gắn với định danh từ Từ nào? E: we in the right way Trí Tuệ Nhân Tạo https://users.soict.hust.edu.vn/haipv 11/16/2022 Ví dụ tốn học máy (3) Gán nhãn ảnh    T: đưa vài mô tả ý nghĩa ảnh P: ? E: Một tập ảnh, ảnh gán tập từ mơ tả ý nghĩa chúng Máy học (1) • Học ánh xạ (hàm): • x: quan sát (dữ liệu), kinh nghiệm • y: phán đốn, tri thức mới, kinh nghiệm mới, … • Hồi quy (regression): y số thực • Phân loại (classification): y thuộc tập rời rạc (tập nhãn lớp) https://users.soict.hust.edu.vn/haipv 11/16/2022 Máy học (2) • Học từ đâu? • Từ quan sát khứ (tập học) {x1, x2, …, xN}; {y1, y2,…, yM} • Sau học: • Thu mơ hình, kinh nghiệm, tri thức • Dùng để suy diễn (phán đốn) cho quan sát tương lai Y = f(x) https://users.soict.hust.edu.vn/haipv Hai tốn học • Học có giám sát (supervised learning): cần học hàm y = f(x) từ tập học {{x1, x2, …, xN}; {y1, y2,…, yN}} cho yi  f(xi) • Phân loại (phân lớp): y nhận giá trị từ tập rời rạc, chẳng hạn {cá, cây, quả, mèo} • Hồi quy: y nhận giá trị số thực • Học khơng giám sát (unsupervised learning): cần học hàm y = f(x) từ tập học cho trước {x1, x2, …, xN} • Y cụm liệu • Y cấu trúc ẩn 11/16/2022 Học có giám sát: ví dụ Lọc thư rác  Phân loại trang web  Dự đốn rủi ro tài  Dự đoán biến động số chứng khoán  Phát công mạng  Học không giám sát: ví dụ (1)  Phân cụm (clustering)   Phát cụm liệu, cụm tính chất,… Community detection  Phát cộng đồng mạng xã hội https://users.soict.hust.edu.vn/haipv 11/16/2022 Học khơng giám sát: ví dụ (2)  Trends detection   Phát xu hướng, thị yếu,… Entity-interaction analysis Quá trình học máy: Tập học (Training set) Huấn luyện hệ thống Tập liệu (Dataset) Tập thử nghiệm (Test set) Thử nghiệm hệ thống học https://users.soict.hust.edu.vn/haipv 11/16/2022 Q trình học máy: tồn diện Tập học (Training set) Huấn luyện hệ thống Tập liệu (Dataset) Tập tối ưu (Validation set) Tối ưu hóa tham số (nếu có) Tập thử nghiệm (Test set) Thử nghiệm hệ thống học https://users.soict.hust.edu.vn/haipv Đánh giá lựa chọn mơ hình 11/16/2022 Thiết kế hệ thống học (1) • Lựa chọn ví dụ học (training/learning examples) • Các thơng tin hướng dẫn q trình học (training feedback) chứa ví dụ học, cung cấp gián tiếp (vd: từ mơi trường hoạt động) • Các ví dụ học theo kiểu có giám sát (supervised) hay khơng có giám sát (unsupervised) • Các ví dụ học nên tương thích với (đại diện cho) ví dụ làm việc hệ thống tương lai (future test examples) • Xác định hàm mục tiêu (giả thiết, khái niệm) cần học • F: X → {0,1} • F: X → Một tập nhãn lớp • F: X → R+ (miền giá trị số thực dương) •… https://users.soict.hust.edu.vn/haipv Thiết kế hệ thống học (2) • Lựa chọn cách biểu diễn cho hàm mục tiêu cần học • • • • • Hàm đa thức (a polynomial function) Một tập luật (a set of rules) Một định (a decision tree) Một mạng nơ-ron nhân tạo (an artificial neural network) … • Lựa chọn giải thuật học máy học (xấp xỉ) hàm mục tiêu • • • • • Phương pháp học hồi quy (Regression-based) Phương pháp học quy nạp luật (Rule induction) Phương pháp học định (ID3 C4.5) Phương pháp học lan truyền ngược (Back-propagation) … 11/16/2022 Các vấn đề Học máy (1)  Giải thuật học máy (Learning algorithm) • Những giải thuật học máy học (xấp xỉ) hàm mục tiêu cần học? • Với điều kiện nào, giải thuật học máy chọn hội tụ (tiệm cận) hàm mục tiêu cần học? • Đối với lĩnh vực toán cụ thể cách biểu diễn ví dụ (đối tượng) cụ thể, giải thuật học máy thực tốt nhất? Các vấn đề Học máy (2) • Các ví dụ học (Training examples) • Bao nhiêu ví dụ học đủ? • Kích thước tập học (tập huấn luyện) ảnh hưởng độ xác hàm mục tiêu học được? • Các ví dụ lỗi (nhiễu) và/hoặc ví dụ thiếu giá trị thuộc tính (missing-value) ảnh hưởng độ xác? https://users.soict.hust.edu.vn/haipv 10 11/16/2022 MLE: Ví dụ • Tập H bao gồm giả thiết • h1: Anh ta chơi tennis • h2: Anh ta khơng chơi tennis D: Tập liệu (các ngày) mà thuộc tính Outlook có giá trị Sunny thuộc tính Wind có giá trị Strong • Tính giá trị khả xảy (likelihood values) liệu D giả thiết: P(D|h1) P(D|h2) • P(Outlook=Sunny, Wind=Strong|h1)= 1/8 • P(Outlook=Sunny, Wind=Strong|h2)= 1/4 • Giả thiết MLE hMLE=h1 P(D|h1) ≥ P(D|h2); ngược lại hMLE=h2 → Bởi P(Outlook=Sunny, Wind=Strong|h1) < P(Outlook=Sunny, Wind=Strong|h2), hệ thống kết luận rằng: Anh ta khơng chơi tennis! Phân loại Nạve Bayes (1) • Biểu diễn tốn phân loại (classification problem) • Một tập học D_train, ví dụ học x biểu diễn vectơ n chiều: (x1, x2, , xn) • Một tập xác định nhãn lớp: C={c1, c2, , cm} • Với ví dụ (mới) z, z phân vào lớp nào? • Mục tiêu: Xác định phân lớp (phù hợp) z c MAP  arg max P(ci | z ) ci C c MAP  arg max P(ci | z1 , z , , z n ) ci C c MAP  arg max ci C P ( z1 , z , , z n | ci ).P (ci ) P ( z1 , z , , z n ) (bởi định lý Bayes) 23 11/16/2022 Phân loại Nạve Bayes (2) • Để tìm phân lớp z… c MAP  arg max P( z1 , z , , z n | ci ).P(ci ) ci C  (P(z1,z2, ,zn) với lớp) Giả thuyết (assumption) phương pháp phân loại Naïve Bayes: Các thuộc tính độc lập có điều kiện (conditionally independent) lớp n P ( z1 , z , , z n | ci )   P ( z j | ci ) j 1  Phân loại Nạve Bayes tìm phân lớp z n c NB  arg max P (ci ). P ( z j | ci ) ci C j 1 Phân loại Naïve Bayes: Giải thuật • Giai đoạn học (training phase), sử dụng tập học Đối với phân lớp (mỗi nhãn lớp) ciC •Tính giá trị xác suất tiên nghiệm: P(ci) •Đối với giá trị thuộc tính xj, tính giá trị xác suất xảy giá trị thuộc tính phân lớp ci: P(xj|ci) • Giai đoạn phân lớp (classification phase), ví dụ •Đối với phân lớp ciC, tính giá trị biểu thức: n P(ci ). P( x j | ci ) j 1 • Xác định phân lớp z lớp c* n c*  arg max P(ci ). P( x j | ci ) ci C j 1 24 11/16/2022 Phân loại Naïve Bayes: Ví dụ (1) Một sinh viên trẻ với thu nhập trung bình mức đánh giá tín dụng bình thường mua máy tính? Rec ID Age Income Student Credit_Rating Young High No Fair Buy_Computer No Young High No Excellent No Medium High No Fair Yes Old Medium No Fair Yes Old Low Yes Fair Yes Old Low Yes Excellent No Medium Low Yes Excellent Yes Young Medium No Fair No Young Low Yes Fair Yes 10 Old Medium Yes Fair Yes 11 Young Medium Yes Excellent Yes 12 Medium Medium No Excellent Yes 13 Medium High Yes Fair Yes 14 Old Medium No Excellent No http://www.cs.sunysb.edu/~cse634/lecture_notes/07classification.pdf Phân loại Nạve Bayes: Ví dụ (2) • Biểu diễn tốn phân loại • z = (Age=Young,Income=Medium,Student=Yes,Credit_Rating=Fair) • Có phân lớp có thể: c1 (“Mua máy tính”) c2 (“Khơng mua máy tính”) • Tính giá trị xác suất trước cho phân lớp • P(c1) = 9/14 • P(c2) = 5/14 • Tính giá trị xác suất giá trị thuộc tính phân lớp • P(Age=Young|c1) = 2/9; • P(Income=Medium|c1) = 4/9; P(Age=Young|c2) = 3/5 P(Income=Medium|c2) = 2/5 • P(Student=Yes|c1) = 6/9; P(Student=Yes|c2) = 1/5 • P(Credit_Rating=Fair|c1) = 6/9; P(Credit_Rating=Fair|c2) = 2/5 25 11/16/2022 Phân loại Nạve Bayes: Ví dụ (3) • Tính tốn xác suất xảy (likelihood) ví dụ z phân lớp • Đối với phân lớp c1 P(z|c1) = P(Age=Young|c1).P(Income=Medium|c1).P(Student=Yes|c1) P(Credit_Rating=Fair|c1) = (2/9).(4/9).(6/9).(6/9) = 0.044 • Đối với phân lớp c2 P(z|c2) = P(Age=Young|c2).P(Income=Medium|c2).P(Student=Yes|c2) P(Credit_Rating=Fair|c2) = (3/5).(2/5).(1/5).(2/5) = 0.019 • Xác định phân lớp (the most probable class) • Đối với phân lớp c1 P(c1).P(z|c1) = (9/14).(0.044) = 0.028 • Đối với phân lớp c2 P(c2).P(z|c2) = (5/14).(0.019) = 0.007 →Kết luận: Anh ta (z) mua máy tính! Phân loại Nạve Bayes: Vấn đề (1) • Nếu khơng có ví dụ gắn với phân lớp ci có giá trị thuộc tính xj… P(xj|ci)=0 , vậy: n P(ci ). P( x j | ci )  j 1 • Giải pháp: Sử dụng phương pháp Bayes để ước lượng P(xj|ci) P( x j | ci )  n(ci , x j )  mp n(c )  m • n(ci): số lượng ví dụ họci gắn với phân lớp c i • n(ci,xj): số lượng ví dụ học gắn với phân lớp c i có giá trị thuộc tính xj • p: ước lượng giá trị xác suất P(xj|ci) → Các ước lượng đồng mức: p=1/k, thuộc tính fj có k giá trị • m: hệ số (trọng số) → Để bổ sung cho n(ci) ví dụ thực quan sát với thêm m mẫu ví dụ với ước lượng p 26 11/16/2022 Phân loại Naïve Bayes: Vấn đề (2) • Giới hạn độ xác tính tốn máy tính • P(xj|ci)60 28 11/16/2022 Phép biểu diễn dựa thuộc tính • Các mẫu miêu tả dạng giá trị thuộc tính (logic, rời rạc, liên tục) • Ví dụ, tình đợi bàn ăn • Các loại (lớp) mẫu khẳng định (T) phủ định (F) Patrons, WaitEstimates, Alternative, Hungry, Rain 29 11/16/2022 Cây định … cách biểu diễn giả thiết Không gian giả thiết Khi có n thuộc tính Boolean, số lượng định là? = số hàm Boolean = số giá trị khác bảng ví dụ mẫu với 2n hàng n = 22 Ví dụ, với thuộc tính Boolean, có 18,446,744,073,709,551,616 30 11/16/2022 Thuật tốn ID3 Mục đích: tìm thoả mãn tập mẫu Ý tưởng: (lặp) chọn thuộc tính quan trọng làm gốc cây/cây ID3(Examples, Target_attribute, Attributes) /* Examples: mẫu luyện Target_attribute: thuộc tính cần đốn giá trị Attributes: thuộc tính kiểm tra qua phép học định */ • Tạo nút gốc Root cho • If  Examples +, trả có nút Root, với nhãn + • If  Examples -, trả có nút Root, với nhãn – • If Attributes rỗng, trả có nút Root, với nhãn = giá trị thường xuất Target_attribute Examples Thuật tốn ID3 • Otherwise Begin: • A  thuộc tính Attributes cho phép phân loại tốt Examples • Thuộc tính định nút gốc  A • Với giá trị vi có A, • Thêm nhánh gốc, ứng với phép kiểm tra A = vi • Đặt Examplesvi = tập Examples với giá trị thuộc tính A = vi • If Examplesvi rỗng • Then, nhánh này, thêm với nhãn = giá trị thường xuất Target_attribute Examples • Else, nhánh thêm ID3(Examplesvi, Target_attribute, Attributes - {A})) • End • Return Root 31 11/16/2022 Thuộc tính tốt nhất? Sử dụng lượng thơng tin đạt Information Gain  xác định thông qua độ đo Entropy Entropy mộttập mẫu •S tập mẫu tập luyện •p+ tỷ lệ mẫu dương S •p- tỷ lệ mẫu âm S •Entropy đo độ nhiễu S = số bit cần thiết để mã hoá lớp + - thành viên ngẫu nhiên S •Entropy(S) = - p+*log2p+ - p-*log2p- 32 11/16/2022 Entropy Entropy H(X) biến ngẫu nhiên X: Ví dụ, với S gồm mẫu dương mẫu âm, kí hiệu S([9+,5-]) Entropy([9+,5-]) = - (9/14)log2(9/14) – (5/14)log2(5/14) = 0.940 Information Gain Gain(S, A) = độ giảm entropy việc phân loại A Gain(S,A) = Entropy(S) –  vValues ( A ) Sv S Entropy( Sv ) 33 11/16/2022 Ví dụ: tập luyện Day Outlook Temperature Humidity Wind PlayTennis D1 Sunny Hot High D2 Sunny Hot High Weak No D3 Overcast Hot High D4 Rain Mild High D5 Rain Cool Normal Weak D6 Rain Cool Normal Strong No D7 Overcast Cool Normal Strong Yes D8 Sunny Mild High D9 Sunny Cool Normal Sstrong = [3+,3-] Weak Yes D10 Rain Mild Normal Weak Yes S = [9+,5-] No Humidity Weak Yes ={High,Normal}: Weak Yes Shigh=[3+,4-]; Strong Yes Snormal=[6+,1-] Wind ={Weak,Strong}: S weak Weak = [6+,2-]; No D11 Sunny Mild Normal Strong Yes D12 Overcast Mild High Strong Yes D13 Overcast Hot Normal Weak Yes D14 Rain Mild High Strong No Thuộc tính phân loại tốt nhất? S:[9+,5-] E=0.940 S:[9+,5-] E=0.940 Wind Humidity High [3+,4-] E=0.985 Weak Normal [3+,3-] E=1.000 [6+,2-] E=0.811 [6+,1-] E=0.592 Gain(S,Wind) = Entropy(S) – Strong  vValues ( A ) Sv S Entropy( Sv ) = Entropy(S) – (8/14)Entropy(SWeak) – (6/14)Entropy(SStrong) = 0.940 – (8/14)*0.811 – (6/14)*1.00 = 0.048 Gain(S,Humidity) = 0.940 – (7/14)*0.985 – (7/14)*0.592 = 0.151 Gain(S,Outlook)=0.246; Gain(S,Humidity)=0.151 Gain(S,Wind)=0.048; Gain(S,Temperature)=0.029 34 11/16/2022 SSunny = {D1,D2,D8,D9,D11} Gain(SSunny, Humidity ) = 970 – (3/5)*0.0 – (2/5)*0.0 = 970 Thuộc tính tiếp? Gain(SSunny, Temperature ) = 970 –(2/5)*0.0– (2/5)*1.0– (1/5)*0.0=.570 Gain(SSunny, Wind ) = 0.970 – (2/5)*1.0 – (3/5)*0.918 = 0.019 Cây định sử dụng nào? Các tốn với đặc tính sau thích hợp với học định: • • • • Các mẫu mơ tả cặp thuộc tính-giá trị Hàm đích có giá trị rời rạc Cần có giả thiết rời rạc Các liệu luyện có nhiễu • Dữ liệu luyện thiếu giá trị thuộc tính Ví dụ: • Chẩn đốn y tế • Phân tích nguy tín dụng • Mơ hình hố việc lập lịch 35 11/16/2022 Đánh giá lựa chọn mơ hình Đo độ xác • • Làm để biết h ≈ f ? Sử dụng lý thuyết tính tốn Thử giả thiết h tập ví dụ (tập thử) (sử dụng mức độ phân bố mẫu tập luyện) Learning curve = % xác tập thử, sử dụng hàm xây dựng tập luyện 36 11/16/2022 Tài liệu tham khảo • E Alpaydin Introduction to Machine Learning The MIT Press, 2010 • T M Mitchell Machine Learning McGraw-Hill, 1997 • T M Mitchell The discipline of machine learning CMU technical report, 2006 • H A Simon Why Should Machines Learn? In R S Michalski, J Carbonell, and T M Mitchell (Eds.): Machine learning: An artificial intelligence approach, chapter 2, pp 25-38 Morgan Kaufmann, 1983 • A Kontorovich and Weiss A Bayes consistent 1-NN classifier Proceedings of the 18th International Conference on Artificial Intelligence and Statistics (AISTATS) JMLR: W&CP volume 38, 2015 • A Guyader, N Hengartner On the Mutual Nearest Neighbors Estimate in Regression Journal of Machine Learning Research 14 (2013) 23612376 • L Gottlieb, A Kontorovich, and P Nisnevitch Near-optimal sample compression for nearest neighbors Advances in Neural Information Processing Systems, 2014 37

Ngày đăng: 19/12/2022, 16:02

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w