Training dataset adalah himpunan data yang digunakan untuk melatih atau membangun model. Kemudian, validation dataset adalah himpunan data yang digunakan untuk mengoptimasi saat melatih model. Model dilatih menggunakan training dataset, kemudian kinerja saat latihan tersebut diuji menggunakan validation dataset. Hal ini bertujuan untuk melihat kemampuan model pada saat training apakah dapat mengenal pola secara umum. Validation dataset juga dapat digunakan untuk melihat akurasi dari model yang dibuat, bila kamu kurang puas dengan hasil tersebut, maka dapat mengganti parameter untuk meningkatkan kemampuan model. Setelah model sudah dilatih dengan baik dan mampu mengenal pola-pola secara umum melalui akurasi skor yang tinggi, maka selanjutnya kita mengenal testing dataset. Testing dataset adalah himpunan data yang digunakan untuk menguji model setelah proses latihan selesai. Ini merupakan unseen data. Artinya, model dan manusia tidak boleh melihat sampel ini saat proses latihan. Perlu diingat bahwa training, validation, dan testing dataset sebaiknya adalah sampel-sampel yang representatif untuk masalah yang dihadapi.

Pada umumnya, rasio pembagian dataset (training: validation: testing) adalah (80%: 10%: 10%) atau (90%: 10%: 10%).

Lalu, bagaimana sesungguhnya penggunaan dari validation dataset di dalam proses training?

Validation merupakan upaya kita untuk melihat apakah model yang kita peroleh setelah training sudah memiliki kinerja hasil prediksi yang bagus atau belum. Proses untuk evaluasi model tersebut dapat menggunakan metode cross validation. Cross validation adalah metode untuk memperkirakan kesalahan prediksi untuk evaluasi kinerja model. Ada berbagai jenis teknik dalam melakukan metode cross validation yaitu hold out method, k-fold cross validation, stratified k-fold cross validation, dan leave-p-out cross validation.

Pada kali ini kita akan membahas teknik k-fold cross validation yang mana umum digunakan dalam evaluasi model machine learning.

K-fold validation adalah metode pemisahan data menjadi beberapa bagian (K) secara acak dengan ukuran yang sama. Salah satu bagian digunakan untuk jadi data testing, dan sis nya digunakan untuk data training. Lalu proses ini akan diulang sampai seluruh bagian yang dibagi tadi sudah pernah digunakan sebagai data testing.

Apakah itu artinya proses pembuatan machine learning kita telah selesai? 

Tentu belum ya. Selanjutnya kita perlu tau lebih lanjut mengenai model performance evaluation dan juga jenis metrics yang digunakan pada setiap kasus proyek machine learning kita.

Pelajari lebih lengkap di .