Bias dan varians dalam validasi lintas keluar-keluar-vs vs K-fold

83

Bagaimana metode validasi silang berbeda dibandingkan dalam hal varian model dan bias?

Pertanyaan saya sebagian dimotivasi oleh utas ini: Jumlah lipatan yang optimal dalam validasi silang lipat: apakah CV cuti-keluar-selalu merupakan pilihan terbaik? KK. Jawaban di sana menunjukkan bahwa model yang dipelajari dengan validasi silang tinggalkan-keluar-satu memiliki varians yang lebih tinggi daripada yang dipelajari dengan validasi silang kali lipat, menjadikan CV tinggalkan-satu-keluar menjadi pilihan yang lebih buruk.K

Namun, intuisi saya memberi tahu saya bahwa dalam CV cuti-keluar-satu orang akan melihat varians yang relatif lebih rendah di antara model daripada CV - , karena kami hanya menggeser satu titik data melintasi lipatan dan oleh karena itu pelatihan mengatur antara lipatan tumpang tindih secara substansial.K

Atau pergi ke arah lain, jika rendah di -lipatan CV, set pelatihan akan sangat berbeda di seluruh lipatan, dan model yang dihasilkan lebih mungkin berbeda (maka varians yang lebih tinggi).KKK

Jika argumen di atas benar, mengapa model yang dipelajari dengan CV cuti-out memiliki varian yang lebih tinggi?

Amelio Vazquez-Reina
sumber
2
Hai Amelio. Harap dicatat bahwa simulasi yang disediakan dalam jawaban baru oleh Xavier dan di Q tua ini dengan Jake Westfall stats.stackexchange.com/questions/280665 , baik menunjukkan bahwa varians berkurang dengan . Ini secara langsung bertentangan dengan jawaban yang saat ini diterima, dan juga jawaban yang paling banyak dipilih (yang sebelumnya diterima). Saya belum melihat simulasi di mana pun yang akan mendukung klaim bahwa varians meningkat dengan dan tertinggi untuk LOOCV. KKK
Amuba kata Reinstate Monica
2
Terima kasih @amoeba saya melihat kemajuan pada kedua jawaban. Saya pasti akan melakukan yang terbaik untuk memastikan jawaban yang diterima menunjuk ke yang paling berguna dan benar.
Amelio Vazquez-Reina
1
@amoeba lihat researchgate.net/profile/Francisco_Martinez-Murcia/publication/… yang menunjukkan peningkatan varian dengan k
Hanan Shteingart
akan menarik untuk melihat dari mana dia mendapatkan grafik itu, pada pandangan pertama pada tesis ini sepertinya dibuat untuk sesuai dengan penjelasannya di bagian pengantar. Mungkin ini simulasi yang sebenarnya tetapi tidak dijelaskan, dan tentu saja ini bukan hasil dari eksperimen sebenarnya yang lebih rendah ...
Xavier Bourret Sicotte

Jawaban:

51

mengapa model yang dipelajari dengan CV cuti-out memiliki varian yang lebih tinggi?

[TL: DR] Ringkasan pos dan debat terbaru (Juli 2018)

Topik ini telah banyak dibahas baik di situs ini, dan dalam literatur ilmiah, dengan pandangan yang bertentangan, intuisi dan kesimpulan. Kembali pada tahun 2013 ketika pertanyaan ini pertama kali bertanya, pandangan dominan adalah bahwa LOOCV mengarah ke varians lebih besar dari kesalahan generalisasi diharapkan dari algoritma pelatihan memproduksi model dari sampel ukuran .n(K1)/K

Pandangan ini, bagaimanapun, tampaknya merupakan generalisasi yang tidak benar dari kasus khusus dan saya berpendapat bahwa jawaban yang benar adalah: "itu tergantung ..."

Mengutip Yves Grandvalet penulis makalah 2004 tentang topik saya akan meringkas argumen intuitif sebagai berikut:

  1. Jika validasi silang adalah rata-rata perkiraan independen : maka CV cuti-keluar-satu harus melihat varians yang relatif lebih rendah antara model karena kami hanya menggeser satu titik data melintasi lipatan dan oleh karena itu rangkaian pelatihan antara lipatan tumpang tindih secara substansial.
  2. Ini tidak benar ketika set pelatihan sangat berkorelasi : Korelasi dapat meningkat dengan K dan peningkatan ini bertanggung jawab untuk peningkatan keseluruhan varians dalam skenario kedua. Secara intuitif, dalam situasi itu, cuti-keluar-keluar CV mungkin buta terhadap ketidakstabilan yang ada, tetapi mungkin tidak dipicu oleh perubahan satu titik dalam data pelatihan, yang membuatnya sangat bervariasi terhadap realisasi rangkaian pelatihan.

