RETI NEURALI ARTIFICIALI
-
Upload
hoyt-burgess -
Category
Documents
-
view
49 -
download
6
description
Transcript of RETI NEURALI ARTIFICIALI
RETI NEURALI RETI NEURALI ARTIFICIALIARTIFICIALI
RN-1
• Le reti neurali sono “learning machine” generali, adattative, non lineari, distribuite, costituite da molti processori elementari (PE)
• I segnali che fluiscono attraverso le connessioni sono scalati con opportuni parametri modificabili detti pesi (wij)
• Il singolo PE somma tutti questi contributi e produce un’uscita che è una funzione non lineare di tale somma
PROCESSORE ELEMENTAREPROCESSORE ELEMENTARE
f(.)
. . .
x1
x2
xD
w1
w2
wD
y
D
iii xwfy
1
D
iii xwfy
1
Esempio di RNA:Esempio di RNA:
PE
PE
x1
x2
w6
w1
w3
w2w4
w5
RN-2• La forma della funzione discriminante cambia con la topologia• Funzioni discriminanti arbitrarie• Classificatori ottimi• La posizione delle funzioni discriminanti è regolata dai valori dei pesi• I pesi vengono adattati automaticamente durante il training• Sui dati disponibili per il training non deve essere fatta alcuna
ipotesi sulla pdf
Il progettista deve stabilire la “topologia” per ottenere il numero e la forma voluti delle funzioni discriminanti
Y2 Y1
y21 y11
y22 y12
. .
. .
. .
y2M y1M
ReteNeurale
(wij)
P2 P1
x21 x11
x22 x12
. .
. .
. .x2M x1M
D2 D1
d21 d11
d22 d12
. .
. .
. .d2M d1M
E2 E1
e21 E11
e22 E12
. .
. .
. .e2M E1M
- +
RN-3Pocessore Elementare di McCULLOCH - PITTSPocessore Elementare di McCULLOCH - PITTS( PE di MP o MP-PE )( PE di MP o MP-PE )
. .
.+1
x1
xD
b
w1
wD
net y = f(net)
wi : pesib: bias
funzione segno
NOTA:il MP-PE è costituito da un ADALINE seguito da una non-linearità
Proprietà per il pattern recognition:Proprietà per il pattern recognition:– può separare due sole classi– la funzione discriminante è un iperpiano nello spazio a D
dimensioni di equazione: w1x1 + w2x2 + … + wDxD + b = 0
– la funzione soglia divide lo spazio in due semi-spazi a cui
attribuisce i valori +1 e -1 rispettivamente
D
iii bxwfnetfy
1
D
iii bxwfnetfy
1
0se1
0se1
net
netnetf
0se1
0se1
net
netnetf
RN-4Es: Spazio degli ingressi a 2 dimensioni (caso 2D)
Superficie di decisione
g
x 1x 2
g = g(x1 , x2 )funzione discriminante
bxwxwg 2211bxwxwg 2211
2
1
2
12221121 00,
w
bx
w
wxbxwxwxxg
2
1
2
12221121 00,
w
bx
w
wxbxwxwxxg
x 2
2wb
g<0
g>0
2
1
w
wtg
g = 0x 1
La distanza dell’iperpiano dall’origine è:
i
iwwwb 2con
iiww
wb 2con
• Nel 2-D la funzione discriminante è un piano e la sua intercetta con il piano (x1,x2) è una linea (superficie di decisione)
• Nel caso a D dimensioni la superficie di decisione è un iperpiano a D-1 dimensioni
FUNZIONI DI ATTIVAZIONEFUNZIONI DI ATTIVAZIONE RN-5
• Nel MP-PE la funzione di attivazione è la funzione a soglia detta “segno”• Possono essere utilizzate altre funzioni non lineari
FUNZIONI SIGMOIDALIFUNZIONI SIGMOIDALI
1.) Tangente iperbolica:
netnetf tanh netnetf tanh
+1
-1net
tanh
2.) Funzione logistica:
netenetf
11 nete
netf 1
1
+1
net
logistica
• RNA con funzioni a soglia creano superfici di decisione lineari a tratti
• RNA con funzioni sigmoidali creano superfici di decisione molto complesse e non-lineari
• Le funzioni sigmoidali sono smooth ed esiste la derivata della mappa da loro creata (V.I. per il training)
LEARNINGLEARNING RN-6
• Si deve dotare il sistema di una retroazione governata dall’errore tra l’uscita desiderata e quella di rete
• Usualmente per RNA si adotta l’MSE
• Funzione costo:
p indice di pattern
STEP4. Ripetere l’operazione finché tutti i pattern non siano correttamente classificati
ALGORITMO DI LEARNING PER UN MP-PE
(Rosemblatt 1958)PERCEPTRON ALGORITHMPERCEPTRON ALGORITHM
In sintesi: nxnydnwnw 1 nxnydnwnw 1 :tasso di learning
p
ppp
p ydNN
J 22
2
1
2
1 p
ppp
p ydNN
J 22
2
1
2
1
STEP 3. Se l’uscita non è corretta modificare i pesi e il bias finché l’uscita diventa corretta
STEP 2. Se l’uscita è corretta non fare nienteSTEP 1. Presentare il campione x C1
• In un problema di classificazione la funzione discriminante deve essere spostata in modo da minimizzare gli errori
Infatti:
Caso a) d = 1 (classe 1) e y = -1 w(n+1) = w(n) + 2 x(n)Caso b) d = -1 (classe 2) e y = 1 w(n+1) = w(n) - 2 x(n)
Hp: caso monodimensionale (un unico peso)
caso a)
caso b)
w
wwb(n)
wa(n)wa(n)
wb(n)
clas
sifi
cazi
one
corr
etta
classe 2y = -1
classe 1y = 1
• In entrambi i casi il peso si aggiusta nella giusta direzione
• Se i pattern sono linearmente separabili si può dimostrare che l’algoritmo converge in un numero finito di passi
RN-7
CONFRONTO CON LMS PER ADALINECONFRONTO CON LMS PER ADALINERN-8
• Nel LMS: w(n+1) = w(n) + (n) x(n) stessa formulazione
• Vi sono, però, delle sostanziali differenze di significato– non si ha la corrispondenza con la discesa del gradiente il
sistema ha una discontinuità– il perceptron algorithm minimizza la differenza tra la risposta del
MP-PE e l’uscita desiderata anziché tra l’uscita dell’ADALINE e l’uscita desiderata
implicazioni
• Il MP-PE impara solo quando la sua uscita è errata
• I risultati finali dei pesi coincidono con quelli trovati per una regressione lineare. Infatti le non linearità sono portate dentro la regola di aggiustamento dei pesi
RN-9Hp: - pattern linearmente separabili- bias nullo (per semplicità)
Esiste una funzione discriminante lineare che produce zero errori di classificazionew* vettore dei pesi ottimi prodotto dal perceptron algorithm
1)(0
1)(0*
*
ndnxw
ndnxw
ii
i
ii
i
per
per
1)(0
1)(0*
*
ndnxw
ndnxw
ii
i
ii
i
per
per n indice del training-set
La soluzione è un iperpiano di equazione : 0xo0 ** wxwi
ii0xo0 ** wxw
iii
Il vettore dei pesi ottimi deve essere ortogonale a tutti i vettori di dati
• Vantaggi: l’algoritmo converge in un numero finito di passi• Svantaggi:
– la funzione discriminante trovata all’ultimo campione può non andare bene in fase di test
– l’algoritmo converge solo per classi linearmente separabili, altrimenti la soluzione oscillerà
RN-10CHAIN RULE (REGOLA CATENA)CHAIN RULE (REGOLA CATENA)
• Consente di calcolare la derivata parziale di una variabile rispetto ad un’altra quando esiste un legame funzionale tra le due
Sia y = f(x) con f differenziabile
• Si può dimostrare che l’LMS è equivalente alla chain rule nel calcolo della “sensitivity” della funzione costo rispetto alle incognite:
p
pp
pp JydJ 2
21
pp
ppp JydJ 2
21
con:
Jp : funzione costo del p-esimo campioneyp : wxp
Utilizzando la chain-rule: ppppp
p
p
pp xxydwy
yJ
wJ
ppppp
p
p
pp xxydwy
yJ
wJ
Dalla regola per l’aggiornamento dei pesi:w(k+1) = w(k) - J(k) (steepest descent)si ha: w(k+1) = w(k) + p xp che è lo stesso risultato ottenuto nel LMS
xf
fy
xy
xf
fy
xy
RN-11Il gradiente dà una misura della “sensitivity”
ESTENSIONE DEL LMS AL MP-PEESTENSIONE DEL LMS AL MP-PE
iiiwxfnetfy
iiiwxfnetfy
f(net)
.
.
.
.
.
.xD
xi
x1
wi
wD
iwnet
nety
iw
y
y
iii
xnetfnetwnet
ywy
' iii
xnetfnetwnet
ywy
'
Infatti:
ii
ii
kkk
ii
xw
xwxw
wwnet
netfnety
0......00
'
ii
ii
kkk
ii
xw
xwxw
wwnet
netfnety
0......00
'
RN-12REGOLA DELTAREGOLA DELTA
p: indice di pattern i: indice di peso
ippippp
pip
p
pi
xnetfxnetfyd
netwnet
yyJ
wJ
'' ippippp
pip
p
pi
xnetfxnetfyd
netwnet
yyJ
wJ
''
Regola DeltaRegola Delta nxnnetfnnwnw ipppii '1 nxnnetfnnwnw ipppii '1 con n: indice di iterazione
• Estende l’LMS a sistemi non-lineari con non-linearità smooth• E’ locale rispetto al pattern ed al peso• Fa uso della f ’(.):
2tanh
log
15,0'
1'
ii
iii
xnetf
xxnetf
2tanh
log
15,0'
1'
ii
iii
xnetf
xxnetf
+1
-1net
tanh=f(net)
net
f’(net)
da cui
N
ppp yd
NJ
1
2
21
N
ppp yd
NJ
1
2
21
iipip xwfy
iipip xwfy
• Quando net è nella regione di linearità di f(.), la f ’(.) è vicina all’unità e la sensitività:
ii xxnetfwy
' ii xxnetfwy
'cioè uguale alla sensitività di un PE lineare
• Quando il punto di funzionamento è vicino alla saturazione, la sensitività del PE non lineare è attenuata rispetto al PE lineare
questo implica effetti benefici sulla stabilità del processo di learning• Con PE non lineari la funzione costo non è più quadratica
presenza di minimi locali• I metodi basati sul gradiente possono intrappolarsi nei
minimi locali o convergere in punti di stazionarietà•Con PE non lineari:
– miglior filtraggio dei dati rispetto alla regressione lineare– più efficienti in problemi di classificazione non
linearmente separabili
RN-13
RN-14IL PERCEPTRONEIL PERCEPTRONE(Rosemblatt 1950)
jijijii bxwfnetfy
jijijii bxwfnetfy
MP-PE
1
2
M
.
.
.
.
.
.
+1
x1
x2
xD
y1
y2
yM
b1
b2bMw11
w12
w1M
wDM
• Lo strato di uscita è costituito da MP-PE
• Il numero di PE in uscita ( M ) è legato alla codifica adottata per le classi
• Ciascun neurone risolve il problema di decidere se un pattern appartiene alla classe i-esima oppure no
• Il perceptrone può essere allenato utilizzando la ben nota regola di aggiustamento dei pesi: w(n+1) = w(n) + (n) x(n) per riconoscere pattern linearmente separabili in un numero finito di passi
RN-15• Le regioni di decisione di un perceptron sono sempre regioni convesse
REGOLA DELTA APPLICATA AL PERCEPTRONREGOLA DELTA APPLICATA AL PERCEPTRON
Se M = 1 2
121
N
ppp yd
NJ
2
121
N
ppp yd
NJ p : indice del pattern
Se abbiamo un numero M di PE nello strato di uscita:
p i
pi
N
p
M
ipip N
ydN
J 22
1 1 21
21
p ipi
N
p
M
ipip N
ydN
J 22
1 1 21
21 ip
jjpijip netfxwfy
con ip
jjpijip netfxwfy
con
jpipipjpipipipipijip
ip
ipij
xnetfxnetfydnetwnet
yyJ
wJ
'' jpipipjpipipipip
ijip
ip
ipij
xnetfxnetfydnetwnet
yyJ
wJ
''
jpipipijij xnnetfnwnw '1 jpipipijij xnnetfnwnw '1 da cui
definendo: ipip
ip netfyJ ' ip
ipip netf
yJ ' errore locale per il PE i-esimo
jpipijij xnwnw 1 jpipijij xnwnw 1
RN-16REGOLA DELTA PER IL PERCEPTRONREGOLA DELTA PER IL PERCEPTRON
jpipijij xnwnw 1 jpipijij xnwnw 1
• Usa solo quantità locali disponibili ai pesi:– il valore xjp che raggiunge wij dall’ingresso– l’errore locale ip propagato dalla funzione costo
• La località fa sì che l’algoritmo prescinda dalla complessità della rete• SVANTAGGI: la superficie di decisione è molto vicina all’ultimo
pattern classificato correttamente risultati scadenti in fase di generalizzazione
• La superficie di decisione dovrebbe essere posta fra le due classi a distanza uguale dai “bordi” delle due classi
• Si può modificare l’algoritmo introducendo il “margine” tra l’iperpiano < x , w > = b e il set degli esempi
S = { ( x 1 , d 1) , . . . , ( x N , d N) }, come:
0,min
bwxSx
0,min
bwxSx
margine
Vapnik ha mostrato che :
22w
22w
• Si definisce IPERPIANO OTTIMO l’iperpiano che massimizza il margine tra le due classi
• Per trovare l’iperpiano ottimo occorre trovare i VETTORI DI SUPPORTO
vettori di supporto
Iperpiano ottimo
RN-17
RN-18LIMITI DEL PERCEPTRONLIMITI DEL PERCEPTRON
• Risolve solo problemi linearmente separabili
Es: Problema X-OR (non è linearmente separabile)
x1 x2 y
0 0 00 1 1
1 0 1
1 1 0
x2
x1
g(x)
• A prescindere da dove si piazzi la superficie di decisione si commette un errore di classificazione
SoluzioneMULTI LAYER PERCEPTRON (MLP)MULTI LAYER PERCEPTRON (MLP)
• L’ MLP estende il perceptron aggiungendo strati nascosti (hidden layer) - Es: 1 hidden layer
bias bias
1
2
K
+1x1
x2
xD
1
2
M
y1
y2
yM
+1
input layer hidden layer output layer
.
.
....
.
.
.
+1
+1
3
2
1x3
x4 w6
w5
b3b1
b2
w1
w2
w3
w4
x1
x2
Es: Problema X-OR
Hp: i PE hanno funzione di attivazione a soglia
+1
)(
)))(())(((
)(
321
3224136122115
34635
bggf
bbxwxwfwbxwxwfwf
bxwxwfy
)(
)))(())(((
)(
321
3224136122115
34635
bggf
bbxwxwfwbxwxwfwf
bxwxwfy
x4
x3
0346353 bxwxwg
Mappatura totale input/output
0224132 bxwxwg
0122111 bxwxwg
x2
x1
0 0 0 01
0
1
1
1 1 1 1
0 1 1 1
1 1 0 0
yx4x3x2x1
RN-19
• Esistono differenti combinazioni di pesi che realizzano un particolare adattamento delle regioni di decisione
• Il primo strato di neuroni ha trasformato un problema non linearmente separabile in uno linearmente separabile nello spazio x3,x4
• Lo strato d’uscita esegue la desiderata separazione di due insiemi linearmente separabili
• L’aggiunta dello strato nascosto ha reso possibile la realizzazione di regioni di decisione non più necessariamente convesse
• In max numero di regioni distinte nello spazio degli ingressi è controllato dal numero di neuroni nascosti (2k per k>>D)
• Ciascun neurone nascosto crea una funzione discriminante lineare
• I neuroni d’uscita combinano alcune delle regioni create dai neuroni nascosti creando regioni non necessariamente convesse
RN-20
CAPACITÀ DI MAPPING DELLE MLP CON SINGOLO HIDDEN LAYER
• BUMP: regione singola, di estensione limitata, di valori “alti” (1), circondata da valori bassi (0)
- la funzione discriminante dei valori bassi non può essere convessa e quindi un semplice perceptron non può realizzare un bump
- il bump più semplice è triangolare ed è ottenuto con 3 neuroni nascosti
TEOREMA DI CYBENKO
Una MLP con 1 strato nascosto di neuroni con funzioni di attivazione sigmoidale è un mappatore universale, cioè può approssimare arbitrariamente bene qualunque regione di decisione continua, purché il numero di neuroni nascosti sia sufficientemente grande
RN-21
• Una MLP con 1 strato nascosto può costruire regioni di decisione complesse, non convesse, eventualmente disgiunte (es. X-OR)
• Una MLP con 1 strato nascosto può costruire un bump nello spazio degli ingressi
ALGORITMO ERROR BACK PROPAGATION (EBP)
• Si basa sull’uso della CHAIN RULE che consente di propagare sistematicamente la sensitivity attraverso un numero indeterminato di nodi interni (hidden) di una topologia
• NOTA: non conosciamo la risposta desiderata dell’i-esimo neurone nascosto
Per adattare i pesi wij del neurone nascosto:
1. Si utilizza un errore derivato propagando l’errore nello strato d’uscita (noto)
2. Si calcola la sensitivity usando la chain-rule
)()())((')()1( nxnnnetfnwnw jiiijij )()())((')()1( nxnnnetfnwnw jiiijij con
k
kikki nwnnetfnen )())((')()( k
kikki nwnnetfnen )())((')()( Errore locale del nodo i-esimo
ith PE
yi
wki
kth PE
xi
yk
RN-22
ykki-th
neti
yi
netkwkiwijxj
xd
x1
ALGORITMO EBPHp: uno strato nascosto, un neurone d’uscita
wij
net
net
y
y
J
w
J i
i
i
iij
wij
net
net
y
y
J
w
J i
i
i
iij
Chain rule
poiché
N
pkk yd
NJ
1
2)(2
1
N
pkk yd
NJ
1
2)(2
1
)(
)(
ij
jiji
ki
ikik
netfxwfy
netfywfy
)(
)(
ij
jiji
ki
ikik
netfxwfy
netfywfy
)(' ; ii
ij
ij
i netfnet
yx
w
net
)(' ; i
i
ij
ij
i netfnet
yx
w
net
i
k
k
k
ki
k
ki y
net
net
y
y
J
y
y
y
J
y
J
i
k
k
k
ki
k
ki y
net
net
y
y
J
y
y
y
J
y
J
ma
)(' ; kk
kki
i
k netfnet
yw
y
net
)(' ; k
k
kki
i
k netfnet
yw
y
net
RN-23
kk
ey
J
kk
ey
J
Da cui, utilizzando la regola del gradiente discendente:
)( )()1( nJgradnwnw )( )()1( nJgradnwnw
ijijij w
Jnwnw
)()1(ij
ijij w
Jnwnw
)()1( Regola di aggiornamento dei pesi
)())((')())((')()1( )( nxnnetfnwnnetfnewnw jikikknijij )())((')())((')()1( )( nxnnetfnwnnetfnewnw jikikknijij
RN-24
jikikkij
i
i
i
i
k
kij
xnetfwnetfew
net
net
y
y
y
y
J
w
J)(')('
jikikkij
i
i
i
i
k
kij
xnetfwnetfew
net
net
y
y
y
y
J
w
J)(')('
kikki
wnetfey
J)('
kikki
wnetfey
J)('
ESTENSIONE DELL’EBP AL CASO DI M NEURONI DI USCITA
M
k kkikk
i
k
k
k
ki
wnetfey
net
net
y
y
J
y
J
1)('
M
k kkikk
i
k
k
k
ki
wnetfey
net
net
y
y
J
y
J
1)('
Ciascun neurone K di uscita contribuisce in modo additivo al gradiente del costo rispetto all’uscita dell’iesimo neurone nascosto
quindi:
jik
kikkij
xnetfwnetfew
J)(')('
jik
kikkij
xnetfwnetfew
J)(')('
k yki-th
neti
yi
wkiwijxj
xd
x1
M
1
yM
y1
RN-25
ESTENSIONE DELL’EBP A RETI CON PIÙ DI UNO STRATO NASCOSTO
iikikk
kij
ynetfwnetfew
J)(')('
iikikk
kij
ynetfwnetfew
J)(')('
La regola di aggiornamento è:
kkikkiijij nwnnetfnennetfnwnw )())((')())((')()1(
kkikkiijij nwnnetfnennetfnwnw )())((')())((')()1(
Tornando indietro di strato in strato si può propagare all’indietro l’errore sino all’ingresso
RN-26
k yki-th yi
wki
wij
M
1
yM
y1
j-th yi
wMi
w1i
ll-1
STEP 4: BACKWARD STEP:
Calcolare l’errore locale partendo dallo strato di uscita sino all’ingresso
- strato d’uscita:
- negli altri strati
IMPLEMENTAZIONE
STEP 1: Presentare alla rete il pattern {x1 , d1}
j
lj
lij
li nywny )()( 1
j
lj
lij
li nywny )()( 1
Con jj xy )0(
jj xy )0(
))((')()( nnetfnen Lii
Li ))((')()( nnetfnen L
iiLi
NOTA: n indice di iterazione e anche training set ,N,nndnx 1 )(),(
l: indice di strato l=1,…,L ; l=1 input layer ; l=L output layer
)()()( nyndne iii )()()( nyndne iii
STEP 5: Ripetere questa procedura per tutti i pattern del training e per il numero di epoche richiesto per la convergenza (randomizzare i pattern tra un’epoca e l’altra)
STEP 3: Calcolare l’errore nello strato d’uscita
STEP 2: FORWARD STEP:
Calcolare l’uscita di ciascun neurone dall’input (l = 1) all’output (l = L):
)()())((')( 11 nwnnnetfn lki
k
lk
li
li
)()())((')( 11 nwnnnetfn lki
k
lk
li
li
RN-27
EBP
jk
kikkiij ynwnnetfnennetfnwijnw
)())((')())((')()1( j
kkikkiij ynwnnetfnennetfnwijnw
)())((')())((')()1(
L’errore locale di un neurone di uscita è:
)(')(' kkkk
k netfenetfy
J )(')(' kkk
kk netfenetf
y
J
allora
kkik
kkikk nwnwnnetfne )()())((')(
kkik
kkikk nwnwnnetfne )()())((')(
è l’errore totale propagato all’i-esimo neurone dall’uscita o anche è il contributo che il neurone i-esimo dà all’errore in uscita
• Se questo passa attraverso la non-linearità dello stesso i-esimo nodo si ottiene:
l’errore locale del neurone i-esimo dello strato nascosto k
kikii nwnnetfn )())((')( k
kikii nwnnetfn )())((')( Da cui:
REGOLACIASCUN PESO PUÒ ESSERE AGGIORNATO MOLTIPLICANDO L’ERRORE LOCALE PER L’ATTIVAZIONE LOCALE CIOÈ)(ni )(ny j
)()( nynw jiij )()( nynw jiij
wij
yi
i
i
j
)()()()1( nynnwnw jiijij )()()()1( nynnwnw jiijij
RN-28
CASO 3: NEURONE NASCOSTO E NON LINEARE
CASO 2: NEURONE D’USCITA E NON LINEARE. L’aggiornamento dei pesi viene fatto con la regola delta perché conosciamo l’uscita desiderata
CASO 1: NEURONE D’USCITA E LINEARE. Infatti f’(neti(n)) ha un valore costante uguale ad 1 (ritroviamo la regola LMS)
Da strato a strato quello che si modifica è il modo di calcolare l’errore locale a seconda che il neurone appartenga ad uno strato nascosto o di uscita o se ha una funzione di attivazione lineare o non lineare:
)( )( nynw jiij )( )( nynw jiij
Errore locale
Attivazione locale
VALE PER TUTTI I NEURONI DEI VARI STRATI
)()( nen ii
))((')()( nnetfnen iii )()( nynew ii
k
kikiii nwnnetfnen )())((')()(
)()( nynw ji
La formula per l’aggiornamento dei pesi non cambia strutturalemente perché il learning è condotto usando ancora il gradiente discendente
RN-29
PROBLEMI APERTI
• Scelta del numero di neuroni nello strato nascosto
• Non si è ancora affermata alcuna tecnica per la scelta del numero
ottimo di neuroni nascosti
• In letteratura sono stati proposti algoritmi che trovano soluzioni
subottime
• Spesso la scelta del numero di hidden neurons è condotta con
tecniche del tipo trial and error
RN-30
MLP CON DUE STRATI NASCOSTI
• Funzione discriminante:
deriva da tre livelli di composizione ))))(((( fffy ))))(((( fffy
• Di norma si dovrebbe iniziare a sperimentare con reti con 1 solo strato nascosto perché le MLP con 2 strati hanno una convergenza più lenta a causa dell’attenuazione che subiscono gli errori attraverso le non-linearità
• Non esistono teoremi costruttivi
• Teorema: una combinazione lineare di bump localizzati può approssimare qualunque funzione UNA MLP CON DUE STRATI NASCOSTI È UN
APPROSSIMATORE UNIVERSALE (Anche una MLP con 1 strato nascosto lo è)
• Uno strato nascosto crea bump locali nello spazio degli ingressi. Un ulteriore strato può essere pensato come un combinatore di bump in regioni disgiunte dello spazio
RN-31
EPB PER MLP CON DUE o PIÙ STRATI
L’algoritmo non subisce alcuna modifica
1. FOWARD STEP:
j
lj
lij
li nywfny )()( 1
j
lj
lij
li nywfny )()( 1
)()()( nyndne iii )()()( nyndne iii
))((')()( nnetfnen Lii
Li ))((')()( nnetfnen L
iiLi
k
lki
lk
li
li nwnnnetfn )()())((')( 11
k
lki
lk
li
li nwnnnetfn )()())((')( 11
Regola d’aggiornamento
)())((')()())((')()1( 11 nynnetfnwnnnetfnwnw jk
klki
lk
liijij
)())((')()())((')()1( 11 nynnetfnwnnnetfnwnw j
kk
lki
lk
liijij
)()( nynw jiij )()( nynw jiij
Criteriodi Costo
ANN
1 Activation forward
3Error Backward
Calcolodell’errore
RispostaDesiderata
Inpu
t
Out
put
2
3. BACKWARD STEP
2.
RN-32
ANCORA SULL’EPB
Rete neurale originale
Rete duale
)( jiji ywfy )( jiji ywfy
k
kikii wenetf )(' k
kikii wenetf )('
Se k è di uscita
k
kikii wnetf )(' k
kikii wnetf )('
Se k è nascosto
)()( nynw jiij )()( nynw jiij
Metodo del gradiente discendente
FORWARD STEP
f (net)
wi1
wi2
wij
yi
w1i
w2i
wki
yj
i-esimo PE
BACKWARD STEP
wi1
wi2
wij
i
w1i
w2i
wki
ek
i-esimo PE
f ‘(net)
eix
yj yi output
wij
i
wki
k
FORWARD
BACKWARDerrore
input
i-esimoPE
RN-33
CLASSIFICATORI OTTIMI
• Un classificatore ottimo è quello che crea funzioni discriminanti arbitrarie che separano cluster di dati secondo le probabilità a posteriori
• Un classificatore ottimo byesiano produce uscite che sono le probabilità a posteriori di classi di dati
• Se il training di una MLP è condotto sotto certe condizioni le uscite possono essere interpretate come stima delle probabilità a posteriori (Bishop)
CONDIZIONI
• MLP allenata per minimizzare l’MSE
• Numero di neuroni nascosti sufficiente a realizzare il mappaggio richiesto (mappatore universale
• Funzione di attivazione SOFTMAX che assicura la somma delle uscite pari a 1 e ciascuna uscita compresa tra 0 e 1
SOFTMAX
jj
kk net
nety
)exp(
)exp(
jj
kk net
nety
)exp(
)exp(La sommatoria è estesa a tutti i nodi di output
• La softmax è simile a tanh e logistic eccetto che le uscite sono scalate secondo la totale attivazione dello strato d’uscita così d’assicurare la somma delle uscite pari a 1
RN-34
•Per un classificatore dove le uscite desiderate sono 0 e 1 e con tanti nodi d’uscita quante sono le classi:
cioè
l’uscita k-esima della MLP fornisce la probabilità a posteriori che il pattern x appartenga alla classe Ck
• Nel caso di due sole classi l’unico neurone d’uscita può avere funzioni logistic
probabilità classe 1 = y probabilità classe 2 =1-y
)|(),( * xtptwxyi
ikikk )|(),( * xtptwxyi
ikikk w*: pesi ottimi
t: uscite desiderate
)|()( xcPxy kk )|()( xcPxy kk
• Si ha un metodo per la stima della probabilità a posteriori direttamente dai dati senza dover usare la regola di Bayes
•In generale yk può fornire una stima della probabilità condizionale media:
RN-35