2018. aastal tekkis professionaalses keskkonnas ja AI-teemalistel konverentsidel mõisted MLOps, mis haarasid kiiresti valdkonda ja arenevad nüüd iseseisva suunana. Tulevikus võib MLOps muutuda üheks kõige nõutumaks valdkonnaks IT-s. Mis see täpsemalt on ja kuidas seda rakendada, uurime edasi.

Mis on MLOps
MLOps (masinõppe tehnoloogiate ja protsesside ning välja töötatud mudelite äriprotsessidesse juurutamise lähenemiste ühendamine) on uus koostööviis äri esindajate, teadlaste, matemaatikute, masinõppe spetsialistide ja IT-inseneride vahel, et luua tehisintellekti süsteeme.
Teisisõnu, see on viis muuta masinõppe meetodid ja tehnoloogiad kasulikeks tööriistadeks äriarvestuse probleemide lahendamiseks.
Tuleb mõista, et tootmisprotsess hakkab pihta palju enne mudeli arendamist. Selle esimeseks sammuks on määratleda äriülesanne, hüpotees andmete väärtusest, mida neist võib saada, ja äriidee selle rakendamiseks.
MLOps mõisted tekkisid analoogiana DevOps mõistest masinõppe mudelite ja tehnoloogiate kontekstis. DevOps on tarkvaraarenduse lähenemisviis, mis võimaldab suurendada muudatuste rakendamise kiirus, säilitades samas paindlikkuse ja usaldusväärsuse mitmete lähenemisviiside kaudu, sealhulgas pidev arendus, funktsioonide jagamine sõltumatuteks mikroteenusteks, automatiseeritud testimine ja eraldi muudatuste juurutamine, globaalne jõudluse jälgimine, süsteem kiireks reageerimiseks tuvastatud tõrgetele jne.
DevOps määratles tarkvaraarenduse elutsükli ja spetsialistide seas tekkis idee kasutada sama meetodit suurte andmete kontekstis. DataOps on katse kohandada ja laiendada seda meetodit, arvestades suurte andmemahtude salvestamise, edastamise ja töötlemise spetsiifikat erinevates ja omavahel suhtlevates platvormides.
Tehisõppe mudelite teatud kriitilise massi sisenemisega ettevõtte äriprotsessidesse on märgatud tugevat sarnasust tehisõppe mudelite eluiga ja tarkvara arenduse eluiga. Erinevus seisneb vaid selles, et mudelite algoritmid luuakse tehisõppe tööriistade ja meetodite abil. Seetõttu tekkis loomulikult idee rakendada ja kohandada juba tuntud tarkvara arenduse lähenemisviise tehisõppe mudelite jaoks. Seega saab tehisõppe mudelite eluajas eristada järgmisi peamisi etappe:
- äriidee määratlemine;
- mudeli koolitamine;
- mudeli testimine ja integreerimine äriprotsessi;
- mudeli kasutamine.
Kui kasutamise käigus on vaja mudelit uute andmete põhjal muuta või täiendavalt koolitada, käivitub tsükkel uuesti — mudel täiustatakse, testitakse ja juurutatakse uus versioon.
Tagasiastumine. Miks eelistada täiendamist ja mitte ümberõpet? Termin 'mudeli ümberõpe' omab kaht tähendust: spetsialistide seas viitab see mudeli defektile, kus mudel ennustab hästi, peegeldades ennustatavat parameetrit treeningandmetes, kuid töötab väliste andmekogude puhul palju halvemini. Loomulikult on selline mudel defektne, kuna see viga ei luba seda rakendada.
Selles elutsüklis tundub mõistlik kasutada DevOps tööriistu: automatiseeritud testimist, juurutamist ja jälgimist, ning mudelite arvestuse vormistamist eraldi mikroteenustena. Kuid on ka mitmeid erisusi, mis takistavad nende tööriistade otsekasutust ilma täiendava ML-kihtita.

