22 votos

Diferencias entre el entrenamiento de Baum-Welch y Viterbi

Actualmente estoy usando el entrenamiento de Viterbi para un problema de segmentación de imágenes. Quería saber cuáles son las ventajas / desventajas de usar el algoritmo de Baum-Welch en lugar del entrenamiento de Viterbi.

29voto

Bernard Puntos 10700

La Baum-Welch y el algoritmo el algoritmo de Viterbi calcular diferentes cosas.

Si usted sabe que las probabilidades de transición para la parte oculta de su modelo, y la emisión de las probabilidades para los visibles salidas del modelo, entonces el algoritmo de Viterbi le da más probabilidades de completar la secuencia de estados ocultos condicional en tanto sus salidas y su especificación del modelo.

La Baum-Welch algoritmo da tanto en el mostl probable que oculta las probabilidades de transición, así como el más probable conjunto de emisiones de probabilidades dada sólo a los estados observados de la modelo (y, por lo general, un límite superior en el número de estados ocultos). Usted también consigue el "pointwise" probabilidad más alta de puntos en los estados ocultos, que a menudo es ligeramente diferente de la que solo oculta la secuencia en la que en general es más probable.

Si usted sabe que su modelo y sólo quiere el latente estados, entonces no hay ninguna razón para utilizar la Baum-Welch algoritmo. Si usted no sabe el modelo, entonces usted no puede ser utilizando el algoritmo de Viterbi.

Editado para añadir: Véase Peter Smit del comentario; hay cierta superposición/vaguedad en la nomenclatura. Algunos hurgando me llevó a un capítulo por Luis Javier Rodrıguez y Ines Torres en "Reconocimiento de patrones y Análisis de la Imagen" (ISBN 978-3-540-40217-6, pp 845-857) que trata de la velocidad frente a la precisión de los trade-offs de los dos algoritmos.

Brevemente, la Baum-Welch algoritmo es esencialmente Expectation-Maximization algoritmo aplicado a un HMM; como un estricto EM-tipo de algoritmo que usted está garantizado para convergen al menos a un máximo local, y por lo tanto para unimodal problemas de encontrar el MLE. Se requiere de dos pasos sobre sus datos para cada paso, sin embargo, y la complejidad se vuelve muy grande en la longitud de los datos y el número de muestras de formación. Sin embargo, usted termina con la totalidad de la probabilidad condicional para sus parámetros ocultos.

La Viterbi algoritmo de entrenamiento (como opuesto a la "algoritmo de Viterbi") se aproxima a la MLE para lograr una ganancia en velocidad a costa de la precisión. Segmenta los datos y, a continuación, se aplica el algoritmo de Viterbi (como yo la entendía) para obtener el estado más probable de la secuencia en el segmento, entonces usa ese estado más probable de la secuencia para re-estimar los parámetros ocultos. Este, a diferencia de la Baum-Welch algoritmo, no dar toda la condicional de probabilidad de los parámetros ocultos, y así termina la reducción de la precisión, mientras que el ahorro es significativo (el capítulo informes de 1 a 2 órdenes de magnitud) de tiempo de cálculo.

1voto

spinodal Puntos 188

Adelante-atrás se utiliza cuando se quiere contar "cosas invisibles'. Por ejemplo, cuando se utiliza E-M a mejorar un modelo a través de la supervisión de los datos. Creo que Petrov en papel es un ejemplo. En la técnica que estoy pensando, primero entrenar un modelo con anotada de datos con bastante gruesa anotaciones (por ejemplo, una etiqueta de 'Verbo'). Entonces usted arbitrariamente dividida la probabilidad de masa para que el estado en dos un poco desigual, cantidades, y de reeducar a correr hacia adelante-hacia atrás para maximizar la probabilidad por la redistribución de la masa entre los dos estados.

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