La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

PROGETTO E TRAINING DI MLP

Presentazioni simili


Presentazione sul tema: "PROGETTO E TRAINING DI MLP"— Transcript della presentazione:

1 PROGETTO E TRAINING DI MLP

2 Principali aspetti da considerare: efficienza e controllo del learning
PT-1 Principali aspetti da considerare: efficienza e controllo del learning criterio d’errore topologia della rete TOPOLOGIA L’errore si attenua da uno strato all’altro Si parte dal perceptron; se questo non risolve il problema Si passa alla MLP con uno strato nascosto infine Si passa alla MLP con due strati nascosti Poiché una MLP con 2 strati nascosti è un approssimatore universale raramente si dovranno usare reti con più di due strati nascosti

3 CONTROLLO DEL LEARNING
PT-2 Pesi iniziali Tasso di learning Algoritmo di ricerca dell’ottimo Criterio d’arresto È inoltre cruciale la qualità e quantità dei dati di training Pesi iniziali - Non vi sono molti lavori in letteratura Regola pratica: pesi random; occorre fare più run Tasso di learning: annealing Es: - L’annealing migliora la convergenza ed evita l’intrappolamento nei minimi locali. Regola empirica: incrementare dallo strato d’uscita all’ingresso di un fattore da 2 a 5 da strato a strato da determinare sperimentalmente

4 REGOLA DI ADATTAMENTO DELTA-BAR-DELTA
LA SCELTA DI UN LEARNING RATE UGUALE PER TUTTI I NODI È DETTATA DALLA SEMPLICITÀ IMPLEMENTATIVA PT-3 Teoricamente: va scelto in accordo con il valore dell’autovalore per la specifica direzione di ricerca Praticamente: difficilmente realizzabile Soluzione alternativa: adattamento dinamico per ciascun peso REGOLA DI ADATTAMENTO DELTA-BAR-DELTA altrimenti Sij: media dei gradienti precedenti Dij: gradiente corrente Se Sij e Dij hanno lo stesso segno il loro prodotto è >0 e è incrementata di una costante Se il prodotto è negativo c’è un’oscillazione dei pesi e deve essere decrementato TUTTI QUESTI SCHEMI AUMENTANO I PARAMETRI LIBERI TUNING PIÙ DIFFICOLTOSO

5 COMPETIZIONE DEI NEURONI NON LINEARI
PT-4 Le non linearità agiscono come meccanismi di competizione che permettono ai diversi neuroni di specializzarsi in differenti aree dello spazio degli ingressi Somma degli errori pesati provenienti dallo strato successivo Attività locale Derivata della non linearità Errore locale Differenti neuroni nascosti con diversi punti di funzionamento (valore di net) producono un aggiornamento dei pesi molto diverso

6 PROCEDURE DI RICERCA PT-5 Ricerca locale - Metodi del gradiente:
- Metodi del II°ordine: estrema semplicità minimi locali divergenza maggior potenza minimi locali divergenza maggior costo computazionale Ricerca globale - Simulated Annealing - Algoritmi Genetici - Tabu Search Costosi in termini implementativi; costosi in termini di memoria richiesta; richiedono quantità non locali; minimo globale LA TENDENZA È QUELLA DI UTILIZZARE TECNICHE CHE MIGLIORANO LE PRESTAZIONI DEL METODO DI BASE DEL GRADIENTE DISCENDENTE SIA LMS CHE EBP USANO UNA STIMA DEL GRADIENTE SI PUÒ MIGLIORARE QUESTA ESPRESSIONE PER ADEGUARSI A SUPERFICI DI PRESTAZIONE NON CONVESSE

7 SUPERFICI DI PRESTAZIONE

8 Espansione in Serie di Taylor
Sia F(x) una funzione analitica tale che esistano tutte le sue derivate: Essa puo’ essere rappresentata dalla sua espansione in serie di Taylor nell’intorno di un punto x* F x d = + 1 2 - n ! Possiamo approssimare la F(x) troncando la serie ad un numero finito di termini

9 Esempio Serie di Taylor di F(x) nell’intorno di x* = 0 :
SP-2 Serie di Taylor di F(x) nell’intorno di x* = 0 : Approssimazioni della serie di Taylor :

10 Grafico delle Approssimazioni
SP-3

11 Le tre approssimazioni sono accurate se x e’ vicino a x*
SP-4 Le tre approssimazioni sono accurate se x e’ vicino a x* Se x si allontana da x* l’approssimazione migliora all’aumentare del numero di termini. Infatti i termini sono moltiplicati per potenze crescenti di (x-x*) e man mano che x si avvicina a x* questi termini diventano geometricamente piu’ piccoli

12 Caso Vettoriale SP-5 F x 1 = 2 + n -

13 Forma Matriciale Gradiente Hessiano SP-6 x x x x x x x x x x x x x x x
x = F x + F x x x x x = 1 T + - - - x x 2 F x x x + 2 x x = Gradiente Hessiano F x 2 1 n = F x 1 2 n =

14 Derivate Direzionali SP-7
Derivata prima (pendenza) di F(x) lungo l’asse xi : (isimo elemento del gradiente) Derivata seconda (curvatura) di F(x) lungo l’asse xi : (elemento i,i dell’Hessiano) Se vogliamo la derivata lungo una qualunque direzione p: p T F x - Derivata prima (pendenza) di F(x) lungo il vettore p: T p 2 F x p Derivata seconda (curvatura) di F(x) lungo il vettore p: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 2 p

15 Esempio SP-8 p T F x - 1 2 = Si ottiene derivata nulla se la direzione p e’ ortogonale al gradiente Si ha pendenza massima quando la direzione p e’ quella del gradiente

16 Grafici SP-9 Derivate direzionali 1.4 1.3 x2 1.0 0.5 0.0 x2 x1 x1

17 Minimi SP-10 Strong Minimum Il punto x* e’ un strong minimum di F(x) se esiste uno scalare >0, tale che F(x*) < F(x* + x) per tuttti i x tali che  > ||x|| > 0. Global Minimum Il punto x* e’ un unico global minimum di F(x) se F(x*) < F(x* + x) per tutti i x  0. Weak Minimum Il punto x* e’ un weak minimum di F(x) se non e’ un strong minimum, e esiste uno scalare >0, tale che F(x*)  F(x* + x) per tutti i x tali che  > ||x|| > 0.

18 Esempio Scalare SP-11 Strong Maximum Strong Minimum Global Minimum

19 Esempio Vettoriale SP-12

20 Condizioni di Ottimalità del Primo-Ordine
SP-13 F x + T = 1 2 - Per piccoli x: Se x* e’ un minimo, questo implica: Se allora Ma questo implicherebbe che x* non e’ un minimo. Quindi: Poiche’ questo deve essere vero per ogni x,

21 Condizioni del Secondo-Ordine
SP-14 Se la condizione del primo-ordine e’ soddisfatta (gradiente nullo), allora: Un strong minimum esisterà in x* se Per ogni x  0. La matrice Hessiana deve essere definita positiva. Una matrice H e’ positiva definita se: z T H > Per qualunque z  0. Questa e’ una condizione sufficiente per l’ottimalità. Una condizione necessaria e’ che la matrice Hessiana sia semidefinita positiva. Una matrice H e’ semidefinita positiva se: z T H Per qualunque z.

22 (Non una funzione di x in questo caso.)
Esempio SP-15 F x 1 2 + = (Non una funzione di x in questo caso.) Se gli autovalori della matrice Hessiana sono tutti maggiori di zero, la matrice Hessiana e’ positiva definita. Entrambi gli autovalori sono positivi, quindi strong minimum.

23 Funzioni Quadratiche Gradiente e Hessiano: SP-16 x A d x Q x Q x Q x Q
( ) 2 - T A d c + = (A simmetrica) Gradiente e Hessiano: Utili proprietà del gradiente: Ñ x T Q x = Q x + Q T x = 2 Q x (per Q simmetrica) Gradiente di una funzione quadratica: F x ( ) Ñ A d + = Hessiano di una funzione Quadratica : F x ( ) Ñ 2 A =

