Quiero saber - ¿cuáles son las diferencias entre el adelante-atrás y el algoritmo el algoritmo de Viterbi para la inferencia en modelos ocultos de Markov (HMM)?
Respuestas
¿Demasiados anuncios?Un poco de historia primero tal vez se aclare un poco las cosas.
Cuando se habla de Hmm (Hiden los Modelos de Markov) generalmente hay 3 problemas a ser considerados:
- Problema de la evaluación. Esto responde a la pregunta: ¿cuál es la probabilidad de que una determinada secuencia de símbolos es producido por un modelo en particular? Para la evaluación se utilizan dos algoritmos: el avance algoritmo o hacia atrás algoritmo (no confundir con el de adelante-atrás algoritmo).
- La decodificación problema. Dada una secuencia de símbolos (las observaciones) y de un modelo, cuál es la más probable de la secuencia de estados que producen la secuencia. Para este problema utilizamos el algoritmo de Viterbi.
-
Entrenamiento problema. Dado un modelo de estructura y un conjunto de secuencias, encontrar el modelo que mejor ajusta los datos. Para este problema, podemos usar la siguiente 3 algoritmos:
- MLE (estimación de máxima verosimilitud)
- Viterbi de formación(no confundir con la decodificación de Viterbi)
- Baum Welch = adelante-atrás algoritmo
Baum Welch funciona de la siguiente manera
Para cada secuencia en el conjunto de entrenamiento de secuencias
- Calcular adelante las probabilidades con el algoritmo adelante
- Calcular hacia atrás probabilidades con el algoritmo hacia atrás
- Calcular las contribuciones de la secuencia actual de las transiciones de la modelo, calcular las contribuciones de la corriente de secuencia para la emisión de las probabilidades de la modelo.
- Calcular los nuevos parámetros del modelo (inicio probabilidades, probabilidades de transición, emisión de probabilidades)
- Calcular el nuevo registro de la probabilidad de que el modelo de
- Pare cuando el cambio en el registro de la probabilidad es menor que un determinado umbral o cuando un número máximo de iteraciones que se pasa.
En suma, se utiliza el algoritmo de Viterbi para la decodificación problema y Baum Welch/Adelante-atrás al entrenar a su modelo en un conjunto de secuencias.
Si usted necesita una descripción completa de las ecuaciones para la decodificación de Viterbi y el algoritmo de entrenamiento que me haga saber y yo pueda apuntar en la dirección correcta.
Adelante-Atrás da la probabilidad marginal para cada estado individual, de Viterbi da la probabilidad de que la más probable es la secuencia de estados. Por ejemplo, si su HMM tarea es predecir soleado vs tiempo de lluvia para cada día, de Adelante hacia Atrás diría que la probabilidad de ser "sunny" de cada día, de Viterbi daría la más probable secuencia de sol/los días de lluvia, y la probabilidad de esta secuencia.