Kunstmatige neurale netwerken spelen een belangrijke rol in machine learning en cognitieve wetenschappen. Maar hoe werken dergelijke netwerken eigenlijk? Onderzoekers van Google zetten in een blogpost gedetailleerd uiteen hoe een kunstmatig neuraal netwerk te werk gaat.

Een kunstmatig neuraal netwerk is een statistisch leermodel dat is gebaseerd op biologische neurale netwerken. De netwerken worden getraind door miljoenen voorbeelden te laten zien en langzaam de netwerkparameters aan te passen tot het netwerk de juiste classificaties geeft.

We weten weinig over kunstmatig neurale netwerken

Ondanks dat kunstmatig neurale netwerken hun waarde inmiddels hebben bewezen weten we volgens software engineers Alexander Mordvintsev, Christopher Olah (stagiair) en Mike Tyka verrassend weinig over de werking hiervan. In een blogpost schrijven de onderzoekers dat een kunstmatig neuraal netwerk doorgaans uit 10 tot 30 gestapelde lagen met kunstmatige neuronen bestaat. Een afbeelding wordt in de input laag ingevoerd, waarna de afbeelding door iedere laag wordt verwerkt voordat de output laag wordt bereikt. Deze output laag bepaalt het uiteindelijke ‘antwoord’ van het netwerk.

Iedere laag binnen het netwerk heeft een eigen functie. De eerste lagen na de input laag kijken vooral naar de basale vormen op de afbeelding om een grof beeld te vormen van het beeld. De laatste lagen voor de output laag zijn vooral gericht op het verfijnen van interpretaties, en het creëren van een gedetailleerder beeld. De output laag beoordeelt dit geheel en formuleert op basis hiervan het ‘antwoord’ van het netwerk.

Interpretatie visualiseren

De onderzoekers merken ook op dat de neurale netwerken die zij hebben getraind om onderscheid te maken tussen verschillende soorten afbeeldingen een groot deel van de informatie in handen hebben die nodig is om deze afbeeldingen te kunnen genereren. De netwerken worden getraind door hen simpelweg te tonen wat zij moeten leren, waarna de netwerken zelf de essentie hiervan moeten achterhalen en opslaan. De mogelijkheid afbeeldingen te laten genereren maakt het dan ook mogelijk de interpretatie van het netwerk te visualiseren, waardoor gecontroleerd kan worden of het netwerk de juiste informatie is bijgebracht.

Het kunstmatige neurale netwerk bleek een arm te hebben vastgeplakt aan een halter (Bron: Google)

Als voorbeeld noemen de onderzoekers een proef waarbij zij het netwerk een halter wilden laten herkennen. Dit bleek slechts deels gelukt. Het netwerk bleek inderdaad de vorm van de halter te hebben geïdentificeerd, maar hier ook de arm van de gewichtheffer aan geplakt te hebben. Deze fout konden onderzoekers achterhalen door het netwerk zelf een visualisatie te laten genereren van het object. Visualisatie helpt dus dergelijke problemen te corrigeren.

Volledige uitleg

De volledige uitleg over kunstmatige neurale netwerken is te vinden op het blog van Google.

Via: visionandrobotics.nl