Awọn anfani:
- Agbara lati ṣe idanimọ awọn italaya pataki ti ML ti o ni ibatan si koodu-data-awoṣe mẹta ati package ati ṣafihan awoṣe lori ayelujara tabi ni ipele ni ibamu si iwulo iṣowo.
- Agbara lati ṣe imuṣiṣẹ diẹdiẹ ati awọn ilana imuṣiṣẹ yiyi pada (ojiji, canary, A/B, rollback) ati ṣafikun ero isọdọtun idanwo si imuṣiṣẹ kọọkan
- Agbara lati tọju ọna asopọ data-koodu-metric ti awoṣe ti a fi sinu itọpa iṣelọpọ pẹlu CI/CD iṣakoso ẹnu-ọna igbelewọn ati iforukọsilẹ awoṣe
Gbigba awoṣe lati ṣaṣeyọri deede 95% ninu iwe ajako jẹ idaji itan naa. Idaji miiran-nigbagbogbo apakan lile-ni gbigba awoṣe yẹn si awọn olumulo gidi ni igbẹkẹle, iwọn, ati ọna itọju. MLOps (Awọn iṣẹ Ẹkọ Ẹrọ: ibawi ti fifi, ṣiṣẹ, ati mimu awọn awoṣe ML sinu iṣelọpọ) darapọ awọn iṣe DevOps ti imọ-ẹrọ sọfitiwia pẹlu awọn italaya alailẹgbẹ ti ML. Ninu ẹyọ yii, a bo awọn igbesẹ ti gbigbe awoṣe si iṣelọpọ ati bii itetisi atọwọda ṣe iranlọwọ ninu ilana yii.
Kini idi ti ML yatọ si sọfitiwia deede?
Ni software lasan, ihuwasi wa ninu koodu; Ti koodu ko ba yipada, ihuwasi ko yipada. Ni ML, ihuwasi da lori koodu mejeeji, data ati awoṣe. Awọn iwọn mẹta wọnyi ṣẹda awọn italaya afikun ti MLOps:
- Data fiseete: Awọn data ni gbóògì gbe kuro lati awọn data ni ikẹkọ lori akoko; awoṣe di atijo.
- O nilo lati ṣe ikede awọn nkan mẹta: Koodu, data, ati awoṣe — gbogbo awọn mẹta.
- Ikuna ipalọlọ: Awoṣe le kuna laisi jamba, laisi fifun awọn aṣiṣe, nirọrun nipa iṣelọpọ awọn asọtẹlẹ ti ko tọ. Mimu eyi nilo abojuto.
Ti o ni idi ti iyatọ nla wa laarin "awoṣe iṣẹ" ati "awoṣe ti o ṣetan-iṣẹjade".
Iṣakojọpọ awoṣe ati fifihan
Igbesẹ akọkọ ni fifi awoṣe sinu iṣelọpọ jẹ iṣakojọpọ rẹ: faili awoṣe, awọn ile-ikawe pataki, koodu iṣaju, ati alaye ẹya papọ gẹgẹbi odidi ti o ṣee ṣe. Apoti (fun apẹẹrẹ Docker: fifi ohun elo sinu apoti ti o ya sọtọ pẹlu gbogbo awọn igbẹkẹle rẹ) jẹ boṣewa nibi; O ṣe imukuro iṣoro “o n ṣiṣẹ lori ẹrọ mi”.
Awọn ilana ipilẹ meji ti sise awoṣe:
- Online/akoko gidi (online): Awoṣe naa joko lẹyin API kan, n dapada asọtẹlẹ lojukanna fun gbogbo ibeere ti nwọle. Lairi kekere jẹ pataki.
- Ipele: Awoṣe n ṣe ilana awọn eto data nla lorekore (fun apẹẹrẹ ṣe ipilẹṣẹ awọn ikun fun gbogbo awọn alabara ni alẹ). Lairi ko ṣe pataki, ṣiṣe jẹ pataki.
Ewo ni o tọ da lori iwulo iṣowo: iṣeduro lẹsẹkẹsẹ lori ayelujara, Dimegilio eewu oṣooṣu ni ipele.
Imọran: "Akoko gidi" jẹ idiyele, kii ṣe aiyipada. Batch jẹ din owo pupọ ati rọrun ti abajade yoo ṣee lo laarin awọn wakati. Ṣe o nilo idahun lẹsẹkẹsẹ bi? Beere pe akọkọ.
Awọn ilana pinpin ni aabo
Ṣiṣii awoṣe tuntun taara si gbogbo awọn ijabọ jẹ eewu; Ti o ba jẹ aṣiṣe, gbogbo eniyan ni o kan. Awọn ilana pinpin ailewu:
- Gbigbe ojiji: Awoṣe tuntun n gba ijabọ iṣelọpọ, ṣugbọn awọn asọtẹlẹ rẹ ko han si olumulo, wọle nikan. O ti ṣe afiwe pẹlu awoṣe atijọ lati rii boya o jẹ ailewu ni data gidi.
- Canary imuṣiṣẹ: Awoṣe tuntun ti kọkọ yiyi si ipin kekere ti ijabọ (fun apẹẹrẹ 5%); Ti ko ba si iṣoro, o pọ si ni diėdiė.
- Idanwo A / B: Awọn awoṣe meji ni a gbekalẹ si olumulo gidi ni afiwe ati awọn metiriki iṣowo (iyipada, awọn titẹ) ni akawe.
- Yipada: Agbara lati yara pada si ẹya atijọ ti awoṣe tuntun ba jade lati jẹ buburu. Gbogbo imuṣiṣẹ yẹ ki o ni eto yipo pada.
Išọra: imuṣiṣẹ laisi ero yipo pada ko pari. Ni anfani lati pada si ẹya atijọ laarin awọn iṣẹju ṣe aabo olumulo nigbati awoṣe tuntun ba huwa lairotẹlẹ ni iṣelọpọ. Ṣe idanwo eyi ṣaaju imuṣiṣẹ.
Ọna ti ko lagbara / Ona ti o lagbara
Ailagbara: "Awoṣe naa dara ni idanwo, a lọ laaye, a ṣii si gbogbo eniyan."
Güçlü: "A ni apoti awoṣe, ti a fi aami si bi ẹya kan. Ni akọkọ, a ran ni ipo ojiji pẹlu ijabọ ọja fun awọn ọjọ 3, ti o ṣe afiwe awọn asọtẹlẹ pẹlu awoṣe atijọ - iyapa jẹ itẹwọgba. Lẹhinna a ṣii pẹlu 5% canary, ṣe abojuto awọn metiriki ti iṣelọpọ ati lairi. Nigbati ko si awọn iṣoro, a ti mu ọwọ pọ si ṣaaju ki o to ṣe idanwo 100%. "
Iyatọ: ọna ti o lagbara jẹ diẹdiẹ, wọnwọn ati iyipada. Ewu ti wa ni opin ni gbogbo igbese.
CI / CD ati adaṣiṣẹ
CI / CD (Idapọ Ilọsiwaju / Ilọsiwaju Ilọsiwaju: opo gigun ti idanwo laifọwọyi ati awọn iyipada koodu idasilẹ) ni ML kii ṣe koodu nikan ṣugbọn tun data ati awọn igbesẹ awoṣe. Opo gigun ti ML CI/CD ti o dara: nṣiṣẹ awọn idanwo nigbati koodu ba yipada, ṣe afọwọsi data, tun ṣe atunṣe awoṣe (ti o ba jẹ dandan), ṣayẹwo awọn iloro igbelewọn, ati imuṣiṣẹ ilọsiwaju nikan ti awọn iloro ba dimu. Ilana ti “ikẹkọ jẹ adaṣe, imuṣiṣẹ jẹ ipilẹ-ilẹ” ṣe idiwọ awoṣe buburu lati jijo ni ipalọlọ sinu iṣelọpọ.
AI ṣe iranlọwọ pupọ nigbati o ba ṣeto awọn opo gigun ti epo wọnyi: kikọ faili iṣeto ni (YAML), awọn ọran idanwo, awọn iwe afọwọkọ imuṣiṣẹ. Ṣugbọn o pinnu awọn ala-ilẹ pinpin (ohunkohun ti metric kọja iye ti a gbejade) ati eto imulo yipo; iwọnyi jẹ awọn ipinnu eewu iṣowo.
Awọn amayederun atunṣe
Lati le ṣe ẹda ihuwasi ti awoṣe ni iṣelọpọ, iforukọsilẹ awoṣe: igbasilẹ ti o tọju iru awoṣe wo ni oṣiṣẹ pẹlu data ati koodu, ati iru awọn metiriki ti o gba. Fun awoṣe iṣelọpọ kọọkan, atẹle yẹ ki o jẹ atẹle: ẹya data ikẹkọ, ẹya koodu (git ṣẹ), hyperparameters, awọn ikun igbelewọn, ati ọjọ imuṣiṣẹ. Nigbati iṣoro kan ba waye, o yẹ ki o ni anfani lati dahun ibeere naa "awoṣe wo ni o ṣe asọtẹlẹ yii, pẹlu data wo?" laarin iṣẹju. A yoo jinle eyi ni ẹyọkan 11.
mẹta mini igba
Irú 1 - Isoro mu nipasẹ ojiji pinpin. Awoṣe iṣeduro lu atijọ ni idanwo. Ṣiṣe rẹ pẹlu ijabọ iṣelọpọ ni ipo ojiji ni a rii lati gbejade awọn iṣeduro ti ko dara pupọ fun apakan kan ti awọn olumulo (awọn olumulo tuntun) - data idanwo naa jẹ aṣoju ti apakan yii. Awoṣe naa wa titi lai ṣe afihan si olumulo. Ti o ba ṣii taara, iriri olumulo tuntun yoo ni idilọwọ.
Case 2 - Iyipada pinpin. Ẹgbẹ kan ti yiyi awoṣe idiyele tuntun si gbogbo awọn ijabọ, laisi awọn ero ipadasẹhin. Awoṣe naa ni idiyele lairotẹlẹ diẹ ninu awọn ọja ni olowo poku. Pada si ẹya atijọ gba awọn wakati nitori ilana naa ko ti ṣetan. Isonu pataki ti owo-wiwọle wa. Lẹhinna, idanwo yiyipo dandan ni a ṣafikun si gbogbo imuṣiṣẹ.
Ọran 3 - fiseete data ipalọlọ. Ilana jegudujera han fun awọn oṣu laisi awọn aṣiṣe eyikeyi. Ṣugbọn awọn ilana fraudsters yipada (fiseete data) ati pe iranti awoṣe ti lọ silẹ ni idakẹjẹ. Ko si ẹnikan ti o ṣe akiyesi nitori ko si ibojuwo. Ni kete ti a ti fi idi igbimọ ibojuwo pinpin asọtẹlẹ kan mulẹ, fiseete naa han ni kutukutu. A yoo bo ibojuwo ni apa 8.
Awọn awoṣe idakọ
Kọ iwe eto imuṣiṣẹ fun awoṣe yii. Awoṣe: [kini o ṣe], lilo: [online tabi ipele?] Yẹ ki o pẹlu: 1) Iṣakojọpọ (apoti, ikede) 2) Ilana imuṣiṣẹ ti o pọju (ojiji / canary / A-B) ati idi3) Awọn iṣiro si orin (iṣowo + imọ-ẹrọ + lairi) 4) Eto iyipo ati bi o ṣe le ṣe idanwo5) Awọn idiwọn imuṣiṣẹ yẹ ki o kọja (eyiti o yẹ ki o kọja iye)
Ṣayẹwo opo gigun ti epo ML CI/CD: 1) Njẹ afọwọsi data ni laini?2) Njẹ imuṣiṣẹ le tẹsiwaju laisi didimu ẹnu-ọna igbelewọn (Ṣe ko yẹ)?3) Ṣe rollback ni adaṣe?4) Njẹ data + koodu + awọn metiriki tọpinpin ni iforukọsilẹ awoṣe? Iṣeto ni pline: [konfigi]
Ran mi lọwọ lati pinnu boya ori ayelujara tabi igbejade ipele jẹ o dara fun awoṣe yii. Bawo ni abajade yoo ṣe pẹ to: [ese / iṣẹju / wakati / ọjọ] Iwọn didun ibeere ti a nireti: [nọmba] Ṣe idiwọ idaduro kan wa: [ms] Ewo ni iwọ yoo ṣeduro ni awọn ofin ti idiyele ati idiju ati kilode?
Kọ ilana atunṣe fun awoṣe yii.- Metiriki / ala-ilẹ wo nfa iṣẹ-ṣiṣe ti ko dara? - Kini awọn igbesẹ yiyi pada? - Bawo ni o ṣe yẹ ki o gba pada (afojusun)? - Bawo ni MO ṣe idanwo ilana yii ṣaaju iṣelọpọ?
Tabili apẹrẹ igbejade
àwárí mu
Online (akoko gidi)
Ipele
idaduro
Lominu (ms)
aibikita
Lilo
Idahun lẹsẹkẹsẹ nilo
Dimegilio igbakọọkan
Iye owo
ga
kekere
idiju
ga
kekere
apẹẹrẹ
Live iṣeduro, itanjẹ
Oṣooṣu ewu Dimegilio
Awọn aṣiṣe ti o wọpọ
- Pinpin laisi eto igbapada. Awoṣe ti ko tọ deba gbogbo olumulo.
- Nsii taara si 100% ijabọ. Idinwo ewu pẹlu staggered pinpin.
- Ko idasile monitoring. Awoṣe ṣe agbejade awọn aṣiṣe ni idakẹjẹ, laisi aṣiṣe.
- Laiṣe igbejade akoko gidi. Lakoko ti batching ti to, iye owo ati idiju wú.
- Ko sisopọ awọn ẹya awoṣe-data-koodu. O ko le ṣe ẹda iṣoro naa.
- Itusilẹ alaifọwọyi laisi iloro pinpin. Awoṣe buburu sneaks ni ipalọlọ.
Ni akojọpọ
Gbigbe awoṣe si iṣelọpọ jẹ iyatọ ati nigbagbogbo iṣẹ ṣiṣe ti o nira pupọ ju ikẹkọ lọ. ML nilo afikun ibawi nitori pe o da lori koodu-data-awoṣe mẹta: apoti ati ikede, apẹẹrẹ ifijiṣẹ (online/ipele) ti o baamu iwulo iṣowo, mimu ati imuṣiṣẹ iyipada, CI/CD iṣakoso ẹnu-ọna ati iforukọsilẹ awoṣe. Imọran atọwọda jẹ iranlọwọ ti o lagbara ni ti ipilẹṣẹ koodu ati iṣeto ti amayederun yii; ṣugbọn awọn iloro pinpin, eto imulo clawback, ati awọn ipinnu eewu jẹ tirẹ. Pinpin laisi ero isọdọtun ko pari.
Ohun elo iṣẹ-ṣiṣe
Apoti (Docker) awoṣe ki o fi aami si ẹya. Pinnu boya iwọ yoo funni ni ori ayelujara tabi ipele ti o da lori awọn iwulo iṣowo rẹ ki o kọ idalare rẹ. Ṣe iwe eto imuṣiṣẹ ti o ni ipele kan (ojiji tabi canary) ati ilana yipopada idanwo kan. Rii daju pe o ṣe igbasilẹ ẹya data, ṣiṣe koodu, ati awọn iṣiro igbelewọn ninu iforukọsilẹ awoṣe.
akojọ ayẹwo
- [] Awoṣe naa jẹ akopọ ati ti ikede (apoti + aami).
- [] Àpẹẹrẹ igbejade (online/ipele) ni a yan gẹgẹbi iwulo iṣowo.
- [] Ilana imuṣiṣẹ ti iṣeto (ojiji / Canary) ti ṣe imuse.
- [] Ilana yipopada kọ ati idanwo.
- [] CI/CD ko ni ilọsiwaju imuṣiṣẹ ṣaaju ki ẹnu-ọna igbelewọn to ti pade.
- [] Iforukọsilẹ awoṣe di data+koodu+ ọna asopọ metiriki naa.