MLOps: DevOps in die masjienleerwêreld

In 2018 het die konsep van MLOps verskyn in professionele kringe en by tematiese konferensies gewy aan KI, wat vinnig posgevat het in die bedryf en nou ontwikkel as 'n onafhanklike rigting. In die toekoms kan MLO's een van die gewildste gebiede in IT word. Wat is dit en waarmee word dit geëet?Kom ons vind hieronder uit.

MLOps: DevOps in die masjienleerwêreld

Wat is MLOps

MLOps (kombinasie van masjienleertegnologieë en -prosesse en benaderings tot die implementering van ontwikkelde modelle in besigheidsprosesse) is 'n nuwe manier van samewerking tussen besigheidsverteenwoordigers, wetenskaplikes, wiskundiges, masjienleerspesialiste en IT-ingenieurs wanneer kunsmatige intelligensiestelsels geskep word.

Met ander woorde, dit is 'n manier om masjienleermetodes en -tegnologie te omskep in 'n nuttige hulpmiddel om besigheidsprobleme op te los. 

Dit is nodig om te verstaan ​​dat die ketting van produktiwiteit begin lank voor die ontwikkeling van die model. Die eerste stap daarvan is om 'n besigheidsprobleem te definieer, 'n hipotese oor die waarde wat uit die data onttrek kan word, en 'n besigheidsidee om dit toe te pas. 

Die konsep van MLOps het ontstaan ​​as 'n analogie met die konsep van DevOps in verband met masjienleermodelle en -tegnologie. DevOps is 'n benadering tot sagteware-ontwikkeling wat jou toelaat om die spoed van implementering van individuele veranderinge te verhoog, terwyl buigsaamheid en betroubaarheid gehandhaaf word deur 'n aantal benaderings te gebruik, insluitend deurlopende ontwikkeling, verdeling van funksies in 'n aantal onafhanklike mikrodienste, outomatiese toetsing en ontplooiing van individuele veranderinge, globale gesondheidsmonitering, vinnige reaksiestelsel vir bespeurde mislukkings, ens. 

DevOps het die sagteware-lewensiklus gedefinieer, en die gemeenskap het met die idee vorendag gekom om dieselfde metodologie op groot data toe te pas. DataOps is 'n poging om die metodologie aan te pas en uit te brei met inagneming van die kenmerke van die berging, oordrag en verwerking van groot hoeveelhede data in diverse en interoperabele platforms.
  
Met die koms van 'n sekere kritieke massa masjienleermodelle wat in die sakeprosesse van ondernemings geïmplementeer is, is 'n sterk ooreenkoms tussen die lewensiklus van wiskundige masjienleermodelle en die sagteware-lewensiklus opgemerk. Die enigste verskil is dat die modelalgoritmes geskep word met behulp van masjienleergereedskap en -metodes. Daarom het die idee natuurlik ontstaan ​​om reeds bekende benaderings tot sagteware-ontwikkeling vir masjienleermodelle toe te pas en aan te pas. Die volgende sleutelstadia kan dus in die lewensiklus van masjienleermodelle onderskei word:

  • definieer 'n besigheidsidee;
  • model opleiding;
  • toetsing en implementering van die model in die besigheidsproses;
  • werking van die model.

Wanneer daar 'n behoefte is om die model op nuwe data te verander of op te lei, begin die siklus weer - die model word verfyn, getoets en 'n nuwe weergawe word ontplooi.

Terugtrek. Hoekom heroplei en nie heroplei nie? Die term "model heropleiding" het 'n dubbele betekenis: onder kenners beteken dit 'n modeldefek, wanneer die model goed voorspel, eintlik die voorspelde parameter op die opleidingstel herhaal, maar baie swakker presteer op die eksterne datamonster. Natuurlik is so 'n model 'n gebrek, aangesien hierdie gebrek nie die gebruik daarvan toelaat nie.

In hierdie lewensiklus lyk dit logies om DevOps-nutsmiddels te gebruik: outomatiese toetsing, ontplooiing en monitering, ontwerp van modelberekeninge in die vorm van aparte mikrodienste. Maar daar is ook 'n aantal kenmerke wat die direkte gebruik van hierdie instrumente verhoed sonder bykomende ML-binding.

MLOps: DevOps in die masjienleerwêreld

