
Introductie tot Machine Learning-inferentie
Stel, je hebt een geweldig machine learning-model getraind om het salesteam te helpen meer klanten aan te trekken met relevante aanbevelingen. De meest logische volgende stap is om het getrainde model in de infrastructuur van het bedrijf op te nemen, zodat het kan worden gebruikt om voorspellingen te doen op informatie van nieuwe klanten. Het proces van het gebruiken van zo’n bestaand model heet inferentie.
Machine learning-inferentie is cruciaal, omdat het mogelijk maakt om het model in te zetten voor echte use-cases zoals voorspellingen, classificaties of aanbevelingen.
Aan het eind van deze blog snap je beter hoe machine learning-inferentie werkt, hoe het verschilt van traditionele machine learning-training, en krijg je een overzicht van de bestaande inferentiebenaderingen, met hun voordelen, uitdagingen en enkele toepassingen in het echte leven.
Machine Learning-inferentie vs. training
Het eerste om te onthouden is dat machine learning-inferentie en machine learning-training niet hetzelfde zijn, en dat elk concept wordt toegepast in twee verschillende fasen van elk machine learning-project. In deze sectie leggen we intuïtief de verschillen uit via de restaurantanalogie van Cassie Kozyrkov.
Zij gaf aan dat je voor het maken van een goede pizza (een waardevol product) een recept (model of formule) nodig hebt dat vertelt hoe je de ingredienten (kwaliteitsdata) moet bereiden en met welke apparatuur (algoritmen).
Er is geen service als er geen eten uit de keuken komt. En de keuken (Data Science-team) voegt geen waarde toe als klanten het eten steeds niet waarderen.
Voor een goede klantervaring en een beter rendement op investering werken beide teams samen.

Keuken (Data Science-team) & Servicegebied (Business-team)
Machine learning-training
Het trainen van een machine learning-model vereist het gebruik van trainings- en validatiedata. De trainingsdata wordt gebruikt om het model te ontwikkelen, terwijl de validatiedata wordt gebruikt om de parameters van het model te verfijnen en het zo robuust mogelijk te maken. Dit betekent dat het model aan het einde van de trainingsfase nieuwe data met minder fouten moet kunnen voorspellen. We kunnen deze fase zien als de keukenkant.
In onze uitgebreide gids, What is Machine Learning, leer je wat machine learning is en hoe het verschilt van AI en deep learning, en waarom het een van de meest spannende velden binnen data science is.
Machine learning-inferentie
Gerechten kunnen pas worden geserveerd als ze klaar zijn om gegeten te worden, net zoals een machine learning-model eerst getraind en gevalideerd moet zijn voordat het gebruikt kan worden om voorspellingen te doen. Machine learning-inferentie is vergelijkbaar met het scenario van een restaurant. Beide vereisen aandacht voor betere en nauwkeurigere resultaten, en dus klant- en businesswaarde.
Belang van het begrijpen van de verschillen
Het verschil kennen tussen machine learning-inferentie en training is cruciaal, omdat het helpt om de rekenresources voor zowel training als inferentie beter toe te wijzen zodra ze in de productieomgeving zijn ingezet.
De modelprestatie neemt in de productieomgeving meestal af. Een goed begrip van het verschil helpt bij het toepassen van de juiste industrialisatiestrategieën voor de modellen en bij het onderhoud door de tijd heen.
Belangrijke overwegingen bij de keuze tussen inferentie en training
Of je een inferentiemodel gebruikt of een volledig nieuw model traint, hangt af van het type probleem, het einddoel en de beschikbare resources.
Belangrijke overwegingen zijn onder andere, maar niet beperkt tot, time-to-market, resourcebeperkingen of ontwikkelkosten, modelprestatie en teamexpertise.
- Time-to-market. Het is belangrijk om te kijken hoeveel tijd er is bij de keuze tussen trainen en het gebruiken van een bestaand model. Soms kost het inzetten van een voorgetraind model minder tijd en kan het een business-team een concurrentievoordeel geven.
- Resourcebeperkingen of ontwikkelkosten. Afhankelijk van de use-case kan het trainen van een model veel data en trainingsresources vergen. Het gebruik van een inferentiemodel vereist daarentegen vaak minder middelen, wat het eenvoudiger maakt om in korte tijd zelfs betere prestaties te behalen.
- Modelprestatie. Het trainen van een machine learning-model is een iteratief proces en garandeert niet altijd een robuust model. Het gebruik van een inferentiemodel kan betere prestaties opleveren dan een in-house model. Tegenwoordig zijn verklaarbaarheid van modellen en het mitigeren van bias cruciaal, en inferentiemodellen moeten mogelijk worden bijgewerkt om die mogelijkheden mee te nemen.
- Teamexpertise. Het bouwen van een robuust machine learning-model vereist sterke expertise voor zowel modeltraining als industrialisatie. Het kan een uitdaging zijn om die expertise al in huis te hebben; daarom kan vertrouwen op inferentiemodellen het beste alternatief zijn.
Bayesiaanse inferentie in Machine Learning
Bayesiaanse inferentie is een techniek binnen machine learning waarmee algoritmen voorspellingen kunnen doen door hun voorafgaande kennis bij te werken op basis van nieuw bewijs met behulp van de stelling van Bayes.
Maar wat is de stelling van Bayes?
Die beschrijft de kansen op gebeurtenis A, gegeven dat een andere gebeurtenis, B, heeft plaatsgevonden. De formule staat hieronder:

