hoorcollege 9 - Rijksuniversiteit Groningen

advertisement
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
Download