24 SP-17 Forma quadratica 1 F x ( ) 2 - T H d c + = Tutte le derivate di ordine superiore al secondo della F(x) sono nulle. Quindi i primi tre termini della serie di Taylor forniscono una rappresentazione esatta della funzione quadratica Spesso la funzione costo utilizzata e’ quadratica. Quando non lo fosse, spesso può essere approssimata con una funzione quadratica in un intorno piccolo, specialmente vicino a un minimo. Se ||x|| e’ piccolo, tutte le funzioni analitiche si comportano come quadratiche in un piccolo intorno.

25 Autovalori e autovettori di H
SP-18 Consideriamo una funzione quadratica che ha un punto di stazio- narietà nell’origine, e il cui valore sia zero. 1 F ( x ) = - - - x T H x 2 Usiamo gli autovettori di H come nuova base e operiamo un cambia- mento di base. Poiche’ H e’ simmetrica, i suoi autovettori sono ortogonali, e l’inversa coinciderà con la trasposta. H ' B T 1 2 n = H B L T =

26 Derivata seconda direzionale
SP-19 Possiamo utilizzare il concetto di derivata direzionale per spiegare il significato fisico degli autovalori e autovettori di H e come essi de- terminano la forma della superficie di una funzione quadratica La derivata seconda di F(x) lungo la direzione p e’: p T F x 2 - H = Dove c e’ la rappresentazione di p rispetto agli autovettori (nuova base): n 2 c - p T H 2 p c T B T B B T B c c T i i c - = - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - = - - - - - - - - - - - - - - = i - - - - = - - - - 1 - - - - - - - - - - - - T T T n c B B c c c 2 c i i = 1

27 La derivata seconda secondo p e’ una media pesata degli autovalori
SP-20 La derivata seconda secondo p e’ una media pesata degli autovalori e quindi non può essere più grande del maggior autovalore o più piccola del minor autovalore, quindi: p T H m i n 2 - a x Se scegliamo (cioe’ l’autovettore associato al massimo autovalore) c B T p z m a x 1 = Allora il vettore c e’: Posizione corrispondente a lmax

28 Autovettori (Massimo Autovalore)
SP-21 Autovettori (Massimo Autovalore) Il valore unitario e’ in corrispondenza a m a x poiche’ gli autovettori sono ortonormali. z m a x T H 2 - i c 1 = n Sostituendo a p zmax Il massimo della derivata seconda si ha in direzione dell’autovettore corrispondente all’autovalore piu’ grande. Gli autovalori rappresentano la curvatura (derivate seconde) lungo gli autovettori (gli assi principali).

29 Esempio: Circular Hollow
SP-22 (In realtà in questo caso qualunque coppia di vettori indipendenti possono essere autovettori) Poiche’ gli autovalori sono uguali la curvatura deve essere la stessa in tutte le direzioni e la funzione ha linee di contorno circolari

30 Esempio: Elliptical Hollow
SP-23 (gli autovettori non sono univoci, essi possono essere moltiplicati per uno scalare) In questo caso il massimo della curvatura e’ in direzione di z2

31 Esempio: Autovalori di segno opposto
SP-24 F x 1 4 - 2 3 T 0.5 1.5 = L’Hessiano e’ indefinito. Il punto di stazionarietà e’ una sella, e’ un minimo lungo il primo autovettore e un massimo lungo il secondo

32 Esempio: Valle stazionaria
SP-25 F x 1 2 - + T = Il secondo autovalore e’ nullo. Ci sarà una curvatura nulla lungo il secondo autovettore.

33 OTTIMIZZAZIONE DELLE PRESTAZIONI

34 Algoritmo di ottimizzazione di base
OP-1 Trovare il minimo di una funzione obiettivo Schema iterativo x k 1 + h p = o x k 1 + h p x D k 1 + ( ) h p = pk - Direzione di ricerca hk - Learning Rate o Step size Gli algoritmi che vedremo si distinguono per la scelta della direzione di ricerca.

