Data science

MLOps: valkuilen en succesfactoren

29 Augustus 2023 - 5 minuten leestijd
Artikel door Roman Nekrasov

Bij data science en Machine Learning is de integratie van MLOps onmisbaar voor het efficiënt ontwikkelen, implementeren en beheren van Machine Learning-modellen. In de voorgaande twee artikelen heb je grondig inzicht gekregen in wat MLOps precies inhoudt en hoe het strategisch ingezet kan worden om optimale resultaten te behalen. In dit artikel beschrijven we de drie belangrijkste valkuilen en bijbehorende praktische succesfactoren. Deze succesfactoren zullen je helpen bij een soepele en effectieve overgang naar een MLOps-gedreven bedrijfsvoering.

MLOps valkuil 1: Opportunistische inrichting van de MLOps-pipeline

Eén van de kostbaarste valkuilen bij het toepassen van data science manifesteert zich eigenlijk al op het moment dat je ermee start. Niet zo vreemd, want data science start over het algemeen met kleine experimenten om ervaring op te doen. Zodra het potentieel wordt ervaren en resultaten worden opgepakt door de stakeholders, is de verleiding groot op de experimentele basis verder te gaan. Met als gevolg dat de organisatie niet goed wordt voorbereid op wat er met MLOps beoogd wordt. Wie onderstaande succesfactoren verwaarloost, zet het succes van data science binnen no-time op het spel.

1a. Duidelijke doelstellingen en strategie

Een goed gedefinieerde strategie en duidelijke doelstellingen bepalen het pad dat betrokken afdelingen volgen en hoe deze afdelingen bijdragen aan de bedrijfsdoelen. Begin met het identificeren van de specifieke doelstellingen van de MLOps-pipeline. Wat wil het bedrijf bereiken met MLOps? Ontwikkel vervolgens een strategisch plan om deze doelen te realiseren, waarin concreet wordt vastgelegd hoe de MLOps-pipeline naadloos met bestaande bedrijfsprocessen integreert. Betrek daar ook de afdelingen bij waar MLOps de pijlen als eerste op zal richten: de afnemer van de analyses!

1b. Samenwerking tussen teams

Naast hechte samenwerking met business-stakeholders, vereist MLOps samenwerking tussen verschillende teams onder de motorkap. Denk hierbij aan de data-scientists zelf, maar ook aan de software-engineeringteams en de operationele teams, zoals IT-beheerders, DBA’ers en applicatiebeheerders. Zorg voor open communicatiekanalen tussen deze teams. Zonder die ‘korte lijntjes’ is er geen effectieve samenwerking en zal MLOps aan performance en kwaliteit inboeten.

1c. Datamanagement en governance

Zorg ervoor dat er een goed gedefinieerde data-governance-strategie is om datakwaliteit te waarborgen en datatoegang te reguleren. Implementeer datacatalogi en datalijnprocessen om de traceerbaarheid, transparantie en kwaliteit van brongegevens te waarborgen. Naast data is het correct controleren van algoritmen cruciaal voor de nauwkeurigheid en betrouwbaarheid van Machine Learning-modellen. Een solide datamanagement- en governance-aanpak voor zowel data als algoritmen, zorgt voor consistentie in hoogwaardige inzichten.

1d. Investeer in volwassen technologie in de waardeketen

Zoals overal het geval is, helpt ook hier een geoptimaliseerde en schaalbare infrastructuur de prestaties te verbeteren en de kosten te verlagen. In de experimentele fase van data science is dat allemaal nog niet zo belangrijk, maar op het moment dat bedrijfsvoering er afhankelijk van wordt, is het een ander verhaal. Zorg daarom stapsgewijs, conform het strategisch plan, voor een robuuste en schaalbare infrastructuur om Machine Learning-modellen te ontwikkelen, te implementeren en te onderhouden. Kies tools en technologieën die de MLOps-pipeline geheel ondersteunen, zoals geautomatiseerde gegevensvoorbereiding en model deployment, versiebeheer, API-management en monitoring.

1e. Geautomatiseerde performancemonitoring

Monitoring vanuit het MLOps-team zelf is cruciaal voor het vroegtijdig detecteren van terugval in prestaties. Ook kun je door te monitoren teams in staat stellen om proactief in te grijpen, dus voordat er vanuit de business signalen komen dat er terugval in prestatie is ontstaan. Handmatig monitoren is echter kostbaar en geestdodend werk, waardoor het onderin de takenlijst kan komen. Automatiseer daarom robuust geautomatiseerde monitoringmechanismen om de prestaties van modellen in productie te volgen en tijdig te reageren op modeldegradatie, zonder dat dit ten koste gaat van ontwikkelwerkzaamheden.

Insights-update

