1. El problema
Tengo algunas mediciones de una variable yt , donde t=1,2,..,n , para el cual tengo una distribución fyt(yt) obtenida a través de MCMC, que por simplicidad supondré que es una gaussiana de media μt y varianza σ2t .
Tengo un modelo físico para esas observaciones, digamos g(t) , pero los residuos rt=μt−g(t) parecen estar correlacionados; en particular, tengo razones físicas para pensar que un proceso AR(1) será suficiente para tener en cuenta la correlación, y planeo obtener los coeficientes del ajuste a través de MCMC, para lo cual necesito la probabilidad . Creo que la solución es bastante simple, pero no estoy muy seguro (parece tan simple, que creo que me falta algo).
2. Derivando la probabilidad
Un proceso media cero se puede escribir como:
X t = ϕ X t - 1 + ε t , ( 1 )
donde asumiré ε t ∼ N ( 0 , σ 2 w ) . Los parámetros a estimar son, por lo tanto, θ = { ϕ , σ 2 w } (en mi caso, también tengo que agregar los parámetros del modelo g ( t )AR(1)
Xt=ϕXt−1+εt, (1)
εt∼N(0,σ2w)θ={ϕ,σ2w}g(t), pero ese no es el problema). Sin embargo, lo que observo es la variable
donde supongo que
η t ∼ N ( 0 , σ 2 t ) , y se conocen los
σ 2 t (los errores de medición) . Como
X t es un proceso gaussiano,
R t también lo es. En particular, sé que
X 1 ∼ N ( 0 , σ 2 w /Rt=Xt+ηt, (2)
ηt∼N(0,σ2t)σ2tXtRt
por lo tanto,
R 1 ∼ N ( 0 , σ 2 w / [ 1 - ϕ 2 ] + σ 2 t ) .
El próximo desafío es obtener
R t | R t - 1 para
t ≠ 1 . Para derivar la distribución de esta variable aleatoria, tenga en cuenta que, utilizando la ecuación.
( 2 ) Puedo escribir
X tX1∼N(0,σ2w/[1−ϕ2]),
R1∼N(0,σ2w/[1−ϕ2]+σ2t).
Rt|Rt−1t≠1(2)
Usando la ecuación.
(2), y usando la definición de la ecuación.
(1), puedo escribir,
R t = X t + η t =ϕ X t - 1 + ε t + η t .
Usando la ec.
(3)en esta última expresión, entonces, obtengo,
R tXt−1=Rt−1−ηt−1. (3)
(2)(1)Rt=Xt+ηt=ϕXt−1+εt+ηt.
(3)
tanto,
R t | R t - 1 = ϕ ( r t - 1 - η t - 1 ) + ε t + η t ,
y, por lo tanto,
R t | R t - 1 ∼ N (Rt= ϕ ( Rt - 1- ηt - 1) + εt+ ηt,
RtEl | Rt - 1= ϕ ( rt - 1- ηt - 1) + εt+ ηt,
Finalmente, puedo escribir la función de probabilidad como
L ( θ ) = f R 1 ( R 1 = r 1 ) n ∏ t = 2 f R t | R t - 1 ( R t = r tRtEl | Rt - 1∼ N( ϕ rt - 1, σ2w+ σ2t- ϕ2σ2t - 1) .
donde
f ( ⋅ ) son las distribuciones de las variables que acabo de definir, es decir, que definen
σ ′ 2 = σ 2 w / [ 1 -L ( θ ) = fR1( R1= r1) ∏t = 2norteFRtEl | Rt - 1( Rt= rtEl | Rt - 1= rt - 1) ,
F( ⋅ )σ′ 2= σ2w/ [1- ϕ2] + σ2t,
y definiendo
σ2(t)=σ 2 w +σ 2 t -ϕ2σ 2 t - 1 ,
fRt| Rt-1(Rt=rt|Rt-1=rt-1)=1FR1( R1= r1) = 12πσ′2−−−−−√exp(−r212σ′2),
σ2(t)=σ2w+σ2t−ϕ2σ2t−1fRt|Rt−1(Rt=rt|Rt−1=rt−1)=12πσ2(t)−−−−−−√exp(−(rt−ϕrt−1)22σ2(t))
3. Preguntas
- ¿Está bien mi derivación? No tengo ningún recurso para comparar que no sean simulaciones (que parecen estar de acuerdo), ¡y no soy un estadístico!
- MA(1)ARMA(1,1)ARMA(p,q)
Respuestas:
Estás en el camino correcto, pero has cometido un error al derivar la distribución deRt dado Rt - 1 : la media condicional no es ϕ rt - 1 . Susϕ xˆt - 1 , dónde Xˆt - 1 es tu mejor estimación de X del periodo anterior El valor deXˆt - 1 incluye información de observaciones anteriores, así como rt - 1 . (Para ver esto, considere una situación dondeσw y ϕ son insignificantes, por lo que efectivamente está estimando una media fija. Después de muchas observaciones, su incertidumbre sobreX será mucho más pequeño que ση .) Esto puede ser confuso al principio, porque observa R y no X . Eso solo significa que se trata de un modelo de espacio de estado .
Sí, hay un marco muy general para usar modelos lineales-gaussianos con observaciones ruidosas, llamado filtro de Kalman . Esto se aplica a cualquier cosa con una estructura ARIMA y muchos más modelos también. Tiempo variableση está bien para el filtro de Kalman, siempre que no sea estocástico. Los modelos con, por ejemplo, volatilidad estocástica , necesitan métodos más generales. Para ver cómo se deriva el filtro de Kalman, pruebe Durbin-Koopman o el capítulo 3 de Harvey . En la notación de Harvey, tu modelo tieneZ= 1 , re= c = 0 , Ht= σ2η, t , T= ϕ , R = 1 y Q = σ2w .
fuente
Honestamente, debe codificar esto en ERRORES o STAN y no preocuparse por eso desde allí. A menos que sea una pregunta teórica.
fuente