Hoe om modelle te laat werk en winsgewend te wees

As 'n voorbeeld waarin ons die gebruik van die MLOps-benadering sal demonstreer, sal ons die klassieke taak neem om 'n kletssteun vir 'n bank (of enige ander) produk te robotiseer. Tipies lyk 'n kletsondersteuningsbesigheidsproses so: 'n kliënt voer 'n boodskap met 'n vraag in 'n klets in en ontvang 'n antwoord van 'n spesialis binne 'n voorafbepaalde dialoogboom. Die taak om so 'n klets te outomatiseer word gewoonlik opgelos deur kundig gedefinieerde stelle reëls te gebruik, wat baie arbeidsintensief is om te ontwikkel en in stand te hou. Die doeltreffendheid van sulke outomatisering, afhangende van die kompleksiteitsvlak van die taak, kan 20–30% wees. Natuurlik ontstaan ​​die idee dat dit meer winsgewend is om 'n kunsmatige intelligensie-module bekend te stel - 'n model wat ontwikkel is met behulp van masjienleer, wat:

  • is in staat om 'n groter aantal versoeke te verwerk sonder operateursdeelname (afhangende van die onderwerp, kan die doeltreffendheid in sommige gevalle 70–80% bereik);
  • pas beter aan by nie-standaard bewoording in dialoog - is in staat om die bedoeling, die werklike begeerte van die gebruiker te bepaal op grond van 'n nie duidelik geformuleerde versoek;
  • weet hoe om te bepaal wanneer die model se antwoord voldoende is, en wanneer daar twyfel bestaan ​​oor die "bewustheid" van hierdie antwoord en jy 'n bykomende verduidelikende vraag moet vra of na die operateur moet oorskakel;
  • kan addisioneel outomaties opgelei word (in plaas daarvan dat 'n groep ontwikkelaars voortdurend antwoordskrifte aanpas en regstel, word die model bykomend opgelei deur 'n Data Science-spesialis wat die toepaslike masjienleerbiblioteke gebruik). 

MLOps: DevOps in die masjienleerwêreld

Hoe om so 'n gevorderde model te laat werk? 

Soos met die oplossing van enige ander probleem, voor die ontwikkeling van so 'n module, is dit nodig om 'n besigheidsproses te definieer en die spesifieke taak wat ons sal oplos deur die masjienleermetode formeel te beskryf. Op hierdie punt begin die proses van operasionalisering, aangewys deur die akroniem Ops. 

Die volgende stap is dat die Data Scientist, in samewerking met die Data Ingenieur, die beskikbaarheid en genoegsaamheid van data en die sakehipotese oor die lewensvatbaarheid van die besigheidsidee nagaan, 'n prototipe model ontwikkel en die werklike doeltreffendheid daarvan toets. Eers na bevestiging deur die onderneming kan die oorgang van die ontwikkeling van 'n model na die integrasie daarvan in stelsels wat 'n spesifieke besigheidsproses uitvoer, begin. Einde-tot-einde implementeringsbeplanning, 'n diepgaande begrip in elke stadium van hoe die model gebruik gaan word en watter ekonomiese effek dit sal bring, is 'n fundamentele punt in die prosesse om MLOps-benaderings in die maatskappy se tegnologiese landskap in te voer.

Met die ontwikkeling van KI-tegnologie neem die aantal en verskeidenheid probleme wat met masjienleer opgelos kan word, eksponensieel toe. Elke so 'n besigheidsproses is 'n besparing vir die maatskappy as gevolg van die outomatisering van die werk van werknemers in massaposisies (inbelsentrum, kontrolering en sortering van dokumente, ens.), Dit is 'n uitbreiding van die kliëntebasis deur nuwe aantreklike en gerieflike funksies by te voeg , dit spaar geld as gevolg van optimale hul gebruik en herverdeling van hulpbronne en nog baie meer. Uiteindelik is enige proses daarop gefokus om waarde te skep en moet gevolglik 'n sekere ekonomiese effek meebring. Hier is dit baie belangrik om die besigheidsidee duidelik te formuleer en die verwagte wins uit die implementering van die model in die algehele waardeskeppingstruktuur van die maatskappy te bereken. Daar is situasies wanneer die implementering van 'n model homself nie regverdig nie, en die tyd wat deur masjienleerspesialiste spandeer word, is baie duurder as die werkplek van die operateur wat hierdie taak verrig. Daarom is dit nodig om sulke gevalle in die vroeë stadiums van die skep van KI-stelsels te probeer identifiseer.