Ontvang nieuwe Insights maandelijks in je inbox.

Schrijf je in.

MLOps valkuil 2: Tunnelvisie op techniek

Als data-scientists of ML-engineers aan de slag gaan met het bouwen van modellen, richten ze zich vaak primair op de technische kwaliteit van het model. Dit is zeker niet slecht en is een cruciale stap in het ontwikkelingsproces. Deze beperkte focus kan echter leiden tot problemen bij de implementatie en operationalisatie van het model. Bijvoorbeeld: een model dat perfect werkt in een geïsoleerde testomgeving, kan tegen problemen aanlopen wanneer het in de echte wereld wordt geplaatst, met andere systemen, databronnen en gebruikersinteracties. Bovendien kunnen verwachtingen en behoeften van de eindgebruikers over het hoofd worden gezien, wat kan leiden tot een model dat technisch solide is, maar niet voldoet aan de behoeften of bruikbaarheidseisen van degenen die het zullen gebruiken. Het negeren van deze factoren kan leiden tot een mismatch tussen de mogelijkheden van het model en de werkelijke bedrijfsbehoeften of technische vereisten. Hierdoor wordt het model in de praktijk minder effectief of zelfs onbruikbaar.

2a. Holistische planning

Begin met een goed begrip van het bredere ecosysteem, waarin het model zal functioneren. Dit omvat het begrijpen van de bedrijfsdoelstellingen, de technische omgeving, de beoogde gebruikers en de algehele impact die het model zal hebben. Deze aanpak zorgt ervoor dat het model niet alleen technisch solide is, maar ook afgestemd op de echte wereld.

2b. Gebruikersbetrokkenheid

Betrek de eindgebruikers en stakeholders vroeg en regelmatig in het ontwikkelingsproces. Door hun input en feedback, kunnen de ontwikkelaars zorgen dat het model voldoet aan de werkelijke behoeften en verwachtingen. Dit kan ook helpen om potentiële problemen vroegtijdig te identificeren.

2c. Flexibele architectuur en ontwerp

Zorg voor een flexibele en modulaire aanpak bij het bouwen van het model. Behoud een duidelijke en enkelvoudige verantwoordelijkheid voor elke module binnen het systeem, en overweeg het opsplitsen van modules als ze te complex worden of meerdere functies gaan vervullen. Hiermee optimaliseer je de onderhoudbaarheid en aanpasbaarheid. Aanpassingen en integratie met andere systemen en databronnen verlopen bovendien soepeler, waardoor het model effectief kan werken in de beoogde operationele omgeving.

2d. Grondige documentatie

Het zorgvuldig documenteren van het ontwikkelingsproces, de gebruikte methodologie en de besluitvorming binnen een model, is essentieel voor het begrip en de toepasbaarheid van het model door verschillende teamleden. Goede documentatie vergemakkelijkt het onderhoud, verbetert de samenwerking en zorgt voor een betere afstemming met de bedrijfsdoelen.

2e. Robuuste test- en implementatiestrategie

Implementeer een robuust testraamwerk dat niet alleen de technische kwaliteit beoordeelt, maar ook de prestaties in de beoogde operationele omgeving. Je wilt immers de impact van het model op de bedrijfsvoering aangetoond hebben. Dit moet ook een plan omvatten voor geleidelijke implementatie en monitoring in de productieomgeving, zodat eventuele problemen snel kunnen worden geïdentificeerd en aangepakt.

OPLOSSING.

Benieuwd hoe Centric je hiermee kan helpen?

Lees meer.
Kader: Standaarden voor ML-documentatie

Standaarden voor ML-documentatie

Documentatie is een essentieel, maar vaak verwaarloosd onderdeel van Machine Learning-projecten. Er bestaan al verschillende standaarden die kunnen helpen bij het stroomlijnen van dit proces, zeker in gereguleerde omgevingen, zoals Nederlandse overheden.

MLOps valkuil 3: De grote verleiding van nieuwe use-cases

De iteratieve cyclus van MLOps suggereert het al: continuous development. Maar de verleiding is groot de Agile-approach vooral te richten op de nieuwe projecten. De eerder ontwikkelde modellen hebben hun waarde immers ruimschoots bewezen. Maar niets is minder waar! Eén van de voornaamste valkuilen is het geleidelijk teruglopen van de kwaliteit van de modellen, ofwel degeneratie. In de wereld van generatieve ML-modellen (GAN’s en VAE’s) spreekt men zelfs al over het risico van ineenstorting van modellen: model collapse.

3a. Regelmatige hertraining en updates