Simulasi eksperimental dari saya dan orang lain di situs ini, serta orang-orang peneliti di makalah yang ditautkan di bawah ini akan menunjukkan kepada Anda bahwa tidak ada kebenaran universal tentang topik tersebut. Sebagian besar percobaan telah monoton menurun atau varians konstan dengan , tetapi beberapa kasus khusus menunjukkan peningkatan bertentangan dengan .KKK

Sisa dari jawaban ini mengusulkan simulasi pada contoh mainan dan tinjauan literatur informal.

[Perbarui] Anda dapat menemukan di sini simulasi alternatif untuk model yang tidak stabil dengan adanya outlier.

Simulasi dari contoh mainan menunjukkan varians menurun / konstan

Pertimbangkan contoh mainan berikut ini di mana kita memasang polinomial derajat 4 ke kurva sinus yang bising. Kami berharap model ini tidak sesuai untuk dataset kecil karena overfitting, seperti yang ditunjukkan oleh kurva pembelajaran.

masukkan deskripsi gambar di sini

Perhatikan bahwa kami merencanakan 1 - MSE di sini untuk mereproduksi ilustrasi dari ESLII halaman 243

 Metodologi

Anda dapat menemukan kode untuk simulasi ini di sini . Pendekatannya adalah sebagai berikut:

  1. Hasilkan 10.000 poin dari distribusi mana varian sebenarnya dari dikenalϵsin(x)+ϵϵ
  2. Iterasi kali (mis. 100 atau 200 kali). Pada setiap iterasi, ubah dataset dengan resampling poin dari distribusi asliNiN
  3. Untuk setiap set data : i
    • Lakukan validasi silang K-fold untuk satu nilaiK
    • Menyimpan rata-rata Mean Square Error (MSE) di seluruh lipatan K
  4. Setelah loop over selesai, hitung mean dan standar deviasi MSE di seluruh dataset untuk nilaisaya K.iiK
  5. Ulangi langkah-langkah di atas untuk semua dalam rentang semua cara untuk Meninggalkan One Out CV (LOOCV){ 5 , . . . , N }K{5,...,N}

Dampak pada Bias dan Variasi MSE di seluruh dataset .iKi

Sisi Kiri : Kfold untuk 200 titik data, Sisi Kanan : Kfold untuk 40 titik data

masukkan deskripsi gambar di sini

Standar Deviasi MSE (antar set data i) vs Kfolds

masukkan deskripsi gambar di sini

Dari simulasi ini, tampaknya:

  • Untuk sejumlah kecil titik data, meningkatkan hingga atau lebih secara signifikan meningkatkan bias dan varians. Untuk lebih besar tidak ada efek pada bias atau varians.K K = 10 KN=40KK=10K
  • Intuisi adalah bahwa untuk ukuran pelatihan terlalu kecil yang efektif, model polinom sangat tidak stabil, terutama untukK5
  • Untuk lebih besar, - peningkatan tidak memiliki dampak khusus pada bias dan varians.KN=200K

Tinjauan literatur informal

Tiga makalah berikut menyelidiki bias dan varian validasi silang

Kohavi 1995

Makalah ini sering disebut sebagai sumber untuk argumen bahwa LOOC memiliki varian yang lebih tinggi. Di bagian 1:

"Sebagai contoh, meninggalkan-oneout hampir tidak memihak, tetapi memiliki varians yang tinggi, yang mengarah pada perkiraan yang tidak dapat diandalkan (Efron 1983)"

Pernyataan ini merupakan sumber banyak kebingungan, karena tampaknya berasal dari Efron pada tahun 1983, bukan Kohavi. Argumentasi teoritis dan hasil eksperimen Kohavi bertentangan dengan pernyataan ini:

Konsekuensi 2 (Varian dalam CV)

Diberi dataset dan penginduksi. Jika induser stabil di bawah gangguan yang disebabkan oleh menghapus contoh uji untuk lipatan dalam k-lipat CV untuk berbagai nilai , maka varian estimasi akan samak

Eksperimen Dalam eksperimennya, Kohavi membandingkan dua algoritma: pohon keputusan C4.5 dan classifier Naif Bayes di beberapa dataset dari repositori UC Irvine. Hasilnya adalah di bawah ini: LHS adalah akurasi vs lipatan (yaitu bias) dan RHS adalah standar deviasi vs lipatan

masukkan deskripsi gambar di sini

Pada kenyataannya, hanya pohon keputusan pada tiga set data yang jelas memiliki varians lebih tinggi untuk meningkatkan K. Hasil lainnya menunjukkan varians menurun atau konstan.

Akhirnya, meskipun kesimpulannya bisa lebih kuat, tidak ada argumen untuk LOO memiliki varian yang lebih tinggi, justru sebaliknya. Dari bagian 6. Ringkasan

"validasi silang k-fold dengan nilai k sedang (10-20) mengurangi varians ... Karena k-berkurang (2-5) dan sampel menjadi lebih kecil, ada varians karena ketidakstabilan set pelatihan itu sendiri.

Zhang dan Yang

