🚀 Coba Zilliz Cloud, Milvus yang sepenuhnya terkelola, secara gratis—rasakan performa 10x lebih cepat! Coba Sekarang>>

milvus-logo
LFAI
  • Home
  • Blog
  • Mengoperasikan AI dalam Skala Besar dengan Perangkat Lunak 2.0, MLOps, dan Milvus

Mengoperasikan AI dalam Skala Besar dengan Perangkat Lunak 2.0, MLOps, dan Milvus

  • Engineering
March 31, 2021
milvus

Membangun aplikasi machine learning (ML) adalah proses yang kompleks dan berulang. Seiring dengan semakin banyaknya perusahaan yang menyadari potensi yang belum dimanfaatkan dari data yang tidak terstruktur, permintaan akan pemrosesan dan analitik yang didukung oleh AI akan terus meningkat. Tanpa operasi pembelajaran mesin yang efektif, atau MLOps, sebagian besar investasi aplikasi ML akan layu di tengah jalan. Penelitian telah menemukan bahwa hanya 5% dari adopsi AI yang direncanakan oleh perusahaan yang benar-benar mencapai penerapan. Banyak organisasi yang mengalami "utang model", di mana perubahan kondisi pasar dan kegagalan untuk beradaptasi dengannya mengakibatkan investasi yang tidak terealisasi pada model yang tidak diperbarui (atau lebih buruk lagi, tidak pernah digunakan sama sekali).

Artikel ini menjelaskan MLOps, sebuah pendekatan sistemik terhadap manajemen siklus hidup model AI, dan bagaimana platform manajemen data vektor sumber terbuka Milvus dapat digunakan untuk mengoperasionalkan AI dalam skala besar.


Apa itu MLOps?

Operasi pembelajaran mesin (MLOps), juga dikenal sebagai operasi model (ModelOps) atau operasionalisasi model AI, diperlukan untuk membangun, memelihara, dan menerapkan aplikasi AI dalam skala besar. Ketika perusahaan berusaha menerapkan model AI yang mereka kembangkan ke ratusan skenario yang berbeda, sangat penting bahwa model yang digunakan, dan yang sedang dikembangkan, dioperasionalkan di seluruh organisasi. MLOps melibatkan pemantauan model pembelajaran mesin di sepanjang siklus hidupnya, dan mengatur segala sesuatu mulai dari data yang mendasari hingga keefektifan sistem produksi yang bergantung pada model tertentu.

01.jpg 01.jpg

Gartner mendefinisikan ModelOps sebagai tata kelola dan manajemen siklus hidup dari berbagai macam kecerdasan buatan yang dioperasionalkan dan model keputusan. Fungsionalitas inti dari MLOps dapat dirinci sebagai berikut:

  • Integrasi berkelanjutan/pengiriman berkelanjutan (CI/CD): Seperangkat praktik terbaik yang dipinjam dari operasi pengembang (DevOps), CI/CD adalah metode untuk memberikan perubahan kode lebih sering dan lebih andal. Integrasi berkelanjutan mendorong penerapan perubahan kode dalam jumlah kecil sambil memantaunya dengan kontrol versi yang ketat. Pengiriman berkelanjutan mengotomatiskan pengiriman aplikasi ke berbagai lingkungan (misalnya, lingkungan pengujian dan pengembangan).

  • Lingkungan pengembangan model (model development environments/MDE): Sebuah proses yang kompleks untuk membangun, meninjau, mendokumentasikan, dan memeriksa model, MDE membantu memastikan model dibuat secara berulang, didokumentasikan saat dikembangkan, dipercaya, dan dapat direproduksi. MDE yang efektif memastikan model dapat dieksplorasi, diteliti, dan dieksperimenkan dengan cara yang terkendali.

  • Pengujian juara-penantang: Mirip dengan metodologi pengujian A/B yang digunakan oleh para pemasar, pengujian champion-challenger melibatkan eksperimen dengan solusi yang berbeda untuk membantu proses pengambilan keputusan yang menghasilkan pendekatan tunggal. Teknik ini melibatkan pemantauan dan pengukuran kinerja secara real time untuk mengidentifikasi deviasi mana yang paling berhasil.

  • Pembuatan versi model: Seperti halnya sistem yang kompleks, model pembelajaran mesin dikembangkan secara bertahap oleh banyak orang yang berbeda-mengakibatkan pertanyaan manajemen data seputar versi data dan model ML. Pembuatan versi model membantu mengelola dan mengatur proses berulang dari pengembangan ML di mana data, model, dan kode dapat berevolusi dengan kecepatan yang berbeda.

  • Penyimpanan dan pengembalian model: Ketika sebuah model diterapkan, file gambar yang sesuai harus disimpan. Kemampuan rollback dan pemulihan memungkinkan tim MLOps untuk kembali ke versi model sebelumnya jika diperlukan.

