62 votos

¿Cuáles son las desventajas de los modelos de espacio de estado y del filtro de Kalman para la modelización de series temporales?

Teniendo en cuenta todas las buenas propiedades de los modelos de espacio de estados y KF, me pregunto: ¿cuáles son desventajas de la modelización del espacio de estados y la utilización del filtro de Kalman (o EKF, UKF o filtro de partículas) para la estimación? Por encima de metodologías convencionales como ARIMA, VAR o métodos ad hoc/heurísticos.

¿Son difíciles de calibrar? ¿Son complicados y resulta difícil ver cómo un cambio en la estructura de un modelo afectará a las predicciones?

O, dicho de otro modo, ¿cuáles son las ventajas de los modelos ARIMA y VAR convencionales sobre los modelos de espacio de estado?

Sólo puedo pensar en ventajas de un modelo de espacio de estado:

  1. Maneja fácilmente las rupturas estructurales, los desplazamientos, los parámetros que varían en el tiempo de un modelo estático: basta con hacer que esos parámetros sean estados dinámicos de un modelo de espacio de estados y el modelo se ajustará automáticamente a cualquier cambio en los parámetros;
  2. Maneja los datos que faltan de forma muy natural, sólo hace el paso de transición de KF y no hace el paso de actualización;
  3. Permite cambiar sobre la marcha los parámetros de un modelo de espacio de estados en sí mismo (covarianzas de los ruidos y matrices de transición/observación), de modo que si su observación actual procede de una fuente un poco diferente a las demás, puede incorporarla fácilmente a la estimación sin hacer nada especial;
  4. Utilizando las propiedades anteriores, permite manejar fácilmente los datos con espacios irregulares: o bien cambiar un modelo cada vez según el intervalo entre las observaciones o utilizar un intervalo regular y tratar los intervalos sin observaciones como datos perdidos;
  5. Permite utilizar datos de diferentes fuentes simultáneamente en el mismo modelo para estimar una cantidad subyacente;
  6. Permite construir un modelo a partir de varios interpretable componentes dinámicos inobservables y estimarlos;
  7. Cualquier modelo ARIMA puede representarse en forma de espacio de estados, pero sólo los modelos simples de espacio de estados pueden representarse exactamente en forma ARIMA.

29voto

vladr Puntos 299

Esta es una lista preliminar de desventajas que pude extraer de sus comentarios. ¡Las críticas y adiciones son muy bienvenidas!

En general, en comparación con ARIMA, los modelos de espacio de estados permiten modelar procesos más complejos, tienen una estructura interpretable y manejan fácilmente las irregularidades de los datos; pero para ello se paga con una mayor complejidad de un modelo, una calibración más difícil y un menor conocimiento de la comunidad.

  1. ARIMA es un aproximador universal - no le importa cuál es el verdadero modelo detrás de sus datos y utiliza herramientas universales de diagnóstico y ajuste de ARIMA para Aproximadamente este modelo. Es como el ajuste de una curva polinómica: no importa cuál sea la función verdadera, siempre se puede aproximar con un polinomio de algún grado.
  2. Los modelos de espacio-estado requieren, naturalmente, que se escriba algunos modelo razonable para su proceso (lo cual es bueno, ya que utiliza el conocimiento previo de su proceso para mejorar las estimaciones). Por supuesto, si no tiene ninguna idea de su proceso, siempre puede utilizar algún universal modelo de espacio de estados también - por ejemplo, representar ARIMA en una forma de espacio de estados. Pero entonces ARIMA en su forma original tiene una formulación más parsimoniosa - sin introducir estados ocultos innecesarios.
  3. Dado que existe una gran variedad de formulaciones de modelos de espacio de estados (mucho más rica que la clase de modelos ARIMA), el comportamiento de todos estos modelos potenciales no está bien estudiado y, si el modelo que usted formuló es complicado, es difícil decir cómo se comportará en diferentes circunstancias. Por supuesto, si su modelo de espacio de estados es sencillo o está compuesto por componentes interpretables, no existe ese problema. Pero el ARIMA es siempre el mismo ARIMA bien estudiado, por lo que debería ser más fácil anticipar su comportamiento incluso si lo utilizas para aproximar algún proceso complejo.
  4. Debido a que el espacio de estados le permite modelar directa y exactamente modelos complejos/no lineales, entonces para estos modelos complejos/no lineales puede tener problemas con la estabilidad del filtrado/predicción (divergencia EKF/UKF, degradación del filtro de partículas). También puede tener problemas con la calibración de los parámetros de los modelos complicados: es un problema de optimización difícil de calcular. ARIMA es simple, tiene menos parámetros (1 fuente de ruido en lugar de 2 fuentes de ruido, sin variables ocultas) por lo que su calibración es más sencilla.
  5. Para el espacio de estado hay menos conocimiento y software en la comunidad estadística que para ARIMA.

4voto

vladr Puntos 299

Gracias @IrishStat por varias preguntas muy buenas en los comentarios, la respuesta a tus preguntas es demasiado larga para publicarla como comentario, así que la publico como respuesta (lamentablemente, no a la pregunta original del tema).

