Hoe werkt AI?

Michiel Willekens

Hoe werkt artificial intelligence (AI)? We spreken van AI als een systeem bestaat uit ‘slimme’ algoritmes. Een algoritme is een stukje systeemcode dat een berekening doet. Dat kan een heel simpele berekening zijn of een complexe berekening. Om te spreken over een AI-algoritme moet deze voldoen twee voorwaarden: het resultaat van het algoritme is een intelligente voorspelling en het algoritme kan zelf leren. Een algoritme leert door data te analyseren en zelf de logica uit de data af te leiden. Een programmeur of datawetenschapper bedenkt deze algoritmes en zorgt er ook voor dat een algoritme de juiste data analyseert.

Hoe werkt dit? In dit artikel zal ik dat zo simpel mogelijk uiteen zetten. Ik gebruik als voorbeeld een AI-algoritme dat afbeeldingen analyseert en voorspelt wat op de afbeelding te zien is. Dit is een vorm van specifieke AI, zoals ik uitleg in het artikel Wat is AI?

Voorbeeld van een AI-algoritme

Het volgende diagram is een verimpele weergave van een algoritme. Een algoritme heeft een input, bijvoorbeeld een afbeelding. Het model van een algoritme doet de berekening. De output van het model is een voorspelling.

Een versimpelde weergave van een algoritme

Hoe werkt AI bij een algoritme dat objecten in afbeeldingen moet herkennen? Dit ziet er als volgt uit voor een algoritme dat een afbeelding van een kat als input heeft, het model doet de berekening en de output is de voorspelling wat er op de foto staat.

De input wordt gebruikt om een voorspelling te doen

In dit geval heeft het model voorspeld dat de input afbeelding waarschijnlijk een kat is. Hoe komt het model tot deze voorspelling? Het model heeft dat zelf geleerd door middel van het verwerken van data. Het proces van leren wordt trainen genoemd. Bij het trainen analyseert het algoritme data en bedenkt dan zelf de logica die nodig is om een kat of hond te herkennen.

Een model train je met duizenden voorbeelden (data)

Op basis van een grote hoeveelheid foto’s leert het model zelf relaties leggen en kan het model zelf de logica bepalen of een foto een kat of een hond is. Dit is machine learning en is een wezenlijk onderdeel van AI (nb. niet alle AI is per se machine learning).

Neurale netwerken

Hoe kan een model van een algoritme getraind worden? Dat is mogelijk, omdat een model bij AI-algoritmes een neuraal netwerk is. Een neuraal netwerk is een wiskundig model dat bestaat uit zogenaamde neuronen die met elkaar in verbinding staan. Die zijn met elkaar verbonden door relatief simpele wiskundige formules. Een neural netwerk kan uit een groot aantal neuronen bestaan. Dan zijn er veel verbindingen mogelijk, zodat complexe voorspellingen gedaan mogelijk zijn.

Een neuraal netwerk is onderverdeeld in lagen. Hier zie je een zeer simpel neuraal netwerk dat bestaat uit 1 verborgen laag die de voorspellingen doet. In dit algoritme zijn er 3 input-variabelen en 2 output-variabelen. Elke pijl in dit diagram representeert een wiskundige formule tussen verschillende neuronen.

Een simpele weergave van een neuraal netwerk

Deep learning

Neurale netwerken zijn al uitgevonden in de jaren 80 en zijn toen ook op grote schaal ingezet. Hiermee zijn toen bijvoorbeeld grote winsten behaald bij het voorspellen van beurskoersen. De ontwikkeling heeft daarna ook lange tijd stilgestaan, omdat de toepasbaarheid beperkt bleef. De laatste jaren is er weer grote vooruitgang geboekt. De reden hiervoor is dat er meer rekenkracht beschikbaar is en er veel innovaties gedaan zijn in de architectuur van neurale netwerken. Hierdoor zijn neurale netwerken steeds groter geworden en daarmee is de toepasbaarheid breder geworden. In onderstaand model zie je een groter neuraal netwerk met 4 lagen, de complexiteit is nu toegenomen doordat er veel meer relaties zijn. Dit maakt het mogelijk om complexere voorspellingen te doen. Als een model veel lagen heeft, dan is er niet alleen sprake van machine learning, maar dan spreken we ook over deep learning.

De meest geavanceerde modellen die nu ontwikkeld worden zijn nog veel groter, er zijn momenteel neurale netwerken in gebruik met maar liefst 175 miljard neuronen. Het trainen van dergelijke modellen vereist (nu nog) supercomputers en maken zeer complexe relaties en voorspellingen mogelijk. Deze modellen worden bijvoorbeeld ingezet voor de analyse van taal en spraak.

Een “diep” neuraal netwerk

Werking als het brein

De architectuur van een neuraal netwerk is afgeleid van de architectuur van een biologisch brein. Net als bij een neuraal netwerk bestaat een brein uit neuronen, oftewel zenuwcellen. Net als bij een neuraal netwerk is het menselijk brein plastisch. Als het brein leert ontstaan er nieuwe verbindingen tussen neuronen. Qua aantallen neuronen is een menselijk brein ook enorm. Een menselijk brein heeft maar liefst 100 miljard neuronen met 100 triljoen synapses (verbindingen tussen neuronen). Qua aantallen komen de laatste digitale neurale netwerken in de buurt van een menselijk brein, maar de organisatie en complexiteit van een menselijk brein is nog vele malen groter.

De resultaten van AI-algoritmes zijn indrukwekkend en op specifieke gebieden al niet meer te onderscheiden van menselijke intelligentie. Het blijven nog steeds toepassingen van specifieke intelligentie en niet van algemene intelligentie. Het algoritme begrijpt zelf nog niet echt de antwoorden die het geeft. Een van de routes om te komen tot algemene intelligentie die wetenschappers nemen is het onderzoeken van de architectuur van een (menselijk) brein en dat vertalen naar een kunstmatig model.

We spreken over kunstmatige intelligentie als algoritmes intelligente voorspellingen doen en zelf nieuwe relaties uit data kunnen afleiden. Een neuraal netwerk maakt dit mogelijk. De omvang van deze algoritmes groeit gestaag en de omvang komt in de buurt van een menselijk brein, maar maakt dat een AI-algoritme daadwerkelijk intelligent? Voorlopig nog niet.