Menggunakan hanya satu model dalam aplikasi produksi menghadirkan sejumlah tantangan yang sulit. MLOps adalah metode terstruktur dan berulang yang mengandalkan alat, teknologi, dan praktik terbaik untuk mengatasi masalah teknis atau bisnis yang muncul selama siklus hidup model pembelajaran mesin. MLOps yang sukses menjaga efisiensi di seluruh tim yang bekerja untuk membangun, menerapkan, memantau, melatih ulang, dan mengatur model AI serta penggunaannya dalam sistem produksi.


Mengapa MLOps diperlukan?

Seperti yang digambarkan dalam siklus hidup model ML di atas, membangun model pembelajaran mesin adalah proses berulang yang melibatkan penggabungan data baru, melatih ulang model, dan menangani kerusakan model secara umum dari waktu ke waktu. Ini semua adalah masalah yang tidak dapat diatasi atau diberikan solusi oleh operasi pengembang tradisional, atau DevOps. MLOps menjadi penting sebagai cara untuk mengelola investasi dalam model AI dan memastikan siklus hidup model yang produktif. Karena model pembelajaran mesin akan dimanfaatkan oleh berbagai sistem produksi yang berbeda, MLOps menjadi bagian integral untuk memastikan persyaratan dapat dipenuhi di berbagai lingkungan dan di tengah berbagai skenario.

02.jpg 02.jpg


Ilustrasi sederhana di atas menggambarkan model pembelajaran mesin yang digunakan di lingkungan cloud yang dimasukkan ke dalam sebuah aplikasi. Dalam skenario dasar ini, sejumlah masalah dapat muncul yang dapat diatasi oleh MLOps. Karena aplikasi produksi bergantung pada lingkungan cloud tertentu, ada persyaratan latensi yang tidak dapat diakses oleh ilmuwan data yang mengembangkan model ML. Mengoperasionalkan siklus hidup model akan memungkinkan para ilmuwan data atau insinyur dengan pengetahuan mendalam tentang model untuk mengidentifikasi dan memecahkan masalah yang muncul di lingkungan produksi tertentu.

Model pembelajaran mesin tidak hanya dilatih di lingkungan yang berbeda dari aplikasi produksi yang mereka gunakan, tetapi mereka juga sering bergantung pada kumpulan data historis yang berbeda dari data yang digunakan dalam aplikasi produksi. Dengan MLOps, seluruh tim sains data, mulai dari mereka yang mengembangkan model hingga orang-orang yang bekerja di tingkat aplikasi, memiliki sarana untuk berbagi dan meminta informasi dan bantuan. Laju perubahan data dan pasar membuatnya sangat penting untuk meminimalkan gesekan sesedikit mungkin antara semua pemangku kepentingan utama dan kontributor yang akan bergantung pada model pembelajaran mesin yang diberikan.

Mendukung transisi ke Perangkat Lunak 2.0

Perangkat Lunak 2.0 adalah gagasan bahwa pengembangan perangkat lunak akan mengalami pergeseran paradigma karena kecerdasan buatan semakin memainkan peran sentral dalam menulis model AI yang mendukung aplikasi perangkat lunak. Dalam Perangkat Lunak 1.0, pengembangan melibatkan pemrogram yang menulis instruksi eksplisit menggunakan bahasa pemrograman tertentu (misalnya, Python, C++). Perangkat Lunak 2.0 jauh lebih abstrak. Meskipun orang memberikan data masukan dan mengatur parameter, jaringan saraf sulit dipahami oleh manusia karena kerumitannya - dengan jaringan tipikal yang berisi jutaan bobot yang memengaruhi hasil (dan terkadang miliaran atau triliunan).

