MLOps: DevOps maŔīnmācÄ«Å”anās pasaulē

2018. gadā profesionāļu aprindās un AI tematiskajās konferencēs parādījās MLOps koncepcija, kas ātri iekaroja nozarē un tagad attīstās kā neatkarīgs virziens. Nākotnē MLOps var kļūt par vienu no populārākajām IT jomām. Kas tas ir un ar ko to ēd? Uzzināsim tālāk.

MLOps: DevOps maŔīnmācÄ«Å”anās pasaulē

Kas ir MLOps

MLOps (apvienojot maŔīnmācÄ«bas tehnoloÄ£ijas un procesus un pieejas izstrādāto modeļu ievieÅ”anai biznesa procesos) ir jauns sadarbÄ«bas veids starp biznesa pārstāvjiem, zinātniekiem, matemātiÄ·iem, maŔīnmācÄ«bas speciālistiem un IT inženieriem, veidojot mākslÄ«gā intelekta sistēmas.

Citiem vārdiem sakot, tas ir veids, kā maŔīnmācÄ«Å”anās metodes un tehnoloÄ£ijas pārvērst par noderÄ«gu rÄ«ku biznesa problēmu risināŔanai. 

Ir jāsaprot, ka produktivitātes ķēde sākas ilgi pirms modeļa izstrādes. Tās pirmais solis ir definēt biznesa problēmu, hipotēzi par vērtÄ«bu, ko var iegÅ«t no datiem, un biznesa ideju tās pielietoÅ”anai. 

Pati MLOps koncepcija radās kā analoÄ£ija DevOps jēdzienam saistÄ«bā ar maŔīnmācÄ«Å”anās modeļiem un tehnoloÄ£ijām. DevOps ir programmatÅ«ras izstrādes pieeja, kas ļauj palielināt atseviŔķu izmaiņu ievieÅ”anas ātrumu, vienlaikus saglabājot elastÄ«bu un uzticamÄ«bu, izmantojot vairākas pieejas, tostarp nepārtrauktu attÄ«stÄ«bu, funkciju sadalÄ«Å”anu vairākos neatkarÄ«gos mikropakalpojumos, automatizētu testÄ“Å”anu un individuālu izvietoÅ”anu. izmaiņas, globālais veselÄ«bas monitorings, ātrās reaģēŔanas sistēma atklātajām kļūmēm u.c. 

DevOps ir definējis programmatÅ«ras dzÄ«ves ciklu, un sabiedrÄ«ba ir nākusi klajā ar ideju piemērot to paÅ”u metodoloÄ£iju lielajiem datiem. DataOps ir mēģinājums pielāgot un paplaÅ”ināt metodiku, ņemot vērā liela datu apjoma uzglabāŔanas, pārsÅ«tÄ«Å”anas un apstrādes iespējas dažādās un sadarbspējÄ«gās platformās.
  
LÄ«dz ar uzņēmumu biznesa procesos ieviesto maŔīnmācÄ«Å”anās modeļu noteiktas kritiskās masas parādÄ«Å”anos tika pamanÄ«ta spēcÄ«ga lÄ«dzÄ«ba starp matemātisko maŔīnmācÄ«Å”anās modeļu dzÄ«ves ciklu un programmatÅ«ras dzÄ«ves ciklu. VienÄ«gā atŔķirÄ«ba ir tā, ka modeļu algoritmi tiek veidoti, izmantojot maŔīnmācÄ«Å”anās rÄ«kus un metodes. Tāpēc dabiski radās ideja pielietot un pielāgot jau zināmās programmatÅ«ras izstrādes pieejas maŔīnmācÄ«Å”anās modeļiem. Tādējādi maŔīnmācÄ«bas modeļu dzÄ«ves ciklā var izdalÄ«t Ŕādus galvenos posmus:

  • biznesa idejas definÄ“Å”ana;
  • modeļu apmācÄ«ba;
  • modeļa testÄ“Å”ana un ievieÅ”ana biznesa procesā;
  • modeļa darbÄ«ba.

