FILTRI ANALOGICI E DIGITALI
Modulo del Corso Integrato di:
Progetto di Circuiti 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.
di  wxi  bi   i  yi   i
b
PE
Processore elementare (PE) Adaline.
Realizzazione hardware
d  wx  b
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
 (d i  wxi  b) 2
1
1




i N (di  wxi  b)  0

b 2 N i
b

2

(
d

wx

b
)

J
1
1
i
i




(d i  wxi  b) xi  0

 w 2 N 

w
N
i
i
 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
N
1
N
 ( x  x )(d
 (d
i
i
d)
i
i
1 N
x   xi
N i 1
media
1 N
    xi  x 2
N i 1
varianza
2
d)
i
2
1
N
 (x  x)
i
2
i
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 diventa un
iperpiano nello spazio delle x
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 SQUARED (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 
1 
2
2
2




(
k
)

(
d

wx
)
  (k )  x(k )

i
k
k
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:
TRAINING 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 piccoloconvergenza 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  
1
 xi2
N i
• Nel learning batch si deve usare un valore di  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
b
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
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 RR1 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à