Neurale Netwerken Kunstmatige Intelligentie Rijksuniversiteit Groningen Mei 2005 practicum • deze week wel deels programmeren Hopfield • volgende week geen programmeren Kohonen • wachten op cijfers excuses, maar er is een goede reden doel van dit vak vb. Elman – Finding structure in time inleiding NN literatuur onderzoek eigen onderzoek engineering wereld hc 9 • Elman • stof: artikel overzicht • inleiding • netwerk • experimenten • conclusie • andere bronnen inleiding • classificeer input patronen over meerdere tijdstappen (spraak, bewegende beelden,...) • tijd = belangrijk – onderzoek – engineering • neurale netwerken: tijd = moelijk • eenvoudigste oplossing: paralellizeren paralellizeren • meerdere tijdstappen tegelijk aanbieden • nadelen hiervan: – gebruik buffer niet biologisch plausibel – input moet steeds zelfde aantal tijdstappen zijn – inputs die hetzefde zijn, worden verschillend geclassificeerd: (0, 1, 0, 1, 0, 0, 0, 0) = (0, 0, 0, 1, 0, 1, 0, 0) + Δt – hogere plaats en tijd complexiteit • oplossing: recurrente netwerken recurrente netwerken • geheugen: vorige netwerk-toestand is deel van de input • recursie • natuurlijke taalverwerking • Jordan (1986) • Elman (1990) overzicht • inleiding • netwerk • experimenten • conclusie • andere bronnen MLP Jordan (1986) output layer hidden layer context layer Elman (1990) output layer backprop hidden layer backprop backprop context layer FIXED Jordan vs Elman Jordan: hidden(t) = input(t) + output(t - 1) Elman: hidden(t) = input(t) + hidden(t – 1) Waarom is Elman beter dan Jordan? • onderzoek: dichter bij de natuur • engineering: rijker geheugen • voordeel Jordan: output → deel volgende input beter voor te stellen (minder black-box) • geheugen bestreikt meerdere tijdstappen door recursieve eigenschap i(nput), h(idden), c(ontext), o(utput) o(t) ← h(t) h(t) ← i(t) + c(t) c(t) = h(t – 1) h(t - 1) ← i(t - 1) + c(t - 1) c(t - 1) = h(t – 2) h(t - 2) ← i(t - 2) + c(t - 2) c(t - 2) = h(t – 3) h(t - 3) ← i(t - 3) + c(t - 3) c(t - 3) = h(t – 4) h(t - 4) ← i(t - 4) + c(t - 4) overzicht • inleiding • netwerk • experimenten • conclusie • andere bronnen experiment 1: temporele XOR variant • • • • • XOR triples drie bits achter elkaar aanbieden de derde wordt bepaald door de eerste twee | 0, 0, 0 | 1, 0, 1 | 1, 1, 0 | 1, ... getraind netwerk – gemiddelde error op eerste twee 0,5 – gemiddelde error op de derde 0,0 experiment 2: diibaguuuguuubabadii... • zinnen-generator: medeklinkers {b, d, g} in willekeurige volgorde met steeds een vast klinkerpatroon → woorden {ba, dii, guuu} • elke letter is een vector met 6 binaire componenten: (consonant, vowel, interrupted, high, back, voiced) • de letters worden één voor één aangeboden, het netwerk leert de volgende te voorspellen • trainen: 200 keer dezelfde semi-willekeurige input sequentie van 1.000 letters • testen: andere sequentie op dezelfde manier gegenereerd zelfde gedrag als bij temporele XOR (medeklinker bepaalt rest woord) in plaats van hele output vector, de error op de componenten analyseren (bijvoorbeeld consonant en voiced) natuurgetrouwe error curve! g d d RMS error g b i i u a u i a u u u input # i u experiment 3: manyyearsagoaboyandgirllivedbythesea... • zinnen-generator: – – – – lexicon: 15 Engelse woorden, 5-bits vectoren zinnen van 4 tot 9 woorden houdt zich aan Engelse woordvolgorde sequentie van 200 zinnen zonder “whitespace” REDEN: in gesproken taal zitten geen pauzes • trainen: 10 keer dezefde sequentie • testen: op een andere sequentie die op dezelfde manier gegenereerd is de rest van een woord wordt niet deterministisch bepaald door eerste letter (lexicon met letter-overeenkomsten tussen de woorden) RMS error voorspelbaarheid neemt toe met het aantal letters dat geweest is... natuurgetrouwe error curve! ma ny y e a r s a g o a b oy a n d g i r l l i v ed input # b y th e s e a th e y p l a y e d h a p p i l y experiment 4: cat eat mouse man sleep ... • woordvolgorde ipv. lettervolgorde • Chomsky (1957) • kan een PDP (parallel distributed processing) netwerk een grammatica leren? • zinnen-generator: – lexicon: 29 Engelse woorden in 13 klasses – elk woord is een 29-bits vector, bv. woman = (00000000000000000000000000010) geen correlaties tussen woorden vanwege orthogonale vectoren categorie voorbeeld NOUN-HUM man, woman WOORD 3 WOORD 2 WOORD 1 NOUN-HUM VERB-EAT NOUN-FOOD NOUN-HUM VERB-PERCEPT NOUN-INANIM NOUN-FRAG NOUN-ANIM cat, mouse NOUNINANIM book, rock NOUN-HUM VERB-DESTROY NOUNAGRESS dragon, monster NOUN-HUM VERB-INTRAN NOUN-FRAG glass, plate NOUN-HUM VERB-TRAN NOUN-HUM NOUN-HUM VERB-AGPAT NOUN-INANIM NOUN-FOOD Cookie VERBINTRAN think, sleep NOUN-HUM VERB-AGPAT VERB-TRAN see, chase NOUN-ANIM VERB-EAT NOUN-FOOD NOUN-ANIM VERB-TRAN NOUN-ANIM VERB-AGPAT move, break NOUN-ANIM VERB-AGPAT NOUN-INANIM VERBPERCEPT smell, see NOUN-ANIM VERB-AGPAT VERBDESTROY break, smash NOUN-INANIM VERB-AGPAT VERB-EAT eat NOUN-AGRESS VERB-DESTROY NOUN-FRAG NOUN-AGRESS VERB-EAT NOUN-HUM NOUN-AGRESS VERB-EAT NOUN-ANIM NOUN-AGRESS VERB-EAT NOUN-FOOD • trainen: 6 maal door een sequentie van 10.000 zinnen • testen: output vectoren vergelijken met training set statistiek • verder: hidden layer activaties zijn hierarchisch gestructureerd → overzicht • inleiding • netwerk • experimenten • conclusie • andere bronnen conclusie • tijd paralellizeren is simpel, maar niet goed genoeg • door gebruik context layer – geen buffer – inputs van variabele lengte – in tijd verschoven inputs zijn hetzelfde conclusies • Elman net voorspelt klasse, niet instantie (natuurgetrouw) • Elman netwerk vooral voor onderzoek interessant, voor engineers niet zo... HMM wint van NN op NLP • sub-symbolische systemen kunnen hierarchische structuren en verwachtingspatronen leren uit temporele informatie overzicht • inleiding • netwerk • experimenten • conclusie • andere bronnen engineering toepassingen geen tentamenstof APPLICATION OF A RECURRENT NEURAL NETWORK IN ONLINE MODELLING OF REAL-TIME SYSTEMS Keywords: Recurrent Elman networks; modelling; on-line learning; realtime systems. modelling non-linear dynamical systems; fabrieks processen in de gaten houden alarm (of ingrijpen) als metingen van de voorspelling afwijken Considering the number of recurrent neural topologies and training algorithms available, the choice of an appropriate pair (architecture, learning) is intimately dependent on the purposes and can be decisive for its success, e.g. the non-linear control schemes with NN identification. Incorporate available information from the approximate model into the NN initialisation, instead of choosing the weighting values randomly Detection of Transformer Winding Faults Using Wavelet Analysis and Neural Network Keywords: Transformer internal fault, neural network, wavelet transform. analyseer de elektrische signalen van de transformator met een Elman netwerk verhoog betrouwbaarheid, spaar kosten The simulation results of four cases: improved BP-NN with wavelet preprocessing, Elman network with wavelet preprocessing, improved BP-NN without preprocessing, and Elman network without preprocessing are compared and discussed. feature extraction input voor Elman net onderzoekstoepassing COGNITIVE MODDELING zoals ACT-R: vergelijken model/proefpersoon → resultaten zijn hetzelfde → de theorie klopt een antwoord op de vraag: Wat kan een engineer met NN? Therefore the primary focus of this report is to describe algorithms for ANNs which perform particularly strongly for processing the following commonly used applications: – – – – Function approximation; Time series processing; ELMAN Classification; Pattern recognition; These are suggested because they are well established tasks for which ANNs are used extensively. volgende college (laatste) • Spiking Neurons • stof: artikel