Xin lỗi nếu điều này quá sơ đẳng, tôi chỉ muốn đưa ra câu trả lời này càng khép kín càng tốt. Trên thực tế, bạn không thể làm những gì bạn mô tả: đa thức bậc nhất sẽ luôn phù hợp ít nhất cũng như đa thức tốt nhất của độ , vì tập hợp đa thức độ bao gồm tất cả các độ đa thức (chỉ cần đặt ). Khi bạn tiếp tục tăng , tại một thời điểm nhất định, bạn sẽ có thể tìm thấy một đa thức phù hợp với dữ liệu một cách hoàn hảo (nghĩa là không có lỗi).k + 1kk + 1kmộtk + 1= 0k
Đây thường không phải là một giải pháp rất hấp dẫn bởi vì thật khó để tưởng tượng một quá trình phải được mô tả bằng ví dụ đa thức triệu độ, và gần như chắc chắn rằng loại mô hình này sẽ phức tạp hơn mức cần thiết để mô tả đầy đủ dữ liệu . Hiện tượng này được gọi là quá mức , và một ví dụ điển hình là hình ảnh Wikipedia này. Dữ liệu rõ ràng gần với tuyến tính, nhưng có thể (nhưng không mong muốn) để có lỗi thấp hơn với một mô hình phức tạp hơn.
Nói chung, mục tiêu là để giảm thiểu lỗi sẽ xảy ra trên dữ liệu mới từ cùng một mô hình cơ bản, thay vì trên tập dữ liệu hiện tại. Thông thường, việc lấy thêm dữ liệu là không thể hoặc thực tế, vì vậy thông thường người ta sẽ sử dụng một số hình thức xác thực chéo để tìm ra mô hình tổng quát hóa dữ liệu tốt nhất để không nhìn thấy. Có rất nhiều hình thức xác thực chéo và bạn có thể đọc về chúng trong bài viết Wikipedia hoặc trong nhiều câu trả lời trên CrossValidated (ha!). Nhưng thực tế, tất cả chúng có thể được giảm xuống: phù hợp với một mô hình trên một số dữ liệu của bạn và sử dụng điều này để dự đoán các giá trị cho phần còn lại của dữ liệu của bạn. Làm điều này nhiều lần và chọn mô hình (trong trường hợp này, mức độ đa thức) mang lại cho bạn hiệu suất trung bình tốt nhất.