Dit is nodig om je modellen actueel te houden, de wereld om ons heen verandert namelijk continu. Regelmatig hertrainen van de modellen met actuele data is het minimale dat je kunt doen. Herijking van de eerder afgebakende dataset vergt wellicht aanpassing als aanvullende datafeatures beschikbaar blijken. Hiermee kunnen modellen zich aanpassen aan veranderingen in de gegevensdistributie en kunnen ze relevante patronen en trends opnemen.

3b. Detectie van data drift en concept drift

Gebruik technieken voor het detecteren van data drift en concept drift om te bepalen of de relatie tussen invoer en uitvoer in de loop van de tijd verandert. Bijvoorbeeld: het monitoren van de prestaties van een model kan wijzen op concept drift als de prestaties afnemen, terwijl het gebruik van de statistische tests kan helpen bij het identificeren van data drift door veranderingen in de verdeling van de invoergegevens te detecteren. Door drift te detecteren, kun je de modellen tijdig aanpassen aan de nieuwe gegevens of gewijzigde gegevensverdeling (data drift) en aan nieuwe omstandigheden in het eerder geoptimaliseerde bedrijfsproces (concept drift). Bij toepassing van generatieve modellen, zoals ChatGPT, is het bovendien de vraag hoe een model collapse kan worden voorkomen. Door deze service wordt steeds meer tekst gegenereerd die op de één of andere manier later weer als trainingsdata wordt gebruikt om hetzelfde model te trainen. Het laatste woord is hierover nog niet gezegd.

3c.Versiebeheer

Een blok aan het been van de jonge data scientist, maar toch… Zorg voor actuele documentatie van de veranderende modellen en houd een versiebeheersysteem bij om een duidelijke audittrail te behouden. Dit vergemakkelijkt het begrip van de modellen en eventuele wijzigingen in de loop van de tijd. Bovendien is het een vereiste op het moment dat verantwoording voor het gebruik van het model opnieuw moet worden aangetoond. Beschrijf ook wat te doen met de eerdere analyses vanuit het oude model. Die kunnen lang niet altijd afgezet worden tegen de nieuwe uitkomsten.

3d. Permanente aandacht voor datakwaliteit

Investeer in datakwaliteit om ervoor te zorgen dat de gegevens die worden gebruikt om de modellen te trainen en te valideren van hoge kwaliteit blijven.

3e. Kort op de bal op- en afschalen

Bij de MLOps-pipeline-inrichting spraken we al even over performancemonitoring van de modellen. Maar er speelt nog een aspect. Naast kwalitatieve prestatie van de analysemodellen blijft ook de prestatie van de onderliggende cloud-infrastructuur van groot belang. Als het aantal modellen, gegevens of gebruikers toeneemt, moet de infrastructuur in staat zijn om deze groei aan te kunnen zonder aan prestaties in te boeten. Dus de prestaties van het platform als geheel en de talloze dataverbindingen moeten nauwgezet gevolgd worden en bij voorkeur met inzet van standaard scripts worden aangepast aan de gebruiksintensiteit. Naast het technische onderhoudsaspect, speelt ook hier het kostenaspect. Met het opschalen van de MLOps-pipeline als geheel zullen de kosten oplopen en wil je voorkomen dat dit tot onaangename verassingen leidt. Het prognosticeren en rapporteren van platformkosten hoort er dus ook bij!

ARTIKEL.

MLOps: methode voor een perfecte Machine Learning-pipeline

Lees meer.

Met dit artikel is er een einde gekomen aan de artikelenreeks over MLOps. Hopelijk hebben wij kunnen bijdragen aan jouw reis naar een soepele Machine Learning-operatie. Heb je vragen of opmerkingen over dit thema? Dan kun je ons altijd benaderen via Roman Nekrasov (voor het inrichten van een MLOps-pipeline) of Frank de Nijs (voor business alignment).

Lees ook onze eerste twee artikelen over MLOps:

GAN’s en VAE’s

Kader: GAN’s en VAE’s

GAN’s en VAE’s zijn Deep Learning-oplossingen op basis van neurale netwerken. Neurale netwerken worden steeds meer toegepast vanwege hun vermogen om complexe taken te automatiseren, zoals beeld- en spraakherkenning, vertaling en voorspellende analyses. Denk bijvoorbeeld aan ChatGPT.

Ontdek hoe Centric je hiermee kan helpen.
Onze oplossing.
Gerelateerde artikelen
MLOps: Uitleg Machine Learning Pipeline
Data science
Meer weten over MLOps? Ontdek de fasen van de Machine Learning Pipeline en leer wie, op welk moment, welk ...
MLOps - Machine Learning methode
Data science
Lees in dit artikel alles over MLOps en de perfecte Machine Learning-pipeline. Ook leggen we de Machine L ...
Process Mining: waar gaat het eigenlijk over?
Data science
Process Mining is een relatief nieuw vakgebied, waarbij data uit digitale systemen wordt gebruikt om inzi ...