Para penulis mengambil pandangan yang kuat tentang topik ini dan dengan jelas menyatakan di Bagian 7.1

Bahkan, dalam regresi linear kuadrat terkecil, Burman (1989) menunjukkan bahwa di antara CV k-fold, dalam memperkirakan kesalahan prediksi, LOO (yaitu, CV n-lipat) memiliki bias dan varians asimptotik terkecil. ...

... Kemudian perhitungan teoritis ( Lu , 2007) menunjukkan bahwa LOO memiliki bias dan varians terkecil pada saat yang sama di antara semua CV delete-n dengan semua kemungkinan penghapusan n_v dipertimbangkan

Hasil Eksperimen Demikian pula, percobaan Zhang menunjuk ke arah penurunan varians dengan K, seperti yang ditunjukkan di bawah ini untuk model True dan model yang salah untuk Gambar 3 dan Gambar 5.

masukkan deskripsi gambar di sini

masukkan deskripsi gambar di sini

Satu-satunya percobaan yang variansnya meningkat dengan adalah untuk model Lasso dan SCAD. Ini dijelaskan sebagai berikut pada halaman 31:K

Namun, jika pemilihan model terlibat, kinerja LOO memperburuk variabilitas karena ketidakpastian pemilihan model semakin tinggi karena ruang model besar, koefisien penalti kecil dan / atau penggunaan koefisien penalti yang digerakkan oleh data.

Xavier Bourret Sicotte
sumber
11
+11! Akhirnya jawaban dengan simulasi eksplisit! Dan itu langsung bertentangan dengan kesimpulan dari jawaban yang saat ini diterima dan yang paling banyak dipilih. Mengenai kesimpulan Anda: jika memang "stabilitas model adalah faktor kunci", maka salah satu harus dapat mengatur simulasi di mana varians akan meningkat dengan . Saya telah melihat dua simulasi: Anda di sini, dan yang satu ini dan keduanya menunjukkan bahwa varians baik menurun atau tetap konstan dengan . Sampai saya melihat simulasi dengan variasi yang meningkat, saya akan tetap sangat skeptis bahwa itu pernah terjadi. KKK
Amuba kata Reinstate Monica
4
@amoeba inilah kasus di mana LOOCV gagal: pertimbangkan n titik data dan polinomial tingkat interpolasi n. Sekarang gandakan jumlah titik data dengan menambahkan duplikat tepat pada setiap titik yang ada. LOOCV mengatakan kesalahannya adalah nol. Anda perlu menurunkan lipatan untuk mendapatkan info yang berguna.
Paul
2
Untuk mereka yang tertarik dengan diskusi ini - mari lanjutkan obrolan: chat.stackexchange.com/rooms/80281/…
Xavier Bourret Sicotte
1
Sudahkah Anda mempertimbangkan fakta bahwa dengan eg memungkinkan pengulangan? Ini bukan opsi dengan LOOCV, dan karenanya harus diperhitungkan. k = 10kfoldk=10
D1X
1
@amoeba: re Kohavi / LOO dan varians. Saya menemukan bahwa LOO untuk beberapa model klasifikasi bisa sangat (mengejutkan) tidak stabil. Ini khususnya diucapkan dalam ukuran sampel kecil, dan saya pikir itu terkait dengan kasus uji selalu milik kelas yang wrt kurang terwakili. seluruh sampel: dalam klasifikasi biner bertingkat cuti-2-out tampaknya tidak memiliki masalah ini (tapi saya tidak menguji secara ekstensif). Ketidakstabilan ini akan menambah varian yang diamati, membuat LOO menonjol dari pilihan k lainnya. IIRC, ini konsisten dengan temuan Kohavi.
cbeleites
45

Dalam -fold cross-validation, kami mempartisi dataset menjadi dengan subset non-overlapping berukuran sama . Untuk setiap lipatan , model dilatih pada , yang kemudian dievaluasi pada . Penduga validasi silang, misalnya kesalahan prediksi, didefinisikan sebagai rata-rata kesalahan prediksi yang diperoleh pada setiap lipatan.kkSSiSSiSi

Meskipun tidak ada tumpang tindih antara set tes di mana model dievaluasi, ada tumpang tindih antara set pelatihan untuk semua . Tumpang tindih adalah yang terbesar untuk validasi silang tinggalkan satu. Ini berarti bahwa model yang dipelajari berkorelasi, yaitu dependen, dan varians dari jumlah variabel berkorelasi meningkat dengan jumlah kovarians ( lihat wikipedia ):k>2

Var(i=1NXi)=i=1Nj=1NCov(Xi,Xj)

Oleh karena itu, validasi silang tinggalkan satu memiliki varian yang besar dibandingkan dengan CV dengan lebih kecil .k

Namun, perhatikan bahwa sementara validasi silang dua kali lipat tidak memiliki masalah tumpang tindih set pelatihan, sering juga memiliki varians yang besar karena set pelatihan hanya setengah dari sampel asli. Kompromi yang baik adalah sepuluh kali lipat validasi silang.

