[Dept. of Computer Science] Recurrent Neural Networks
Docent
Marco Wiering

Inhoudsbeschrijving
Neurale netwerken zijn goed in het leren van voorbeelden om allerlei functies te benaderen. Ze worden meestal gebruikt om een inputvector x op een outputvector x af te beelden, waarbij x uit een statische distributie getrokken wordt en er ruis in de leervoorbeelden kan zitten. Het vak dynamische neurale netwerken gaat over het leren van temporele taken, zoals die voorkomen in predictie en controle waarin tijdseries een belangrijke rol spelen. Voorbeelden hiervan zijn financial forecasting, grammatica's, spraakherkenning, en robot controle. Om neurale netwerken te laten werken met temporele inputs, is het een mogelijkheid om de inputvector uit te breiden met de inputs van vorige tijdstappen. Zulke time-delay neural networks kunnen redelijk goed overweg met korte-termijn geheugen, maar komen in de problemen als lange termijn afhankelijkheden een rol spelen. Bovendien neemt het aantal parameters erg toe, zodat zulke TDNNs vaak de data gaan overfitten. Daarom zijn er een verzameling dynamische (recurrente) neurale netwerken in de afgelopen 15 jaar voorgesteld welke gebruik maken van een recurrente verbindingen om daarmee een interne activatie toestand te gebruiken welke het verleden samenvat. Het trainen van dergelijke netwerken kan met gradient descent methoden zoals BPTT en RTRL, maar veel recurrente architecturen hebben last van exponentieel afnemende gradienten waardoor het erg moeilijk wordt om erg lange tijdelijke afhankelijkheden (bv. meer dan 100 stappen) te leren. Dit vak gaat in op de verschillende dynamische neurale netwerken welke zijn voorgesteld alsmede spiking neurale netwerken, welke veel dichter staan bij biologische neurale netwerken en waarnaar de laatste tijd steeds meer onderzoek wordt verricht. Verschillende leermethoden zoals gradient descent en evolutionaire methoden zullen behandeld worden en hun voor- en nadelen zullen bekeken worden.

Leerdoelen Het vak vereist als voorkennis globale kennis over neurale netwerken, MLPs, backpropagation, en analyse (differentieren). De leerdoelen zijn om te begrijpen hoe neurale netwerken gebruikt kunnen worden om tijdseries mee te modelleren, om te begrijpen hoe men deze kan trainen door middel van gradient descent of evolutionaire algortimen, en hoe men de werking van het biologische brein door middel van spiking neurale netwerken kan modelleren.

Aantal Studiepunten Het aantal studiepunten voor dit vak is 7.5 ECTS.

Lokaal Het lokaal voor alle colleges is: BBL 426

Bijeenkomsten De bijeenkomsten zijn op dinsdag 11.00u - 13.00u en donderdag 13.00u - 15.00u in BBL 426. gedurende periode 1 in het jaar 2004. Op 21 en 23 September, en 26 en 28 Oktober zijn er geen bijeenkomsten.

Toetsing
Tijdens de bijeenkomsten wordt gelet of de deelnemers de stof begrijpen en hierover goed kunnen discussieren. Het lezen van alle artikelen is verplicht. Dit vak wordt afgesloten met een practicum, waarbij de studenten in groepsverband een bepaald dynamisch neuraal netwerk ontwerpen en implementeren en hiermee experimenten uitvoeren op temporele taken. Het cijfer wordt voor het grootste gedeelte bepaald door het verslag welke over het geimplementeerde systeem en de experimentele resultaten wordt geschreven, alsmede gedeeltelijk door de participatie tijdens de discussies. Het practicum en verslag telt mee voor 60% van het cijfer en de participatie voor 40%.

Te behandelen stof
In totaal zijn er 15 bijeenkomsten waarin er in totaal 21 artikelen behandeld en besproken worden. Per bijeenkomst is dat gemiddeld zo'n 25 blz. lezen. Het is verplicht dat de deelnemers aan deze cursus al deze artikelen grondig doorlezen. De artikelen zullen voor inzage bij de balie van Informatica (CGN 3e-verdieping) worden gelegd, maar kunnen ook van het internet worden gehaald.