Programmēšana

MLops: mašīnmācīšanās darbību pieaugums

Cik grūti datu zinātniekiem ir iezīmēt datus un izstrādāt precīzus mašīnmācīšanās modeļus, modeļu pārvaldība ražošanā var būt vēl biedējošāka. Modeļu novirzīšanas atpazīšana, modeļu pārkvalificēšana ar datu kopu atjaunināšanu, veiktspējas uzlabošana un pamatā esošo tehnoloģiju platformu uzturēšana ir svarīga datu zinātnes prakse. Bez šīm disciplīnām modeļi var radīt kļūdainus rezultātus, kas būtiski ietekmē uzņēmējdarbību.

Izgatavošanai gatavu modeļu izstrāde nav viegls sasniegums. Saskaņā ar vienu mašīnmācīšanās pētījumu 55 procenti uzņēmumu nebija izmantojuši modeļus ražošanā, un 40 vai vairāk procentiem viena modeļa ieviešanai nepieciešamas vairāk nekā 30 dienas. Panākumi rada jaunas problēmas, un 41 procents respondentu atzīst mašīnmācīšanās modeļu versiju grūtības un reproducējamību.

Mācība ir tāda, ka pēc mašīnmācīšanās modeļu ieviešanas ražošanā un uzņēmējdarbības procesos rodas jauni šķēršļi.

Modeļu vadība un darbības savulaik bija izaicinājumi modernākajām datu zinātnes komandām. Tagad uzdevumi ietver ražošanas mašīnmācīšanās modeļu novērošanu attiecībā uz dreifēšanu, modeļu pārkvalifikācijas automatizēšanu, brīdināšanu, kad novirze ir nozīmīga, un atpazīšanu, kad modeļiem nepieciešama uzlabošana. Tā kā vairāk organizāciju iegulda mašīnmācībās, ir jāpalielina izpratne par modeļu vadību un operācijām.

Labās ziņas ir tādas platformas un bibliotēkas kā atvērtā koda MLFlow un DVC, kā arī Alteryx, Databricks, Dataiku, SAS, DataRobot, ModelOp un citu komerciālie rīki atvieglo modeļu pārvaldību un darbības datu zinātnes komandām. Publiskie mākoņu nodrošinātāji dalās arī ar tādām praksēm kā MLops ieviešana ar Azure Machine Learning.

Starp modeļu vadību un devops ir vairākas līdzības. Daudzi modeļu vadību un darbības sauc par MLops un definē kā kultūru, praksi un tehnoloģijas, kas nepieciešamas mašīnmācīšanās modeļu izstrādei un uzturēšanai.

Izpratne par modeļa vadību un operācijām

Lai labāk izprastu modeļa vadību un darbības, apsveriet programmatūras izstrādes prakses savienojumu ar zinātniskām metodēm.

Kā programmatūras izstrādātājs jūs zināt, ka lietojumprogrammas versijas aizpildīšana un ieviešana ražošanā nav mazsvarīga. Bet vēl lielāks izaicinājums sākas, kad lietojumprogramma sasniedz ražošanu. Galalietotāji sagaida regulārus uzlabojumus, un pamata infrastruktūrai, platformām un bibliotēkām ir nepieciešams labojums un uzturēšana.

Tagad pāriesim uz zinātnes pasauli, kur jautājumi izraisa vairākas hipotēzes un atkārtotus eksperimentus. Jūs zinātnes stundā iemācījāties uzturēt šo eksperimentu žurnālu un izsekot dažādu mainīgo mainīšanas ceļam no viena eksperimenta uz nākamo. Eksperimentējot tiek iegūti labāki rezultāti, un dokumentējot ceļojumu, vienaudžiem var pārliecināties, ka esat izpētījis visus mainīgos un ka rezultāti ir atkārtojami.

Datu zinātniekiem, kuri eksperimentē ar mašīnmācīšanās modeļiem, jāiekļauj gan programmatūras izstrādes, gan zinātnisko pētījumu disciplīnas. Mašīnmācīšanās modeļi ir programmatūras kods, kas izstrādāts tādās valodās kā Python un R, kas izveidots ar TensorFlow, PyTorch vai citām mašīnmācīšanās bibliotēkām, tiek palaists tādās platformās kā Apache Spark un izvietots mākoņu infrastruktūrā. Mašīnmācīšanās modeļu izstrāde un atbalsts prasa ievērojamus eksperimentus un optimizāciju, un datu zinātniekiem jāpierāda savu modeļu precizitāte.

Tāpat kā programmatūras izstrāde, arī mašīnmācīšanās modeļiem nepieciešama pastāvīga apkope un uzlabojumi. Daži no tiem nāk no koda, bibliotēku, platformu un infrastruktūras uzturēšanas, taču datu zinātniekiem ir jāuztraucas arī par modeļa novirzi. Vienkārši sakot, modeļa novirze notiek, kad kļūst pieejami jauni dati, un mašīnmācīšanās modeļu sniegtās prognozes, kopas, segmentācijas un ieteikumi atšķiras no gaidāmajiem rezultātiem.

