Machine learning voor beginners
Machine learning voor beginners

Machine learning voor beginners

Machine learning, deep learning, AI… Iedereen heeft het erover, maar wat is machine learning nu eigenlijk en hoe kan het waarde creëren? Wij vroegen een onafhankelijke AI- en machine learning-expert om meer uitleg over dit complexe onderwerp. Jonathan Prom Scharff werk momenteel aan zijn eigen project met als doel het verminderen van het nationale energieverbruik door gebruik te maken van de nieuwste ontwikkelingen op gebied van machine learning. Als machine learning consultant, kan Jonathan ook ingehuurd worden voor machine learning-projecten in andere sectoren.

1. Hoe maken bedrijven vandaag de dag gebruik van machine learning voor bedrijfsdoeleinden en hoe snel ontwikkelt het zich?

Dit is de standaardvraag die mensen graag bespreken op bedrijfsgerelateerde conferenties. Meestal wordt die vraag gevolgd door een dia met de tekst: “AI is de nieuwe elektriciteit”. Daarna volgen er vaak een aantal citaten uit een McKinsey-rapport die zeggen dat een groot percentage van de banen geautomatiseerd zal worden in de nabije toekomst. De spreker zal dan waarschijnlijk het publiek ernstig aankijken en zeggen: “Als u niet onmiddellijk handelt, is het slechts een kwestie van tijd voor u de gevolgen ondervindt.” Terwijl dit waarschijnlijk een zeer goede verkooptactiek is – niets is beter dan angst om mensen tot actie aan te zetten – is het in realiteit heel anders. Ja, Google, Facebook en dergelijke zijn inderdaad bezig met het inzetten van machine learning op grote schaal. En ja, men kan niet ontkennen dat veel banen geautomatiseerd zullen worden. Maar toch zien we dat de meeste grote bedrijven machine learning slechts in beperkte mate gebruiken. In de gevallen waarbij een machine learning-oplossing wordt gebruikt, is het ofwel heel erg simpel (lees: heel erg verkeerd) ofwel extreem complex waardoor het niet goed werkt. Dus ofwel deed een stagiair snel iets, zonder te beschikken over de juiste kennis, ofwel huurde het bedrijf een stel slimmeriken die dit hypermoderne onderzoeksverslag van nul af aan implementeerden.

Beide extremen werken meestal niet zo goed. De eerste om voor de hand liggende redenen, en de tweede omdat een goed werkende machine learning-oplossing over het algemeen geen puur theoretische oefening is. Het draait allemaal rond het verkrijgen van de juiste data, het herformuleren van het probleem zodat het past binnen de standaard machine learning tool box en dan enkel de standaardmiddelen te gebruiken.

Kortom, machine learning zal waarschijnlijk een enorme impact hebben op vele sectoren. Toch zal dit, op een paar uitzonderingen na, niet zo snel gaan. Het verstoren van sectoren is heel moeilijk. Zelfs als een startup alles precies had uitgedacht met betrekking tot machine learning, dan nog had een startup doorgaans geen toegang tot de gegevens die nodig zijn om de algoritmes voor machine learning te laten werken.

2. Waar creëert machine learning nu al waarde?

Het antwoord op deze vraag zal waarschijnlijk heel verschillend zijn afhankelijk van de persoon aan wie u de vraag stelt. Zelf denk ik dat machine learning veel waarde creëert als het aankomt op de automatisering van ietwat “simpele” taken.

De sleutel tot het identificeren of het al dan niet zinvol is om een bepaalde taak te automatiseren, is nagaan of het probleem ontleed kan worden in “goed gedefinieerde hokjes”. Stel dat u een proces wilt automatiseren om te bepalen of iemand een verzekering nodig heeft of niet. Hier kunnen we een goed omgeschreven probleem van maken door te zeggen “gezien deze gegevens, voorspel cijfer 1 wanneer de persoon een verzekering nodig heeft en cijfer 0 als de persoon geen verzekering moet nemen”. Deze probleemomschrijving zorgt waarschijnlijk voor een succesvolle machine learning-oplossing. Als het probleem echter omschreven zou zijn als “gezien deze gegevens, schrijf een verzekeringscontract”, zou het bijna onmogelijk zijn om het proces te automatiseren aan de hand van machine learning.

