Panduan MLOps untuk data scientist: Bagian 2

Awalnya diposting di blog “Machine Learning Insights” Kaskada di sini.

Di bagian 1 seri ini, kita membahas tentang siklus hidup ML yang berkelanjutan dan apa artinya bagi data scientist dalam mengadopsi MLOps. Anda akan mengadopsi alat-alat baru, menikmati peningkatan transparansi dan menerapkan proses baru dan kemungkinan struktur tim baru. Kedengarannya seperti sebuah upaya besar, dan mungkin merupakan tugas orang lain, untuk melihat keseluruhan siklus hidup di beberapa tim dan memperkenalkan alat baru untuk mulai melengkapi siklus hidup ML. Namun, ternyata yang diperlukan untuk memulai masa depan MLOps adalah Anda, seorang ilmuwan data individual, yang memusatkan penderitaan para ilmuwan data dan orang-orang yang tunduk pada algoritme ML kami.

Bagi saya, ilmu data adalah tentang memecahkan masalah kompleks dengan algoritme pembelajaran mesin yang memberikan dampak positif pada subjek prediksi kami. Contoh yang menonjol adalah ketika menggunakan AI pada data COVID-19 dengan cara apa pun, membangun model yang diharapkan dapat “meminimalkan biaya” pada sistem layanan kesehatan kita saja tidak cukup. Saya juga perlu menunjukkan bagaimana model ini akan memberikan dampak dan terus “melindungi komunitas rentan”.

Masalahnya adalah para insinyur devops dan insinyur perangkat lunak sering kali salah berasumsi bahwa tujuan akhirnya adalah “membuat pembelajaran mesin bertindak lebih seperti ilmu komputer” — seperti yang dicatat dalam “blog terbaru” Google tentang perkakas untuk MLOps. Kita mungkin berasumsi bahwa mereka sudah mengetahui kebutuhan utama akan tata kelola, otomatisasi, dan pemantauan layanan karena DevOps telah menjadi hal yang populer selama lebih dari 10 tahun. Namun, siklus hidup model ML berbeda dari layanan atau aplikasi lain yang pernah diterapkan tim Anda sebelumnya. Seringkali, hal ini berarti persyaratan diabaikan baik pada proses rekayasa fitur maupun pembuatan model. Anda memerlukan kemampuan untuk mengaudit, memantau, dan memelihara data yang mendukung fitur Anda dan dampak yang ditimbulkan oleh model Anda. membuat subjek prediksinya dalam produksi.

Area untuk perkakas MLOps

Anda pasti tahu statistik umum yang sering dikutip — 80% waktu data scientist dihabiskan untuk tugas-tugas yang sangat manual, dengan hanya sedikit waktu yang tersisa untuk melakukan bagian pekerjaan ilmu data. Saat tim Anda mulai menerapkan siklus hidup ML, ini adalah peluang untuk tidak hanya mengotomatisasi, namun juga mengaktifkan kemampuan Anda untuk memecahkan masalah yang kompleks.

Mari kita lihat berbagai area yang dapat menggunakan alat untuk mendukung siklus hidup ML secara menyeluruh:

  • Menyerap dan membersihkan sumber data mentah
  • Menerapkan tata kelola dan audit
  • Menyediakan lingkungan untuk mengembangkan, berbagi, dan berkolaborasi dalam fitur
  • Mengekspor kumpulan data pelatihan, pengujian, dan validasi berjalan
  • Melacak eksperimen, proses, hyperparameter, fitur, artefak, dll.
  • Menguji model dan fitur ML untuk mengetahui performa, akurasi, dan dampaknya
  • Merilis model dan vektor fitur sebagai layanan
  • Melacak garis keturunan, versi model, dan kinerja
  • Menerapkan penilaian batch, penyajian waktu nyata, kontainer, dan layanan inferensi cloud
  • Memperbarui model dalam produksi karena model tersebut pasti akan menjadi basi

