RETI NEURALI ARTIFICIALI

36
RETI NEURALI RETI NEURALI ARTIFICIALI ARTIFICIALI

description

RETI NEURALI ARTIFICIALI. PROCESSORE ELEMENTARE. Esempio di RNA:. x 1. w 1. x 2. w 2. w 6. y. S. PE. f (.). w 1. x 1. w 3. x D. w 5. x 2. w D. w 2. w 4. PE. RN-1. - PowerPoint PPT Presentation

Transcript of RETI NEURALI ARTIFICIALI

Page 1: RETI NEURALI ARTIFICIALI

RETI NEURALI RETI NEURALI ARTIFICIALIARTIFICIALI

Page 2: RETI NEURALI ARTIFICIALI

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

Page 3: RETI NEURALI ARTIFICIALI

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

- +

Page 4: RETI NEURALI ARTIFICIALI

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

Page 5: RETI NEURALI ARTIFICIALI

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

Page 6: RETI NEURALI ARTIFICIALI

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)

Page 7: RETI NEURALI ARTIFICIALI

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

Page 8: RETI NEURALI ARTIFICIALI

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

Page 9: RETI NEURALI ARTIFICIALI

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

Page 10: RETI NEURALI ARTIFICIALI

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à

Page 11: RETI NEURALI ARTIFICIALI

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

Page 12: RETI NEURALI ARTIFICIALI

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

'

Page 13: RETI NEURALI ARTIFICIALI

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

Page 14: RETI NEURALI ARTIFICIALI

• 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

Page 15: RETI NEURALI ARTIFICIALI

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

Page 16: RETI NEURALI ARTIFICIALI

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

Page 17: RETI NEURALI ARTIFICIALI

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

Page 18: RETI NEURALI ARTIFICIALI

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

Page 19: RETI NEURALI ARTIFICIALI

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

.

.

....

.

.

.

Page 20: RETI NEURALI ARTIFICIALI

+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

Page 21: RETI NEURALI ARTIFICIALI

• 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

Page 22: RETI NEURALI ARTIFICIALI

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

Page 23: RETI NEURALI ARTIFICIALI

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

Page 24: RETI NEURALI ARTIFICIALI

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

Page 25: RETI NEURALI ARTIFICIALI

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)('

Page 26: RETI NEURALI ARTIFICIALI

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

Page 27: RETI NEURALI ARTIFICIALI

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

Page 28: RETI NEURALI ARTIFICIALI

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

Page 29: RETI NEURALI ARTIFICIALI

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

Page 30: RETI NEURALI ARTIFICIALI

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

Page 31: RETI NEURALI ARTIFICIALI

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

Page 32: RETI NEURALI ARTIFICIALI

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

Page 33: RETI NEURALI ARTIFICIALI

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

Page 34: RETI NEURALI ARTIFICIALI

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

Page 35: RETI NEURALI ARTIFICIALI

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

Page 36: RETI NEURALI ARTIFICIALI

•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