MLOps: DevOps në botën e mësimit të makinerisë

Në vitin 2018, koncepti i MLOps u shfaq në qarqet profesionale dhe në konferencat tematike kushtuar AI, i cili shpejt u përhap në industri dhe tani po zhvillohet si një drejtim i pavarur. Në të ardhmen, MLO-të mund të bëhen një nga fushat më të njohura në IT. Çfarë është dhe me çfarë hahet?Le ta zbulojmë më poshtë.

MLOps: DevOps në botën e mësimit të makinerisë

Çfarë është MLOps

MLOps (kombinimi i teknologjive dhe proceseve të mësimit të makinerive dhe qasjeve për zbatimin e modeleve të zhvilluara në proceset e biznesit) është një mënyrë e re bashkëpunimi midis përfaqësuesve të biznesit, shkencëtarëve, matematikanëve, specialistëve të mësimit të makinerive dhe inxhinierëve të IT-së kur krijojnë sisteme të inteligjencës artificiale.

Me fjalë të tjera, është një mënyrë për t'i kthyer metodat dhe teknologjitë e mësimit të makinerive në një mjet të dobishëm për zgjidhjen e problemeve të biznesit. 

Është e nevojshme të kuptohet se zinxhiri i produktivitetit fillon shumë përpara zhvillimit të modelit. Hapi i parë i tij është të përcaktojë një problem biznesi, një hipotezë për vlerën që mund të nxirret nga të dhënat dhe një ide biznesi për zbatimin e tij. 

Vetë koncepti i MLOps u ngrit si një analogji me konceptin e DevOps në lidhje me modelet dhe teknologjitë e mësimit të makinerive. DevOps është një qasje për zhvillimin e softuerit që ju lejon të rritni shpejtësinë e zbatimit të ndryshimeve individuale duke ruajtur fleksibilitetin dhe besueshmërinë duke përdorur një sërë qasjesh, duke përfshirë zhvillimin e vazhdueshëm, ndarjen e funksioneve në një numër mikroshërbimesh të pavarura, testimin e automatizuar dhe vendosjen e individëve. ndryshimet, monitorimi global i shëndetit, sistemi i reagimit të shpejtë për dështimet e zbuluara, etj. 

DevOps ka përcaktuar ciklin e jetës së softuerit dhe komuniteti ka dalë me idenë për të aplikuar të njëjtën metodologji për të dhënat e mëdha. DataOps është një përpjekje për të përshtatur dhe zgjeruar metodologjinë duke marrë parasysh veçoritë e ruajtjes, transmetimit dhe përpunimit të sasive të mëdha të të dhënave në platforma të ndryshme dhe të ndërveprueshme.
  
Me ardhjen e një mase të caktuar kritike të modeleve të mësimit të makinerive të zbatuara në proceset e biznesit të ndërmarrjeve, u vu re një ngjashmëri e fortë midis ciklit jetësor të modeleve matematikore të mësimit të makinerive dhe ciklit jetësor të softuerit. I vetmi ndryshim është se algoritmet e modelit krijohen duke përdorur mjete dhe metoda të mësimit të makinerive. Prandaj, lindi natyrshëm ideja për të aplikuar dhe përshtatur qasje të njohura tashmë për zhvillimin e softuerit për modelet e mësimit të makinerive. Kështu, fazat kryesore të mëposhtme mund të dallohen në ciklin jetësor të modeleve të mësimit të makinerive:

  • përcaktimi i një ideje biznesi;
  • trajnim model;
  • testimin dhe zbatimin e modelit në procesin e biznesit;
  • funksionimin e modelit.

Kur gjatë funksionimit ka nevojë për të ndryshuar ose rikualifikuar modelin në të dhëna të reja, cikli fillon përsëri - modeli rafinohet, testohet dhe vendoset një version i ri.

Tërheqje. Pse të rikualifikohen dhe jo të rikualifikohen? Termi "rikualifikim model" ka një kuptim të dyfishtë: midis ekspertëve nënkupton një defekt modeli, kur modeli parashikon mirë, në të vërtetë përsërit parametrin e parashikuar në grupin e trajnimit, por performon shumë më keq në kampionin e të dhënave të jashtme. Natyrisht, një model i tillë është një defekt, pasi ky defekt nuk lejon përdorimin e tij.

Në këtë cikël jetësor, duket logjike përdorimi i mjeteve DevOps: testimi i automatizuar, vendosja dhe monitorimi, dizajnimi i llogaritjeve të modeleve në formën e mikroshërbimeve të veçanta. Por ka gjithashtu një sërë veçorish që parandalojnë përdorimin e drejtpërdrejtë të këtyre mjeteve pa lidhje shtesë ML.

