Hoe kunnen zelfrijdende auto’s leren? Hoe werkt gezichtsherkenning? En hoe leer je zo snel van grote hoeveelheden data? In andere woorden: hoe werkt ‘machinaal leren’?

Eerder kon je op Scientias.nl al meer lezen over de geschiedenis van machinaal leren. In dat artikel zagen we dat machinaal leren pas na de Tweede Wereldoorlog echt in de praktijk gebracht werd. Het vertrouwen in machinaal leren was vanaf die tijd niet altijd even stabiel. De computer-technologische ontwikkelingen gingen namelijk niet altijd even snel. Nu leven we echter in een tijd waarin het vertrouwen helemaal terug is en machinaal leren ons dagelijks leven beheerst en in de toekomst nog meer zal gaan beheersen. Vooral kunstmatige neurale netwerken spelen een belangrijke rol in machinaal leren. Helaas worden deze neurale netwerken vaak gezien als een blackbox waarin je informatie stopt (invoer) en waar, na wiskundig gegoochel, een resultaat (uitvoer) uitkomt. Uiteraard is het niet echt een blackbox, maar hoe werkt het dan? Daarover in dit artikel meer!

“Hoe het menselijk leren in detail werkt, hebben biologen nog altijd niet met zekerheid kunnen achterhalen. Dit neemt niet weg dat een biologisch neuraal netwerk imiteerbaar is”

Biologische neurale netwerken
Om kunstmatige neurale netwerken te begrijpen, is het goed om eerst te kijken naar de inspiratiebron: biologische neurale netwerken in ons brein. Een biologisch netwerk bestaat onder meer uit neuronen, axonen en synapsen. De neuron kan beschreven worden als informatie- en signaalverwerker. Het overbrengen van impulsen gaat via synapsen en axonen, die als verbinding tussen neuronen zitten. Deze impulsen van neuron naar neuron vinden plaats als elektro-chemische reacties een drempelwaarde overschrijden. Het is op deze wijze dat informatie doorgegeven wordt in een complex neuraal netwerk. Simpel gezegd worden zo bijvoorbeeld ervaringen in het brein verwerkt en kan een mens leren. Hoe het menselijk leren in detail werkt, hebben biologen nog altijd niet met zekerheid kunnen achterhalen. Dit neemt niet weg dat een biologisch neuraal netwerk imiteerbaar is.


Simpel model van een perceptron. De linker twee bollen (x1 en x2) representeren de binnenkomende informatie. Dit kunnen uiteraard veel meer dan twee bollen zijn (afhankelijk van de complexiteit van de binnenkomende informatie). De rechter bol is een enkele neuron die de uitkomst geeft. Het algoritme leert om de juiste gewichten w1 en w2 te krijgen, zodat de uitkomst steeds beter wordt naar mate er meer data ingevoerd wordt.

Kunstmatige neurale netwerken
Zoals we net al opmerkten, hebben biologische neurale netwerken ons geïnspireerd om kunstmatige neurale netwerken te ontwikkelen. Je kunt dit vergelijken met auto’s die geïnspireerd zijn door paard en wagen of vliegtuigen door vogels. Dit betekent niet dat een kunstmatig neuraal netwerk een simulatie is van biologisch neuraal netwerk, net zoals dat een auto geen simulatie is van een paard.
In 1958 werd het eerste simpele wiskundige neurale netwerk bedacht door Frank Rosenblatt: het ‘perceptron’. Hier was er slechts één neuron. Dit was toch al revolutionair, omdat het algoritme in staat was om te leren van data en data in twee klassen te verdelen. Op deze manier konden bijvoorbeeld op basis van foto’s mannen en vrouwen of honden en katten van elkaar onderscheiden worden.
Er was helaas een teleurstelling, want er kon alleen maar onderscheid gemaakt worden tussen twee klassen als ze lineair onderscheidbaar zijn, zoals we in de afbeelding hieronder zien. Er zijn echter tal van problemen die niet door lineair onderscheidbaarheid kunnen worden onderscheiden. Daarom begon men te kijken naar neurale netwerken met meerdere lagen van neuronen. Deze zijn een stuk complexer, omdat er ook gebruik gemaakt wordt van niet-lineaire wiskundige functies tussen de lagen. Dit model had dus krachtigere computers nodig. Gelukkig kwamen die er. Met deze meerdere-laags neurale netwerken kunnen ook niet-lineair klassen worden onderscheiden. Daarnaast kunnen deze modellen ook complexere problemen oplossen of continue waardes voorspellen. Denk aan het voorspellen van prijzen van huizen op basis van eigenschappen van het huis.