Stelling van Bayes
P(A): prior → de kans dat gebeurtenis A optreedt zonder kennis van andere gebeurtenissen.
P(B): de normaliserende constante die de berekening van de posterior van gebeurtenis B mogelijk maakt.
P(A|B): posterior → de kans dat gebeurtenis A optreedt, gegeven dat gebeurtenis B optreedt.
P(B|A): likelihood → de kans dat gebeurtenis B optreedt als A optreedt.
Met deze informatie bekijken we de voordelen van Bayesiaanse inferentie en enkele toepassingen in het echte leven.
In onze Naive Bayes Classification Tutorial using Scikit-learn leer je hoe je een Naive Bayes-classificator bouwt en evalueert met de Scikit-learn-package van Python.
Voordelen van Bayesiaanse inferentie
Bayesiaanse inferentie heeft meerdere voordelen, waaronder:
- Flexibiliteit. Bayesiaanse inferentie kan worden toegepast op zowel lineaire als niet-lineaire modellen en op uiteenlopende machine learning-problemen zoals regressie, classificatie, clustering, natural language processing en meer.
- Meer intuïtief. De overgang van prior naar posterior kennis met behulp van nieuwe data lijkt op hoe mensen hun overtuigingen bijstellen op basis van nieuwe informatie, wat intuïtiever is. Als iemand bijvoorbeeld de voorafgaande aanname heeft dat het morgen gaat sneeuwen en vervolgens het weerbericht checkt, zal die persoon die overtuiging dienovereenkomstig aanpassen.
- Interpreteerbaar. De kansverdelingen over de mogelijke waarden van de modelvoorspellingen zijn eenvoudig te interpreteren, wat besluitvormers kan helpen beslissingen te nemen in lijn met hun risicotolerantie.
Toepassingen van Bayesiaanse inferentie in Machine Learning
Hieronder staan enkele realistische toepassingen van Bayes-inferentie in machine learning:
- Fraudedetectie met creditcards. Bayes-inferentie kan worden toegepast om frauduleuze activiteiten te detecteren. Het proces begint met een voorafgaande inschatting van de kans dat een transactie frauduleus is op basis van historische data. Vervolgens wordt, naarmate nieuwe data beschikbaar komt, zoals het transactiebedrag of de aankoopgeschiedenis van de klant, de voorafgaande informatie bijgewerkt met de stelling van Bayes om een posterior kans op een transactie te verkrijgen; om te bepalen of deze frauduleus is of niet.
- Medische diagnose. Bij medische diagnoses wordt de stelling van Bayes gebruikt om data uit eerdere gevallen te analyseren en de kans te schatten dat een patiënt een bepaalde ziekte heeft. Bayesiaans kan diverse factoren meenemen die de uitkomst kunnen beïnvloeden en probabilistische schattingen genereren die beter uitlegbaar zijn dan louter binaire resultaten.
- Beeldverwerking. Bayesiaanse inferentie kent meerdere toepassingen in beeldverwerking. Zo kan het worden gebruikt om ruis uit afbeeldingen te verwijderen met technieken zoals Markov Chain Monte Carlo en de stelling van Bayes.
- Spraakverwerking. Bayesiaanse niet-parametrische clustering (BNC) wordt gebruikt in het niet-parametrische hiërarchische neurale netwerk om spraak- en emotieherkenning uit te voeren. Dit proces presteert beter dan andere state-of-the-art modellen op soortgelijke taken.
Causale inferentie in Machine Learning
Causale inferentie is een statistische benadering die in AI en machine learning wordt gebruikt om oorzaak-gevolgrelaties tussen kenmerken te begrijpen.
In marketing willen besluitvormers bijvoorbeeld begrijpen welke campagne de hoogste conversieratio oplevert. Met causale inferentie kun je de causale relatie tussen de conversieratio en de marketingcampagne identificeren om conversies te maximaliseren.
Onze cursus Statistical inference with R helpt je vertrouwd te raken met de kernvaardigheden in statistische inferentie die nodig zijn om je statistische en machine learning-modellen te begrijpen, te interpreteren en te tunen.
Belang van causale inferentie in Machine Learning
Causale inferentie is belangrijk in machine learning om meerdere redenen, waaronder efficiënte voorspellingen en eerlijkheid. Laten we beide kort bekijken.
- Efficiënte voorspelling. In veel machine learning-use-cases is correlatieanalyse niet genoeg, omdat correlatie niet per se causaliteit impliceert. Causale inferentie stelt Machine Learning Engineers in staat de onderliggende causale relaties tussen variabelen te identificeren, wat leidt tot nauwkeurigere voorspellingen.
- Eerlijkheid. Met causale inferentie in machine learning kun je de onderliggende oorzaken van bias in een bepaalde dataset identificeren. Dit kan besluitvormers helpen passende acties te nemen om de data te verbeteren en bias te mitigeren, en zo betere machine learning-modellen te ontwikkelen.
Uitdagingen bij het implementeren van causale inferentie in Machine Learning
Zoals andere technieken in machine learning kent de implementatie van causale inferentie in machine learning z’n eigen uitdagingen, waaronder maar niet beperkt tot de volgende:
- Grote hoeveelheden kwaliteitsdata. Een geldige causale inferentie vereist veel kwaliteitsdata. Echte data is echter rommelig, en het kan lastig zijn om de perfecte aanpak te vinden om de data foutvrij te maken.
- Interpreteerbaarheid. De methoden die betrokken zijn bij het schatten van causaliteit zijn vaak complex en vereisen zowel sterke statistische expertise als diepgaande domeinkennis van het onderzochte veld om de resultaten goed te interpreteren.
- Confounders. Dit zijn variabelen die samenhangen met zowel de onafhankelijke als de afhankelijke variabelen. Deze factor kan het werkelijke causale effect van de onafhankelijke variabelen vertekenen, waardoor het lastig wordt om het causale effect nauwkeurig te schatten.
Conclusie
Dit artikel behandelde wat machine learning-inferentie is, hoe het verschilt van machine learning-training, en enkele belangrijke aanbevelingen om te overwegen bij de keuze tussen beide. Naast het uitlichten van Bayesiaanse en causale inferenties zijn ook hun belang en hun uitdagingen binnen machine learning geïllustreerd.
Het is belangrijk om te onthouden dat inferentie verplicht is om elk machine learning-model nuttig te maken in de praktijk. Alleen via inferentie kunnen modellen in bestaande applicaties worden geïntegreerd en door bedrijven en verschillende stakeholders worden gebruikt voor meer zakelijke impact.
FAQ over Machine Learning-inferentie
Wat is inferentie in Machine Learning?
Dit is het proces waarbij je een model gebruikt dat al is getraind en in de productieomgeving is ingezet om voorspellingen te doen op nieuwe, realistische data.
Wat is er nodig voor machine learning-inferentie?
Machine learning-inferentie vereist het volgende: een getraind model, rekenresources, implementatie-infrastructuur, monitoringtools en real-life data.
Wat zijn de typen inferentie?
Er zijn drie hoofdtypen inferentie: abductief, deductief en inductief.
Welke stappen zijn betrokken bij modelinferentie?
Modelinferentie omvat de volgende stappen: (1) laad het getrainde model, (2) preproces de invoerdata zodat het door het model gebruikt kan worden, (3) voer het model met de invoerdata, (4) verwerk de voorspelling van het model na, en (5) geef het resultaat terug in het verwachte formaat.
Wat zijn best practices voor het bouwen van een machine learning-inferentieraamwerk?
Het bouwen van een betrouwbare en robuuste machine learning-inferentieomgeving omvat de volgende best practices: (1) houd rekening met de schaalbaarheid van het framework zodat het meerdere modellen en workflows kan ondersteunen, (2) zorg dat het eenvoudig te integreren is met bestaande of toekomstige systemen en componenten, (3) zorg dat de workflow hoge doorvoer aankan, (4) bied beveiligde toegang tot de resources, (5) neem monitoring- en logmogelijkheden op, (6) stel duidelijke en actuele documentatie op, (7) integreer de feedbacklus.