Beberapa makalah menarik yang menyentuh subjek ini (dari banyak lagi):

Gitte
sumber
5
+1 (dahulu kala), tetapi membaca kembali jawaban Anda sekarang, saya bingung dengan bit berikut. Anda mengatakan bahwa CV 2 kali lipat "sering juga memiliki varian besar karena set pelatihan hanya setengah dari ukuran". Saya mengerti bahwa memiliki set pelatihan dua kali lebih kecil adalah masalah, tetapi mengapa hal itu memberikan "perbedaan besar"? Bukankah itu "bias besar" saja? Kemudian seluruh masalah memilih jumlah lipatan menjadi trade-off bias-varians, yang sering disajikan.
Amoeba berkata Reinstate Monica
1
@Sebastian Saya pikir "varians" dalam konteks ini mengacu pada varians dari kinerja model "akumulasi" (jumlah atas semua lipatan ) dan bukan ke varian lipatan itu sendiri , seperti yang Anda maksudkan dalam dua kalimat terakhir. k
Amuba kata Reinstate Monica
3
Sedang melihat-lihat beberapa literatur. Menariknya, Dalam Pengantar Pembelajaran Statistik James, Witten, Hastie & Tibshirani mengatakan LOOCV "sangat bervariasi, karena didasarkan pada pengamatan tunggal (x1, y1)." dan dalam Elemen Pembelajaran Statistik, Hastie & Tibshirani & Friedman mengatakan bahwa LOOCV "dapat memiliki varian yang tinggi karena set pelatihan N sangat mirip satu sama lain."
2
ini tidak benar. Varians harus = . Anda benar bahwa enumerator lebih besar, tetapi penyebutnya juga semakin besar. var[Σxi/n]ΣΣcov(xi,xj)/n2
Penduduk utara
3
Tidak, itu bukan benar-benar "inti". Orang-orang menggunakan CV k-fold untuk mendapatkan estimasi global tunggal setiap saat. Anda tentu dapat mencoba menggunakan taksiran lipat ganda dengan cara lain, tetapi menggabungkannya adalah salah satu cara yang paling umum untuk memperkirakan kinerja penahanan dari teknik pemodelan. Dan itulah tepatnya Persamaan 7.48 ESL lakukan.
Paul
27

[...] intuisi saya memberi tahu saya bahwa dalam CV cuti-keluar-satu orang akan melihat varians yang relatif lebih rendah di antara model dibandingkan CV - , karena kami hanya menggeser satu titik data ke seluruh lipatan dan oleh karena itu pelatihan mengatur antara lipatan tumpang tindih secara substansial.K

Saya pikir intuisi Anda masuk akal jika Anda berpikir tentang prediksi yang dibuat oleh model pada setiap lipatan cuti. Mereka didasarkan pada data yang berkorelasi / sangat mirip (dataset lengkap minus satu titik data) dan karenanya akan membuat prediksi yang sama - yaitu, variabilitas rendah.

Sumber kebingungan adalah bahwa ketika orang berbicara tentang LOOCV yang mengarah ke variabilitas tinggi, mereka tidak berbicara tentang prediksi yang dibuat oleh banyak model yang dibangun selama loop validasi silang pada set ketidaksepakatan. Alih-alih, mereka berbicara tentang seberapa besar variabilitas yang akan dimiliki model akhir Anda (yang dipilih melalui LOOCV) jika Anda melatih model / parameter yang tepat itu pada set pelatihan baru - set pelatihan model yang belum pernah Anda lihat sebelumnya. Dalam hal ini, variabilitas akan tinggi.

Mengapa variabilitas tinggi? Mari sederhanakan ini sedikit. Bayangkan bahwa alih-alih menggunakan LOOCV untuk memilih model, Anda hanya memiliki satu set pelatihan dan kemudian Anda menguji model yang dibangun menggunakan data pelatihan itu, katakanlah, 100 kali pada 100 titik data uji tunggal (titik data bukan bagian dari rangkaian pelatihan) . Jika Anda memilih model dan set parameter yang melakukan yang terbaik di antara 100 tes, maka Anda akan memilih satu yang memungkinkan set pelatihan khusus ini benar-benar bagus dalam memprediksi data uji. Anda dapat berpotensi memilih model yang menangkap 100% asosiasi antara set data pelatihan tertentu dan data ketidaksepakatan. Sayangnya, beberapa bagian dari asosiasi antara set data pelatihan dan tes akan menjadi asosiasi noise atau palsu karena, meskipun set tes berubah dan Anda dapat mengidentifikasi noise di sisi ini, dataset pelatihan tidak dan Anda tidak dapat menentukan varians yang dijelaskan disebabkan oleh noise. Dengan kata lain, apa artinya ini adalah bahwa Anda telah melampaui prediksi Anda terhadap dataset pelatihan khusus ini.