Ja darbÄ«bas laikā ir nepiecieÅ”ams mainÄ«t vai pārkvalificēt modeli uz jauniem datiem, cikls sākas no jauna - modelis tiek pilnveidots, pārbaudÄ«ts un tiek ieviesta jauna versija.

Atkāpties. Kāpēc pārkvalificēties un nepārkvalificēties? Jēdzienam ā€œmodeļa pārkvalifikācijaā€ ir divējāda nozÄ«me: ekspertu vidÅ« tas nozÄ«mē modeļa defektu, kad modelis labi prognozē, faktiski atkārto prognozēto parametru apmācÄ«bas komplektā, bet daudz sliktāk darbojas ārējā datu paraugā. Protams, Ŕāds modelis ir defekts, jo Å”is defekts neļauj to izmantot.

Å ajā dzÄ«ves ciklā Ŕķiet loÄ£iski izmantot DevOps rÄ«kus: automatizētu testÄ“Å”anu, izvietoÅ”anu un uzraudzÄ«bu, modeļu aprēķinu projektÄ“Å”anu atseviŔķu mikropakalpojumu veidā. Taču ir arÄ« vairākas funkcijas, kas neļauj tieÅ”i izmantot Å”os rÄ«kus bez papildu ML saistÄ«Å”anas.

MLOps: DevOps maŔīnmācÄ«Å”anās pasaulē

Kā likt modeļiem strādāt un gūt peļņu

Kā piemēru, kurā demonstrēsim MLOps pieejas izmantoÅ”anu, mēs ņemsim klasisko uzdevumu robotizēt tērzÄ“Å”anas atbalstu banku (vai jebkuram citam) produktam. Parasti tērzÄ“Å”anas atbalsta biznesa process izskatās Ŕādi: klients tērzÄ“Å”anā ievada ziņojumu ar jautājumu un saņem atbildi no speciālista iepriekÅ” noteiktā dialoga kokā. Šādas tērzÄ“Å”anas automatizācijas uzdevums parasti tiek atrisināts, izmantojot profesionāli definētus noteikumu kopumus, kuru izstrāde un uzturÄ“Å”ana ir ļoti darbietilpÄ«ga. Šādas automatizācijas efektivitāte atkarÄ«bā no uzdevuma sarežģītÄ«bas pakāpes var bÅ«t 20ā€“30%. LikumsakarÄ«gi rodas doma, ka izdevÄ«gāk ir ieviest mākslÄ«gā intelekta moduli - modeli, kas izstrādāts, izmantojot maŔīnmācÄ«Å”anos, kas:

  • spēj apstrādāt lielāku pieprasÄ«jumu skaitu bez operatora lÄ«dzdalÄ«bas (atkarÄ«bā no tēmas atseviŔķos gadÄ«jumos efektivitāte var sasniegt 70ā€“80%);
  • labāk pielāgojas nestandarta formulējumam dialogā - spēj noteikt nolÅ«ku, lietotāja patieso vēlmi, pamatojoties uz nepārprotami formulētu pieprasÄ«jumu;
  • zina, kā noteikt, kad modeļa atbilde ir adekvāta un kad rodas Å”aubas par Ŕīs atbildes ā€œapziņuā€ un jāuzdod papildu precizējoÅ”s jautājums vai jāpārslēdzas pie operatora;
  • var papildus apmācÄ«t automātiski (tā vietā, lai izstrādātāju grupa pastāvÄ«gi pielāgotu un labotu atbildes skriptus, modeli papildus apmāca datu zinātnes speciālists, izmantojot atbilstoŔās maŔīnmācÄ«Å”anās bibliotēkas). 

MLOps: DevOps maŔīnmācÄ«Å”anās pasaulē

Kā panākt, lai Ŕāds uzlabots modelis darbotos? 

Tāpat kā jebkuras citas problēmas risināŔanā, pirms Ŕāda moduļa izstrādes ir nepiecieÅ”ams definēt biznesa procesu un formāli aprakstÄ«t konkrēto uzdevumu, kuru risināsim, izmantojot maŔīnmācÄ«Å”anās metodi. Å ajā brÄ«dÄ« sākas operacionalizācijas process, ko apzÄ«mē ar akronÄ«mu Ops. 

