Validasi Silang dalam Pembelajaran Mesin: 4 Jenis Validasi Silang
Diterbitkan: 2020-11-30Daftar isi
pengantar
Pengembangan Model adalah langkah penting dalam Siklus Hidup Proyek Ilmu Data di mana kami akan mencoba melatih kumpulan data kami dengan berbagai jenis model Pembelajaran Mesin baik dari Algoritma yang Diawasi atau Tidak Diawasi berdasarkan Masalah Bisnis.
Karena kami menyadari bahwa kami memiliki banyak model yang dapat digunakan untuk memecahkan masalah bisnis, kami perlu memastikan bahwa model apa pun yang kami pilih pada akhir fase ini harus berkinerja baik pada data yang tidak terlihat. Jadi, kita tidak bisa hanya mengikuti metrik evaluasi untuk memilih model dengan kinerja terbaik.
Kami membutuhkan sesuatu yang lebih selain metrik yang dapat membantu kami memutuskan model Pembelajaran Mesin akhir kami yang dapat kami terapkan ke produksi.
Proses penentuan apakah hasil matematis menghitung hubungan antar variabel dapat diterima sebagai deskripsi data dikenal sebagai Validasi . Biasanya, estimasi kesalahan untuk model dilakukan setelah melatih model pada kumpulan data latih, yang lebih dikenal dengan evaluasi residual.
Dalam proses ini, kita mengukur Training Error dengan menghitung selisih antara prediksi respon dan respon awal. Tetapi metrik ini tidak dapat dipercaya karena hanya berfungsi dengan baik dengan data pelatihan. Ada kemungkinan model tersebut Underfitting atau Overfitting data.
Jadi, masalah dengan teknik evaluasi ini atau metrik evaluasi lainnya adalah bahwa hal itu tidak memberikan indikasi seberapa baik model akan tampil pada kumpulan data yang tidak terlihat. Teknik yang membantu untuk mengetahui hal ini tentang model kami dikenal sebagai Cross-Validation .

Pada artikel ini, kita akan mengetahui lebih banyak tentang berbagai jenis teknik validasi silang, pro, dan kontra dari masing-masing teknik. Mari kita mulai dengan definisi Cross-Validation.
Validasi silang
Cross-Validation adalah teknik resampling yang membantu membuat model kami yakin tentang efisiensi dan akurasinya pada data yang tidak terlihat. Ini adalah metode untuk mengevaluasi model Machine Learning dengan melatih beberapa model Machine learning lainnya pada subset dari kumpulan data input yang tersedia dan mengevaluasinya pada subset dari kumpulan data.
Kami memiliki berbagai jenis teknik Cross-Validation tetapi mari kita lihat fungsionalitas dasar dari Cross-Validation: Langkah pertama adalah membagi kumpulan data yang dibersihkan menjadi K partisi dengan ukuran yang sama.
- Kemudian kita perlu memperlakukan Lipat-1 sebagai lipatan uji sedangkan K-1 lainnya sebagai lipatan kereta dan menghitung skor lipatan uji.
- Kita perlu mengulangi langkah 2 untuk semua lipatan yang mengambil lipatan lain sebagai tes sambil tetap sebagai kereta.
- Langkah terakhir adalah mengambil rata-rata skor dari semua lipatan.
Baca: Proyek Pembelajaran Mesin Untuk Pemula
Jenis Cross-Validasi
1. Metode Penahanan
Teknik ini bekerja dengan menghapus bagian dari kumpulan data pelatihan dan mengirimkannya ke model yang dilatih pada kumpulan data lainnya untuk mendapatkan prediksi. Kami kemudian menghitung estimasi kesalahan yang memberi tahu bagaimana model kami bekerja pada kumpulan data yang tidak terlihat. Ini dikenal sebagai Metode Holdout.
kelebihan
- Metode ini Sepenuhnya independen dari data.
- Metode ini hanya perlu dijalankan sekali sehingga memiliki biaya komputasi yang lebih rendah.
Kontra
- Performa tunduk pada varians yang lebih tinggi mengingat ukuran data yang lebih kecil.
2. Validasi Silang K-Fold
Di Dunia Berbasis Data, tidak pernah ada cukup data untuk melatih model Anda, di atas itu menghapus sebagian darinya untuk validasi menimbulkan masalah kekurangan yang lebih besar dan kami berisiko kehilangan pola dan tren penting dalam kumpulan data kami, yang pada gilirannya meningkatkan bias. Jadi idealnya, kami memerlukan metode yang menyediakan banyak data untuk melatih model dan menyisakan banyak data untuk set validasi.

