Penyalahgunaan validasi silang (melaporkan kinerja untuk nilai hyperparameter terbaik)

31

Baru-baru ini saya menemukan makalah yang mengusulkan menggunakan pengklasifikasi k-NN pada dataset tertentu. Para penulis menggunakan semua sampel data yang tersedia untuk melakukan validasi silang k-fold untuk nilai k yang berbeda dan melaporkan hasil validasi silang dari konfigurasi hyperparameter terbaik.

Sepengetahuan saya, hasil ini bias, dan mereka seharusnya mempertahankan set tes terpisah untuk mendapatkan perkiraan akurasi pada sampel yang tidak digunakan untuk melakukan optimasi hyperparameter.

Apakah saya benar? Dapatkah Anda memberikan beberapa referensi (sebaiknya makalah penelitian) yang menggambarkan penyalahgunaan validasi silang ini?

Daniel López
sumber
3
Perhatikan bahwa alih-alih set tes terpisah, seseorang dapat menggunakan apa yang disebut validasi silang bersarang . Jika Anda mencari istilah ini di situs ini, Anda akan menemukan banyak diskusi. Lihat khususnya untuk jawaban oleh @DikranMarsupial yang merupakan salah satu penulis makalah kedua yang dikutip dalam jawaban yang diterima.
Amuba mengatakan Reinstate Monica

Jawaban:

30

Ya, ada masalah dengan hanya melaporkan hasil CV k-fold. Anda dapat menggunakan misalnya tiga publikasi berikut untuk tujuan Anda (walaupun ada lebih banyak di luar sana, tentu saja) untuk mengarahkan orang ke arah yang benar:

Saya pribadi suka itu karena mereka mencoba untuk menyatakan masalah lebih dalam bahasa Inggris daripada di Matematika.

geekoverdosis
sumber
2
Lebih tepatnya, masalah ini bukan melaporkan hasil validasi silang, tetapi melaporkan perkiraan kinerja yang telah menjadi bagian dari proses seleksi / optimisasi.
cbeleites mendukung Monica
1
Juga perhatikan bahwa makalah Bengio & Grandvalet agak kurang relevan jika masalah di sini adalah kinerja model tertentu yang dilatih pada set data tertentu - mereka membahas kinerja untuk algoritma latih yang sama yang diterapkan pada set data baru dari populasi yang sama (yang membutuhkan untuk memasukkan varians antara set data yang berbeda dengan ukuran yang sama yang diambil dari sumber yang sama - yang tidak menjadi masalah jika kita berbicara tentang kinerja prediksi model yang dilatih pada set data tertentu).
cbeleites mendukung Monica
1
@cbeleites Terlihat dengan benar: di draft pertama jawaban saya, saya tidak sengaja memilih referensi ketiga, bukan yang kedua, tetapi kemudian tidak ingin menghapus informasi dari jawaban yang sudah diterima lagi - itulah sebabnya saya menambahkan yang kedua di antara (lihat versi jawaban). Namun demikian, saya pikir pertanyaannya terutama seputar kesalahan yang dilaporkan, dan makalah-makalah tersebut menunjukkan beberapa hal yang salah dengan CV dalam hal ini IMHO yang sangat baik.
geekoverdose