Disa sektorë globalë kanë filluar të investojnë më shumë në mësimin e makinerive (ML).
Modelet ML mund të lansohen dhe operohen fillimisht nga ekipe specialistësh, por një nga pengesat më të mëdha është transferimi i njohurive të marra në modelin tjetër në mënyrë që proceset të zgjerohen.
Për të përmirësuar dhe standardizuar proceset e përfshira në menaxhimin e ciklit të jetës së modelit, teknikat MLOps po përdoren gjithnjë e më shumë nga ekipet që krijojnë modele të mësimit të makinerive.
Vazhdoni të lexoni për të mësuar më shumë rreth disa prej mjeteve dhe platformave më të mira MLOps të disponueshme sot dhe se si ato mund ta bëjnë më të lehtë mësimin e makinerive nga një mjet, zhvillues dhe një këndvështrim procedural.
Çfarë është MLOps?
Një teknikë për krijimin e politikave, normave dhe praktikave më të mira për modelet e mësimit të makinerive njihet si "operacionet e mësimit të makinës" ose "MLOps".
MLOps synon të garantojë të gjithë ciklin jetësor të zhvillimit të ML - nga konceptimi deri në vendosjen - është i dokumentuar dhe menaxhuar me përpikëri për rezultatet më të mira në vend që të investojë shumë kohë dhe burime në të pa një strategji.
Qëllimi i MLOps është të kodifikojë praktikat më të mira në një mënyrë që e bën zhvillimin e mësimit të makinerive më të shkallëzuar për operatorët dhe zhvilluesit e ML, si dhe për të rritur cilësinë dhe sigurinë e modeleve ML.
Disa i referohen MLOps si "DevOps për mësimin e makinerive" pasi zbaton me sukses parimet e DevOps në një fushë më të specializuar të zhvillimit teknologjik.
Kjo është një mënyrë e dobishme për të menduar për MLOps sepse, ashtu si DevOps, ajo thekson ndarjen e njohurive, bashkëpunimin dhe praktikat më të mira midis ekipeve dhe mjeteve.
MLOps u ofron zhvilluesve, shkencëtarëve të të dhënave dhe ekipeve të operacioneve një kornizë për të bashkëpunuar dhe, si rezultat, për të prodhuar modelet më të fuqishme të ML.
Pse të përdorni MLOps Tools?
Mjetet MLOps mund të kryejnë një gamë të gjerë detyrash për një ekip ML, megjithatë, ato shpesh ndahen në dy grupe: administrimi i platformës dhe menaxhimi i komponentëve individualë.
Ndërsa disa produkte MLOps fokusohen vetëm në një funksion të vetëm thelbësor, si menaxhimi i të dhënave ose meta të dhënave, mjete të tjera miratojnë një strategji më gjithëpërfshirëse dhe ofrojnë një platformë MLOps për të kontrolluar disa aspekte të ciklit jetësor të ML.
Kërkoni zgjidhje MLOps që ndihmojnë ekipin tuaj në menaxhimin e këtyre zonave të zhvillimit të ML, pavarësisht nëse jeni duke kërkuar për një specialist apo një mjet më të gjerë:
- Trajtimi i të dhënave
- Dizajn dhe modelim
- Menaxhimi i projekteve dhe vendit të punës
- Vendosja e modelit ML dhe mirëmbajtja e vazhdueshme
- Menaxhimi i ciklit të jetës nga fillimi në fund, i cili zakonisht ofrohet nga platformat MLOps me shërbim të plotë.
MLOps Mjetet
1. MLFlow
Cikli i jetës së mësimit të makinerive kontrollohet nga platforma me burim të hapur MLflow dhe përfshin regjistrimin, vendosjen dhe eksperimentimin e modelit qendror.
MLflow mund të përdoret nga çdo ekip përmasash, si individualisht ashtu edhe kolektivisht. Bibliotekat nuk kanë asnjë ndikim në mjet.
Çdo gjuhë programimi dhe bibliotekë e mësimit të makinerive mund ta përdorë atë.
Për ta bërë më të thjeshtë trajnimin, vendosjen dhe menaxhimin e aplikacioneve të mësimit të makinerive, MLFlow ndërvepron me një sërë kornizash të mësimit të makinerive, duke përfshirë TensorFlow dhe Pytorch.
Për më tepër, MLflow ofron API të lehtë për t'u përdorur që mund të përfshihen në çdo program ose bibliotekë ekzistuese të mësimit të makinerive.
MLflow ka katër karakteristika kryesore që lehtësojnë gjurmimin dhe planifikimin e eksperimenteve:
- Ndjekja e MLflow – një API dhe UI për regjistrimin e parametrave të kodit të mësimit të makinerive, versioneve, metrikave dhe objekteve, si dhe për shfaqjen dhe kundërvënien e rezultateve të mëvonshme
- Projektet MLflow – paketimi i kodit të mësimit të makinerive në një format të ripërdorshëm, të riprodhueshëm për transferim në prodhim ose ndarje me shkencëtarë të tjerë të të dhënave
- Modelet MLflow – mirëmbajtja dhe vendosja e modeleve në një sërë sistemesh shërbimi modelesh dhe konkluzionesh nga biblioteka të ndryshme ML
- Regjistri i Modeleve MLflow – një dyqan qendror modelesh që mundëson menaxhimin bashkëpunues të gjithë jetëgjatësisë së një modeli MLflow, duke përfshirë versionimin e modelit, tranzicionet e skenës dhe shënimet.
2. KubeFlow
Kutia e veglave ML për Kubernetes quhet Kubeflow. Paketimi dhe menaxhimi i kontejnerëve Docker, ndihmon në mirëmbajtjen e sistemet e mësimit të makinerive.
Duke thjeshtuar orkestrimin e ekzekutimit dhe vendosjen e flukseve të punës së mësimit të makinerive, ai promovon shkallëzueshmërinë e modeleve të mësimit të makinerive.
Është një projekt me burim të hapur që përfshin një grup të zgjedhur me kujdes mjetesh dhe kornizash plotësuese të përshtatura për nevoja të ndryshme të ML.
Detyrat e gjata të trajnimit ML, eksperimentimi manual, përsëritshmëria dhe sfidat e DevOps mund të trajtohen me Kubeflow Pipelines.
Për disa faza të mësimit të makinerive, duke përfshirë trajnimin, zhvillimin e tubacionit dhe mirëmbajtjen e fletoret Jupyter, Kubeflow ofron shërbime të specializuara dhe integrim.
Kjo e bën të thjeshtë menaxhimin dhe gjurmimin e jetëgjatësisë së ngarkesave tuaja të AI, si dhe vendosjen e modeleve të mësimit të makinerive (ML) dhe tubacioneve të të dhënave në grupimet Kubernetes.
Ajo ofron:
- Fletore për përdorimin e SDK-së për të bashkëvepruar me sistemin
- një ndërfaqe përdoruesi (UI) për kontrollin dhe monitorimin e ekzekutimeve, punëve dhe eksperimenteve
- Për të dizajnuar me shpejtësi zgjidhje nga fundi në fund pa pasur nevojë të rindërtoni çdo herë dhe të ripërdorni komponentë dhe tubacione.
- Si një komponent kyç i Kubeflow ose si një instalim i pavarur, Kubeflow Pipelines ofrohet.
3. Kontrolli i versionit të të dhënave
Një zgjidhje e kontrollit të versionit me burim të hapur për projektet e mësimit të makinerive quhet DVC, ose Kontrolli i Versionit të të Dhënave.
Cilado qoftë gjuha që zgjidhni, është një mjet eksperimental që ndihmon në përcaktimin e tubacionit.
DVC përdor kodin, versionimin e të dhënave dhe riprodhueshmërinë për t'ju ndihmuar të kurseni kohë kur zbuloni një problem me një version të mëparshëm të modelit tuaj ML.
Për më tepër, ju mund të përdorni tubacionet DVC për të trajnuar modelin tuaj dhe për ta shpërndarë atë tek anëtarët e ekipit tuaj. Organizimi dhe versionimi i të dhënave të mëdha mund të trajtohen nga DVC dhe të dhënat mund të ruhen në një mënyrë lehtësisht të arritshme.
Megjithëse përfshin disa veçori (të kufizuara) të gjurmimit të eksperimentit, ai kryesisht fokusohet në versionimin dhe menaxhimin e të dhënave dhe tubacioneve.
Ajo ofron:
- Është agnostik i ruajtjes, prandaj është e mundur të përdoren lloje të ndryshme magazinimi.
- Ai gjithashtu ofron statistika të gjurmimit.
- një mjet i para-ndërtuar për bashkimin e fazave të ML në një DAG dhe drejtimin e të gjithë tubacionit nga fillimi në fund
- I gjithë zhvillimi i çdo modeli ML mund të ndiqet duke përdorur të gjithë kodin e tij dhe origjinën e të dhënave.
- Riprodhueshmëria duke ruajtur me besnikëri konfigurimin fillestar, të dhënat hyrëse dhe kodin e programit për një eksperiment.
4. Pachyderm
Pachyderm është një program i kontrollit të versionit për mësimin e makinerive dhe shkencën e të dhënave, i ngjashëm me DVC.
Për më tepër, sepse është krijuar duke përdorur Docker dhe Kubernetes, ai mund të ekzekutojë dhe vendosë aplikacione të Mësimit të Makinerisë në çdo platformë cloud.
Pachyderm garanton që çdo pjesë e të dhënave që konsumohet në një model të mësimit të makinerive mund të gjurmohet dhe të modifikohet.
Përdoret për të krijuar, shpërndarë, menaxhuar dhe mbajtur një sy në modelet e mësimit të makinerive. Një regjistër modeli, një sistem i menaxhimit të modelit dhe një kuti mjetesh CLI janë të përfshira të gjitha.
Zhvilluesit mund të automatizojnë dhe zgjerojnë ciklin e tyre jetësor të mësimit të makinerive duke përdorur bazën e të dhënave të Pachyderm, i cili gjithashtu siguron përsëritshmëri.
Ai mbështet standarde të rrepta të qeverisjes së të dhënave, ul kostot e përpunimit dhe ruajtjes së të dhënave dhe ndihmon bizneset të sjellin më shpejt në treg nismat e tyre të shkencës së të dhënave.
5. Polyaksoni
Duke përdorur platformën Polyaxon, projektet e mësimit të makinerive dhe aplikacionet e mësimit të thellë mund të përsëriten dhe menaxhohen gjatë gjithë ciklit të tyre jetësor.
Polyaxon është në gjendje të presë dhe administrojë mjetin, dhe mund të vendoset në çdo qendër të dhënash ose ofrues cloud. Të tilla si Torch, Tensorflow dhe MXNet, të cilat mbështesin të gjitha kornizat më të njohura të të mësuarit të thellë.
Kur bëhet fjalë për orkestrimin, Polyaxon ju mundëson të përfitoni sa më shumë nga grupi juaj duke planifikuar detyrat dhe testet përmes CLI, panelit të kontrollit, SDK-ve ose API-së REST.
Ajo ofron:
- Ju mund të përdorni versionin me burim të hapur tani, por ai gjithashtu përfshin zgjedhje për korporatën.
- Edhe pse mbulon të gjithë ciklin e jetës, duke përfshirë orkestrimin e drejtuar, ai është i aftë për shumë më tepër.
- Me dokumentet e referencës teknike, udhëzimet për fillimin, materialet mësimore, manualet, udhëzimet, regjistrat e ndryshimeve dhe më shumë, është një platformë shumë e mirë-dokumentuar.
- Me pultin e informacioneve të eksperimentit, është e mundur të vëzhgoni, gjurmoni dhe vlerësoni çdo eksperiment optimizimi.
6. kometë
Comet është një platformë për mësimin e meta makinerive që gjurmon, kontraston, shpjegon dhe përmirëson eksperimentet dhe modelet.
Të gjitha eksperimentet tuaja mund të shihen dhe krahasohen në një vend.
Ai funksionon për çdo detyrë të mësimit të makinerive, kudo ku kryhet kodi juaj dhe me çdo bibliotekë të mësimit të makinerive.
Comet është i përshtatshëm për grupe, individë, institucione akademike, biznese dhe këdo tjetër që dëshiron të vizualizojë shpejt eksperimentet, të thjeshtojë punën dhe të kryejë eksperimente.
Shkencëtarët dhe ekipet e të dhënave mund të gjurmojnë, sqarojnë, përmirësojnë dhe krahasojnë eksperimentet dhe modelet duke përdorur platformën e të mësuarit të meta-makinave të vetë-pritur dhe të bazuar në renë kompjuterike Comet.
Ajo ofron:
- Ekzistojnë shumë aftësi për anëtarët e ekipit për të ndarë detyrat.
- Ai ka disa integrime që e bëjnë të thjeshtë lidhjen e tij me teknologji të tjera
- Funksionon mirë me bibliotekat aktuale ML
- Kujdeset për menaxhimin e përdoruesve
- Krahasimi i eksperimenteve është aktivizuar, duke përfshirë një krahasim të kodit, hiperparametrave, metrikës, parashikimeve, varësive dhe matjeve të sistemit.
- Ofron module të dallueshme për vizionin, audion, tekstin dhe të dhënat tabelare që ju lejojnë të vizualizoni mostrat.
7. Zgjedh
Optuna është një sistem për optimizimin autonom të hiperparametrave që mund të aplikohet si për mësimin e makinerive ashtu edhe për mësimin e thellë, si dhe për fusha të tjera.
Ai përmban një sërë algoritmesh më të avancuara nga të cilat mund të zgjidhni (ose të lidhni), e bën shumë të thjeshtë shpërndarjen e trajnimit në shumë kompjuterë dhe ofron vizualizim tërheqës të rezultateve.
Bibliotekat e njohura të mësimit të makinerive si PyTorch, TensorFlow, Keras, FastAI, sci-kit-learn, LightGBM dhe XGBoost janë të gjitha të integruara me të.
Ai ofron algoritme të fundit që u mundësojnë klientëve të marrin rezultate më shpejt duke reduktuar me shpejtësi mostrat që nuk duken premtuese.
Duke përdorur algoritme të bazuara në Python, ai kërkon automatikisht për hiperparametrat idealë. Optuna inkurajon kërkimet e paralelizuara të hiperparametrave nëpër shumë tema pa ndryshuar kodin origjinal.
Ajo ofron:
- Ai mbështet trajnime të shpërndara në një grup, si dhe në një kompjuter të vetëm (me shumë procese) (me shumë nyje)
- Ai mbështet disa teknika shkurtimi për të shpejtuar konvergjencën (dhe për të përdorur më pak llogaritje)
- Ai ka një shumëllojshmëri vizualizimesh të fuqishme, të tilla si grafiku i fetave, komploti i konturit dhe koordinatat paralele.
8. Kedro
Kedro është një kornizë falas e Python për shkrimin e kodit që mund të përditësohet dhe mirëmbahet për projektet e shkencës së të dhënave.
Ai sjell ide nga praktikat më të mira në inxhinierinë e softuerit deri te kodi i mësimit të makinerive. Python është themeli i këtij mjeti orkestrimi të rrjedhës së punës.
Për t'i bërë proceset tuaja ML më të thjeshta dhe më të sakta, mund të zhvilloni flukse pune të riprodhueshme, të mirëmbajtura dhe modulare.
Kedro përfshin parimet e inxhinierisë së softuerit si modulariteti, ndarja e përgjegjësive dhe versionimi në një mjedis të mësimit të makinerisë.
Mbi bazën e Shkencës së të Dhënave të Cookiecutter, ai ofron një kuadër të përbashkët, të adaptueshëm të projektit.
Një numër i lidhësve të thjeshtë të të dhënave të përdorura për të ruajtur dhe ngarkuar të dhëna në disa sisteme skedarësh dhe formate skedarësh, menaxhohen nga katalogu i të dhënave. Ai i bën projektet e mësimit të makinerive më efektive dhe e bën më të thjeshtë ndërtimin e një tubacioni të dhënash.
Ajo ofron:
- Kedro lejon vendosjen e makinës ose të shpërndarë ose të vetmuar.
- Ju mund të automatizoni varësitë midis kodit Python dhe vizualizimit të rrjedhës së punës duke përdorur abstraksionin e tubacionit.
- Nëpërmjet përdorimit të kodit modular, të ripërdorshëm, kjo teknologji lehtëson bashkëpunimin ekipor në nivele të ndryshme dhe përmirëson produktivitetin në mjedisin e kodimit.
- Qëllimi kryesor është të kapërcehen të metat e fletoreve Jupyter, skriptet e njëhershme dhe kodet ngjitëse duke shkruar programe të qëndrueshme të shkencës së të dhënave.
9. BentoML
Ndërtimi i pikave fundore të API-së për mësimin e makinerive është bërë më i lehtë me BentoML.
Ai siguron një infrastrukturë tipike por të kondensuar për të zhvendosur modelet e mësuara të makinerisë në prodhim.
Kjo ju mundëson të paketoni modelet e mësuara për përdorim në një mjedis prodhimi, duke i interpretuar ato duke përdorur çdo kornizë ML. Mbështetet si shërbimi i grupit jashtë linje ashtu edhe shërbimi në internet API.
Një server model me performancë të lartë dhe një rrjedhë pune fleksibël janë veçori të BentoML.
Për më tepër, serveri ofron mikro-batching adaptiv. Një qasje e unifikuar për organizimin e modeleve dhe mbajtjen e gjurmëve të procedurave të vendosjes ofrohet nga paneli i UI.
Nuk do të ketë ndërprerje të serverit sepse mekanizmi i funksionimit është modular dhe konfigurimi është i ripërdorshëm. Është një platformë fleksibël për ofrimin, organizimin dhe vendosjen e modeleve ML.
Ajo ofron:
- Ka një dizajn modular që është i adaptueshëm.
- Ai mundëson vendosjen në disa platforma.
- Nuk mund të trajtojë automatikisht shkallëzimin horizontal.
- Ai mundëson një format të vetëm modeli, menaxhimin e modelit, paketimin e modelit dhe shërbimin e modelit me performancë të lartë.
10. seldon
Shkencëtarët e të dhënave mund të krijojnë, vendosin dhe menaxhojnë modele dhe eksperimente të mësimit të makinerive në shkallë në Kubernetes duke përdorur kornizën Seldon Core me burim të hapur.
TensorFlow, sci-kit-learn, Spark, R, Java dhe H2O janë vetëm disa nga mjetet që mbështeten prej tij.
Ai gjithashtu ndërlidhet me Kubeflow dhe OpenShift të RedHat. Bërthama Seldon transformon modelet e mësimit të makinerive (modelet ML) ose mbështjellëset e gjuhës (gjuhë si Python, Java, etj.) në mikroshërbime REST/GRPC të prodhimit.
Një nga mjetet më të mira MLOps për përmirësimin e proceseve të mësimit të makinerive është ky.
Është e thjeshtë për të kontejneruar modelet ML dhe për të testuar për përdorshmërinë dhe sigurinë duke përdorur Seldon Core.
Ajo ofron:
- Vendosja e modelit mund të bëhet më e thjeshtë me disa alternativa, të tilla si vendosja e kanarinave.
- Për të kuptuar pse janë bërë parashikime specifike, përdorni shpjeguesit e modelit.
- Kur lindin probleme, mbani një sy në modelet e prodhimit duke përdorur sistemin e alarmit.
Përfundim
MLO-të mund të ndihmojnë në përmirësimin e operacioneve të mësimit të makinerive. MLO-të mund të përshpejtojnë vendosjen, të bëjnë më të thjeshtë mbledhjen dhe korrigjimin e të dhënave dhe të përmirësojnë bashkëpunimin midis inxhinierëve dhe shkencëtarëve të të dhënave.
Në mënyrë që ju të zgjidhni mjetin MLOps që i përshtatet më së miri nevojave tuaja, ky postim shqyrtoi 10 zgjidhje të njohura MLOps, shumica e të cilave janë me burim të hapur.
Lini një Përgjigju