Upload
others
View
9
Download
0
Embed Size (px)
Citation preview
1
Neuronske mreže - Učenje mreže 2-1
Umjetna inteligencija
- Umjetne neuronske mreže –
Učenje mreže
47895/47816 UMINTELI
HG/2008-2009
Sveučilište u Zagrebu
Fakultet prometnih znanostiDiplomski studij
Neuronske mreže - Učenje mreže 2-2
• Sustavna metoda učenja (prilagoĎenja težina) višeslojnih umjetnih neuronskih mreža
• Werbos (1974), Parker (1982), Rumelhart, Hinton i
Williams (1986)
• Večina korištenih umjetnih neuronskih mreža
podučava se metodom povratnog rasprostiranja
(backpropagation) pogreške
METODA POVRATNOG RASPROSTIRANJA POGREŠKE
• Težine teže smanjiti veličinu pogreške izmeĎu
izračunatog izlaznog i zadanog ciljnog vektora
2
Neuronske mreže - Učenje mreže 2-3
MODEL UMJETNOG NEURONA
(I)
x1
x2
xi
wi
w1
w2
xn
wn
n
i
iixwI1
IeI
1
1)(
Neuronske mreže - Učenje mreže 2-4
Zbroj težinski opterećenih ulaza (neposredni ulaz)
n
i
iinn wxwxwxwxI1
2211
Nelinearna aktivacijska funkcija neurona - logistička funkcija
11
1
1)(
I
Ie
eI
IZRAČUNAVANJE IZLAZNE VRIJEDNOSTI
3
Neuronske mreže - Učenje mreže 2-5
PRIKAZ LOGISTIČKE FUNKCIJE
0
0,2
0,4
0,6
0,8
1
-1 -0,5 0 0,5 1
= 2 = 3
= 8
= 5
(I)
I
Neuronske mreže - Učenje mreže 2-6
)(1
)()1)(1(
)1()(
22
2
1
Ieee
ee
I
e
I
I
III
II
I
DERIVACIJA LOGISTIČKE FUNKCIJE (1)
4
Neuronske mreže - Učenje mreže 2-7
PRIKAZ DERIVACIJE LOGISTIČKE FUNKCIJE
0
0,5
1
1,5
2
-1 -0,5 0 0,5 1
(I)/ I
I
= 2
= 3
= 8
= 5
Neuronske mreže - Učenje mreže 2-8
Derivacija (nagib krivulje) logističke funkcije:
– asimptotski se približava nuli kada ulaz I teži
– ima najveću vrijednost /4 kada je ulaz I jednak nuli
1
)()(1)()(
)(1)( 2
IIII
I
I
I
Derivacija logističke funkcije izražena logističkom funkcijom
DERIVACIJA LOGISTIČKE FUNKCIJE (2)
5
Neuronske mreže - Učenje mreže 2-9
• Derivabilne i monotono rastuće nelinearne sigmoidne
funkcije jesu temelj postupka učenja umjetne neuralne
mreže metodom povratnog rasprostiranja pogreške
- logistička funkcija
- funkcija arkustangensa
- funkcija tangensa hiperbolnog
SIGMOIDNE FUNKCIJE U POSTUPKU UČENJA
Neuronske mreže - Učenje mreže 2-10
PRIKAZ FUNKCIJE ARKUSTANGENS
-1
-0,5
0
0,5
1
-1 -0,5 0 0,5 1
)(2
)( IarctgI
I2Nagib
6
Neuronske mreže - Učenje mreže 2-11
)(2
)( IarctgI
– Član 2/ ograničava veličinu funkcije u području
od -1 do +1
– Član odreĎuje brzinu promjene vrijednosti
funkcije izmeĎu granica -1 i +1
ARKUSTANGENS: FUNKCIJA I DERIVACIJA
221
2)(
II
I
– Nagib funkcije u ishodištu iznosi 2 /
Neuronske mreže - Učenje mreže 2-12
PRIKAZ FUNKCIJE TANGENSHIPERBOLNI
-1
-0,5
0
0,5
1
-1 -0,5 0 0,5 1
)tanh()( II
I4Nagib
7
Neuronske mreže - Učenje mreže 2-13
II
II
ee
ee
II
)tanh()(
Nagib funkcije u ishodištu iznosi 4
)(sec)( 2 Ih
I
I
TANGENSHIPERBOLNI: FUNKCIJA I DERIVACIJA
Neuronske mreže - Učenje mreže 2-14
“Automatski nadzor pojačanja” sigmoidnih funkcija
• povećanjem vrijednosti ulaza I u pozitivnom i
negativnom smjeru - pojačanje opada, ne dolazi do
zasičenja signala velikog iznosa
• vrijednosti ulaza I u okolišu nule, strmi nagib ulazno
izlazne krivulje - veliko pojačanje
SVOJSTVA SIGMOIDNIH FUNKCIJA
8
Neuronske mreže - Učenje mreže 2-15
Jednoslojna mreţa linearnog neurona uz ciljnu vrijednost ti pogrešku
x1
x2
xi
wi
w1
w2
xn
wn
n
i
iixwI1
T
I
+
_
WIDROW-HOFF-OVO DELTA PRAVILO (1)
Neuronske mreže - Učenje mreže 2-16
Izvod Widrow-Hoff-ovog delta pravila učenja uz linearnu
funkciju (vrijedi i za nelinearne funkcije)
IT
22 IT
Nagib (strmina) funkcije kvadrata pogreške
i
ii
xITw
IIT
w
22
2
WIDROW-HOFF-OVO DELTA PRAVILO (2)
9
Neuronske mreže - Učenje mreže 2-17
Neuron s dva ulaza x1 i x2.
22112211
2
2
2
2
2
1
2
1
2 222 xwxwxTwxTwxwxwT
2
222211
2
1
2
1 2 xwTxwTxwxw
2
111122
2
2
2
2 2 xwTxwTxwxw
2
2211
2 xwxwT
Kvadrat pogreške:
RAČUNANJE NAJMANJEG KVADRATA POGREŠKE (1)
Neuronske mreže - Učenje mreže 2-18
Pogreške nema ako je nagib krivulje kvadrata pogreške = 0
02
02
22211
2
2
12211
1
2
xxwxwTw
xxwxwTw
Budući su x1 i x2 različiti od nule
02211 xwxwT
2
112
1
221
x
xwTw
x
xwTw
RAČUNANJE NAJMANJEG KVADRATA POGREŠKE (2)
10
Neuronske mreže - Učenje mreže 2-19
• Kod postojanja šuma uz sigmoidnu funkciju najmanji
kvadrat pogreške je različit od nule 2min
• U stvarnosti, zbog nelinearnosti, šuma, nesavršenosti
podataka, najmanji kvadrat pogreške nije jednak nuli.
RAČUNANJE NAJMANJEG KVADRATA POGREŠKE (3)
Neuronske mreže - Učenje mreže 2-20
Smanjenje kvadrata pogreške za vrijeme učenja
Widrow-Hoff-ovim pravilom
11
Neuronske mreže - Učenje mreže 2-21
(Pogreška)2
Trenutni vektor
težinaIdealni
vektor težinaDelta vektor
Geometrijsko tumačenje delta pravila
Neuronske mreže - Učenje mreže 2-22
• Budući praćenje strmine predstavlja najučinkovitiji put
do minimuma, delta pravilo, za smanjenje kvadrata
pogreške, koristi algoritam najstrmijeg spusta.
• Promjena vektora težine kod delta pravila učenja
ii
i
i xKxITKw
Kw
222
• Normaliziranje komponente ulaznog vektora xi s X2
22
22
X
x
X
xXKw ii
i
- koeficijent učenja
PROMJENA VEKTORA TEŢINA
12
Neuronske mreže - Učenje mreže 2-23
• Višeslojna umjetna neuronska mreža
• Aktivacijske funkcije su nelinearne logističke funkcije
• Cilj učenja predstavlja odreĎivanje iznosa težina koje
će u radu mreže uz zadani ulazni vektor izračunati
odgovarajući izlazni vektor
• Mreža se podučava velikim brojem parova ulazno
izlaznih primjera
UČENJE VIŠESLOJNIH MREŢA METODOM
POVRATNOG RASPROSTIRANJA POGREŠKE
Neuronske mreže - Učenje mreže 2-24
VIŠESLOJNA UMJETNA NEURONSKA MREŢA
i-ti sloj
Indeks h: 1 m
m Čvorova
j-ti sloj
Indeks p: 1 n
n Čvorova
k-ti sloj
Indeks q: 1 r
r Čvorova
13
Neuronske mreže - Učenje mreže 2-25
1. Težinama pridružiti slučajne vrijednosti malih iznosa
(veliki početni iznosi zasičuju mrežu).
POSTUPAK UČENJA VIŠESLOJNE MREŢE
7. Dok se za sve primjere ne postigne dovoljno mala
pogreška za svaki ulazno izlazni par ponavljati korake
od 2 do 6.
6.Težine spojnica mreže prilagoditi na način koji će
smanjiti pogrešku.
5. Izračunati razliku izmeĎu izračunatog i ciljnog vektora
(pogrešku).
4. Izračunati izlazni vektor.
3. Ulazni vektor pridjeliti ulazu u mrežu.
2. Iz skupa primjera odabrati ulazno izlazni par.
Neuronske mreže - Učenje mreže 2-26
PROLAZ SIGNALA KROZ MREŢU U TOKU UČENJA
• Prolaz signala naprijed od ulaza prema izlazu mreže
– izračunavanje izlaza od sloja do sloja mreže
– izlaz prethodnog je ulaz sljedećeg
• Prolaz signala unatrag od izlaza prema ulazu mreže
– izračunata pogreška širi se natrag i služi za
prilagoĎenje težina spojnica
– prvo se prilagoĎuju težine izlaznog sloja neurona
jer za njega postoji ciljni vektor
– zatim se prilagoĎuju slojevi unutarnjih neurona za
koje ne postoji neposredni ciljni vektor
14
Neuronske mreže - Učenje mreže 2-27
PROMJENA TEŢINA NEURONA IZLAZNOG SLOJA (1)
• Slojevi i, j, k
• Neuroni h, p, q
• Izlazi p.j, q.k
• Ulazne težine whp.j, wpq.k
• Ciljna vrijednost Tq
xh whp.j wpq.k q.k
h p q
Ip.j p.j Iq.k q.k
i j k
Tq
Uspor.
q
yq
i-ti sloj
Indeks h: 1 m
m Čvorova
j-ti sloj
Indeks p: 1 n
n Čvorova
k-ti sloj
Indeks q: 1 r
r Čvorova
Neuronske mreže - Učenje mreže 2-28
2.
22
kqqq T
Kvadrat pogreške
kqqq T .
Pogreška
Promjena težine (delta pravilo)
kpq
q
qpkpqw
w.
2
..
= koeficijent učenja
PROMJENA TEŢINA NEURONA IZLAZNOG SLOJA (2)
15
Neuronske mreže - Učenje mreže 2-29
kpq
kq
kq
kq
kq
q
kpq
q
w
I
Iw .
.
.
.
.
2
.
2
kqq
kq
qT .
.
2
2
kqkq
kq
kq
I..
.
.1
n
p
jpkpqkq wI1
... jp
kpq
kq
w
I.
.
.
PROMJENA TEŢINA NEURONA IZLAZNOG SLOJA (3)
Neuronske mreže - Učenje mreže 2-30
jpkpq
jpkqkqkqq
kpq
qT
w
..
....
.
2
12
kq
kq
q
kqkqkqqkpq
I
T
.
.
....
2
12
Pogreška pq.k zavisi o pogrešci na izlazu q
PROMJENA TEŢINA NEURONA IZLAZNOG SLOJA (4)
16
Neuronske mreže - Učenje mreže 2-31
jpkpqqp
kpq
q
qpkpqw
w ...
.
2
..
jpkpqqpkpqkpq NwNw ..... )()1(
- N je broj iteracije
PROMJENA TEŢINA NEURONA IZLAZNOG SLOJA (5)
Neuronske mreže - Učenje mreže 2-32
xh whp.j wpq.k q.k
Ip.j p.j Iq.k q.k
Tq
Uspor.
q
yq
I1.k 1.k
T1
Uspor.
l
Ir.k r.k
Tr
Uspor.
r
wp1.k
wpr.k
q = 1
q = r
PROMJENA TEŢINA NEURONA
UNUTARNJEG SLOJA (1)
i-ti sloj
Indeks h: 1 m
m Čvorova
j-ti sloj
Indeks p: 1 n
n Čvorova
k-ti sloj
Indeks q: 1 r
r Čvorova
17
Neuronske mreže - Učenje mreže 2-33
• Jednadžbe za izračunavanje težina neurona unutarnjih
slojeva jednake jednadžbama za izračunavanje težina
neurona izlaznog sloja samo se član pogreške hp.j
izračunava bez ciljnog vektora
r
q
kqq
r
q
q T1
2
.
1
22
r
q jhp
q
qh
jhp
phjhpww
w1 .
2
.
.
2
..
qpqh ..
PROMJENA TEŢINA UNUTARNJEG SLOJA (2)
Neuronske mreže - Učenje mreže 2-34
r
q jhp
jp
jp
jp
jp
kq
kq
kq
kq
q
jhp
q
w
I
I
I
Iw 1 .
.
.
.
.
.
.
.
.
2
.
2
kqq
kq
qT .
.
2
2
kqkq
kq
kq
I..
.
.1
n
p
jpkpqkq wI1
... kpq
jp
kqw
I.
.
.
PROMJENA TEŢINA UNUTARNJEG SLOJA (3)
18
Neuronske mreže - Učenje mreže 2-35
jpjp
jp
jp
I..
.
.1
m
h
hjhpjp xwI1
.. h
jhp
jpx
w
I
.
.
PROMJENA TEŢINA UNUTARNJEG SLOJA (4)
Neuronske mreže - Učenje mreže 2-36
jp
jp
kpqkpqjhpI
w.
.
...
r
q
hjhp
jhp
qx
w 1
.
.
2
r
q
h
jp
jp
kpqkpq
r
q
hjpjpkpqkqkqkqq
jhp
xI
w
xwTw
1 .
.
..
1
......
.
2
11)2(
PROMJENA TEŢINA UNUTARNJEG SLOJA (5)
19
Neuronske mreže - Učenje mreže 2-37
r
q
jhphph
h
r
q jp
jp
kpqkpqph
jhp
phjhp
x
xI
ww
w
1
..
1 .
.
...
.
2
..
r
q
jhphphjhpjhp xNwNw1
.... )()1(
- N je broj iteracije
PROMJENA TEŢINA NEURONA UNUTARNJEG SLOJA (6)
Neuronske mreže - Učenje mreže 2-38
A B
C D
E
+1
0.2 -0.5
-0.6
+1
-0.5
0.1 -0.2
0.4
0.2
-0.2
+1
0.4 -0.7
TE = 0.1 Sloj k
Sloj j
Sloj i
PRIMJER: Podučavanje
jednostavne neuronske
mreţe povrat. raspos.
pogreške
20
Neuronske mreže - Učenje mreže 2-39
• Koeficijent strmine logističke funkcije svih neurona: = 1
• Koeficijent učenja: = 0.5
• Početne težine su slučajno odabrane
jpkqkqkqqqpkpq Tw ...... )1()(2
• Promjena težina izmeĎu sloja j i k (izlazni sloj)
• Promjena težina izmeĎu sloja i i j (unutarnji sloj)
r
q
hjpjpkpqkqkqkqqph
jhp
xwT
w
1
.......
.
)1()1()()2(
PRIMJER: ZADAVANJE PARAMETARA I FORMULA
Neuronske mreže - Učenje mreže 2-40
42.0)(32.0
50.014.004.0
)5.0(1)2.0()7.0(1.04.0
C
C
I
I
46.0)(18.0
2.014.016.0
)2.0(12.0)7.0(4.04.0
D
D
I
I
32.0)(75.0
60.023.008.0
)6.0(1)5.0(46.02.042.0
E
E
I
I
PRIMJER: IZRAČUNAVANJE AKTIVACIJSKE FUNKCIJE
21
Neuronske mreže - Učenje mreže 2-41
020.0
42.0)32.000.1(32.0)32.010.0(1)2(5.0
CEw
022.0
46.0)32.000.1(32.0)32.010.0(1)2(5.0
DEw
048.0
1)32.000.1(32.0)32.010.0(1)2(5.01
Ew
001.000093.0
4.0)42.000.1(42.01
20.0)32.000.1(32.0)32.010.0(1)2(5.0
ACw
PRIMJER: IZRAČUNAVANJE PROMJENA TEŢINA (1)
Neuronske mreže - Učenje mreže 2-42
002.000238.0
4.0)46.000.1(46.01)50.0(
)32.000.1(32.0)32.010.0(1)2(5.0
ADw
002.000163.0
)7.0()42.000.1(42.01
20.0)32.000.1(32.0)32.010.0(1)2(5.0
BCw
001.000142.0
)7.0()46.000.1(46.01)50.0(
)32.000.1(32.0)32.010.0(1)2(5.0
BDw
PRIMJER: IZRAČUNAVANJE PROMJENA TEŢINA (2)
22
Neuronske mreže - Učenje mreže 2-43
002.00023.0
1)42.000.1(42.01
20.0)32.000.1(32.0)32.010.0(1)2(5.01
Cw
006.00059.0
1)46.000.1(46.01)50.0(
)32.000.1(32.0)32.010.0(1)2(5.01
Dw
PRIMJER: IZRAČUNAVANJE PROMJENA TEŢINA (3)
Neuronske mreže - Učenje mreže 2-44
194.0006.0200.0
502.0002.0500.0
199.0001.0200.0
198.0002.0200.0
402.0002.0400.0
099.0001.0100.0
648.0048.0600.0
522.0022.0500.0
180.0020.0200.0
1
1
1
D
C
BD
BC
AD
AC
E
DE
CE
w
w
w
w
w
w
w
w
w
PRIMJER: IZRAČUNAVANJE NOVIH IZNOSA TEŢINA
23
Neuronske mreže - Učenje mreže 2-45
PRIMJER: UVJETI PRESTANKA UČENJA
– Težine se izračunavaju za sve ulazno ciljne parove
jednog razdoblja učenja (epohe)
– Izračunava se zbirna kvadratna pogreška u epohi
– Ako je zbirna pogreška veća od početno zadane
počinje novo razdoblje učenja
– Ako je zbirna pogreška manja od početno zadane
postupak učenja se prekida i prelazi se u fazu
korištenja naučene umjetne neuronske mreže
Neuronske mreže - Učenje mreže 2-46
PRONALAŢENJE GLOBALNOG MINIMUMA
– Pogreške su često složeni višedimenzionalni prostori s
brijegovima i dolovima
– Mogućnost dolaska u lokalni, a ne globalni minimum
– Izbjegavanje lokalnog minimuma - namjernom
promjenom težina s zadanim ili slučajnim vrijednostima
– Metoda simuliranog hlaĎenja - prilagoĎenje težina na
temelju statističkog, a ne determinističkog (delta) pravila
– Algoritam najstrmijeg spusta pretpostavlja negativni
iznos nagiba plohe pogreške i stalno prilagoĎava
težine najmanjoj pogrešci
24
Neuronske mreže - Učenje mreže 2-47
• Moment (“tromost”)
– izbjegava lokalne minimume
– usmjerava postupak učenja u “dobrom” smjeru
dodavanjem iznosa proporcionalnog prethodnoj
promjeni težine
• Dodatni prilagodni član (bias) - Stalni ulaz +1
– odmiče ishodište aktivacijske funkcije - ubrzava učenje
)()1( ..... NwNw kpqjpkpqqpkpq
- koeficijent momenta (tipično oko 0.9)
FAKTORI USPJEŠNIJEG UČENJA
Neuronske mreže - Učenje mreže 2-48
– Veliki iznos težine - iznos aktivacijske funkcije je blizu
područja zasičenja - mala derivacija, odnosno nagib
krivulje - povratna pogreška proporcionalna derivaciji
aktivacijske funkcije neurona - mala promjena težine
onemogućava daljnje učenje (paraliza mreže)
– Smanjenjem koeficijenta strmine sigmoidna funkcija se
proširuje na šire područje - derivacija funkcije ima veći
iznos - brže učenje
ODABIR KOEFICIJENTA STRMINE ( ) SIGMOIDA
25
Neuronske mreže - Učenje mreže 2-49
– Koeficijent učenja: 0 < < 1 (pozitivan)
– > 2, nestabilnost mreže; > 1, oscilacija mreže; = 0,
nema učenja; (negativan), udaljavanje od minimuma
– Veći iznos (oko 0.8), veći koraci - brže učenje
– Manji iznos (oko 0.2), manji koraci - duže učenje
– Prilagodljivi koeficijent učenja
• početno veća vrijednost
• kasnije manja vrijednost
KOEFICIJENT I KONVERGENCIJA UČENJA
Neuronske mreže - Učenje mreže 2-50
• Promatra se preslikavanje m-dimenzionalnog realnog
ulaznog vektora u n-dimenzionalni realni izlazni vektor
• Neka su iznosi ulaznog vektora unutar vrijednosti od 0
do 1, a na vrijednosti izlaznog vektora ne postoje
ograničenja
ODABIR BROJA NEURONA U UNUTARNJEM SLOJU (1)
26
Neuronske mreže - Učenje mreže 2-51
– Kolmogorov teorem: Postoji troslojna neuronska
mreža s m neurona u ulaznom, n neurona u izlaznom i
2m + 1 neuronom u unutarnjem sloju mreže koja
ostvaruje navedeno preslikavanje, tj. rješava
nelinearno odvojive zadaće. Jednostavnija mreža
nemože izvesti navedeno preslikavanje.
– Metoda preslikavanja postoji u vidu umjetne neuronske
mreže, ali nije poznata njezina potpuna struktura.
ODABIR BROJA NEURONA U UNUTARNJEM SLOJU (2)
Neuronske mreže - Učenje mreže 2-52
2. Učenje umjetne neuronske mreţe metodom
povratnog rasprostiranja pogreške (2/2)
UMJETNE NEURONSKE MREŢE
U PROMETU I TRANSPORTU
Hrvoje Gold, FPZ, 1997/2002.
27
Neuronske mreže - Učenje mreže 2-53
SIMULACIJE UČENJA I RADA VIŠESLOJNE MREŢE
1. Pogreška lokalnog i globalnog minimuma
2. Aproksimacija funkcije
3. Podučavanje s momentom
4. Podučavanje prilagodljivim koeficijentom učenja
Neuronske mreže - Učenje mreže 2-54
1. Pogreška lokalnog i globalnog minimuma (1)
28
Neuronske mreže - Učenje mreže 2-55
1. Pogreška lokalnog i globalnog minimuma (2)
Neuronske mreže - Učenje mreže 2-56
1. Pogreška lokalnog i globalnog minimuma (3)
29
Neuronske mreže - Učenje mreže 2-57
2. Aproksimacija funkcije (1)
Neuronske mreže - Učenje mreže 2-58
2. Aproksimacija funkcije: Epoha = 300, = 4.34526 (2)
30
Neuronske mreže - Učenje mreže 2-59
2. Aproksimacija funkcije: Epoha = 1000, = 3.27365 (3)
Neuronske mreže - Učenje mreže 2-60
2. Aproksimacija funkcije: Epoha = 2000, = 2.00612 (4)
31
Neuronske mreže - Učenje mreže 2-61
2. Aproksimacija funkcije: Epoha = 2600, = 1.01034 (5)
Neuronske mreže - Učenje mreže 2-62
2. Aproksimacija funkcije: Epoha = 3000, = 0.33537 (6)
32
Neuronske mreže - Učenje mreže 2-63
2. Aproksimacija funkcije: Epoha = 3900, = 0.06231 (7)
Neuronske mreže - Učenje mreže 2-64
2. Aproksimacija funkcije: Epoha = 6801, = 0.01999 (3)
33
Neuronske mreže - Učenje mreže 2-65
3. Podučavanje s momentom (1)
Neuronske mreže - Učenje mreže 2-66
3. Podučavanje s momentom = 0.0 (2)
34
Neuronske mreže - Učenje mreže 2-67
3. Podučavanje s momentom = 0.0 (3)
Neuronske mreže - Učenje mreže 2-68
3. Podučavanje s momentom = 0.98 (4)
35
Neuronske mreže - Učenje mreže 2-69
3. Podučavanje s momentom = 0.98 (5)
Neuronske mreže - Učenje mreže 2-70
3. Podučavanje s momentom = 0.98 (6)
36
Neuronske mreže - Učenje mreže 2-71
3. Podučavanje s momentom = 0.98 (7)
Neuronske mreže - Učenje mreže 2-72
3. Podučavanje s momentom = 0.98 (8)
37
Neuronske mreže - Učenje mreže 2-73