Học Máy (IT4866) Nhập môn Học máy và Khai phá dữ liệu (IT3190) Nguyễn Nhật Quang quang nguyennhat@hust edu vn Trường Đại học Bách Khoa Hà Nội Viện Công nghệ thông tin và truyền thông Năm học 2020 2021[.]
Nhập môn Học máy Khai phá liệu (IT3190) Nguyễn Nhật Quang quang.nguyennhat@hust.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 2020-2021 Nội dung môn học: ◼ Giới thiệu Học máy Khai phá liệu ◼ Tiền xử lý liệu ◼ Đánh giá hiệu hệ thống ◼ Hồi quy ❑ ❑ Bài toán hồi quy Hồi quy tuyến tính (Linear regression) ◼ Phân lớp ◼ Phân cụm ◼ Phát luật kết hợp Nhập môn Học máy Khai phá liệu – Introduction to Machine learning and Data mining Bài toán hồi quy ◼ Hồi quy (regression) thuộc nhóm tốn học có giám sát (supervised learning) ◼ Mục tiêu toán hồi quy dự đoán vector giá trị liên tục (số thực) f: X → Y Y vector giá trị số thực Nhập môn Học máy Khai phá liệu – Introduction to Machine learning and Data mining Bài toán hồi quy: Đánh giá hiệu ❑ ❑ Giá trị (kết quả) đầu hệ thống giá trị số Hàm đánh giá lỗi ◼ MAE (mean absolute error): ◼ RMSE (root mean squared error): ◼ Lỗi tổng thể toàn tập thử nghiệm: Error = D _ test Error ( x); xD _ test •n: Số lượng đầu (outputs) •o(x): Vector giá trị đầu dự đoán hệ thống ví dụ x •d(x): Vector giá trị đầu thực (đúng/mong muốn) ví dụ x ❑ Độ xác (Accuracy) hàm đảo (inverse function) hàm lỗi (Error) Nhập môn Học máy Khai phá liệu – Introduction to Machine learning and Data mining Hồi quy tuyến tính – Giới thiệu ◼ Một phương pháp học máy đơn-giản-nhưng-hiệu-quả phù hợp hàm mục tiêu (cần học) hàm tuyến tính n f ( x) = w0 + w1 x1 + w2 x2 + + wn xn = w0 + wi xi i =1 ◼ (wi,xi R) Cần học (xấp xỉ) hàm mục tiêu f f: X → Y • X: Miền khơng gian đầu vào (khơng gian vectơ n chiều – Rn) • Y: Miền khơng gian đầu (miền giá trị số thực – R) • f: Hàm mục tiêu cần học (một hàm ánh xạ tuyến tính) ▪ Thực chất, học vectơ trọng số: w = (w0, w1, w2, …,wn) Nhập môn Học máy Khai phá liệu – Introduction to Machine learning and Data mining Hồi quy tuyến tính – Ví dụ Hàm tuyến tính f(x) phù hợp? x f(x) 0.13 -0.91 1.02 -0.17 3.17 1.61 -2.76 -3.31 1.44 0.18 5.28 3.36 -1.74 -2.46 7.93 5.56 f(x) x Ví dụ: f(x) = -1.02 + 0.83x Nhập môn Học máy Khai phá liệu – Introduction to Machine learning and Data mining Các ví dụ học/kiểm thử ◼ Đối với ví dụ học x=(x1,x2, ,xn), xiR • Giá trị đầu mong muốn cx (R) n • Giá trị đầu thực tế (tính hệ thống) y x = w0 + wi xi i =1 → wi đánh giá thời hệ thống giá trị trọng số thuộc tính thứ i → Giá trị đầu thực tế yx mong muốn (xấp xỉ) cx ◼ Đối với ví dụ kiểm thử z=(z1,z2, ,zn) • Cần dự đốn (tính) giá trị đầu • Bằng cách áp dụng hàm mục tiêu học f Nhập môn Học máy Khai phá liệu – Introduction to Machine learning and Data mining Hàm đánh giá lỗi ◼ Giải thuật học hồi quy tuyến tính cần phải xác định Hàm đánh giá lỗi (Error function) → Đánh giá mức độ lỗi hệ thống giai đoạn huấn luyện → Còn gọi Hàm mát (Loss function) ◼ Định nghĩa hàm lỗi E • Lỗi hệ thống ví dụ học x: n 1 E ( x) = (c x − y x ) = c x − w0 − wi xi 2 i =1 • Lỗi hệ thống toàn tập huấn luyện D: n 1 E = E ( x) = (c x − y x ) = c x − w0 − wi xi xD xD xD i =1 Nhập môn Học máy Khai phá liệu – Introduction to Machine learning and Data mining Hồi quy tuyến tính – Giải thuật ◼ Việc học hàm mục tiêu f tương đương với việc học vectơ trọng số w cho cực tiểu hóa giá trị lỗi huấn luyện E → Phương pháp có tên gọi “Least-Square Linear Regression” ◼ Giai đoạn huấn luyện • Khởi tạo vectơ trọng số w • Tính tốn giá trị lỗi huấn luyện E • Cập nhật vectơ trọng số w theo quy tắc delta (delta rule) • Lặp lại, hội tụ giá trị lỗi nhỏ (cục bộ) E ◼ Giai đoạn dự đốn Đối với ví dụ z, giá trị đầu dự đoán bằng: n f ( z ) = w *0 + w *i zi i =1 Trong w*=(w*0,w*1, , w*n) vectơ trọng số học Nhập môn Học máy Khai phá liệu – Introduction to Machine learning and Data mining Quy tắc delta ◼ Để cập nhật vectơ trọng số w theo hướng giúp giảm bớt giá trị lỗi huấn luyện E • η tốc độ học (là số dương) → Xác định mức độ thay đổi giá trị trọng số bước học • Cập nhật theo ví dụ (Instance-to-instance/incremental update): wi ← wi + η(cx-yx)xi • Cập nhật theo đợt/lô (Batch update): wi wi + (c x − y x ) xi xD ◼ Các tên gọi khác quy tắc delta • LMS (least mean square) rule • Adaline rule • Widrow-Hoff rule Nhập môn Học máy Khai phá liệu – Introduction to Machine learning and Data mining 10 Cập nhật theo đợt/theo ví dụ ◼ Cập nhật theo đợt/lơ (Batch update) • Tại bước học, giá trị trọng số cập nhật sau tất ví dụ học lơ (batch) học hệ thống - Giá trị lỗi tính tích lũy tất ví dụ học lô - Các giá trị trọng số cập nhật theo giá trị lỗi tích lũy tổng thể lơ ◼ Cập nhật theo ví dụ (Instance-to-instance/incremental update) • Tại bước học, giá trị trọng số cập nhật sau ví dụ học học hệ thống - Giá trị lỗi (riêng biệt) tính cho ví dụ học đưa vào - Các giá trị trọng số cập nhật theo giá trị lỗi Nhập môn Học máy Khai phá liệu – Introduction to Machine learning and Data mining 11 LSLR_batch(D, η) for each thuộc tính fi wi ← giá trị (nhỏ) khởi tạo ngẫu nhiên while not CONVERGENCE for each thuộc tính fi delta_wi ← for each ví dụ học xD Tính tốn giá trị đầu thực tế yx for each thuộc tính fi delta_wi ← delta_wi + η(cx-yx)xi for each thuộc tính fi wi ← wi + delta_wi end while return w Nhập môn Học máy Khai phá liệu – Introduction to Machine learning and Data mining 12 LSLR_incremental(D, η) for each thuộc tính fi wi ← giá trị (nhỏ) khởi tạo ngẫu nhiên while not CONVERGENCE for each ví dụ học xD Tính tốn giá trị đầu thực tế yx for each thuộc tính fi wi ← wi + η(cx-yx)xi end while return w Nhập môn Học máy Khai phá liệu – Introduction to Machine learning and Data mining 13 Các điều kiện kết thúc trình học Nhập môn Học máy Khai phá liệu – Introduction to Machine learning and Data mining 14 Các điều kiện kết thúc trình học ◼ Trong giải thuật LSLR_batch LSLR_incremental, trình học kết thúc điều kiện định CONVERGENCE thỏa mãn ◼ Các điều kiện kết thúc học thường định nghĩa dựa số tiêu chí đánh giá hiệu hệ thống • Kết thúc, giá trị lỗi nhỏ giá trị ngưỡng • Kết thúc, giá trị lỗi bước học lớn giá trị lỗi bước học trước • Kết thúc, khác biệt giá trị lỗi bước học liên tiếp nhỏ giá trị ngưỡng • Nhập môn Học máy Khai phá liệu – Introduction to Machine learning and Data mining 15 ... Tại bước học, giá trị trọng số cập nhật sau ví dụ học học hệ thống - Giá trị lỗi (riêng biệt) tính cho ví dụ học đưa vào - Các giá trị trọng số cập nhật theo giá trị lỗi Nhập môn Học máy Khai... Nhập môn Học máy Khai phá liệu – Introduction to Machine learning and Data mining Hồi quy tuyến tính – Giới thiệu ◼ Một phương pháp học máy đơn-giản-nhưng-hiệu-quả phù hợp hàm mục tiêu (cần học) ... q trình học Nhập mơn Học máy Khai phá liệu – Introduction to Machine learning and Data mining 14 Các điều kiện kết thúc trình học ◼ Trong giải thuật LSLR_batch LSLR_incremental, trình học kết