Thư viện tri thức trực tuyến
Kho tài liệu với 50,000+ tài liệu học thuật
© 2023 Siêu thị PDF - Kho tài liệu học thuật hàng đầu Việt Nam

Machine Learning cơ bản
Nội dung xem thử
Mô tả chi tiết
Machine Learning cơ bản
Cập nhật lần cuối: 20/01/2020.
Bản quyền ©2016 – 2020: Vũ Hữu Tiệp
Mọi hình thức sao chép, in ấn đều cần được sự đồng ý của tác giả. Mọi chia sẻ
đều cần được dẫn nguồn tới https://github.com/tiepvupsu/ebookMLCB.
Mục lục
Mục lục
0 Lời nói đầu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
0.1 Mục đích của cuốn sách . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
0.2 Hướng tiếp cận của cuốn sách . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
0.3 Đối tượng của cuốn sách . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
0.4 Yêu cầu về kiến thức . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
0.5 Mã nguồn đi kèm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
0.6 Bố cục của cuốn sách . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
0.7 Các lưu ý về ký hiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
0.8 Tham khảo thêm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
0.9 Đóng góp ý kiến . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
0.10 Lời cảm ơn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
0.11 Bảng các ký hiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Phần I Kiến thức toán cơ bản
1 Ôn tập Đại số tuyến tính . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
1.1 Lưu ý về ký hiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
1.2 Chuyển vị và Hermitian . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
4 Machine Learning cơ bản
Mục lục
1.3 Phép nhân hai ma trận . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
1.4 Ma trận đơn vị và ma trận nghịch đảo. . . . . . . . . . . . . . . . . . . . . . . . . 27
1.5 Một vài ma trận đặc biệt khác . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
1.6 Định thức . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
1.7 Tổ hợp tuyến tính, không gian sinh . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
1.8 Hạng của ma trận . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
1.9 Hệ trực chuẩn, ma trận trực giao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
1.10 Biễu diễn vector trong các hệ cơ sở khác nhau . . . . . . . . . . . . . . . . . . 34
1.11 Trị riêng và vector riêng . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
1.12 Chéo hoá ma trận . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
1.13 Ma trận xác định dương . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
1.14 Chuẩn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
1.15 Vết . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
2 Giải tích ma trận . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
2.1 Gradient của hàm trả về một số vô hướng . . . . . . . . . . . . . . . . . . . . . 43
2.2 Gradient của hàm trả về vector . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
2.3 Tính chất quan trọng của gradient . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
2.4 Gradient của các hàm số thường gặp . . . . . . . . . . . . . . . . . . . . . . . . . 46
2.5 Bảng các gradient thường gặp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
2.6 Kiểm tra gradient . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
3 Ôn tập Xác suất . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
3.1 Xác suất . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
3.2 Một vài phân phối thường gặp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
Machine Learning cơ bản 5
Mục lục
4 Ước lượng tham số mô hình . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
4.1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
4.2 Ước lượng hợp lý cực đại . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
4.3 Ước lượng hậu nghiệm cực đại . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
4.4 Tóm tắt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
Phần II Tổng quan
5 Các khái niệm cơ bản. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
5.1 Nhiệm vụ, kinh nghiệm, phép đánh giá . . . . . . . . . . . . . . . . . . . . . . . . 80
5.2 Dữ liệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
5.3 Các bài toán cơ bản trong machine learning . . . . . . . . . . . . . . . . . . . . 82
5.4 Phân nhóm các thuật toán machine learning . . . . . . . . . . . . . . . . . . . 84
5.5 Hàm mất mát và tham số mô hình . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
6 Các kỹ thuật xây dựng đặc trưng . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
6.1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
6.2 Mô hình chung cho các bài toán machine learning . . . . . . . . . . . . . . 89
6.3 Một số kỹ thuật trích chọn đặc trưng . . . . . . . . . . . . . . . . . . . . . . . . . 91
6.4 Học chuyển tiếp cho bài toán phân loại ảnh . . . . . . . . . . . . . . . . . . . . 96
6.5 Chuẩn hoá vector đặc trưng . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
7 Hồi quy tuyến tính . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
7.1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
7.2 Xây dựng và tối ưu hàm mất mát . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
7.3 Ví dụ trên Python . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
6 Machine Learning cơ bản
Mục lục
7.4 Thảo luận . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
8 Quá khớp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
8.1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
8.2 Xác thực . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
8.3 Cơ chế kiểm soát . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
8.4 Đọc thêm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
Phần III Khởi động
9 K lân cận . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
9.1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
9.2 Phân tích toán học . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
9.3 Ví dụ trên cơ sở dữ liệu Iris . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
9.4 Thảo luận . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
10 Phân cụm K-means . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
10.1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
10.2 Phân tích toán học . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
10.3 Ví dụ trên Python . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
10.4 Phân cụm chữ số viết tay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
10.5 Tách vật thể trong ảnh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
10.6 Nén ảnh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
10.7 Thảo luận . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
Machine Learning cơ bản 7
Mục lục
11 Bộ phân loại naive Bayes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
11.1 Bộ phân loại naive Bayes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
11.2 Các phân phối thường dùng trong NBC . . . . . . . . . . . . . . . . . . . . . . . 147
11.3 Ví dụ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
11.4 Thảo luận . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
Phần IV Mạng neuron nhân tạo
12 Gradient descent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
12.1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
12.2 Gradient descent cho hàm một biến . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
12.3 Gradient descent cho hàm nhiều biến . . . . . . . . . . . . . . . . . . . . . . . . . . 164
12.4 Gradient descent với momentum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
12.5 Nesterov accelerated gradient . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170
12.6 Stochastic gradient descent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
12.7 Thảo luận . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
13 Thuật toán học perceptron . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
13.1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
13.2 Thuật toán học perceptron . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
13.3 Ví dụ và minh hoạ trên Python . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
13.4 Mô hình mạng neuron đầu tiên . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
13.5 Thảo Luận . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183
8 Machine Learning cơ bản
Mục lục
14 Hồi quy logistic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185
14.1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185
14.2 Hàm mất mát và phương pháp tối ưu . . . . . . . . . . . . . . . . . . . . . . . . . 188
14.3 Triển khai thuật toán trên Python . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
14.4 Tính chất của hồi quy logistic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
14.5 Bài toán phân biệt hai chữ số viết tay . . . . . . . . . . . . . . . . . . . . . . . . 195
14.6 Bài toán phân loại đa lớp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
14.7 Thảo luận . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
15 Hồi quy softmax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201
15.1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201
15.2 Hàm softmax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
15.3 Hàm mất mát và phương pháp tối ưu . . . . . . . . . . . . . . . . . . . . . . . . . 205
15.4 Ví dụ trên Python . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211
15.5 Thảo luận . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213
16 Mạng neuron đa tầng và lan truyền ngược . . . . . . . . . . . . . . . . . . . . 214
16.1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214
16.2 Các ký hiệu và khái niệm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217
16.3 Hàm kích hoạt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218
16.4 Lan truyền ngược . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220
16.5 Ví dụ trên Python . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225
16.6 Suy giảm trọng số . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230
16.7 Đọc thêm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232
Machine Learning cơ bản 9
Mục lục
Phần V Hệ thống gợi ý
17 Hệ thống gợi ý dựa trên nội dung . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234
17.1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234
17.2 Ma trận tiện ích . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235
17.3 Hệ thống dựa trên nội dung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237
17.4 Bài toán MovieLens 100k . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240
17.5 Thảo luận . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244
18 Lọc cộng tác lân cận . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245
18.1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245
18.2 Lọc cộng tác theo người dùng . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246
18.3 Lọc cộng tác sản phẩm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251
18.4 Lập trình trên Python . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253
18.5 Thảo luận . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256
19 Lọc cộng tác phân tích ma trận . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257
19.1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257
19.2 Xây dựng và tối ưu hàm mất mát . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259
19.3 Lập trình Python . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261
19.4 Thảo luận . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264
10 Machine Learning cơ bản
Mục lục
Phần VI Giảm chiều dữ liệu
20 Phân tích giá trị suy biến. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266
20.1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266
20.2 Phân tích giá trị suy biến . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267
20.3 Phân tích giá trị suy biến cho bài toán nén ảnh . . . . . . . . . . . . . . . . . 271
20.4 Thảo luận . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273
21 Phân tích thành phần chính . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274
21.1 Phân tích thành phần chính. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274
21.2 Các bước thực hiện phân tích thành phần chính . . . . . . . . . . . . . . . . 279
21.3 Liên hệ với phân tích giá trị suy biến . . . . . . . . . . . . . . . . . . . . . . . . . . 280
21.4 Làm thế nào để chọn số chiều của dữ liệu mới . . . . . . . . . . . . . . . . . . 282
21.5 Lưu ý về tính toán phân tích thành phần chính . . . . . . . . . . . . . . . . . 282
21.6 Một số ứng dụng . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283
21.7 Thảo luận . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287
22 Phân tích biệt thức tuyến tính. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288
22.1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288
22.2 Bài toán phân loại nhị phân . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 290
22.3 Bài toán phân loại đa lớp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293
22.4 Ví dụ trên Python . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 297
22.5 Thảo luận . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299
Machine Learning cơ bản 11
Mục lục
Phần VII Tối ưu lồi
23 Tập lồi và hàm lồi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302
23.1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302
23.2 Tập lồi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 304
23.3 Hàm lồi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309
23.4 Tóm tắt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319
24 Bài toán tối ưu lồi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 320
24.1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 320
24.2 Nhắc lại bài toán tối ưu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 324
24.3 Bài toán tối ưu lồi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 326
24.4 Quy hoạch tuyến tính . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329
24.5 Quy hoạch toàn phương . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332
24.6 Quy hoạch hình học . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334
24.7 Tóm tắt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337
25 Đối ngẫu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338
25.1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338
25.2 Hàm đối ngẫu Lagrange . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 339
25.3 Bài toán đối ngẫu Lagrange . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342
25.4 Các điều kiện tối ưu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344
25.5 Tóm tắt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346
12 Machine Learning cơ bản
Mục lục
Phần VIII Máy vector hỗ trợ
26 Máy vector hỗ trợ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 350
26.1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 350
26.2 Xây dựng bài toán tối ưu cho máy vector hỗ trợ . . . . . . . . . . . . . . . . 352
26.3 Bài toán đối ngẫu của máy vector hỗ trợ . . . . . . . . . . . . . . . . . . . . . . . 354
26.4 Lập trình tìm nghiệm cho máy vector hỗ trợ . . . . . . . . . . . . . . . . . . . 357
26.5 Tóm tắt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359
27 Máy vector hỗ trợ lề mềm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361
27.1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361
27.2 Phân tích toán học . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362
27.3 Bài toán đối ngẫu Lagrange . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364
27.4 Bài toán tối ưu không ràng buộc cho SVM lề mềm . . . . . . . . . . . . . 367
27.5 Lập trình với SVM lề mềm. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 372
27.6 Tóm tắt và thảo luận . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 376
28 Máy vector hỗ trợ hạt nhân . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 378
28.1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 378
28.2 Cơ sở toán học . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 380
28.3 Hàm số hạt nhân . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 382
28.4 Ví dụ minh họa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 384
28.5 Tóm tắt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386
Machine Learning cơ bản 13
Mục lục
29 Máy vector hỗ trợ đa lớp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 387
29.1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 387
29.2 Xây dựng hàm mất mát . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390
29.3 Tính toán giá trị và gradient của hàm mất mát . . . . . . . . . . . . . . . . . 393
29.4 Thảo luận . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 400
A Phương pháp nhân tử Lagrange . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 402
B Ảnh màu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 405
Tài liệu tham khảo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 409
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 415
14 Machine Learning cơ bản
Chương 0. Lời nói đầu
Chương 0
Lời nói đầu
Những năm gần đây, trí tuệ nhân tạo (artificial intelligence, AI) dần nổi lên
như một minh chứng cho cuộc cách mạng công nghiệp lần thứ tư, sau động cơ hơi
nước, năng lượng điện và công nghệ thông tin. Trí tuệ nhân tạo đã và đang trở
thành nhân tố cốt lõi trong các hệ thống công nghệ cao. Thậm chí, nó đã len lỏi
vào hầu hết các lĩnh vực của đời sống mà có thể chúng ta không nhận ra. Xe tự
hành của Google và Tesla, hệ thống tự tag khuôn mặt trong ảnh của Facebook,
trợ lý ảo Siri của Apple, hệ thống gợi ý sản phẩm của Amazon, hệ thống gợi ý
phim của Netflix, hệ thống dịch đa ngôn ngữ Google Translate, máy chơi cờ vây
AlphaGo và gần đây là AlphaGo Zero của Google DeepMind,... chỉ là một vài
ứng dụng nổi bật trong vô vàn những ứng dụng của trí tuệ nhân tạo.
Học máy (machine learning, ML) là một tập con của trí tuệ nhân tạo. Machine
learning là một lĩnh vực nhỏ trong khoa học máy tính, có khả năng tự học hỏi
dựa trên dữ liệu được đưa vào mà không cần phải được lập trình cụ thể (Machine
Learning is the subfield of computer science, that “gives computers the ability to
learn without being explicitly programmed” – Wikipedia).
Những năm gần đây, sự phát triển của các hệ thống tính toán cùng lượng dữ liệu
khổng lồ được thu thập bởi các hãng công nghệ lớn đã giúp machine learning tiến
thêm một bước dài. Một lĩnh vực mới được ra đời được gọi là học sâu (deep
learning, DL). Deep learning đã giúp máy tính thực thi những việc vào mười năm
trước tưởng chừng là không thể: phân loại cả ngàn vật thể khác nhau trong các
bức ảnh, tự tạo chú thích cho ảnh, bắt chước giọng nói và chữ viết, giao tiếp với
con người, chuyển đổi ngôn ngữ, hay thậm chí cả sáng tác văn thơ và âm nhạc1
.
1 Đọc thêm: 8 Inspirational Applications of Deep Learning (https://goo.gl/Ds3rRy).
Machine Learning cơ bản 15