Saya sedang melakukan validasi silang bersarang. Saya telah membaca bahwa validasi silang tinggalkan satu dapat bias (tidak ingat mengapa).
Apakah lebih baik menggunakan 10 kali lipat cross-validasi atau cuti-satu-out cross-validasi terpisah dari runtime lebih lama untuk cuti-satu-out cross-validasi?
Jawaban:
Hanya dengan menambahkan sedikit ke jawaban @SubravetiSuraj (+1)
Validasi silang memberikan perkiraan kinerja yang pesimistis bias karena sebagian besar model statistik akan meningkat jika set pelatihan dibuat lebih besar. Ini berarti bahwa validasi silang k-fold memperkirakan kinerja model yang dilatih pada dataset 100 * (k-1) / k% dari data yang tersedia, bukan pada 100% dari itu. Jadi, jika Anda melakukan validasi silang untuk memperkirakan kinerja, dan kemudian menggunakan model yang dilatih pada semua data untuk penggunaan operasional, itu akan melakukan sedikit lebih baik daripada perkiraan estimasi validasi silang.
Validasi silang Leave-one-out sekitar tidak bias , karena perbedaan ukuran antara set pelatihan yang digunakan di setiap lipatan dan seluruh dataset hanya satu pola tunggal. Ada makalah tentang ini oleh Luntz dan Brailovsky (dalam bahasa Rusia).
Luntz, Aleksandr, dan Viktor Brailovsky. "Pada estimasi karakter yang diperoleh dalam prosedur statistik pengakuan." Technicheskaya Kibernetica 3.6 (1969): 6-12.
Lihat juga
Estimasi Tingkat Kesalahan dalam Analisis Diskriminan Peter A. Lachenbruch dan M. Ray Mickey Technometrics Vol. 10, Iss. 1,1968
Namun, sementara validasi silang cuti-keluar-keluar kira-kira tidak bias, cenderung memiliki varians tinggi (sehingga Anda akan mendapatkan perkiraan yang sangat berbeda jika Anda mengulangi perkiraan dengan sampel data awal yang berbeda dari distribusi yang sama). Karena kesalahan estimator adalah kombinasi antara bias dan varians, apakah validasi silang meninggalkan-satu-keluar lebih baik daripada cross-validasi 10 kali lipat tergantung pada kedua kuantitas.
Sekarang varians dalam pas model cenderung lebih tinggi jika dipasang ke dataset kecil (karena lebih sensitif terhadap suara apapun / sampel artefak dalam sampel pelatihan tertentu yang digunakan). Ini berarti bahwa 10 kali lipat cross-validasi cenderung memiliki varians tinggi (serta bias lebih tinggi) jika Anda hanya memiliki jumlah terbatas data, sebagai ukuran training set akan lebih kecil daripada LOOCV. Jadi k-fold cross-validation dapat memiliki masalah varians juga, tetapi untuk alasan yang berbeda. Inilah sebabnya mengapa LOOCV seringkali lebih baik ketika ukuran dataset kecil.
Namun, alasan utama untuk menggunakan LOOCV menurut saya adalah karena secara komputasi murah untuk beberapa model (seperti regresi linier, sebagian besar metode kernel, pengklasifikasi tetangga terdekat, dll.), Dan kecuali dataset sangat kecil, saya akan menggunakan 10 kali lipat validasi silang jika sesuai dengan anggaran komputasi saya, atau lebih baik lagi, estimasi bootstrap dan bagging.
sumber
Menurut pendapat saya, tinggalkan satu validasi silang lebih baik ketika Anda memiliki satu set kecil data pelatihan. Dalam hal ini, Anda tidak dapat membuat 10 lipatan untuk membuat prediksi tentang penggunaan sisa data Anda untuk melatih model.
Jika Anda memiliki sejumlah besar data pelatihan di sisi lain, validasi silang 10 kali lipat akan menjadi taruhan yang lebih baik, karena akan ada terlalu banyak iterasi untuk meninggalkan satu validasi silang, dan mempertimbangkan banyak hasil ini untuk menyetel hyperparameter Anda mungkin bukan ide yang bagus.
Menurut ISL, selalu ada trade-off bias-varians antara melakukan validasi cuti satu dan k lipat lintas. Di LOOCV (biarkan satu CV keluar), Anda mendapatkan perkiraan kesalahan tes dengan bias lebih rendah, dan varians yang lebih tinggi karena setiap set pelatihan berisi n-1 contoh, yang berarti bahwa Anda menggunakan hampir seluruh set pelatihan di setiap iterasi. Ini mengarah ke varians yang lebih tinggi juga, karena ada banyak tumpang tindih antara set pelatihan, dan dengan demikian estimasi kesalahan tes sangat berkorelasi, yang berarti bahwa nilai rata-rata estimasi kesalahan tes akan memiliki varian yang lebih tinggi.
Kebalikannya benar dengan CV k-fold, karena ada relatif kurang tumpang tindih antara set pelatihan, sehingga estimasi kesalahan tes kurang berkorelasi, sebagai akibatnya nilai kesalahan tes rata-rata tidak akan memiliki varian sebanyak LOOCV.
sumber