Sistem ML produksi: Pelatihan statis versus dinamis
Secara umum, Anda dapat melatih model dengan salah satu dari dua cara berikut:
Pelatihan statis (juga
disebut pelatihan offline) berarti Anda melatih model
hanya sekali. Kemudian, Anda menayangkan model terlatih yang sama selama beberapa waktu.
Pelatihan dinamis (juga
disebut pelatihan online) berarti Anda melatih model
secara terus-menerus atau setidaknya sering. Anda biasanya menayangkan model
yang baru saja dilatih.
Tabel 1. Kelebihan dan kekurangan utama.
Pelatihan statis
Pelatihan dinamis
Kelebihan
Lebih sederhana. Anda hanya perlu mengembangkan dan menguji model sekali.
Lebih adaptif. Model Anda akan mengikuti setiap
perubahan pada hubungan antara fitur dan label.
Kekurangan
Terkadang lebih lama. Jika hubungan antara fitur dan label berubah dari waktu ke waktu, prediksi model Anda akan menurun.
Lebih banyak pekerjaan. Anda harus mem-build, menguji, dan merilis produk baru
setiap saat.
Jika set data Anda benar-benar tidak berubah seiring waktu, pilih pelatihan statis karena pembuatan dan pengelolaannya lebih murah daripada pelatihan dinamis. Namun, set data
cenderung berubah dari waktu ke waktu, bahkan set data dengan fitur yang Anda kira
konstan seperti, misalnya, permukaan laut. Kesimpulannya: meskipun dengan pelatihan statis, Anda tetap harus memantau perubahan data input.
Misalnya, pertimbangkan model yang dilatih untuk memprediksi probabilitas pengguna
akan membeli bunga. Karena terbatasnya waktu, model ini hanya dilatih sekali menggunakan kumpulan data perilaku pembelian bunga selama bulan Juli dan Agustus.
Model ini berfungsi dengan baik selama beberapa bulan, tetapi kemudian membuat prediksi yang buruk
di sekitar Hari Valentine karena
perilaku pengguna selama periode liburan bunga tersebut berubah secara drastis.
Untuk eksplorasi pelatihan statis dan dinamis yang lebih mendetail, lihat kursus
Mengelola Project ML.
Latihan: Periksa pemahaman Anda
Dua pernyataan manakah yang benar tentang
pelatihan statis (offline)?
Model akan terus diperbarui saat data baru tiba.
Sebenarnya, jika Anda melakukan pelatihan secara offline, model tidak akan dapat
menggabungkan data baru saat data tersebut tiba. Hal ini dapat menyebabkan model menjadi tidak berlaku lagi, jika distribusi yang Anda coba pelajari berubah seiring waktu.
Anda dapat memverifikasi model sebelum menerapkannya dalam produksi.
Ya, pelatihan offline memberikan banyak peluang untuk memverifikasi performa
model sebelum memperkenalkan model dalam produksi.
Pelatihan offline memerlukan lebih sedikit pemantauan tugas pelatihan (training job)
daripada pelatihan online.
Secara umum, kebutuhan pemantauan pelatihan offline pada waktu pelatihan lebih sederhana, yang menghindarkan Anda dari banyak kerumitan di produksi. Namun, semakin sering Anda melatih model,
semakin tinggi investasi yang perlu Anda lakukan dalam pemantauan. Anda juga
sebaiknya memvalidasi secara rutin untuk memastikan bahwa perubahan pada kode
(dan dependensinya) tidak berdampak buruk pada kualitas model.
Sangat sedikit pemantauan data input yang perlu dilakukan pada waktu inferensi.
Tidak seperti yang Anda duga, Anda perlu memantau data input pada waktu penayangan. Jika distribusi input berubah, prediksi model Anda mungkin menjadi tidak dapat diandalkan. Bayangkan, misalnya, model
yang hanya dilatih dengan data pakaian musim panas tiba-tiba digunakan untuk
memprediksi perilaku pembelian pakaian pada musim dingin.
Manakah dari pernyataan berikut yang benar tentang
pelatihan dinamis (online)?
Model akan terus diperbarui saat data baru tiba.
Ini adalah manfaat utama pelatihan online; Anda dapat menghindari banyak
masalah keusangan dengan mengizinkan model dilatih pada data baru saat
data tersebut masuk.
Sangat sedikit pemantauan tugas pelatihan (training job) yang perlu dilakukan.
Sebenarnya, Anda harus terus memantau tugas pelatihan (training job) untuk memastikan bahwa tugas tersebut responsif dan bekerja sesuai harapan. Anda juga akan memerlukan infrastruktur pendukung seperti kemampuan untuk melakukan rollback terhadap model ke snapshot sebelumnya jika ada kesalahan dalam pelatihan, seperti tugas yang memiliki bug atau kerusakan dalam data masukan.
Sangat sedikit pemantauan data input yang perlu dilakukan pada waktu inferensi.
Sama seperti model offline statis, penting juga untuk
memantau input ke model yang diperbarui secara dinamis. Anda
mungkin tidak memiliki risiko terkait efek musiman yang besar, tetapi perubahan besar yang terjadi tiba-tiba pada masukan (seperti sumber data yang tiba-tiba mati) masih dapat menghasilkan prediksi yang tidak dapat diandalkan.