35 Steepest Descent OP-2 Scegliere il passo successivo in modo che la funzione decresca: F k 1 + ( ) < x x Per piccoli cambiamenti nella x si puo’ approssimare F(x): F x k 1 + ( ) D g T = dove g k F x ( ) Ñ = Se vogliamo che la funzione decresca: g k T x D h p < = Possiamo massimizzare il decremento scegliendo: x k 1 + h g =

36 Esempio OP-3 x x x g x x g F ( ) + = 0.5 3 0.2 = – h = – 0.1 = 0.5 3
0.5 3 0.2 0.2 1.8 0.02 x = x h g = 0.1 = 2 1 1 0.2 1.2 0.08

37 Grafico OP-4 Per valori bassi di h la traiettoria e’ sempre perpendicolare alle linee di contorno Se incrementassimo h per es. a 0.035, la traiettoria oscillerebbe. Al crescere di h le oscillazioni aumentano in ampiezza e l’algoritmo diventa instabile.

38 Stabilizzazione del Learning Rate (Quadratico)
OP-5 Non c’e’ un metodo sistematico per trovare h per qualunque tipo di funzione. Per funzioni quadratiche si ha un limite superiore. 1 F x ( ) 2 - T H d c + = F x ( ) Ñ H d + = x k 1 + I h H [ ] d = x k 1 + h g H d ( ) = La stabilità e’ determinata dagli autovalori di questa matrice, che devono avere ampiezza minore dell’unità Poiche’: I h H [ ] z i l 1 ( ) = (i - autovalore di H) Autovalore di [I - hH]. Requisiti per la stabilità dell’algoritmo steepest descent: 2 2 ( 1 h l ) < 1 h < - - - - h < - - - - - - - - - - - - i l l i m a x

39 Esempio OP-6 2 2 h < - - - - - - - - - - - - = - - - - - - - - - -
0.38 l 5.24 m a x h = 0.37 h = 0.39

40 Minimizzazione lungo una linea
OP-7 Un altro approccio per scegliere il learning rate e’ quello di minimizzare F rispetto a hk a ciascuna iterazione cioe’: Scegliere hk per minimizzare: x p + F k h ( ) Si puo’ usare un metodo detto Line Search Per funzioni quadratiche si puo’ trovare la soluzione analiticamente d h k - F x p + ( ) Ñ T = 2 h k F x ( ) Ñ T = p 2 - g H dove H k F x ( ) Ñ 2 =

41 Esempio OP-8 x x g – 3 3 3 – 3 0.5 3 – 0.1 h = – - - - - - - - - - - -
0.2 x = x h g = 0.2 = 1 0.5 3 0.1 2 2 3 3 3 2 4 3

42 Grafico I passi successivi sono ortogonali: OP-9
Infatti, quando minimizziamo lungo una linea dobbiamo sempre fermarci in un punto tangente a una linea di contorno. Allora, poiche’ il gradiente e’ ortogonale alle linee di contorno, il successivo passo, che e’ lungo il gradiente negativo, sarà ortogonale al precedente percorso. d d x + p = x = T d F ( h ) F ( ) Ñ F ( x ) [ x + h p ] d h k k k d h k + 1 x x d h k k k k k = k + 1 k F x T k 1 + = p g

43 Metodo di Newton E’ basato sulla serie di Taylor del secondo ordine
OP-10 E’ basato sulla serie di Taylor del secondo ordine F x k 1 + ( ) D g T 2 - H = Per trovare il punto di stazionarietà si prenda il gradiente di questa approssimazione del secondo-ordine e si ponga uguale a zero: g + H D x = k k k D x = H 1 g k k k x = x H 1 g k + 1 k k k

44 Esempio OP-11 2 2 H = 2 4 Trova il minimo in un passo

45 Grafico OP-12 Se la funzione originaria e’ quadratica sarà minimizzata in un passo