DevOps dibangun berdasarkan ketergantungan Software 1.0 pada instruksi spesifik yang ditentukan oleh pemrogram menggunakan bahasa, tetapi tidak pernah mempertimbangkan siklus hidup model pembelajaran mesin yang mendukung berbagai aplikasi yang berbeda. MLOps menjawab kebutuhan akan proses pengelolaan pengembangan perangkat lunak yang berubah seiring dengan perangkat lunak yang sedang dikembangkan. Ketika Software 2.0 menjadi standar baru untuk pemecahan masalah berbasis komputer, memiliki alat dan proses yang tepat untuk mengelola siklus hidup model akan membuat atau menghancurkan investasi dalam teknologi baru. Milvus adalah mesin pencari kemiripan vektor sumber terbuka yang dibuat untuk mendukung transisi ke Perangkat Lunak 2.0 dan mengelola siklus hidup model dengan MLOps.

03.jpg 03.jpg


Mengoperasikan AI dalam skala besar dengan Milvus

Milvus adalah platform manajemen data vektor yang dibuat khusus untuk menyimpan, menanyakan, memperbarui, dan memelihara kumpulan data vektor berskala triliunan. Platform ini mendukung pencarian kemiripan vektor dan dapat diintegrasikan dengan pustaka indeks yang diadopsi secara luas, termasuk Faiss, NMSLIB, dan Annoy. Dengan memasangkan model AI yang mengubah data tak terstruktur menjadi vektor dengan Milvus, aplikasi yang mencakup pengembangan obat baru, analisis biometrik, sistem rekomendasi, dan masih banyak lagi dapat dibuat.

Pencarian kemiripan vektor adalah solusi utama untuk pemrosesan dan analisis data tidak terstruktur, dan data vektor dengan cepat muncul sebagai tipe data inti. Sistem manajemen data yang komprehensif seperti Milvus memfasilitasi operasionalisasi AI dengan berbagai cara, termasuk:

  • Menyediakan lingkungan untuk pelatihan model yang memastikan lebih banyak aspek pengembangan dilakukan di satu tempat, memfasilitasi kolaborasi lintas tim, tata kelola model, dan banyak lagi.

  • Menawarkan seperangkat API komprehensif yang mendukung kerangka kerja populer seperti Python, Java, dan Go, sehingga memudahkan untuk mengintegrasikan serangkaian model ML yang umum.

  • Kompatibilitas dengan Google Colaboratory, lingkungan notebook Jupyter yang berjalan di browser, menyederhanakan proses kompilasi Milvus dari kode sumber dan menjalankan operasi Python dasar.

  • Fungsionalitas pembelajaran mesin otomatis (AutoML) memungkinkan untuk mengotomatisasi tugas-tugas yang terkait dengan penerapan pembelajaran mesin pada masalah-masalah di dunia nyata. AutoML tidak hanya mengarah pada peningkatan efisiensi, tetapi juga memungkinkan orang yang bukan ahli untuk memanfaatkan model dan teknik pembelajaran mesin.

Terlepas dari aplikasi pembelajaran mesin yang Anda buat saat ini, atau rencana yang Anda miliki untuk aplikasi di masa depan, Milvus adalah platform manajemen data yang fleksibel yang dibuat dengan mempertimbangkan Software 2.0 dan MLOps. Untuk mempelajari lebih lanjut tentang Milvus atau memberikan kontribusi, temukan proyeknya di Github. Untuk terlibat dalam komunitas atau mengajukan pertanyaan, bergabunglah dengan saluran Slack kami. Ingin tahu lebih banyak konten? Lihat sumber daya berikut ini:

    Try Managed Milvus for Free

    Zilliz Cloud is hassle-free, powered by Milvus and 10x faster.

    Get Started

    Like the article? Spread the word

    Terus Baca