PROGETTO E TRAINING DI MLP

Slides:



Advertisements
Presentazioni simili
Metodo di Calcolo Numerico per Equazioni differenziali Ordinarie
Advertisements

Premessa: si assume di aver risolto (correttamente
Metodi e Applicazioni numeriche nell’Ingegneria Chimica
FUNZIONI REALI DI DUE VARIABILI REALI
Dietro la Curva di Offerta: Fattori Produttivi e Costi
Le distribuzioni di probabilità continue
Apprendimento Automatico Apprendimento supervisionato
Sistema di riferimento sulla retta
Autovalori e autovettori
COORDINATE POLARI Sia P ha coordinate cartesiane
LE MATRICI.
6. Catene di Markov a tempo continuo (CMTC)
La scelta del paniere preferito
Integrazione Corso: Analisi Numerica Anno Accademico:
Elettrostatica 3 23 maggio 2011
Meccanica 8 31 marzo 2011 Teorema del momento angolare. 2° eq. Cardinale Conservazione del momento angolare Sistema del centro di massa. Teoremi di Koenig.
Meccanica 5 31 marzo 2011 Lavoro. Principio di sovrapposizione
Lez. 3 - Gli Indici di VARIABILITA’
Il mercato dei beni in economia aperta
Minimizzazione dell’energia
ELETTROMAGNETISMO APPLICATO ALL'INGEGNERIA ELETTRICA ED ENERGETICA
6. Catene di Markov a tempo continuo (CMTC)
Apprendimento di funzioni algebriche
CAPITOLO 5 Elasticità.
INFERENZA NEL MODELLO DI REGRESSIONE LINEARE MULTIPLA (parte 1)
RICHIAMI ELEMENTARI DI ALGEBRA MATRICIALE
Algoritmo di Ford-Fulkerson
Processi Aleatori : Introduzione – Parte I
Inversione differenziale della Cinematica
8. Reti di Code Nella maggior parte dei processi produttivi risulta troppo restrittivo considerare una sola risorsa. Esempio: linea tandem arrivi 1 v.
Ottimizzazione non lineare non vincolata: Metodi iterativi di eliminazione ed interpolazione per ottimizzazione di funzione di una variabile maggio '11.
Realizzazione e caratterizzazione di una semplice rete neurale per la separazione di due campioni di eventi Vincenzo Izzo.
Velocità media Abbiamo definito la velocità vettoriale media.
Sistemi di equazioni lineari
Il moto armonico Altro esempio interessante di moto è quello armonico caratterizzato dal fatto che l’accelerazione è proporzionale all’opposto della posizione:
Ricerca della Legge di Controllo
Seminario su clustering dei dati – Parte II
BIOINGEGNERIA S. Salinari Lezione 4.
TECNOLOGIE DEI SISTEMI DI CONTROLLO
BIOINGEGNERIA S. Salinari Lezione 7. RETI CON APPRENDIMENTO SUPERVISIONATO A DISTANZA Nello sviluppo delle reti neurali si è proceduto indebolendo via.
STATISTICA a.a PARAMETRO t DI STUDENT
STATISTICA a.a METODO DEI MINIMI QUADRATI REGRESSIONE
CONTROLLO DI SUPPLY CHAIN MEDIANTE TECNICHE H-INFINITO E NEGOZIAZIONE
Algoritmi e Strutture Dati
Studente Claudia Puzzo
Filtri adattativi.
PATTERN RECOGNITION.
Lezione 8 Numerosità del campione
Num / 36 Lezione 9 Numerosità del campione.
Metodi numerici per equazioni differenziali ordinarie Laboratorio di Metodi Numerici a.a. 2008/2009.
Lezione 13 Equazione di Klein-Gordon Equazione di Dirac (prima parte)
Il calcolo di radiosity
Definizione di determinante
Elementi di Informatica di base
Esercizio 10.* Un cassiere vuole dare un resto di n centesimi di euro usando il minimo numero di monete. a) Descrivere un algoritmo goloso per fare ciò.
Lezioni di Ricerca Operativa Corso di Laurea in Informatica
Laureando: Enrico Masini
Stabilità per E.D.O. (I): STABILITÀ LINEARIZZATA
TRASFORMATA DI FOURIER
I mercati dei beni e i mercati finanziari: il modello IS-LM
RETI NEURALI - 2.
APPROSSIMAZIONE DI FUNZIONI
FILTRI ANALOGICI E DIGITALI Modulo del Corso Integrato di: Progetto di Circuiti per il Trattamento dei Segnali.
MATEMATICA PER L’ECONOMIA e METODI QUANTITATIVI PER LA FINANZA a. a
1 Equazioni non lineari Data una funzione consideriamo il problema di determinare i valori x tali che Tali valori sono solitamente chiamati zeri o radici.
Metodi di minimizzazione Ricerca del minimo di dove è l’insieme delle variabili (coordinate)
Operazioni di campionamento CAMPIONAMENTO Tutte le operazioni effettuate per ottenere informazioni sul sito /area da monitorare (a parte quelle di analisi)
Sistemi di equazioni lineari. Sistemi di primo grado di due equazioni a due incognite Risolvere un sistema significa trovare la coppia di valori x e y.
Il Moto. Partendo da una quesito assegnato nei test di ingresso alla facoltà di medicina, si analizza il moto di un oggetto.
Transcript della presentazione:

PROGETTO E TRAINING DI MLP

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

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

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

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

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

SUPERFICI DI PRESTAZIONE

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

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 :

Grafico delle Approssimazioni SP-3

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

Caso Vettoriale SP-5 F x    1  = – 2 +  n -

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 =

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

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

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

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.

Esempio Scalare SP-11 Strong Maximum Strong Minimum Global Minimum

Esempio Vettoriale SP-12

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,

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.

(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.

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 =

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.

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 =

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

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

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).

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

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

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

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

OTTIMIZZAZIONE DELLE PRESTAZIONI

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.

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 – =

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

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.

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

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

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 = º

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

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

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

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

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

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à:

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)

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

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

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?

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.

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

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

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.

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

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

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

VARIAZIONI DEL BACKPROPAGATION

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)

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

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.

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

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

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

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.

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.

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

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.

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à

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

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.

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

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

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

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)

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 å

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

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 å

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 =

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 =

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.

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

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

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

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

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