1 / 86

PROGETTO E TRAINING DI MLP

PROGETTO E TRAINING DI MLP. infine. 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.

liang
Download Presentation

PROGETTO E TRAINING DI MLP

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. PROGETTO E TRAINING DI MLP

  2. infine 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 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. 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 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: • - • -

  4. Teoricamente: va scelto in accordo con il valore dell’autovalore per la specifica direzione di ricerca Soluzione alternativa: adattamento dinamico per ciascun peso Sij: media dei gradienti precedenti Dij: gradiente corrente altrimenti 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 LIBERITUNING PIÙ DIFFICOLTOSO LA SCELTA DI UN LEARNING RATE UGUALE PER TUTTI I NODI È DETTATA DALLA SEMPLICITÀ IMPLEMENTATIVA PT-3 Praticamente: difficilmente realizzabile REGOLA DI ADATTAMENTO DELTA-BAR-DELTA

  5. Errore locale Attività locale Derivata della non linearità Somma degli errori pesati provenienti dallo strato successivo 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 Differenti neuroni nascosti con diversi punti di funzionamento (valore di net) producono un aggiornamento dei pesi molto diverso

  6. maggior potenza minimi locali divergenza maggior costo computazionale PROCEDURE DI RICERCA PT-5 • Ricerca locale - Metodi del gradiente: - Metodi del II°ordine: estrema semplicità minimi locali divergenza • 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. d   F  x  = F  x  + F  x   x – x   d x x = x 2 1 d 2   + - - - F  x   x – x  + 2 2 d x  x = x n 1 d n   + - - - - - F  x   x – x  + n ! n d x  x = x SP-1 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* Possiamo approssimare la F(x) troncando la serie ad un numero finito di termini

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

  10. SP-3 Grafico delle Approssimazioni

  11. 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.     x x x x F   = F   + F    x – x  + F    x – x  1 1 2 2  x  x   x x x x = = 1 2 2  1  2    x x + + F    x – x  + - - - F    x – x  n n 1 1    x 2 2 x x x x = =  x n 1 2 1     x + - - - F    x – x   x – x  + 1 1 2 2  2  x  x x x = 1 2 SP-5 Caso Vettoriale

  13. 2 2 2    x x x F   F    F     x  x  x  x 2 x F    x 1 2 1 n  x 1 1 2 2 2     x x x x F   F   F    F   2 x x  F   =  x 2  F   =  x  x  x  x  x 2 2 1 2 n 2      2 2 2 x F       x x x x F   F    F   n 2  x  x  x  x  x n 1 n 2 n SP-6 Forma Matriciale T   x x x x x F   = F   +  F    –   x x = 1 T    2 x x x x x + - - -  –   F    –  +  2 x x = Gradiente Hessiano

  14. T p x  F   - - - - - - - - - - - - - - - - - - - - - - - p SP-7 Derivate Direzionali 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: Derivata prima (pendenza) di F(x) lungo il vettore p: T 2 p x p  F   Derivata seconda (curvatura) di F(x) lungo il vettore p: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 2 p

  15. 1 1 – 1 T 1 0 p x  F   - - - - - - - - - - - - - - - - - - - - - - - = - - - - - - - - - - - - - - - - - - - - - - - - = - - - - - - - = 0 p 2 1 – 1 SP-8 Esempio 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. SP-9 Grafici Derivate direzionali 1.4 1.3 x2 1.0 0.5 0.0 x2 x1 x1

  17. SP-10 Minimi 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. SP-11 Esempio Scalare Strong Maximum Strong Minimum Global Minimum

  19. SP-12 Esempio Vettoriale

  20. 1 T T    x x x x x x x x x 2 F   = F  +   = F   +  F    + - - -   F    +   2 x x x x = = SP-13 Condizioni di Ottimalità del Primo-Ordine 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. T z H z 0 > T z H z 0 ³ SP-14 Condizioni del Secondo-Ordine 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: 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: Per qualunque z.

  22. 2 2 x F   = x + 2 x x + 2 x + x 1 1 2 1 2 SP-15 Esempio (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. 1 T T x x = - - - A x + d x + ( ) F c 2 x = A x + d Ñ ( ) F x = A Ñ ( ) F 2 SP-16 Funzioni Quadratiche (A simmetrica) Gradiente e Hessiano: Utili proprietà del gradiente: T T x Q x = Q x + Q x = 2 Q x (per Q simmetrica) Ñ Gradiente di una funzione quadratica: Hessiano di una funzione Quadratica :

  24. 1 T T x x = - - - H x + d x + ( ) F c 2 SP-17 Forma quadratica 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. 0  0 1 0   0 T T 2 H ' B H B  H = B L B =   = =    0 0   n SP-18 Autovalori e autovettori di H Consideriamo una funzione quadratica che ha un punto di stazio- narietà nell’origine, e il cui valore sia zero. 1 T x = - - - x H x ( ) F 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.

  26. T T p x p p H p 2  F   - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - = - - - - - - - - - - - - - - - 2 2 p p T p H - - - - - - - - - - - - - - 2 p SP-19 Derivata seconda direzionale 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’: Dove c e’ la rappresentazione di p rispetto agli autovettori (nuova base): n 2   c i i T T T T p c B B  B B c c  c   i = 1 - = - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - = - - - - - - - - - - - - - - = - - - - - - - - - - - - - - - - - - - - T T T n c B B c c c 2  c i i = 1

  27. 0 0  0 T T c B p B z = = = m a x 1 0  0 T p H p   - - - - - - - - - - - - - - -   m i n m a x 2 p 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: Se scegliamo (cioe’ l’autovettore associato al massimo autovalore) Allora il vettore c e’: Posizione corrispondente a lmax

  28. SP-21 n 2   c T i i z H z m a x m a x i = 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - = - - - - - - - - - - - - - - - - - - - - = 2 n z 2  m a x   c m m a a x x i i = 1 Autovettori (Massimo Autovalore) Il valore unitario e’ in corrispondenza a poiche’ gli autovettori sono ortonormali. 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. SP-22 Esempio: Circular Hollow (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. SP-23 Esempio: Elliptical Hollow (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. 1 3 1 1 – 0.5 – 1.5 2 2 T x x x F   = – - - - x – - - - x x – - - - x = - - - 1 1 2 2 4 2 4 2 – 1.5 – 0.5 SP-24 Esempio: Autovalori di segno opposto 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. 1 1 1 1 – 1 2 2 T x x x F   = - - - x – x x + - - - x = - - - 1 1 2 2 2 2 2 – 1 1 SP-25 Esempio: Valle stazionaria Il secondo autovalore e’ nullo. Ci sarà una curvatura nulla lungo il secondo autovettore.

  33. OTTIMIZZAZIONE DELLE PRESTAZIONI

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

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

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

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

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

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

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

  42. T T x p g p =  F   = k k + 1 k x x = k + 1 OP-9 Grafico I passi successivi sono ortogonali: 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 d T x + p = x = x x + p ( h ) ( ) Ñ ( ) [ h ] F F F h k k k h k + 1 x x h k k k d d d = k k k k + 1

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

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

  45. OP-12 Grafico 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

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

  48. OP-15 Condizioni iniziali differenti 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. 1 T T - - - x = x H x + d x + ( ) F c 2 T p H p = 0 ¹ k j k j T T z H z = z z = 0 l ¹ k j k j j j k OP-17 Metodo del gradiente coniugato Funzione quadratica: Un insieme di vettori {pk} e’ mutuamente coniugato rispetto a una matrice Hessiana H definita positiva se e solo se: 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. (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?

More Related