Sekarang, jika Anda melatih ulang model ini dengan parameter yang sama beberapa kali pada set pelatihan baru, apa yang akan terjadi? Nah, sebuah model yang sesuai dengan set data pelatihan tertentu akan menyebabkan variabilitas dalam prediksinya ketika set pelatihan berubah (mis. Ubah set pelatihan sedikit dan model akan mengubah prediksi secara substansial).

Karena semua lipatan dalam LOOCV sangat berkorelasi, itu mirip dengan kasus di atas (set pelatihan yang sama; titik tes yang berbeda). Dengan kata lain, jika set pelatihan tertentu memiliki beberapa korelasi palsu dengan titik-titik tes tersebut, model Anda akan mengalami kesulitan menentukan korelasi mana yang nyata dan mana yang palsu, karena meskipun set tes berubah, set pelatihan tidak.

Sebaliknya, lipatan pelatihan yang kurang berkorelasi berarti bahwa model tersebut akan sesuai dengan beberapa dataset unik. Jadi, dalam situasi ini, jika Anda melatih ulang model pada kumpulan data baru lainnya, itu akan mengarah pada prediksi yang sama (yaitu, variabilitas kecil).

captain_ahab
sumber
4
Saya pikir jawaban ini jauh lebih menjelaskan daripada jawaban yang diterima dan terutama menjelaskan jawaban yang diterima.
D1X
apa yang Anda maksud dengan "Sekarang, jika Anda melatih ulang model ini dengan parameter yang sama beberapa kali pada set pelatihan baru, apa yang akan terjadi?". Pelatihan berarti menemukan parameter, bukan? Apakah Anda bermaksud mengatakan hiperparameter?
MiloMinderbinder
14

Meskipun pertanyaan ini agak lama, saya ingin menambahkan jawaban tambahan karena saya pikir lebih baik untuk mengklarifikasi ini.

Pertanyaan saya sebagian dimotivasi oleh utas ini: Jumlah lipatan yang optimal dalam validasi silang K-fold: apakah CV cuti satu kali selalu merupakan pilihan terbaik? . Jawaban di sana menunjukkan bahwa model yang dipelajari dengan validasi silang leave-one-out memiliki varian yang lebih tinggi daripada yang dipelajari dengan validasi silang K-fold reguler, membuat CV leave-one-out menjadi pilihan yang lebih buruk.

Jawaban itu tidak menyarankan itu, dan seharusnya tidak. Mari kita tinjau jawaban yang disediakan di sana:

Validasi silang Leave-one-out umumnya tidak mengarah pada kinerja yang lebih baik daripada K-fold, dan lebih cenderung menjadi lebih buruk, karena memiliki varians yang relatif tinggi (yaitu nilainya berubah lebih banyak untuk sampel data yang berbeda daripada nilai untuk k-fold cross-validation).

Ini berbicara tentang kinerja . Di sini kinerja harus dipahami sebagai kinerja penduga kesalahan model . Apa yang Anda perkirakan dengan k-fold atau LOOCV adalah kinerja model, baik saat menggunakan teknik-teknik ini untuk memilih model dan untuk menyediakan estimasi kesalahan itu sendiri. Ini BUKAN varians model, ini adalah varians dari estimator kesalahan (model). Lihat contoh (*) di bawah ini.

Namun, intuisi saya memberi tahu saya bahwa dalam CV cuti-keluar satu orang akan melihat varians yang relatif lebih rendah di antara model-model daripada di K-fold CV, karena kita hanya menggeser satu titik data melintasi lipatan dan oleh karena itu pelatihan mengatur antara lipatan tumpang tindih secara substansial.

Memang, ada varian yang lebih rendah antara model, Mereka dilatih dengan dataset yang memiliki pengamatan ! Ketika meningkat, mereka menjadi model yang hampir sama (Dengan asumsi tidak ada stokastik).n2n

Justru varians yang lebih rendah ini dan korelasi yang lebih tinggi antara model yang membuat estimator yang saya bicarakan di atas memiliki lebih banyak varians, karena estimator itu adalah rata-rata dari jumlah-jumlah yang berkorelasi ini, dan varians dari rata-rata data berkorelasi lebih tinggi daripada data tidak berkorelasi . Di sini ditunjukkan alasannya: varians dari rata-rata data yang berkorelasi dan tidak berkorelasi .

Atau pergi ke arah lain, jika K rendah di K-fold CV, set pelatihan akan sangat berbeda di seluruh lipatan, dan model yang dihasilkan lebih mungkin berbeda (maka varians yang lebih tinggi).

Memang.

Jika argumen di atas benar, mengapa model yang dipelajari dengan CV cuti-out memiliki varian yang lebih tinggi?

