
Bài giảng Học máy thống kê: Một dự án máy học
lượt xem 1
download

Bài giảng Học máy thống kê: Một dự án máy học bao gồm các bước từ xác định bối cảnh, thu thập và khám phá dữ liệu, đến chuẩn bị, huấn luyện, tinh chỉnh mô hình và cuối cùng là vận hành hệ thống. Đây là kim chỉ nam giúp bạn thực hiện dự án máy học một cách bài bản và hiệu quả. Mời các bạn cùng tham khảo bài giảng để biết thêm chi tiết!
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài giảng Học máy thống kê: Một dự án máy học
- Buổi 2: Một dự án máy học (Tài liệu nội bộ) Tháng 3 năm 2020
- Quy trình thực hiện dự án máy học 1 Xác định bối cảnh, yêu cầu 2 Thu thập dữ liệu 3 Khám phá dữ liệu 4 Chuẩn bị dữ liệu 5 Huấn luyện mô hình 6 Tinh chỉnh mô hình 7 Trình bày giải pháp 8 Vận hành, theo dõi, và bảo trì hệ thống
- Làm việc với dữ liệu thực tế Khi học máy học nên sử dụng dữ liệu thực tế, không nên dùng dữ liệu nhân tạo. Một vài nguồn cung cấp dữ liệu miễn phí: • Một số kho dữ liệu mở phổ biến ▶ UC Irvine Machine Learning Repository ▶ Kaggle datasets ▶ Amazon’s AWS datasets • Một vài siêu cổng dữ liệu (liệt kê các kho dữ liệu mở khác) ▶ Data Portals ▶ OpenDataMonitor ▶ Quandl • Một số trang khác liệt kê các kho dữ liệu mở ▶ Wikipedia’s list of Machine Learning datasets ▶ Quora.com ▶ The datasets subreddit
- Dữ liệu sử dụng trong buổi học: California Housing Prices dataset1 Dữ liệu giá nhà ở thu thập tại bang California năm 1990. Để phục vụ cho môn học này, tác giả đã bỏ một số thuộc tính và thêm vào một thuộc tính dạng phân loại. 42 $306k Population $258k 40 $209k Median House Value 38 Latitude $160k 36 $112k $63k 34 $15k 124 122 120 118 116 114 Longitude 1 [1] Pace and Barry. “Sparse spatial autoregressions”. 1997.
- Nội dung trình bày 1 Xác định bối cảnh, yêu cầu
- Xác định bài toán • Mục tiêu của dự án máy học: Xây dựng mô hình dự đoán giá nhà tại bang California dựa trên dữ liệu điều tra dân số của bang này. • Dữ liệu này có các số liệu (thuộc tính) sau: dân số, thu nhập trung bình, giá nhà trung bình, v.v... cho mỗi khu vực2 tại bang California. • Bài toán máy học: ▶ Đầu vào: 1 khu vực bất kỳ và các dữ kiện khác đi kèm. ▶ Đầu ra: giá nhà trung bình của khu vực đó. 2 Khu vực: đơn vị địa lí nhỏ nhất theo Cục điều tra dân số Hoa Kỳ. Mỗi khu vực thường có dân số từ 600 đến 3,000 người. 3 / 41
- Xác định bối cảnh bài toán • Sếp bạn muốn gì? Hệ thống này sẽ được dùng như thế nào? Đầu ra sẽ thế nào? • Những điều này ảnh hưởng đến việc lựa chọn phương pháp. • Trong dự án này: Bài toán xác định giá nhà nên được mô hình hóa theo dạng bài toán hồi quy. 4 / 41
- Lựa chọn độ đo hiệu suất cho bài toán • Độ đo tiêu biểu của bài toán hồi quy là: √ 1 ∑m ( ( ) )2 Root Mean Square Error: RMSE (X, h) = m i=1 h x(i) − y(i) m: số lượng mẫu, h: kết quả dự đoán bởi mô hình, y: kết quả đúng. • Kết quả đo cho biết độ mức độ lỗi dự đoán của hệ thống máy học. • Chúng ta mong muốn xây dựng được hệ thống máy học có RMSE càng thấp càng tốt. • Mỗi bài toán phải có ít nhất 1 độ đo để đánh giá. 5 / 41
- Kiểm tra các giả định • Các bạn (người phát triển hệ thống máy học) có những giả định gì trong đầu, phải làm sáng tỏ trước khi bắt tay xây dựng hệ thống. • Ví dụ: Bạn nghĩ là đây nên là bài toán hồi quy nhưng hệ thống sử dụng kết quả của bạn lại chuyển đổi giá nhà dự đoán sang các giá trị phân loại (“rẻ”, “vừa”, hoặc “đắt”) thay vì giá nhà cụ thể. Như vậy, bài toán lúc này nên định hình thành phân lớp (classification) hơn là hồi quy (regression). • Nếu hệ thống sau đó cần giá trị cụ thể thì bài toán hồi quy là phù hợp. 6 / 41
- Nội dung trình bày 2 Thu thập dữ liệu
- Tải dữ liệu Thực hành theo hướng dẫn trong sách: • Bước 1: Tạo workspace • Bước 2: Tải bộ dữ liệu về máy tính • Bước 3: Xem nhanh cấu trúc của bộ dữ liệu • Bước 4: Tạo tập dữ liệu thử nghiệm (test set) 7 / 41
- Xem nhanh cấu trúc của bộ dữ liệu • Xem 5 dòng dữ liệu đầu tiên với phương thức head() của lớp DataFrame. • Mỗi dòng dữ liệu là một khu vực. 8 / 41
- Xem nhanh cấu trúc của bộ dữ liệu (tt) • Dùng phương thức info() của lớp DataFrame để xem được: tổng số dòng dữ liệu, kiểu dữ liệu và số giá trị khác rỗng của mỗi thuộc tính. ▶ Dữ liệu nhỏ hay lớn? Có 20640 mẫu dữ liệu, không lớn nhưng đủ dùng. ▶ Dữ liệu có bị thiếu giá trị ở thuộc tính nào không? có 207 khu vực thiếu giá trị thuộc tính total_bedrooms. 9 / 41
- Xem nhanh cấu trúc của bộ dữ liệu (tt) • Dùng phương thức describe() để xem tóm tắt các thuộc tính dạng số. ▶ std: độ lệch chuẩn, phản ánh độ phân tán của các giá trị trong bộ số liệu. ▶ dòng 25%, 50% và 75%: Phần tư thứ nhất, trung bình, phần thứ thứ ba. VD: 25% khu vực có housing_median_age nhỏ hơn 18, 50% nhỏ hơn 29, 75% khu vực nhỏ hơn 37. 10 / 41
- Xem nhanh cấu trúc của bộ dữ liệu (tt) Vẽ histogram cho mỗi thuộc tính dạng số. 11 / 41
- Xem nhanh cấu trúc của bộ dữ liệu (tt) • (tiếp theo trang trước) • Quan sát: ▶ Thuộc tính dạng thô hay đã được tiền xử lý? Tiền xử lý như thế nào? Thu nhập trung bình đã được co lại (scale) và giới hạn (cap) lại theo mức chặn trên và chặn dưới, 1 đơn vị tương đương khoảng 10000 đô la. Tuổi ngôi nhà và Giá nhà trung bình cũng đã được tiền xử lý. ▶ Khoảng giá trị (scale) của các thuộc tính có tương tự nhau? Các thuộc tính có khoảng giá trị rất khác nhau. ▶ Phân bố có theo hình chuông chuẩn hay không? Một số thuộc tính có đuôi kéo dài bên phải, điều này có thể làm giảm hiệu suất của một số thuật toán. 12 / 41
- Tạo tập dữ liệu kiểm tra • Tạo một tập dữ liệu kiểm tra, để qua một bên và đừng bao giờ nhìn vào nó. ▶ Tập dữ liệu kiểm tra là để đánh giá hiệu suất hệ thống một cách khách quan nhất trước khi đưa vào sử dụng. Với dữ liệu mới hoàn toàn thì hệ thống này hoạt động tốt không? ▶ Nhìn vào dữ liệu kiểm tra, người triển có thể chọn mô hình máy học phù hợp với nó nhất, dẫn đến quá lạc quan về kết quả thực tế. • Cách làm: Lấy ngẫu nhiên 20% dữ liệu hoặc ít hơn nếu dữ liệu nhiều.(*TH-t52-53) ▶ Lưu lại tập dữ liệu thử nghiệm và load lên khi sử dụng. ▶ Lưu id của từng mẫu dữ liệu để khi cập nhật dữ liệu sẽ đảm bảo không sử dụng mẫu trong tập test để huấn luyện. • Thay vì lấy ngẫu nhiên, có thể lấy dữ liệu theo chiến lược lấy mẫu phân tầng (stratified sampling) để đảm bảo phân bố của tập test tương tự như phân bố trong toàn bộ dữ liệu theo một thuộc tính quan trọng nào đó.(*TH-t54) 13 / 41
- Chiến lược Lấy mẫu phân tầng • Histogram của các loại thu nhập. Thuộc tính thu nhập trung bình được chia thành 5 tầng. 14 / 41
- So sánh Lấy mẫu ngẫu nhiên với Lấy mẫu phân tầng • Kết quả tạo tập dữ liệu kiểm tra theo hai chiến lược. • Tập dữ liệu kiểm tra tạo bởi chiến lược lấy mẫu phân tầng đỡ mất cân bằng hơn. 15 / 41
- Nội dung trình bày 3 Khám phá dữ liệu

CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài giảng Mạng máy tính: Bài 2 - Trường TCN Tôn Đức Thắng
32 p |
171 |
17
-
Bài giảng Mạng máy tính: Bài 1 - Trường TCN Tôn Đức Thắng
30 p |
183 |
17
-
Bài giảng Mạng máy tính: Bài 3 - Trường TCN Tôn Đức Thắng
39 p |
158 |
15
-
Bài giảng Mạng máy tính: Bài 6 - Trường TCN Tôn Đức Thắng
27 p |
162 |
14
-
Bài giảng Mạng máy tính: Bài 5 - Trường TCN Tôn Đức Thắng
35 p |
150 |
11
-
Bài giảng Mạng máy tính: Bài 4 - Trường TCN Tôn Đức Thắng
13 p |
152 |
11
-
Bài giảng Mạng máy tính: Bài 7 - Trường TCN Tôn Đức Thắng
23 p |
133 |
11
-
Bài giảng Mạng máy tính: Bài 9 - Trường TCN Tôn Đức Thắng
38 p |
138 |
9
-
Bài giảng Học máy thống kê: Hồi quy tuyến tính (Linear Regression- Supervised learning)
36 p |
2 |
1
-
Bài giảng Học máy thống kê: Support Vector Machine (Máy véc tơ hỗ trợ)
46 p |
1 |
1
-
Bài giảng Học máy thống kê: Tổng quan về máy học
49 p |
1 |
1
-
Bài giảng Học máy thống kê: Cây quyết định (Decision tree)
25 p |
4 |
1
-
Bài giảng Học máy thống kê: Phân lớp và cách đánh giá bộ phân lớp
34 p |
1 |
1
-
Bài giảng Học máy thống kê: Hồi quy logistic (Logistic Regression)
20 p |
2 |
1
-
Bài giảng Học máy thống kê: Mô hình máy học kết hợp (Ensemble Learning)
54 p |
2 |
1
-
Bài giảng Học máy thống kê: Gán nhãn dữ liệu
61 p |
1 |
0
-
Bài giảng Học máy thống kê: Gradient giảm (Gradient Descent)
28 p |
2 |
0


Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn
