Uru:
- Ikike ịmata ihe ịma aka ndị pụrụ iche nke ML metụtara koodu-data-model trio na ngwugwu wee weta ihe nlereanya n'ịntanetị ma ọ bụ na ogbe dịka mkpa azụmaahịa siri dị.
- Ikike iji mejuputa usoro ntinye nke nta nke nta na ntughari (onyinyo, canary, A/B, rollback) ma tinye atụmatụ ntughari anwalela na ntinye ọ bụla.
- Ikike idowe njikọ data-koodu-metric nke ihe nlereanya etinyere na nrụpụta ya na CI/CD na-achịkwa oke nyocha yana ndekọ ndekọ ihe atụ.
Inweta ihe nlereanya iji nweta izi ezi 95% na akwụkwọ ndetu bụ naanị ọkara akụkọ. Ọkara nke ọzọ - na-abụkarị akụkụ siri ike - na-enweta ihe nlereanya ahụ nye ndị ọrụ n'ezie n'ụzọ a pụrụ ịdabere na ya, nke a pụrụ ịdabere na ya, na nke a pụrụ ịdabere na ya. MLOps (ọrụ mmụta igwe: ịdọ aka ná ntị nke itinye, ịrụ ọrụ, na idowe ụdị ML n'ime mmepụta) na-ejikọta omume DevOps nke injinịa ngwanrọ yana ihe ịma aka pụrụ iche nke ML. Na nkeji a, anyị na-ekpuchi nzọụkwụ nke ịkwaga ihe nlereanya na mmepụta na otú ọgụgụ isi artificial si enyere aka na usoro a.
Kedu ihe kpatara ML ji dị iche na ngwanrọ oge niile?
Na ngwanrọ nkịtị, omume dị na koodu; Ọ bụrụ na koodu ahụ agbanweghị, omume anaghị agbanwe. Na ML, omume dabere na koodu abụọ, data na ụdị. Akụkụ atọ ndị a na-emepụta ihe ịma aka ndị ọzọ nke MLOps:
- Ntugharị data: Data na mmepụta na-apụ na data na ọzụzụ na oge; ihe nlereanya na-aghọ mgbe ochie.
- Ịkwesịrị ịdepụta ihe atọ: Koodu, data, na ụdị - atọ niile.
- Ọdịda dị jụụ: Ihe nlereanya nwere ike daa n'emebighị, na-enyeghị mperi, naanị site na imepụta amụma na-ezighi ezi. Inweta nke a chọrọ nleba anya.
Ọ bụ ya mere e ji nwee nnukwu ọdịiche dị n'etiti "ụdị ọrụ" na "ụdị njikere mmepụta".
Nkwakọ ngwaahịa na ihe ngosi
Nzọụkwụ mbụ n'itinye ihe nlereanya ahụ n'ime mmepụta bụ ịkwakọba ya: faịlụ ihe nlereanya, ọba akwụkwọ dị mkpa, koodu nhazi, na ozi ụdị ọnụ dị ka n'ozuzu ya. Njikere (dịka Docker: itinye ngwa n'ime igbe dịpụrụ adịpụ yana ihe ndabere ya niile) bụ ọkọlọtọ ebe a; Ọ na-ewepụ nsogbu "ọ na-arụ ọrụ na igwe m".
Ụkpụrụ abụọ bụ isi nke ijere ihe nlereanya ahụ ozi:
- Ọnlaịnụ/ezigbo oge (online): Ihe nlereanya a na-anọdụ n'azụ API, na-eweghachi amụma ozugbo maka arịrịọ ọ bụla na-abata. Obere latency dị oke egwu.
- Batch: Ihe nlereanya a na-ahazi nnukwu data nhazi oge (dịka ọmụmaatụ, na-ewepụta akara maka ndị ahịa niile n'abalị). Latency adịghị mkpa, arụmọrụ dị mkpa.
Kedu nke ziri ezi na-adabere na mkpa azụmahịa: nkwado ozugbo n'ịntanetị, akara ihe egwu kwa ọnwa na batch.
Ndụmọdụ: "Ezigbo oge" bụ ọnụ ahịa, ọ bụghị nke ndabara. Batch dị ọnụ ala karịa ma dị mfe ma ọ bụrụ na a ga-eji nsonaazụ ya n'ime awa. Ị chọrọ azịza ozugbo? Buru ụzọ jụọ ya.
Atụmatụ nkesa echedoro
Imepe ụdị ọhụrụ ozugbo na okporo ụzọ niile dị ize ndụ; Ọ bụrụ na ọ na-ezighị ezi, onye ọ bụla na-emetụta. Usoro nkesa adịghị mma:
- Nbugharị onyinyo: Ụdị ọhụrụ ahụ na-enweta okporo ụzọ mmepụta, mana egosighi onye ọrụ amụma ya, ọ bụ naanị abanyela. A na-atụnyere ya na ụdị ochie iji hụ ma ọ dị mma na ezigbo data.
- Mbugharị Canary: A na-ebu ụzọ wepụta ụdị ọhụrụ ahụ na obere pasent nke okporo ụzọ (dịka 5%); Ọ bụrụ na enweghị nsogbu, a na-abawanye nke nta nke nta.
- Nnwale A/B: A na-egosi onye ọrụ n'ezie ụdị abụọ na metrik azụmahịa (ntụgharị, pịa) atụnyere.
- Rollback: Ikike ịlaghachi ngwa ngwa na ụdị ochie ma ọ bụrụ na ụdị ọhụrụ ahụ adịchaghị njọ. Nkwanye ọ bụla kwesịrị inwe atụmatụ nlọghachi azụ.
Ịdọ aka ná ntị: Nkwanye na-enweghị atụmatụ nlọghachi ezughị ezu. Inwe ike ịlaghachi na ụdị ochie n'ime nkeji na-echebe onye ọrụ mgbe ụdị ọhụrụ ahụ na-eme omume na-atụghị anya ya na mmepụta. Nwalee nke a tupu ibunye ya.
Ụzọ adịghị ike / Ụzọ siri ike
Na-adịghị ike: "Ụdị ahụ dị mma na ule, anyị na-adị ndụ, anyị meghere ya onye ọ bụla."
Güçlü: "Anyị containerized ihe nlereanya, kpọrọ ya dị ka a version. Nke mbụ, anyị na-agba ọsọ ya na onyinyo mode na mmepụta okporo ụzọ maka 3 ụbọchị, atụnyere amụma na ochie nlereanya - deviation na-anabata. Mgbe ahụ, anyị meghere ya na 5% canary, nyochaa throughput metrics na latency. Mgbe enweghị nsogbu, anyị ji nwayọọ nwayọọ na-amụba ya na 100% n'ihu iwu.
Ihe dị iche: ụzọ siri ike na-eji nwayọọ nwayọọ, tụọ na ntụgharị. Enwere oke ihe egwu na usoro ọ bụla.
CI / CD na akpaaka
CI/CD (Mmekọrịta na-aga n'ihu / Na-aga n'ihu na-aga n'ihu: pipeline nke nnwale na-akpaghị aka na mwepụta koodu mgbanwe) na ML na-ekpuchi ọ bụghị naanị koodu kamakwa data na usoro ihe nlereanya. Ezigbo pipeline ML CI/CD: na-anwale ule mgbe koodu gbanwere, na-eme nkwado data, na-azụghachi ihe nlereanya ahụ (ọ bụrụ na ọ dị mkpa), na-enyocha ọnụ ụzọ nyocha, na naanị ọganihu na-ebuga ma ọ bụrụ na ọnụ ụzọ na-ejide. Ụkpụrụ nke "ọzụzụ bụ akpaka, ntinye aka na-adabere n'ọnụ ụzọ" na-egbochi ụdị ọjọọ ahụ ka ọ ghara ịdaba na mmepụta.
AI na-enye aka nke ukwuu mgbe ị na-edozi pipeline ndị a: ederede nhazi faịlụ (YAML), ikpe ule, edemede ntinye. Mana ị na-ekpebi oke nkesa (ihe ọ bụla metric karịrị uru e bipụtara) yana amụma mweghachi; ndị a bụ mkpebi ihe ize ndụ azụmahịa.
Akụrụngwa nrụpụtagharị
Iji mepụtaghachi omume nke ihe nlereanya na mmepụta, ndebanye aha nlereanya: ndekọ nke na-edobe ụdị nke a zụrụ nke data na koodu, na nke metrics ọ natara. Maka ụdị mmepụta ọ bụla, ihe ndị a kwesịrị ịdị na-esochi: ụdị data ọzụzụ, ụdị koodu (git Committee), hyperparameters, akara nleba anya, na ụbọchị mbupu. Mgbe nsogbu bilitere, ị ga-enwe ike ịza ajụjụ a "Kedu ihe nlereanya mepụtara amụma a, kedu data?" n'ime nkeji. Anyị ga-eme ka nke a miri emi na unit 11.
Obere ikpe atọ
Ikpe 1 - Nsogbu nke nkesa onyinyo jidere. Ụdị nkwanye kụri nke ochie n'ule. Achọpụtara iji okporo ụzọ mmepụta na-agba ya na ọnọdụ onyinyo ka ọ na-emepụta ndụmọdụ na-adịghị mma maka otu akụkụ nke ndị ọrụ (ndị ọrụ ọhụrụ) - data nnwale ahụ adịghị anọchi anya akụkụ a. Edoziri ihe nlereanya ahụ na-egosighi onye ọrụ. Ọ bụrụ na emepere ya ozugbo, a ga-akụghasị ahụmịhe onye ọrụ ọhụrụ.
Ikpe 2 - Nkesa enweghị ike ịgbagha. Otu otu weputara ụdị ọnụahịa ọhụrụ na okporo ụzọ niile, na-enweghị atụmatụ ịtụgharị. Ihe nlereanya a na-atụghị anya ọnụ ahịa ụfọdụ dị ọnụ ala. Ịlaghachi na ụdị ochie were ọtụtụ awa n'ihi na usoro a adịbeghị njikere. E nwere nnukwu mfu nke ego. Mgbe nke ahụ gasịrị, agbakwunyere ule nlọghachite amanyere amanyere na mbugharị ọ bụla.
Ikpe 3 - Mfefe data dị jụụ. Usoro aghụghọ pụtara ọnwa ole na ole n'enweghị mmejọ ọ bụla. Mana ụzọ ndị wayo gbanwere (data drift) na ncheta ihe nlereanya ahụ dara ada. Ọ dịghị onye hụrụ n'ihi na ọ dịghị nlekota. Ozugbo e guzobere panel nlekota nkesa amụma, a na-ahụ anya n'oge. Anyị ga-ekpuchi nlekota na unit 8.
Ụdị ndebiri nwere ike iṅomi
Dee atumatu mbughari maka ihe nlereanya a. Nlereanya: [ihe ọ na-eme], ojiji: [online ma ọ bụ ogbe?] Kwesịrị ịgụnye: 1) Nkwakọ ngwaahịa (container, versioning) 2) Usoro ntinye ntinye ntinye (onyinyo/canary/AB) na why3) Metrics to track (azụmahịa + teknụzụ + latency) 4) Atụmatụ nlọghachi na otu esi anwale 5) Nkwanye nnyefe kwesịrị karịa ihe (nke bụ uru)
Lelee pipeline ML CI/CD:1) Ọ bụ nkwenye data dị n'ahịrị?2) Enwere ike ibugharị ọrụ ahụ na-enweghị ijide ọnụ ụzọ nyocha (ọ bụghị ya)?3) Rollback na-akpaghị aka?4) A na-enyocha data+code+metrics na ndekọ nlereanya?Nhazi nhazi: [config]
Nyere m aka ikpebi ma ihe ngosi ịntanetị ma ọ bụ ogbe dabara adaba maka ihe nlereanya a. Ogologo oge ole ka a ga-eji nsonaazụ ya: [ngwa ngwa / nkeji / elekere / ụbọchị] olu arịrịọ a tụrụ anya ya: [nọmba] Enwere mgbochi igbu oge: [ms] Kedu nke ị ga-akwado n'ihe gbasara ọnụ ahịa na mgbagwoju anya na gịnị kpatara?
Dee usoro nkwụghachi azụ maka ihe nlereanya a.- Kedu metric/threshold na-ebute arụmọrụ adịghị mma? - Kedu ihe bụ usoro nkwụghachi azụ? - Ogologo oge ole ka nlọghachi azụ ga-ewe (ezubere) - Kedu ka m ga-esi nwalee usoro a tupu mmepụta?
Tebụl ụkpụrụ ngosi
akara
Online (ezigbo oge)
Ogbe
igbu oge
Mkpa (ms)
obere ihe
Ojiji
Achọrọ nzaghachi ngwa ngwa
Akara oge
Ọnụ
elu
ala
mgbagwoju anya
elu
ala
ihe atụ
Ndụmọdụ dị ndụ, ojoro
Akara ihe egwu kwa ọnwa
Mmejọ ndị nkịtị
- Kesaa na-enweghị atụmatụ iweghachi. Ụdị ezighi ezi na-adakwasị onye ọrụ niile.
- Na-emepe ozugbo na okporo ụzọ 100%. Machie ihe egwu site na nkesa atụghị egwu.
- Ọ bụghị na-eguzobe nlekota oru. Ihe nlereanya ahụ na-emepụta njehie na nzuzo, na-enweghị njehie.
- Ngosipụta adịgboroja ozugbo. Mgbe batching zuru ezu, ọnụ ahịa na mgbagwoju anya na-aza.
- Enweghị njikọ ụdị-data-koodu ụdịdị. Ị nweghị ike imepụtaghachi nsogbu ahụ.
- Ntọhapụ akpaaka na-enweghị oke nkesa. Ihe nlereanya ọjọọ ahụ sneaks na nzuzo.
Na nchịkọta
Ịkwaga ihe nlereanya ahụ na mmepụta bụ ọrụ dị iche iche na-esikarị ike karịa ịzụ ya. ML chọrọ ịdọ aka ná ntị ọzọ n'ihi na ọ dabere na koodu-data-model trio: nkwakọ ngwaahịa na nsụgharị, usoro nnyefe (online/batch) dabara maka mkpa azụmahịa, ntinye nwayọọ nwayọọ na ntụgharị, CI/CD na-achịkwa ọnụ ụzọ na ndebanye aha nlereanya. Ọgụgụ isi bụ ihe enyemaka dị ike n'ịmepụta koodu na nhazi nke akụrụngwa a; mana ọnụ ụzọ nkesa, amụma clawback, na mkpebi ihe egwu bụ nke gị. Nkesa na-enweghị atụmatụ nlọghachi azụ ezughi oke.
Ọrụ ngwa
Tinye (Docker) ihe nlereanya wee kpọọ ụdị ya. Kpebie ma ị ga-enye online ma ọ bụ batch dabere na mkpa azụmahịa gị wee dee ihe ziri ezi. Detuo atụmatụ mbugharị agbaziri agbaziri (onyinyo ma ọ bụ canary) yana usoro nlọghachi azụ nwalere. Gbaa mbọ hụ na ịdekọ ụdị data, ntinye koodu na akara nlebanya na ndekọ ihe nlereanya.
ndetu
- [ ] A na-akpakọba ihe n'ụdị a na mbipute ya (labelụ + akpa).
- Ahọpụtara ụkpụrụ ngosi (online/batch) dịka mkpa azụmahịa siri dị.
- [ ] Atụmatụ ibunye ahaziri ahazi (onyinyo/canary) emejuputa atumatu.
- [ ] Edere ma nwalee usoro mkpọghachi.
- [] CI/CD anaghị aga n'ihu n'ịkwanye ya tupu erute oke nyocha.
- [ ] Ndebanye aha ụdị na-ejide data+koodu+metric njikọ.