Kuidas panna mudeleid tööle ja teenima kasumit
Näiteks, mida kasutame MLOpsi lähenemise rakendamise demonstreerimiseks, võtame klassikaliseks saanud ülesande pangatoe (või mõne muu) toote vestlusrobotiks. Tavaliselt näeb äriühingu tugivestlus välja järgmiselt: klient saadab vestluses sõnumi küsimusega ja saab vastuse spetsialistilt eeltäidetud dialoogipuu raames. Sellise vestluse automatiseerimise ülesanne lahendatakse tavaliselt ekspertide määratud reeglite kogumite abil, mis on arendamisel ja hooldamisel väga töömahukad. Sellise automatiseerimise efektiivsus võib sõltuvalt ülesande keerukusest ulatuda 20–30%-ni. Loomulikult tekib idee, et tasub rakendada tehisintellekti moodulit — mudelit, mis on välja töötatud masinõppe abil, mis:
- suudab töötada operaatori osaluseta suurema hulga päringute kallal (teema sõltuvalt võib efektiivsus ulatuda 70–80%-ni);
- parem kohanduma ebatavalistele väljendustele dialoogis — suudab määratleda kavatsuse, tõelise soovimise kasutaja poolt ebamugavalt formuleeritud taotluse kaudu;
- suudab tuvastada, millal mudeli vastus on asjakohane ja millal on kahtlusi selle vastuse "teadlikkuses" ning on vajalik esitada lisaküsimus või minna edasi operaatori juurde;
- seda saab automatiseeritult täiendavalt koolitada (arendajate meeskonna asemel, kes pidevalt kohandavad ja parandavad vastuste stsenaariume, koolitab spetsialist Data Science, rakendades vastavaid masinõppe teeke).

Kuidas sundida niisugust arenenud mudelit töötama?
Nagu iga muu ülesande lahendamise korral, tuleb enne sellise mooduli arendamist määrata äriteenuse protsess ja vormiliselt kirjeldada konkreetne ülesanne, mida me kavatseme lahendada masinõppe meetodi rakendamise kaudu. Just siit algab operatsioonide teostamise protsess, mida tähistatakse lühendiga Ops.
Järgmise sammuna kontrollib andmete teadlane koos andmeinseneriga, kas andmed on kergesti kättesaadavad ja piisavad ning kas äriidee hüpotees on teostatav, arendades välja mudeli prototüübi ja testides selle tegelikku tõhusust. Ainult pärast äri kinnitust võib alata üleminek mudeli väljatöötamiselt selle integreerimisele süsteemidesse, mis täidavad konkreetseid äri protsesse. Üksikasjalik rakendamise planeerimine ja sügavad teadmised selle iga etapi kohta, kuidas mudelit kasutatakse ning milline majanduslik kasu see toob, on MLOpsi lähenemiste rakendamise protsesside keskne komponent ettevõtte tehnoloogilises maastikus.
Tehnoloogia arengu tõttu suureneb kiiresti tehisintellekti kaudu lahendatavate ülesannete arv ja mitmekesisus. Iga selline äriprotsess tähendab ettevõtte tööjõukulude kokkuhoidu töötajate automatiseerimise kaudu (nt kõnekeskused, dokumentide kontroll ja sorteerimine jne), kliendibaasi laiendamist uute atraktiivsete ja mugavate funktsioonide lisamisega, rahade säästmist nende optimaalse kasutamise ja ressursside ümberjaotamise kaudu ning palju muud. Lõppkokkuvõttes on iga protsessi eesmärk väärtuse loomine, mis omakorda peaks tooma kaasa kindla majandusliku efekti. Siin on äärmiselt oluline selgelt sõnastada ärimudel ja arvutada, milline on oodatav kasum mudeli rakendamisest ettevõtte väärtuse loomise üldstruktuuris. Esinevad olukorrad, kus mudeli rakendamine ei õigusta end, ning masinõppe spetsialistide kulutatud aeg osutub palju kallimaks kui selle tööülesande täitmine operaatori poolt. Seetõttu tuleks neid juhtumeid püüda tuvastada süsteemide loomise varajastes etappides.
Seega hakkab mudeli kasum tootma vaid siis, kui MLOpsi protsessis on õigesti määratletud ärieesmärk,Prioriteedid on paika pandud ning mudeli süsteemi juurutamise protsess on arenduse varases etapis sõnastatud.
Uus protsess – uued väljakutsed
Käsitletav küsimus, kui palju on ML-mudeleid võimalik kasutada äriprobleemide lahendamiseks, ning tehisintellekti usaldusväärsus on üks peamisi väljakutseid MLOps'i lähenemiste arengus ja rakendamises. Alguses on äri ettevaatlik masinõppe rakenduste suhtes — keeruline on usaldada mudeleid seal, kus varem tegid tööd inimesed. Äri jaoks paistavad programmid kui "must kast", mille vastuste asjakohasust tuleb veel tõestada. Lisaks kehtivad panganduses, telekommunikatsiooniettevõtetes ja mujal ranged regulatiivsed nõuded. Kõik panganduses rakendatud süsteemid ja algoritmid on auditi all. Selle probleemiga tegelemiseks, et veenda äri ja regulatoore tehisintellekti vastuste õigustatuse ja korrektsuse osas, rakendatakse koos mudeliga ka jälgimisvahendeid. Samuti on olemas sõltumatu valideerimise protseduur, mis on regulatiivsete mudelite jaoks kohustuslik ja vastab Keskpanga nõuetele. Sõltumatu ekspertgrupp viib läbi mudeli poolt saadud tulemuste auditi, arvestades sisendeid.
Teine samm on mudelite riskide hindamine ja arvestamine masinõppe mudeli rakendamisel. Kui isegi inimene ei saa sajaprotsendilise kindlusega öelda, kas kleit oli valge või sinine, siis on ka tehisintellektil õigus eksida. Samuti tuleb arvestada, et andmed võivad aja jooksul muutuda ning mudeleid tuleb täiendavalt õpetada, et nad suudaksid anda piisavalt täpse tulemuse. Et äriprotsess ei kannataks, on oluline juhtida mudelite riske ja jälgida mudeli tööd, harjutades seda regulaarselt uute andmetega.

