Sababaraha séktor global mimiti investasi langkung ageung dina pembelajaran mesin (ML).
Modél ML mimitina tiasa diluncurkeun sareng dioperasikeun ku tim spesialis, tapi salah sahiji halangan pangbadagna nyaéta nransferkeun pangaweruh anu dicandak ka modél salajengna supados prosésna tiasa dilegakeun.
Pikeun ningkatkeun sareng ngabakukeun prosés anu aya dina manajemén siklus kahirupan modél, téknik MLOps beuki dianggo ku tim anu nyiptakeun modél pembelajaran mesin.
Tetep maca pikeun milari langkung seueur ngeunaan sababaraha alat sareng platform MLOps pangsaéna anu sayogi ayeuna sareng kumaha aranjeunna tiasa ngagampangkeun diajar mesin tina alat, pamekar, sareng sudut pandang prosedural.
Naon MLOps?
Téhnik pikeun nyieun kawijakan, norma, sareng prakték pangsaéna pikeun modél pembelajaran mesin katelah "operasi pembelajaran mesin," atanapi "MLOps".
MLOps boga tujuan pikeun ngajamin sakabeh siklus kahirupan ngembangkeun ML - ti konsepsi nepi ka deployment - ieu meticulously documented tur junun pikeun hasil pangalusna tinimbang investasi loba waktu jeung sumber di dinya tanpa strategi.
Tujuan tina MLOps nyaéta pikeun ngakodifikasi prakték pangsaéna ku cara anu ngajantenkeun pamekaran mesin learning langkung skalabel pikeun operator sareng pamekar ML, ogé ningkatkeun kualitas sareng kaamanan modél ML.
Sababaraha ngarujuk kana MLOps salaku "DevOps pikeun pembelajaran mesin" sabab éta suksés nerapkeun prinsip DevOps kana widang pangembangan téknologi anu langkung khusus.
Ieu mangrupikeun cara anu mangpaat pikeun mikir ngeunaan MLOps sabab, sapertos DevOps, éta nekenkeun babagi pangaweruh, kolaborasi, sareng prakték pangsaéna diantara tim sareng alat.
MLOps nyayogikeun pamekar, élmuwan data, sareng tim operasi kerangka pikeun gawé bareng sareng, salaku hasilna, ngahasilkeun modél ML anu paling kuat.
Naha Paké Alat MLOps?
Alat MLOps tiasa ngalaksanakeun rupa-rupa tugas pikeun tim ML, tapi aranjeunna sering dibagi jadi dua kelompok: administrasi platform sareng manajemén komponén individu.
Samentara sababaraha produk MLOps ngan museurkeun kana hiji fungsi inti tunggal, sapertos data atanapi manajemén metadata, alat-alat sanésna nganggo strategi anu langkung lengkep sareng nyayogikeun platform MLOps pikeun ngontrol sababaraha aspék siklus hirup ML.
Milarian solusi MLOps anu ngabantosan tim anjeun dina ngatur daérah pangembangan ML ieu, naha anjeun milarian spesialis atanapi alat anu langkung lega:
- Nanganan data
- Desain jeung modeling
- Manajemén proyék sareng gaw
- deployment modél ML jeung upkeep kontinyu
- Manajemén siklus hirup ti mimiti nepi ka ahir, anu biasana ditawarkeun ku platform MLOps layanan pinuh.
MLOps Pakakas
1. MLFlow
Daur hirup mesin diajar dikawasa ku platform open-source MLflow sareng kalebet pendaptaran modél sentral, panyebaran, sareng ékspérimén.
MLflow tiasa dianggo ku tim ukuran naon waé, boh sacara individu sareng koléktif. Perpustakaan teu aya hubunganana sareng alat.
Sakur basa pamrograman sareng perpustakaan pembelajaran mesin tiasa ngagunakeunana.
Pikeun ngagampangkeun ngalatih, nyebarkeun, sareng ngatur aplikasi pembelajaran mesin, MLFlow berinteraksi sareng sababaraha kerangka pembelajaran mesin, kalebet TensorFlow jeung Pytorch.
Salaku tambahan, MLflow nyayogikeun API anu gampang dianggo anu tiasa dilebetkeun kana program atanapi perpustakaan mesin anu aya.
MLflow gaduh opat fitur konci anu ngagampangkeun nyukcruk sareng ngarencanakeun percobaan:
- MLflow Tracking - API sareng UI pikeun logging parameter kode pembelajaran mesin, vérsi, métrik, sareng artefak ogé pikeun ningalikeun sareng kontras hasilna.
- Proyék MLflow - kode pembelajaran mesin bungkusan dina format anu tiasa dianggo deui, tiasa diulang pikeun transfer ka produksi atanapi dibagikeun sareng élmuwan data anu sanés
- Modél MLflow - ngajaga sareng nyebarkeun modél kana sauntuyan model porsi sareng sistem inferensi tina sababaraha perpustakaan ML
- Registry Modél MLflow - toko modél sentral anu ngamungkinkeun manajemén koperasi sapanjang umur modél MLflow, kalebet versi modél, transisi panggung, sareng anotasi.
2. KubeFlow
Kotak alat ML pikeun Kubernetes disebut Kubeflow. Bungkusan sareng ngatur wadah Docker, ngabantosan dina pangropéa sistem pembelajaran mesin.
Ku nyederhanakeun orkestrasi ngajalankeun sareng panyebaran alur kerja pembelajaran mesin, éta ngamajukeun skalabilitas modél pembelajaran mesin.
Éta mangrupikeun proyék open-source anu kalebet grup alat pelengkap anu dipilih sacara saksama sareng kerangka kerja anu cocog sareng kabutuhan ML anu béda.
Tugas latihan ML panjang, ékspérimén manual, kabisaulangan, sareng tantangan DevOps tiasa diurus ku Pipelines Kubeflow.
Pikeun sababaraha tahapan pembelajaran mesin, kalebet palatihan, pamekaran pipa, sareng pangropéa tina notebook Jupyter, Kubeflow nawarkeun jasa husus sarta integrasi.
Éta ngagampangkeun pikeun ngatur sareng ngalacak umur beban kerja AI anjeun ogé nyebarkeun modél pembelajaran mesin (ML) sareng saluran data kana klaster Kubernetes.
Éta nawiskeun:
- Notebook pikeun ngamangpaatkeun SDK pikeun berinteraksi sareng sistem
- antarbeungeut pamaké (UI) pikeun ngadalikeun sareng ngawas jalan, padamelan, sareng percobaan
- Pikeun gancang ngarancang solusi tungtung-to-tungtung tanpa kedah ngawangun deui unggal waktos, sareng nganggo deui komponén sareng saluran pipa.
- Salaku komponén konci Kubeflow atanapi salaku instalasi mandiri, Kubeflow Pipelines ditawarkeun.
3. Kontrol Vérsi Data
Solusi kontrol versi open source pikeun proyék pembelajaran mesin disebut DVC, atanapi Data Version Control.
Naon waé basa anu anjeun pilih, éta mangrupikeun alat ékspérimén anu ngabantosan dina definisi pipa.
DVC ngagunakeun kode, vérsi data, sareng réproduksibilitas pikeun ngabantosan anjeun ngahémat waktos nalika anjeun mendakan masalah sareng versi sateuacana tina modél ML anjeun.
Salaku tambahan, anjeun tiasa nganggo saluran pipa DVC pikeun ngalatih modél anjeun sareng nyebarkeun ka anggota tim anjeun. Organisasi data ageung sareng versi tiasa diurus ku DVC, sareng datana tiasa disimpen dina cara anu gampang diakses.
Sanajan eta ngawengku sababaraha (kawates) fitur tracking percobaan, lolobana museurkeun kana data jeung pipeline versioning sarta manajemén.
Éta nawiskeun:
- Ieu gudang agnostik, ku kituna kasebut nyaéta dimungkinkeun pikeun employ rupa-rupa tipe gudang.
- Eta nyadiakeun stats tracking ogé.
- sarana pra-diwangun pikeun gabung tahapan ML kana DAG sarta ngajalankeun sakabéh pipa ti mimiti nepi ka rengse
- Sakabéh pamekaran modél ML tiasa diturutan nganggo kodeu sadayana sareng asal-usul data.
- Reproducibility ku satia preserving konfigurasi awal, data input, sarta kode program pikeun percobaan.
4. Pachyderm
Pachyderm mangrupikeun program kontrol versi pikeun diajar mesin sareng élmu data, sami sareng DVC.
Sajaba, sabab dijieun maké Docker sareng Kubernetes, éta tiasa ngaéksekusi sareng nyebarkeun aplikasi Machine Learning dina platform awan naon waé.
Pachyderm ngajadikeun jaminan yén unggal sapotong data anu dikonsumsi kana model pembelajaran mesin bisa dilacak deui versioned.
Hal ieu dipaké pikeun nyieun, ngadistribusikaeun, ngatur, jeung ngawas model pembelajaran mesin. Pendaptaran modél, sistem manajemén modél, sareng kotak alat CLI sadayana kalebet.
Pamekar tiasa ngajadikeun otomatis sareng ngalegaan siklus kahirupan mesin diajar nganggo yayasan data Pachyderm, anu ogé mastikeun kaulangan.
Éta ngadukung standar pamaréntahan data anu ketat, nurunkeun biaya ngolah sareng neundeun data, sareng ngabantosan usaha pikeun ngalaksanakeun inisiatif élmu data ka pasar langkung gancang.
5. Polyaxon
Nganggo platform Polyaxon, proyék pembelajaran mesin sareng aplikasi pembelajaran jero tiasa ditiru sareng diurus sapanjang siklus kahirupanna.
Polyaxon tiasa janten host sareng ngokolakeun alat éta, sareng éta tiasa disimpen kana pusat data atanapi panyadia awan. Sapertos Torch, Tensorflow, sareng MXNet, anu ngadukung sadaya kerangka diajar jero anu paling populér.
Nalika ngeunaan orkestrasi, Polyaxon ngamungkinkeun anjeun ngamangpaatkeun klaster anjeun ku ngajadwalkeun tugas sareng tés ngalangkungan CLI, dasbor, SDK, atanapi REST API.
Éta nawiskeun:
- Anjeun tiasa nganggo versi open-source ayeuna, tapi ogé kalebet pilihan pikeun perusahaan.
- Sanaos éta nyertakeun siklus hirup lengkep, kalebet orkestrasi ngajalankeun, éta tiasa langkung seueur deui.
- Kalayan dokumén rujukan téknis, tungtunan ngamimitian, bahan diajar, manual, tutorial, changelog, sareng seueur deui, éta mangrupikeun platform anu didokumentasikeun pisan.
- Kalayan dasbor wawasan ékspérimén, anjeun tiasa ngawas, ngalacak, sareng meunteun unggal percobaan optimasi.
6. komet
Komet mangrupikeun platform pikeun diajar mesin meta anu ngalacak, kontras, ngajelaskeun, sareng ningkatkeun ékspérimén sareng modél.
Sadaya percobaan anjeun tiasa ditingali sareng dibandingkeun dina hiji lokasi.
Ieu fungsi pikeun sagala tugas mesin learning, dimana wae kode anjeun dipigawé, sarta kalawan sagala perpustakaan mesin learning.
Komet cocog pikeun grup, individu, lembaga akademik, usaha, sareng saha waé anu hoyong gancang ngabayangkeun ékspérimén, nyéépkeun padamelan, sareng ngalaksanakeun ékspérimén.
Élmuwan data sareng tim tiasa ngalacak, netelakeun, ningkatkeun, sareng ngabandingkeun ékspérimén sareng modél nganggo platform diajar mesin meta-mesin anu di-host sareng awan komet.
Éta nawiskeun:
- Aya seueur kamampuan pikeun anggota tim pikeun ngabagi tugas.
- Éta ngagaduhan sababaraha integrasi anu ngajantenkeun ngahubungkeun kana téknologi anu sanés
- Berpungsi saé sareng perpustakaan ML ayeuna
- Ngurus manajemén pamaké
- Babandingan ékspérimén diaktipkeun, kalebet ngabandingkeun kode, hyperparameter, métrik, prediksi, kagumantungan, sareng métrik sistem.
- Nyayogikeun modul anu béda pikeun visi, audio, téks, sareng data tabular anu ngamungkinkeun anjeun ngabayangkeun conto.
7. Optuna
Optuna mangrupikeun sistem pikeun optimasi hyperparameter otonom anu tiasa diterapkeun pikeun diajar mesin sareng diajar jero ogé widang anu sanés.
Ieu ngandung rupa-rupa algoritma canggih ti mana anjeun bisa milih (atawa link), ngajadikeun eta pisan basajan pikeun ngadistribusikaeun latihan leuwih loba komputer, sarta nawarkeun visualisasi hasil pikaresepeun.
Perpustakaan pembelajaran mesin populér sapertos PyTorch, TensorFlow, Keras, FastAI, sci-kit-learning, LightGBM, sareng XGBoost sadayana terpadu sareng éta.
Éta nyayogikeun algoritma canggih anu ngamungkinkeun para nasabah kéngingkeun hasil langkung gancang ku cara gancang ngirangan conto anu henteu katingalina ngajangjikeun.
Ngagunakeun algoritma basis Python, éta otomatis neangan hyperparameters idéal. Optuna nyorong maluruh hyperparameter paralel dina seueur utas tanpa ngarobih kode asli.
Éta nawiskeun:
- Éta ngadukung pelatihan anu disebarkeun dina klaster ogé hiji komputer (multi-prosés) (multi-node)
- Éta ngadukung sababaraha téknik pemangkasan pikeun nyepetkeun konvergénsi (sareng nganggo kirang ngitung)
- Éta ngagaduhan rupa-rupa visualisasi anu kuat, sapertos plot slice, plot kontur, sareng koordinat paralel.
8. Kedro
Kedro mangrupikeun kerangka Python gratis pikeun nyerat kode anu tiasa diropéa sareng dijaga pikeun proyék élmu data.
Éta nyayogikeun ideu tina prakték pangsaéna dina rékayasa parangkat lunak kana kode pembelajaran mesin. Python mangrupikeun pondasi alat orkestrasi alur kerja ieu.
Pikeun ngajantenkeun prosés ML anjeun langkung saderhana sareng langkung tepat, anjeun tiasa ngembangkeun alur kerja anu tiasa diulang, dijaga, sareng modular.
Kedro ngalebetkeun prinsip rékayasa parangkat lunak sapertos modularitas, pamisahan tanggung jawab, sareng versi kana lingkungan diajar mesin.
Dina dasar Cookiecutter Data Élmu, éta nyadiakeun umum, kerangka proyék adaptable.
Sajumlah panyambung data basajan dipaké pikeun nyimpen jeung ngamuat data sakuliah sababaraha sistem file na format file, diurus ku katalog data. Éta ngajantenkeun proyék diajar mesin langkung efektif sareng ngagampangkeun ngawangun pipa data.
Éta nawiskeun:
- Kedro ngamungkinkeun panyebaran mesin anu kasebar atanapi nyalira.
- Anjeun tiasa ngajadikeun otomatis katergantungan antara kode Python sareng visualisasi alur kerja nganggo abstraksi pipa.
- Ngaliwatan pamakéan modular, kode reusable, téhnologi ieu facilitates kolaborasi tim dina rupa-rupa tingkatan sarta ngaronjatkeun produktivitas di lingkungan coding.
- Tujuan utami nyaéta pikeun ngatasi kalemahan notebook Jupyter, skrip hiji-off, sareng kode lem ku cara nyerat pemrograman élmu data anu tiasa dijaga.
9. BentoML
Ngawangun titik tungtung API mesin diajar janten gampang sareng BentoML.
Éta nyayogikeun prasarana anu biasa tapi kentel pikeun mindahkeun modél pembelajaran mesin diajar kana produksi.
Éta ngamungkinkeun anjeun ngarangkep modél anu diajar pikeun dianggo dina setting produksi, napsirkeunana nganggo kerangka ML naon waé. Duanana ngalayanan bets offline sareng ngalayanan API online dirojong.
Server modél kinerja tinggi sareng alur kerja anu fleksibel mangrupikeun fitur BentoML.
Salaku tambahan, server nawiskeun micro-batching adaptif. Pendekatan anu ngahijikeun pikeun ngatur modél sareng ngalacak prosedur panyebaran disayogikeun ku dasbor UI.
Henteu aya downtime server sabab mékanisme operasi modular sareng konfigurasi tiasa dianggo deui. Éta mangrupikeun platform anu fleksibel pikeun nyayogikeun, ngatur, sareng nyebarkeun modél ML.
Éta nawiskeun:
- Éta ngagaduhan desain modular anu tiasa adaptasi.
- Éta ngamungkinkeun panyebaran dina sababaraha platform.
- Éta henteu tiasa sacara otomatis nanganan skala horisontal.
- Éta ngamungkinkeun format modél tunggal, manajemén modél, bungkusan modél, sareng ngalayanan modél kinerja tinggi.
10. jarang
Élmuwan data tiasa nyiptakeun, nyebarkeun, sareng ngatur modél pembelajaran mesin sareng ékspérimén dina skala dina Kubernetes nganggo kerangka Seldon Core open-source.
TensorFlow, sci-kit-learn, Spark, R, Java, sareng H2O ngan ukur sababaraha toolkit anu dirojong ku éta.
Éta ogé ngahubungkeun sareng Kubeflow sareng RedHat's OpenShift. Inti Seldon ngarobih modél pembelajaran mesin (model ML) atanapi bungkus basa (basa sapertos Python, Java, jsb.) kana produksi REST / GRPC microservices.
Salah sahiji alat MLOps pangsaéna pikeun ningkatkeun prosés pembelajaran mesin nyaéta ieu.
Gampang wadahna model ML sareng uji pikeun kagunaan sareng kaamanan nganggo Seldon Core.
Éta nawiskeun:
- deployment model bisa dijieun basajan kalawan sababaraha alternatif, kayaning deployment kanari.
- Pikeun ngarti naha prediksi husus dijieun, make explainers model.
- Nalika masalah timbul, perhatikeun modél produksi nganggo sistem peringatan.
kacindekan
MLOps tiasa ngabantosan pikeun ngajantenkeun operasi pembelajaran mesin langkung saé. MLOps tiasa nyepetkeun panyebaran, ngajantenkeun pangumpulan data sareng debugging langkung saderhana, sareng ningkatkeun kolaborasi antara insinyur sareng ilmuwan data.
Supados anjeun tiasa milih alat MLOps anu paling cocog sareng kabutuhan anjeun, tulisan ieu nalungtik 10 solusi MLOps anu populer, anu kalolobaanana open-source.
Leave a Reply