Afbeelding: Elizabeth Goodspeed (via Wikimedia Commons).

Andere soorten kunstmatige neurale netwerken
Er zijn niet alleen maar neurale netwerken die in één richting leren. Je hebt ook neurale netwerken, die ‘recurrent neural networks’ genoemd worden. Deze laten, zoals de Engelse naam al verklapt, een signaal terugkeren in het neuraal netwerk. Hierdoor krijgt het netwerk extra geheugen en kunnen patronen bijvoorbeeld makkelijker aangeleerd worden.
Er bestaan verder nog een heleboel andere types, die elk hun eigen specialiteit hebben. Zo heb je ook convolutionele neurale netwerken die geschikt zijn om afbeeldingen te herkennen, zoals (we denken dat) een biologisch neuraal netwerk dat doet. Verder kun je de verschillende types samenvoegen tot een hybride neuraal netwerk.

Leren
Je vraagt je ondertussen misschien af hoe dat leren dan werkt. Laten we daarom hier nu naar kijken. Let wel op: we bespreken hier de meest gebruikte methode. Er zijn ook nog andere manieren om een neuraal netwerk te laten leren van informatie.
De dataset waarmee gewerkt wordt, wordt eerst gesplitst in een training- en test-dataset (vaak in een verhouding waarin er een stuk meer trainings- dan test-data is). Een neuraal netwerk leert van de informatie die het aangeboden krijgt uit een trainingsdataset. Het leren bestaat uit iteraties van drie stappen. In de eerste stap gaat de informatie van invoer naar uitvoer door het netwerk heen. Meestal is elk neuron in een laag verbonden met alle neuronen in de volgende laag door middel van een gekozen wiskundige functie. Hoe sterk deze verbonden zijn wordt bepaald door de gewichten. Voor de eerste iteratie worden vaak willekeurige gewichten gekozen, omdat het neuraal netwerk nog niet weet wat de optimale gewichten zijn. Zodra de informatie aankomt bij de laatste laag (uitvoer), krijgen we een uitkomst op basis van de schakeling van wiskundige functies. Stap twee is het vergelijken van de berekende uitkomst en de gewenste uitkomst, die bekend is uit de trainingsdata. Op basis hiervan kan het neuraal netwerk in stap drie gaan terugrekenen en zijn gewichten bijschroeven. Dit gaat volgens een algoritme dat ‘backpropagation’ heet. Deze drie stappen zijn één iteratie. Nu kan de tweede iteratie beginnen met exact dezelfde stappen. Opnieuw worden de gewichten bijgewerkt op basis van het verschil tussen berekende en gewenste uitkomst. Dit gaat net zolang door totdat de uitkomst ‘goed genoeg’ is. Soms zijn dit 10 iteraties, maar dit kan ook oplopen tot 1000 of meer.


Stappen in de training van een neuraal netwerk per iteratie.

Overfitting
Je vraagt je misschien af waarom het algoritme niet doorgaat totdat de perfecte uitkomst gegeven wordt. Dit kun je inderdaad doen, maar het gevaar is dan dat het neuraal netwerk alleen optimaal getraind wordt om de trainingsdata te imiteren en niet nieuwe data. Terwijl het er uiteindelijk om gaat om een neuraal netwerk klaar te stomen om nieuwe data te kunnen voorspellen. Daarom wordt na een training een ander deel van de bekende data (die niet gebruikt is voor de training) gegeven aan het model. Dit is de testdata. Deze data gaat ons vertellen hoe goed het neuraal netwerk werkt voor nieuwe data met een onbekende uitkomst. Als het neuraal netwerk goed werkt voor de trainingsdata, maar niet voor de test-data, dan spreekt men ook wel over ‘overfitting’. Dit kan voorkomen worden door bijvoorbeeld op tijd te stoppen met trainen. Daarnaast zijn er ook andere technieken om het model te ‘generaliseren’.

Andere manieren van leren
Tot nu toe hebben we alleen gesproken over ‘supervised’ leren, waarin we trainings- en testdata hebben die een bekende uitkomst hebben. Er bestaat ook ‘unsupervised’ leren, waarbij je geen voorkennis hebt over wat de juiste uitkomst is. Het is dan de bedoeling dat een neuraal netwerk niet een uitkomst voorspelt, maar bijvoorbeeld op basis van de bekende informatie classificeert. Denk aan het onderscheiden van foto’s van dieren op basis van het herkennen van specifieke kenmerken (vormen).
Ook bestaat er ‘reinforcement’ leren. Hier heb je ook geen complete informatie in je trainingsdata, maar ontdekt een neuraal netwerk bijvoorbeeld een kortste pad. Dit kan handig zijn bij het zoeken van de beste uitgang in een doolhof of het uitspelen van een videogame. Het neuraal netwerk probeert dan veel verschillende mogelijkheden uit en onthoudt de vooruitgangen die het boekt. En gaat net zo lang door totdat het de beste oplossing gevonden heeft en dus het kortste pad gevonden heeft.