46 Punti di stazionarietà:
OP-13 Metodo di Newton Se la funzione originaria non e’ quadratica non si avrà, in generale, la convergenza in un passo. Inoltre non si ha la sicurezza neanche della convergenza poiché essa dipende sia dalla funzione sia dal punto iniziale. Esempio non-quadratico Tale funzione ha tre punti di stazionarietà: due minimi e una sella Punti di stazionarietà:

47 Esempio non-quadratico
OP-14 Se partiamo dal punto iniziale x 1.5 = La prima iterazione non porta a convergenza. Il metodo di Newton si intrappola nei minimi locali F(x) F2(x)

48 Condizioni iniziali differenti
OP-15 F(x) F2(x)

49 Sommario OP-16 Sebbene generalmente abbia una convergenza più veloce dei metodi steepest descent, il metodo di Newton presenta un comportamento più complesso Si può avere convergenza su un punto di stazionarietà che non e’ un minimo, o si può non avere convergenza. Si può avere un comportamento oscillatorio Il metodo di Newton richiede il calcolo e l’immagazzinamento della matrice Hessiana e della sua inversa Spesso il calcolo dell’Hessiano e’ impraticabile, specie per le reti neurali dove, nei casi pratici, gli elementi, cioè i pesi sinattici, possono essere dalle centinaia alle svariate migliaia. Occorrerebbero metodi con terminazione quadratica ma che richiedessero solo derivate prime

50 Metodo del gradiente coniugato
OP-17 1 F x ( ) 2 - T H d c + = Funzione quadratica: Un insieme di vettori {pk} e’ mutuamente coniugato rispetto a una matrice Hessiana H definita positiva se e solo se: p k T H j = Esiste un numero infinito di insiemi mutuamente coniugati in uno spazio n-dimensionale dato Un possibile insieme di vettori coniugati sono gli autovettori di H. z k T H j l = (Gli autovettori di matrici simmetriche sono ortogonali.) Si puo’ mostrare che se effettuiamo una sequenza di ricerche lineari lungo qualunque set di direzioni coniugate {p1,..,pn}, il minimo esatto di qualunque funzione quadratica, con n parametri, si raggiunge in al più n ricerche. Come costruire queste direzioni coniugate?

51 Per funzioni quadratiche
OP-18 1 F x ( ) 2 - T H d c + = F x ( ) Ñ H d + = F x ( ) Ñ 2 H = La modifica nel gradiente all’iterazione k e’ g k D 1 + H x d ( ) = dove D x = ( x x ) = h p k k + 1 k k k Le condizioni per la coniugazione possono essere riscritte: Da p k T H j = a h k p T H j x D g = Questo non richiede la conoscenza della matrice Hessiana.

52 Costituzione delle direzioni coniugate
OP-19 Le direzioni di ricerca saranno coniugate se sono ortogonali alle modifiche del gradiente. La prima direzione di ricerca e’ arbitraria. Una scelta molto comune e’ di iniziare la ricerca nella direzione della discesa più ripida, cioè: Scegliere la direzione di ricerca iniziale come il negativo del gradiente. Scegliere le successive direzioni in modo che siano coniugate. p = g + b p k k k k 1 Per la scelta della scalare bk vi sono differenti proposte

53 Scelte possibili OP-20 Hestenes-Steifel Fletcher-Reeves Polak-Ribiere

54 Algoritmo del gradiente coniugato
OP-21 1. La prima direzione di ricerca e’ il negativo del gradiente 2. Selezionare il learning rate per minimizzare lungo la linea. F x ( ) Ñ T p k = h 2 - g H (Per funzioni quadratiche.) 3. Fare un passo Dxk=hk pk 4. Selezionare la successiva direzione di ricerca usando: 5. Se l’algoritmo non va a convergenza, ritornare al passo 2. Una funzione quadratica sarà minimizzata in n passi.

55 Esempio OP-22 x x g – 3 3 3 – 3 0.5 3 – 0.1 h = – - - - - - - - - - -
0.2 x = x h g = 0.2 = 1 0.5 3 0.1 2 2 3 3 3 2 4 3

