Mencegah overfitting
Kesalahan umum saat melatih model ML BigQuery adalah overfitting. Overfitting terjadi saat model sangat cocok dengan data pelatihan, sehingga menyebabkan performa model menjadi buruk pada data baru. BigQuery ML mendukung dua metode untuk mencegah overfitting: penghentian awal dan regularisasi.
Untuk mempelajari cara mengubah opsi yang dijelaskan di bawah, lihat
pernyataan CREATE MODEL
.
Penghentian awal
Penghentian awal adalah opsi default untuk pencegahan overfitting di
BigQuery ML. Saat penghentian awal diaktifkan,
kerugian pada
data pisahan dipantau selama pelatihan, dan
pelatihan dihentikan setelah peningkatan kerugian dalam iterasi terbaru berada di bawah
batas. Karena data pisahan tidak digunakan selama pelatihan, hal ini merupakan perkiraan
yang baik tentang kerugian model pada data baru. Opsi early_stop
, min_rel_progress
,
data_split_method
, dan data_split_eval_fraction
mengontrol perilaku
penghentian awal.
Regularisasi
Regularisasi menjaga bobot model agar tidak terlalu besar, sehingga mencegah model menyamai data pelatihan. BigQuery ML mendukung dua metode untuk mengontrol ukuran bobot model: regularisasi L1 dan regularisasi L2.
Secara default, nilai l1_reg
dan l2_reg
adalah nol, yang menonaktifkan
regularisasi. Pada beberapa set data, menetapkan nilai positif untuk l1_reg
dan
l2_reg
akan meningkatkan performa model yang dilatih pada data baru. Nilai terbaik
untuk parameter regularisasi biasanya ditemukan melalui trial-and-
error, dan bereksperimen dengan nilai di beberapa urutan besaran (misalnya, 0,01, 0,1, 1, 10, dan 100) biasa dilakukan.
Berikut adalah beberapa saran umum tentang penggunaan regularisasi:
Jika Anda bereksperimen dengan parameter regularisasi, coba nonaktifkan penghentian awal sehingga efek regularisasi menjadi jelas.
Jika jumlah fitur cukup besar dibandingkan dengan ukuran set pelatihan, coba nilai besar untuk parameter regularisasi. Risiko overfitting akan lebih besar jika hanya ada beberapa pengamatan per fitur.
Jika Anda khawatir dengan banyaknya fitur yang mungkin tidak relevan untuk memprediksi label, coba tetapkan
l1_reg
agar lebih besar daril2_reg
, dan sebaliknya. Ada bukti teoretis bahwa regularisasi L1 berfungsi lebih baik jika banyak fitur tidak relevan.
Manfaat lain dari regularisasi L1 adalah kecenderungannya untuk menetapkan banyak bobot model ke persis nol, yang berguna untuk mengidentifikasi fitur yang paling relevan dan melatih model yang ringkas.
Langkah selanjutnya
- Untuk ringkasan BigQuery ML, lihat Pengantar BigQuery ML.
- Untuk mulai menggunakan BigQuery ML, lihat Membuat model machine learning di BigQuery ML.
- Untuk mempelajari lebih lanjut tentang cara menggunakan model, lihat: