Vijf belangrijke MLOps-lessen uit de praktijk

MLOps (kort voor Machine Learning Operations) heeft zich in korte tijd ontwikkeld tot een essentiële discipline voor organisaties die zich bezighouden met AI en machine learning. De toepassing ervan gaat in de praktijk nogal eens gepaard met vallen en opstaan, zo is de ervaring van Willem Meints, Chief AI Architect bij Info Support. Op basis van concrete voorbeelden van projecten deelt hij zijn belangrijkste learnings.

1. Besteed veel aandacht aan versiebeheer

“Het op orde hebben van versiebeheer van je modellen is cruciaal bij MLOps”, aldus Willem. “Bij een energiebedrijf liepen we tegen de grenzen aan omdat we versies niet goed hadden vastgelegd. We dachten een veelbelovend model te hebben, maar kwamen erachter dat we een verouderde variant gebruikten die minder nauwkeurig was. Sindsdien gebruiken we een waterdicht systeem om versies bij te houden. Mijn advies: maak hier afspraken over, leg vast welke metadata je opslaat, hoe je versies labelt en waar je ze archiveert. Door versies te koppelen aan experimenten, hou je bovendien de context erbij. Zo kun je later snel terugvinden waarom bepaalde keuzes zijn gemaakt en wat de prestaties waren. Kortom: besteed aandacht aan versiebeheer, dan voorkom je nare verrassingen.”

2. Zonder monitoring geen verbetering

In een ander project, gericht op het herkennen van zeecontainers, leerden Willem en het team pas echt de waarde kennen van het goed vastleggen van input en output van modellen. “In dit project logden we consequent de input en output van het model. Al gauw bleek dat bepaalde containers niet goed werden herkend. Door deze data te analyseren kregen we precies in beeld waar de zwakke plekken van het model zaten. Op basis daarvan konden we gerichte verbeteracties uitzetten. Dat liet het belang zien van het monitoren van modellen in productie. Meet zoveel mogelijk metadata over de input, output en performance. Zo krijg je inzicht in hoe je model zich gedraagt en waar nog ruimte voor optimalisatie is. Zonder monitoring geen verbetering.”

3. Pipelines vergroten reproduceerbaarheid

Reproduceerbaarheid is essentieel voor de kwaliteit van een model. “Bij een forecasting traject voor een klant rezen op een gegeven moment twijfels over de performance van het model. Omdat we een gestructureerde pipeline hadden opgezet in code, konden we gelukkig snel terug naar de bron en de resultaten reproduceren. Het is dus belangrijk om machine-learning pipelines te gebruiken, want die maken efficiënte reproductie mogelijk. Mijn advies is om het gebruik van python notebooks zoveel mogelijk te beperken tot analyse taken en de code voor het trainen om te zetten naar machine-learning pipelines. Door stappen in code te modulariseren, kun je makkelijker terug in het proces en fouten opsporen. Bovendien zorgt een pipeline-aanpak via tools als Dagster en Azure Machine-Learning Service ervoor dat je trainingen kunt automatiseren en monitoren.”

4. Investeer (tijd) in de juiste mindset van het team

Het adopteren van MLOps is niet alleen een technische uitdaging, maar vereist ook de juiste mindset en vaardigheden in teams. “MLOps is mensenwerk,” stelt Willem. “Een effectief team dat aan MLOps werkt, vereist dezelfde aandacht en zorg als elk ander agile team. Bij een klant merkte ik aanvankelijk weerstand tegen veranderingen, met name wanneer deze werden voorgedragen door iemand buiten hun eigen organisatie. Door eerst in te zetten op het vergroten van vertrouwen, konden we deze weerstand overwinnen. Vervolgens stelden we gezamenlijk verbeterdoelen op en betrokken we alle stakeholders. Gaandeweg nam de betrokkenheid in het team toe doordat men resultaat zag. Voor een succesvolle adoptie van MLOps is geduld nodig om te komen tot de juiste mindset. Neem de tijd om draagvlak te creëren en wijs op quick wins. Zo kun je stap voor stap een continue verbetermentaliteit realiseren.”

5. Borg kennis

“Een valkuil die ik regelmatig tegenkom bij MLOps is het onvoldoende vastleggen van kennis en ervaringen”, aldus Meints. “In de waan van de dag schiet documentatie er simpelweg bij in. Toch is dit cruciaal om lessen voor de toekomst vast te houden. Bij recente trajecten zijn we daarom decision records gaan gebruiken: korte wiki-pagina’s waarin we context, besluit en consequenties van keuzes bijhouden. Ook houden we korte algemene wikipagina’s bij over de laatste stand van zaken rondom proces, architectuur en requirements. Natuurlijk kost dit tijd, maar de investering loont. Discussies verlopen sneller omdat we eerder genomen besluiten kunnen teruglezen. En door lessen vast te leggen voorkomen we dat we steeds opnieuw het wiel moeten uitvinden.”

Meer weten over hoe je team nog beter kan worden in MLOps? Kijk dan naar de MLOps-training die Info Support aanbiedt:

In een podcastaflevering van Business Vooruit met IT bespreken Willem Meints, Joop Snijder en Bas Niesink zes vragen en antwoorden over MLOps. Zoals: Is Data Science door de komst van MLOps meer op reguliere softwareontwikkeling gaan lijken?