Video: How to Stay Out of Debt: Warren Buffett - Financial Future of American Youth (1999) 2025
Việc xác minh một giả thuyết học máy học có hiệu quả cho phép tối ưu hoá tiếp theo của thuật toán đã chọn của bạn. Thuật toán cung cấp hầu hết tính năng tiên đoán trên dữ liệu của bạn, cho khả năng phát hiện tín hiệu từ dữ liệu và phù hợp với hình thức chức năng đích thực của chức năng tiên đoán mà không cần overfitting và tạo ra nhiều sự khác biệt của các ước tính. Không phải mọi thuật toán học máy đều phù hợp nhất cho dữ liệu của bạn, và không một thuật toán nào có thể phù hợp với mọi vấn đề. Bạn sẽ tìm thấy đúng đối với một vấn đề cụ thể.
Nguồn cuối cùng của hiệu suất xuất phát từ tinh chỉnh các thông số siêu999 của thuật toán, đó là các tham số mà bạn quyết định trước khi việc học xảy ra và không được học từ dữ liệu. Vai trò của họ là định nghĩa một giả thuyết, trong khi các thông số khác xác định nó một hậu nghiệm, sau khi thuật toán tương tác với dữ liệu và, bằng cách sử dụng một quá trình tối ưu hoá, thấy rằng các giá trị tham số nhất định làm việc tốt hơn trong việc có được dự đoán tốt. Các kết hợp có thể của các giá trị mà các thông số siêu có thể hình thành nên sẽ quyết định nơi nào cần tìm kiếm tối ưu hóa. Như mô tả khi thảo luận về gradient xuôi, khoảng không tối ưu hóa có thể chứa các kết hợp giá trị thực hiện tốt hơn hoặc tệ hơn. Ngay cả sau khi bạn tìm thấy một sự kết hợp tốt, bạn không chắc chắn rằng đó là lựa chọn tốt nhất. (Đây là vấn đề bị mắc kẹt trong minima cục bộ khi giảm thiểu lỗi.)
Là một cách thực tiễn để giải quyết vấn đề này, cách tốt nhất để xác minh các thông số siêu cho một thuật toán áp dụng cho dữ liệu cụ thể là kiểm tra tất cả xác nhận chéo, và để chọn sự kết hợp tốt nhất. Cách tiếp cận đơn giản này được gọi là lưới tìm kiếm cung cấp những lợi ích không thể tranh cãi được bằng cách cho phép bạn lấy mẫu các giá trị có thể để nhập vào thuật toán một cách có hệ thống và để nhận ra khi nào mức tối thiểu chung xảy ra.
Mặt khác, grid-search cũng có những hạn chế nghiêm trọng vì nó đòi hỏi nhiều tính toán (bạn có thể dễ dàng thực hiện công việc này song song trên các máy tính đa lõi hiện đại) và tốn khá nhiều thời gian. Hơn nữa, các bài kiểm tra có hệ thống và chuyên sâu làm tăng khả năng xảy ra sai sót vì một số kết quả xác nhận nhưng giả mạo có thể do tiếng ồn hiện diện trong bộ dữ liệu.Một số lựa chọn thay thế cho lưới tìm kiếm có sẵn. Thay vì kiểm tra tất cả mọi thứ, bạn có thể thử khám phá không gian của các giá trị siêu tham số có thể được hướng dẫn bằng các kỹ thuật tối ưu hóa phi tuyến tính phức tạp và toán học phức tạp (như phương pháp Nelder-Mead) sử dụng cách tiếp cận Bayesian (số lượng các bài kiểm tra được giảm thiểu bằng cách lợi thế của các kết quả trước đó) hoặc sử dụng tìm kiếm ngẫu nhiên.
Đáng ngạc nhiên là tìm kiếm ngẫu nhiên hoạt động rất tốt, rất đơn giản để hiểu, và không chỉ dựa trên sự mù quáng, mặc dù ban đầu nó có vẻ như là như vậy. Thực tế, điểm chính của kỹ thuật này là nếu bạn chọn đủ các bài kiểm tra ngẫu nhiên, bạn thực sự có đủ khả năng để nhận ra đúng các thông số mà không lãng phí năng lượng khi kiểm tra các kết hợp hơi khác nhau của các kết hợp tương tự nhau.
Biểu đồ dưới đây giải thích lý do tại sao tìm kiếm ngẫu nhiên hoạt động tốt. Thăm dò có hệ thống, mặc dù có ích, có xu hướng kiểm tra mọi sự kết hợp, biến thành một sự lãng phí năng lượng nếu một số tham số không ảnh hưởng đến kết quả. Một tìm kiếm ngẫu nhiên thực sự kiểm tra kết hợp ít hơn nhưng nhiều hơn trong phạm vi của mỗi hyper-tham số, một chiến lược mà chứng minh chiến thắng nếu, như thường xảy ra, một số thông số quan trọng hơn những người khác.
So sánh lưới tìm kiếm với tìm kiếm ngẫu nhiên.
Để tìm kiếm ngẫu nhiên để thực hiện tốt, bạn nên thực hiện từ 15 đến tối đa 60 bài kiểm tra. Nó có ý nghĩa để nghỉ mát để tìm kiếm ngẫu nhiên nếu một lưới tìm kiếm đòi hỏi một số lượng lớn các thí nghiệm.