Argumen di atas benar. Sekarang, pertanyaannya salah. Varian model adalah topik yang sama sekali berbeda. Ada varian di mana ada variabel acak. Dalam pembelajaran mesin Anda berurusan dengan banyak variabel acak, khususnya dan tidak terbatas pada: setiap pengamatan adalah variabel acak; sampel adalah variabel acak; model, karena dilatih dari variabel acak, adalah variabel acak; penaksir kesalahan yang akan dihasilkan model Anda ketika dihadapkan pada populasi adalah variabel acak; dan last but not least, kesalahan model adalah variabel acak, karena ada kemungkinan kebisingan dalam populasi (ini disebut kesalahan tak tereduksi). Akan ada lebih banyak keacakan jika ada stokastik yang terlibat dalam proses pembelajaran model. Sangat penting untuk membedakan antara semua variabel ini.


(*) Contoh : Misalkan Anda memiliki model dengan kesalahan nyata , di mana Anda harus memahami sebagai kesalahan yang dihasilkan oleh model atas seluruh populasi. Karena Anda memiliki sampel yang diambil dari populasi ini, Anda menggunakan teknik validasi silang atas sampel tersebut untuk menghitung estimasi , yang dapat kami nama . Seperti setiap penaksir, adalah variabel acak, artinya ia memiliki variansnya sendiri, , dan biasnya sendiri, . adalah persis apa yang lebih tinggi ketika menggunakan LOOCV. Sementara LOOCV adalah estimator yang kurang bias dibandingkan dengan witherrerrEerr~err~var(err~)E(err~err)var(err~)kfoldk<n , ia memiliki lebih banyak varian. Untuk lebih memahami mengapa kompromi antara bias dan varians diinginkan , misalkan , dan Anda memiliki dua penduga: dan . Yang pertama menghasilkan output inierr=10err~1err~2

err~1=0,5,10,20,15,5,20,0,10,15...
sedangkan yang kedua menghasilkan
err~2=8.5,9.5,8.5,9.5,8.75,9.25,8.8,9.2...

Yang terakhir, meskipun memiliki lebih banyak bias, harus lebih disukai, karena memiliki varians jauh lebih sedikit dan bias yang dapat diterima , yaitu kompromi ( trade-off bias-varians ). Harap dicatat bahwa Anda tidak ingin varians sangat rendah jika itu memerlukan bias tinggi!


Catatan tambahan : Dalam jawaban ini saya mencoba untuk mengklarifikasi (apa yang saya pikir) kesalahpahaman yang mengelilingi topik ini dan, khususnya, mencoba untuk menjawab poin demi poin dan tepatnya keraguan yang dimiliki si penanya. Secara khusus, saya mencoba memperjelas perbedaan yang sedang kita bicarakan , yang pada dasarnya ditanyakan di sini. Yaitu saya jelaskan jawaban yang dihubungkan oleh OP.

Walaupun begitu, sementara saya memberikan alasan teoretis di balik klaim tersebut, kami belum menemukan bukti empiris konklusif yang mendukungnya. Jadi tolong berhati-hatilah.

Idealnya, Anda harus membaca posting ini terlebih dahulu dan kemudian merujuk ke jawaban oleh Xavier Bourret Sicotte, yang menyediakan diskusi mendalam tentang aspek empiris.

Last but not least, sesuatu yang lain harus dipertimbangkan: Bahkan jika varians ketika Anda meningkatkan tetap datar (karena kami belum membuktikan secara empiris sebaliknya), dengan cukup kecil memungkinkan untuk pengulangan ( k-lipat berulang ), yang pasti harus dilakukan, misalnya . Ini secara efektif mengurangi varians, dan bukan pilihan ketika melakukan LOOCV.kkfoldk10 × 10 - f o l d10 × 10fold

D1X
sumber
2
Harap dicatat bahwa simulasi yang disediakan dalam jawaban baru oleh Xavier dan juga di Q tua ini dengan Jake Westfall , baik menunjukkan bahwa varians berkurang dengan . Ini secara langsung bertentangan dengan jawaban Anda. Sejauh ini saya belum melihat simulasi yang akan mendukung klaim bahwa varians meningkat dengan dan tertinggi untuk LOOCV. KKK
Amoeba berkata Reinstate Monica
3
Mereka menunjukkan varians berkurang sebagai hingga titik tertentu, di mana ia tetap datar. Secara teoritis ditunjukkan bahwa rata-rata sampel berkorelasi memiliki lebih banyak varians, oleh karena itu menunjukkan hasilnya secara teoritis. Yang sedang berkata, Anda benar, percobaan sebenarnya yang menunjukkan ini tidak ada . Saya akan melakukan yang terbaik untuk membangunnya. kN
D1X
Ya penurunan dengan dari ke adalah karena kesalahan dalam jawaban Xavier. Sekarang sudah diperbaiki dan varians memang tetap sama di kisaran ini. Mengingat bahwa dua simulasi independen menunjukkan efek yang sama, saya terus skeptis bahwa LOOCV dapat diharapkan memiliki varian yang lebih tinggi. Argumen teoretis Anda sangat melambaikan tangan. Rerata sampel berkorelasi memiliki varians lebih tinggi hanya ketika segala sesuatu yang lain adalah sama. Tidak jelas bahwa semuanya sama untuk CV 10 kali lipat vs N-lipat. Menantikan simulasi Anda. K = 10 K = NKK=10K=N
Amoeba berkata Reinstate Monica
1
Belum melihat kertas-kertas itu, saya akan melihat mereka ketika saya punya waktu. Namun, model linear OLS adalah model yang sangat sederhana, memang tunduk pada varians rendah. Tidak hanya itu, mereka memiliki formula tertutup untuk validasi silang.
D1X
1
Memberi +1 pada suntingan Anda membuat jawabannya jauh lebih jelas - kami selaras tentang dampak korelasi antara set pelatihan -> varians yang lebih tinggi. Namun dalam praktiknya (secara eksperimen) tampaknya set pelatihan tidak selalu saling berhubungan satu sama lain.
Xavier Bourret Sicotte
12

