Modelli in forma State
Transcript
Modelli in forma State
Modelli in forma State-Space Matteo Pelagatti 30 novembre 2011 1 Introduzione Tutti i modelli visti fino ad ora (ARIMA e UCM) possono essere espressi in una forma comune molto flessibile che consente di condurre inferenza sia sui parametri ignoti, sia sulle componenti non osservabili. Tale forma, detta nello spazio degli stati, o più sinteticamente state-space, è molto generale e permette la rappresentazione di modelli anche non stazionari, non solo per via di radici unitarie, ma anche attraverso funzioni di autocovarianza che evolvono nel tempo. Sebbene in questo corso si esaminino solamente modelli univariati e uniequazionali, la forma state-space e la relativa strumentazione inferenziale verranno esposti per serie storiche multivariate, cioè per rappresentare una sequenza di vettori casuali {yt }nt=1 , infatti questo non comporta alcuna complicazione, sia nella definizione, sia nella derivazione degli stimatori. 2 La forma State-Space Sia yt una serie storica di vettori casuali, di cui è osservabile una traiettoria finita. Nella forma state space yt dipende linearmente da un vettore casuale αt , detto vettore di stato, non osservabile, che evolve secondo uno schema markoviano. In formule, si ha la seguente coppia di sistemi di equazioni: Equazione di misurazione (o di osservazione) yt = Zt αt + dt + εt Equazione di transizione (o di stato) αt = Tt αt−1 + ct + ηt per t = 1, . . . , n, con le seguenti proprietà • yt (k × 1) vettore di variabili osservabili, • αt (m × 1) vettore di variabili non osservabili, dette variabili di stato 1 • Zt (k × m) matrice di (iper-)parametri, • dt (k × 1) vettore usato soprattutto per cambiare il valore medio di yt per esempio per mezzo di regressori, dt = β 0 xt , (si può avere una rappresentazione equivalente del sistema anche senza dt , ma in genere è comodo avere questa possibilità), • εt (k × 1) vettore di v.c. normali serialmente incorrelate con media nulla, E(εt ) = 0, e matrice di covarianza E(εt ε0 ) = Ht , • Tt (m × m) matrice di transizione, contenente (iper-)parametri, che determinano l’evoluzione delle variabili di stato, • ct (m × 1) vettore di costanti con funzione analoga a dt , • ηt (m×1) vettore di v.c. normali serialmente incorrelate con con E(ηt ) = 0, E(ηt ηt0 ) = Qt . Il sistema viene completato con le seguenti ipotesi sulla distribuzione del vettore di stato al tempo t = 0: • α0 = Nm (a0 , P0 ), • E(εt ηs0 ) = 0, ∀s, t = 1, . . . , n (questa ipotesi può essere rilassata, ma non lo faremo perché è valida per la grandissima parte dei modelli che si usano nelle applicazioni comuni e semplifica la derivazione del filtro di Kalman), • E[εt (α0 − a0 )0 ] = 0, E[ηt (α0 − a0 )0 ] = 0, ∀t = 1, . . . , n. Il sistema è lineare, cioè yt può essere espresso come combinazione lineare di valori presenti e passati di εt , ηt e α0 . Ma poiché questi ultimi sono normali, anche i vettori yt saranno distribuiti normalmente1 . Se le matrici di sistema Zt , dt , Ht , Tt , ct e Qt sono tutte costanti (cioè si possono omettere i pedici t), il sistema è detto time-invariant o time-homogeneous. I modelli stazionari sono un caso particolare dei sistemi time-invariant, cioè la condizione di omogeneità temporale è necessaria ma non sufficiente per la stazionarietà del sistema. 3 Modelli ARIMA in forma State-Space Ora vediamo come è possibile adattare i modelli ARIMA alla forma state-space. Iniziamo con casi particolarmente semplici per poi dare la forma generale. 1 Si ricordi che combinazioni lineari di v.c. normali sono v.c. normali. 2 Esempio 1 (AR(2) in forma state-space). Mettiamo il processo yt = φ1 yt−1 + φ2 yt−1 + t in forma state-space. Equazione di transizione α1,t φ1 φ2 α1,t−1 = + t , α2,t 1 0 α2,t−1 0 Equazione di osservazione α1,t . yt = 1 0 α2,t Dato che la seconda riga dell’equazione di transizione è l’identità α2,t = α1,t−1 , la quale comporta che il secondo elemento del vettore di stato è uguale al primo elemento ritardato di un periodo, sostituendo nella prima riga otteniamo α1,t = φ1 α1,t−1 + φ2 α2,t−1 + t = φ1 α1,t−1 + φ2 α1,t−2 + t , che è un processo AR(2). L’equazione di misurazione si riduce all’identità yt = α1,t . Esempio 2 (MA(1) in forma state-space). Mettiamo il processo yt = t + θ1 t−1 in forma state-space. Equazione di transizione 0 0 α1,t−1 α1,t + t , = 0 1 0 α2,t−1 α2,t Equazione di osservazione α1,t yt = 1 θ1 . α2,t Dato che la seconda riga dell’equazione di transizione è l’identità α2,t = α1,t−1 , sostituendo nella prima equazione otteniamo α1,t = t α2,t = α1,t−1 = t−1 , che sono, rispettivamente, un processo white noise e il medesimo processo ritardato di un periodo. L’equazione di misurazione assegna i coefficienti MA ai ritardi del white noise yt = α1,t + θ1 α2,t = t + θ1 t−1 . 3 Ora vediamo la rappresentazione di un generico modello ARMA(p, q) (anche con radici unitarie) in forma state space. Siano r = max(p, q + 1), φj = 0 per j > p e θj = 0 per j > q. Equazione di misurazione yt = [1 θ1 . . . θr−1 ]αt dove il vettore di stato αt è (r × 1). Equazione di transizione φ1 φ2 1 0 αt = 0 1 .. .. . . 0 0 . . . φr−1 φr t ... 0 0 0 ... 0 0 αt−1 + 0 . .. .. .. 0 . . . 0 ... 1 0 L’equazione di stato definisce un processo AR(r), infatti le righe dalla seconda all’ultima rappresentano le identità α2,t = α1,t−1 α3,t = α2,t−1 = α1,t−2 ... = ... αr,t = αr−1,t−1 = . . . = α1,t−r e sostituendo nella prima riga α1,t = φ1 α1,t−1 + . . . + φr α1,t−r + t , che può essere scritto in forma compatta (1 − φ1 B − . . . − φr B r )α1,t = t φr (B)α1,t = t α1,t = φr (B)−1 t . Allo stesso modo, contenendo αt solamente ritardi dell’elemento in prima posizione, anche l’equazione di osservazione può essere riscritta in forma compatta come yt = (1 + θ1 B + . . . + θr B r )α1,t yt = θr (B)α1,t e sostituendo il penultimo risultato nell’ultimo otteniamo yt = θr (B)φr (B)−1 t 4 che è un processo ARMA(p, q). Quando si voglia indicare esplicitamente la presenza di radici unitarie anche in questa forma, è sufficiente definire il processo α0,t come processo ARMA e poi integrarlo, definendo yt = yt−1 + α0,t−1 . Si invita il lettore a provare a scrivere tale modello in forma state space come esercizio. 4 Modelli a componenti non osservabili in forma StateSpace Vediamo come costruire il (sotto-)vettore di stato di ciascuna componente, per poi unirli tutti nel vettore di stato completo. Trend lineare locale. Usando la medesima notazione usata nel capitolo precedente, l’equazione di transizione di un trend locale lineare è η µt 1 1 µt−1 + t . = (1) 0 1 βt−1 ζt βt La matrice di covarianza dei disturbi è 2 ση 0 ηt Var = 0 σζ2 ζt Solamente il trend µt dovrà entrare nell’equazione di osservazione. Ciclo stocastico. Il ciclo è già stato espresso in forma markoviana: ψt−1 κ ψt cos λ sin λ + ∗t . = ρ ∗ − sin λ cos λ ψt−1 κt ψt∗ (2) Anche in questo caso solamente il primo elemento del vettore di stato dovrà entrare nell’equazione di osservazione. Come si è visto nel capitolo precedente, due sono i processi utilizzati più frequentemente per modellare la stagionalità. Vediamo la rappresentazione markoviana di entrambi. Sinusoidi stocastiche stagionali. La componente stagionale può essere ottenuta dalla somma di v = bs/2c sinusoidi stocastiche (non stazionarie). (1) γt cos λ1 (1)∗ γt − sin λ1 . .. . = . . (v) 0 γt (v)∗ 0 γ t sin λ1 cos λ1 .. . ... ... .. . 0 0 .. . 0 0 ... ... cos λv − sin λv 5 (1) (1) γt−1 ωt (1)∗ (1)∗ γ ω t−1 t .. .. . + . . (v) (v) sin λv γt−1 ωt (v)∗ (v)∗ sin λv γ ω 0 0 .. . t−1 t (3) Si noti che quando s è pari, l’ultima riga può essere rimossa, dato che in (s/2) γt (s/2) (s/2)∗ = cos(π)γt−1 + sin(π)γt−1 (s/2)∗ + κt (s/2)∗ il valore di γt−1 viene moltiplicato per sin π = 0. Solitamente la matrice di covarianza dei disturbi viene posta uguale a σκ2 I. Nell’equazione di osservazione deve entrare la somma delle righe dispari del vettore di stato. Dummy stocastiche stagionali. La relazione γt = −γt−1 − . . . − γt−s+1 + ωt può essere scritta in forma markoviana come (1) (1) γt 0 γt−1 −1s−2 −1 . ωt .. . , (4) . = . + Is−2 0s−2 0s−2 (s−1) (s−1) γt γt−1 dove 1r e 0r sono vettori colonna di r elementi tutti pari, rispettivamente, a uno e a zero. Nell’equazione di osservazione entra solamente il primo elemento del vettore di stato. La matrice di covarianza dei disturbi è nulla ovunque tranne il primo elemento che è pari a σω2 . Il vettore di stato completo, αt , si ottiene concatenando verticalmente i singoli vettori di stato, mentre la matrice di transizione, T , completa è data dalla concatenazione diagonale delle matrici di transizione delle singole componenti2 . Analogamente, il vettore dei disturbi, ηt , si ottiene concatenando verticalmente i singoli vettori degli shock di ciascuna componente e la relativa matrice di covarianza, Q, è data dalla concatenazione diagonale delle singole matrici di covarianza. Per quanto riguarda l’equazione di osservazione, la matrice Z si riduce ad un vettore riga contenente 1 in corrispondenza agli elementi di αt che entrano direttamente nella definizione di yt e 0 altrove. Esempio 3 (Forma State-Space di un UCM completo per dati trimestrali.). Usando la componente stagionale nella forma dummy stocastiche, abbiamo: µt 1 1 0 0 0 0 0 βt 0 1 0 0 0 0 0 ψt 0 0 ρ cos(λ) ρ sin(λ) 0 0 0 ∗ ψt 0 0 αt = , T = 0 0 −ρ sin(λ) ρ cos(λ) 0 , γ (1) 0 0 0 0 −1 −1 −1 t (2) 0 0 0 0 1 0 0 γt (3) 0 0 0 0 0 1 0 γ t 2 La concatenazione diagonale di due matrici quadrate A e B è data da A 0 , 00 B con 0 matrice di zeri di dimensioni opportune. 6 2 ση 0 ηt ζt 0 σζ2 κt 0 0 ∗ ηt = κt , Q = 0 0 ωt 0 0 0 0 0 0 0 0 Z= 1 0 1 0 1 0 5 0 0 0 0 0 0 0 0 σκ2 0 0 0 0 σκ2 0 0 0 0 σω2 0 0 0 0 0 0 0 0 0 0 , H = σε2 . 0 0 0 0 , 0 0 0 Inferenza per modelli in forma State-Space Il filtro di Kalman è lo strumento principale per condurre inferenza sulle componenti non osservabili in αt e per la costruzione della funzione di verosimiglianza di un modello in forma state-space. Sia Yt = {y1 , . . . , yt } la collezione dei dati dalla prima fino alla t-esima osservazione. L’inferenza su αt sarà necessariamente basata sui dati osservabili e sulla struttura evolutiva definita dall’equazione di transizione. Come noto, la migliore stima di αt , nel senso del minimo errore quadratico medio, basata sui dati Ys è il valore atteso condizionato E(αt |Ys ). A seconda del valore di s essa assume un diverso nome: smoother: at|s = E(αt |Ys ), con s > t, spesso s = n; filtro: at = at|t = E(αt |Yt ); previsore: at|s = E(αt |Ys ), con s < t. A ciascuna stima è associata una matrice di covarianza dell’errore di stima: Pt|s = E[(αt − at|s )(αt − at|s )0 ], anche in questo caso si abbrevierà la scrittura quando s = t, con Pt = Pt|t . 5.1 Il filtro di Kalman Il filtro di Kalman è un algoritmo ricorsivo che permette di calcolare at e Pt partendo da at|t−1 e Pt|t−1 e viceversa. Come si è detto durante la trattazione della forma state-space, il modello è completato dalla definizione della media e dalla matrice di covarianza di α0 , della cui determinazione si parlerà più avanti. Questi due valori serviranno a inizializzare l’iterazione dell’algoritmo. Vediamo ora le diverse fasi del calcolo del filtro. 7 Equazioni di previsione at|t−1 = E(αt |Yt−1 ) = E(Tt αt−1 + ct + ηt |Yt−1 ) = Tt at−1 + ct , Pt|t−1 = E[(αt − at|t−1 )(αt − at|t−1 )0 ] = E[(Tt αt−1 + ct + ηt − Tt at−1 − ct )(. . .)0 ] = Tt E[(αt−1 − at−1 )(αt−1 − at−1 )0 ]Tt0 + E[ηt ηt0 ] = Tt Pt−1 Tt + Qt . Innovazioni La previsione dell’osservazione yt basata sui dati Yt−1 è data da ŷt|t−1 = E[yt |Yt−1 ] = E[Zt αt + dt + εt |Yt−1 ] = Zt at|t−1 + dt e l’errore di previsione, o innovazione, è quindi vt = yt − ŷt|t−1 = Zt (αt − at|t−1 ) + εt , con varianza Ft = E{[Zt (αt − at|t−1 ) + εt ][. . .]0 } = Zt Pt|t−1 Zt0 + Ht . Equazioni di aggiornamento Per ricavare le equazioni per at e Pt si noti che si è supposto che il sistema sia normale e che, pertanto, at|t−1 Pt|t−1 Pt|t−1 Zt0 αt Y ∼ N , , yt t−1 ŷt|t−1 Zt Pt|t−1 Ft dove gli elementi sulla diagonale secondaria della matrice di covarianza sono stati ottenuti da Cov(αt , yt |Yt−1 ) = E{[αt − at|t−1 ][Zt (αt − at|t−1 ) + εt ]0 } = Pt|t−1 Zt0 e dalla sua trasposta. A questo punto la distribuzione di αt |Yt si ottiene condizionando αt |Yt−1 a yt |Yt−1 , cioè applicando la formula del valore atteso condizionato per una normale congiunta. αt |Yt è pertanto, distribuito normalmente con vettore di medie e matrice di covarianza, rispettivamente, at = at|t−1 + Pt|t−1 Zt0 Ft−1 νt Pt = Pt|t−1 − Pt|t−1 Zt0 Ft−1 Zt Pt|t−1 . Smoother Per calcolare lo smoother è necessario “passare” il filtro di Kalman è immagazzinare at e Pt per t = 1, . . . , n. Lo smoother è dato dalle iterazioni at|n = at + Ot (at+1|n − Tt+1 at − ct+1 ) Pt|n = Pt + Ot (Pt+1|n − Pt+1|t )Ot0 8 0 P −1 . La procedura per ricavare lo per t = n, n − 1, . . . , 0, con Ot = Pt Tt+1 t+1|t smoother è più complicata rispetto al calcolo del filtro e pertanto la omettiamo. Si noti che, quando il sistema non è gaussiano, il filtro di Kalman fornisce le migliori3 stime lineari, ma non fornendo più valori attesi, ma solo proiezioni lineari, esistono stimatori non lineari nei dati, che possono essere più precisi. Infatti la derivazione del filtro fatta sopra supponendo gaussianità, può essere rimpiazzata dalla derivazione basata sulla proiezione lineare. 5.2 Inizializzazione del filtro Come già sottolineato a pagina 2, la definizione di un sistema state-space è completata dal vettore di medie a0 e dalla matrice di covarianza P0 del vettore di stato iniziale α0 . In genere è possibile utilizzare l’informazione a priori nota sulle serie da analizzare per potere definire medie e varianza delle componenti in α0 . Quando si è molto incerti sul valore iniziale atteso di un vettore di stato è sempre possibile porre la relativa varianza su valori molto alti, dichiarando quindi una sostanziale ignoranza. Quando non si hanno informazioni a priori si possono inizializzare le componenti non stazionarie (per es. trend e stagionalità in un UCM) per mezzo di distribuzioni diffuse (a varianza infinita), mentre le componenti stazionarie possono essere inizializzate per mezzo della distribuzione marginale. Si supponga che αt contenga solo componenti stazionarie, allora la distribuzione marginale di αt è normale con media E(αt ) = T E(αt−1 ) + c + E(ηt ) a0 = T a0 + c a0 = (I − T )−1 c, e matrice di covarianza data dalla soluzione di 0 0 E(αt − a0 )(αt − a0 ) = E[T (αt−1 − a0 ) + ηt ][T (αt−1 − a0 ) + ηt ] P0 = T P0 T 0 + Q, che può essere ottenuta per mezzo di vec(P0 ) = (I − T ⊗ T )−1 vec(Q), dove vec è l’operatore vettorizzazione che incolonna i vettori colonna di una matrice, e ⊗ è il prodotto di Kronecker. Il risultato appena mostrato è dovuto alla proprietà vec(AXB) = (B 0 ⊗ A) vec(X). 3 Minimizzano l’errore quadratico medio. 9 Quando vi fossero variabili sia stazionarie sia non-stazionarie nel vettore di stato è possibile utilizzare la regola appena vista per il sotto vettore di variabili stazionarie e distribuzioni diffuse per le altre. 5.3 Stime di massima verosimiglianza di un modello in forma StateSpace Data la gaussianità del sistema e la linearità delle equazioni che definiscono il filtro di Kalman, il vettore delle innovazioni vt è normale con media zero e matrice di covarianza Ft . Pertanto, la funzione di log-verosimiglianza è data da ( ) n n X X 1 kn log 2π − log det(Ft ) − νt0 Ft−1 νt , l(θ) = − 2 t=1 t=1 dove θ è un vettore contenente tutti i parametri ignoti del modello. log-verosimiglianza può essere massimizzata per mezzo di metodi numerici. So noti che il risultato asintotico √ d n(θ̂n − θ0 ) −→ N 0, I(θ0 )−1 , La dove θ0 è il vero valore dei parametri e θ̂n la relativa stima di massima verosimiglianza, è valido solamente per quei parametri di θ0 che non giacciono sulla frontiera dello spazio parametrico. Ciò implica che l’ipotesi di uguaglianza a zero di una o più varianze non può essere testata usando la normalità asintotica, dato che σ 2 = 0 giace sulla frontiera dello spazio parametrico della varianza [0, ∞). 10
Documenti analoghi
La Forma State-Space, il Filtro di Kalman e i Modelli a Componenti
Il filtro fornisce anche la matrice di varianza dello stimatore, e sotto le condizioni
appena ricordate (linearità e gaussianità) si distribuisce a sua volta normalmente.
Si indichi con at|s lo sti...