56 Esempio OP-23 – 0.72 0.6 – 0.6 0.48 – 0.72 h = – - - - - - - - - - - -
1.25 1 0.576 2 2 0.72 0.72 0.48 2 4 0.48

57 Grafici Gradiente coniugato Steepest Descent OP-24 x x p – 0.1 – 0.72
= x + h p = + 1.25 = 2 1 1 1 0.1 0.48 0.5 Gradiente coniugato Steepest Descent

58 VARIAZIONI DEL BACKPROPAGATION

59 L’EBP e’ troppo lento per la maggior parte delle applicazioni.
Variazioni VP-1 L’EBP e’ troppo lento per la maggior parte delle applicazioni. Modifiche euristiche Momentum Learning Rate variabile Ottimizzazione numerica standard Gradiente coniugato Metodo di Newton (Levenberg-Marquardt)

60 Esempi di superfici di prestazione
VP-2 Architettura di rete 1-2-1 Diamo alla rete un problema di cui conosciamo la soluzione: approssimare una funzione che non e’ altro che la risposta della stessa rete per un assegnato set di valori dei pesi e dei bias

61 Esempi di superfici di prestazione
VP-3 Risposta desiderata Valori dei parametri Si vuole allenare la rete per approssimare la funzione in figura. L’approssimazione sarà esatta per il valore dei parametri su riportato. Sia noto il valore della funzione in un certo numero di punti di campionamento. La funzione costo sia il MSE calcolato in tali punti.

62 Errore quadratico vs. w11,1 e w21,1
VP-4 w21,1 w21,1 w11,1 w11,1 Gli altri parametri sono settati al loro valore ottimo. Il cerchio blu indica il minimo errore pari a zero per w11,1 = 10 e w21,1=1

63 Errore quadratico vs. w11,1 e b11
VP-5 b11 w11,1 b11 w11,1 Gli altri parametri sono settati al loro valore ottimo. Il cerchio blu indica il minimo errore pari a zero per w11,1 = 0 e b11= -5

64 Errore quadratico vs. b11 e b12
VP-6 b21 b11 b21 b11 Gli altri parametri sono settati al loro valore ottimo. Il cerchio blu indica il minimo errore in b11= -5 e b12= 5

65 Considerazioni VP-7 Vi sono delle simmetrie nelle MLP che fanno sì che lo zero sia un punto di stazionarietà della funzione obiettivo. E’ buona norma non settare il valore iniziale dei parametri a zero. E’ buona norma non settare il valore iniziale dei parametri a valori troppo grandi. Questo perché la funzione costo tende ad avere regioni molto piatte lontano dal punto ottimo. E’ buona norma settare il valore iniziale dei parametri a piccoli valori random. E’ buona norma provare differenti scelte di valori iniziali per aumentare la probabilità di convergenza al minimo globale.

66 Esempio di convergenza
VP-8 w11,1 w21,1 a b Traiettoria a: si ha convergenza al minimo globale ma la convergenza e’ lenta a causa del cambio di curvatura. Un valore alto del learning rate aumenterebbe la velocità di convergenza nelle regioni piatte, ma provocherebbe la instabilità dell’algoritmo quando si cada in una valle. Traiettoria b: intrappolamento in un minimo locale.

67 Learning Rate troppo alto
VP-9 w21,1 w11,1

68 Commenti VP-10 Si e’ notato che quando l’algoritmo comincia a divergere la traiettoria di ricerca comincia a oscillare attraverso la stretta valle. Se si potesse filtrare la traiettoria mediando gli aggiornamenti dei parametri, questo potrebbe smorzare le oscillazioni e produrre oscillazioni stabili. Questo puo’ essere fatto con un filtro passa-basso.

69 MOMENTUM LEARNING Usa la memoria, cioè l’incremento passato del peso,
VP-12 Usa la memoria, cioè l’incremento passato del peso, per accelerare e stabilizzare la convergenza gradiente discendente 1 2,3,... I pesi vengono modificati proporzionalmente a quanto essi sono stati cambiati nell’ultima iterazione Se ci si trova in un minimo locale o in una zona piatta i pesi vengono ancora modificati, non a causa del gradiente (nullo) ma perché c’è una modifica dei pesi all’iterazione precedente gradiente discendente con momentum 1 2 3 Metodo robusto - Accelera l’apprendimento Se ne consiglia l’uso per reti con non-linearità