Nākamais solis ir tas, ka Datu zinātnieks sadarbÄ«bā ar Datu inženieri pārbauda datu pieejamÄ«bu un pietiekamÄ«bu un biznesa hipotēzi par biznesa idejas dzÄ«votspēju, izstrādājot prototipa modeli un pārbaudot tā faktisko efektivitāti. Tikai pēc uzņēmuma apstiprinājuma var sākties pāreja no modeļa izstrādes uz tā integrÄ“Å”anu sistēmās, kas veic noteiktu biznesa procesu. PilnÄ«ga ievieÅ”anas plānoÅ”ana, dziļa izpratne katrā posmā par to, kā modelis tiks izmantots un kādu ekonomisko efektu tas dos, ir bÅ«tisks punkts MLOps pieeju ievieÅ”anas procesos uzņēmuma tehnoloÄ£iskajā vidē.

AttÄ«stoties AI tehnoloÄ£ijām, eksponenciāli pieaug to problēmu skaits un daudzveidÄ«ba, kuras var atrisināt, izmantojot maŔīnmācÄ«Å”anos. Katrs Ŕāds biznesa process uzņēmumam ir ietaupÄ«jums, pateicoties masu darbinieku darba automatizācijai (zvanu centrs, dokumentu pārbaude un ŔķiroÅ”ana u.c.), tā ir klientu bāzes paplaÅ”ināŔana, pievienojot jaunas pievilcÄ«gas un ērtas funkcijas, tā ietaupa naudu, pateicoties optimālai to izmantoÅ”anai un resursu pārdalei un daudz ko citu. Galu galā jebkurÅ” process ir vērsts uz vērtÄ«bas radÄ«Å”anu, un rezultātā tam ir jāsniedz zināms ekonomisks efekts. Å eit ļoti svarÄ«gi ir skaidri formulēt biznesa ideju un aprēķināt sagaidāmo peļņu no modeļa ievieÅ”anas kopējā uzņēmuma vērtÄ«bas radÄ«Å”anas struktÅ«rā. Ir situācijas, kad modeļa ievieÅ”ana neattaisno sevi, un maŔīnmācÄ«bas speciālistu pavadÄ«tais laiks ir daudz dārgāks nekā operatora darba vieta, kas veic Å”o uzdevumu. Tāpēc ir jāmēģina identificēt Ŕādus gadÄ«jumus AI sistēmu izveides sākumposmā.

LÄ«dz ar to modeļi sāk nest peļņu tikai tad, kad MLOps procesā ir pareizi formulēta biznesa problēma, noteiktas prioritātes un modeļa ievieÅ”anas process sistēmā ir noformulēts attÄ«stÄ«bas sākumposmā.

Jauns process ā€“ jauni izaicinājumi

VisaptveroÅ”a atbilde uz biznesa pamatjautājumu par to, cik ML modeļi ir piemēroti problēmu risināŔanai, vispārējais jautājums par uzticÄ“Å”anos AI ir viens no galvenajiem izaicinājumiem MLOps pieeju izstrādes un ievieÅ”anas procesā. Sākotnēji uzņēmēji ir skeptiski par maŔīnmācÄ«bas ievieÅ”anu procesos ā€“ grÅ«ti paļauties uz modeļiem vietās, kur iepriekÅ” parasti strādāja cilvēki. UzņēmējdarbÄ«bai programmas Ŕķiet ā€œmelnā kasteā€, kuras atbilstÄ«ba vēl ir jāpierāda. Turklāt banku jomā, telekomunikāciju operatoru biznesā un citos ir stingras valdÄ«bas regulatoru prasÄ«bas. Visas sistēmas un algoritmi, kas tiek ieviesti banku procesos, ir pakļauti auditam. Lai atrisinātu Å”o problēmu, pierādÄ«tu uzņēmējiem un regulatoriem mākslÄ«gā intelekta reakciju pamatotÄ«bu un pareizÄ«bu, kopā ar modeli tiek ieviesti monitoringa rÄ«ki. Turklāt pastāv neatkarÄ«ga apstiprināŔanas procedÅ«ra, kas ir obligāta regulējoÅ”iem modeļiem un atbilst Centrālās bankas prasÄ«bām. NeatkarÄ«ga ekspertu grupa veic modeļa iegÅ«to rezultātu auditu, ņemot vērā ievades datus.

