Nu we het belang van het selecteren van de juiste trainingsdata en -architectuur hebben besproken, is het tijd om te zien hoe alles samenkomt. De laatste stap is het trainen van de AI. Je hebt het gebouw gebouwd, je hebt de meubels gekocht en nu is het tijd om alles in te richten. In dit hoofdstuk bespreken we verschillende relevante onderwerpen met betrekking tot het trainen van AI. In de context van GA’s leggen we het belang van fitnessfuncties uit en relateren we dit ook breder aan reinforcement learning. Daarna bekijken we het verschil tussen supervised en unsupervised learning.
Laten we even veronderstellen dat Google Maps een AI gebruikt om de kortste route te vinden. Wat zou de fitnessfunctie dan zijn? Zou het de kortste afstand zijn? Het minste brandstofverbruik? De kortste tijd om de bestemming te bereiken? Er zijn altijd afwegingen: het is vrij eenvoudig om de afstand te berekenen, maar als je de tijd wilt berekenen, moet je rekening houden met de maximumsnelheid van elke weg, verkeerslichten, verkeer, wegafsluitingen, enz. Dit kan langer duren voordat het systeem de oplossingen scoort en het evolutieproces vertragen. Het is echter belangrijk om een geschikte fitnessfunctie te hebben, omdat deze de resultaten bepaalt die je krijgt. De antwoorden op de vragen over de snelste route en brandstofefficiëntie kunnen zelfs verschillen.
Als je bijvoorbeeld een schaak-AI traint en hem vertelt dat het aantal stukken op het bord de fitnessfunctie is, kun je schaakmat worden gezet, ook al verlies je geen stukken. Daarom moet je goed nadenken over welke fitnessfunctie je moet gebruiken.
Reinforcement learning is hier in sommige opzichten mee verwant, omdat het fitnessfuncties omvat. Het is prominent aanwezig in gesimuleerd leren – waarbij de AI zich in een gesimuleerde omgeving bevindt en probeert een doel te bereiken. Het concept van reinforcement learning is dat de AI beloond wordt voor het juiste en gestraft voor het verkeerde. Als de AI bijvoorbeeld een auto in een racegame is, krijgt hij meer punten voor het sneller bereiken van de finishlijn, maar kan hij ook punten verliezen voor het in de verkeerde richting rijden. Op deze manier blijven in elke volgende generatie de betere oplossingen behouden en worden de slechtste niet gereproduceerd. Nogmaals, de functie die gebruikt wordt om de AI te beoordelen, moet zorgvuldig worden ontworpen.
De AI moet voldoende ruimte krijgen om dingen uit te zoeken, want hij kan een betere oplossing vinden dan je verwacht. Maar als je te streng bent met de fitnessfunctie, vindt hij de oplossing die je zoekt, en die kun je zelf ook vinden. In hetzelfde voorbeeld van de racegame: als je hem punten geeft voor het scherp nemen van de bochten, ben je streng en laat je hem niet experimenteren. Het kan zijn dat ver van één bocht afgaan en je snelheid behouden effectiever is in de context van de hele race.
Bij supervised learning is er, ondanks de naam, geen mens die het trainingsproces direct monitort. Het verschil zit in het type data dat aan de AI wordt doorgegeven. Bij supervised learning worden de data gelabeld (meestal door mensen). Dit betekent dat iemand de “juiste antwoorden” heeft gegeven, vergelijkbaar met studeren voor een examen door de antwoorden op eerdere examenvragen te gebruiken. Dit is nuttig wanneer er een duidelijk resultaat wordt verwacht, en het levert AI-modellen op die voorspelbaarder en minder volatiel zijn (met minder variantie in nauwkeurigheid en consistentie).
Ongesuperviseerd leren vindt plaats wanneer de data niet gelabeld is en de AI zoekt naar patronen in de data zelf in plaats van verbanden te leggen tussen de data en de labels. Dit is handig wanneer de verwachtingen subjectiever zijn, zoals in geschreven Engels – er zijn veel manieren om hetzelfde te zeggen en geen daarvan is inherent fout. In dit geval is het onpraktisch om de data te labelen en is het effectiever om de AI zelf patronen te laten ontdekken.
Nu we weten dat het onderscheid tussen supervised en unsupervised learning het type data is dat aan de AI wordt verstrekt, laten we de toepassingen van beide bekijken. In geavanceerde modellen zoals LLM’s (ChatGPT) worden beide gebruikt om de AI meer mogelijkheden te geven, maar waar is elk nuttig voor?
Dit onderscheid is belangrijk, omdat beide vormen van leren specifieke kenmerken hebben. Supervised learning kan duur zijn omdat de data gelabeld moeten worden – dit is een intensief proces vanwege de hoeveelheid data die nodig is om een complex model te trainen. Het heeft het voordeel dat de AI de verwachte output kent, omdat deze goed gedefinieerd en duidelijk gestructureerd is. Unsupervised learning daarentegen kan alle data die je geeft gebruiken en proberen daar patronen uit te construeren. De resultaten zijn daardoor minder expliciet en gestructureerd, maar gemakkelijker te trainen omdat er geen speciale data voor nodig is. Het is goed in het vinden van kleine nuances en patronen die anders niet voor de hand liggen.