70 Momentum :Esempio VP-13 Con l’uso del momentum si e’ potuto usare un learning rate più alto mantenendo la stabilità dell’algoritmo w21,1 w11,1 a = 0.2

71 Learning Rate Variabile (VLBP)
VP-14 Se l’errore quadratico (sull’intero training set) cresce più di una certa percentuale fissata  (da 1 a 5%) dopo un aggiornamento dei pesi, allora l’aggiornamento non viene fatto, il learning rate viene moltiplicato per un fattore (1>>0), e il coefficiente momentum a e’ settato a zero. Se l’errore quadratico decresce dopo un aggiornamento dei pesi, allora l’aggiornamento viene accettato e il learning rate viene moltiplicato per un fattore d>1. Se a era stato precedentemente posto a zero, viene resettato al suo valore originale. Se l’errore quadratico cresce meno di , allora l’aggiornamento dei pesi viene accettato, ma il learning rate e il coefficiente momentum non vengono modificati.

72 Esempio VP-15 d 1.05 = w21,1 w11,1

73 Tecniche di ottimizzazione numerica
VP-16 Riformulazione con sole informazioni locali Approssimazione della funzione costo J(w) nel punto operativo w 0  Sviluppo in serie di Taylor di J intorno a w 0 : dove: gradiente Hessiano  matrice delle derivate seconde i cui elementi sono: NOTA: l’hessiano non può essere calcolato con sole informazioni locali Deriviamo J rispetto ai pesi: Poiché la superficie di prestazione tende ad essere quadratica intorno al minimo, normalmente possiamo fermarci solo al primo e al secondo termine dell’espressione

74 Se usiamo solo il primo termine 
 metodi del primo ordine: metodi del gradiente gradiente stimato come il suo valore in w 0 VP-17 Se usiamo anche il secondo termine   metodi del secondo ordine: metodi di Newton Uguagliando a zero l’espressione troncata: Vantaggi: se la funzione è quadratica si ottiene la convergenza nel minimo globale in un numero finito di passi (spesso 1 passo) Svantaggi: massiccio uso di memoria e di tempo di calcolo per l’inversione di H0 Complessità: O( N3) N: numero dei pesi Una rete neurale può avere migliaia di pesi  l’hessiano milioni di termini Soluzione Metodi di approssimazione dell’hessiano: Metodi LINE SEARCH Metodi PSEUDO-NEWTON

75 APPROSSIMAZIONI PIU’ ACCURATE MA POCO COSTOSE:
METODI PSEUDO NEWTON VP-19 IDEA BASE: fornire approssimazioni dell’hessiano ragionevoli e facili da calcolare A) Considerare i soli termini diagonali di H  si usa un algoritmo di Newton separatamente per ciascun peso: B) Generalmente questa regola è sostituita dalla: Piccola costante che evita i problemi legati a curvature negative o a denominatori nulli A) e B) danno approssimazioni poco accurate APPROSSIMAZIONI PIU’ ACCURATE MA POCO COSTOSE: LEVEMBERG-MARQUARD (LM) DAVIDSON - FLETCHER - POWELL (DFP) BROYDEN - FLETCHER - GOLDFARB - SHANNO (BFGS)

76 Metodo di Newton VP-27 w k 1 + H g = H k J w ( ) Ñ 2 = g k J w ( ) Ñ = Se la funzione costo e’ una somma di funzioni quadratiche: J w ( ) e i 2 1 = N å T Allora il j-esimo elemento del gradiente e’: J w ( ) Ñ [ ] j - 2 e i 1 = N å

