Tijdens gesprekken met mogelijke klanten en concullega’s in het veld horen we steeds vaker dat begrippen zoals Artificial Intelligence (A.I.), Machine Learning (M.L.) en andere buzzwords door elkaar heen worden gebruikt.

Om voor iedereen deze gesprekken beter te laten verlopen en de verwachtingen goed te kunnen managen, gebruiken we deze korte serie om de grootste begrippen en buzzwords uit te leggen.

Machine Learning

Om het begrip zoals Machine Learning uit te leggen, is een tastbaar voorbeeld vaak het gemakkelijkste;

Machine Learning is niet het futuristische Skynet uit Terminator waar we bang voor hoeven zijn maar ook geen toekomstmuziek; Machine Learning bestaat al jaren en wordt tevens al jaren door iedereen met veel plezier gebruikt: het spam filter.

Waarom gebruiken we M.L. voor zoiets als een spamfilter?

We kunnen natuurlijk ook zelf een spamfilter programmeren die expliciet opzoek gaat naar de regels die wij hem vertellen: “Als een mail de tekst “4U” dan is het spam”.
Wanneer dit echter door de spammers wordt aangepast naar “For U”, dan moeten we deze regels is ons eigen programma opnieuw aanpassen, testen en verspreiden.

M.L. hoeft niet expliciet verteld te worden dat een mail met bepaalde steekwoorden in de titel spam bevat; uit eerdere ervaringen heeft het systeem dit al geleerd en zal ook zien dat de tekst veranderd is. De regels waarmee de spam wordt aangemerkt, veranderen dus met de omstandigheden mee zonder dat wij als programmeurs dit hoeven aan te passen.

In een definitie:
“Machine Learning is de wetenschap van het programmeren van computers zodat zij kunnen leren van data.”

Verschillende M.L. systemen onderscheiden zich op een aantal manieren. We bekijken in dit blog direct de eerste en zullen later terug komen op de rest:

  • Op welke manier wordt het systeem geholpen bij het leren?
  • Kan het systeem gaandeweg bijleren?
  • Vergelijkt het nieuwe datapunten met bestaande punten of gebruikt het patronen met een voorspellend model?

Op welke manier wordt het systeem geholpen bij het leren?

De manieren van leren voor een Machine Learning systemen kan worden onderverdeeld in 4 categorieën:

  • Supervised
  • Unsupervised
  • Semisupervised
  • Reinforcement

Supervised Learning

Met supervised learning , helpen we het systeem met leren: We geven het systeem een hoeveelheid aan trainingdata en geven tevens aan wat we belangrijk vinden dat het systeem ons later zelf kan vertellen. Om het Spam voorbeeld er opnieuw bij te betrekken :
We geven het systeem informatie over berichten en vertellen het tevens of het hier wel of niet om spam gaat. Dit wordt ook wel “labellen” genoemd.

Een ander voorbeeld is het voorspellen van een doelwaarde zoals de verkoopprijs van een huis aan de hand van een aantal features (aantal kamers, oppervlakte, locatie etc.).

Tijdens het trainen van het systeem geven we aan het systeem het complete informatie plaatje inclusief de verkoopprijs zodat het hiervan kan leren.

Unsupervised Learning

Bij het unsupervised learning helpen we het systeem niet en geven we het enkel de informatie zonder labels.

We laten het systeem zelf leren en laten het gebruikte algoritme ons de gevonden resultaten vertellen. Denk hierbij bijvoorbeeld aan het vinden van ongewone uitschieters in data of het groeperen van bezoekers op een website.

Semisupervised Learning

Omdat het labellen van data gewoonlijk flinke tijdsinverstering vraagt, kan er ook gebruik gemaakt worden van een mix tussen de 2 leertypes : Semisupervised learning.

Een voorbeeld hiervan is een foto-opslag waarin mensen getagged kunnen worden. Het unsupervised gedeelte kan worden gebruikt om aan te geven dat dat Persoon A te zien is op foto 2,7 en 11. Supervised learning komt hierbij kijken als wij vervolgens zelf aangeven wie die persoon is op foto 2 waarna dit wordt gekoppeld aan de rest.

Reinforcement Learning

Reinforcement learning maakt gebruik van beloningen en straffen. Het systeem wordt de regels en doel uitgelegd, hierna wordt het beloond of gestraft aan de hand van het behaalde resultaat.

Deze manier van leren wordt vaak toegepast bij robots die leren lopen. Hoe meer afstand de robot aflegt binnen een bepaalde tijd, hoe hoger de beloning.

De volgende keer

In het volgende blog gaan we kijken naar de mogelijkheid van het systeem om bij te leren wanneer het al “in de wereld geholpen is”.


Wil je meer weten over Tableau of Alteryx? Wil je het maximale uit deze tools halen? Neem deel aan onze workshops en trainingen of huur onze consultants in!