MLOps: DevOps në botën e mësimit të makinerisë

Si t'i bëni modelet të funksionojnë dhe të jenë fitimprurës

Si shembull në të cilin do të demonstrojmë përdorimin e qasjes MLOps, ne do të marrim detyrën klasike të robotizimit të një mbështetjeje bisede për një produkt bankar (ose ndonjë produkt tjetër). Në mënyrë tipike, një proces biznesi i mbështetjes së bisedës duket kështu: një klient fut një mesazh me një pyetje në një bisedë dhe merr një përgjigje nga një specialist brenda një peme dialogu të paracaktuar. Detyra e automatizimit të një bisede të tillë zakonisht zgjidhet duke përdorur grupe rregullash të përcaktuara me profesionalizëm, të cilat janë shumë intensive për t'u zhvilluar dhe mbajtur. Efikasiteti i një automatizimi të tillë, në varësi të nivelit të kompleksitetit të detyrës, mund të jetë 20-30%. Natyrisht, lind ideja se është më fitimprurëse të zbatohet një modul i inteligjencës artificiale - një model i zhvilluar duke përdorur mësimin e makinerive, i cili:

  • është në gjendje të përpunojë një numër më të madh kërkesash pa pjesëmarrjen e operatorit (në varësi të temës, në disa raste efikasiteti mund të arrijë 70-80%);
  • përshtatet më mirë me formulimet jo standarde në dialog - është në gjendje të përcaktojë qëllimin, dëshirën reale të përdoruesit bazuar në një kërkesë jo të formuluar qartë;
  • di se si të përcaktojë kur përgjigja e modelit është adekuate dhe kur ka dyshime për "ndërgjegjësimin" e kësaj përgjigjeje dhe ju duhet të bëni një pyetje sqaruese shtesë ose të kaloni te operatori;
  • mund të trajnohet gjithashtu automatikisht (në vend që një grup zhvilluesish të përshtatin dhe korrigjojnë vazhdimisht skriptet e përgjigjeve, modeli trajnohet shtesë nga një specialist i Shkencës së të Dhënave duke përdorur bibliotekat e duhura të mësimit të makinerive). 

MLOps: DevOps në botën e mësimit të makinerisë

Si ta bëni një model kaq të avancuar të funksionojë? 

Ashtu si me zgjidhjen e çdo problemi tjetër, përpara zhvillimit të një moduli të tillë, është e nevojshme të përcaktojmë një proces biznesi dhe të përshkruajmë zyrtarisht detyrën specifike që do të zgjidhim duke përdorur metodën e mësimit të makinës. Në këtë pikë, fillon procesi i funksionalizimit, i përcaktuar me akronimin Ops. 

Hapi tjetër është që Shkencëtari i të Dhënave, në bashkëpunim me Inxhinierin e të Dhënave, kontrollon disponueshmërinë dhe mjaftueshmërinë e të dhënave dhe hipotezën e biznesit në lidhje me qëndrueshmërinë e idesë së biznesit, duke zhvilluar një model prototip dhe duke testuar efektivitetin e tij aktual. Vetëm pas konfirmimit nga biznesi mund të fillojë kalimi nga zhvillimi i një modeli në integrimin e tij në sisteme që kryejnë një proces specifik biznesi. Planifikimi i zbatimit nga fundi në fund, një kuptim i thellë në çdo fazë se si do të përdoret modeli dhe çfarë efekti ekonomik do të sjellë, është një pikë themelore në proceset e futjes së qasjeve MLOps në peizazhin teknologjik të kompanisë.

Me zhvillimin e teknologjive të AI, numri dhe shumëllojshmëria e problemeve që mund të zgjidhen duke përdorur mësimin e makinerive po rritet në mënyrë eksponenciale. Çdo proces i tillë biznesi është një kursim për kompaninë për shkak të automatizimit të punës së punonjësve në masë (qendra e thirrjeve, kontrollimi dhe renditja e dokumenteve, etj.), është një zgjerim i bazës së klientëve duke shtuar funksione të reja tërheqëse dhe të përshtatshme. po kursen para për shkak të përdorimit optimal të tyre dhe rishpërndarjes së burimeve dhe shumë më tepër. Në fund të fundit, çdo proces është i përqendruar në krijimin e vlerës dhe, si rrjedhojë, duhet të sjellë një efekt të caktuar ekonomik. Këtu është shumë e rëndësishme të formulohet qartë ideja e biznesit dhe të llogaritet fitimi i pritur nga zbatimi i modelit në strukturën e përgjithshme të krijimit të vlerës së kompanisë. Ka situata kur zbatimi i një modeli nuk justifikon vetveten, dhe koha e shpenzuar nga specialistët e mësimit të makinerive është shumë më e shtrenjtë se vendi i punës i operatorit që kryen këtë detyrë. Kjo është arsyeja pse është e nevojshme të përpiqemi të identifikojmë raste të tilla në fazat e hershme të krijimit të sistemeve të AI.