Masalahnya memang halus. Tetapi jelas tidak benar bahwa LOOCV memiliki varian yang lebih besar secara umum. Makalah baru-baru ini membahas beberapa aspek utama dan membahas beberapa kesalahpahaman yang tampaknya tersebar luas tentang validasi silang.

Yongli Zhang dan Yuhong Yang (2015). Validasi silang untuk memilih prosedur pemilihan model. Jurnal Ekonometrika, vol. 187, 95-112.

Kesalahpahaman berikut sering terlihat dalam literatur, bahkan sampai sekarang:

"CV Leave-one-out (LOO) memiliki bias yang lebih kecil tetapi varians yang lebih besar daripada CV" leave-more-out "

Pandangan ini cukup populer. Misalnya, Kohavi (1995, Bagian 1) menyatakan: "Sebagai contoh, meninggalkan-satu hampir tidak memihak, tetapi memiliki varians yang tinggi, yang mengarah ke perkiraan yang tidak dapat diandalkan". Pernyataan itu, bagaimanapun, umumnya tidak benar.

Lebih detail:

Dalam literatur, bahkan termasuk publikasi terbaru, ada rekomendasi terlalu banyak diambil. Saran umum Kohavi (1995) untuk menggunakan CV 10 kali lipat telah diterima secara luas. Sebagai contoh, Krstajic et al (2014, halaman 11) menyatakan: "Kohavi [6] dan Hastie et al [4] secara empiris menunjukkan bahwa validasi silang V-lipat dibandingkan dengan validasi silang absensi-keluar memiliki varian yang lebih rendah". Konsekuensinya mereka mengambil rekomendasi CV 10 kali lipat (dengan pengulangan) untuk semua investigasi numerik mereka. Dalam pandangan kami, praktik semacam itu mungkin menyesatkan. Pertama, tidak boleh ada rekomendasi umum yang tidak memperhitungkan tujuan penggunaan CV. Khususnya, pemeriksaan bias dan varians estimasi akurasi CV dari model kandidat / prosedur pemodelan dapat menjadi hal yang sangat berbeda dari pemilihan model optimal (dengan salah satu dari dua tujuan pemilihan model dinyatakan sebelumnya). Kedua, bahkan terbatas pada konteks estimasi akurasi, pernyataan itu secara umum tidak benar. Untuk model / prosedur pemodelan dengan ketidakstabilan rendah, LOO sering memiliki variabilitas terkecil. Kami juga telah menunjukkan bahwa untuk prosedur yang sangat tidak stabil (misalnya, LASSO dengan pn jauh lebih besar dari n), CV 10 kali lipat atau 5 kali lipat, sekaligus mengurangi variabilitas, dapat memiliki MSE yang jauh lebih besar daripada LOO karena peningkatan bias yang bahkan lebih buruk. Untuk model / prosedur pemodelan dengan ketidakstabilan rendah, LOO sering memiliki variabilitas terkecil. Kami juga telah menunjukkan bahwa untuk prosedur yang sangat tidak stabil (misalnya, LASSO dengan pn jauh lebih besar dari n), CV 10 kali lipat atau 5 kali lipat, sekaligus mengurangi variabilitas, dapat memiliki MSE yang jauh lebih besar daripada LOO karena peningkatan bias yang bahkan lebih buruk. Untuk model / prosedur pemodelan dengan ketidakstabilan rendah, LOO sering memiliki variabilitas terkecil. Kami juga telah menunjukkan bahwa untuk prosedur yang sangat tidak stabil (misalnya, LASSO dengan pn jauh lebih besar dari n), CV 10 kali lipat atau 5 kali lipat, sekaligus mengurangi variabilitas, dapat memiliki MSE yang jauh lebih besar daripada LOO karena peningkatan bias yang bahkan lebih buruk.

