Daftar Isi[Bersembunyi][Menunjukkan]
- 1. Apa yang Anda maksud dengan MLOps?
- 2. Bagaimana perbedaan antara ilmuwan data, insinyur data, dan insinyur ML?
- 3. Apa yang membedakan MLOps dari ModelOps dan AIOps?
- 4. Bisakah Anda memberi tahu saya beberapa manfaat MLOps?
- 5. Bisakah Anda memberi tahu saya komponen MLOps?
- 6. Risiko apa yang muncul dengan menggunakan ilmu data?
- 7. Bisakah Anda menjelaskan, apa itu model drift?
- 8. Menurut Anda, berapa banyak cara berbeda yang dapat diterapkan MLOps?
- 9. Apa yang membedakan penerapan statis dari penerapan dinamis?
- 10. Teknik pengujian produksi apa yang Anda ketahui?
- 11. Apa yang membedakan pemrosesan aliran dari pemrosesan batch?
- 12. Apa yang dimaksud dengan Training Serving Skew?
- 13. Apa yang Anda maksud dengan Model Registry?
- 14. Bisakah Anda menjelaskan manfaat Model Registry?
- 15. Bisakah Anda menjelaskan cara kerja teknik Champion-Challenger?
- 16. Jelaskan aplikasi tingkat perusahaan dari siklus hidup MLOps?
- Kesimpulan
Perusahaan lebih sering menggunakan teknologi baru seperti kecerdasan buatan (AI) dan pembelajaran mesin (ML) untuk meningkatkan aksesibilitas publik terhadap informasi dan layanan.
Teknologi ini semakin banyak digunakan di berbagai sektor, termasuk perbankan, keuangan, ritel, manufaktur, dan bahkan perawatan kesehatan.
Ilmuwan data, insinyur pembelajaran mesin, dan insinyur dalam kecerdasan buatan diminati oleh semakin banyak perusahaan.
Mengetahui kemungkinan Mesin belajar pertanyaan wawancara operasi yang dapat diajukan oleh manajer perekrutan dan perekrut kepada Anda sangat penting jika Anda ingin bekerja di bidang ML atau MLOps.
Anda dapat mempelajari bagaimana menanggapi beberapa pertanyaan wawancara MLOps di posting ini saat Anda berupaya mendapatkan pekerjaan impian Anda.
1. Apa yang Anda maksud dengan MLOps?
Topik pengoperasionalan model ML adalah fokus dari MLOps, juga dikenal sebagai Operasi Pembelajaran Mesin, bidang yang berkembang dalam arena AI/DS/ML yang lebih utama.
Tujuan utama dari pendekatan dan budaya rekayasa perangkat lunak yang dikenal sebagai MLOps adalah untuk mengintegrasikan pembuatan model pembelajaran mesin/ilmu data dan operasionalisasi selanjutnya (Ops).
DevOps dan MLOps konvensional memiliki kesamaan tertentu, namun, MLOps juga sangat berbeda dari DevOps tradisional.
MLOps menambahkan lapisan kompleksitas baru dengan berfokus pada data, sedangkan DevOps terutama berfokus pada mengoperasionalkan kode dan rilis perangkat lunak yang tidak dapat stateful.
Kombinasi ML, Data, dan Ops inilah yang memberi nama umum MLOps (pembelajaran mesin, rekayasa data, dan DevOps).
2. Bagaimana perbedaan antara ilmuwan data, insinyur data, dan insinyur ML?
Ini bervariasi, menurut pendapat saya, tergantung pada perusahaan. Lingkungan untuk transportasi dan transformasi data, serta penyimpanannya, dibangun oleh para insinyur data.
Ilmuwan data adalah ahli dalam memanfaatkan teknik ilmiah dan statistik untuk menganalisis data dan menarik kesimpulan, termasuk membuat prediksi tentang perilaku masa depan berdasarkan tren yang ada sekarang.
Insinyur perangkat lunak mempelajari operasi dan mengelola infrastruktur penyebaran beberapa tahun yang lalu. Tim ops, di sisi lain, sedang mempelajari pengembangan sambil menggunakan infrastruktur sebagai kode. Posisi DevOps dihasilkan oleh dua aliran ini.
MLOps berada dalam kategori yang sama dengan Ilmuwan Data dan Insinyur Data. Insinyur data memperoleh pengetahuan tentang infrastruktur yang diperlukan untuk mendukung siklus hidup model dan membuat alur untuk pelatihan berkelanjutan.
Ilmuwan data berusaha mengembangkan penyebaran model dan kemampuan penilaian mereka.
Pipeline data tingkat produksi dibangun oleh engineer ML yang memanfaatkan infrastruktur yang mengubah data mentah menjadi input yang dibutuhkan oleh model ilmu data, menghosting dan menjalankan model, dan mengeluarkan kumpulan data yang dinilai ke sistem hilir.
Baik insinyur data maupun ilmuwan data mampu menjadi insinyur ML.
3. Apa yang membedakan MLOps dari ModelOps dan AIOps?
Saat membangun ujung ke ujung algoritma pembelajaran mesin, MLOps adalah aplikasi DevOps yang mencakup pengumpulan data, pra-pemrosesan data, pembuatan model, penerapan model dalam produksi, pemantauan model dalam produksi, dan peningkatan berkala model.
Penggunaan DevOps dalam menangani seluruh implementasi algoritma apa pun, seperti Model Berbasis Aturan, dikenal sebagai ModelOps.
Operasi AI memanfaatkan prinsip-prinsip DevOps untuk membuat aplikasi AI dari awal.
4. Bisakah Anda memberi tahu saya beberapa manfaat MLOps?
- Ilmuwan data dan pengembang MLOps dapat dengan cepat menjalankan kembali uji coba untuk memastikan bahwa model dilatih dan dinilai dengan tepat karena MLOps membantu mengotomatiskan semua atau sebagian besar tugas/langkah dalam MDLC (siklus pengembangan model). Selain itu izin data dan versi model.
- Menerapkan ide-ide MLOp ke dalam praktik memungkinkan Insinyur Data dan Ilmuwan Data memiliki akses tak terbatas ke kumpulan data yang diolah dan dikurasi, yang secara eksponensial mempercepat pengembangan model.
- Ilmuwan data akan dapat menggunakan kembali model yang berkinerja lebih baik jika iterasi saat ini tidak memenuhi harapan berkat kemampuan untuk membuat model dan kumpulan data berversi, yang secara signifikan akan meningkatkan jejak audit model.
- Karena metode MLOps sangat bergantung pada DevOps, mereka juga memasukkan sejumlah konsep CI/CD, yang meningkatkan kualitas dan keandalan kode.
5. Bisakah Anda memberi tahu saya komponen MLOps?
Mendesain: MLOps sangat menyertakan pemikiran desain. Dimulai dengan sifat masalah, pengujian hipotesis, arsitektur, dan penerapan
Bangunan model: Pengujian dan validasi model adalah bagian dari langkah ini, bersama dengan alur dan eksperimen rekayasa data untuk menyiapkan sistem pembelajaran mesin terbaik.
Operasi: Model harus diimplementasikan sebagai bagian dari operasi dan terus diperiksa dan dievaluasi. Proses CI/CD kemudian dipantau dan mulai menggunakan alat orkestrasi.
6. Risiko apa yang muncul dengan menggunakan ilmu data?
- Sulit untuk menskalakan model di seluruh perusahaan.
- Tanpa peringatan, model mati dan berhenti berfungsi.
- Sebagian besar, akurasi model semakin buruk seiring waktu.
- Model membuat prediksi yang tidak akurat berdasarkan pengamatan tertentu yang tidak dapat diperiksa lebih lanjut.
- Ilmuwan data juga harus memelihara model, tetapi harganya mahal.
- MLOps dapat digunakan untuk mengurangi risiko ini.
7. Bisakah Anda menjelaskan, apa itu model drift?
Ketika kinerja fase inferensi model (menggunakan data dunia nyata) memburuk dari kinerja fase pelatihannya, ini dikenal sebagai penyimpangan model, juga dikenal sebagai penyimpangan ide (menggunakan data historis, berlabel).
Performa model tidak seimbang dibandingkan dengan fase pelatihan dan penyajian, oleh karena itu dinamakan "kecenderungan melatih/melayani".
Banyak faktor, termasuk:
- Cara mendasar bahwa data didistribusikan telah berubah.
- Pelatihan difokuskan pada sejumlah kecil kategori, namun perubahan lingkungan yang baru saja terjadi menambah area lain.
- Dalam kesulitan NLP, data dunia nyata memiliki jumlah token angka yang jauh lebih besar daripada data pelatihan.
- Kejadian tak terduga, seperti model yang dibangun berdasarkan data pra-COVID yang diprediksi berperforma lebih buruk secara signifikan pada data yang dikumpulkan selama epidemi COVID-19.
Pemantauan kinerja model secara terus menerus selalu diperlukan untuk mengidentifikasi penyimpangan model.
Pelatihan ulang model hampir selalu diperlukan sebagai obat ketika ada penurunan terus-menerus dalam kinerja model; alasan penurunan harus diidentifikasi dan prosedur perawatan yang tepat harus digunakan.
8. Menurut Anda, berapa banyak cara berbeda yang dapat diterapkan MLOps?
Ada tiga metode untuk menerapkan MLOps:
MLOps level 0 (Proses Manual): Pada level ini, semua langkah—termasuk persiapan data, analisis, dan pelatihan—dilakukan secara manual. Setiap tahap harus dilakukan secara manual, serta transisi dari satu ke yang berikutnya.
Premis yang mendasarinya adalah bahwa tim ilmu data Anda hanya mengelola sejumlah kecil model yang tidak sering diperbarui.
Akibatnya, tidak ada Continuous Integration (CI) atau Continuous Deployment (CD), dan pengujian kode biasanya diintegrasikan ke dalam eksekusi skrip atau eksekusi notebook, dengan penerapan yang dilakukan di layanan mikro dengan SISA API.
MLOps level 1 (otomatisasi pipeline ML): Dengan mengotomatiskan proses ML, tujuannya adalah untuk terus melatih model (CT). Anda dapat menyelesaikan pengiriman layanan prediksi model berkelanjutan dengan cara ini.
Penerapan seluruh pipeline pelatihan kami memastikan bahwa model tersebut dilatih secara otomatis dalam produksi menggunakan data baru berdasarkan pemicu pipeline aktif.
MLOps level 2 (otomatisasi pipeline CI/CD): Ini satu langkah di atas level MLOps. Sistem CI/CD otomatis yang kuat diperlukan jika Anda ingin memperbarui pipeline dalam produksi dengan cepat dan andal:
- Anda membuat kode sumber dan menjalankan berbagai pengujian di seluruh tahap CI. Paket, executable, dan artefak adalah output panggung, yang akan digunakan di lain waktu.
- Artefak yang dibuat oleh tahap CI disebarkan ke lingkungan target selama langkah CD. Pipeline yang dikerahkan dengan implementasi model yang direvisi adalah output dari stage.
- Sebelum pipeline memulai iterasi baru dari eksperimen, ilmuwan data masih harus melakukan fase analisis data dan model secara manual.
9. Apa yang membedakan penerapan statis dari penerapan dinamis?
Model ini dilatih secara offline untuk Penerapan Statis. Dengan kata lain, kami melatih model tepat sekali dan kemudian menggunakannya untuk sementara waktu. Setelah model dilatih secara lokal, model tersebut disimpan dan dikirim ke server untuk digunakan untuk menghasilkan prediksi waktu nyata.
Model tersebut kemudian didistribusikan sebagai perangkat lunak aplikasi yang dapat diinstal. sebuah program yang memungkinkan untuk penilaian batch permintaan, sebagai ilustrasi.
Model ini dilatih secara online untuk Penerapan Dinamis. Artinya, data baru terus ditambahkan ke sistem, dan model diperbarui terus menerus untuk memperhitungkannya.
Hasilnya, Anda dapat membuat prediksi menggunakan server sesuai permintaan. Setelah itu, model mulai digunakan dengan disediakan sebagai titik akhir API yang bereaksi terhadap kueri pengguna, menggunakan kerangka kerja web seperti Labu atau FastAPI.
10. Teknik pengujian produksi apa yang Anda ketahui?
Pengujian batch: Dengan melakukan pengujian dalam pengaturan yang berbeda dari lingkungan pelatihannya, model akan diverifikasi. Menggunakan metrik pilihan, seperti akurasi, RMSE, dll., pengujian batch dilakukan pada sekelompok sampel data untuk memverifikasi inferensi model.
Pengujian batch dapat dilakukan pada berbagai platform komputasi, seperti server pengujian, server jarak jauh, atau cloud. Biasanya, model disediakan sebagai file serial, yang dimuat sebagai objek dan disimpulkan dari data uji.
Pengujian A / B: Ini sering digunakan untuk menganalisis kampanye pemasaran serta untuk desain layanan (situs web, aplikasi seluler, dll.).
Berdasarkan perusahaan atau operasi, pendekatan statistik digunakan untuk menganalisis hasil pengujian A/B untuk memutuskan model mana yang akan berkinerja lebih baik dalam produksi. Biasanya, pengujian A/B dilakukan dengan cara berikut:
- Data langsung atau real-time dibagi atau disegmentasikan menjadi dua set, Set A dan Set B.
- Data Set A dikirim ke model yang sudah usang, sedangkan data Set B dikirim ke model yang diperbarui.
- Tergantung pada kasus penggunaan bisnis atau proses, beberapa pendekatan statistik dapat digunakan untuk mengevaluasi kinerja model (misalnya, akurasi, presisi, dll.) untuk menentukan apakah model baru (model B) mengungguli model lama (model A).
- Kami kemudian melakukan pengujian hipotesis statistik: Hipotesis nol mengatakan bahwa model baru tidak berpengaruh pada nilai rata-rata indikator bisnis yang dipantau. Menurut hipotesis alternatif, model baru meningkatkan nilai rata-rata indikator bisnis pemantauan.
- Terakhir, kami menilai apakah model baru menghasilkan peningkatan yang signifikan dalam KPI bisnis tertentu.
Tes bayangan atau panggung: Sebuah model dievaluasi dalam duplikat lingkungan produksi sebelum digunakan dalam produksi (lingkungan pementasan).
Ini sangat penting untuk menentukan kinerja model dengan data waktu nyata dan memvalidasi ketahanan model. dilakukan dengan menyimpulkan data yang sama dengan jalur produksi dan mengirimkan cabang atau model yang dikembangkan untuk diuji pada server pementasan.
Satu-satunya kelemahan adalah bahwa tidak ada pilihan bisnis yang akan dibuat di server pementasan atau terlihat oleh pengguna akhir sebagai akibat dari cabang pengembangan.
Ketahanan dan kinerja model akan dinilai secara statistik menggunakan hasil lingkungan pementasan menggunakan metrik yang sesuai.
11. Apa yang membedakan pemrosesan aliran dari pemrosesan batch?
Kami dapat memanipulasi karakteristik yang kami gunakan untuk menghasilkan perkiraan waktu nyata kami menggunakan dua metode pemrosesan: batch dan stream.
Proses batch fitur dari titik waktu sebelumnya untuk objek tertentu, yang kemudian digunakan untuk menghasilkan prediksi waktu nyata.
- Di sini, kami dapat melakukan penghitungan fitur intensif secara offline dan menyiapkan data untuk inferensi cepat.
- Fitur, bagaimanapun, usia sejak mereka telah ditentukan di masa lalu. Ini mungkin menjadi kelemahan besar jika prognosis Anda didasarkan pada kejadian baru-baru ini. (Misalnya, mengidentifikasi transaksi penipuan sesegera mungkin.)
Dengan fitur streaming yang hampir real-time untuk entitas tertentu, inferensi dilakukan dalam pemrosesan aliran pada sekumpulan input tertentu.
- Di sini, dengan memberikan model real-time, fitur streaming, kita bisa mendapatkan prediksi yang lebih akurat.
- Namun, infrastruktur tambahan diperlukan untuk pemrosesan aliran dan untuk memelihara aliran data (Kafka, Kinesis, dll). (Apache Flink, Beam, dll.)
12. Apa yang dimaksud dengan Training Serving Skew?
Perbedaan antara kinerja saat melakukan servis dan kinerja selama pelatihan dikenal sebagai kemiringan penyajian pelatihan. Kemiringan ini dapat disebabkan oleh faktor-faktor berikut:
- Perbedaan dalam cara Anda menangani data antara pipeline untuk penyajian dan pelatihan.
- Pergeseran data dari pelatihan Anda ke layanan Anda.
- Saluran umpan balik antara algoritme dan model Anda.
13. Apa yang Anda maksud dengan Model Registry?
Model Registry adalah repositori pusat tempat pembuat model dapat menerbitkan model yang cocok untuk digunakan dalam produksi.
Pengembang dapat berkolaborasi dengan tim dan pemangku kepentingan lain untuk mengelola masa pakai semua model di dalam bisnis menggunakan registri. Model terlatih dapat diunggah ke registri model oleh ilmuwan data.
Model disiapkan untuk pengujian, validasi, dan penerapan ke produksi setelah mereka berada di register. Selain itu, model terlatih disimpan dalam pendaftar model untuk akses cepat oleh aplikasi atau layanan terintegrasi apa pun.
Untuk menguji, mengevaluasi, dan menerapkan model ke produksi, pengembang perangkat lunak dan peninjau dapat dengan cepat mengenali dan memilih hanya versi terbaik dari model terlatih (berdasarkan kriteria evaluasi).
14. Bisakah Anda menjelaskan manfaat Model Registry?
Berikut ini adalah beberapa cara model registri merampingkan manajemen siklus hidup model:
- Untuk mempermudah penerapan, simpan persyaratan waktu proses dan metadata untuk model terlatih Anda.
- Model Anda yang terlatih, diterapkan, dan dihentikan harus didaftarkan, dilacak, dan dibuat versinya dalam repositori terpusat yang dapat ditelusuri.
- Buat pipeline otomatis yang memungkinkan pengiriman, pelatihan, dan integrasi model produksi Anda secara berkelanjutan.
- Bandingkan model yang baru dilatih (atau model penantang) di lingkungan pementasan dengan model yang saat ini beroperasi dalam produksi (model juara).
15. Bisakah Anda menjelaskan cara kerja teknik Champion-Challenger?
Dimungkinkan untuk menguji berbagai keputusan operasional dalam produksi menggunakan teknik Champion Challenger. Anda mungkin pernah mendengar tentang pengujian A/B dalam konteks pemasaran.
Misalnya, Anda mungkin menulis dua baris subjek yang berbeda dan mendistribusikannya secara acak ke target demografis Anda untuk memaksimalkan tingkat terbuka untuk kampanye email.
Sistem mencatat kinerja email (yaitu, tindakan membuka email) sehubungan dengan baris subjeknya, memungkinkan Anda untuk membandingkan tarif buka setiap baris subjek untuk menentukan mana yang paling efektif.
Champion-Challenger sebanding dengan pengujian A/B dalam hal ini. Anda dapat menggunakan logika keputusan untuk mengevaluasi setiap hasil dan memilih yang paling efektif saat Anda bereksperimen dengan berbagai metode untuk sampai pada pilihan.
Model paling sukses berkorelasi dengan sang juara. Penantang pertama dan daftar penantang yang cocok sekarang semua yang hadir di fase eksekusi pertama, bukan juara.
Juara dipilih oleh sistem untuk eksekusi langkah pekerjaan lebih lanjut.
Para penantang dikontraskan satu sama lain. Juara baru kemudian ditentukan oleh penantang yang menghasilkan hasil terbesar.
Tugas-tugas yang terlibat dalam proses perbandingan champion-challenger tercantum di bawah ini secara lebih rinci:
- Mengevaluasi masing-masing model saingan.
- Menilai skor akhir.
- Membandingkan hasil evaluasi untuk menetapkan penantang yang menang.
- Menambahkan juara baru ke arsip
16. Jelaskan aplikasi tingkat perusahaan dari siklus hidup MLOps?
Kita harus berhenti menganggap pembelajaran mesin hanya sebagai eksperimen berulang agar model pembelajaran mesin dapat memasuki produksi. MLOps adalah penyatuan rekayasa perangkat lunak dengan pembelajaran mesin.
Hasil akhir harus dibayangkan seperti itu. Oleh karena itu, kode untuk produk teknologi harus diuji, fungsional, dan modular.
MLOps memiliki masa pakai yang sebanding dengan alur pembelajaran mesin konvensional, dengan pengecualian bahwa model disimpan dalam proses hingga produksi.
Insinyur MLOps kemudian mengawasi ini untuk memastikan kualitas model dalam produksi sesuai dengan yang diinginkan.
Berikut adalah beberapa kasus penggunaan untuk beberapa teknologi MLOps:
- Model Registri: Seperti yang terlihat. Tim yang lebih besar menyimpan dan melacak model versi di registry model. Bahkan kembali ke versi sebelumnya adalah sebuah pilihan.
- Penyimpanan Fitur: Saat menangani kumpulan data yang lebih besar, mungkin ada versi berbeda dari kumpulan data analitik dan subset untuk tugas tertentu. Penyimpanan fitur adalah cara mutakhir dan berselera tinggi untuk menggunakan pekerjaan persiapan data dari proses sebelumnya atau dari tim lain juga.
- Penyimpanan untuk Metadata: Sangat penting untuk memantau metadata dengan benar selama produksi jika data tidak terstruktur, seperti data gambar dan teks, ingin digunakan dengan sukses.
Kesimpulan
Sangat penting untuk diingat bahwa, dalam sebagian besar kasus, pewawancara mencari sistem, sedangkan kandidat mencari solusi.
Yang pertama didasarkan pada keterampilan teknis Anda, sedangkan yang kedua adalah tentang metode yang Anda gunakan untuk menunjukkan kompetensi Anda.
Ada beberapa prosedur yang harus Anda ambil saat menanggapi pertanyaan wawancara MLOps untuk membantu pewawancara lebih memahami bagaimana Anda ingin menilai dan mengatasi masalah yang dihadapi.
Konsentrasi mereka lebih pada reaksi yang salah daripada yang benar. Sebuah solusi menceritakan sebuah kisah, dan sistem Anda adalah ilustrasi terbaik dari pengetahuan dan kapasitas Anda untuk komunikasi.
Tinggalkan Balasan