Opmerking voor de redacteur: Een van de centrale technologieën van kunstmatige intelligentie zijn neurale netwerken. In dit interview legt Tam Nguyen, hoogleraar computerwetenschappen aan de Universiteit van Dayton, uit hoe neurale netwerken, programma’s waarin een reeks algoritmen het menselijk brein probeert te simuleren, werken.
Wat zijn enkele voorbeelden van neurale netwerken die bij de meeste mensen bekend zijn?
Er zijn veel toepassingen van neurale netwerken. Een bekend voorbeeld is het vermogen van uw smartphonecamera om gezichten te herkennen.
Auto’s zonder bestuurder zijn uitgerust met meerdere camera’s die met behulp van neurale netwerken andere voertuigen, verkeersborden en voetgangers proberen te herkennen, en op basis daarvan afslaan of hun snelheid aanpassen.
Neurale netwerken zitten ook achter de tekstsuggesties die je ziet bij het schrijven van teksten of e-mails, en zelfs in de vertaalprogramma’s die online beschikbaar zijn.
Heeft het netwerk voorkennis van iets nodig om het te kunnen classificeren of herkennen?
Ja, daarom is er behoefte aan het gebruik van big data bij het trainen van neurale netwerken. Ze werken omdat ze worden getraind op enorme hoeveelheden gegevens om vervolgens dingen te herkennen, te classificeren en te voorspellen.
In het voorbeeld van de bestuurderloze auto zou hij miljoenen beelden en video’s van alle dingen op straat moeten bekijken en van elk van die dingen moeten weten wat het is. Wanneer je tijdens het surfen op internet op de beelden van oversteekplaatsen klikt om te bewijzen dat je geen robot bent, kan dat ook worden gebruikt om een neuraal netwerk te helpen trainen. Pas als je miljoenen oversteekplaatsen hebt gezien, vanuit verschillende hoeken en met verschillende lichtomstandigheden, kan een zelfrijdende auto ze herkennen als hij in het echt rondrijdt.
Meer gecompliceerde neurale netwerken zijn in staat om zichzelf iets aan te leren. In de onderstaande video krijgt het netwerk de opdracht om van punt A naar punt B te gaan, en je ziet hoe het allerlei dingen probeert om het model naar het einde van het parcours te krijgen, totdat het er een vindt die het het beste doet.
Sommige neurale netwerken kunnen samenwerken om iets nieuws te creëren. In dit voorbeeld creëren de netwerken virtuele gezichten die niet bij echte mensen horen als je het scherm vernieuwt. Het ene netwerk doet een poging om een gezicht te creëren, en het andere probeert te beoordelen of het echt of nep is. Ze gaan heen en weer totdat het tweede netwerk niet meer kan zien dat het door het eerste gecreëerde gezicht nep is.
Mensen maken ook gebruik van big data. Een mens neemt ongeveer 30 beelden per seconde waar, wat neerkomt op 1.800 beelden per minuut, en meer dan 600 miljoen beelden per jaar. Daarom moeten we neurale netwerken een vergelijkbare kans geven om over de big data te beschikken om te trainen.
Hoe werkt een neuraal basisnetwerk?
Een neuraal netwerk is een netwerk van kunstmatige neuronen die in software zijn geprogrammeerd. Het probeert het menselijk brein te simuleren, dus het heeft vele lagen “neuronen”, net als de neuronen in onze hersenen. De eerste laag neuronen ontvangt inputs zoals beelden, video, geluid, tekst, enz. Deze inputgegevens gaan door alle lagen heen, waarbij de output van de ene laag naar de volgende laag gaat.
Laten we een voorbeeld nemen van een neuraal netwerk dat is getraind om honden en katten te herkennen. De eerste laag neuronen splitst het beeld op in lichte en donkere gebieden. Deze gegevens worden ingevoerd in de volgende laag om randen te herkennen. De volgende laag zou dan proberen de vormen te herkennen die door de combinatie van randen worden gevormd. De gegevens gaan op soortgelijke wijze door verschillende lagen om uiteindelijk te herkennen of de afbeelding die je hebt laten zien een hond of een kat is, op basis van de gegevens waarop het is getraind.
Deze netwerken kunnen ongelooflijk complex zijn en bestaan uit miljoenen parameters om de ontvangen input te classificeren en herkennen.
Waarom zien we nu zoveel toepassingen van neurale netwerken?
Eigenlijk zijn neurale netwerken al lang geleden uitgevonden, in 1943, toen Warren McCulloch en Walter Pitts een computermodel voor neurale netwerken creëerden op basis van algoritmen. Daarna ging het idee in een lange winterslaap omdat de immense computermiddelen die nodig zijn om neurale netwerken te bouwen nog niet bestonden.
De laatste tijd is het idee weer helemaal terug, dankzij geavanceerde computermiddelen als grafische verwerkingseenheden (GPU’s). Dit zijn chips die worden gebruikt voor de verwerking van graphics in videospelletjes, maar het blijkt dat ze ook uitstekend geschikt zijn voor het kraken van de gegevens die nodig zijn om neurale netwerken te laten werken. Daarom zien we nu de proliferatie van neurale netwerken.