Chronon - Platform fitur ML open source yang dirilis Airbnb
(github.com/airbnb)- Platform fitur end-to-end open source yang memudahkan pembangunan, deployment, pengelolaan, dan pemantauan pipeline data untuk machine learning
- Saat ini digunakan oleh semua aplikasi ML utama di Airbnb dan use case utama di Stripe
Fitur utama
- Dapat mengumpulkan data dari berbagai sumber: event stream, snapshot tabel DB, change data stream, service endpoint, tabel warehouse, dan lainnya, lalu memodelkannya sebagai slowly changing dimensions, fact, atau dimension table untuk digunakan
- Menghasilkan hasil dalam konteks online maupun offline: di online disediakan sebagai endpoint latensi rendah yang dapat diskalakan, dan di offline sebagai tabel Hive untuk pembuatan data pelatihan
- Dapat memilih akurasi real-time atau batch:
- Hasil dapat dikonfigurasi dengan akurasi Temporal atau Snapshot
- Temporal berarti memperbarui nilai fitur secara real-time dalam konteks online dan menghasilkan fitur yang sesuai dengan titik waktu tertentu dalam konteks offline
- Akurasi Snapshot berarti fitur diperbarui sekali sehari pada tengah malam
- Dapat melakukan backfill dataset pelatihan dari data mentah: memungkinkan pelatihan model tanpa harus menunggu log fitur terkumpul selama berbulan-bulan
- Menyediakan Python API yang kuat: tipe sumber data, freshness, konteks, dan lainnya disediakan sebagai abstraksi tingkat API, serta dapat digunakan dengan menggabungkan elemen dasar SQL yang intuitif seperti group-by, join, select, dan peningkatan yang kuat
- Pemantauan fitur otomatis: dapat secara otomatis membuat pipeline pemantauan untuk memahami kualitas data pelatihan, mengukur mismatch antara training dan serving, memantau feature drift, dan lainnya
Latar belakang pengembangan
- Chronon dikembangkan untuk mengatasi kesulitan umum ketika praktisi ML menghabiskan sebagian besar waktunya untuk mengelola data yang memberi tenaga pada model, bukan pada pemodelannya sendiri
Keterbatasan pendekatan yang ada
-
Pendekatan replikasi offline-online
- Praktisi ML melatih model dengan data dari data warehouse, lalu mencari cara untuk mereplikasi fitur tersebut di lingkungan online
- Kelebihan: dapat memaksimalkan pemanfaatan data warehouse, termasuk sumber data dan alat yang kuat untuk transformasi data skala besar
- Kekurangan: tidak ada cara yang jelas untuk menyediakan fitur model bagi inferensi online, sehingga terjadi mismatch dan label leakage yang sangat memengaruhi performa model
-
Pendekatan logging dan menunggu
- Praktisi ML memulai dari data yang tersedia di lingkungan serving online tempat inferensi model akan dijalankan, lalu mencatat fitur terkait ke data warehouse
- Setelah cukup banyak data terakumulasi, model dilatih dari log tersebut dan disajikan menggunakan data yang sama
- Kelebihan: konsistensi terjamin dan kemungkinan leakage rendah
- Kekurangan: waktu tunggu yang panjang membuat sulit merespons cepat terhadap perubahan perilaku pengguna
Pendekatan Chronon
- Chronon memungkinkan praktisi ML mendefinisikan fitur hanya satu kali untuk mendukung baik alur offline untuk pelatihan model maupun alur online untuk inferensi model
- Selain itu, Chronon menyediakan alat yang kuat untuk feature chaining, observability, kualitas data, serta berbagi dan pengelolaan fitur
- Dengan demikian, kelebihan dari pendekatan yang ada dapat dipertahankan sambil melengkapi kekurangannya
Belum ada komentar.