O tagata uma na taumafai i le atinaʻeina o masini e malamalama i le faigata. E ese mai i faʻafitauli masani i le atinaʻeina o polokalama, o le atinaʻeina o masini (ML) e faʻaalia ai le tele o faʻalavelave faʻaopoopo.
E fiaselau mea faigaluega fa'apitoa e avanoa e fesoasoani i la'asaga uma o le olaga ML, mai le tapenaina o fa'amaumauga e ala i a'oa'oga fa'ata'ita'iga.
E le pei o le atina'eina o polokalame masani, pe a filifilia e 'au se meafaigaluega se tasi mo la'asaga ta'itasi, fa'atasi ai ma le ML e masani ona e mana'o e su'esu'e meafaigaluega uma e maua (fa'ata'ita'iga, algorithm) e va'ai pe fa'aleleia ai taunu'uga.
O se taunuuga, e tatau i le au atiaʻe ML ona faʻaogaina ma gaosia le faitau selau o faletusi.
O masini a'oa'oga algorithms o lo'o i ai le faitau afe o fa'asologa fa'apitoa, ma e faigata ona iloa po'o fea ta'iala, code, ma fa'amaumauga na alu i fa'ata'ita'iga ta'itasi e fa'atupu ai se fa'ata'ita'iga, pe e te galue na'o oe pe i se 'au.
A aunoa ma le mata'ituina lelei, e masani ona tauivi 'au e toe maua le code tutusa e toe galue. Pe o oe o se saienitisi faʻamatalaga e tuʻuina atu lau code aʻoaʻoga i se inisinia mo le faʻaogaina o le gaosiga, pe e te toe foʻi i lau galuega talu ai e faʻamaonia ai se faʻafitauli, e taua tele le solomuli o laasaga o le ML workflow.
O le fa'auluina o se fa'ata'ita'iga i le gaosiga e ono faigata ona o le tele o metotia fa'apipi'i ma si'osi'omaga e tatau ona fa'aoga (fa'ata'ita'iga, REST tautua, fa'aputuga fa'aputuga, po'o telefoni feavea'i). E leai se auala masani mo le faʻanofoina o faʻataʻitaʻiga mai soʻo se faletusi i soʻo se tasi o nei meafaigaluega, ma o lea e faʻaalia ai e faʻapipiʻi fou taʻitasi se lamatiaga.
Ona o nei fa'afitauli, e manino lava e tatau ona fa'aleleia atili le atina'e o le ML ina ia mautu, va'aia, ma fa'aoga lautele e pei o le atina'eina o polokalame masani.
ML Lu'i
- E i ai le tele o meafaigaluega eseese. E fiaselau fofo fa'akomepiuta o lo'o avanoa e fesoasoani i la'asaga uma o le fa'asologa o le olaga a'oa'oina o masini, mai le tapenaina o fa'amaumauga e o'o atu i a'oa'oga fa'ata'ita'iga. E le gata i lea, e le pei o le atinaʻeina o polokalame masani, pe a filifilia e 'au se meafaigaluega mo laasaga taʻitasi, ile masini aʻoaʻoga (ML), e masani ona e manaʻo e suʻesuʻe meafaigaluega uma e maua (faʻataʻitaʻiga, algorithm) e vaʻai pe faʻaleleia taunuuga. O se taunuuga, e tatau i le au atiaʻe ML ona faʻaogaina ma gaosia le faitau selau o faletusi.
- E faigata ona siaki su'ega. O masini a'oa'oga algorithms o lo'o i ai le faitau afe o fa'asologa fa'apitoa, ma e faigata ona iloa po'o fea ta'iala, code, ma fa'amaumauga na alu i fa'ata'ita'iga ta'itasi e fa'atupu ai se fa'ata'ita'iga, pe e te galue na'o oe pe i se 'au.
- E faigata ona faʻatinoina masini aʻoaʻoga. O le fa'auluina o se fa'ata'ita'iga i le gaosiga e ono faigata ona o le tele o metotia fa'apipi'i ma si'osi'omaga e tatau ona fa'aoga (fa'ata'ita'iga, REST tautua, fa'aputuga fa'aputuga, po'o telefoni feavea'i). E leai se auala masani mo le faʻanofoina o faʻataʻitaʻiga mai soʻo se faletusi i soʻo se tasi o nei meafaigaluega. O le mea lea, o faʻasalalauga fou taʻitasi e faʻaalia ai se lamatiaga.
O le a MLflow?
O le MLflow o se faʻamatalaga tatala mo le taʻamilosaga o le olaga o aʻoaʻoga masini. O lo'o fa'avae i luga o se manatu fa'afeso'ota'i matala, fa'atonu le tele o fa'amatalaga taua e fa'ataga ai atina'e o lo'o iai nei ma masini a'oa'oga algorithms ina ia faigofie ona tu'ufa'atasia ma le faiga.
O lona uiga afai o oe o se tagata atiaʻe e manaʻo e faʻaaoga le MLflow ae o loʻo faʻaaogaina se faʻavae e le lagolagoina, o le faʻaogaina o fesoʻotaʻiga matala e faigofie ai ona tuʻufaʻatasia lena faʻavae ma amata galue ma le faʻavae. I le faʻatinoga, o lona uiga o le MLflow ua faʻamoemoe e galue ma soʻo se mea masini suʻesuʻe faletusi po o le gagana.
E le gata i lea, MLflow faʻamalosia le toe faʻafouina, o lona uiga o le aʻoaʻoga tutusa poʻo le gaosiga o masini aʻoaʻoga e faʻamoemoe e tamoʻe faʻatasi ma taunuuga tutusa e tutoatasi mai le siosiomaga, pe i le ao, i luga o se fale faigaluega i le lotoifale, poʻo se api.
Mulimuli ane, ua fausia le MLflow mo le faʻalauteleina, ina ia mafai ona faʻaogaina e se vaega toʻaitiiti o saienitisi faʻamaumauga faʻapea foʻi ma se kamupani tele ma le faitau selau o aʻoaʻoga masini.
MLflow e fetaui ma soʻo se faletusi aʻoaʻoga masini, algorithm, meafaigaluega faʻapipiʻi, poʻo le gagana. E iai foʻi tulaga lelei:
- Fuafuaina e fa'agaioi i so'o se auaunaga ao.
- Fua i faʻamatalaga tetele ma Apache Spark.
- O le MLflow e fetaui ma le tele o faʻavae aʻoaʻoga masini faʻapitoa, e aofia ai Apache Spark, TensorFlow, ma SciKit-A'oa'o.
Afai ua uma ona iai sau code, e mafai ona faʻaaogaina le MLflow. E mafai fo'i ona e fa'asoa lau auivi ma fa'ata'ita'iga i le va o atina'e aua o lea Tatala-punaoa.
MLflow Components: E faʻafefea ona latou galulue?
O le MLflow o se faʻavae e leai se totogi ma tatala-puna mo le puleaina o le ML lifecycle, lea e aofia ai le faʻataʻitaʻiga, toe faʻaleleia, faʻapipiʻiina, ma se resitala faʻataʻitaʻiga e tasi. I le taimi nei, MLflow e fa vaega:
1. Su'ega MLflow
O le a ou amata ile MLflow Tracking. E lagolagoina e le MLflow le aoina o manatu taua eseese e fesoʻotaʻi ma se fale teu oloa suʻesuʻeina metadata faʻaaʻoaʻoga. O le manatu muamua o se fa'aputuga o hyperparameters taua po'o fa'apipi'i fa'apipi'i e a'afia ai le fa'atinoga o fa'ata'ita'iga. O le fa'aogaina o API a le MLflow ma se 'au'aunaga su'esu'e fa'apitoa e mafai ona fa'asaoina uma nei mea.
E mafai fo'i e tagata fa'aoga ona fa'amaumau fa'amaumauga o fa'atinoga e maua ai fa'amatalaga i le manuia o latou fa'ata'ita'iga a'oa'oga masini. E le gata i lea, mo le toe faʻaaogaina, MLflow e mafai ai e tagata faʻaoga ona faʻapipiʻi le faʻailoga faʻapitoa na faʻaaogaina e fai ai se faʻataʻitaʻiga faʻapea foʻi ma lona faʻasologa e ala i le tuʻufaʻatasia faʻatasi ma Git e nonoa faʻataʻitaʻiga uma i se faʻatonuga faʻapitoa.
E mafai ona fa'aoga le MLflow e fa'amauina ai meafaitino, o so'o se faila fa'atonu e aofia ai a'oa'oga, fa'amaumauga o su'ega, ma fa'ata'ita'iga i latou lava mo le toe gaosia.
O lona uiga afai o aʻu o se tagata atiaʻe naʻo le aʻoaʻoina o se faʻataʻitaʻiga, e mafai ona ou faʻaauau pea i le tautua suʻesuʻega tutotonu, ma e mafai e se tasi o aʻu paaga ona utaina mulimuli ane ma faʻaauau pea ona toleni ma faʻataʻitaʻi poʻo le gaosiga o lena faʻataʻitaʻiga e fetaui ma se manaʻoga patino .
Pe a fa'atino lau fa'ailoga a'oa'oga masini ma mulimuli ane va'ai i fa'ai'uga, o le su'esu'eina o se API e fa'atagaina oe e fa'amauina fa'amaufa'ailoga, fa'ailoga fa'ailoga, metric, ma faila faila. Ua tusia i le Python, R, ma Java, faatasi ai ma isi gagana. E mafai foi ona maua o se REST API, lea e mafai ona faʻaaogaina e fausia ai ni polokalama i luga.
Features Key
- O le tele o tagata atiaʻe e faʻaogaina le MLflow i luga o la latou PC faʻapitonuʻu, lea e faʻasoa ai e le pito i tua ma le teuina o meafaitino se lisi i luga o le disk.
- O le tele o tagata fa'aoga latou te fa'aaogaina SQLite, se SQLAlchemy-compatible database, e fa'atautaia ai le MLflow i luga o latou PC i le lotoifale.
- E lagolagoina fo'i e MLflow fausaga fa'asoa. O le su'e su'esu'e, faleoloa pito i tua, ma le faleoloa meafaitino o lo'o talimalo uma i luga o sapalai eseese i nei mea.
- Afai o le taʻavale na amataina e le MLflow Project, o le git commit hash na faʻaaogaina. Ole MLflow Python, R, Java, ma REST APIs e mafai ona fa'aoga e fa'amau ai fa'amaumauga e tamo'e.
Mo nisi faʻamatalaga, e mafai ona e siaki le ofisa aloaia pepa aloaia.
2. Poloketi MLFlow
A mae'a ona matou su'esu'e vaega, ou te fia tautala e uiga i le MLflow projects, o se fausaga fa'apipi'i toe fai mo fa'ata'ita'iga a'oa'oga e tusa lava po'o le a le fa'atinoga.
Pisinisi e fa'aogaina le tele o tekinolosi a'oa'oga a le masini, ae latou te fa'aogaina fo'i meafaigaluega fa'aa'oa'oga i se fa'alapotopotoga eseese. Mo se faʻataʻitaʻiga, atonu latou te faʻatinoina a latou tulafono faʻaaʻoaʻoga i luga o le ao, i luga o se PC faʻapitonuʻu, poʻo totonu o se api.
Ole mea lea e mafua ai le fa'afitauli e faigata ona toe fa'atusaina taunu'uga a'oa'oga masini. O le tele o taimi, o le code a'oa'oga tutusa e le fa'atinoina pe maua mai i'uga tutusa i ni nofoaga se lua.
O le fofo o loʻo tuʻuina mai e le MLflow o se faʻamatalaga faʻavae aʻoaʻoga a le tagata lava ia e aofia uma ai le code aʻoaʻoga aʻoaʻoga masini, faʻapea foʻi ma lona faʻalagolago i le faletusi, faʻatulagaga, ma aʻoaʻoga ma faʻamatalaga suʻega.
E fa'amautinoa e le MLflow le toe fa'aleleia i totonu o fa'atinoga o fa'atinoga e ala i le fa'amatalaina manino o le seti atoa o mana'oga mo se a'oa'oga a'oa'oga masini. E ausia lenei mea e ala i le faʻapipiʻiina o na faletusi uma ma faʻataunuʻuina le faiga lava lea e tasi o loʻo taʻavale ai le code.
O le poloketi MLflow e leai se mea e sili atu nai lo se faʻamaumauga. Ose fa'atonuga e aofia ai le tulafono fa'aa'oa'oga, fa'amatalaga fa'alagolago ile faletusi, ma isi fa'amatalaga e mana'omia ile vasega a'oa'oga, fa'apea fo'i ma lenei faila fa'aopoopo.
E mafai ona faauigaina nei manaoga faletusi i ni auala eseese. E mafai e tagata fa'aoga, mo se fa'ata'ita'iga, ona tu'uina atu se fa'ata'ita'iga o le si'osi'omaga anaconda fa'atulagaina YAML e lisi ai latou mana'oga mo le faletusi code a'oa'oga. MLflow o le a faʻatinoina le code aʻoaʻoga i totonu o le pusa. I se tulaga faapena, e mafai foi ona latou aofia ai se pusa Docker.
Ma le mea mulimuli, MLflow o loʻo i ai se faʻatonuga laina laina (CLI) mo le faʻatinoina o nei poloketi, faʻapea foʻi ma Python, ma Java API. O nei poloketi e mafai ona fa'atino i luga ole faiga fa'apitonu'u a le tagata fa'aoga fa'apea fo'i i le tele o nofoaga mamao e pei o le Databricks job scheduler ma Kubernetes. Poloketi MLflow e fa'atagaina oe e fa'apipi'i fa'amaumauga fa'asaienisi fa'amaumauga i se faiga toe fa'aaogaina ma toe fa'aaogaina, tele lava e fa'atatau i tulaga fa'ata'atia.
O le vaega o galuega faatino e aofia ai le API faʻapea foʻi ma faʻatonuga laina faʻaoga mo le puleaina o galuega. O nei agava'a e fa'amautinoa ai e mafai ona fa'aputu fa'atasi galuega fa'atino e fausia ai faiga fa'aa'oa'oga masini.
Features Key
- E lagolagoina e le MLflow siosiomaga o galuega, e aofia ai Docker container environment, Conda environment, ma le system environment.
- So'o se fa'aputuga Git po'o fa'atonuga fa'apitonu'u e mafai ona manatu o se poloketi MLflow; ona o le faaletonu; e mafai ona e faʻaogaina soʻo se atigi poʻo Python tusitusiga i totonu o le lisi e fai ma nofoaga e ulufale ai i le poloketi.
- O fa'alagolago e le o-Python, pei o faletusi Java, e mafai ona pu'eina e fa'aaoga ai pusa Docker.
- E mafai ona e maua le pule sili atu i luga o se Poloketi MLflow e ala i le faʻaopoopoina o se faila o galuega i le aʻa o le poloketi, o se faila faila i le YAML syntax.
Mo nisi faʻamatalaga, e mafai ona e siaki le ofisa aloaia pepa aloaia.
3. MLflow Fa'ata'ita'iga
I le taimi nei, ou te manaʻo e talanoaina faʻataʻitaʻiga MLflow, o se faʻataʻitaʻiga faʻataʻitaʻiga lautele e lagolagoina le tele o tulaga o gaosiga. O le mafuaʻaga mo faʻataʻitaʻiga MLflow ua foliga tutusa ma lena mo galuega faatino.
Ma le isi, matou te vaʻai i faʻataʻitaʻiga e mafai ona gaosia e faʻaaoga ai le tele o meafaigaluega, ae e mafai foi ona gaosia pe faʻapipiʻiina i le tele o tulaga, e ese mai i siosiomaga o aʻoaʻoga.
O nei faʻatulagaga e aofia ai meafaigaluega mo le taimi moni, e pei o Kubernetes poʻo Amazon SageMaker, faʻapea foʻi ma le faʻafefe ma le sikoa sikoa, pei ole Spark. E le gata i lea, o nisi pisinisi e mafai ona filifili e faʻapipiʻi faʻataʻitaʻiga e avea o se 'upega tafaʻilagi RESTful o loʻo faʻaogaina i luga o se faʻataʻitaʻiga o le ao.
O se faʻataʻitaʻiga MLflow, pei o se poloketi, o se faʻasologa o faʻamaumauga. E aofia ai se faila fetuutuunai ma, i le taimi nei, o se faʻataʻitaʻiga faʻataʻitaʻiga faʻataʻitaʻiga nai lo le code aʻoaʻoga. O lo'o aofia ai fo'i lenei seti o fa'alagolago mo le toe fa'aauauina o se poloketi. O le taimi lenei, o le a tatou vaʻavaʻai i iloiloga faʻalagolago i le tulaga o se siosiomaga Conda.
E le gata i lea, o le MLflow e aofia ai meafaigaluega faʻataʻitaʻiga mo le faʻavasegaina o faʻataʻitaʻiga i le MLflow faʻasologa mai le tele o taʻutaʻua taʻutaʻua. Mulimuli ane, MLflow faʻaopoopo faʻapipiʻi, API mo le gaosiga ma faʻafesoʻotaʻi soʻo se faʻataʻitaʻiga MLflow i le tele o auaunaga, ma o nei API e mafai ona maua i le Python, Java, R, ma le CLI format.
O faʻataʻitaʻiga o se vaega faʻatasi ma se faʻatulagaga masani mo faʻataʻitaʻiga afifiina e mafai ona faʻaaogaina ma malamalama i meafaigaluega pito i lalo e pei o faʻaumau faʻauiga poʻo le piliki faamatalaga fa'avae fa'ailoga fa'aputuga. O lenei vaega e fa'asaoina itula o fa'ailoga fa'apitoa pe a afifiina se fa'ata'ita'iga mo le gaosiga.
O le MLflow Model o se faʻataʻitaʻiga mo le faʻapipiʻiina o masini aʻoaʻoga faʻataʻitaʻiga i ituaiga eseese e taʻua o "mea manogi." MLflow e maua ai le tele o mea faigaluega e fesoasoani ia te oe i le faʻaogaina o ituaiga eseese o faʻataʻitaʻiga. O Fa'ata'ita'iga MLflow ta'itasi o lo'o teuina e fai ma fa'atonuga o lo'o iai faila fa'atonu fa'apea fo'i ma se faila fa'amatala fa'ata'ita'iga ML ma se lisi o mea'ai e mafai ona fa'aoga ai.
Features Key
- O mea faigaluega uma a le MLflow o loʻo tuʻuina atu i totonu o loʻo ofoina atu le tele o meaʻai "tulaga masani", e pei o le "Python function" tofo e faʻamatalaina ai le faʻaogaina o le faʻataʻitaʻiga o se galuega Python.
- O Fa'ata'ita'iga MLflow ta'itasi e iai se lisi o lo'o iai faila fa'atonu, fa'apea fo'i ma se faila fa'ata'ita'i ML ile a'a ole fa'atonu e fa'amatala ai le tele o tofo a le fa'ata'ita'iga.
- Pe a teuina se faʻataʻitaʻiga, MLflow faʻatagaina oe e faʻamaonia se faʻataʻitaʻiga o le siosiomaga Conda o loʻo iai faʻalagolago i le faʻataʻitaʻiga. Afai e leai se si'osi'omaga Conda e fa'ailoa mai, e fausia se si'osi'omaga e fa'atatau i le tofo o le fa'ata'ita'iga. A maeʻa lena, e teuina le siosiomaga Conda i conda.yaml.
Mo nisi faʻamatalaga, e mafai ona e siaki le ofisa aloaia pepa aloaia.
4. MLflow Fa'ata'ita'iga Resitala
O le resitala fa'ata'ita'iga ose fale teu mo fa'ata'ita'iga a'oa'oina masini (ML). Fa'ata'ita'iga Resitala o lo'o faia i API ma se 'upega tafa'ilagi fa'aoga e fa'aogaina e fa'atumauina fa'ata'ita'iga i vaega eseese o se 'au. Fa'ata'ita'iga Lineage, Fa'ata'ita'iga Fa'atusa, Faigofie Stage Transition, ma Fa'amatalaga o ni nai mea e mafai ona maua i le Fa'ata'ita'iga Resitala.
O se faʻamaumauga faʻataʻitaʻiga, faʻaopoopo i faʻataʻitaʻiga lava ia, o loʻo i ai faʻamatalaga (metadata) e uiga i faʻamaumauga ma galuega aʻoaʻoga na faʻaaogaina e fausia ai le faʻataʻitaʻiga. E taua tele le siakiina o nei mea e manaʻomia e fausia ai le gafa mo faʻataʻitaʻiga ML. I lea tulaga, o le fa'ata'ita'iga resitara e fa'apena fo'i i polokalame fa'akomepiuta masani faʻatonutonuina o faʻamatalaga faiga (fa'ata'ita'iga, Git, SVN) ma fale teu oloa (eg, Artifactory, PyPI).
Le Fa'ata'ita'iga Resitala o se fa'avae e mafai ai e saienitisi fa'amaumauga ma inisinia a'oa'oga masini e lolomi, su'e, mata'itu, pulea, ma tufatufa atu a latou fa'ata'ita'iga mo le galulue fa'atasi ma isi 'au. O le mea moni, o le fa'ata'ita'iga resitara e fa'afaigaluega pe a mae'a lau su'ega ma ua sauni e fa'asoa au su'esu'ega i le 'au ma pa'aga.
O le MLflow Model Registry e maua ai se API ma se faʻaoga faʻaoga mo le puleaina o au faʻataʻitaʻiga ma o latou olaga mai se nofoaga tutotonu. Fa'ata'ita'iga gafa, fa'ata'ita'iga fa'ata'ita'iga, fa'amatalaga, ma fa'asologa o tulaga o lo'o avanoa uma ile resitala.
I le MLflow, o se faʻataʻitaʻiga resitala o le tasi lea e iai se igoa tulaga ese ma metadata, faʻataʻitaʻiga faʻataʻitaʻiga, faʻasologa o suiga, ma se gafa faʻataʻitaʻiga. E tasi pe sili atu fa'ata'ita'iga fa'ata'ita'iga e mafai ona maua i se fa'ata'ita'iga resitalaina. O se fa'ata'ita'iga fou e manatu i le version 1 pe a fa'amauina i le resitala. O le fa'asologa o lo'o mulimuli mai e fa'aopoopo i so'o se fa'ata'ita'iga fou e tutusa lona igoa.
E mafai ona e tu'uina atu se la'asaga se tasi i so'o se fa'ata'ita'iga i so'o se taimi. Ae ui i lea, e tatau ona tuʻuina atu laasaga i lalo ole MLflow vaega ua faʻamaonia aloaia, e pei o le faʻatulagaina, gaosiga, ma le teuina. O se fa'ata'ita'iga fa'ata'ita'iga e mafai ona fesuia'i mai le tasi la'asaga i le isi.
MLflow fa'atagaina oe e fa'aoga le fa'ailoga e fa'ailoa uma ai le fa'ata'ita'iga pito i luga ma fa'amatalaga patino ta'itasi. E mafai ona e aofia ai faʻamatalaga faʻapea foʻi ma isi faʻamatalaga talafeagai, e pei o faʻamatalaga algorithm, metotia, ma faʻamaumauga faʻaaogaina.
Features Key
- Ina ia maua le fa'ailoga fa'ata'ita'iga e ala i le UI po'o le API pe a fa'afeiloa'i lau lava MLflow server, e tatau ona e fa'aogaina se faleoloa i tua o fa'amaumauga.
- E mafai fo'i ona maua le Resitala Fa'ata'ita'iga e ala i le fa'ata'ita'iga o le MLflow po'o le MLflow Client Tracking API. E mafai, mo se faʻataʻitaʻiga, resitala se faʻataʻitaʻiga i le taimi o le faʻataʻitaʻiga MLflow poʻo le maeʻa uma o au faʻataʻitaʻiga.
- E le o tagata uma o le a amata aʻoaʻoina a latou faʻataʻitaʻiga e faʻaaoga ai le MLflow. O se taunuuga, atonu e iai ni au faʻataʻitaʻiga aʻo leʻi faʻaaogaina le MLflow. Nai lo le toe a'oa'oina o fa'ata'ita'iga, na'o lou mana'o e lesitala au fa'ata'ita'iga teu i le Fa'ata'ita'iga Resitala.
Mo nisi faʻamatalaga, e mafai ona e siaki le ofisa aloaia pepa aloaia.
iʻuga
O le MLflow o se meafaigaluega sili ona lelei ma fa'atupula'ia pea ML olaola. E mafai ona e faʻaaogaina faʻatasi ma au meafaigaluega ma faʻavae o loʻo iai nei.
E lagolagoina le tele o gagana fa'apolokalame, e aofia ai le Python, Java, ma le R. E mafai fo'i ona e vave siaki, fa'asaoina, ma fa'atusatusa fa'ata'ita'iga fa'ata'ita'iga eseese fa'afetai i lona fa'aoga-faauo.
Fa'ata'ita'i le MLflow ma ta'u mai lou poto masani!
Tuua se tali