Cross Validation

Cross validation adalah teknik statistik yang digunakan dalam machine learning dan pemodelan prediktif lainnya untuk menilai kinerja dan kemampuan generalisasi suatu model.

Data Analytics

Mau Belajar

Data Analytics

GRATIS?

Belajar di RevoU! Dapatkan skill digital paling in-demand langsung dari praktisi terbaik di bidangnya. Kelas online 100% LIVE, 1:1 career coaching, dan akses ke Community Hub dengan 6000+ member selamanya untuk support perkembangan karir kamu!

IKUT KURSUS GRATIS

Mau Belajar

Data Analytics

GRATIS?

Apa itu Cross Validation?

cross validation

Cross validation adalah teknik statistik yang digunakan dalam machine learning dan pemodelan prediktif lainnya untuk menilai kinerja dan kemampuan generalisasi suatu model.

Berdasarkan geeksforgeeks.org, pada cross validation, data yang tersedia akan dibagi ke dalam subset, biasanya disebut fold, supaya dapat dilakukan pelatihan dan pengujian model berkali-kali.

Teknik ini memberikan estimasi performa model yang lebih akurat pada data yang tidak terlihat. Manfaat penting lainnya dari cross validation, yakni membantu data analyst mengatasi masalah overfitting atau kondisi saat model terlalu spesifik pada data pelatihan sehingga kurang baik dalam menganalisis data baru. 

Mengapa Cross Validation Penting?

Mengutip dari towardsdatascience.com, cross validation sangat penting karena beberapa alasan:

Memanfaatkan data yang terbatas

Data yang kecil mungkin tidak akan cukup untuk membuat prediksi yang tepat. Namun, cross validation membantu melakukan estimasi pada semua kemungkinan data dengan membuat beberapa model sehingga hasilnya lebih dapat dipercaya.

Mendapatkan lebih banyak metrik

Cross validation memiliki beberapa metrik kinerja dengan menguji model pada subkumpulan data yang berbeda. Hal ini dapat meningkatkan konsistensi model dan membantu menarik kesimpulan yang lebih kuat tentang kinerja model.

Menggunakan model stacking

Saat ingin membangun pipeline model, cross validation sangat penting untuk model stacking yang efektif. Dengan menggunakan kumpulan data terpisah untuk setiap model dan memastikan bahwa prediksi dari satu model tidak terlihat oleh model lainnya, cross validation mencegah kebocoran dan overfitting data.

Melakukan penyesuaian hyperparameter yang optimal 

Banyak model machine learning memiliki hyperparameter yang perlu disetel untuk kinerja optimal. Cross validation membantu dalam menemukan kombinasi terbaik dari hyperparameter dengan mengevaluasi pengaturan yang berbeda secara iteratif sehingga dapat menciptakan model yang lebih baik.

Jenis-jenis Cross Validation

Menurut turing.com, berikut ini adalah jenis-jenis cross validation:

K-Fold Cross Validation

K-fold cross-validation melakukan pembagian dataset menjadi K subset berukuran sama (fold). Model dilatih dan dievaluasi K kali, setiap kali menggunakan fold yang berbeda sebagai set pengujian dan fold K-1 yang tersisa sebagai set pelatihan. Kinerja akhir adalah rata-rata dari hasil evaluasi K. Jenis cross validation ini memberikan perkiraan kinerja model yang dapat dipercaya dan memastikan bahwa semua data digunakan untuk pelatihan dan pengujian.

Hold-Out Cross Validation

Hold-out cross validation membagi dataset menjadi dua bagian: satu set pelatihan dan satu set pengujian terpisah. Model dilatih pada set pelatihan dan kemudian dievaluasi pada set pengujian. Metode ini cepat dan mudah, tetapi mungkin mengalami varians yang lebih tinggi karena partisi data secara acak.

Stratified K-Fold Cross Validation

Stratified K-fold cross validation mirip dengan K-fold cross validation tetapi bertujuan untuk menjaga keseimbangan distribusi kelas di setiap fold, terutama untuk kumpulan data yang tidak seimbang. Cross validation ini memastikan bahwa setiap fold berisi representasi proporsional dari setiap kelas sehingga membantu mencegah bias dalam evaluasi model.

Leave-P-Out Cross Validation

Leave-p-out cross validation tidak mengikutkan poin data p dari kumpulan data untuk pengujian, sementara sisanya digunakan untuk pelatihan. Proses ini diulangi untuk semua kemungkinan kombinasi tanpa nilai p sehingga menghasilkan evaluasi kinerja model secara menyeluruh.

Leave-One-Out Cross Validation 

Leave-one-out cross validation adalah kasus spesifik dari cross validation leave-p-out, di mana nilai p adalah 1. Teknik ini secara iteratif tidak mengikutkan satu data untuk pengujian dan melatih model pada data yang tersisa. 

