Làm thế nào để có được siêu âm tối ưu sau khi xác nhận chéo lồng nhau?


8

Nói chung, nếu chúng ta có một tập dữ liệu lớn, chúng ta có thể chia nó thành (1) đào tạo, (2) xác nhận và (3) kiểm tra. Chúng tôi sử dụng xác nhận để xác định các siêu âm tốt nhất trong xác thực chéo (ví dụ: C trong SVM) và sau đó chúng tôi đào tạo mô hình bằng cách sử dụng siêu âm tốt nhất với tập huấn luyện và áp dụng mô hình được đào tạo vào thử nghiệm để có được hiệu suất.

Nếu chúng tôi có một tập dữ liệu nhỏ, chúng tôi không thể tạo tập huấn luyện và kiểm tra (không đủ mẫu). Do đó, chúng tôi sẽ thực hiện xác nhận chéo (k-Fold, bỏ qua một lần, v.v.) để đánh giá hiệu suất mô hình.

Tôi đã thấy xác nhận chéo lồng nhau (cho dù lặp đi lặp lại hoặc phân tầng) đã được sử dụng trong cài đặt tập dữ liệu nhỏ, nghĩa là để tạo hiệu suất mô hình tổng quát trong khi tối ưu hóa lựa chọn tham số. Câu hỏi của tôi là, làm thế nào tôi có thể có được siêu âm tốt nhất trong xác nhận chéo lồng nhau (lặp lại / không lặp lại)? Tôi thích làm điều này trong scikit-learn, nếu có thể. Tôi hơi bối rối về cách làm điều đó.

Tôi đã đọc một số tài nguyên nhưng không có tài liệu nào cho tôi câu trả lời dứt khoát cho câu hỏi này:

Xác thực chéo lồng nhau để lựa chọn mô hình

Xác thực chéo và lựa chọn tính năng lồng nhau: khi nào thực hiện lựa chọn tính năng?


Điều này đề cập đến scikit-learn, nhưng có một câu hỏi học máy khả thi. Điều này dường như không lạc đề với tôi.
gung - Phục hồi Monica

@gung vâng, cảm ơn. Scikit-learn là một phần bổ sung của câu hỏi (một điểm cộng với tôi)
RockTheStar

Câu trả lời:


6

Tổng quat

Như @RockTheStar đã kết luận chính xác trong các bài bình luận, xác thực chéo được lồng chỉ được sử dụng để truy cập ước tính hiệu suất mô hình. Phân tách từ đó, để tìm ra các siêu âm tốt nhất, chúng ta cần thực hiện một điều chỉnh đơn giản với xác thực chéo trên toàn bộ dữ liệu.


Chi tiết:

Điều chỉnh và xác nhận (các vòng lặp lấy mẫu bên trong và bên ngoài)

Trong vòng lặp bên trong bạn thực hiện điều chỉnh siêu tham số, các mô hình được đào tạo về dữ liệu huấn luyện và được xác thực trên dữ liệu xác nhận. Bạn tìm thấy các tham số tối ưu và huấn luyện mô hình của mình trên toàn bộ dữ liệu vòng lặp bên trong . Mặc dù nó đã được đào tạo để tối ưu hóa hiệu suất trên dữ liệu xác nhận, việc đánh giá bị sai lệch.

Vì vậy, mô hình này được kiểm tra với dữ liệu thử nghiệm, hy vọng không có sai lệch, mang lại cho bạn ước tính hiệu suất.

Mô hình cuối cùng

Bây giờ bạn đã biết hiệu suất dự kiến ​​của mô hình của bạn, bạn phải đào tạo nó với tất cả dữ liệu của bạn. Nhưng mô hình của chúng tôi không chỉ đơn giản là thuật toán, đó là toàn bộ quá trình xây dựng mô hình!

Vì vậy, thực hiện điều chỉnh siêu tham số với tất cả dữ liệu của bạn và cùng thông số kỹ thuật của vòng lặp bên trong. Với siêu âm tốt nhất, hãy huấn luyện mô hình cuối cùng của bạn với toàn bộ dữ liệu. Hiệu suất dự kiến ​​của mô hình cuối cùng này là những gì bạn đã đánh giá với việc xác định giá trị lồng nhau trước đó.

Để nhắc lại, siêu âm của mô hình cuối cùng là những gì bạn mong đợi sẽ cung cấp cho bạn hiệu suất bạn tìm thấy trong bước Điều chỉnh và xác thực .


Cảm ơn câu trả lời của bạn. Tôi cố gắng để hiểu nó nhưng tôi không chắc chắn nếu tôi nhận được nó. Vì vậy, chính xác nơi tôi có được bộ siêu tham số tốt nhất của tôi?
RockTheStar

@RockTheStar Tôi đã cập nhật câu trả lời. Về cơ bản, bạn chỉnh lại (nghĩa là thực hiện điều chỉnh lại, và sau đó khớp với mô hình đã điều chỉnh trên tất cả dữ liệu): đây là nơi đặt cược tốt nhất của bạn cho siêu đường kính tối ưu đến.
Firebug

1
về cơ bản, bạn đang nói CV lồng nhau là để xác minh hiệu suất mô hình. Và chúng ta cần làm một CV đơn giản cho dữ liệu đầy đủ một lần nữa để có được các tham số tối ưu. Tôi có đúng không
RockTheStar

@RockTheStar Vâng, bạn đã tóm tắt tất cả một cách chính xác.
Firebug

1
@nafizh Xin lỗi vì mất quá nhiều thời gian để trả lời câu hỏi của bạn, đã không thấy thông báo (?). Tất cả các ước tính hiệu suất sẽ được dựa trên CV lồng nhau, đó là cái bạn đã xây dựng để kiểm tra chiến lược xây dựng mô hình của mình. Để thực hiện điều chỉnh siêu tham số cuối cùng, bạn thực hiện vòng lặp bên trong trên toàn bộ dữ liệu và chọn điều tốt nhất theo cùng tiêu chí bạn đã sử dụng trong CV lồng nhau. Sau đó, bạn khớp nó với toàn bộ dữ liệu và đó là mô hình cuối cùng của bạn, nhưng hiệu suất dự đoán mà bạn gán cho nó là mô hình bạn có được trong CV lồng nhau .
Firebug
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.