Kuid pärast esimest usaldamatuse etappi hakkab väljenduma vastupidine efekt. Mida rohkem mudeleid edukalt protsessidesse rakendatakse, seda suurem on ettevõtte isu tehisintellekti kasutamiseks — ilmnevad uusi ja uusi ülesandeid, mida saab lahendada masinõppe meetoditega. Iga ülesanne käivitab terve protsessi, mis nõuab erinevaid oskusi:
- andmeinsenerid ette valmistavad ja töötlevad andmeid;
- andmete teadlased rakendavad masinõppe tööriistu ja arendavad mudelit;
- IT osakond rakendab mudeli süsteemi;
- ML-insener määratleb, kuidas seda mudelit õigesti integreerida protsessi, milliseid IT-tööriistu kasutada modelleerimise rakendamise nõuete, päringuhulga, vastuseaja jne järgi.
- ML-arhitekt projekteerib, kuidas füüsiliselt rakendada tarkvaratoodet tööstussüsteemis.
Kogu tsükkel nõuab suurt hulka kõrgelt kvalifitseeritud spetsialiste. Teatud arengu ja ML mudelite äritegevusse süvenemise hetkel selgub, et spetsialistide arvu lineaarne suurendamine, mis on proportsionaalne ülesannete arvu kasvuga, muutub kalliks ja ebaefektiivseks. Seetõttu tekib vajadus MLOps protsesside automatiseerimise järele — määratlemine mitmest standardklassist masinõppe ülesannetest, andmete töötlemise tüüppipeede arendamine ja mudelite täiendamine. Ideaalses olukorras vajavad selliste ülesannete lahendamiseks professionaalid, kes valdavad võrdselt hästi teadmisi BigData, andmete teaduse, DevOpsi ja IT piirialal. Seetõttu on suurim probleem andmete teaduse tööstuses ja suurim väljakutse MLOps protsesside korraldamisel — sellise pädevuse puudumine praegusel tööjõuturul. Spetsialiste, kes vastavad nendele nõuetele, leidub praegu tööjõuturul vaid üksikuid ja nad on kulda väärivad.
Pädevuste küsimus
Teoorias saab kõiki MLOpsi ülesandeid lahendada klassikaliste DevOpsi tööriistadega, ilma et peaks spetsialiseeritud rollimudeli laiendusele toetuma. Nagu oleme juba eespool maininud, peab andmete teadlane olema mitte ainult matemaatik ja andmeanalüütika spetsialist, vaid ka kogu töövoo guru — tema ülesandeks on arhitektuuri väljatöötamine, mudelite programmeerimine mitmes keeles, sõltuvalt arhitektuurist, andmete vitriini ettevalmistamine ja rakenduse ise juurutamine. Kuid tehnilise raamistikku loomine, mis teostatakse MLOpsi protsessis, võtab kuni 80% tööjõudest, mis tähendab, et kvalifitseeritud matemaatik, kelleks on kvaliteetne andmete teadlane, pühendab vaid 20% oma ajast oma spetsialiteedile. Seetõttu muutub spetsialistide rollide eristamine, kes teostavad masinõppemudelite rakendamise protsessi, eluliselt vajalikuks.
Kuidas rolle detailselt eristada, sõltub ettevõtte suurusest. Üks asi on see, kui idufirmas on üks inimene, kes täidab kõiki rolle: insener, arhitekt ja DevOps. Täiesti teine asi on see, kui suures ettevõttes on kõik mudelite arendamise protsessid koondatud kõrgelt kvalifitseeritud andmete teadlaste kätte, samas kui programmeerija või andmebaaside spetsialist — tavaline ja taskukohasem kompetents tööturul — suudab võtta enda peale suure osa rutiinsetest ülesannetest.
Seega sõltub otsekohe, kus läheb piir spetsialistide valikul MLOpsi protsessi tagamiseks ja kuidas on korraldatud arendatud mudelite operatsioonalisatsiooni protsess, arendatud mudelite kiirus ja kvaliteet, meeskonna tootlikkus ja selles valitsev mikrokliima.
Mida meie tiim on juba saavutanud
Me ei ole nii kaua aega tagasi alustanud kompetentsistruktuuri ja MLOpsi protsesside ülesehitamist. Kuid juba praegu on meie mudelihalduse projektid ja mudelite rakendamine teenusena MVP testimise staadiumis.
Oleme samuti määranud suurt ettevõtet toetava kompetentsi struktuuri ja organisatsioonilise koostöö struktuuri kõikide protsessi osalejate vahel. Oleme loonud Agile-meeskonnad, kes lahendavad ülesandeid kõigi äri tellijate jaoks ja korraldanud koostööprotsessi projektimeeskondadega, kes arendavad platvorme ja infrastruktuuri, mis on MLOpsi hoone vundament.
Küsimused tulevikuks
MLOps on arenev valdkond, mis tunneb kompetentside puudust ja tulevikus tõuseb see kindlasti esile. Praegu on parim aluseks võtta DevOpsi kogemused ja praktikad. MLOpsi peamine eesmärk on ML-mudelite tõhusam kasutamine äriülesannete lahendamiseks. Selle käigus tekib aga palju küsimusi:
- Kuidas lühendada mudelite tootmisseviimise aega?
- Kuidas vähendada bürokraatlikke takistusi erinevate kompetentsidega meeskondade vahel ja suurendada koostöösuundumust?
- Kuidas jälgida mudeleid, hallata versioone ja korraldada tõhusat jälgimist?
- Kuidas luua tõeliselt tsükliline elutsükkel modernse ML-mudeli jaoks?
- Kuidas standardiseerida masinõppe protsessi?
Nendele küsimustele vastamine mõjutab oluliselt, kui kiiresti MLOps oma potentsiaali täielikult avab.
Allikas: habr.com
