14 votos

Uso de filtros de Kalman para imputar valores perdidos en series temporales

Me interesa saber cómo se pueden utilizar los filtros de Kalman para imputar los valores perdidos en los datos de las series temporales. ¿Se puede aplicar también si faltan algunos puntos temporales consecutivos? No encuentro mucho sobre este tema. Cualquier explicación, comentario o enlace es bienvenido y apreciado.

0 votos

Le puede interesar este puesto . Ofrece un ejemplo basado en la representación del espacio de estados de un modelo ARIMA para imputar los valores perdidos mediante el filtro de Kalman.

0 votos

@javlacalle gracias, ya conocía este post y es un gran ejemplo para una implementación concreta. Pero me interesa más bien el fondo teórico.

0 votos

Te sugiero esta implementación de python simple stackoverflow.com/a/63630858/10375049

13voto

masto Puntos 946

Preliminares: Filtrado de Kalman :

Los filtros de Kalman operan sobre modelos de espacio de estado de la forma (hay varias maneras de escribirlo; ésta es una fácil basada en Durbin y Koopman (2012) (todo lo que sigue se basa en ese libro, que es excelente):

$$ \begin{align} y_t & = Z \alpha_t + \varepsilon_t \qquad & \varepsilon_t \sim N(0, H) \\ \alpha_{t_1} & = T \alpha_t + \eta_t & \eta_t \sim N(0, Q) \\ \alpha_1 & \sim N(a_1, P_1) \end{align} $$

donde $y_t$ es la serie observada (posiblemente con valores perdidos) pero $\alpha_t$ es totalmente inobservable. La primera ecuación (la ecuación de la "medición") dice que los datos observados están relacionados con los estados no observados de una manera determinada. La segunda ecuación (la ecuación de "transición") dice que los estados no observados evolucionan con el tiempo de una manera determinada.

El filtro de Kalman opera para encontrar estimaciones óptimas de $\alpha_t$ ( $\alpha_t$ se supone que es Normal: $\alpha_t \sim N(a_t, P_t)$ por lo que lo que hace el filtro de Kalman es calcular la media condicional y la varianza de la distribución para $\alpha_t$ condicionado a las observaciones hasta el momento $t$ ).

En el caso típico (cuando se dispone de observaciones) el filtro de Kalman utiliza la estimación del estado actual y la observación actual $y_t$ para hacer lo mejor que pueda para estimar el siguiente estado $\alpha_{t+1}$ de la siguiente manera:

$$ \begin{align} a_{t+1} & = T a_t + K_t (y_t - Z \alpha_t) \\ P_{t+1} & = T P_t (T - K_t Z)' + Q \end{align} $$

donde $K_t$ es la "ganancia de Kalman".

Cuando no hay una observación, el filtro de Kalman sigue queriendo calcular $a_{t+1}$ y $P_{t+1}$ de la mejor manera posible. Desde $y_t$ no está disponible, no puede hacer uso de la ecuación de medición, pero puede seguir utilizando la ecuación de transición . Así, cuando $y_t$ falta, el filtro de Kalman calcula en su lugar:

$$ \begin{align} a_{t+1} & = T a_t \\ P_{t+1} & = T P_t T' + Q \end{align} $$

Esencialmente, dice que dado $\alpha_t$ Mi mejor suposición en cuanto a $\alpha_{t+1}$ sin datos es sólo la evolución especificada en la ecuación de transición. Esto puede realizarse para cualquier número de periodos de tiempo con datos ausentes.

Si hay es datos $y_t$ Entonces, el primer conjunto de ecuaciones de filtrado toma la mejor estimación sin datos, y añade una "corrección", basada en lo buena que era la estimación anterior.


Imputación de datos :

Una vez aplicado el filtro de Kalman a todo el rango de tiempo, se tienen estimaciones óptimas de los estados $a_t, P_t$ para $t = 1, 2, \dots, T$ . La imputación de datos es entonces sencilla a través de la ecuación de medición. En concreto, basta con calcular:

$$\hat y_t = Z a_t $$


En cuanto a una referencia, Durbin y Koopman (2012) es excelente; la sección 4.10 analiza las observaciones que faltan.

  • Durbin, J., & Koopman, S. J. (2012). Análisis de series temporales por estado space methods (nº 38). Oxford University Press.

0 votos

El uso de la solución más suave tendría más sentido para la imputación (puesto que uno ya tiene todos los datos (que no faltan), ¿por qué no utilizar la información en los valores futuros, también)

0voto

Loren Pechtel Puntos 2212

El ejemplo de la publicación que javlacalle señala en su comentario presenta puntos de tiempo perdidos consecutivos. También podrían interesarle los intervalos alrededor de los valores imputados (pronosticados en la muestra), cuyo cálculo aparece en este Documento sobre el espacio de los estados en la sección 2.1.

Otro documento que puede ser interesante es este .

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X