Sistem ML produksi: Inferensi statis versus dinamis
Inferensi adalah proses
membuat prediksi dengan menerapkan model yang telah dilatih
contoh tak berlabel.
Secara garis besar, model dapat menyimpulkan prediksi melalui salah satu dari dua cara:
Inferensi statis (juga disebut inferensi offline atau
inferensi batch) berarti model akan membuat prediksi pada sekelompok
contoh umum tak berlabel
kemudian menyimpan prediksi tersebut
di suatu tempat di {i>cache<i}.
Inferensi dinamis (juga disebut inferensi online atau real-time
inferensi) berarti model hanya membuat prediksi on demand,
misalnya, saat klien meminta prediksi.
Untuk menggunakan contoh ekstrem, bayangkan model yang sangat kompleks yang
membutuhkan waktu satu jam untuk menyimpulkan prediksi.
Ini mungkin akan menjadi situasi yang sangat baik untuk inferensi statis:
Misalkan model kompleks yang sama ini keliru menggunakan inferensi dinamis, bukan
inferensi statis. Jika banyak klien meminta prediksi
pada waktu yang sama,
kebanyakan dari mereka tidak akan menerima
prediksi itu selama berjam-jam atau berhari-hari.
Sekarang pertimbangkan model yang menyimpulkan dengan cepat, mungkin dalam 2 milidetik menggunakan
minimum relatif sumber daya komputasi. Dalam situasi ini, klien dapat
menerima prediksi dengan cepat dan efisien melalui inferensi dinamis, sebagai
disarankan pada Gambar 5.
Inferensi statis
Inferensi statis menawarkan kelebihan dan kekurangan tertentu.
Kelebihan
Tidak perlu khawatir tentang biaya inferensi.
Dapat melakukan verifikasi prediksi sebelum digunakan untuk memengaruhi dunia nyata.
Kekurangan
Hanya dapat menyajikan prediksi yang di-cache, jadi sistem mungkin tidak
mampu menyajikan prediksi untuk contoh input yang tidak umum.
Latensi update kemungkinan diukur dalam hitungan jam atau hari.
Inferensi dinamis
Inferensi dinamis menawarkan kelebihan dan kekurangan tertentu.
Kelebihan
Dapat menyimpulkan prediksi pada semua item baru saat muncul, yang
bagus untuk prediksi longtail (kurang umum).
Kekurangan
Komputasi yang intensif dan latensi yang sensitif. Kombinasi ini dapat membatasi model
kompleksitasnya; yaitu, Anda mungkin harus membangun model
yang lebih sederhana yang dapat
menyimpulkan prediksi lebih cepat daripada yang bisa dilakukan model yang kompleks.
Kebutuhan pemantauan lebih intensif.
Latihan: Menguji pemahaman Anda
Manakah tiga dari empat pernyataan berikut yang merupakan
inferensi statis?
Model harus membuat prediksi untuk semua input yang memungkinkan.
Ya, model ini harus membuat prediksi untuk semua input yang mungkin dan
menyimpannya dalam {i>
cache<i} atau tabel pencarian.
Jika set hal yang diprediksi model terbatas, maka
inferensi statis mungkin adalah
pilihan yang baik.
Namun, untuk input bentuk bebas seperti kueri pengguna yang memiliki
dari item yang tidak biasa atau langka, inferensi statis tidak dapat
liputan lengkap.
Sistem dapat memverifikasi prediksi yang disimpulkan sebelum menyalurkan
mereka.
Ya, ini adalah aspek yang berguna dari inferensi statis.
Untuk input tertentu, model dapat menampilkan prediksi dengan lebih cepat
daripada inferensi dinamis.
Ya, inferensi statis hampir selalu dapat menyajikan prediksi lebih cepat
daripada inferensi dinamis.
Anda dapat bereaksi dengan cepat terhadap perubahan di dunia.
Tidak, ini adalah kelemahan dari inferensi statis.
Manakah salah satu dari pernyataan berikut yang merupakan
benar dari inferensi dinamis?
Anda dapat memberikan prediksi untuk semua item yang memungkinkan.
Ya, ini adalah kekuatan inferensi dinamis. Setiap permintaan yang
masuk akan diberi skor. Inferensi dinamis menangani longtail
distribusi (dengan banyak item langka), seperti distribusi
kalimat yang mungkin ditulis
dalam ulasan film.
Anda dapat melakukan verifikasi prediksi sebelum
digunakan.
Secara umum, tidak mungkin melakukan
verifikasi terhadap semua
prediksi sebelum digunakan karena prediksi sedang
dibuat on-demand. Namun, Anda dapat memantau
agregat kualitas prediksi untuk memberikan beberapa tingkat
pemeriksaan kualitas, namun ini akan memberikan
sinyal alarm kebakaran hanya setelah
apinya sudah menyebar.
Saat melakukan inferensi dinamis, Anda tidak perlu khawatir
tentang latensi prediksi (waktu keterlambatan untuk menampilkan prediksi)
sama seperti saat melakukan inferensi statis.
Latensi prediksi sering kali menjadi masalah nyata dalam inferensi dinamis.
Sayangnya, Anda tidak dapat selalu memperbaiki masalah latensi prediksi
dengan menambahkan
lebih banyak server inferensi.