Veiksmīga modeļu vadība sākas ar optimālu modeļu izstrādi

Es runāju ar Alanx Jacobson, Alteryx galveno datu un analīzes speciālistu, par to, kā organizācijas gūst panākumus, un par mašīnmācīšanās modeļa attīstību. “Lai vienkāršotu modeļa izstrādi, lielākajai daļai datu zinātnieku pirmais izaicinājums ir nodrošināt stingru problēmu formulēšanu. Daudzas sarežģītas biznesa problēmas var atrisināt, izmantojot ļoti vienkāršu analīzi, taču vispirms ir nepieciešams problēmu strukturēt tā, lai dati un analīze varētu palīdzēt atbildēt uz jautājumu. Pat tad, ja tiek izmantoti sarežģīti modeļi, procesa sarežģītākā daļa parasti ir datu strukturēšana un pareizu izejvielu kvalitātes nodrošināšana. ”

Piekrītu Džeikobsonam. Pārāk daudz datu un tehnoloģiju ieviešanas sākas ar sliktiem paziņojumiem vai to nav vispār, un ar nepietiekamu laiku, rīkiem un priekšmetu lietpratību, lai nodrošinātu atbilstošu datu kvalitāti. Organizācijām vispirms jāsāk ar gudru jautājumu uzdošanu par lielajiem datiem, ieguldījumiem datu kopās un pēc tam datu zinātnē veiklu metodiku izmantošanai, lai pārietu uz risinājumiem.

Mašīnu mācību modeļu novērošana modeļa dreifam

Precīzas problēmas definīcijas iegūšana ir kritiska, lai nepārtraukti vadītu un uzraudzītu modeļus ražošanā. Džeikobsons turpināja paskaidrot: “Monitoringa modeļi ir svarīgs process, taču, lai to izdarītu pareizi, ir nepieciešama spēcīga izpratne par mērķiem un iespējamām nelabvēlīgām sekām, kas prasa skatīšanos. Lai gan lielākā daļa apspriež modeļa veiktspējas un laika gaitā veikto izmaiņu uzraudzību, šajā telpā vissvarīgāk un grūtāk ir analizēt neparedzētas sekas. "

Viens vienkāršs veids, kā saprast modeļa novirzi un neparedzētās sekas, ir apsvērt COVID-19 ietekmi uz mašīnmācīšanās modeļiem, kas izstrādāti, izmantojot apmācības datus pirms pandēmijas. Mašīnmācīšanās modeļus, kuru pamatā ir cilvēka uzvedība, dabiskās valodas apstrāde, patērētāju pieprasījuma modeļi vai krāpšanas modeļi, visus ietekmēja pandēmijas laikā mainītā uzvedība, kas sajaucas ar AI modeļiem.

Tehnoloģiju nodrošinātāji atbrīvo jaunas MLops iespējas, jo vairāk organizāciju iegūst vērtību un nobriedina savas datu zinātnes programmas. Piemēram, SAS ieviesa funkciju ieguldījumu indeksu, kas datu zinātniekiem palīdz novērtēt modeļus bez mērķa mainīgā. Cloudera nesen paziņoja par ML uzraudzības pakalpojumu, kas apkopo tehniskās veiktspējas metriku un izsekošanas modeļa prognozes.

MLops pievēršas arī automatizācijai un sadarbībai

Starp mašīnmācīšanās modeļa izstrādi un tā pārraudzību ražošanā ir papildu rīki, procesi, sadarbība un iespējas, kas ļauj mērogot datu zinātnes praksi. Dažas automatizācijas un infrastruktūras prakses ir analogas devops un mašīnmācīšanās modeļiem ietver infrastruktūru kā kodu un CI / CD (nepārtraukta integrācija / nepārtraukta izvietošana). Citas ietver izstrādātāju iespējas, piemēram, modeļu versijas ar to pamatā esošajiem apmācības datiem un modeļu krātuves meklēšanu.

Interesantākie MLops aspekti nodrošina zinātnisko metodiku un sadarbību datu zinātnes komandās. Piemēram, DataRobot nodrošina čempiona-izaicinātāja modeli, kas var paralēli palaist vairākus eksperimentālos modeļus, lai apstrīdētu ražošanas versijas precizitāti. SAS vēlas palīdzēt datu zinātniekiem uzlabot tirgus ātrumu un datu kvalitāti. Alteryx nesen iepazīstināja ar Analytics centru, lai palīdzētu sadarboties un dalīties starp datu zinātnes komandām.

Tas viss parāda, ka mašīnmācīšanās pārvaldīšana un mērogošana prasa daudz vairāk disciplīnas un prakses, nekā vienkārši lūdzot datu zinātnieku kodēt un pārbaudīt nejaušu mežu, k-vidusmēru vai konvolucionālu neironu tīklu Python.