Monte Carlo (Shuffle-Split)

Monte Carlo melakukan partisi dataset secara acak ke dalam set pelatihan dan pengujian untuk beberapa iterasi. Cara ini berguna ketika diperlukan variabilitas kinerja yang tinggi karena sifat acak pemisahan data. Pendekatan ini umumnya digunakan dengan stratified sampling untuk menjaga keseimbangan kelas di setiap pemisahan.

Time Series (Rolling Cross-Validation)

Time series dirancang khusus untuk data temporal, yang memerlukan urutan. Teknik ini membagi data menjadi set pelatihan dan pengujian pada titik waktu yang berbeda. Time series memastikan bahwa model dievaluasi berdasarkan data yang muncul setelah periode pelatihan dan dapat mensimulasikan skenario dunia nyata untuk membuat prediksi tentang masa depan.

Contoh Penerapan Cross Validation

Cross validation adalah teknik serbaguna dan banyak digunakan dalam machine learning dan berbagai skenario analisis data. Beberapa penerapan penggunaannya misalnya:

  • Evaluasi dan Pemilihan Model: Cross validation membantu menilai kinerja berbagai model machine learning dan membantu memilih model terbaik untuk tugas tertentu. Dengan membandingkan metrik kinerja di berbagai model, seseorang dapat memilih algoritma yang paling cocok untuk masalah yang dihadapi.
  • Data yang Tidak Seimbang: Dalam kasus set data yang tidak seimbang (kelas tertentu kurang terwakili), stratified cross validation dapat memastikan bahwa setiap fold menjaga distribusi kelas sehingga menghasilkan evaluasi kinerja yang lebih dapat dipercaya.
  • Metode Ensemble: Cross validation sering digunakan dalam metode ensemble seperti model stacking atau blending, di mana beberapa model digabungkan untuk membuat prediksi. Hal ini dapat memastikan bahwa subset data yang berbeda digunakan untuk pelatihan dan pengujian sehingga mengurangi risiko overfitting.

FAQ (Frequently Asked Question)   

Apa saja keterbatasan cross validation?

Melansir dari geeksforgeeks.org, keterbatasan cross validation yaitu: 

  • Kompleksitas Komputasi: Cross validation bisa jadi jadi mahal secara komputasi, terutama saat menggunakan fold dalam jumlah besar atau saat menangani model kompleks yang memerlukan pelatihan ekstensif.
  • Memakan Waktu: Proses cross validation dapat memakan waktu, terutama saat menyetel beberapa hyperparameter atau membandingkan berbagai model karena memerlukan beberapa iterasi pelatihan dan evaluasi.
  • Bias-Variance Tradeoff: Pilihan jumlah fold dalam cross validation dapat berdampak pada bias-variance. Fold yang terlalu sedikit dapat menyebabkan varians yang lebih tinggi dalam perkiraan kinerja, sementara terlalu banyak fold dapat menyebabkan bias yang lebih tinggi sehingga berpotensi menyebabkan generalisasi model yang kurang akurat.

Masih ragu? Coba dulu 3 hari, GRATIS
di Full-Stack Trial Class!

Rasakan pengalaman belajar di RevoU Full-Stack Program:

Kelas 100% LIVE, Mini portofolio lewat hands-on assignment, Bimbingan Team Lead & small group discussion.

Kalau cocok, kamu bisa lanjut daftar Full Program dengan kesempatan Fast-Track (skip semua tes seleksi masuk, langsung ke tahap akhir!)

Masih ragu? Coba dulu 3 hari, GRATIS
di Full-Stack Trial Class!

Rasakan pengalaman belajar di RevoU Full-Stack Program:
Kelas 100% LIVE, Mini portofolio lewat hands-on assignment, Bimbingan Team Lead & small group discussion.

Kalau cocok, kamu bisa lanjut daftar Full Program dengan kesempatan Fast-Track (skip semua tes seleksi masuk, langsung ke tahap akhir!)

Masih ragu? Coba dulu 3 hari, GRATIS
di Full-Stack Trial Class!

Rasakan pengalaman belajar di RevoU Full-Stack Program:

Kelas 100% LIVE, Mini portofolio lewat hands-on assignment, Bimbingan Team Lead & small group discussion.

Kalau cocok, kamu bisa lanjut daftar Full Program dengan kesempatan Fast-Track (skip semua tes seleksi masuk, langsung ke tahap akhir!)

Kata kunci lainnya

Mulai karirmu dalam

Data Analytics

Belajar di RevoU! Dapatkan skill digital paling in-demand langsung dari praktisi terbaik di bidangnya. Kelas online 100% LIVE, 1:1 career coaching, dan akses ke Community Hub dengan 6000+ member selamanya untuk support perkembangan karir kamu!
ikut kursus gratis
Menu