Developing ML solutions
Machine Learning Development Lifecycle
ML lifecycle adalah proses end-to-end untuk mengembangkan, men-deploy, dan memelihara model. Urutan fasenya:
- Business goal identification: stakeholder menetapkan nilai, anggaran, dan kriteria sukses (KPI).
- ML problem framing: mengubah masalah bisnis menjadi masalah ML.
- Data processing: pengumpulan, preprocessing, dan feature engineering.
- Model development: training, tuning, dan evaluasi.
- Deployment: inference dan prediksi.
- Monitoring
- Retraining
Semua ini butuh kolaborasi antara product manager, developer, data scientist, dan engineer.
Contoh: routing call center Amazon
| Fase | Yang dilakukan Amazon |
|---|---|
| Business goal | Mengurangi transfer panggilan karena menu mengarahkan pelanggan ke agen yang salah |
| Problem framing | Memprediksi skill agen yang dibutuhkan: multiclass classification dengan supervised learning dari data panggilan historis |
| Data collection | Feature seperti pesanan terakhir, kepemilikan Kindle, dan membership Prime |
| Preprocessing dan visualisasi | Membersihkan data, menggabungkan label yang mirip (semua skill Kindle jadi satu), dan mengeksplorasi distribusi label |
| Training | Membagi labeled data menjadi training, validation, dan test set, biasanya 80/10/10 atau 70/15/15. Jangan pernah mengevaluasi dengan training data |
| Tuning | Hyperparameter optimization, misalnya learning rate (terlalu cepat tidak pernah konvergen, terlalu lambat makan waktu terlalu lama), ditambah feature engineering lanjutan |
| Evaluasi dan deployment | Transfer panggilan berkurang dan customer experience membaik |
Feature engineering membuat dan mentransformasi variabel input yang dipelajari model. Model hanya belajar dari apa yang kamu tunjukkan.