Jelas sekali bahwa sebagai data scientist, yang merekayasa fitur dan model ML, Anda akan bertanggung jawab untuk mengartikulasikan persyaratan alat rekayasa fitur dan iterasi model. Dan Anda mungkin tergoda untuk membagi area yang tersisa di antara berbagai peran di perusahaan Anda dengan tujuan mempercepat produksi model yang ada. Namun, pendekatan ini kehilangan serangkaian persyaratan ilmu data yang penting. Data scientist memiliki pelatihan unik yang memungkinkan kami mengartikulasikan persyaratan tentang cara menyelesaikan feedback loop — mengukur dampak dari waktu ke waktu pada subjek model Anda.

Ini mungkin terdengar seperti sebuah upaya besar, daripada menuliskan persyaratan terperinci untuk setiap area dan mensurvei semua alat yang ada di pasar — ​​alih-alih tuliskan kebutuhan tingkat tinggi Anda.

Cara memusatkan ilmu data

Anda seorang data scientist, apa yang Anda butuhkan? Susun hal-hal seperti yang dilakukan manajer produk dan artikulasikan skenario yang memungkinkan pemilihan alat yang tepat. Kembali ke contoh layanan kesehatan COVID-19 saya, satu hal yang saya perlukan adalah mengaktifkan pengujian dan validasi dampak model saya di seluruh demografi serta terus melakukan audit untuk memastikan dampak positif.

Hal ini menjadikan Anda pemangku kepentingan dalam integrasi platform di luar kehidupan Anda sehari-hari. Anda harus menegosiasikan prioritas kebutuhan ini, memberikan umpan balik, dan mengevaluasi alat yang memberikan visibilitas di seluruh jalur pipa. Dan, karena platform DevOps tradisional tidak memberikan kemampuan untuk mengukur lebih dari sekadar penggunaan memori dan waktu respons, Anda harus bekerja berdampingan untuk menentukan apa yang dipantau dan bagaimana hal tersebut ditampilkan di seluruh perusahaan.

Lanskap alat yang menangani masing-masing area di atas sangatlah banyak, dan bukan tugas Anda untuk selalu mengikuti penyimpanan data terbaru, sistem terdistribusi, atau metode penerapan atau integrasi berkelanjutan. Sebagai gantinya, sebagai ilmuwan data, cobalah menuliskan hal-hal yang Anda perlukan agar dapat memikul tanggung jawab baru dan apa saja kemungkinan dampak yang disengaja dan tidak diinginkan terhadap orang-orang yang terkena model ML yang Anda buat.

Jika Anda sekarang bertanggung jawab atas fitur rekayasa yang dapat bertransisi dengan mulus dari lingkungan eksperimental tanpa perlu menulis ulang kode, apa artinya bagi data yang memberi masukan pada lingkungan Anda untuk rekayasa fitur? Berikut satu perspektif dari Max Boyd, pimpinan ilmu data di Kaskada, tentang bagaimana data diperlakukan sebagai fakta menurunkan keakuratan model dan bagaimana aliran peristiwa dapat memecahkan masalah ini.

Jika model sudah ketinggalan zaman, melatih ulang model ML secara otomatis mungkin bukan jawaban untuk bisnis Anda. Terutama jika orang-orang yang terkena dampak model tersebut dapat mengalami diskriminasi sistematis berdasarkan kelas yang dilindungi. Namun jika Anda mengambil tanggung jawab untuk memperbarui model dalam produksi dengan irama tertentu atau bahkan terus menerus, informasi apa yang perlu Anda pantau dan peringatan apa yang perlu Anda perhatikan ketika ada masalah?

Agar hanya satu data scientist yang dapat memberikan pengaruh dan mulai mengadopsi MLOps, hal yang dapat Anda lakukan hari ini adalah dengan mulai menulis tentang kebutuhan dan permasalahan Anda. Kemudian petakan kebutuhan tersebut pada setiap tahap siklus hidup ML dan lihat bagaimana hal tersebut dapat diatasi dengan alat. Tidak semuanya dapat diselesaikan hanya dengan peralatan, namun, lain kali di bagian 3 kita akan membahas tentang proses yang dapat Anda usulkan untuk mengaktifkan MLOps di perusahaan Anda.