Otrs izaicinājums ir modeļa risku novērtÄ“Å”ana un ņemÅ”ana vērā, ievieÅ”ot maŔīnmācÄ«bas modeli. Pat ja cilvēks nevar simtprocentÄ«gi atbildēt uz jautājumu, vai tā pati kleita bija balta vai zila, tad arÄ« mākslÄ«gajam intelektam ir tiesÄ«bas kļūdÄ«ties. Ir arÄ« vērts ņemt vērā, ka dati laika gaitā var mainÄ«ties, un modeļi ir jāpārkvalificē, lai iegÅ«tu pietiekami precÄ«zu rezultātu. Lai biznesa process neciestu, nepiecieÅ”ams pārvaldÄ«t modeļu riskus un sekot lÄ«dzi modeļa veiktspējai, regulāri to pārkvalificējot uz jauniem datiem.

MLOps: DevOps maŔīnmācÄ«Å”anās pasaulē

Bet pēc pirmās neuzticÄ«bas stadijas sāk parādÄ«ties pretējs efekts. Jo vairāk modeļu tiek veiksmÄ«gi ieviesti procesos, jo vairāk pieaug biznesa apetÄ«te pēc mākslÄ«gā intelekta izmantoÅ”anas ā€“ tiek atrastas jaunas un jaunas problēmas, kuras var atrisināt ar maŔīnmācÄ«Å”anās metodēm. Katrs uzdevums aktivizē visu procesu, kam nepiecieÅ”amas noteiktas kompetences:

  • datu inženieri sagatavo un apstrādā datus;
  • datu zinātnieki izmanto maŔīnmācÄ«Å”anās rÄ«kus un izstrādā modeli;
  • IT ievieÅ” modeli sistēmā;
  • ML inženieris nosaka, kā pareizi Å”o modeli integrēt procesā, kādus IT rÄ«kus izmantot, atkarÄ«bā no modeļa pielietoÅ”anas režīma prasÄ«bām, ņemot vērā pieprasÄ«jumu plÅ«smu, atbildes laiku u.c. 
  • ML arhitekts izstrādā, kā programmatÅ«ras produktu var fiziski ieviest rÅ«pnieciskā sistēmā.

Visam ciklam ir nepiecieÅ”ams liels skaits augsti kvalificētu speciālistu. Noteiktā ML modeļu attÄ«stÄ«bas un iespieÅ”anās pakāpē biznesa procesos izrādās, ka speciālistu skaita lineāra mērogoÅ”ana proporcionāli uzdevumu skaita pieaugumam kļūst dārga un neefektÄ«va. LÄ«dz ar to rodas jautājums par MLOps procesa automatizāciju - vairāku maŔīnmācÄ«Å”anās problēmu standarta klaÅ”u definÄ“Å”anu, standarta datu apstrādes konveijeru izstrādi un modeļu papildu apmācÄ«bu. Ideālā gadÄ«jumā Ŕādu problēmu risināŔanai ir nepiecieÅ”ami profesionāļi, kas ir vienlÄ«dz labi kompetenti lielo datu, datu zinātnes, DevOps un IT krustpunktā. Tāpēc lielākā problēma datu zinātnes nozarē un lielākais izaicinājums MLOps procesu organizÄ“Å”anā ir Ŕādas kompetences trÅ«kums esoÅ”ajā apmācÄ«bu tirgÅ«. Speciālisti, kas atbilst Ŕīm prasÄ«bām, Å”obrÄ«d darba tirgÅ« ir reti sastopami un ir zelta vērti.

Par kompetenču jautājumu

