Wat komt er allemaal kijken bij het maken en implementeren van een machine learning model?
Nou, het is meer dan alleen een databestandje laden en er een machine learning algoritme op los laten!
In dit artikel zal ik een kort overzicht schetsen van de stappen van het machine learning proces.
Bij elke stap zou een hele bibliotheek aan verdere uitleg geschreven kunnen worden, maar ik zal het zo kort mogelijk houden.
Stap 0: Voorbereiden
Voordat je kan beginnen moet je eerst weten wat het probleem is dat je met je machine learning model hoopt op te lossen!
Dit is de minst technische maar meest cruciale stap en vereist vooral inzicht in het probleem en communicatie met belanghebbenden.
Vervolgens is het de zaak om de benodigde data te identificeren en verzamelen. Dit gaat hand in hand met de definitie van het probleem, want zonder data heeft het weinig zin om na te denken over een machine learning oplossing.
Stap 1: Verkennen (Exploratory Analysis)
Je hebt het probleem gedefinieerd en de data verzameld. Tijd om te beginnen!
Maar, voordat je in het diepe springt is het de zaak om de data kort te verkennen en overzicht te krijgen. Hierbij gaat het vooral om het vinden van informatie die nuttig is voor de volgende stappen van het maken van het model.
Misschien dat je er zelfs achter komt dat je terug een stap terug moet doen en wat meer data moet verzamelen of het probleem moet herdefiniëren.
Stap 2: Schoonmaken (Data Cleaning)
Een machine learning model is nooit beter dan de informatie waar het op gebaseerd is.
Daarom is het van belang om te zorgen dat de data die erin gaat van goede kwaliteit is en geen fouten bevat. Missende observaties, ongewenste observaties, foute observaties. Geen van deze dingen helpen de prestatie van ons model.
Stap 3: Knutselen (Feature Engineering)
Nogmaals is het de zaak om te benadrukken dat een machine learning model nooit beter is dan de informatie waarop het gebaseerd is.
Niet alleen is het van belang data de data foutloos is. Het is ook van belang dat hij relevant is en op de juiste manier aan de algoritmes wordt gepresenteerd.
Denk bijvoorbeeld aan het toevoegen van een nieuwe variabele die het verschil geeft tussen twee jaartallen. Dit kan nuttiger zijn voor het algoritme dan de jaartallen zelf.
Dit is de stap die het meeste inzicht vereist in het probleem wat gemodelleerd wordt.
Stap 4: Selecteren (Algorithm Selection)
Oké, de data is klaar voor het model. Maar welk algoritme gebruiken we?
Dit is meestal vrij voor de hand liggend op basis van de machine learning taak (classificatie, regressie, clustering), maar er moet toch even over nagedacht worden. Het is belangrijk om een veelzijdig scala aan algoritmes te kiezen zodanig dat er goede resultaten te halen zijn met tenminste een aantal ervan.
Stap 5: Trainen (Model Training)
Eindelijk! De stap waar het allemaal om draait.
Het maken van het model.
Hierbij gaat het erom om de juiste hyper-parameters te vinden voor onze algoritmes, deze op de data los te laten, de resultaten op de juiste manier te evalueren en het winnende (meest nauwkeurige) model uit te kiezen.
Stap 6: Implementeren
We zijn echter nog niet klaar!
Nu het model af is moet het nog in gebruik genomen worden. Dit kan bijvoorbeeld betekenen dat het model moet worden opgenomen in een selfservice tool met een gebruiksvriendelijke interface. Ook zullen we het model misschien regelmatig moeten updaten door het nieuwe data te voeren.
En wie weet wat er allemaal nog meer gedaan moet worden om het model in gebruik te brengen en te houden?!
Pfoe!
Het is niet makkelijk om een machine learning model te implementeren.
Gelukkig hoef je deze stappen niet per se allemaal alleen te doen. Maar, het is wel van belang dat je je er van bewust bent wat er allemaal bij komt kijken zodat je jouw deel goed uit kunt voeren en effectief met je team kunt samenwerken.
Dat is alles voor nu,
Tot de volgende keer!