Ga naar de inhoud
Naar insights Blog

Data Science 3.0 met MLOps

Data Science 3.0 met MLOps
Geschreven door
Data Science Lab
Gepubliceerd op
23 november 2020

Implementeren van MLOps

MLOps is een relatief jonge term die de laatste tijd steeds vaker opduikt. En niet voor niks! Gezien de huidige staat van data science is het relevant als hulpmiddel om data science processen effectiever, efficiënter, veiliger en betrouwbaarder te maken. Klinkt leuk, maar wat is MLOps precies, hoe werkt het en hoe kun je ermee starten? Of waarom zou je je er überhaupt druk om maken? Daar gaan we in dit blog eens dieper op in!

De staat van data science

Data Science is een vrij jong vakgebied en bij de meeste organisaties nog in ontwikkeling. De ene organisatie is verder dan de andere, maar in het algemeen is er een bepaalde trend te bespeuren:

Fase 1: het Lab

Het begint met een Lab: een knutselschuur voor alchemisten die met complexe algoritmen data omtoveren tot goud (althans, dat denken we).

Foto van een vrouw met een hond, met herkenningskaders om beiden.

Als blijkt dat er, op wat PowerPoints met interessante grafiekjes na, er eigenlijk nog geen waardevolle resultaten uit zijn gekomen, begint er wat druk te komen: er moeten resultaten komen, er moet worden opgeleverd!

Fase 2: in productie

Er is eindelijk een serieuze business case gevonden en een paar maanden later is er zowaar een voorspelmodel dat goed werkt. Vervolgens zijn er weliswaar nog 9 maanden aan code te herschrijven, discussies met IT en architecten (target landscape, ondersteunde tooling, OTAP, security) overheen gegaan voordat het eindelijk in productie stond, maar goed: het staat, het loopt en het werkt! Hoera!

Totdat het ineens niet meer werkt. De voorspellingen zijn niet goed, gebruikers willen wat anders, of het proces blijkt een maand geleden te zijn stuk gelopen. Maar wie gaat dit doen? Jantje, die het model ooit had gebouwd, is al lang vertrokken. Pietje kan geen chocola maken van zijn ongedocumenteerde notebooks en concludeert na een aantal reparatiepogingen dat hij het beter maar ‘from scratch’ opnieuw kan maken.

Fase 3: volwassenheid

Na door schade en schande wijzer te zijn geworden, loopt alles nu als een geoliede machine. Of het nou het ophalen, inlezen en delen van data betreft, beheren van verschillende modelexperimenten, geautomatiseerd deployen AI-gedreven API’s en apps met CI/CD, het verklaren van voorspellingen… Elk teamlid doet het met een druk op de knop en een glimlach. Juist: dit is dus science fiction.

MLOps to the rescue

Als we bovenstaand scenario iets formeler samenvatten:

  • Fase 1: Experiment
    • Data science opereert geïsoleerd van Business en IT
    • Weinig concrete resultaten
    • Geen echte waarde geleverd
  • Fase 2: Live-gang
    • Output wordt in productie gezet
    • Maar beheer, monitoring, reproduceerbaarheid, veiligheid etc. nog niet ingericht
    • Eerste waarde wordt geleverd, maar is niet duurzaam
  • Fase 3: Volwassenheid
    • Processen zijn effectief, efficiënt, reproduceerbaar en veilig
    • Er wordt continu waarde geleverd

En daar komt MLOps om de hoek kijken: het is een manier om in fase 3 te komen.

Wat is MLOps?

“With Machine Learning Model Operationalization Management (MLOps), we want to provide an end-to-end machine learning development process to design, build and manage reproducible, testable, and evolvable ML-powered software.”

⎼ CDF sig-MLOps

“the extension of the DevOps methodology to include Machine Learning and Data Science assets as first class citizens within the DevOps ecology”

⎼ ook CDF sig-MLOps

“MLOps empowers data scientists and app developers to help bring ML models to production. MLOps enables you to track / version / audit / certify / re-use every asset in your ML lifecycle and provides orchestration services to streamline managing this lifecycle.”

⎼ Microsoft

Samengevat zou je kunnen zeggen: MLOps is DevOps maar dan voor machine learning / data science.

  • Bij DS/ML/AI ontwikkelen we uiteindelijk ook software
  • Dus kunnen we DevOps toepassen
  • Maar DS/ML/AI omvat meer dan software ontwikkeling: denk aan datasets, modellen, trainingsresultaten
  • Dus is er een uitbreiding nodig op DevOps: MLOps

Het doel van MLOps is:

Onze data science processen zijn

  • Effectief
  • Aantoonbaar effectief
  • Efficiënt (snel)
  • Reproduceerbaar
  • Veilig
  • Robuust/betrouwbaar
  • Gemakkelijk

Ok klinkt goed, een nieuwe toverformule… Dus als je MLOps roept verdwijnen alle data science problemen op magische wijze, net zoals agile eerder alle business problemen ging oplossen?

Wat is MLOps niet?

Alles is slecht  -> We introduceren MLOps -> Alles is goed.

Geen toverspreuk dus.

  • Er zijn best practices, maar…
  • Je moet je eigen MLOps inrichten voor je eigen processen
  • afgestemd op je eigen behoeftes en prioriteiten

Maar nu even concreet

Nu even wat minder high level. Wat voor processen hebben we het over?

Data science life cycle

Schema van een MLOps-proces, van idee via proof-of-concept naar continue ontwikkeling.

Blog

Dit is ook interessant,

Meld je aan voor onze nieuwsbrief.

Wil je als eerste op de hoogte zijn van een nieuwe blog?

Vul een geldig e-mailadres in.