Veel mensen denken dat ze nu wel weten wat machinaal leren is: je ‘voedt’ computers een hoop ‘trainingsgegevens’, zodat ze dingen ‘leren’ zonder dat we precies hoeven te specificeren hoe.
Maar computers zijn geen honden, gegevens zijn geen hondenbrokjes, en die vorige zin bevat veel te veel lucht citaten. Wat betekent dit machinaal leren (ML) dan precies?
Machinaal leren (in het Engels machine learning) is een deelgebied van kunstmatige intelligentie, dat onderzoekt hoe menselijke intelligentie computationeel kan worden gesimuleerd (of zelfs overtroffen!).
Hoewel sommige AI technieken (zoals expertsystemen) andere benaderingen gebruiken, zorgt machinaal leren voor het grootste deel van de huidige vooruitgang op dit gebied door zich op één ding te concentreren: het gebruik van algoritmen om automatisch de prestaties van andere algoritmen te verbeteren.
Hoe machinaal leren in de praktijk werkt
Dit is hoe machinaal leren in de praktijk kan werken, althans voor een veelvoorkomende vorm van machinaal leren, genaamd begeleid leren. Dit proces begint met een taak, bijvoorbeeld katten op foto’s herkennen.
Het doel is dan om een wiskundige functie te vinden die deze taak kan vervullen. Deze functie, die het model wordt genoemd, zal één soort getallen als invoer gebruiken (in dit geval gedigitaliseerde foto’s) en deze in meer getallen als uitvoer omzetten. Dit zouden labels kunnen zijn met de tekst ‘kat’ of ‘geen kat’.
Het model heeft een wiskundige basisvorm die enige structuur voor de taak biedt, maar het zal in eerste instantie waarschijnlijk geen nauwkeurige resultaten opleveren.
Dus is het nu hoog tijd om het model te trainen, en dat is waar een ander soort algoritme het overneemt. Een andere wiskundige functie (de doelstelling genoemd) berekent dan eerst een getal dat de huidige ‘afstand’ tussen de outputs van het model en het gewenste resultaat vertegenwoordigt.
Dit trainingsalgoritme gebruikt vervolgens de afstandsmeting van het object om de vorm van het originele model aan te passen. Het hoeft daarbij niets te ‘weten’ over wat het model vertegenwoordigt, maar het pusht simpelweg onderdelen van het model (de zogenaamde parameters) in bepaalde wiskundige richtingen.
Daardoor wordt de afstand tussen de werkelijke en de gewenste output geminimaliseerd.
Een nieuw proces met een bijgewerkt model
Zodra al deze aanpassingen zijn aangebracht, wordt het proces opnieuw gestart. Het bijgewerkte model transformeert de input uit de trainingsvoorbeelden nu in een (iets betere) output, waarna de doelfunctie nog een andere (iets betere) aanpassing aan het model aangeeft.
Zo gaat dit proces alsmaar verder… heen en weer, heen en weer. Na voldoende iteraties zou het getrainde model dan voor de meeste trainingsvoorbeelden een nauwkeurige uitvoer moeten kunnen produceren.
Plus hier komt de echte truc: het moet al die prestaties natuurlijk ook onthouden bij nieuwe voorbeelden van een soortgelijke taak, zolang die niet al te veel van de training verschilt.
Machinaal leren dankzij krachtige rekenmodellen en efficiënte algoritmen
Het gebruik van één functie om herhaaldelijk een andere functie een duwtje in de rug te geven, klinkt misschien meer als gewoon druk aan het werk zijn dan als ‘machine learning’. Maar dat is het hele punt. Door dit gedachteloze proces in gang te zetten, ontstaat er automatisch een wiskundige benadering van de taak, zonder dat mensen hoeven te specificeren welke details er toe doen.
Met efficiënte algoritmen, goedgekozen functies en voldoende voorbeelden kan machinaal leren zo allerlei krachtige rekenmodellen creëren die dingen doen waarvan we geen idee hebben hoe wij ze als mens moeten programmeren.
Het gebruik van classificatie en voorspelling staken
Classificatie en voorspelling taken, zoals het identificeren van katten op foto’s of spam in e-mails, zijn veelal afhankelijk van onder toezicht machinaal leren. Dat betekent dat de trainingsgegevens al van tevoren zijn gesorteerd: de foto’s met katten krijgen daarbij bijvoorbeeld het label ‘kat’.
Dit trainingsproces vormt een functie die zoveel mogelijk van de input aan de overeenkomstige (bekende) output kan toewijzen. Het getrainde model labelt daarna de onbekende voorbeelden.
Het ongecontroleerd leren vindt daarmee structuur in niet-gelabelde voorbeelden en clustert ze in groepen die niet van tevoren gespecificeerd zijn. Systemen voor inhoud aanbeveling die leren van het gedrag van een gebruiker uit het verleden, evenals sommige objectherkenningstaken in computervisie, kunnen zo op het leren zonder toezicht vertrouwen.
De slimme combo van zelf en semi onder toezicht leren
Sommige taken, zoals de taalmodellering, die door systemen als GPT-4o wordt uitgevoerd, maken gebruik van slimme combinaties van technieken onder toezicht en zonder toezicht. Die staan ook bekend als zelf en semi onder toezicht leren.
Ten slotte vormt het versterkend leren een functie door een beloningssignaal te gebruiken in plaats van voorbeelden van gewenste resultaten. Door deze beloning met vallen en opstaan te maximaliseren, kan een model al zijn prestaties slim bij dynamische, opeenvolgende taken verbeteren.
Denk daarbij bijvoorbeeld aan het spelen van games (zoals schaken en Go) of het controleren van het gedrag van echte en virtuele agenten (zoals zelfrijdende auto’s of chatbots).
Kernelmachines, Q-learning en andere slimme algoritmen
Om al deze benaderingen in de praktijk te brengen, gebruiken onderzoekers al jaren een verscheidenheid aan exotisch klinkende algoritmen, van kernelmachines tot Q-learning. Maar het laatste decennium staan vooral de kunstmatige neurale netwerken centraal.
Deze algoritmen, die zo genoemd worden omdat hun basisvorm op de verbindingen tussen hersencellen is geïnspireerd, zijn erin geslaagd veel complexe taken uit te voeren die ooit als onpraktisch werden beschouwd.
Grote taalmodellen, die machinaal leren gebruiken om het volgende woord (of woordfragment) in een reeks tekst te voorspellen, zijn via ‘diepe’ neurale netwerken gebouwd met miljarden of zelfs biljoenen parameters.
De neurale netwerken als krachtige instrumenten
Maar zelfs deze AI reuzen zijn, net als alle andere machine learning modellen, in wezen slechts functies. Ofwel wiskundige vormen. In de juiste context kunnen het uiterst krachtige instrumenten zijn, maar ze hebben ook bekende zwakke punten.
Een ‘overfit’ model past op deze wijze goed bij de trainingsvoorbeelden. Het kan ingevoerde data immers niet op een betrouwbare wijze generaliseren, zoals een katten herkenningssysteem dat faalt wanneer een foto ondersteboven wordt gedraaid.
Een vooringenomenheid bij de ingevoerde gegevens kan door het trainingsproces ook versterkt worden. Iets wat tot vertekende of zelfs onrechtvaardige resultaten kan leiden. En zelfs als een model werkt, is het niet altijd duidelijk waarom. De zogenaamde deep learning algoritmen worden vooral door dit ‘interpreteerbaarheid’ probleem geplaagd.
Toch is het proces van dit alles gemakkelijk te herkennen, want diep van binnen leren deze machines met hun machinaal leren allemaal op dezelfde manier: heen en weer, heen en weer!