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