93
METODI DIRETTI e INVERSI 13 REGRESSIONE NON LINEARE Antonio Emolo Dipartimento di Scienze Fisiche 2Ma23 081 676822 [email protected] www.docenti.unina.it/antonio.emolo

13 Regressione Non Lineare

Embed Size (px)

DESCRIPTION

Regressione Non Lineare

Citation preview

Page 1: 13 Regressione Non Lineare

METODI DIRETTI e INVERSI

13 – REGRESSIONE NON LINEARE

Antonio Emolo

Dipartimento di Scienze Fisiche – 2Ma23

081 676822

[email protected]

www.docenti.unina.it/antonio.emolo

Page 2: 13 Regressione Non Lineare

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

Page 3: 13 Regressione Non Lineare

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

Page 4: 13 Regressione Non Lineare

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

Page 5: 13 Regressione Non Lineare

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

Page 6: 13 Regressione Non Lineare

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

Page 7: 13 Regressione Non Lineare

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

Page 8: 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

Page 9: 13 Regressione Non Lineare

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

Page 10: 13 Regressione Non Lineare

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

Page 11: 13 Regressione Non Lineare

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

Page 12: 13 Regressione Non Lineare

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

Page 13: 13 Regressione Non Lineare

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

Page 14: 13 Regressione Non Lineare

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

Page 15: 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

Page 16: 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

Page 17: 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

Page 18: 13 Regressione Non Lineare

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

Page 19: 13 Regressione Non Lineare

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

Page 20: 13 Regressione Non Lineare

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

Page 21: 13 Regressione Non Lineare

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

Page 22: 13 Regressione Non Lineare

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

Page 23: 13 Regressione Non Lineare

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

Page 24: 13 Regressione Non Lineare

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

Page 25: 13 Regressione Non Lineare

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

Page 26: 13 Regressione Non Lineare

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

Page 27: 13 Regressione Non Lineare

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

Page 28: 13 Regressione Non Lineare

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λ

Page 29: 13 Regressione Non Lineare

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

Page 30: 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

Page 31: 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

Page 32: 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

Page 33: 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

Page 34: 13 Regressione Non Lineare

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

Page 35: 13 Regressione Non Lineare

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

Page 36: 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 )( *

Page 37: 13 Regressione Non Lineare

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

Page 38: 13 Regressione Non Lineare

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 )( *

Page 39: 13 Regressione Non Lineare

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

Page 40: 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

Page 41: 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

Page 42: 13 Regressione Non Lineare

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

Page 43: 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

Page 44: 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

Page 45: 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

Page 46: 13 Regressione Non Lineare

Metodi Diretti e Inversi

Aspetti statistici

46

Costruiamo l’input necessario

13 - Regressione non lineare

Page 47: 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

Page 48: 13 Regressione Non Lineare

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

Page 49: 13 Regressione Non Lineare

Metodi Diretti e Inversi

Aspetti statistici

49 13 - Regressione non lineare

Page 50: 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

Page 51: 13 Regressione Non Lineare

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

Page 52: 13 Regressione Non Lineare

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.

Page 53: 13 Regressione Non Lineare

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.

Page 54: 13 Regressione Non Lineare

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

Page 55: 13 Regressione Non Lineare

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

Page 56: 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

Page 57: 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

Page 58: 13 Regressione Non Lineare

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

Page 59: 13 Regressione Non Lineare

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

Page 60: 13 Regressione Non Lineare

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

Page 61: 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

Page 62: 13 Regressione Non Lineare

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

Page 63: 13 Regressione Non Lineare

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

Page 64: 13 Regressione Non Lineare

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

Page 65: 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.

Page 66: 13 Regressione Non Lineare

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.

Page 67: 13 Regressione Non Lineare

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.

Page 68: 13 Regressione Non Lineare

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

Page 69: 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

Page 70: 13 Regressione Non Lineare

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

Page 71: 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

Page 72: 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

Page 73: 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

Page 74: 13 Regressione Non Lineare

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

Page 75: 13 Regressione Non Lineare

Metodi Diretti e Inversi

Questioni legate all’implementazione

75

Il data-set costruito:

13 - Regressione non lineare

Page 76: 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

Page 77: 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

Page 78: 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

Page 79: 13 Regressione Non Lineare

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

Page 80: 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

Page 81: 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.

Page 82: 13 Regressione Non Lineare

Metodi Diretti e Inversi

Questioni legate all’implementazione

82 13 - Regressione non lineare

In figura sono mostrati i

residui normalizzati per il

best model.

Page 83: 13 Regressione Non Lineare

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.

Page 84: 13 Regressione Non Lineare

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

Page 85: 13 Regressione Non Lineare

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

Page 86: 13 Regressione Non Lineare

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

Page 87: 13 Regressione Non Lineare

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

Page 88: 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

Page 89: 13 Regressione Non Lineare

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

Page 90: 13 Regressione Non Lineare

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

Page 91: 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

Page 92: 13 Regressione Non Lineare

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

Page 93: 13 Regressione Non Lineare

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