Gevolglik begin modelle om wins te genereer eers wanneer die besigheidsprobleem korrek in die MLOps-proses geformuleer is, prioriteite gestel is en die proses om die model in die stelsel in te voer in die vroeë stadiums van ontwikkeling geformuleer is.

Nuwe proses - nuwe uitdagings

'N Omvattende antwoord op die fundamentele besigheidsvraag oor hoe toepaslik ML-modelle is om probleme op te los, die algemene kwessie van vertroue in KI is een van die sleuteluitdagings in die proses om MLOps-benaderings te ontwikkel en te implementeer. Aanvanklik is besighede skepties oor die invoering van masjienleer in prosesse - dit is moeilik om op modelle staat te maak op plekke waar mense voorheen as 'n reël gewerk het. Vir besigheid blyk programme 'n "swart boks" te wees, waarvan die relevansie nog bewys moet word. Daarbenewens, in die bankwese, in die besigheid van telekommunikasie-operateurs en ander, is daar streng vereistes van regeringsreguleerders. Alle stelsels en algoritmes wat in bankprosesse geïmplementeer word, is onderhewig aan oudit. Om hierdie probleem op te los, om aan sakeondernemings en reguleerders die geldigheid en korrektheid van kunsmatige intelligensie-reaksies te bewys, word moniteringsinstrumente saam met die model ingestel. Daarbenewens is daar 'n onafhanklike valideringsprosedure, verpligtend vir regulatoriese modelle, wat aan die vereistes van die Sentrale Bank voldoen. 'n Onafhanklike deskundige groep oudit die resultate wat deur die model verkry is met inagneming van die insetdata.

Die tweede uitdaging is om modelrisiko's te assesseer en in ag te neem wanneer 'n masjienleermodel geïmplementeer word. Selfs al kan 'n persoon nie die vraag met honderd persent sekerheid beantwoord of daardie selfde rok wit of blou was nie, dan het kunsmatige intelligensie ook die reg om 'n fout te maak. Dit is ook die moeite werd om in ag te neem dat data met verloop van tyd kan verander, en modelle moet heropgelei word om 'n voldoende akkurate resultaat te lewer. Om te verseker dat die besigheidsproses nie daaronder ly nie, is dit nodig om modelrisiko's te bestuur en die prestasie van die model te monitor en dit gereeld op nuwe data op te lei.

MLOps: DevOps in die masjienleerwêreld

Maar na die eerste stadium van wantroue, begin die teenoorgestelde effek verskyn. Hoe meer modelle suksesvol in prosesse geïmplementeer word, hoe meer besigheid se aptyt vir die gebruik van kunsmatige intelligensie groei – nuwe en nuwe probleme word gevind wat opgelos kan word deur masjienleermetodes te gebruik. Elke taak veroorsaak 'n hele proses wat sekere bevoegdhede vereis:

  • data-ingenieurs berei data voor en verwerk;
  • datawetenskaplikes gebruik masjienleergereedskap en ontwikkel 'n model;
  • IT implementeer die model in die stelsel;
  • Die ML-ingenieur bepaal hoe om hierdie model korrek in die proses te integreer, watter IT-instrumente om te gebruik, afhangende van die vereistes vir die wyse van toepassing van die model, met inagneming van die vloei van versoeke, reaksietyd, ens. 
  • 'n ML-argitek ontwerp hoe 'n sagtewareproduk fisies in 'n industriële stelsel geïmplementeer kan word.

Die hele siklus vereis 'n groot aantal hoogs gekwalifiseerde spesialiste. Op 'n sekere punt in die ontwikkeling en mate van penetrasie van ML-modelle in besigheidsprosesse, blyk dit dat die lineêre skaal van die aantal spesialiste in verhouding tot die toename in die aantal take duur en ondoeltreffend word. Daarom ontstaan ​​die vraag oor die outomatisering van die MLOps-proses - die definisie van verskeie standaardklasse van masjienleerprobleme, die ontwikkeling van standaard dataverwerkingspyplyne en bykomende opleiding van modelle. In 'n ideale prentjie vereis die oplossing van sulke probleme professionele persone wat ewe vaardig is in bevoegdhede op die kruising van Big Data, Data Science, DevOps en IT. Daarom is die grootste probleem in die Data Science-industrie en die grootste uitdaging in die organisering van MLOps-prosesse die gebrek aan sulke bevoegdheid in die bestaande opleidingsmark. Spesialiste wat aan hierdie vereistes voldoen, is tans skaars op die arbeidsmark en is goud werd.

Oor die kwessie van bevoegdhede

In teorie kan alle MLOps-take opgelos word deur gebruik te maak van klassieke DevOps-instrumente en sonder om 'n gespesialiseerde uitbreiding van die rolmodel te gebruik. Dan, soos ons hierbo opgemerk het, moet 'n datawetenskaplike nie net 'n wiskundige en data-ontleder wees nie, maar ook 'n ghoeroe van die hele pyplyn - hy is verantwoordelik vir die ontwikkeling van die argitektuur, programmering van modelle in verskeie tale, afhangende van die argitektuur, voorbereiding 'n datamart en ontplooi die toepassing self. Die skep van die tegnologiese raamwerk wat in die end-tot-end MLOps-proses geïmplementeer word, neem egter tot 80% van arbeidskoste, wat beteken dat 'n gekwalifiseerde wiskundige, wat 'n kwaliteit datawetenskaplike is, slegs 20% van sy tyd aan sy spesialiteit sal wy . Daarom word die afbakening van die rolle van spesialiste wat betrokke is by die proses van implementering van masjienleermodelle noodsaaklik. 

Hoe gedetailleerd die rolle omlyn moet word, hang af van die grootte van die onderneming. Dit is een ding wanneer 'n beginner een spesialis het, 'n harde werker in die energiereserwe, wat sy eie ingenieur, argitek en DevOps is. Dit is heeltemal 'n ander saak wanneer, in 'n groot onderneming, alle modelontwikkelingsprosesse op 'n paar hoëvlak Data Science-spesialiste gekonsentreer is, terwyl 'n programmeerder of databasisspesialis - 'n meer algemene en goedkoper bevoegdheid in die arbeidsmark - kan op die meeste van die werk roetine take.

Die spoed en kwaliteit van die ontwikkelde modelle, die produktiwiteit van die span en die mikroklimaat daarin hang dus direk af van waar die grens lê in die keuse van spesialiste om die MLOps-proses te ondersteun en hoe die proses van operasionalisering van die ontwikkelde modelle georganiseer word. .

Wat ons span reeds gedoen het

Ons het onlangs begin met die bou van 'n bevoegdheidstruktuur en MLOps-prosesse. Maar ons projekte oor modellewensiklusbestuur en die gebruik van modelle as 'n diens is reeds in die MVP-toetsstadium.

Ons het ook die optimale bevoegdheidstruktuur vir 'n groot onderneming en die organisatoriese struktuur van interaksie tussen alle deelnemers aan die proses bepaal. Behendige spanne is georganiseer om probleme vir die hele reeks besigheidskliënte op te los, en 'n proses van interaksie met projekspanne om platforms en infrastruktuur te skep, wat die grondslag is van die MLOps-gebou in aanbou, is gevestig.

Vrae vir die toekoms

MLOps is 'n groeiende gebied wat 'n tekort aan bevoegdhede ervaar en in die toekoms momentum sal kry. Intussen is dit die beste om voort te bou op DevOps-ontwikkelings en -praktyke. Die hoofdoel van MLOps is om ML-modelle meer effektief te gebruik om besigheidsprobleme op te los. Maar dit laat baie vrae ontstaan:

  • Hoe om die tyd te verminder om modelle in produksie bekend te stel?
  • Hoe om burokratiese wrywing tussen spanne van verskillende bevoegdhede te verminder en die fokus op samewerking te verhoog?
  • Hoe om modelle op te spoor, weergawes te bestuur en effektiewe monitering te organiseer?
  • Hoe om 'n werklik sirkelvormige lewensiklus vir 'n moderne ML-model te skep?
  • Hoe om die masjienleerproses te standaardiseer?

Die antwoorde op hierdie vrae sal grootliks bepaal hoe vinnig MLO's sy volle potensiaal sal bereik.

Bron: will.com

Voeg 'n opmerking