Dalam validasi silang K-Fold, data dibagi menjadi k subset atau kita dapat menganggapnya sebagai metode holdout yang diulang k kali, sehingga setiap kali, salah satu dari k subset digunakan sebagai set validasi dan yang lainnya k-1 himpunan bagian sebagai himpunan pelatihan. Kesalahan dirata-ratakan pada semua k percobaan untuk mendapatkan efisiensi total dari model kami.
Kita dapat melihat bahwa setiap titik data akan berada dalam set validasi tepat satu kali dan akan berada dalam set pelatihan k-1 waktu. Ini membantu kami mengurangi bias karena kami menggunakan sebagian besar data untuk penyesuaian dan mengurangi varians karena sebagian besar data juga digunakan dalam set validasi.
kelebihan
- Ini akan membantu mengatasi masalah daya komputasi.
- Model mungkin tidak terlalu terpengaruh jika ada outlier dalam data.
- Ini membantu kita mengatasi masalah variabilitas.
Kontra
- Kumpulan data yang tidak seimbang akan memengaruhi model kami.
3. Validasi Silang K-Fold Bertingkat
Teknik K Fold Cross Validation tidak akan berfungsi seperti yang diharapkan untuk kumpulan Data yang Tidak Seimbang. Ketika kita memiliki kumpulan data yang tidak seimbang, kita memerlukan sedikit perubahan pada teknik validasi silang K Fold, sehingga setiap lipatan berisi kurang lebih strata sampel yang sama dari setiap kelas keluaran sebagai yang lengkap. Variasi penggunaan strata dalam K Fold Cross Validation ini dikenal sebagai Stratified K Fold Cross Validation.
kelebihan
- Itu dapat meningkatkan model yang berbeda menggunakan penyetelan hyper-parameter.
- Membantu kami membandingkan model.
- Ini membantu dalam mengurangi Bias dan Variance.
4. Tinggalkan-P-Keluar Cross-Validasi
Dalam pendekatan ini kami meninggalkan p titik data dari data pelatihan dari total n titik data, kemudian np sampel digunakan untuk melatih model dan titik p digunakan sebagai set validasi. Ini diulang untuk semua kombinasi, dan kemudian kesalahan dirata-ratakan.

kelebihan
- Ini memiliki keacakan Nol
- Biasnya akan lebih rendah
Kontra
- Metode ini lengkap dan komputasi tidak layak.
Baca Juga: Karir di Machine Learning
Kesimpulan
Pada artikel ini, kita telah belajar tentang pentingnya Validasi Model Machine Learning dalam Siklus Hidup Proyek Ilmu Data, mengenal apa itu validasi dan validasi silang, menjelajahi berbagai jenis teknik Validasi Silang, mengenal beberapa kelebihan dan kekurangan dari teknik tersebut.
Jika Anda tertarik untuk mempelajari lebih lanjut tentang pembelajaran mesin, lihat PG Diploma IIIT-B & upGrad dalam Pembelajaran Mesin & AI yang dirancang untuk para profesional yang bekerja dan menawarkan 450+ jam pelatihan ketat, 30+ studi kasus & tugas, IIIT- B Status alumni, 5+ proyek batu penjuru praktis & bantuan pekerjaan dengan perusahaan-perusahaan top.
Apa perlunya validasi silang dalam pembelajaran mesin?
Validasi silang adalah teknik pembelajaran mesin di mana data pelatihan dibagi menjadi dua bagian: Satu set pelatihan dan satu set pengujian. Perangkat pelatihan digunakan untuk membangun model, dan perangkat pengujian digunakan untuk mengevaluasi seberapa baik kinerja model saat dalam produksi. Alasan melakukan ini adalah karena ada risiko model yang Anda buat tidak berfungsi dengan baik di dunia nyata. Jika Anda tidak memvalidasi silang model Anda, ada risiko bahwa Anda telah membuat model yang berfungsi baik pada data pelatihan, tetapi tidak berkinerja baik pada data dunia nyata.
Apa itu validasi silang k-fold?
Dalam pembelajaran mesin dan penambangan data, validasi silang k-fold, kadang-kadang disebut validasi silang leave-one-out, adalah bentuk validasi silang di mana data pelatihan dibagi menjadi k subset yang kira-kira sama, dengan masing-masing k- 1 subset digunakan sebagai data uji secara bergantian dan subset sisanya digunakan sebagai data latih. K sering 10 atau 5. K-fold cross-validation sangat berguna dalam pemilihan model, karena mengurangi varians dari estimasi kesalahan generalisasi.
Apa keuntungan dari validasi silang?
Validasi silang adalah bentuk validasi di mana set data dipartisi menjadi set pelatihan dan set pengujian (atau set validasi silang). Set ini kemudian digunakan untuk menguji keakuratan model Anda. Dengan kata lain, ini memberi Anda metodologi untuk mengukur seberapa baik model Anda didasarkan pada sampel data Anda. Misalnya, digunakan untuk memperkirakan kesalahan model yang disebabkan oleh perbedaan antara input pelatihan dan input pengujian.