Sistem ML produksi: Inferensi statis versus dinamis

Inferensi adalah proses pembuatan prediksi dengan menerapkan model terlatih ke contoh tak berlabel. Secara umum, model dapat menyimpulkan prediksi dengan salah satu dari dua cara:

  • Inferensi statis (juga disebut inferensi offline atau inferensi batch) berarti model membuat prediksi pada sejumlah contoh tak berlabel umum, lalu menyimpan prediksi tersebut dalam cache di suatu tempat.
  • Inferensi dinamis (juga disebut inferensi online atau inferensi real-time) berarti model hanya membuat prediksi sesuai permintaan, misalnya, saat klien meminta prediksi.

Untuk menggunakan contoh ekstrem, bayangkan model yang sangat kompleks yang memerlukan waktu satu jam untuk menyimpulkan prediksi. Ini mungkin merupakan situasi yang sangat baik untuk inferensi statis:

Gambar 4. Dalam inferensi statis, model menghasilkan prediksi,
            yang kemudian di-cache di server.
Gambar 4. Dalam inferensi statis, model menghasilkan prediksi, yang kemudian di-cache di server.

 

Misalkan model kompleks yang sama ini keliru menggunakan inferensi dinamis, bukan inferensi statis. Jika banyak klien meminta prediksi pada waktu yang sama, sebagian besar klien tidak akan menerima prediksi tersebut selama berjam-jam atau berhari-hari.

Sekarang, pertimbangkan model yang menyimpulkan dengan cepat, mungkin dalam 2 milidetik menggunakan resource komputasi minimum relatif. Dalam situasi ini, klien dapat menerima prediksi dengan cepat dan efisien melalui inferensi dinamis, seperti yang disarankan dalam Gambar 5.

Gambar 5. Dalam inferensi dinamis, model menyimpulkan prediksi sesuai permintaan.
Gambar 5. Dalam inferensi dinamis, model menyimpulkan prediksi sesuai permintaan.

 

Inferensi statis

Inferensi statis menawarkan kelebihan dan kekurangan tertentu.

Kelebihan

  • Tidak perlu terlalu khawatir dengan biaya inferensi.
  • Dapat melakukan verifikasi prediksi sebelum digunakan untuk memengaruhi dunia nyata.

Kekurangan

  • Hanya dapat menayangkan prediksi yang di-cache, sehingga sistem mungkin tidak dapat menayangkan prediksi untuk contoh input yang tidak umum.
  • Latensi pembaruan mungkin diukur dalam jam atau hari.

Inferensi dinamis

Inferensi dinamis menawarkan kelebihan dan kekurangan tertentu.

Kelebihan

  • Dapat menyimpulkan prediksi pada setiap item baru yang muncul, yang sangat cocok untuk prediksi long tail (kurang umum).

Kekurangan

  • Memerlukan komputasi yang intensif dan sensitif terhadap latensi. Kombinasi ini dapat membatasi kompleksitas model; yaitu, Anda mungkin harus membuat model yang lebih sederhana yang dapat menyimpulkan prediksi lebih cepat daripada model yang kompleks.
  • Kebutuhan pemantauan lebih intensif.

Latihan: Periksa pemahaman Anda

Tiga dari empat pernyataan berikut manakah yang benar tentang inferensi statis?
Model harus membuat prediksi untuk semua kemungkinan input.
Ya, model harus membuat prediksi untuk semua kemungkinan input dan menyimpannya dalam cache atau tabel pencarian. Jika kumpulan hal yang diprediksi model terbatas, inferensi statis mungkin merupakan pilihan yang tepat. Namun, untuk input berformat bebas seperti kueri pengguna yang memiliki item yang tidak biasa atau langka, inferensi statis tidak dapat memberikan cakupan penuh.
Sistem dapat memverifikasi prediksi yang disimpulkan sebelum menayangkannya.
Ya, ini adalah aspek inferensi statis yang berguna.
Untuk input tertentu, model dapat menayangkan prediksi lebih cepat daripada inferensi dinamis.
Ya, inferensi statis hampir selalu dapat menayangkan prediksi lebih cepat daripada inferensi dinamis.
Anda dapat bereaksi dengan cepat terhadap perubahan di dunia.
Tidak, ini adalah kelemahan inferensi statis.
Manakah dari pernyataan berikut yang benar tentang inferensi dinamis?
Anda dapat memberikan prediksi untuk semua kemungkinan item.
Ya, ini adalah kekuatan inferensi dinamis. Setiap permintaan yang masuk akan diberi skor. Inferensi dinamis menangani distribusi longtail (yang memiliki banyak item langka), seperti ruang semua kemungkinan kalimat yang ditulis dalam ulasan film.
Anda dapat melakukan verifikasi prediksi sebelum digunakan.
Secara umum, tidak mungkin melakukan verifikasi semua prediksi sebelum digunakan karena prediksi dibuat berdasarkan permintaan. Namun, Anda dapat memantau kualitas prediksi agregat untuk memberikan beberapa tingkat pemeriksaan kualitas, tetapi hal ini hanya akan menandakan alarm kebakaran setelah kebakaran menyebar.
Saat melakukan inferensi dinamis, Anda tidak perlu khawatir dengan latensi prediksi (waktu jeda untuk menampilkan prediksi) sebanyak saat melakukan inferensi statis.
Latensi prediksi sering kali menjadi masalah nyata dalam inferensi dinamis. Sayangnya, Anda tidak dapat memperbaiki masalah latensi prediksi dengan menambahkan lebih banyak server inferensi.