77 Forma Matriciale Il gradiente puo’ essere scritto in forma matriciale:
VP-28 Il gradiente puo’ essere scritto in forma matriciale: T Á Ñ J ( w ) = 2 ( w ) e ( w ) dove Á e’ la matrice Jacobiana: e w e w e w 1 1 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - w w w 1 2 n e w e w e w 2 2 2 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Á x = w w w 1 2 n e w e w e w N N N - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - w w w 1 2 n

78 Hessiano å å L’elemento k,j della matrice Hessiana e’:
VP-29 L’elemento k,j della matrice Hessiana e’: J w ( ) Ñ 2 [ ] k j , - e i + î þ í ý ì ü 1 = N å 2 La matrice Hessiana puo’ allora essere scritta nella seguente forma: J w ( ) Ñ 2 Á T S + = dove S w ( ) e i Ñ 2 1 = N å

79 Metodo Gauss-Newton VP-30 Se assumiamo S(w) piccolo si approssima la matrice Hessiana come: 2 Ñ J ( w ) @ 2 Á T ( w ) Á ( w ) Sostituendo nella formula di aggiornamento dei pesi w k 1 + H g = Il metodo di Newton diventa: w k 1 + 2 Á T ( ) [ ] e = w k Á T 1 e =

80 Levenberg-Marquardt Gauss-Newton approssima l’Hessiano come: Á
VP-31 Gauss-Newton approssima l’Hessiano come: H’ Á = T Questa matrice potrebbe essere singolare, ma puo’ essere resa invertibile nel seguente modo: G H’ m I + = G z i H’ m I + [ ] l ( ) = Se gli autovalori e autovettori di H’ sono: allora Autovalori di G G puo’ essere resa definita positiva incrementando m sino a che li+m>0 Questo porta all’algoritmo di Levenberg-Marquardt: w k 1 + Á T ( ) m I [ ] e =

81 Aggiustamento di k Come k0, LM diventa Gauss-Newton.
VP-32 Come k0, LM diventa Gauss-Newton. w k 1 + J T ( ) [ ] e = Come k, LM diventa Steepest Descent con piccolo learning rate. 1 1 w @ w - - - - - J T ( w ) e ( w ) = w - - - - - - - - - Ñ J ( w ) k + 1 k m k k k 2 m k k Quindi, iniziare con k piccolo per usare Gauss-Newton e accelerare la convergenza. Se un passo non porta a J(w) inferiore, ripetere lo step con k piu’ alto fino a che J(w) e’ decrementato. J(w) deve comunque diminuire, poiche’ si compie uno step molto piccolo nella direzione steepest descent.

82 Esempio di LMBP Step VP-35 w21,1 w11,1

83 Traiettoria del LMBP VP-36 w21,1 w11,1

84 CRITERI DI STOP VP-37 Non esistono indicatori diretti che misurano se la rete ha imparato il compito che ci si prefigge 1) Stop in base all’errore su training 2) Stop in base al decremento del MSE da un’iterazione all’altra OVERFITTING 3) EARLY STOPPING o CROSS VALIDATION stop in base all’errore sul test set early stopping validation set training set iterazioni errore VALIDATION SET: normalmente il 10% del totale numero di training pattern Svantaggi: si riduce il numero di esempi utili per l’allenamento e questo può essere un problema nelle applicazioni reali

85 DIMENSIONI DEL TRAINING SET QUALITA’ DEL TRAINING SET
VP-38 A) (Haykin) B) regola empirica: N  10 W accettando un’accuratezza di classificazione del 90% QUALITA’ DEL TRAINING SET COPERTURA DELLO SPAZIO DEGLI INGRESSI Tecniche di estrazione di feature per ridurre le dimensioni dello spazio degli ingressi Si riducono le dimensioni della rete ALTERNATIVA: TECNICHE DI PRUNING

86 CRITERIO DI ERRORE VP-39 Generalmente: p intero Se p = 2  MSE  L2
Se p = 1  metrica di Manhattan Se p = intero finito (norma p)  Lp L: si considerano nulli tutti gli errori eccetto il più alto p = 0 : si usa semplicemente il segno dell’errore istantaneo


Scaricare ppt "PROGETTO E TRAINING DI MLP"

Presentazioni simili


Annunci Google