34 votos

Diferencia entre los modelos de Markov ocultos y el filtro de partículas (y el filtro de Kalman)

Esta es mi antigua pregunta

Me gustaría preguntar si alguien sabe la diferencia (si es que hay alguna) entre los modelos de Markov ocultos (HMM) y el filtro de partículas (PF), y como consecuencia el filtro de Kalman, o en qué circunstancias usamos cada algoritmo. Soy estudiante y tengo que hacer un proyecto, pero primero tengo que entender algunas cosas.

Así, según la bibliografía, ambos son Modelos de espacio de estado incluyendo los estados ocultos (o latentes o no observados). Según Wikipedia (Hidden_Markov_model) " En los HMM, el espacio de estados de las variables ocultas es discreto, mientras que las propias observaciones pueden ser discretas (normalmente generadas a partir de una distribución categórica) o continuas (normalmente a partir de una distribución gaussiana). Los modelos de Markov ocultos también pueden generalizarse para permitir espacios de estado continuos. Ejemplos de estos modelos son aquellos en los que el proceso de Markov sobre las variables ocultas es un sistema dinámico lineal, con una relación lineal entre las variables relacionadas y donde todas las variables ocultas y observadas siguen una distribución gaussiana. En casos sencillos, como el sistema dinámico lineal que acabamos de mencionar, la inferencia exacta es manejable (en este caso, utilizando el filtro de Kalman); sin embargo, en general, la inferencia exacta en los HMM con variables latentes continuas es inviable, y deben utilizarse métodos aproximados, como el filtro de Kalman ampliado o el filtro de partículas. "

Pero para mí esto es un poco confuso En palabras simples, ¿significa esto lo siguiente (basado también en más investigación que he hecho):

  • En los HMM, el espacio de estados puede ser discreto o continuo . Además, las propias observaciones pueden ser discreto o continuo . Además, el HMM es un sistema dinámico lineal y gaussiano o no gaussiano.
  • En la FP, el espacio de estado puede ser discreto o continuo . Además, las propias observaciones pueden ser discreto o continuo . Pero la FP es una no lineal (¿y no gaussiano?) sistema dinámico (¿es esa su diferencia?).
  • El filtro Kalman (también me parece lo mismo que el HMM) se utiliza cuando tenemos lineal y Gaussiano sistema dinámico.

Además cómo sé qué algoritmo elegir, porque a mí todos me parecen iguales... También he encontrado un artículo (no en inglés) que dice que la FP, aunque puede tener datos lineales (por ejemplo los datos brutos de un sensor-kinect que reconoce un movimiento), el sistema dinámico puede ser no lineal. ¿Puede ocurrir esto? ¿Es esto correcto? ¿Cómo?

Para el reconocimiento de gestos, los investigadores pueden utilizar tanto HMM como PF, pero no explican por qué seleccionan cada algoritmo ¿Alguien sabe cómo me pueden ayudar a distinguir estos algoritmos, para entender sus diferencias y cómo elegir el mejor algoritmo?

Lo siento si mi pregunta es demasiado grande, o algunas partes son ingenuas, pero no encontré en algún lugar una respuesta convincente y científica. ¡Muchas gracias de antemano por su tiempo!

Aquí está mi NUEVA pregunta (según la ayuda de @conjugateprior)