Teorētiski visus MLOps uzdevumus var atrisināt, izmantojot klasiskos DevOps rÄ«kus un neizmantojot specializētu lomu modeļa paplaÅ”inājumu. Tad, kā jau minēts iepriekÅ”, datu zinātniekam ir jābÅ«t ne tikai matemātiÄ·im un datu analÄ«tiÄ·im, bet arÄ« visa konveijera guru - viņŔ ir atbildÄ«gs par arhitektÅ«ras izstrādi, programmÄ“Å”anas modeļus vairākās valodās atkarÄ«bā no arhitektÅ«ras, sagatavoÅ”anu. datu tirgus un paÅ”as lietojumprogrammas izvietoÅ”ana. Tomēr tehnoloÄ£iskā ietvara izveide, kas tiek ieviesta end-to-end MLOps procesā, aizņem lÄ«dz pat 80% no darbaspēka izmaksām, kas nozÄ«mē, ka kvalificēts matemātiÄ·is, kas ir kvalitatÄ«vs datu zinātnieks, savai specialitātei veltÄ«s tikai 20% sava laika. . Tāpēc ļoti svarÄ«gi kļūst maŔīnmācÄ«bas modeļu ievieÅ”anas procesā iesaistÄ«to speciālistu lomu noteikÅ”ana. 

Tas, cik detalizēti ir jānoŔķir lomas, ir atkarÄ«gs no uzņēmuma lieluma. Tā ir viena lieta, ja startup ir viens speciālists, cÄ«tÄ«gs strādnieks enerÄ£ijas rezervē, kas ir viņa paÅ”a inženieris, arhitekts un DevOps. Pavisam cita lieta ir tad, ja lielā uzņēmumā visi modeļu izstrādes procesi ir koncentrēti uz dažiem augsta lÄ«meņa datu zinātnes speciālistiem, savukārt programmētājs vai datubāzes speciālists - darba tirgÅ« biežāk sastopama un lētāka kompetence. par lielāko daļu darba.parastie uzdevumi.

Tādējādi izstrādāto modeļu ātrums un kvalitāte, komandas produktivitāte un mikroklimats tajā ir tieÅ”i atkarÄ«gs no tā, kur ir robeža speciālistu atlasē MLOps procesa atbalstam un kā tiek organizēts izstrādāto modeļu operacionalizācijas process. .

Ko mūsu komanda jau ir paveikusi

Mēs nesen sākām veidot kompetenču struktÅ«ru un MLOps procesus. Taču mÅ«su projekti par modeļu dzÄ«ves cikla pārvaldÄ«bu un modeļu izmantoÅ”anu kā pakalpojumu jau ir MVP testÄ“Å”anas stadijā.

Mēs arÄ« noteicām optimālo kompetenču struktÅ«ru lielam uzņēmumam un visu procesa dalÄ«bnieku mijiedarbÄ«bas organizatorisko struktÅ«ru. Tika organizētas veiklās komandas, lai risinātu problēmas visam biznesa klientu lokam, un tika izveidots mijiedarbÄ«bas process ar projektu komandām, lai izveidotu platformas un infrastruktÅ«ru, kas ir topoŔās MLOps ēkas pamats.

Jautājumi nākotnei

MLOps ir augoÅ”a joma, kurā trÅ«kst kompetenču un kas nākotnē iegÅ«s impulsu. Tikmēr vislabāk ir balstÄ«ties uz DevOps attÄ«stÄ«bu un praksi. MLOps galvenais mērÄ·is ir efektÄ«vāk izmantot ML modeļus biznesa problēmu risināŔanai. Bet tas rada daudz jautājumu:

  • Kā samazināt modeļu palaiÅ”anas laiku ražoÅ”anā?
  • Kā samazināt birokrātisko berzi starp dažādu kompetenču komandām un palielināt fokusu uz sadarbÄ«bu?
  • Kā izsekot modeļus, pārvaldÄ«t versijas un organizēt efektÄ«vu uzraudzÄ«bu?
  • Kā izveidot patiesi apļveida dzÄ«ves ciklu modernam ML modelim?
  • Kā standartizēt maŔīnmācÄ«Å”anās procesu?

Atbildes uz Å”iem jautājumiem lielā mērā noteiks, cik ātri MLOps pilnÄ«bā sasniegs savu potenciālu.

Avots: www.habr.com

Pievieno komentāru