Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 17 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
17
Dung lượng
355,99 KB
Nội dung
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 dựa láng giềng gần (Nearest neighbors learning) Các p phương gp pháp p học không gg giám sát Lọc cộng tác Học tăng cường Học Máy – IT 4862 Học dựa láng giềng gần Một số tên gọi khác phương pháp học dựa láng giềng gần (Nearest neighbors learning) • Instance-based learning • Lazy learning • Memory Memory-based based learning Ý tưởng phương pháp học dựa láng giềng gần ộ tập ập ví dụ ụ học ọ • Với ─ ─ (Đơn giản là) lưu lại ví dụ học Chưa xây dựng mô hình (mô tả) rõ ràng tổng quát hàm mục tiêu cần học • Đối với ví dụ cần phân loại/dự đoán ─ Xét quan hệ ví dụ với ví dụ học để gán giá trị hàm mục tiêu (một nhãn lớp, giá trị thực) Học Máy – IT 4862 Học dựa láng giềng gần Biểu diễn đầu vào toán • Mỗi ví dụ x biểu diễn vectơ n chiều g không gg gian vectơ X∈Rn • x = (x1,x2,…,xn), xi (∈R) số thực C thể Có ể áp dụng với ả kiểu ể toán học • Bài toán phân lớp (classification) Hàm mục ụ tiêu có g giá trịị rời rạc ((a discrete-valued target g function)) ─ Đầu hệ thống số giá trị rời rạc xác định trước (một nhãn lớp) ─ • Bài toán dự đoán/hồi quy (prediction/regression) Hàm mục tiêu có giá trị liên tục (a continuous-valued target function) ─ Đầu hệ thống giá trị số thực ─ Học Máy – IT 4862 Ví dụ toán p phân lớp p Xét láng giềng gần → Gán z vào lớp c2 Xét láng giềng gần → Gán z vào lớp c1 Xét láng giềng gần → Gán z vào lớp c1 Học Máy – IT 4862 Lớp c1 Lớp c2 Ví dụ cần phân lớp z Giải thuật phân lớp k-NN Mỗi ví dụ học x biểu diễn thành phần: • Mô tả ví dụ: ụ x=(x1,x2,…,xn), g xi∈R • Nhãn lớp : c (∈C, với C tập nhãn lớp xác định trước) Giai đoạn học • Đơn giản lưu lại ví dụ học tập học: D = {x} Giai đoạn phân lớp: Để phân lớp cho ví dụ (mới) z • Với ví dụ học x∈D, tính khoảng cách x z • Xác định tập NB(z) – láng giềng gần z →Gồm k ví dụ học D gần với z tính theo hàm khoảng cách d • Phân z vào lớp chiếm số đông (the majority class) số lớp ủ víí dụ d học h t NB( ) NB(z) Học Máy – IT 4862 Giải thuật dự đoán k-NN Mỗi ví dụ học x biểu diễn thành phần: • Mô tả ví dụ: ụ x=(x1,x2,…,xn), g xi∈R • Giá trị đầu mong muốn: yx∈R (là số thực) Giai đoạn học • Đơn giản lưu lại ví dụ học tập học D Giai đoạn dự đoán: Để dự đoán giá trị đầu cho ví dụ z • Đối với ví dụ học x∈D, tính khoảng cách x z • Xác định tập NB(z) – láng giềng gần z → Gồm k ví dụ học D gần với z tính theo hàm khoảng cách d • Dự đoán giá trị đầu z: yz = y ∑ x∈NB ( z ) x k Machine Algorithms and Applications Học MáyLearning: – IT 4862 Một hay nhiều láng giềng gần nhất? Việc phân lớp (hay dự đoán) dựa láng giềng gần (là ví dụ học gần với ví dụ cần phân lớp/dự đoán) thường không xác • Nếu ví dụ học ví dụ bất thường, không điển hình (an outlier)) – khác so với ví dụ ụ khác • Nếu ví dụ học có nhãn lớp (giá trị đầu ra) sai – lỗi trình thu thập (xây dựng) tập liệu Thường xét k (>1) ví dụ học (các láng giềng) ề gần ầ ấ với ví dụ cần phân lớp/dự đoán Đối với toán phân lớp có lớp lớp, k thường chọn số lẻ, để tránh cân tỷ lệ ví dụ lớp • Ví dụ: k= 3, 5, 7,… Học Máy – IT 4862 Hàm tính khoảng g cách ((1)) Hàm tính khoảng cách d • Đóng g vai trò quan q trọng ọ g gp phương gp pháp p học ọ dựa ự láng giềng gần • Thường xác định trước, không thay đổi suốt trình học phân loại/dự đoán Lựa chọn hàm khoảng cách d • Cá Các hàm hà khoảng kh ả cách h hì hình hh học: Dành Dà h cho h ttoán có ó thuộc tính đầu vào kiểu số thực (xi∈R) • Hàm khoảng cách Hamming: Dành cho toán có thuộc tính đầu ầ vào kiểu ể nhị phân (x ( i∈{0,1}) { }) • Hàm tính độ tương tự Cosine: Dành cho toán phân lớp văn (xi giá trị trọng số TF/IDF từ khóa thứ i) Học Máy – IT 4862 Hàm tính khoảng g cách ((2)) Các hàm tính khoảng cách hình học (Geometry distance functions)) n • Hàm Minkowski (p-norm): d ( x, z ) = ∑ xi − zi i =1 • Hàm Manhattan (p=1): d ( x, z ) = n ∑ (x − z ) i =1 i i 1/ p Hàm Euclid (p=2): ⎛ p⎞ d ( x, z ) = ⎜ ∑ xi − zi ⎟ ⎝ i =1 ⎠ Hàm Chebyshev (p=∞): ⎛ n p⎞ d ( x, z ) = lim li ⎜ ∑ xi − zi ⎟ p →∞ ⎝ i =1 ⎠ n • 1/ p • = max xi − zi i Học Máy – IT 4862 10 Hàm tính khoảng g cách ((3)) Hàm khoảng cách Hamming • Đối với thuộc tính đầu vào kiểu nhị phân ({0,1}) • Ví dụ: x=(0,1,0,1,1) n d ( x, z ) = ∑ Difference ff ( xi , z i ) i =1 ⎧1, if ( a ≠ b) Difference ( a, b) = ⎨ ⎩0, iff ( a = b) n Hàm tính độ tương tự Cosine • Đối ố với đầu ầ vào vectơ giá trị trọng số (TF/IDF) từ khóa Học Máy – IT 4862 x.z = d ( x, z ) = x z ∑x z i =1 n ∑ xi i =1 i i n ∑ zi i =1 11 Chuẩn hóa miền giá trị thuộc tính Hàm tính khoảng cách Euclid: d ( x, z ) = n ( ) x − z ∑ i i i =1 Giả sử ví dụ biểu diễn thuộc tính: Age, Income (cho tháng), Height (đo theo mét) • x = ((Age=20, g Income=12000, Height=1.68) g ) • z = (Age=40, Income=1300, Height=1.75) Khoảng cách x z • d(x,z) d(x z) = [(20-40)2 + (12000-1300)2 + (1.68-1.75) (1 68-1 75)2]1/2 • Giá trị khoảng cách bị định chủ yếu giá trị khoảng cách (sự khác biệt) ví dụ thuộc tính Income → Vì: Thuộc tính Income có miền giá trị lớn so với thuộc tính khác Cần phải chuẩn hóa miền giá trị (đưa khoảng giá trị) • Khoảng giá trị [0,1] thường sử dụng • Đối với ới ỗi thuộc th ộ tính tí h i: i xi = xi/max_val(f / l(fi) Học Máy – IT 4862 12 Trọng số thuộc tính Hàm khoảng cách Euclid: d ( x, z ) = n ( ) x − z ∑ i i i =1 • Tất thuộc tính có (như nhau) ảnh hưởng giá trị khoảng cách Các thuộc tính khác (nên) có mức độ ảnh hưởng khác giá trị khoảng cách Cần phải tích hợp (đưa vào) giá trị trọng số thuộc tính g hàm tính khoảng g cách n • wi trọng số thuộc tính i: d ( x, z ) = ∑ wi (xi − zi ) i =1 Làm để xác định ị g giá trịị trọng ọ g số thuộc ộ tính? • Dựa tri thức cụ thể toán (vd: định chuyên gia lĩnh vực toán xét) • Bằng trình tối ưu hóa giá trị trọng số (vd: sử dụng tập học để ể học giá trị trọng số ố tối ố ưu) Học Máy – IT 4862 13 Khoảng cách láng giềng (1) Xét tập NB(z) – gồm k ví dụ học gần với ví dụ cần phân lớp/dự đoán z • Mỗi ví dụ (láng giềng gần nhất) có khoảng cách khác đến z Ví dụ d cần ầ phân loại z • Các láng giềng ề có ảnh ả hưởng việc phân lớp/dự đoáncho z? → KHÔNG! Cần gán mức độ ảnh hưởng (đóng góp) láng giềng gần tùy theo khoảng cách đến z • Mức độ ảnh hưởng cao cho láng giềng gần hơn! Học Máy – IT 4862 14 Khoảng cách láng giềng (2) Gọi v hàm xác định trọng số theo khoảng cách • Đối với giá trị d(x,z) – khoảng cách x z • v(x,z) tỷ lệ nghịch hị h với ới d(x,z) Đối với toán phân lớp: c ( z ) = arg max c j ∈C ∑ v( x, z ).Identical (c j , c( x)) x∈NB ( z ) ⎧1, if (a = b) Identical (a, b) = ⎨ ⎩0, if (a ≠ b) Đối với toán dự đoán (hồi quy): f ( z ) = ∑ v( x, z ) f ( x) ∑ v ( x, z ) x∈NB ( z ) x∈NB ( z ) Lựa chọn hàm xác định trọng số theo khoảng cách: v ( x, z ) = α + d ( x, z ) v ( x, z ) = α + [d ( x, z )]2 Học Máy – IT 4862 v ( x, z ) = e − d ( x, z )2 σ2 15 Lazy learning vs Eager learning Lazy learning Việc đánh giá hàm mục tiêu (target function) hoãn lại xét ví dụ cần phân loại/dự đoán • Đánh giá (xấp xỉ) hàm mục tiêu cách cục (locally) riêng rẽ (diferrently) cho ví dụ cần phân loại/dự đoán (tại thời điểm phân loại/dự đoán hệ thống) • Tính Tí h toán t nhiều hiề lần lầ xấp ấ xỉỉ cục ủ hàm hà mục tiêu tiê • Thường thời gian lâu để đưa kết luận (phân lớp/dự đoán), cần nhiều không gian nhớ • Ví dụ: Nearest neighbor learner learner, Locally weighted regression Eager learning Việc đánh giá hàm mục tiêu hoàn thành trước xét đến ví dụ cần phân loại/dự đoán • Đánh giá (xấp xỉ) hàm mục tiêu cách tổng thể (globally) toàn không gian ví dự (tại thời điểm học hệ thống) • Tính toán xấp xỉ (ở mức tổng thể) hàm mục tiêu • Ví dụ: Linear regression, Support vector machines, Neural networks, Học Máy – IT 4862 16 k-NN – Khi nào? Các ví dụ biểu diễn không gian vectơ Rn Số lượng thuộc tính (để biểu diễn ví dụ) không nhiều Một tập học có kích thước lớn Các ưu điểm • Chi phí hí thấ thấp cho h ttrình ì hh huấn ấ luyện l ệ (chỉ ( hỉ việc iệ lưu l llạii víí d dụ học) h ) • Hoạt động tốt với toán phân loại gồm nhiều lớp → Không cần phải học n phân loại cho n lớp • Phương pháp học k-NN (k >>1) có khả xử lý nhiễu cao → Phân loại/dự đoán thực dựa k láng giềng gần Các nhược điểm • Phải lựa chọn hàm tính khoảng cách (sự khác biệt) thích hợp với toán • Chi phí tính toán (thời gian, nhớ) cao thời điểm phân loại/dự đoán • Có thể cho kết kém/sai với thuộc tính không liên quan Học Máy – IT 4862 17 [...]... dụ (láng giềng gần nhất) này có khoảng cách khác nhau đến z Ví dụ d cần ầ phân loại z • Các láng giềng ề này có ảnh ả hưởng ở như nhau đối với việc phân lớp/dự đoáncho z? → KHÔNG! Cần gán các mức độ ảnh hưởng (đóng góp) của mỗi láng giềng gần nhất tùy theo khoảng cách của nó đến z • Mức độ ảnh hưởng cao hơn cho các láng giềng gần hơn! Học Máy – IT 4862 14 Khoảng cách của các láng giềng (2) Gọi v... tính? • Dựa trên các tri thức cụ thể của bài toán (vd: được chỉ định bởi các chuyên gia trong lĩnh vực của bài toán đang xét) • Bằng một quá trình tối ưu hóa các giá trị trọng số (vd: sử dụng một tập học để ể học một bộ các giá trị trọng số ố tối ố ưu) Học Máy – IT 4862 13 Khoảng cách của các láng giềng (1) Xét tập NB(z) – gồm k ví dụ học gần nhất với ví dụ cần phân lớp/dự đoán z • Mỗi ví dụ (láng giềng. .. hh huấn ấ luyện l ệ (chỉ ( hỉ việc iệ lưu l llạii các á víí d dụ học) h ) • Hoạt động tốt với các bài toán phân loại gồm nhiều lớp → Không cần phải học n bộ phân loại cho n lớp • Phương pháp học k-NN (k >>1) có khả năng xử lý nhiễu cao → Phân loại/dự đoán được thực hiện dựa trên k láng giềng gần nhất Các nhược điểm • Phải lựa chọn hàm tính khoảng cách (sự khác biệt) thích hợp với bài toán • Chi phí... các thuộc tính có cùng (như nhau) ảnh hưởng đối với giá trị khoảng cách Các thuộc tính khác nhau có thể (nên) có mức độ ảnh hưởng khác nhau đối với giá trị khoảng cách Cần phải tích hợp (đưa vào) các giá trị trọng số của các thuộc tính trong g hàm tính khoảng g cách n • wi là trọng số của thuộc tính i: d ( x, z ) = ∑ wi (xi − zi ) 2 i =1 Làm sao để xác định ị các g giá trịị trọng ọ g số của các. .. toàn bộ không gian các ví dự (tại thời điểm học của hệ thống) • Tính toán một xấp xỉ duy nhất (ở mức tổng thể) của hàm mục tiêu • Ví dụ: Linear regression, Support vector machines, Neural networks, Học Máy – IT 4862 16 k-NN – Khi nào? Các ví dụ được biểu diễn trong không gian vectơ Rn Số lượng các thuộc tính (để biểu diễn ví dụ) là không nhiều Một tập học có kích thước lớn Các ưu điểm • Chi... trị khoảng cách (sự khác biệt) giữa 2 ví dụ đối với thuộc tính Income → Vì: Thuộc tính Income có miền giá trị rất lớn so với các thuộc tính khác Cần phải chuẩn hóa miền giá trị (đưa về cùng một khoảng giá trị) • Khoảng giá trị [0,1] thường được sử dụng • Đối với ới mỗi ỗi thuộc th ộ tính tí h i: i xi = xi/max_val(f / l(fi) Học Máy – IT 4862 12 Trọng số của các thuộc tính Hàm khoảng cách Euclid:...Hàm tính khoảng g cách ((3)) Hàm khoảng cách Hamming • Đối với các thuộc tính đầu vào là kiểu nhị phân ({0,1}) • Ví dụ: x=(0,1,0,1,1) n d ( x, z ) = ∑ Difference ff ( xi , z i ) i =1 ⎧1, if ( a ≠ b) Difference ( a, b) = ⎨ ⎩0, iff ( a = b) n Hàm tính độ tương tự Cosine • Đối ố với đầu ầ vào là một vectơ các giá trị trọng số (TF/IDF) của các từ khóa Học Máy – IT 4862 x.z = d ( x, z... Hàm tính khoảng cách Euclid: d ( x, z ) = n 2 ( ) x − z ∑ i i i =1 Giả sử mỗi ví dụ được biểu diễn bởi 3 thuộc tính: Age, Income (cho mỗi tháng), và Height (đo theo mét) • x = ((Age=20, g Income=12000, Height=1.68) g ) • z = (Age=40, Income=1300, Height=1.75) Khoảng cách giữa x và z • d(x,z) d(x z) = [(20-40)2 + (12000-1300)2 + (1.68-1.75) (1 68-1 75)2]1/2 • Giá trị khoảng cách bị quyết định... Lựa chọn một hàm xác định trọng số theo khoảng cách: 1 v ( x, z ) = α + d ( x, z ) 1 v ( x, z ) = α + [d ( x, z )]2 Học Máy – IT 4862 v ( x, z ) = e − d ( x, z )2 σ2 15 Lazy learning vs Eager learning Lazy learning Việc đánh giá hàm mục tiêu (target function) được hoãn lại cho đến khi xét ví dụ cần phân loại/dự đoán • Đánh giá (xấp xỉ) hàm mục tiêu một cách cục bộ (locally) và riêng rẽ (diferrently)... Các nhược điểm • Phải lựa chọn hàm tính khoảng cách (sự khác biệt) thích hợp với bài toán • Chi phí tính toán (thời gian, bộ nhớ) cao tại thời điểm phân loại/dự đoán • Có thể cho kết quả kém/sai với các thuộc tính không liên quan Học Máy – IT 4862 17 ... ô 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 dựa láng giềng gần (Nearest neighbors learning) Các. .. learning) Các p phương gp pháp p học không gg giám sát Lọc cộng tác Học tăng cường Học Máy – IT 4862 Học dựa láng giềng gần Một số tên gọi khác phương pháp học dựa láng giềng gần (Nearest... Khoảng cách láng giềng (1) Xét tập NB(z) – gồm k ví dụ học gần với ví dụ cần phân lớp/dự đoán z • Mỗi ví dụ (láng giềng gần nhất) có khoảng cách khác đến z Ví dụ d cần ầ phân loại z • Các láng giềng