Rrjedhimisht, modelet fillojnë të gjenerojnë fitim vetëm kur problemi i biznesit është formuluar saktë në procesin e MLOps, janë vendosur prioritetet dhe procesi i futjes së modelit në sistem është formuluar në fazat e hershme të zhvillimit.

Procesi i ri - sfida të reja

Një përgjigje gjithëpërfshirëse për pyetjen themelore të biznesit rreth asaj se sa të zbatueshme janë modelet e ML për zgjidhjen e problemeve, çështja e përgjithshme e besimit në AI është një nga sfidat kryesore në procesin e zhvillimit dhe zbatimit të qasjeve MLOps. Fillimisht, bizneset janë skeptikë për futjen e mësimit të makinerive në procese - është e vështirë të mbështetesh në modele në vendet ku më parë, si rregull, njerëzit punonin. Për biznesin, programet duket se janë një "kuti e zezë", rëndësia e së cilës ende duhet të vërtetohet. Përveç kësaj, në sektorin bankar, në biznesin e operatorëve të telekomit dhe të tjerëve, ka kërkesa strikte të rregullatorëve të qeverisë. Të gjitha sistemet dhe algoritmet që zbatohen në proceset bankare i nënshtrohen auditimit. Për të zgjidhur këtë problem, për t'i provuar biznesit dhe rregullatorëve vlefshmërinë dhe korrektësinë e përgjigjeve të inteligjencës artificiale, së bashku me modelin po futen mjete monitorimi. Gjithashtu, ekziston një procedurë e pavarur validimi, e detyrueshme për modelet rregullatore, e cila plotëson kërkesat e Bankës Qendrore. Një grup i pavarur ekspertësh auditon rezultatet e marra nga modeli duke marrë parasysh të dhënat hyrëse.

Sfida e dytë është vlerësimi dhe marrja parasysh e rreziqeve të modelit kur zbatohet një model i mësimit të makinerive. Edhe nëse një person nuk mund t'i përgjigjet pyetjes me siguri qind për qind nëse i njëjti fustan ishte i bardhë apo blu, atëherë edhe inteligjenca artificiale ka të drejtë të gabon. Vlen gjithashtu të merret në konsideratë që të dhënat mund të ndryshojnë me kalimin e kohës dhe modelet duhet të rikualifikohen në mënyrë që të prodhojnë një rezultat mjaft të saktë. Për të siguruar që procesi i biznesit të mos vuajë, është e nevojshme të menaxhohen rreziqet e modelit dhe të monitorohet performanca e modelit, duke e ritrajnuar rregullisht atë për të dhëna të reja.

MLOps: DevOps në botën e mësimit të makinerisë

Por pas fazës së parë të mosbesimit, fillon të shfaqet efekti i kundërt. Sa më shumë modele të zbatohen me sukses në procese, aq më shumë rritet oreksi i biznesit për përdorimin e inteligjencës artificiale - po gjenden probleme të reja dhe të reja që mund të zgjidhen duke përdorur metodat e mësimit të makinerive. Çdo detyrë shkakton një proces të tërë që kërkon kompetenca të caktuara:

  • inxhinierët e të dhënave përgatisin dhe përpunojnë të dhënat;
  • shkencëtarët e të dhënave përdorin mjete të mësimit të makinerive dhe zhvillojnë një model;
  • TI e implementon modelin në sistem;
  • Inxhinieri ML përcakton se si të integrohet saktë ky model në proces, cilat mjete IT të përdorë, në varësi të kërkesave për mënyrën e aplikimit të modelit, duke marrë parasysh rrjedhën e kërkesave, kohën e përgjigjes, etj. 
  • Një arkitekt ML harton se si një produkt softuer mund të zbatohet fizikisht në një sistem industrial.

I gjithë cikli kërkon një numër të madh specialistësh të kualifikuar. Në një pikë të caktuar të zhvillimit dhe shkallës së depërtimit të modeleve të ML në proceset e biznesit, rezulton se shkallëzimi linear i numrit të specialistëve në proporcion me rritjen e numrit të detyrave bëhet i shtrenjtë dhe joefektiv. Prandaj, lind pyetja e automatizimit të procesit MLOps - përcaktimi i disa klasave standarde të problemeve të mësimit të makinerive, zhvillimi i tubacioneve standarde të përpunimit të të dhënave dhe trajnimi shtesë i modeleve. Në një tablo ideale, zgjidhja e problemeve të tilla kërkon profesionistë që janë po aq të aftë në kompetencat në kryqëzimin e të dhënave të mëdha, Shkencës së të dhënave, DevOps dhe IT. Prandaj, problemi më i madh në industrinë e Data Science dhe sfida më e madhe në organizimin e proceseve MLOps është mungesa e një kompetence të tillë në tregun ekzistues të trajnimit. Specialistët që plotësojnë këto kërkesa janë aktualisht të rrallë në tregun e punës dhe ia vlejnë peshën e tyre në ar.