Las preguntas fueron: " ¿Identifica claramente los cambios de tendencia en el tiempo e informa de los puntos en los que cambia la tendencia? ¿Distingue entre los cambios de los parámetros y los cambios de la varianza del error e informa de ello? ¿Detecta e informa sobre los efectos específicos de adelanto y retraso en torno a los predictores especificados por el usuario? ¿Se puede especificar el número mínimo de valores en un grupo antes de declarar un cambio de nivel/tendencia temporal local? ¿Distingue entre la necesidad de transformaciones de potencia y los puntos deterministas en el tiempo en los que cambia la varianza del error? "

  1. Identificar los cambios de tendencia - sí, naturalmente, puede hacer que la pendiente de la tendencia sea una de las variables de estado y KF estimará continuamente la pendiente actual. Entonces podrá decidir qué cambio de pendiente es lo suficientemente grande para usted. Alternativamente, si la pendiente no varía con el tiempo en su modelo de espacio de estado, puede probar los residuos durante el filtrado de una manera estándar para ver cuándo hay alguna ruptura de su modelo.
  2. Distinguir entre los cambios de los parámetros y los cambios de la varianza del error - sí, la varianza puede ser uno de los parámetros(estados), entonces que El parámetro que más probablemente haya cambiado depende de la probabilidad de su modelo y de cómo hayan cambiado particularmente los datos.
  3. Detectar las relaciones de avance/retraso - no estoy seguro de esto, ciertamente se puede incluir cualquier vara retrasada en un modelo de espacio de estado; para selección de rezagos, puede probar los residuos de los modelos con diferentes rezagos incluidos o, en un caso sencillo, simplemente utilizar un correlograma cruzado antes de formular un modelo.
  4. Especificar el número de umbral de las observaciones para decidir el cambio de tendencia - sí, como en 1) porque el filtrado se hace recursivamente, no sólo puede umbral de cambio de la pendiente que es lo suficientemente grande para usted, sino también # de observaciones para la confianza. Pero mejor - KF produce no sólo la estimación de la pendiente, sino también bandas de confianza para esta estimación, por lo que puede decidir que la pendiente cambió significativamente cuando su límite de confianza supera algún umbral.
  5. Distinguir entre la necesidad de la transformación de la potencia y la necesidad de una mayor varianza - no estoy seguro de entender correctamente, pero creo que usted puede probar los residuos durante el filtrado para ver si siguen siendo normales con sólo una mayor varianza o tienen algún sesgo por lo que necesita para cambiar su modelo. Mejor - usted puede hacer un estado de cambio binario de su modelo, entonces KF lo estimará automáticamente basado en la probabilidad. En este caso el modelo será no lineal, por lo que necesitará UKF para hacer el filtrado.

3voto

warsaga Puntos 131

El filtro de Kalman es el estimador lineal cuadrático óptimo cuando la dinámica del estado y los errores de medición siguen las denominadas hipótesis gaussianas lineales ( http://wp.me/p491t5-PS ). Por lo tanto, siempre que se conozcan los modelos de dinámica y de medición y que sigan los supuestos lineales gaussianos, no hay ningún estimador mejor en la clase de los estimadores lineales cuadráticos. Sin embargo, los razonamientos más comunes para las aplicaciones "fallidas" del Filtro Kalman son:

  1. Conocimiento impreciso/incorrecto de la dinámica del estado y de los modelos de medición.

  2. Inicialización inexacta del filtro (proporcionando una estimación inicial del estado y la covarianza que es inconsistente con el verdadero estado del sistema). Esto es fácil de superar utilizando un procedimiento de inicialización de mínimos cuadrados ponderados (WLS).

  3. Incorporación de mediciones que son "valores atípicos" estadísticos con respecto al modelo de dinámica del sistema. Esto puede hacer que la ganancia de Kalman tenga elementos negativos, lo que puede llevar a una matriz de covarianza semidefinida no positiva después de la actualización. Esto puede evitarse utilizando algoritmos de "gating", como el gating elipsoidal, para validar la medición antes de actualizar el filtro Kalman con esa medición.

Estos son algunos de los errores/problemas más comunes que he visto al trabajar con el filtro Kalman. Por lo demás, si los supuestos de sus modelos son válidos, el filtro de Kalman es un estimador óptimo.

2voto

Loren Pechtel Puntos 2212

Yo añadiría que si utilizas directamente una función de espacio de estado, probablemente vas a tener que entender las diversas matrices que componen un modelo, y cómo interactúan y funcionan. Es mucho más parecido a definir un programa que a definir un modelo ARIMA. Si se trabaja con un modelo de Espacio de Estado dinámico, la cosa se complica aún más.

Si utiliza un paquete de software que tiene una función de espacio de estado muy, muy agradable, puede ser capaz de evitar algo de esto, pero la gran mayoría de tales funciones en los paquetes de R requieren que usted salte a los detalles en algún momento.

En mi opinión, se parece mucho a la estadística bayesiana en general, cuya maquinaria requiere más comprensión, cuidado y alimentación para utilizarla que las funciones más frecuentistas.

En ambos casos, merece la pena tener detalles/conocimientos adicionales, pero podría ser una barrera para la adopción.

1voto

Puede consultar el excelente libro Previsión bayesiana y modelos dinámicos (Harrison y West, 1997). Los autores muestran que casi todos los modelos tradicionales de series temporales son casos particulares del modelo dinámico general. También destacan las ventajas. Quizás una de las principales ventajas es la facilidad con la que se pueden integrar muchos modelos de espacio de estados simplemente aumentando el vector de estados. Por ejemplo, se pueden integrar sin problemas regresores, factores estacionales y un componente autorregresivo en un solo modelo.

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