Así que con la lectura posterior, me gustaría actualizar algunas partes de mi comentario anterior, y asegurarme de que he entendido un poco más lo que está pasando.

  • De nuevo en palabras sencillas, el paraguas son las redes dinámicas bayesianas bajo las cuales los modelos de HMM y Espacio estatal se incluyen (subclases) ( http://mlg.eng.cam.ac.uk/zoubin/papers/ijprai.pdf ).
  • Además, la diferencia inicial entre los 2 modelos es que, en el HMM las variables de estado ocultas son discreto mientras que las observaciones pueden ser discreto o continuo . En la FP las variables de estado ocultas son continuo (vector de estado oculto de valor real), y las observaciones tienen Distribuciones gaussianas .
  • También según @conjugateprior cada modelo tiene las 3 siguientes tareas: filtrado, suavizado y predicción. En el filtrado, el modelo HMM utiliza para las variables de estado ocultas discretas el método Forward algorithm, el espacio de estado utiliza para las variables continuas y el sistema dinámico lineal el Kalman Filter, etc.
  • Sin embargo, el HMM también puede generalizarse para permitir espacios de estado continuos .
  • Con estas extensiones de HMM, los 2 modelos parecen ser conceptualmente idénticos (como también se menciona en ¿Modelo de Markov oculto vs. Modelo de Transición de Markov vs. Modelo de Espacio de Estado...? ).

Creo que estoy utilizando una terminología un poco más precisa, pero aún así todo me resulta borroso. ¿Puede alguien explicarme cuál es el diferencia entre el HMM y el modelo de espacio de estados ?

Porque realmente no puedo encontrar una respuesta que se ajuste a mis necesidades..

Gracias una vez más.

22voto

James Sutherland Puntos 2033

Será útil distinguir el modelo de la inferencia que se quiere hacer con él, porque ahora la terminología estándar mezcla los dos.

El modelo es la parte donde se especifica el naturaleza de: el espacio oculto (discreto o continuo), la dinámica del estado oculto (lineal o no lineal) la naturaleza de las observaciones (típicamente multinomial condicional o Normal), y el modelo de medición que conecta el estado oculto con las observaciones. Los HMM y los modelos de espacio de estados son dos de estos conjuntos de especificaciones de modelos.

Para cualquier modelo de este tipo hay tres tareas estándar: filtrado, suavizado y predicción. Cualquier texto sobre series temporales (o, de hecho, Google) debería darte una idea de cuáles son. Tu pregunta se refiere al filtrado, que es una forma de obtener a) una distribución posterior sobre (o la "mejor" estimación de, para algún sentido de lo mejor, si no te sientes bayesiano) el estado oculto en $t$ dado el conjunto completo de datos hasta el momento $t$ y b) la probabilidad de los datos según el modelo.

En situaciones en las que el estado es continuo, la dinámica del estado y la medición son lineales y todo el ruido es normal, un filtro de Kalman hará ese trabajo de forma eficiente. Su análogo cuando el estado es discreto es el Algoritmo Forward. En el caso de que no haya normalidad y/o no lineal, volvemos a los filtros aproximados. Hay aproximaciones deterministas, por ejemplo, los filtros de Kalman extendidos o no centrados, y hay aproximaciones estocásticas, la más conocida de las cuales es el filtro de partículas.

El sentimiento general parece es que en presencia de no linealidad inevitable en las partes de estado o de medición o de no normalidad en las observaciones (las situaciones problemáticas más comunes), uno trata de salirse con la aproximación más barata posible. Así, EKF, luego UKF y después PF.

La literatura sobre el filtro de Kalman no centrado suele tener algunas comparaciones de situaciones en las que podría funcionar mejor que la linealización tradicional del filtro de Kalman extendido.

El Filtro de Partículas tiene una generalidad casi completa - cualquier no linealidad, cualquier distribución - pero en mi experiencia ha requerido un ajuste bastante cuidadoso y es generalmente mucho más difícil de manejar que los otros. Sin embargo, en muchas situaciones es la única opción.

En cuanto a las lecturas adicionales: Me gusta el capítulo 4-7 del libro Bayesian Filtering and Smoothing de Särkkä, aunque es bastante conciso. El autor tiene una copia en línea disponible para uso personal. Por lo demás, la mayoría de los libros de series temporales de espacio de estado cubrirán este material. Para el filtrado de partículas, hay un volumen de Doucet et al. sobre el tema, pero supongo que ya es bastante antiguo. Tal vez otros indiquen una referencia más reciente.

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