In vele gevallen is het echter mogelijk een probleem om te buiten tot een welomlijnd probleem door het op te splitsen in kleinere deelproblemen en een middenweg te vinden. In plaats van het probleem dus te omschrijven als “schrijf een verzekeringscontract”, zou men het eerste deelprobleem kunnen omschrijven als “voorspel welk van deze zeven standaardcontracten in dit geval de meest geschikte zou zijn”. De volgende deelproblemen kunnen dan de passende nummers bepalen op bepaalde vooraf gespecificeerde plaatsen in het gekozen standaardcontract.

Door een complex probleem op te splitsen in gestandaardiseerde deelproblemen kan men grote hoeveelheden werk automatiseren aan de hand van machine learning. Het is belangrijk te overwegen of de taak die u wilt automatiseren omgezet kan worden in een goed gedefinieerde voorspelling. Dus “Welke van deze zeven mogelijke standaardcontracten is het juiste contract?”, “Wat is de juiste prijs voor het verzekeren van deze specifieke voorwaarde?” enzovoort.

Een ander belangrijk punt is dat u niet mag proberen te veel te automatiseren. Vaak bevindt u zich in een situatie waar u 70 tot 80 procent van de workflow kunt automatiseren. In plaats van het volledig proberen verwijderen van de mens en alles te automatiseren, probeer dan te stoppen bij die 70 tot 80 procent. Proberen om de laatste 30 tot 20 procent er nog bij te nemen kost meestal veel geld en is vaak foutgevoelig.

3. Probeer machine learning uit te leggen aan de hand van een voorbeeld.

Goed, stel u bent een rechter en u overweegt uw werk te automatiseren. Wie geeft er nu om criminelen, toch? Het probleem bij het automatiseren van het strafproces is in essentie “dat er op elke regel een uitzondering is”. Als iemand een computerprogramma moet schrijven dat automatisch mensen veroordeeld, dan zou er een enorme hoeveelheid code nodig zijn om rekening te houden met elk speciaal geval. Bovendien zou zelfs de kleinste wetswijziging het programma nutteloos maken.

Maar wat als we, in plaats van dat een mens alle regels in een computerprogramma schrijft, we dit laten doen door een machine? Kunnen we niet gewoon een computer voorzien van veel criminele zaken in combinatie met de bijhorende straffen, waardoor de computer de regels zelf kan uitzoeken? Dit kan, en dit proces noemen we ook wel machine learning. Machine learning kan dus gezien worden als een stel algoritmen die leren om waargenomen gedrag te kopiëren. Wanneer u een automatische rechter creëert, stelt u dus een dataset samen van eerdere zaken en hun bijhorende vonnissen. Deze zaken uit het verlezen vormen dan het waargenomen gedag en een machine learning-algoritme probeert hieruit een uitgebreid regelsysteem te halen dat het mogelijk maakt het strafgedrag van rechters uit eerdere zaken te kopiëren.

Wat zou er gebeuren als we dit in het echte leven probeerden? Wel, dit is eigenlijk al gebeurt in de VS. Het eerste probleem dat men ervoer met de AI-rechter was dat de AI-rechter een beetje racistisch bleek te zijn bij het uitdelen van straffen. Dit was het resultaat van de eerdere vonnissen van de rechters, die de neiging hadden om zwarte mensen langere straffen op te leggen. De AI-rechter kopieerde dit gedrag. Het idee dat algoritmen niet onderhevig zijn aan menselijke vooroordelen is dus meestal verkeerd. Maar stel dat we graag een niet-racistische AI-rechter willen creëren. Hoe verwijderen we de tendens om zwarte mensen een zwaardere straf op te leggen?

Om deze reden is machine learning eerder een kunst dan een wetenschap. De oplossing is ofwel het verwijderen van de racistische uitspraken uit de dataset of het algoritme de informatie geven waarmee deze kan leren welk vonnis er racistisch is en welk niet. Een mogelijke oplossing is dus om alle rechtszaken waarbij zwarte mensen benadeeld worden, te elimineren. Een andere mogelijkheid is de AI-meester trainen op vlak van raciaal vooringenomen data en wanneer de AI-rechter in de praktijk wordt ingezet, steeds zeggen dat het om een blank persoon gaat. Op die manier worden alle mensen gelijkaardig beoordeeld.