Për çështjen e kompetencave

Në teori, të gjitha detyrat MLOps mund të zgjidhen duke përdorur mjetet klasike të DevOps dhe pa përdorur një shtrirje të specializuar të modelit të roleve. Pastaj, siç e përmendëm më lart, një shkencëtar i të dhënave duhet të jetë jo vetëm një matematikan dhe analist i të dhënave, por edhe një guru i të gjithë tubacionit - ai është përgjegjës për zhvillimin e arkitekturës, programimin e modeleve në disa gjuhë në varësi të arkitekturës, përgatitjen një të dhëna mart dhe vendosjen e vetë aplikacionit. Megjithatë, krijimi i kuadrit teknologjik të zbatuar në procesin e MLOps nga fundi në fund kërkon deri në 80% të kostove të punës, që do të thotë se një matematikan i kualifikuar, i cili është një shkencëtar cilësor i të dhënave, do t'i kushtojë vetëm 20% të kohës së tij specialitetit të tij. . Prandaj, përcaktimi i roleve të specialistëve të përfshirë në procesin e zbatimit të modeleve të mësimit të makinerisë bëhet jetik. 

Se sa të detajuara duhet të përcaktohen rolet varet nga madhësia e ndërmarrjes. Është një gjë kur një startup ka një specialist, një punëtor të palodhur në rezervën e energjisë, i cili është inxhinieri, arkitekti dhe DevOps i tij. Është një çështje krejtësisht tjetër kur, në një ndërmarrje të madhe, të gjitha proceset e zhvillimit të modelit përqendrohen në disa specialistë të nivelit të lartë të Shkencës së të Dhënave, ndërsa një programues ose specialist i bazës së të dhënave - një kompetencë më e zakonshme dhe më pak e kushtueshme në tregun e punës - mund të marrë në pjesën më të madhe të punës.detyrat rutinë.

Kështu, shpejtësia dhe cilësia e modeleve të zhvilluara, produktiviteti i ekipit dhe mikroklima në të varen drejtpërdrejt nga ajo se ku qëndron kufiri në përzgjedhjen e specialistëve për të mbështetur procesin e MLOps dhe se si organizohet procesi i funksionalizimit të modeleve të zhvilluara. .

Ajo që ekipi ynë ka bërë tashmë

Së fundmi kemi filluar të ndërtojmë një strukturë kompetencash dhe procese MLOps. Por projektet tona për menaxhimin e ciklit të jetës së modeleve dhe përdorimin e modeleve si shërbim janë tashmë në fazën e testimit MVP.

Ne përcaktuam gjithashtu strukturën optimale të kompetencës për një ndërmarrje të madhe dhe strukturën organizative të ndërveprimit midis të gjithë pjesëmarrësve në proces. Ekipet e shkathëta u organizuan për të zgjidhur problemet për të gjithë gamën e klientëve të biznesit dhe u krijua një proces ndërveprimi me ekipet e projektit për të krijuar platforma dhe infrastrukturë, e cila është themeli i ndërtesës MLOps në ndërtim.

Pyetje për të ardhmen

MLOps është një fushë në rritje që po përjeton mungesë kompetencash dhe do të fitojë vrull në të ardhmen. Ndërkohë, është më mirë të ndërtoni zhvillimet dhe praktikat e DevOps. Qëllimi kryesor i MLOps është përdorimi më efektiv i modeleve të ML për të zgjidhur problemet e biznesit. Por kjo ngre shumë pyetje:

  • Si të zvogëloni kohën për të nxjerrë modelet në prodhim?
  • Si të zvogëlohet fërkimi burokratik midis ekipeve të kompetencave të ndryshme dhe të rritet fokusi në bashkëpunim?
  • Si të gjurmoni modelet, të menaxhoni versionet dhe të organizoni monitorim efektiv?
  • Si të krijoni një cikël jete vërtet rrethore për një model modern ML?
  • Si të standardizohet procesi i mësimit të makinerive?

Përgjigjet e këtyre pyetjeve do të përcaktojnë kryesisht se sa shpejt MLO-të do të arrijnë potencialin e saj të plotë.

Burimi: www.habr.com

Shto një koment