Pluraj tutmondaj sektoroj komencas investi pli multe en maŝinlernado (ML).
ML-modeloj povas esti komence lanĉitaj kaj funkciigitaj de teamoj de specialistoj, sed unu el la plej grandaj obstakloj estas transdoni la scion akiritan al la sekva modelo tiel ke procezoj povas esti vastigitaj.
Por plibonigi kaj normigi la procezojn implikitajn en modela vivciklo-administrado, MLOps-teknikoj estas ĉiam pli uzataj de la teamoj kiuj kreas maŝinlernajn modelojn.
Daŭre legas por ekscii pli pri iuj el la plej bonaj MLOps-iloj kaj platformoj disponeblaj hodiaŭ kaj kiel ili povas faciligi maŝinlernadon de ilo, programisto kaj procedura vidpunkto.
Kio estas MLOps?
Tekniko por krei politikojn, normojn kaj plej bonajn praktikojn por maŝinlernadaj modeloj estas konata kiel "maŝinlernadaj operacioj" aŭ "MLOps".
MLOps celas garantii ke la tuta vivociklo de ML-evoluo - de koncepto ĝis deplojo - estas zorge dokumentita kaj administrita por la plej bonaj rezultoj prefere ol investi multan tempon kaj rimedojn en ĝi sen strategio.
La celo de MLOps estas kodigi plej bonajn praktikojn en maniero kiel kiu igas maŝinlernadon pli skalebla por ML-funkciigistoj kaj programistoj, same kiel plibonigi la kvaliton kaj sekurecon de ML-modeloj.
Iuj nomas MLOps "DevOps por maŝinlernado" ĉar ĝi sukcese aplikas DevOps-principojn al pli specialeca kampo de teknologia evoluo.
Ĉi tio estas utila maniero pensi pri MLOps ĉar, kiel DevOps, ĝi emfazas scion kundividon, kunlaboron kaj plej bonajn praktikojn inter teamoj kaj iloj.
MLOps provizas programistojn, datumajn sciencistojn kaj operaciajn teamojn per kadro por kunlabori kaj, kiel rezulto, produkti la plej potencajn ML-modelojn.
Kial Uzi MLOps Ilojn?
MLOps-iloj povas plenumi larĝan gamon de devoj por ML-teamo, tamen ili ofte estas dividitaj en du grupojn: platformadministrado kaj individua komponentadministrado.
Dum kelkaj MLOps-produktoj temigas nur ununuran kernfunkcion, kiel ekzemple datenoj aŭ metadatenoj-administrado, aliaj iloj adoptas pli tute ampleksan strategion kaj disponigas MLOps-platformon por kontroli plurajn aspektojn de la ML-vivciklo.
Serĉu MLOps-solvojn, kiuj helpas vian teamon administri ĉi tiujn ML-disvolvajn areojn, ĉu vi serĉas specialiston aŭ pli larĝan ilon:
- Pritraktado de datumoj
- Dezajno kaj modeligado
- Administrado de projektoj kaj laborejo
- ML-modeldeplojo kaj kontinua prizorgado
- Vivciklo-administrado de komenco ĝis fino, kiu estas tipe ofertita de plenservaj MLOps-platformoj.
MLOps Iloj
1. MLFlow
La maŝinlernada vivociklo estas kontrolita de la malfermfonta platformo MLflow kaj inkluzivas centran modelregistradon, deplojon kaj eksperimentadon.
MLflow povas esti uzata de ajna grandeca teamo, kaj individue kaj kolektive. Bibliotekoj havas nenian influon sur la ilo.
Ajna programlingvo kaj maŝinlernada biblioteko povas uzi ĝin.
Por plifaciligi trejni, deploji kaj administri maŝinlernadaplikojn, MLFlow interagas kun kelkaj maŝinlernadaj kadroj, inkluzive de TensoroFluo kaj Pytorch.
Aldone, MLflow provizas facile uzeblajn API-ojn, kiuj povas esti inkluzivitaj en iuj ekzistantaj maŝinlernantaj programoj aŭ bibliotekoj.
MLflow havas kvar ĉefajn funkciojn, kiuj faciligas spuradon kaj planajn eksperimentojn:
- MLflow Tracking - API kaj UI por registri maŝinlernajn kodparametrojn, versiojn, metrikojn kaj artefaktojn same kiel por poste montri kaj kontrasti la rezultojn
- MLflow Projects - paka maŝinlernada kodo en reciklebla, reproduktebla formato por translokigo al produktado aŭ kunhavigo kun aliaj datumsciencistoj
- MLflow Models - konservado kaj deplojado de modeloj al gamo da modelservado kaj inferencaj sistemoj de diversaj ML-bibliotekoj
- MLflow Model Registry - centra modelbutiko kiu ebligas kunlaboran administradon de la tuta vivotempo de MLflow-modelo, inkluzive de modelversiado, scentransiroj, kaj komentarioj.
2. KubeFlow
La ML-ilokesto por Kubernetes nomiĝas Kubeflow. Pakado kaj administrado de Docker-ujoj, helpas pri bontenado de maŝinlernsistemoj.
Simpligante rulinstrumentadon kaj deplojojn de maŝinlernadaj laborfluoj, ĝi antaŭenigas la skaleblon de maŝinlernado-modeloj.
Ĝi estas malfermfonta projekto kiu inkluzivas zorge elektitan grupon de komplementaj iloj kaj kadroj adaptitaj al malsamaj ML-bezonoj.
Longaj ML-trejnadtaskoj, mana eksperimentado, ripeteblo kaj DevOps-defioj povas esti traktitaj per Kubeflow Pipelines.
Por pluraj stadioj de maŝinlernado, inkluzive de trejnado, disvolvo de dukto kaj prizorgado de Jupyter kajeroj, Kubeflow ofertas specialigitajn servojn kaj integriĝon.
Ĝi faciligas administri kaj spuri la vivdaŭron de viaj AI-laborkvantoj kaj ankaŭ deploji maŝinlernadon (ML) modelojn kaj datumduktojn al Kubernetes-aretoj.
Ĝi ofertas:
- Kajeroj por uzi la SDK por interagi kun la sistemo
- uzantinterfaco (UI) por kontroli kaj monitori kurojn, laborlokojn kaj eksperimentojn
- Por rapide desegni fin-al-finajn solvojn sen devi rekonstrui ĉiun fojon, kaj reuzi komponentojn kaj duktojn.
- Kiel ŝlosila komponanto de Kubeflow aŭ kiel memstara instalado, Kubeflow Pipelines estas ofertita.
3. Kontrolo de Datumoj
Malfermfonta versio-kontrolsolvo por maŝinlernado-projektoj estas nomita DVC, aŭ Data Version Control.
Kian ajn lingvon vi elektas, ĝi estas eksperimenta ilo, kiu helpas difinon de dukto.
DVC uzas kodon, datuman version kaj reprodukteblecon por helpi vin ŝpari tempon kiam vi malkovras problemon kun pli frua versio de via ML-modelo.
Aldone, vi povas uzi DVC-duktojn por trejni vian modelon kaj distribui ĝin al viaj teamanoj. Granda datuma organizo kaj versionado povas esti pritraktitaj de DVC, kaj la datumoj povas esti stokitaj en facile alirebla maniero.
Kvankam ĝi inkluzivas kelkajn (limigitajn) eksperimentajn spurajn funkciojn, ĝi plejparte fokusiĝas al datumo kaj dukto-versiado kaj administrado.
Ĝi ofertas:
- Ĝi estas agnostika stokado, tial eblas uzi diversajn stokadspecojn.
- Ĝi ankaŭ provizas spurajn statistikojn.
- antaŭkonstruita rimedo por kunigi ML-stadiojn en DAG kaj prizorgi la tutan dukton de komenco ĝis fino.
- La tuta evoluo de ĉiu ML-modelo povas esti sekvita uzante ĝian tutan kodon kaj datendevenon.
- Reproduktebleco fidele konservante la komencan agordon, enigajn datumojn kaj programkodon por eksperimento.
4. Pakidermo
Pachyderm estas versio-kontrola programo por maŝinlernado kaj datumscienco, simila al DVC.
Aldone, ĉar ĝi estis kreita uzante Docker kaj Kubernetes, ĝi povas efektivigi kaj disfaldi aplikaĵojn por Maŝinlernado sur ajna nuba platformo.
Pachyderm garantias, ke ĉiu datumo, kiu estas konsumita en maŝinlernada modelo, povas esti spurita kaj versionita.
Ĝi estas uzata por krei, distribui, administri kaj observi maŝinlernajn modelojn. Modelregistro, modela mastruma sistemo kaj CLI-ilo estas ĉiuj inkluzivitaj.
Programistoj povas aŭtomatigi kaj vastigi sian maŝinlernan vivciklon uzante la datuman bazon de Pachyderm, kiu ankaŭ certigas ripeteblon.
Ĝi subtenas striktajn datumregadnormojn, malaltigas datumtraktadon kaj stokadokostojn, kaj helpas entreprenojn alporti siajn datumsciencajn iniciatojn pli rapide surmerkatigi.
5. Polyaxon
Uzante la platformon Polyaxon, maŝinlernadaj projektoj kaj profundlernadaplikoj povas esti reproduktitaj kaj administritaj dum sia tuta vivociklo.
Polyaxon kapablas gastigi kaj administri la ilon, kaj ĝi povas esti metita en ajnan datumcentron aŭ nuban provizanton. Kiel Torch, Tensorflow kaj MXNet, kiuj subtenas ĉiujn plej popularajn profundajn lernajn kadrojn.
Kiam temas pri instrumentado, Polyaxon ebligas al vi utiligi vian areton per planado de taskoj kaj testoj per ilia CLI, panelo, SDK-oj aŭ REST API.
Ĝi ofertas:
- Vi povas uzi la malfermfontan version nun, sed ĝi ankaŭ inkluzivas elektojn por la kompania.
- Kvankam ĝi kovras la kompletan vivociklon, inkluzive de rulinstrumentado, ĝi kapablas multe pli.
- Kun teknikaj referencdokumentoj, komencaj gvidlinioj, lernomaterialoj, manlibroj, lerniloj, ŝanĝprogramoj kaj pli, ĝi estas tre bone dokumentita platformo.
- Kun la panelo de eksperimentaj komprenoj, eblas observi, spuri kaj taksi ĉiun optimumigan eksperimenton.
6. kometo
Comet estas platformo por metamaŝina lernado, kiu spuras, kontrastas, klarigas kaj plibonigas eksperimentojn kaj modelojn.
Ĉiuj viaj eksperimentoj povas esti viditaj kaj komparitaj en unu loko.
Ĝi funkcias por ajna maŝinlernada tasko, ie ajn via kodo estas farita, kaj kun iu ajn maŝinlernada biblioteko.
Comet taŭgas por grupoj, individuoj, akademiaj institucioj, entreprenoj kaj iu ajn alia, kiu deziras rapide bildigi eksperimentojn, simpligi laboron kaj fari eksperimentojn.
Datumsciencistoj kaj teamoj povas spuri, klarigi, plibonigi kaj kompari eksperimentojn kaj modelojn uzante la memgastigitan kaj nub-bazitan meta-maŝinan lernan platformon Comet.
Ĝi ofertas:
- Multaj kapabloj ekzistas por teamanoj por dividi taskojn.
- Ĝi havas plurajn integriĝojn, kiuj faciligas ligi ĝin al aliaj teknologioj
- Funkcias bone kun nunaj ML-bibliotekoj
- Prizorgas uzantadministradon
- Komparo de eksperimentoj estas ebligita, inkluzive de komparo de kodo, hiperparametroj, metrikoj, prognozoj, dependecoj kaj sistemaj metrikoj.
- Provizas apartajn modulojn por vidado, aŭdo, teksto kaj tabelaj datumoj, kiuj ebligas al vi bildigi specimenojn.
7. Elektu
Optuna estas sistemo por aŭtonoma hiperparametro-optimumigo, kiu povas esti aplikita al kaj maŝinlernado kaj profunda lernado same kiel al aliaj kampoj.
Ĝi enhavas diversajn avangardajn algoritmojn el kiuj vi povas elekti (aŭ ligi), tre simplas distribui trejnadon per multaj komputiloj kaj ofertas allogajn rezultojn-bildigon.
Popularaj maŝinlernantaj bibliotekoj kiel PyTorch, TensorFlow, Keras, FastAI, sci-kit-learn, LightGBM kaj XGBoost estas ĉiuj integritaj al ĝi.
Ĝi provizas avangardajn algoritmojn, kiuj ebligas al klientoj akiri rezultojn pli rapide rapide reduktante la specimenojn, kiuj ne aspektas promesplenaj.
Uzante Python-bazitajn algoritmojn, ĝi aŭtomate serĉas la idealajn hiperparametrojn. Optuna instigas paraleligitajn hiperparametroserĉojn tra multaj fadenoj sen ŝanĝado de la origina kodo.
Ĝi ofertas:
- Ĝi subtenas distribuitan trejnadon sur areto same kiel ununura komputilo (mult-procezo) (mult-nodo)
- Ĝi subtenas plurajn tonditajn teknikojn por akceli konverĝon (kaj uzi malpli da komputado)
- Ĝi havas diversajn potencajn bildigojn, kiel tranĉaĵintrigon, konturan intrigon kaj paralelajn koordinatojn.
8. Kedro
Kedro estas senpaga Python-kadro por skribi kodon, kiu povas esti ĝisdatigita kaj konservita por datumsciencaj projektoj.
Ĝi alportas ideojn de plej bonaj praktikoj en programaro-inĝenierado al maŝinlernada kodo. Python estas la fundamento de ĉi tiu laborflua orkestra ilo.
Por fari viajn ML-procezojn pli simplaj kaj precizaj, vi povas evoluigi reprodukteblajn, konserveblajn kaj modulajn laborfluojn.
Kedro inkluzivas principojn de programaro-inĝenierado kiel modulareco, apartigo de respondecoj kaj versio en maŝinlernadmedion.
Surbaze de Cookiecutter Data Science, ĝi disponigas oftan, adapteblan projektkadron.
Kelkaj simplaj datumkonektiloj uzataj por stoki kaj ŝargi datumojn tra pluraj dosiersistemoj kaj dosierformatoj, estas administritaj de la datumkatalogo. Ĝi igas maŝinlernajn projektojn pli efikaj kaj faciligas konstrui datumdukton.
Ĝi ofertas:
- Kedro permesas aŭ disigitan aŭ solecan maŝindeplojon.
- Vi povas aŭtomatigi dependecojn inter Python-kodo kaj laborflua bildigo per dukta abstraktado.
- Per la uzo de modula, reuzebla kodo, ĉi tiu teknologio faciligas teaman kunlaboron sur diversaj niveloj kaj plibonigas produktivecon en la kodiga medio.
- La ĉefa celo estas venki la malavantaĝojn de Jupyter kajeroj, unufojaj skriptoj kaj glukodo skribante konserveblan datuman sciencan programadon.
9. BentoML
Konstruado de maŝinlernado de API-finpunktoj plifaciliĝas kun BentoML.
Ĝi disponigas tipan ankoraŭ densigitan infrastrukturon por movi lernitajn maŝinlernajn modelojn en produktadon.
Ĝi ebligas vin paki lernitajn modelojn por uzado en produktada medio, interpretante ilin uzante ajnan ML-kadron. Ambaŭ eksterreta bata servado kaj interreta API-servado estas subtenataj.
Alt-efikeca modelservilo kaj fleksebla laborfluo estas trajtoj de BentoML.
Aldone, la servilo ofertas adaptan mikro-baton. Unuigita aliro por organizi modelojn kaj konservi trakon de deplojproceduroj estas disponigita per la UI-panelo.
Ne estos servila malfunkcio ĉar la operaciumo estas modula kaj la agordo estas reuzebla. Ĝi estas fleksebla platformo por provizi, organizi kaj disfaldi ML-modelojn.
Ĝi ofertas:
- Ĝi havas modulan dezajnon, kiu estas adaptebla.
- Ĝi ebligas deplojon tra pluraj platformoj.
- Ĝi ne povas aŭtomate trakti horizontalan skaladon.
- Ĝi ebligas ununuran modelformaton, modeladministradon, modelpakadon, kaj alt-efikecan modelservadon.
10. seldon
Datumsciencistoj povas krei, deploji kaj administri maŝinlernajn modelojn kaj eksperimentojn je skalo sur Kubernetes uzante la malfermfontan kadron Seldon Core.
TensorFlow, sci-kit-learn, Spark, R, Java kaj H2O estas nur kelkaj el la ilaro subtenataj de ĝi.
Ĝi ankaŭ interfacas kun Kubeflow kaj OpenShift de RedHat. La Seldon-kerno transformas maŝinlernajn modelojn (ML-modelojn) aŭ lingvajn envolvaĵojn (lingvoj kiel Python, Java, ktp.) en produktadajn REST/GRPC-mikroservojn.
Unu el la plej bonaj MLOps-iloj por plibonigi maŝinlernajn procezojn estas ĉi tiu.
Estas simple kontenerigi ML-modelojn kaj testi pri uzebleco kaj sekureco uzante Seldon Core.
Ĝi ofertas:
- Modeldeplojo povas fariĝi pli simpla kun pluraj alternativoj, kiel ekzemple kanaria deplojo.
- Por kompreni kial specifaj antaŭdiroj estis faritaj, uzu modelklarigilojn.
- Kiam problemoj aperas, rigardu la produktadmodelojn uzante la alarman sistemon.
konkludo
MLOps povas helpi plibonigi maŝinlernajn operaciojn. MLOps povas akceli deplojon, simpligi datumkolektadon kaj senararigadon kaj plibonigi kunlaboron inter inĝenieroj kaj datumsciencistoj.
Por ke vi elektu la MLOps-ilon, kiu plej taŭgas por viaj bezonoj, ĉi tiu afiŝo ekzamenis 10 popularajn MLOps-solvojn, la plej multaj el kiuj estas malfermfontaj.
Lasi Respondon