Secara keseluruhan, dari Gambar 3-4, LOO dan CV berulang 50 dan 20 kali lipat adalah yang terbaik di sini, 10 kali lipat secara signifikan lebih buruk, dan k ≤ 5 jelas buruk. Untuk estimasi kinerja prediktif, kami cenderung percaya bahwa LOO biasanya yang terbaik atau di antara yang terbaik untuk model tetap atau prosedur pemodelan yang sangat stabil (seperti BIC dalam konteks kami) dalam bias dan varians, atau cukup dekat dengan yang terbaik di MSE untuk prosedur yang lebih tidak stabil (seperti AIC atau bahkan LASSO dengan p ≫ n). Sementara 10 kali lipat CV (dengan pengulangan) tentu bisa menjadi yang terbaik kadang-kadang, tetapi lebih sering, itu dalam posisi yang canggung: lebih berisiko daripada LOO (karena masalah bias) untuk estimasi kesalahan prediksi dan biasanya lebih buruk daripada menghapus -n / 2 CV untuk mengidentifikasi kandidat terbaik.

Zack
sumber
4
Apakah mungkin untuk sedikit memperluas jawaban ini, mungkin untuk merangkum beberapa aspek utama yang diangkat dalam makalah ini?
Silverfish
3
Kertas yang sangat menarik. Dalam mengulas Kohavi (1995) saya merasa bahwa banyak pernyataan yang sangat luas dan sebagian besar tidak berdasar. Ini adalah makalah kebijaksanaan rakyat yang interogasi kritisnya sudah lama tertunda.
Paul
3

Sebelum membahas tentang bias dan varians, pertanyaan pertama adalah:

Apa yang diperkirakan dengan validasi silang?

Kn(K1)/KKK

K

K

K

Yves Grandvalet
sumber
4
K
0

Saya pikir ada jawaban yang lebih langsung. Jika Anda menambah k, set tes menjadi lebih kecil dan lebih kecil. Karena lipatan diambil secara acak, ini dapat terjadi pada set uji kecil, tetapi tidak seperti pada set yang lebih besar, bahwa lipatan tersebut tidak mewakili pengocokan acak. Satu set tes bisa berisi semua catatan yang sulit diprediksi dan yang lainnya semua yang mudah. Oleh karena itu, varians tinggi ketika Anda memprediksi set tes yang sangat kecil per lipatan.

David Ernst
sumber
Xi
4
sepertinya Anda berbicara tentang variabilitas dalam prediksi model di seluruh set penahan selama validasi silang. Saya pikir ini tidak menarik. Yang menarik adalah apakah model akhir yang disetel Anda akan sangat bervariasi dalam prediksi yang dibuatnya jika harus dilatih tentang data yang berbeda (yaitu, estimasi kebenaran model Anda benar-benar bervariasi tergantung pada set pelatihan)
captain_ahab
Dan bagaimana Anda memperkirakan variasi yang diharapkan pada data yang belum terlihat jika tidak melalui variasi yang diamati di antara kumpulan data yang diprediksi secara berurutan yang tidak diketahui pada saat itu? Saya mengerti maksud Anda, variabilitas yang berasal dari pengaturan eksperimental saja tidak menarik. Tanggapan saya: Oleh karena itu seseorang perlu memilih pengaturan eksperimental yang tidak memperkenalkan jenis variabilitas baru. Jika seseorang melakukannya, kedua jenis variabilitas tidak dapat dipisahkan dan menjadi lebih sulit untuk memperkirakan perluasan satu jenis yang menarik.
David Ernst
1
Anda dapat menunjukkan ini dengan simulasi (saya akan mencari makalah). Saya tidak yakin apakah kita berbicara melewati satu sama lain - tetapi ketika hastie dan orang-orang berbicara tentang korelasi tinggi di antara set pelatihan di LOOCV, mereka menekankan bahwa Anda pada dasarnya terus melatih model Anda pada dataset pelatihan yang sama. Itu mengarah ke overfitting ke dataset pelatihan itu. ganti dataset pelatihan, Anda memodelkan prediksi untuk contoh uji X akan banyak berubah. sebaliknya jika set latihan Anda kurang berkorelasi, Anda dapat menggunakan set pelatihan yang sama sekali baru dan Anda akan mendapatkan prediksi yang sama untuk contoh tes X.
captain_ahab
Saya pikir ada dua masalah terpisah yang terlibat. Meningkatkan k menyebabkan tumpang tindih lebih banyak di antara set pelatihan yang memiliki konsekuensi yang Anda sebutkan. (Saya tidak berdebat dengan semua itu) Pada saat yang sama, meningkatkan k mengarah ke set tes yang lebih kecil per lipatan yang berarti bahwa catatan lebih mungkin untuk diacak dengan cara yang tidak diinginkan dalam set tersebut. Saya pikir untuk pertanyaan spesifik yang diajukan, inilah alasan utama. Mungkin ada kontribusi dari pelatihan yang tumpang tindih juga. (Ada masalah ketiga ketika Anda menggunakan pengulangan karena set tes juga tumpang tindih.)
David Ernst