Upload
giselle-rosario-ribas
View
29
Download
2
Embed Size (px)
DESCRIPTION
Regressione Non Lineare
Citation preview
METODI DIRETTI e INVERSI
13 – REGRESSIONE NON LINEARE
Antonio Emolo
Dipartimento di Scienze Fisiche – 2Ma23
081 676822
www.docenti.unina.it/antonio.emolo
Metodi Diretti e Inversi
Metodo di Newton
Consideriamo un sistema non-lineare di N equazioni in N
incognite
Per risolvere tale sistema, ci proponiamo di costruire una
successione di vettori
che converga ad una soluzione x* del sistema.
2 13 - Regressione non lineare
0mF )(
,,, 21xxx
0
Metodi Diretti e Inversi
Metodo di Newton
Se F è continua insieme alle sue derivate, è possibilecostruire un’approssimazione in serie di Taylor di F intornoad una soluzione di prova x0, arrestata al primo ordine:
dove
è il jacobiano di F calcolato in x0.
3 13 - Regressione non lineare
xxFxFxxF 000
N
NN
N
x
F
x
F
x
F
x
F
00
00
00
xx
xx
xFJxF
1
1
1
1
Metodi Diretti e Inversi
Metodo di Newton
Se x= x*- x0, è allora possibile ottenere un’equazione per
la differenza (approssimata!) tra la soluzione iniziale x0 e la
soluzione incognita x* data da
Risolvendo tale equazione per x= x*- x0 si trova
Tale equazione è alla base del metodo di Newton.
4 13 - Regressione non lineare
xxFxF0xF 00 *
00 xFxxF
Metodi Diretti e Inversi
Metodo di Newton
Algoritmo 13.1 - Metodo di Newton
Dato un sistema di equazioni F(x)=0 e una soluzione
iniziale x0, bisogna ripetere i passi successivi per calcolare
una successione di soluzioni x1, x2, … arrestandosi quando
la successione converge a una soluzione di F(x)=0:
1. usare la tecnica dell’eliminazione di Gauss per
determinare x risolvendo l’equazione
2. porre xk+1= xk+x;
3. porre k=k+1
5 13 - Regressione non lineare
kk xFxxF
Metodi Diretti e Inversi
Metodo di Newton
Le proprietà teoriche del metodo di Newton sono
riassunte nel seguente
Teorema 13.1
Se la soluzione iniziale x0 è sufficientemente “vicina” alla
soluzione incognita x*, la funzione F(x) è continua insieme
alle sue derivate in un intorno di x* e J[F(x*)] è non-
singolare, allora la successione generata con il metodo di
Newton converge a x*. La “velocità” di convergenza è di
tipo quadratico nel senso che esiste una costante c tale che,
per grandi valori di k risulta
6 13 - Regressione non lineare
2
*
2xxxx kk1k c
Metodi Diretti e Inversi
Metodo di Newton
In termini pratici la convergenza quadratica vuol dire che
man mano che ci avviciniamo alla soluzione x*, il numero di
cifre decimali esatte presenti nella soluzione raddoppia ad
ogni iterazione.
Sfortunatamente, se le ipotesi del teorema 13.1 precedente
non sono soddisfatte il metodo di Newton può convergere
molto lentamente o addirittura non convergere affatto.
7 13 - Regressione non lineare
Metodi Diretti e Inversi
Metodo di Newton
È possibile apportare una semplice modifica al metodo di
Newton che spesso risulta utile nei problemi di convergenza.
Nel metodo di Newton smorzato si utilizzano le equazioni
del metodo di Newton per calcolare, a ciascuna iterazione, la
direzione verso la quale muoversi.
In altri termini, invece di considerare l’intervallo completo xk+x
per definire la nuova soluzione di prova, cerchiamo lungo la linea
che congiunge xk con xk+x il punto che minimizza la quantità
e quindi consideriamo lo step a x che minimizza tale norma.
8 13 - Regressione non lineare
2
xxFk a
Metodi Diretti e Inversi
Metodo di Newton
Supponiamo adesso di voler trovare il punto in cui è
minima la funzione a valori scalari f(x).
Se assumiamo che f(x) sia continua con le sue derivate
prima e seconda, possiamo scriverne l’approssimazione in
serie di Taylor
9 13 - Regressione non lineare
xxHxxxxxx 0000 ffffTT
2
1
Metodi Diretti e Inversi
Metodo di Newton
dove
è il gradiente e
è l’Hessiano.
10 13 - Regressione non lineare
Nx
f
x
f
f0
0
0
x
x
x 1
2
2
1
2
1
2
2
1
2
NN
N
x
f
xx
f
xx
f
x
f
f00
00
0
xx
xx
xH
Metodi Diretti e Inversi
Metodo di Newton
Condizione necessaria affinché il punto x* sia un minimoper f(x) è che
Possiamo allora approssimare il gradiente di f(x) in unintorno di x0 mediante la relazione
Ponendo uguale a zero l’espressione approssimata delgradiente di f(x) si ricava
Risolvendo tale equazione in step successivi si ricava ilmetodo di Newton per minimizzare la funzione f(x).
11 13 - Regressione non lineare
0x *f
xxHxxx 000 fff
00 xxxH ff
Metodi Diretti e Inversi
Metodo di Newton
Algoritmo 13.2 - Metodo di Newton per
minimizzare la funzione f(x)
Data la funzione f(x) continua insieme alle sue derivate
prima e seconda e una soluzione iniziale x0, bisogna
ripetere i passi successivi per calcolare una successione di
soluzioni x1, x2, … arrestandosi quando la successione
converge a una soluzione tale che f(x)=0:
1. determinare x risolvendo l’equazione
2. porre xk+1= xk+x;
3. porre k=k+1
12 13 - Regressione non lineare
kk xxxH ff
Metodi Diretti e Inversi
Metodo di Newton
Le proprietà teoriche del metodo di Newton per
minimizzare f(x) sono riassunte nel seguente
Teorema 13.2
Se la funzione f(x) è continua insieme alle sue derivate
prima e seconda in un intorno di un punto di minimo locale
x*, esiste una costante l tale che
per ogni vettore y in un intorno di x*, la matrice H[f(x*)] è
definita positiva e x0 è sufficientemente vicino a x*, allora il
metodo convergerà quadraticamente a x*.
13 13 - Regressione non lineare
22
yxyHxH lff
Metodi Diretti e Inversi
Metodo di Newton
Quando converge, il metodo di Newton per minimizzare la
funzione f(x) è davvero efficiente.
Come nel caso del metodo di Newton per i sistemi di
equazioni, anche in questo caso le proprietà di convergenza
dell’algoritmo possono essere migliorate utilizzando una
ricerca lineare.
14 13 - Regressione non lineare
Metodi Diretti e Inversi
I metodi di Gauss-Newton e Levenberg-
Marquadt
Il metodo di Newton per i sistemi di equazioni non è
direttamente applicabile nella maggior parte delle
regressioni non-lineari e dei problemi inversi dal momento
che, in generale, non abbiamo lo stesso numero di dati e
parametri e poi non è detto che esista una soluzione esatta
al problema G(m)=d.
È invece possibile utilizzare il metodo di Newton per
minimizzare un problema non-lineare ai minimi quadrati.
15 13 - Regressione non lineare
Metodi Diretti e Inversi
I metodi di Gauss-Newton e Levenberg-
Marquadt
Nello specifico, consideriamo il problema di voler eseguire
il fit un vettore di N dati d con una funzione descritta da un
vettore m di M parametri. Supponiamo anche di avere a
disposizione un vettore s che contiene le deviazioni
standard associate alle misure. Ipotizziamo che i parametri e
i dati siano collegati da una sistema non-lineare di equazioni
del tipo G(m)=d
L’obiettivo consiste nel ricercare i parametri che
definiscono la funzione che “fitta” al meglio i dati nel senso
della norma-2 dei residui.
16 13 - Regressione non lineare
Metodi Diretti e Inversi
I metodi di Gauss-Newton e Levenberg-
Marquadt
Come nel caso della regressione lineare, assumiamo che gli
errori di misura siano normalmente distribuiti. In tal caso, in
accordo con il principio di massima verosimiglianza, bisogna
minimizzare la somma dei quadrati degli scarti normalizzati
per i rispettivi errori.
In particolare, cerchiamo di minimizzare la funzione
17 13 - Regressione non lineare
N
i i
iid
f1
2
)()(
s
mGm
Metodi Diretti e Inversi
I metodi di Gauss-Newton e Levenberg-
Marquadt
Per comodità, poniamo
In tal caso risulta
18 13 - Regressione non lineare
)(
)(
)(
,,2,1con ,)(
)(
1
m
m
mF
mGm
N
i
iii
f
f
Nid
f
s
N
i
iff1
2)()( mm
Metodi Diretti e Inversi
I metodi di Gauss-Newton e Levenberg-
Marquadt
Il gradiente di f(m) può essere scritto come la somma dei
gradienti dei singoli termini:
Notiamo che risulta
che in notazione matriciale si scrive
19 13 - Regressione non lineare
N
i
iff1
2)()( mm
N
i
jjij ff1
)()(2)( mFmm
)()(2)( mFmJmT
f
Metodi Diretti e Inversi
I metodi di Gauss-Newton e Levenberg-
Marquadt
essendo J(m) il Jacobiano:
20 13 - Regressione non lineare
M
NN
M
m
f
m
f
m
f
m
f
)()(
)()(
)(
1
1
1
1
mm
mm
mJ
Metodi Diretti e Inversi
I metodi di Gauss-Newton e Levenberg-
Marquadt
In maniera del tutto simile è possibile esprimere l’Hessiano
di f(m) in termini degli elementi fi(m):
dove Hi(m) è l’Hessiano di [fi(m)]2.
21 13 - Regressione non lineare
N
i
N
i
iff11
2)()( mHmHmH
i
Metodi Diretti e Inversi
I metodi di Gauss-Newton e Levenberg-
Marquadt
L’elemento jk di Hi(m) è dato da:
22 13 - Regressione non lineare
kj
ii
k
i
j
i
k
ii
j
i
kj
i
jk
mm
ff
m
f
m
f
m
ff
m
fmm
H
)()(
)()(2
)()(2
)()(
2
22
mm
mm
mm
mm
Metodi Diretti e Inversi
I metodi di Gauss-Newton e Levenberg-
Marquadt
In definitiva risulta
essendo
23 13 - Regressione non lineare
)()()(2
)(1
mQmJmJ
mHmH i
T
N
i
f
N
i
ii ff1
)()(2)( mHmmQ
Metodi Diretti e Inversi
I metodi di Gauss-Newton e Levenberg-
Marquadt
Nel metodo di Gauss-Newton (GN) si trascurasemplicemente il termine Q(m) approssimando l’Hessianocon
Nel contesto della regressione non-lineare ci aspettiamoche i termini fi(m) diventino ragionevolmente piccoli manmano che ci avviciniamo alla soluzione ottimale m* in modoche l’approssimazione fatta per definire l’Hessiano risultivalida.
Tale approssimazione non è tuttavia ragionevole nel caso diproblemi non-lineari ai minimi quadrati nei quali i valori difi(m) sono grandi.
24 13 - Regressione non lineare
)()(2)( mJmJmHT
f
Metodi Diretti e Inversi
I metodi di Gauss-Newton e Levenberg-
Marquadt
Dividendo l’equazione
per 2 si ricavano le equazioni per le iterazioni successive nel
metodo GN:
Al primo membro di questa equazione abbiamo una matrice
simmetrica e semi-definita positiva.
Se la matrice, oltre ad essere simmetrica, è nei fatti definita
positiva possiamo allora risolvere il sistema di equazioni
utilizzando il metodo della fattorizzazione di Cholesky.
25 13 - Regressione non lineare
)()(2)( mJmJmHT
f
)()()()( kTkkTk mFmJmmJmJ
Metodi Diretti e Inversi
I metodi di Gauss-Newton e Levenberg-
Marquadt
Sebbene il metodo GN spesso funzioni in maniera
soddisfacente, esso, essendo basato sul metodo di Newton,
può spesso fallire per diverse ragioni.
Ad esempio, il metodo fallisce sicuramente se la matrice
è singolare.
26 13 - Regressione non lineare
)()( kTk mJmJ
Metodi Diretti e Inversi
I metodi di Gauss-Newton e Levenberg-
Marquadt
Nel metodo di Levenberg-Marquadt (LM) le equazioniricorsive del metodo GN sono modificate come
Il parametro (positivo) l viene “aggiustato” nel corsodell’esecuzione dell’algoritmo in modo tale da garantire laconvergenza.
Una ragione fondamentale per usare valori positivi per l è che lapresenza del termine lI assicura che la matrice al primomembro sia non-singolare.
Dal momento che, allora, la matrice è simmetrica e definitapositiva, possiamo risolvere il sistema col metodo dellafattorizzazione di Cholesky.
27 13 - Regressione non lineare
)()()()( kTkkTk mFmJmImJmJ l
Metodi Diretti e Inversi
I metodi di Gauss-Newton e Levenberg-
Marquadt
Per valori molto grandi di l risulta
e
Il metodo diventa in tal caso di tipo steepest-descend nel
senso che l’algoritmo si muove giù nella direzione del
gradiente allo scopo di ridurre più rapidamente il valore di
f(m).
L’approccio steepest-descend, pur essendo molto lento dal
punto di vista computazionale, garantisce la convergenza.
28 13 - Regressione non lineare
IImJmJ ll )()( kTk
)(1
mm fλ
Metodi Diretti e Inversi
I metodi di Gauss-Newton e Levenberg-
Marquadt
Di contro, per valori molto piccoli di l, il metodo LM
ritorna al metodo GN che è potenzialmente più veloce ma
incerto per quanto riguarda la convergenza.
29 13 - Regressione non lineare
Metodi Diretti e Inversi
I metodi di Gauss-Newton e Levenberg-
Marquadt
Uno degli aspetti fondamentali del metodo LM consiste nel
determinare il valore ottimale di l.
La strategia generale è di cominciare usando valori molto
piccoli per l in situazioni nelle quali il metodo GN sembra
funzionare bene ma cambiare a valori maggiori quando il
metodo GN non sembra fare progressi.
30 13 - Regressione non lineare
Metodi Diretti e Inversi
I metodi di Gauss-Newton e Levenberg-
Marquadt
Un semplice approccio al problema consiste nel cominciare
con un valore piccolo per l e di riaggiustarlo ad ogni
iterazione: se il metodo LM conduce ad una riduzione di
f(m) allora conserviamo questa iterazione e riduciamo l per
un fattore moltiplicativo costante (ad esempio, ½) prima
dell’iterazione successiva; se invece LM non porta ad una
riduzione di f(m) allora non conserviamo l’iterazione e
aumentiamo l per un fattore moltiplicativo costante (ad
esempio, 2) e riproviamo di nuovo ripetendo questo
procedimento fino a quando non si trova una iterazione
nella quale f(m) diminuisce.
31 13 - Regressione non lineare
Metodi Diretti e Inversi
I metodi di Gauss-Newton e Levenberg-
Marquadt
Anche se implementazioni robuste dell’algoritmo LM usano
strategie più sofisticate per riaggiustare il valore di l, la
semplice strategia descritta in precedenza funziona
piuttosto bene.
32 13 - Regressione non lineare
Metodi Diretti e Inversi
I metodi di Gauss-Newton e Levenberg-
Marquadt
Il termine lI nel metodo LM, anche se assomiglia molto altermine di regolarizzazione di Tikhonov
non è il suo equivalente.
Il termine lI viene utilizzato per stabilizzare la soluzionedeterminando la direzione nella quale eseguire la ricerca.
Dal momento che il termine lI è usato solo per migliorarela convergenza dell’algoritmo e non entra nella funzioneobiettivo da minimizzare, esso non regolarizza il problemanon-lineare ai minimi quadrati.
Il problema della regolarizzazione dei problemi non-linearisarà affrontato nel Modulo 14.
33 13 - Regressione non lineare
dGmIGG TT 2a
Metodi Diretti e Inversi
Aspetti statistici
Ricordiamo dal Modulo 3 che se un vettore d ha unadistribuzione normale multivariata e A è una matrice didimensioni appropriate, allora anche Ad possiede unadistribuzione normale multivariata con matrice di covarianza adessa associata data da
Abbiamo applicato questa formula al problema ai minimi quadratiper Gm=d che abbiamo risolto con le equazioni normali. Larelazione risultante per Cov(m) era
Nel caso semplice per il quale Cov(d)=s2I, si trovava
34 13 - Regressione non lineare
TAdAAd )Cov(Cov
11
2
GGGdGGGm
TTT )Cov(Cov L
12
2
GGm
TsLCov
Metodi Diretti e Inversi
Aspetti statistici
Nei problemi di regressione non-lineare, non avendo a
disposizione una relazione lineare che lega i dati ai
parametri del modello, non possiamo assumere che i
parametri abbiano una distribuzione normale multi-variata e
quindi non possiamo usare le formule precedenti.
In ogni caso siamo interessati a capire quanto (piccole)
perturbazioni nei dati si ripercuotano in (piccole?)
perturbazioni nel modello.
35 13 - Regressione non lineare
Metodi Diretti e Inversi
Aspetti statistici
Consideriamo allora un’approssimazione linearizzata della
funzione di misfit F(m)
Sotto questa approssimazione, esiste una relazione lineare
tra i cambiamenti in F e i cambiamenti nei parametri m:
La matrice J(m*) prende allora il posto di G in una stima
approssimata della matrice di covarianza dei parametri del
modello.
36 13 - Regressione non lineare
mmJmFmmF )()()( ***
mmJF )( *
Metodi Diretti e Inversi
Aspetti statistici
Ricordiamo anche che abbiamo incorporato la deviazione
standard sui dati si direttamente nella definizione di f(m).
La matrice di covarianza dei dati è allora data dalla matrice
identità e quindi possiamo scrivere
A differenza di quanto accade nella regressione lineare, la
matrice di covarianza dei parametri, nel caso di regressione
non-lineare, non è esatta.
37 13 - Regressione non lineare
1*** )()()(
mJmJmT
Cov
Metodi Diretti e Inversi
Aspetti statistici
La matrice di covarianza e gli intervalli di confidenza nel
caso non-lineare dipendono criticamente da quanto è
accurata l’approssimazione linearizzata
Se la linearizzazione non è accurata sull’intervallo di modelli
probabili allora gli intervalli di confidenza risultanti non
saranno corretti.
La propagazione Monte Carlo degli errori, discussa nel
Modulo 6, fornisce un modo alternativo, anche se costoso dal
punto di vista computazionale, per stimare Cov(m*).
38 13 - Regressione non lineare
mmJF )( *
Metodi Diretti e Inversi
Aspetti statistici
Come nel caso della regressione lineare, possiamo eseguire
un test c2 di bontà del fit.
L’adeguatezza di questo test dipende anche da quanto bene
il modello non-lineare è approssimato dalla linearizzazione
in termini del Jacobiano per punti prossimi ai valori ottimali
dei parametri.
Nella pratica, tale approssimazione risulta in generale
appropriata a meno che i dati non siano estremamente
rumorosi.
39 13 - Regressione non lineare
Metodi Diretti e Inversi
Aspetti statistici
Come nel caso della regressione lineare, è possibile
applicare le tecniche di regressione non-lineare quando gli
errori di misura sono indipendenti e normalmente
distribuiti e le deviazioni standard, pur essendo incognite,
sono assunte uguali fra loro.
40 13 - Regressione non lineare
Metodi Diretti e Inversi
Aspetti statistici
Se definiamo gli elementi del vettore dei residui come
una stima per la deviazione standard delle misure è data da
e quindi la matrice di covarianza approssimata per le stime
dei parametri del modello è
41 13 - Regressione non lineare
Ni-dGr iii ,,2,1con )( * m
MN
r
s
N
i
i
1
2
1**2* )()()(
mJmJmT
sCov
Metodi Diretti e Inversi
Aspetti statistici
Una volta che abbiamo a disposizione m* e Cov(m*),
possiamo costruire gli intervalli di confidenza esattamente
allo stesso modo visto nel Modulo 6.
Proprio come nel caso della regressione lineare, è anche
importante esaminare i residui alla ricerca di pattern
sistematici o di deviazioni dalla normalità.
Se non abbiamo stimato la deviazione standard s per le
misure, è allora importante valutare il valore del c2 per
avere un’idea relativamente alla bontà del fit.
42 13 - Regressione non lineare
Metodi Diretti e Inversi
Aspetti statistici
43
Esempio 13.1
Un metodo classico utilizzato in idrologia per determinare iprincipali parametri idrogeologici di un acquifero (conducibilitàidraulica, coefficiente di immagazzinamento, permeabilità, …) èlo slug test.
Tale prova consiste nel produrre una variazione istantanea dellivello in un pozzo e nel misurare il tempo necessario alripristino delle condizioni iniziali. La variazione istantanea dilivello viene ottenuta mediante l’introduzione (o l’estrazione) nelpozzo di un volume noto d’acqua o di un corpo solido di formageneralmente cilindrica.
Si tratta quindi di una prova in pozzo, eseguita in regimetransitorio, che consente di ottenere informazioni sui parametriidrogeologici dell’acquifero che si trova nelle vicinanze del pozzo.
13 - Regressione non lineare
Metodi Diretti e Inversi
Aspetti statistici
44
Supponiamo che un volume noto Q di acqua (slug) sia
iniettato in un certo pozzo e immaginiamo di osservare
l’effetto risultante in un pozzo di osservazione distante d dal
pozzo iniziale. Immaginiamo, ad esempio, di misurare
l’elevazione h del livello dell’acqua in funzione del tempo t.
Tipicamente, il livello nel pozzo di osservazione aumenta
all’inizio rapidamente per poi decrescere più lentamente.
A partire dalle misure di h, ci proponiamo di determinare il
coefficiente di immagazzinamento S, e la permeabilità T
dell’acquifero.
13 - Regressione non lineare
Metodi Diretti e Inversi
Aspetti statistici
45
Il modello matematico per lo slug test è dato da
Supponiamo che Q=50m3 e d=60m.
I dati misurati (h in funzione di t) sono in tabella.
Supponiamo che le misure di h siano accurate al cm in
modo da avere si=0.01m.
13 - Regressione non lineare
TtSdetT
Qh 4/2
4
t (ore) 5 10 20 30 40 50
h (m) 0.72 0.49 0.30 0.20 0.16 0.12
Metodi Diretti e Inversi
Aspetti statistici
46
Costruiamo l’input necessario
13 - Regressione non lineare
Metodi Diretti e Inversi
Aspetti statistici
47
Risolviamo il problema ai minimi quadrati con l’algortimo
LM. A tale scopo è disponibile lo script MATLAB lm.
13 - Regressione non lineare
valori iniziali dei
parametri S e T
fun è uno script nel quale si
calcola la differenza tra i dati
predetti e quelli misurati,
normalizzati per la deviazione
standard (misfit)jac è uno script
che calcola il jacobiano
parametri
iniziali tolleranza
di arresto
numero massimo
di iterazioni
consentite
parametri
stimati
numero di
iterazioni
i dati e gli altri parametri sono
scambiati attraverso comandi
GLOBAL
Metodi Diretti e Inversi
Aspetti statistici
48
Le stime dei parametri trovate in 22 iterazioni sono
S=0.0021
T=0.5853 m2/hr
Il valore del c2 osservato è 2.04
con un corrispondente valore-p del 73%.
Ricordiamo che il numero di gradi di libertà è N-M=4.
In definitiva, il fit supera il test del c2.
13 - Regressione non lineare
Metodi Diretti e Inversi
Aspetti statistici
49 13 - Regressione non lineare
Metodi Diretti e Inversi
Aspetti statistici
50 13 - Regressione non lineare
S = 0.00207 ± 0.00012
T = 0.585 ± 0.029 m2/hr
Metodi Diretti e Inversi
Aspetti statistici
51 13 - Regressione non lineare
Disegniamo un grafico a isolinee per i valori di c2 al variare
di S e T.
Notiamo che, a differenza del caso lineare, le isolinee non
sono delle ellissi, in conseguenza della non-linearità.
10
100500
1000
2000
Metodi Diretti e Inversi
Aspetti statistici
52 13 - Regressione non lineare
In ogni caso, se facciamo uno zoom
nell’intorno alla soluzione ottimale, troviamo
che le isolinee che rappresentano i valori di c2
sono approssimativamente ellittiche.
Questa osservazione indica che l’approssimazione lineare di
G(m) intorno ai valori ottimali dei parametri è una buona
approssimazione per piccole perturbazioni.
Metodi Diretti e Inversi
Aspetti statistici
53 13 - Regressione non lineare
Infine, in figura è rappresentata l’ellisse di confidenza al 95%
confrontata con gli intervalli di confidenza per i parametri.
Metodi Diretti e Inversi
Questioni legate all’implementazione
La (ovvia!) differenza principale tra i problemi in regressione
lineare (Modulo 6) e quelli in regressione non-lineare è che
nel secondo caso abbiamo una funzione G(m) che è non-
lineare.
I metodi iterativi richiedono il calcolo delle funzioni fi(m) e
delle loro derivate parziali rispetto ai parametri mj.
Queste derivate parziali dipendono, a loro volta, dalle
derivate di G:
54 13 - Regressione non lineare
j
i
ij
i
mm
f
)(1)( mGm
s
Metodi Diretti e Inversi
Questioni legate all’implementazione
In alcuni casi abbiamo a disposizione formule esplicite per
G(m) e per le sue derivate.
In altri casi, G(m) esiste solo come una scatola nera
(black box) attraverso una subroutine che viene richiamata
ogni volta che si ha bisogno di calcolare il valore della
funzione.
55 13 - Regressione non lineare
Metodi Diretti e Inversi
Questioni legate all’implementazione
Quando esiste una formula esplicita per G(m) e il numero
dei parametri è relativamente piccolo, è possibile calcolare
a mano le derivate oppure ricorrere a package di calcolo
simbolici.
Esistono anche software di differenziazione automatica
che traducono il codice di un programma che calcola G(m)
in uno che calcola le derivate di G(m).
56 13 - Regressione non lineare
Metodi Diretti e Inversi
Questioni legate all’implementazione
Un approccio differente prevede l’uso delle differenze
finite per approssimare le prime derivate di [G(m)]i.
Un semplice schema al primo ordine è dato da
Le relazioni basate sulle differenze finite sono
inevitabilmente meno accurate delle formule esatte e
possono introdurre approssimazioni numeriche nella
ricerca della soluzione di problemi in regressione non-
lineare.
57 13 - Regressione non lineare
h
hG
m
ii
j
i)()()( mGemmG j
Metodi Diretti e Inversi
Questioni legate all’implementazione
In particolare, il parametro h non deve essere troppo
grande perché la relazione
deriva da un’approssimazione in serie di Taylor che, al
crescere di h, diventa sempre più inaccurata.
D’altra parte, se h diventa molto piccolo possono verificarsi
errori significativi, legati all’arrotondamento, nel numeratore
della relazione precedente.
58 13 - Regressione non lineare
h
hG
m
ii
j
i)()()( mGemmG j
Metodi Diretti e Inversi
Questioni legate all’implementazione
Una buona regola pratica consiste nel porre
dove e è l’errore nell’accuratezza del calcolo di [G(m)]i.
Per esempio, se la valutazione della funzione è accurata allo
0.0001, allora una scelta appropriata per h sarebbe di circa 0.01.
Può essere tuttavia difficoltoso valutare la reale accuratezza con
la quale viene calcolata la funzione, specie nel caso in cui G è una
black box routine.
Un’utile tecnica di stima consiste nel disegnare i valori della
funzione al variare di uno dei parametri di interesse in un piccolo
intervallo.Tali grafici dovrebbero essere smooth alla scala di h.
59 13 - Regressione non lineare
eh
Metodi Diretti e Inversi
Questioni legate all’implementazione
Quando G è data da una black box routine che può esserechiamata per calcolare la funzione per un particolare valore di me il codice sorgente per la subroutine non è disponibile, alloral’unico approccio possibile è quello delle differenze finite.
Nella pratica, molte difficoltà nel risolvere i problemi diregressione non-lineari possono essere ricondotte ad unincorretto calcolo delle derivate. È quindi una buona idea fare uncontrollo incrociato di ogni formula analitica disponibile rispettoalle differenze finite.
Molti package software per la regressione non-lineare includonoopzioni per controllare l’accuratezza delle formule diderivazione.
60 13 - Regressione non lineare
Metodi Diretti e Inversi
Questioni legate all’implementazione
Una seconda importante questione legataall’implementazione dei metodi GN e LM è stabilire uncriterio per decidere quando arrestare le iterazioni.
Idealmente, vorremmo fermare il procedimento quando il
gradiente f(m) è approssimativamente uguale a 0 e i valoridi m non subiscono più variazioni sostanziali daun’iterazione alla successiva.
Ovviamente non è possibile scegliere un livello di tolleranza
assoluto per ||f(m)||2 che sia appropriato per tutti iproblemi.
Similmente, è davvero difficoltoso scegliere un singolovalore di tolleranza assoluta per
61 13 - Regressione non lineare
kkkk ff mmmm 1
2
1 o
Metodi Diretti e Inversi
Questioni legate all’implementazione
I test di convergenza che andiamo ad introdurre funzionano
bene per un’ampia varietà di problemi.
Assumiamo che il valore di G(m) possa essere calcolato
con un’accuratezza pari a e.
Per assicurarci che il gradiente di f(m) sia
approssimativamente uguale a 0, richiediamo che
62 13 - Regressione non lineare
kk ff mm 12
e
Metodi Diretti e Inversi
Questioni legate all’implementazione
Per assicurarci che i valori successivi di m siano prossimi
fra loro, richiediamo
Infine, per assicurarci che i valori di f(m) siano diventati
stabili, ossia non cambino più, richiediamo
63 13 - Regressione non lineare
22
1 1 kkkmmm e
kkk fff mmm 11 e
Metodi Diretti e Inversi
Questioni legate all’implementazione
Ci sono poi diversi problemi ulteriori che possono venire
fuori durante la ricerca di una soluzione con tecniche di
regressione GN o LM per un problema non-lineare, in
dipendenza del comportamento funzionale di f(m).
Innanzitutto entrambi i metodi assumono che f(m) sia una
funzione smooth. Questo significa non solo che f(m) deve
essere continua ma anche che le sue derivate parziali prima
e seconda rispetto ai parametri devono essere continue.
64 13 - Regressione non lineare
Metodi Diretti e Inversi
Questioni legate all’implementazione
In figura è mostrata una funzione
che è continua ma presenta una
discontinuità nella sua derivata
prima.
Quando G(m) è data in forma
esplicita, è facile verificare le nostre
assunzioni sulla continuità.
65 13 - Regressione non lineare
Quando invece G(m) è data come una black box routine
verificare le ipotesi può diventare molto complicato.
Metodi Diretti e Inversi
Questioni legate all’implementazione
Un secondo problema può venire
fuori quando f(m) presenta una
zona piatta (flat bottom).
In tal caso esistono molti valori di
m che riproducono i dati allo
stesso modo ed è difficile
determinare il valore ottimale m*.
66 13 - Regressione non lineare
Nella pratica, si vede presentarsi questa condizione quando lamatrice [J(m*)]T[J(m*)] è singolare (o quasi!).
A causa di questo mal-condizionamento del problema, puòdiventare impossibile il calcolo di intervalli di confidenza accuratiper i parametri. Ci si occuperà di questo nel Modulo14.
Metodi Diretti e Inversi
Questioni legate all’implementazione
Infine, l’ultimo problema che
consideriamo si presenta quando
f(m) non è convessa e quindi
possiede più minimi locali.
Le tecniche GN e LM sono
concepite per convergere verso un
minimo locale.
67 13 - Regressione non lineare
Non c’è tuttavia la certezza che la soluzione trovata corrisponda
al minimo globale perché essa dipende da dove si trova il punto
da quale si inizia la ricerca e quindi l’algoritmo potrebbe
convergere verso una soluzione localmente ottimale.
Metodi Diretti e Inversi
Questioni legate all’implementazione
I metodi di ottimizzazione globale sono stati sviluppati
proprio affrontare questo tipo di problemi.
Le procedure deterministiche di ottimizzazione globale
possono essere usate in problemi con un numero di
variabili molto piccolo mentre le procedure stocastiche di
ricerca possono essere applicate anche a problemi a più
larga scala.
Le procedure stocastiche possono essere, nella pratica,
molto efficienti anche se hanno il problema di non avere la
certezza di aver trovato il minimo assoluto.
68 13 - Regressione non lineare
Metodi Diretti e Inversi
Questioni legate all’implementazione
In ogni caso, i metodi di ottimizzazione deterministici non sonola panacea.
Se, ad esempio, nell’ambito della regressione non-lineare, ilnostro problema non-lineare ai minimi quadrati possiedesoluzioni multiple localmente ottimali alle quali corrisponde lostesso valore della funzione obiettivo, allora ciascuna di questesoluzioni corrisponderà ad una soluzione verosimile dal punto divista statistico.
In tal caso non è possibile scegliere semplicemente la soluzioneottimale dal punto di vista globale come la nostra soluzione miglioree costruire gli intervalli di confidenza usando la relazione
perché questo vorrebbe significare che stiamo ignorando le altresoluzioni verosimili.
69 13 - Regressione non lineare
1*** )()()(
mJmJmT
Cov
Metodi Diretti e Inversi
Questioni legate all’implementazione
Se tuttavia fossimo in grado di mostrare che esiste una
soluzione ottimale dal punto di vista globale (ad esempio, un
minimo assoluto), e che le altre soluzioni localmente
ottimali hanno valori-p molto piccoli, allora sarebbe
appropriato riportare la soluzione ottimale globale, insieme
ai corrispondenti intervalli di confidenza, come la migliore
possibile.
70 13 - Regressione non lineare
Metodi Diretti e Inversi
Questioni legate all’implementazione
Senza entrare nei dettagli dei metodi di ottimizzazioneglobale, discutiamo una semplice procedura nota comemultistart method.
In tale procedura generiamo casualmente un gran numerodi soluzioni iniziali e, per ciascuna di esse, eseguiamo laricerca mediante l’algoritmo LM.
Esaminiamo quindi le soluzioni trovate, che corrispondonoa minimi locali e selezioniamo quella alla quale corrispondeil minimo valore di f(m): se le altre soluzioni sonostatisticamente non-verosimili, allora abbiamo il diritto discegliere la soluzione ottimale globale come la soluzionemigliore.
71 13 - Regressione non lineare
Metodi Diretti e Inversi
Questioni legate all’implementazione
Il multistart method presenta due vantaggi pratici.
Innanzitutto, trovando molte soluzioni corrispondenti a
minimi locali, è possibile determinare se esiste più di una
soluzione verosimile dal punto di vista statistico.
In secondo luogo, possiamo fare un uso efficace del fatto
che il metodo LM converga rapidamente ad una soluzione
localmente ottimale.
72 13 - Regressione non lineare
Metodi Diretti e Inversi
Questioni legate all’implementazione
73
Esempio 13.2
Consideriamo il problema di eseguire il fit di un insieme di
dati mediante la funzione
Supponiamo che i parametri veri siano:
o m1=1.0
o m2=0.5
o m3=1.0
o m4=0.75
13 - Regressione non lineare
xmxmememy 42
31
Metodi Diretti e Inversi
Questioni legate all’implementazione
74
Supponiamo di avere 25 valori di x equispaziati tra 1 e 7 e
calcoliamo i corrispondenti valori di y aggiungendo quindi
del rumore casuale indipendente, normalmente distribuito
con deviazione standard 0.01, ottenendo in tal modo il data-
set (sintetico) da utilizzare.
13 - Regressione non lineare
Metodi Diretti e Inversi
Questioni legate all’implementazione
75
Il data-set costruito:
13 - Regressione non lineare
Metodi Diretti e Inversi
Questioni legate all’implementazione
76
Sul data-set disponibile usiamo adesso il metodo LM per
risolvere il problema 20 volte usando soluzioni iniziali
random con ciascun parametro uniformemente distribuito
tra -1 e 1.
13 - Regressione non lineare
Metodi Diretti e Inversi
Questioni legate all’implementazione
77
Con l’insieme di punti iniziali casuali che abbiamo
usato, si trova che la migliore delle soluzioni
ottimali localmente corrisponde al punto iniziale
# 2; la soluzione successiva corrisponde al punto
iniziale #5 e la terza al punto iniziale #1.
13 - Regressione non lineare
Metodi Diretti e Inversi
Questioni legate all’implementazione
78
Costruiamo una tabella contenente i valori dei parametri e
il c2 per le soluzioni corrispondenti ai punti iniziali 2, 5 e 1
13 - Regressione non lineare
m1 m2 m3 m4 c2
Metodi Diretti e Inversi
Questioni legate all’implementazione
79
Calcoliamo anche il p-value per le tre soluzioni ricordando
che il numero di gradi di libertà è N-M=25-4=21
13 - Regressione non lineare
Metodi Diretti e Inversi
Questioni legate all’implementazione
80
Poiché la soluzione 2 ha il miglior valore di c2 mentre le
altre due hanno un c2 decisamente più elevato, analizziamo
soltanto questa soluzione nei dettagli.
Il valore di c2 per la soluzione corrispondente al punto
iniziale #2 è 17.39 mentre il p-value associato (con 21 gradi
di libertà) è 0.69. Questa regressione supera quindi il test
c2.
13 - Regressione non lineare
Metodi Diretti e Inversi
Questioni legate all’implementazione
81 13 - Regressione non lineare
In figura è mostrato il
best model per la
soluzione iniziale #2.
La curva è confrontata
con i dati con barre di
errore per un s.
Metodi Diretti e Inversi
Questioni legate all’implementazione
82 13 - Regressione non lineare
In figura sono mostrati i
residui normalizzati per il
best model.
Metodi Diretti e Inversi
Questioni legate all’implementazione
83
Dall’analisi dei residui notiamo che la maggior parte di essi
cade entro 0.5 deviazioni standard.
13 - Regressione non lineare
Pochi sono i residui più grandi di
un s e al massimo si arriva a 1.9s.
Inoltre non c’è nessun trend
evidente nella loro distribuzione.
Metodi Diretti e Inversi
Questioni legate all’implementazione
84
Calcoliamo adesso la matrice di covarianza approssimata
mediante la relazione
La radice quadrata degli elementi diagonali della matrice di
covarianza sono le deviazioni standard associate ai singoli
parametri e possono essere usate per definire gli intervalli
di confidenza al 95%.
13 - Regressione non lineare
1*** )()()(
mJmJmT
Cov
Metodi Diretti e Inversi
Questioni legate all’implementazione
85
Si trova
e dunque gli intervalli di confidenza al 95% sono dati da
13 - Regressione non lineare
21.072.0
5.00.1
8.06.0
22.098.0
4
3
2
1
m
m
m
m
Metodi Diretti e Inversi
Questioni legate all’implementazione
86
Notiamo che gli intervalli di confidenza trovati
contengono i parametri veri (1, -0.5, 1, -0.75).
C’è comunque un grande livello di incertezza.
Questo è un esempio di un problema di regressione non-linearepoveramente condizionato, nel quale i dati non sono in grado divincolare molto bene i parametri.
13 - Regressione non lineare
21.072.0
5.00.1
8.06.0
22.098.0
4
3
2
1
m
m
m
m
Metodi Diretti e Inversi
Questioni legate all’implementazione
87
La matrice di correlazione fornisce qualche idea circa la
natura mal-condizionata del problema.
Calcoliamo la matrice di correlazione per la soluzione #2.
13 - Regressione non lineare
Metodi Diretti e Inversi
Questioni legate all’implementazione
88
La matrice di correlazione è data da
Notiamo le forti correlazioni positive e negative che
esistono tra le coppie di parametri.
Ad esempio, la forte correlazione negativa tra m1 e m2 ci
suggerisce che aumentando m1 e contemporaneamente
diminuendo m2 possiamo ottenere una soluzione che è
altrettanto buona quanto la mostra soluzione ottimale.
13 - Regressione non lineare
193.099.089.0
93.0196.067.0
99.096.0184.0
89.067.084.01
Metodi Diretti e Inversi
Definizioni varie
Matrice definita positiva
Una matrice simmetrica reale A è definita positiva se la
forma quadratica ad essa associata
è maggiore o uguale a zero per qualsiasi x e risulta
89 13 - Regressione non lineare
Axxx T)(f
0xx se solo e se 0)(f
Metodi Diretti e Inversi
Definizioni varie
Le matrice definita positive hanno un comportamento analogo ainumeri reali positivi godendo delle seguenti proprietà:
ogni matrice definita positiva è invertibile e la sua inversa èanch’essa definita positiva;
se A è una matrice definita positiva e a è un numero reale,allora la matrice aA è definita positiva;
se A e B sono matrici definite positive allora anche A+B èdefinita positiva; se poi le matrici commutano (ossia seAB=BA) allora anche la matrice AB è definita positiva;
ogni matrice A definita positiva possiede una radice quadrataossia una matrice Q tale che A=QTQ; una matrice definitapositiva può avere un gran numero di radici quadrate ma ne hauna sola che risulta definita positiva.
90 13 - Regressione non lineare
Metodi Diretti e Inversi
Definizioni varie
Matrice semi-definita positiva
Una matrice simmetrica reale A è semi-definita positiva
se la forma quadratica ad essa associata
è tale che
Se invece –f(x) è semi-definita positiva, allora A è semi-
definita negativa.
Se f(x) non è né semi-definita positiva, né semi-definita
negativa, allora si dice indefinita.
91 13 - Regressione non lineare
Axxx T)(f
xx 0)(f
Metodi Diretti e Inversi
Definizioni varie
Fattorizzazione di Cholesky
Sia A una matrice simmetrica di dimensione n per n definita
positiva. In tal caso A può essere scritta in maniera univoca
come
dove R è una matrice non-singolare triangolare superiore.
Di contro, A può essere fattorizzata in questo modo solo
se è definita positiva.
In MATLAB il comando chol consente di calcolare la
fattorizzazione di Cholesky per una matrice simmetrica
definita positiva.
92 13 - Regressione non lineare
RRA T
Metodi Diretti e Inversi
Definizioni varie
Valore-p del test c2
È definito come la probabilità teorica di ottenere un valore
di c2 grande quanto quello osservato:
essendo
la PDF per la variabile casuale c2.
93 13 - Regressione non lineare
2
2 )(
obs
dxxfp
c
c
2
12
2 22
1)(2
x
exxf
c