Bài trước giới thiệu mô hình sau, mô hình này đã phân loại sai rất nhiều
số cây trong tập hợp kiểm định:
Mô hình trước chứa nhiều hình dạng phức tạp. Có đơn giản hơn không
mô hình này xử lý dữ liệu mới tốt hơn không? Giả sử bạn thay thế mô hình phức tạp bằng
một mô hình đơn giản đến khó tin--một đường thẳng.
Mô hình đơn giản tổng quát hoá tốt hơn mô hình phức tạp trên dữ liệu mới. Tức là
mô hình đơn giản đưa ra dự đoán tốt hơn về tập kiểm định so với mô hình phức tạp.
Sự đơn giản đã đánh bại sự phức tạp trong một thời gian dài. Trên thực tế, việc
Sở thích sự đơn giản là từ thời Hy Lạp cổ đại. Hàng thế kỷ sau,
một thầy tu thế kỷ 14 tên là William of Occam đã hình thức hoá sở thích này
tính đơn giản trong triết lý Occam
dao lam. Triết lý này
vẫn là nguyên tắc cơ bản của nhiều ngành khoa học, bao gồm
công nghệ học máy.
Bài tập: Kiểm tra mức độ hiểu biết của bạn
Bạn đang phát triển một phương trình vật lý. Công thức nào sau đây
phù hợp hơn với Dao cạo của Occam?
Một công thức có 3 biến.
3 biến phù hợp với Occam hơn 12 biến.
Một công thức có 12 biến.
12 biến số có vẻ quá phức tạp phải không?
Hai công thức vật lý nổi tiếng nhất mọi thời đại (F=ma và
E=mc2) mỗi biến chỉ liên quan đến 3 biến.
Bạn đang tham gia một dự án học máy hoàn toàn mới và sắp chọn
các tính năng đầu tiên. Bạn nên chọn bao nhiêu tính năng?
Chọn từ 1 đến 3 tính năng có vẻ có khả năng dự đoán mạnh mẽ.
Tốt nhất là bạn nên bắt đầu quy trình thu thập dữ liệu chỉ với một hoặc
2 tính năng. Việc này sẽ giúp bạn xác nhận rằng mô hình học máy hoạt động như dự kiến.
Ngoài ra, khi bạn xây dựng đường cơ sở từ một số tính năng,
bạn sẽ cảm thấy như mình đang tiến bộ!
Chọn từ 4 đến 6 tính năng có vẻ có khả năng dự đoán mạnh mẽ.
Cuối cùng, có thể bạn sẽ sử dụng nhiều tính năng này, nhưng vẫn tốt hơn
bắt đầu bằng ít hơn. Ít tính năng hơn thường đồng nghĩa với việc ít cần thiết hơn
chức năng.
Chọn nhiều tính năng nhất có thể để bạn có thể bắt đầu quan sát
có khả năng dự đoán mạnh nhất.
Bắt đầu nhỏ hơn. Mỗi tính năng mới đều thêm một phương diện mới vào nội dung đào tạo của bạn
tập dữ liệu. Khi kích thước tăng lên, thể tích của không gian
tăng nhanh đến mức dữ liệu huấn luyện có sẵn trở nên thưa thớt. Chiến lược phát hành đĩa đơn
tiết kiệm dữ liệu của bạn, thì mô hình càng khó tìm hiểu mối quan hệ
giữa các tính năng thực sự quan trọng và nhãn. Hiện tượng này
được gọi là "nguyền rủa của tính không gian".
Điều chỉnh đều đặn
Các mô hình học máy phải đáp ứng đồng thời hai mục tiêu mâu thuẫn:
Vừa với dữ liệu.
Điều chỉnh dữ liệu sao cho đơn giản nhất có thể.
Một cách tiếp cận để duy trì mô hình đơn giản là phạt các mô hình phức tạp; tức là
để buộc mô hình trở nên đơn giản hơn trong quá trình huấn luyện. Phức tạp về hình phạt
mô hình phân bổ chính là một hình thức chuẩn hoá.
Sự mất mát và tính phức tạp
Cho đến nay, khoá học này đề xuất rằng mục tiêu duy nhất khi đào tạo là
giảm thiểu tổn thất; đó là:
$$\text{minimize(loss)}$$
Như bạn đã thấy, các mô hình chỉ tập trung vào việc giảm thiểu tổn thất có xu hướng quá mức.
Thuật toán tối ưu hoá huấn luyện tốt hơn giúp giảm thiểu một số tổ hợp
tổn thất và phức tạp:
$$\text{minimize(loss + complexity)}$$
Thật không may, sự mất mát và sự phức tạp thường có tỷ lệ nghịch với nhau. Như
độ phức tạp tăng lên, mất mát giảm đi. Khi độ phức tạp giảm đi thì sự mất mát càng gia tăng.
Bạn nên tìm một vị trí trung gian hợp lý, nơi mô hình tạo nên hiệu quả
các dự đoán về cả dữ liệu huấn luyện và dữ liệu thực tế.
Tức là mô hình của bạn cần tìm được một giải pháp hợp lý
giữa mất mát và phức tạp.
Độ phức tạp là gì?
Có thể bạn đã biết một số cách đo lường sự mất mát. Làm thế nào
bạn định lượng độ phức tạp không? Bắt đầu khám phá bằng cách làm theo bài tập sau:
Bài tập: Kiểm tra trực giác của bạn
Cho đến nay, chúng ta vẫn khá mơ hồ về những độ phức tạp thực sự
của chúng tôi. Bạn nghĩ ý tưởng nào sau đây là hợp lý
độ phức tạp không?
Độ phức tạp là một hàm của trọng số của mô hình.
Có, đây là một cách để đo lường một số mô hình độ phức tạp của chúng.
Chỉ số này được gọi là
Điều chỉnh L1.
Độ phức tạp là hàm bình phương trọng số của mô hình.
Có, bạn có thể đo lường một số mô hình phức tạp theo cách này. Chỉ số này
được gọi
Điều chỉnh L2.
Độ phức tạp là một hàm thể hiện độ sai lệch của tất cả các tính năng trong
mô hình.