Organisaties en bedrijven wenden zich steeds vaker tot machine learning (ml) om hun bedrijfsvoering te verbeteren en strategisch voordeel te behalen op de concurrentie. Vaak blijkt de overgang van testfase naar implementatie lastig. Volgens Gartner sneuvelt dit jaar wellicht tachtig procent van alle projecten rondom kunstmatige intelligentie. Ml-ops is een set van ‘best practices’ die daarin verandering brengt.
‘Automation is goed, als je maar precies weet waar je de machine moet plaatsen’, schreef Eliyahu M. Goldratt, schrijver en bedenker van onder meer de managementstrategie ’theory of constraints’.
Dit geldt tot op zekere hoogte ook voor ml (machine learning). Dit soort projecten mislukt regelmatig, doordat organisaties vooral willen bewijzen dat ml voor hen toegevoegde waarde heeft en daardoor praktische vragen over de implementatie negeren. Daar komt Goldratt om de hoek kijken: we kunnen bewijzen dat een ml-project rendabel is, alleen weten we nu niet hoe we het implementeren.
Waar het fout gaat
Er zijn verschillende redenen waarom ml-projecten mislukken. Een van de meest voor de hand liggende, is dat de daadwerkelijke implementatie van ml meer van de gehele organisatie vraagt dan in de testfase: meer en een betere infrastructuur, meer samenwerking tussen verschillende teams, meer stakeholders om rekening mee te houden enzovoort. Wat kleinschalig begon, moet nu in de hele organisatie worden uitgerold. Dat brengt vraagstukken en problemen met zich mee waarmee aanvankelijk geen rekening werd gehouden.
Bovendien zijn veel ml-initiatieven in het begin geïsoleerd. Deze projecten staan op zichzelf binnen de organisatie, wat leidt tot inefficiëntie. Ook verhindert dit het delen van best practices tussen verschillende teams.
Nog een probleem is het risico op zogeheten ‘black-box decisions’, waarbij de besluitvorming van ml-applicaties ondoorzichtig is. Toch moeten organisaties beslissingen aan klanten en stakeholders kunnen uitleggen zodra zo’n applicatie live gaat.
Tot slot vergt ml veel up-to-date data van hoge kwaliteit, evenals veel kwaliteitsmonitoring, wat allebei kostbaar is. Als dit na de implementatie niet goed is geregeld, dreigt een ‘performance drift’ waarbij het gebruik van een ml-applicatie leidt tot foute beslissingen.
Ml-ops in het kort
Na een forse investering in de testfase van een ml-project wil niemand dat deze in de implementatiefase strandt. Om te zorgen dat de overgang van test naar implementatie goed verloopt, is daarom een set van best practices ontwikkeld: ml-ops.
Ml-ops is van cruciaal belang bij de ontwikkeling van ‘ml-pipelines’, die worden gebruikt voor de automatisering van de workflows van ml-applicaties. Door een zoveel mogelijk geautomatiseerde ml-pipeline wordt de uiteindelijke implementatie makkelijker en consistenter en verkleint de kans op menselijke fouten.
Naast automatisering zijn enkele andere best practices: manage-ability (opleggen van beheer van het ml-model en het bijhouden van veranderingen in modellen en code gedurende modelontwikkeling), reusability (zorgdragen voor consistente oplevering en hergebruik van configuraties) en reproducibility (zorgen dat code, modellen,sdk’s, et cetera worden onderhouden zodat je deze kunt reproduceren).
Standaardoplossingen
Ml-ops helpt bedrijven ml-applicaties effectief en efficiënt te implementeren zodat ze er daadwerkelijk vruchten van plukken. Sommige ml-ops-dienstverleners hebben technische templates van ml-pipelines op de plank liggen, waardoor het hele implementatieproces nog sneller verloopt. Vaak lukt het om dit aan te sluiten op een technologisch platform, zoals Microsoft Azure of Google Cloud.
Gestandaardiseerde end-to-end ml-pipelines hebben als voordeel dat je snel kunt experimenteren met nieuwe ideeën. Ze zijn bovendien relatief makkelijk schaalbaar om bijvoorbeeld grotere groepen van gebruikers te voorzien.
Uiteindelijk geldt bij de overweging om een ml-applicatie te bouwen het oude advies: bezint eer ge begint. Neem vanaf nu wel in overweging mee hoe je de applicatie implementeert, en weet dat ml-ops genoeg handvatten biedt om ml-projecten succesvol van de grond te krijgen.
Moustapha El Marini, manager Data Science bij Viqtor Davis
Ik begin maar eens met een bijbeltekst: Prediker 1:9 Hetgeen er geweest is, hetzelve zal er zijn, en hetgeen er gedaan is, hetzelve zal er gedaan worden; zodat er niets nieuws is onder de zon.
Er is niets in dit artikel dat specifiek is voor machinaal leren. Automatiseren is in zijn algemeenheid veel moeilijker dan de meeste mensen denken en een schrikbarend aantal projecten falen al in de ontwikkelfase of stranden ergens gedurende de implementatie. Dat is niet ML-specifiek en het artikel draagt ook geen redenen aan waarom het meer waar zou zijn voor ML dan voor andere technologieën. Als er al iets bijzonders is aan ML is dat het relatief nieuw is; de inzet van alle nieuwe technologie die overhaast wordt omarmd zonder goed na te denken en die wordt overladen met overspannen verwachtingen gaat gepaard met dergelijke verschijnselen. Herinneren we ons Web 2.0 nog? Of 4GLs?
ML Ops een modekreet voor de combinatie van DevOps (ook een modekreet) en ML. Lezen we https://towardsdatascience.com/ml-ops-machine-learning-as-an-engineering-discipline-b86ca4874a3f en dan blijken de praktijken rondom ML ops te bestaan uit:
– Hybride teams
– ML pipelines
– Correct versiebeheer (van ML data en code)
– Model validatie
– Data validatie
– Monitoring (van productiesystemen)
Dan valt me toch wel even niks te binnen. Als je iets doet in de softwareontwikkeling en je had niet zelf bedacht dat al die factoren belangrijk zijn (niet alleen in ML, maar in alle softwareontwikkeling) dan dien je je terstond voor her-, bij, of omscholing aan te bieden bij het regionale arbeidsbureau.
Super artikel!