4. Welke algoritmen zou u gebruiken voor het creëren van de AI-rechter?

Stel dat u uw dataset van eerdere zaken en de bijhorende uitspraken heft verzameld. Deze vormen de basis voor het gedrag dat u wil gaan kopiëren. U bent nu klaar om aan de slag te gaan met de AI-rechter.

De meeste mensen zouden zich meteen wenden tot de veelbesproken neurale netwerken en deep learning-technieken. (Red.: Neurale netwerken zijn een specifieke vorm van machine learning-algoritmen die recent omgedoopt werd tot deep learning.) Ik betwijfel echter of een onervaren gebruiker in staat zou zijn om gemakkelijk resultaten te behalen met behulp van een techniek die bekend staat onder de erg onsexy naam: Gradiëntverhoging van beslissingsschema’s. Behalve in machine learning-competities, hebben nog niet veel mensen gehoord over de gradiëntverhoging van beslissingsmethoden.  Als het echter gaat om het winnen van machine-learning-competities presteert dit algoritme enorm goed.

5. Betekent dit dat deep learning zwaar overroepen is?

Goede vraag. U bent misschien geneigd om te zeggen: “Waarom heeft iedereen het dan continu over dep learning? Ze kunnen toch niet allemaal verkeerd zijn?” De simpele versie van het antwoord is gerelateerd aan de zogenaamde ongestructureerde data. Wanneer u uw dataset van eerdere zaken aanmaakt, maakt u dus meestal een gestructureerde representatie van de zaken uit het verleden. Dit betekent dat u voor elke zaak in wezen een spreadsheetoverzicht maakt. De samenvatting kan variabelen bevatten zoals ras, aantal eerdere veroordelingen, getal dat aangeeft hoe ernstig het misdrijf was, enzovoort. Voor elk historisch geval vult u dan het juiste getal in voor alle variabelen in uw spreadsheetsoverzicht. U zet dus een heleboel reeds gepasseerde zaken om in een spreadsheet, waarbij elke rij overeenkomt met een rechtszaak.

Deze gestructureerde representatie wordt vervolgens ingevoerd in een algoritme voor machine learning, dat volgens de onderliggende regels de zaken verbindt met de bijhorende uitspraken. Het probleem hierbij is dat het soms erg moeilijk kan zijn om een spreadsheetoverzicht van uw inputgegevens te maken. De meest prominente voorbeelden van dergelijke gegevens zijn foto’s en tekst. Ook al is het voor mensen heel makkelijk om objecten in een foto te herkennen, was dit een heel moeilijke taak voor machine learning-algoritmen. Dit veranderde echter bij de opkomst van deep learning, wat ervoor zorgde dat machine learning-systemen nu ook beeld- en tekstgegevens kunnen interpreteren. Deep learning werkt ook heel goed bij gestructureerde data, maar daar bestaan veel gemakkelijkere algoritmen voor met vergelijkbare prestaties.

6. Heeft u advies voor mensen die van start willen gaan met machine learning?

Geloof het of niet, maar het is eigenlijk erg eenvoudig om snel aan de slag te gaan met machine learning. Er zijn enkele geweldige cursussen beschikbaar over hoe snel resultaten te krijgen met machine learning. U vindt ze gratis op course.fast.ai. Deze cursussen gaan voornamelijk over deep learning, maar binnenkort komt er een nieuwe cursus uit met de focus op meer traditionele machine learning-technieken. Een andere goede starterswebsite is kaggle.com. Hier delen machine learning-beoefenaars hun aanpak voor het oplossen van machine learning-competities.

Kan AI waardevol zijn voor uw bedrijf? Laat u helpen door een onafhankelijke consultant.

Bent u op zoek naar een AI-expert of AI-projectmanager, een machine learning engineer, een automatiseringsontwikkelaar of een andere consultant binnen dit domein? Contacteer ons dan voor een gratis offerte voor een zorgvuldig geselecteerde kandidaat voor uw project.

Geef een antwoord