RETI NEURALI Corso di Circuiti e Algoritmi per il Trattamento dei Segnali SISTEMI ADATTATIVI SA-1 INTRODUCONO UN MODO INNOVATIVO DI CONCEPIRE IL PROGETTO: OUTPUT DESIDERATO SISTEMA ADATTATIVO OUTPUT MODIFICA DEI PARAMETRI ALGORITMO DI TRAINING ERRORE FUNZIONE COSTO INPUT piuttosto che costruire il sistema con specifiche stabilite a priori, i dati esterni al sistema vengono utilizzati per settare i parametri TRA I DIVERSI SISTEMI ADATTATIVI VI SONO LE RETI NEURALI: nelle reti neurali supervisionate l’addestramento è condotto utilizzando un training set spesso costituito dalle coppie di valori d’ingresso e di uscita desiderata PROGETTO DI UN SISTEMA ADATTATIVO • Scelta della topologia • Scelta del training set • Scelta di un criterio per Allo stato attuale misurare le prestazioni del sistema SA-2 Si conoscono topologie in grado di creare mappatori universali Si sanno implementare algoritmi di training IL CORSO È MIRATO AL TRATTAMENTO DEI SEGNALI CHE STA ALLA BASE DI MOLTE APPLICAZIONI INGEGNERISTICHE Costruzione di un modello Decodifica SISTEMA FISICO REALE PREDIZIONE Misure • Modelli lineari MODELLO FORMALE • Modelli non-lineari • Modelli alternativi (es. neurali ) MODELLI LINEARI SA-3 Un’alternativa consiste nel “fittare” i dati con un modello lineare REGRESSIONE LINEARE Raccolta dati: • devono essere sufficienti • devono contenere le informazioni principali • devono essere liberi da rumore (tanto più quanto è possibile) ADALINE (Adaptive Linear Element) xi x : input d d : output desiderato • •• • • • • •• w yi S +1 Es. b PE Processore elementare (PE) Adaline. Realizzazione hardware d wx b di wxi bi i yi i yi : valore fittato lineramente i : errore d' approssima zione w : pendenza della retta b : bias x SA-4 Problema: ricavare w, b affinché la linea di fittaggio passi il più vicino possibile a tutti i punti PROGETTO TRADIZIONALE i di yi di (wxi b) Metodo dei minimi quadrati: minimizzare la somma dei quadrati degli scostamenti CRITERIO DI OTTIMALITÀ: errore quadratico medio (MSE) J N 1 i2 N : numero d’osservazioni 2 N i 1 b Minimizzazione per via analitica J 0 b ; J 0 w w x valor medio di x d valor medio di d xi2 di xi xi di i i i i N ( xi x ) 2 i ( xi x ) (di d ) i ( xi x )2 i Dimostrazione: SA-5 J 1 (di wxi b) 2 1 (di wxi b) 0 b 2 N i b i N 2 J 1 ( d wx b ) 1 i i (di wxi b) w 0 w 2 N i w i N d i Nb w xi i i 2 x d b x w x i i i i i i i Si può dimostrare che la linea di regressione passa per il punto: xi di i i ; N N b w xi2 di xi xi di i i i i 2 N xi2 xi i i 1 x d x d i i i i N i i i 1 2 x x i i N i i CENTROIDE DELLE OSSERVAZIONI 2 SVANTAGGIO: “TIME CONSUMING” per grossi insiemi di dati SA-6 CALCOLO DELLE PRESTAZIONI DEL MODELLO • L’MSE ha problemi di scala: se scaliamo i dati l’MSE cambia senza che cambi il modo con cui la retta fitta i dati COEFFICIENTE DI CORRELAZIONE r con : r 1 ( xi x )(di d ) N i 1 2 1 ( d d ) i ( xi x )2 N i N i 1 N x xi N i 1 media 1 N xi x 2 N i 1 varianza 2 2 1 2 xi x deviazione standard N i Allora il numeratore di r è la covarianza delle due variabili e il denominatore è il prodotto delle corrispondenti deviazioni standard r 1;1 È UNA PROPRIETÀ INSITA NEI DATI SA-7 r=1 correlazione perfetta lineare positiva (x e d covariano) r = -1 correlazione perfetta lineare negativa r=0 x e d sono scorrelate r2 rappresenta la quantità di varianza presente nei dati e catturata da una regressione lineare ottima NOTA 1 NOTA 2 Il metodo dei minimi quadrati può essere generalizzato per polinomi di grado superiore (quadratiche, cubiche, etc.) e si ottiene una REGRESSIONE NON LINEARE Il metodo può essere esteso al caso di variabili multiple la retta di regressione x diventa un iperpiano nello spazio delle SA-8 PROGETTO ADATTATIVO d (b , w) i y i _ + xi d1 MODIFICA DEI PARAMETRI SISTEMA ADATTATIVO LINEARE • • • • y = wx + b di y Il progetto di un sistema adattativo supervisionato si basa su: un sistema con parametri adattativi una risposta desiderata un criterio di ottimalità da minimizzare un metodo per calcolare i parametri ottimi i b d x 2 x1 x xi 2 UN SISTEMA ADATTATIVO ALLENATO SUL TRAINING SET POSSIEDE CAPACITÀ DI GENERALIZZARE Nel caso in esame il sistema è lineare con parametri w,b; il criterio di ottimalità è il MSE. Occorre trovare una procedura sistematica per la modifica dei parametri. Tale procedura è una procedura di ricerca del minimo di una funzione SA-9 Hp: b = 0 (rimuoviamo le medie di x e d ) La funzione obiettivo o costo è: J 1 (di wxi )2 N i Nel piano J-w è una parabola e viene chiamata SUPERFICIE DI PRESTAZIONE STEEPEST DESCENT METHOD J J ( 0) Punto Iniziale J (1) J ( 2) Il gradiente di J è un vettore che punta verso la direzione di massimo cambiamento e con ampiezza pari al coefficiente angolare della tangente alla curva J nel punto considerato Jmi n w(0) J (0) w* w(1) J (1) w J J ( w) w METODI DEL GRADIENTE SA-10 Fanno uso delle informazioni relative al gradiente.Vantaggi: • Il gradiente può essere calcolato localmente • Il gradiente punta nella direzione di massimo cambiamento METODO DELLA DISCESA PIÙ RIPIDA La ricerca è condotta nella direzione opposta al gradiente 1. Calcolare J in un punto iniziale w(0) w(1) w(0) J (0) w(k 1) w(k ) J (k ) ( piccola costante) 2. Modificare w(0) proporzionalmente al gradiente negativo 3. Iterare la procedura precedente • Se è piccolo la procedura converge a w* • Spesso il gradiente non è noto esplicitamente • Metodi di stima del gradiente • Widrow (1960) propone un algoritmo basato sull’uso del valore istantaneo METODO LEAST MEAN SQUARE (LMS) 1 N 2 1 2 J ( d wx ) i i i 2 N i 1 2N i w J (k ) poiché SA-11 J w J (k ) w J 1 1 2 1 2 ( k ) (di wxi ) 2 (k ) x(k ) i w (k ) w (k ) 2 N i 2 w (k ) 2 w (k ) Cioè si assume di rimuovere la sommatoria e definire la stima del gradiente al passo k come il suo valore istantaneo. Il metodo della discesa più ripida diventa: w(k 1) w(k ) J (k )stimato w(k ) (k ) x(k ) : STEPSIZE o LEARNING RATE Questo algoritmo effettua l’aggiornamento del peso w campione dopo campione: TRADING ON LINE (o sequenziale) • EPOCA: presentazione dell’intero campione degli ingressi TRAINING BATCH SA-12 Si calcolano i valori degli aggiornamenti durante un’epoca, si sommano questi valori e si apporta la modifica Vantaggi: si segue meglio il gradiente evitando traiettorie a zig-zag. Facilità di implementazione in parallelo NOTA: è buona norma rendere random l’ordine di presentazione del trainig set da un’epoca all’altra Svantaggi: maggior immagazzinamento di dati; facilità di intrappolamento in minimi locali (se esistenti) VALIDAZIONE / TESTING •VALIDATION SET Se il decadimento delle prestazioni è inaccettabile è segno che la quantità e qualità dei dati nel trainig set è inadeguata SA-13 Coefficiente di correlazione nei sistemi adattativi ( yi d )2 i ~ r ~ r 1;1 i ( yi d ) i 2 ( y d ) i i (di d ) Approssima r anche durante la procedura di adattamento i CURVA DI LEARNING w(k ) w(k 1) w(k ) (k ) x(k ) crescente : tasso di learning (scelto dal progettista) •Se è troppo piccoloconvergenza lenta J •Se è troppo grande può divergere Jmin Numero di Iterazioni •Si può cercare un modo per calcolare il massimo valore di che garantisce la convergenza SA-14 WEIGHT — TRACK 1 2 1 troppo piccolo 1 troppo grande w(k) w(0) w(1) w(k) w* w(0) w(2) w* w(1) w(k) w(0) w(0) w(0) w(0) w* w* w* # iterazioni # iterazioni w(2) w* w(1) # iterazioni SA-15 • Nel caso dei metodi steepest-descent, per costante, si ha la convergenza asintotica • Si può dimostrare che: < max 2 con • Nel learning batch si deve usare un valore di 1 xi2 N i normalizzato: /N • Nel learning on-line (N=1) si usa la stima istantanea del gradiente che è, quindi, affetta da errore. Si deve introdurre un fattore di sicurezza. Es: < /N • Costante di tempo della procedura di adattamento (pendenza dell’esponenziale decrescente nella weight-track) 1 dopo 4 5 costanti di tempo la procedura di adattamento può considerarsi conclusa • Fenomeno del rattling J Non si arriva a stabilizzare la soluzione ( troppo alto) Jmin w SA-16 Soluzione di compromesso: alto all’inizio del processo iterativo e via via decrescente. Es: (k 1) (k ) ( piccola costante) Possono essere usati schemi alternativi (regole geometriche, logaritmiche, etc.) REGRESSIONE PER VARIABILI MULTIPLE Sia d funzione di x1 , x2 , . . . , xd d La migliore regressione lineare sarà un iperpiano di dimensione D. Es : D=2 y w1x1 w2 x2 b i di ( w1x1 w2 x2 b) In generale: D D i di wk xik b di wk xik k 1 k 0 posto xi 0 1 e w0 b b x x 1 2 L’obiettivo della regressione è quello di trovare i pesi w1 , w2 , . . . wd cioè w = [w1 , w2 , . . . wd] che minimizzi lo scarto quadratico medio (MSE) su tutti gli N punti. SA-17 PROCESSORE ELEMENTARE Il PE che realizza la regressione lineare è: x1i w di 1 x2i w 2 wD S yi _ i +1 ADALINE da cui D xij di wk xik xij i k 0 i J 0,, D 1 d w x i k ik 2N i k 0 2 xDi b J D Analiticamente J J J 0; 0 ;; 0 w0 w1 wD con D J 1 xij di wk xik 0 w j N i k 0 Sistema di D+1 equazioni normali nelle D+1 incognite wk Sono equazioni facilmente risolvibili MATRICE DI AUTO CORRELAZIONE N 1 Rkj xik xij N i 1 Autocorrelazione tra i campioni k e j R00 R0 D R RD 0 RDD Matrice di auocorrelazione Sostituendo nelle equazioni normali: xij di i 1 N Pj xij di N i 1 COEFF. DI CORRELAZIONE MULTIPLO rm wk xik xij rm i Si ottiene: p Rw w* R 1 p Soluzione ottima Cross-correlazione dell’ingresso per l’indice j e la risposta desiderata p P0 P D T D k 0 SA-18 con w*T U x d Nd 2 d T d Nd 2 x11 xN 1 matrice dei Ux dati di input x1D xND Si può dimostrare che la funzione costo può essere espressa come: SA-19 N di J 0,5w R w p w i 1 2 N T Imponendo: T J 0 Rw* p 0 w* R 1 p già ricavata J Es: D=2 w*2 w 2 w*1 w1 J = cost w*1 w*2 Jmin w1 w* J min 0,5R 1T w 2 Sostituendo w* nella J : pT RR1 p pT R 1 p i di 1 1 d pT w* i 2N 2 2 i 2N SA-20 METODI DELLA DISCESA PIÙ RIPIDA J J J , , w w 0 D T w(k 1) w(k ) J (k ) METODO LEAST MEAN SQUARE (LMS) w(k 1) w(k ) (k ) x(k ) k) è l’errore corrente wi (k 1) wi (k ) (k ) xi (k ) NOTA possono essere utilizzati differenti algoritmi di ricerca del minimo quali: – Newton – Quasi-Newton – etc. SISTEMA ADATTATIVO x x1 .2. . xN d1 d2 ... dN Sistema Incognito Adaline SA-21 y y1 .2. . yN + Non conosciamo la regola per generare d noto x ma siamo in grado di misurarli sperimentalmente. Vogliamo generare un modello che approssimi bene anche in fase di generalizzazione. Per fare ciò: • I dati del training devono coprire bene tutta la “casistica” • Ci devono essere sufficienti dati nel training set • Il coefficiente rm deve essere prossimo all’unità