Mogelijkheden
Er zijn zoveel toepassingen voor neurale netwerken. We zagen al dat mensen verslagen worden door neurale netwerken met spellen zoals schaken, GO, of met videogames. Ook hebben we in het dagelijks leven al ‘face recognition’, waarmee mensen herkend worden op foto’s. Dit gaat tegenwoordig nog een stap verder, waar op basis van foto’s bewegende beelden gemaakt worden. Zo zijn er ‘deepfakes’ waarbij met neurale netwerken de Mona Lisa of een oude foto van Albert Einstein plotseling weer kunnen bewegen en praten. Verder leren bijvoorbeeld zelfrijdende auto’s met neurale netwerken. Zo kunnen we nog wel even doorgaan met het opsommen van mogelijke toepassingen van neurale netwerken.

Gevaren
Naast alle positieve kanten, heerst er ook een angst voor de toepassing van neurale netwerken. Het kan namelijk ook verkeerd ingezet worden. Zo zien we al dat er fake news gecreëerd wordt door filmpjes van politici te manipuleren. Ook kan gezichtsherkenning ingezet worden om bewoners van een stad de hele dag door te volgen. Gelukkig vindt dit hier in Nederland niet op deze manier plaats en krijgen we langzaam maar zeker steeds betere/duidelijkere wetgeving over wat wel en niet mag.
Stephen Hawking waarschuwde ons al voor de gevaren van kunstmatige intelligentie – waar machinaal leren en neurale netwerken dus onderdeel van zijn – omdat hij geloofde dat deze vorm van intelligentie een bedreiging voor ons zou kunnen worden. Deze zelfde waarschuwingen worden ook gegeven door bekende mensen zoals Tesla- en SpaceX-baas Elon Musk. Zij hebben het dan over de ontwikkeling van autonome wapens of robots in de vorm van bijvoorbeeld drones met oorlogsdoeleinden of bedoeld om individuele mensen om het leven te brengen. Maar ook als we verder speculeren over de toekomst, zouden we uiteindelijk vrijdenkende kunstmatige intelligentie slimmer dan mensen kunnen maken. Als we deze vervolgens loslaten, zijn er allerlei bizarre scenarios voor onze samenleving mogelijk. Er is zelfs al een waarschuwing gegeven in de vorm van een brief aan de Verenigde Naties, ondertekend door meer dan 100 kunstmatige intelligentie-experts, om dit soort scenarios te voorkomen.

Toekomst
Neurale netwerken zijn ingenieus en één van de grootste doorbraken van onze tijd. Het heeft onze wereld al veranderd en zal dit blijven doen. Het is alleen de vraag op wat voor manier… Op internationaal niveau zullen regels moeten worden gemaakt omtrent kunstmatige intelligentie en het gebruik van neurale netwerken, zodat we ons minder druk hoeven te maken over de negatieve mogelijkheden. Vervolgens kunnen we ons dan focussen op de schoonheid van neurale netwerken en het moois wat deze ons kunnen brengen.

Jurjen de Jong (1993) heeft een bachelor wiskunde en bachelor natuurkunde behaald in Utrecht en een master wiskundige natuur-en sterrenkunde in Gent afgerond. Onlangs rondde hij de master-na-master in Space Studies in Leuven af met een stage bij de ESA en momenteel werkt hij als data scientist. Jurjen leest graag over de verschillende ontdekkingen en ontwikkelingen op wetenschapsgebied en door er over te schrijven hoopt hij zijn kennis te delen met een groter publiek. Zijn artikelen verschijnen niet alleen op Scientias.nl, maar ook op een blog die hij recent lanceerde: Asbronomers.com. Eerder verscheen van Jurjens hand al dit interessante artikel waarin hij uitzoekt of het nodig is dat ook de ruimtevaart groener wordt. Ook zocht hij voor Scientias.nl uit of de ruimtelift werkelijk toekomst heeft. Recent publiceerde hij ook een artikel over de Parker Solar Probe: een ruimtesonde die binnenkort de zon gaat ‘aantikken’ en de veelbesproken Riemann-hypothese.