Xác thực chéo trong StackingClassifier Scikit-Learn
Trong StackingClassifier tài liệu Scikit-Learn có viết:
Lưu ý rằng
estimators_được trang bị đầy đủXtrong khifinal_estimator_được đào tạo bằng cách sử dụng các dự đoán được xác nhận chéo của các bộ ước lượng cơ sở sử dụngcross_val_predict.
... xác thực chéo 5 lần mặc định
Câu hỏi của tôi, tại sao chỉ sử dụng xác thực chéo 5 lần trong công cụ ước tính cuối cùng? tại sao công cụ ước tính cuối cùng không được trang bị trên X 'đầy đủ (đầu ra từ công cụ ước tính cơ sở)?
Trả lời
Điều này bao gồm 2 câu hỏi, tôi sẽ giải quyết từng câu hỏi.
- Chúng tôi có thể sử dụng xác thực chéo trên toàn bộ hệ thống, nhưng điều đó sẽ khiến chúng tôi hơi quá nhiều.
Mục đích của xác nhận chéo là để tìm các tham số tối ưu, những tham số cho phép mô hình phù hợp tốt với dữ liệu mà không quá phù hợp. Nó đủ để công cụ ước tính cuối cùng của chúng tôi làm điều này; không cần phải tìm ra cài đặt riêng của tất cả các công cụ ước tính cơ sở. Ví dụ, các công cụ ước tính cơ sở có thể bao gồm một loạt các cài đặt tham số khác nhau; cũng như lựa chọn các loại bộ phân loại khác nhau. Nếu bất kỳ ai trong số họ có xu hướng trang bị quá mức, điều này nên được bù đắp bởi những người khác không gặp vấn đề đó. Miễn là người ước tính cuối cùng không đặt tất cả trứng của nó vào sai giỏ, chúng ta sẽ ổn (và đây là lý do tại sao chúng ta cần xác nhận chéo ở đây, để đảm bảo điều này không xảy ra).
- Chúng tôi sẽ đào tạo công cụ ước tính cuối cùng trên tập hợp đào tạo đầy đủ - điều này xảy ra sau khi chúng tôi tìm thấy các tham số tối ưu hoặc bộ công cụ ước tính cơ sở bằng cách sử dụng xác thực chéo. Như tên đã nói, xác thực chéo có nghĩa là xác thực phương thức. Không phải để tạo ra mô hình cuối cùng.