Modelos Ocultos De Markov
-
Upload
marcela-gomez -
Category
Education
-
view
4.045 -
download
2
description
Transcript of Modelos Ocultos De Markov
MODELOS OCULTOS DE MARKOV
Adriana Becerra A.Marcela Gómez
Byron MacasFernanda Ordóñez
IAA – ECC – UTPL – 2009ABE – MGO – BMA – FOR
Definición
Un modelo oculto de Markov o HMM (por sus siglas del inglés, Hidden Markov Model), es un proceso por el cual se observa el comportamiento del sistema de manera indirecta pues los estados del mismo permanecen ocultos para el observador.
Describen un proceso de probabilidad el cual produce una secuencia de eventos simbólicos observables.
x — estados ocultosy — salidas observablesa — probabilidades de transiciónb — probabilidades de salida
Descripción del modelo
Un HMM se caracteriza por un conjunto de parámetros
λ = (A,B, Π)
Matriz A. Matriz de transición de probabilidades.
Matriz B. Matriz de probabilidad de salida.
Vector π. Representa la distribución inicial de los estados.
Arquitectura de los HMM
Esta arquitectura se da de acuerdo al número de estados que lo componen y las transiciones permitidas entre dichos estados. Los principales modelos existentes son:
Modelos de izquierda a derecha Modelos ergódicos.
Modelos de izquierda a derecha Los elementos de la matriz de probabilidades
de transición A deben cumplir la siguiente condición: aij = 0 j < i , es decir , si en el instante t, el modelo se encuentra en el estado i-ésimo, en el siguiente instante de tiempo, t+1, el modelo permanecerá en el mismo estado con probabilidad aii, o bien el modelo pasará al estado j-ésimo (j>i) con probabilidad a ij. Esta configuración de la matriz de transiciones A da lugar a modelos con arquitecturas que se denominan de izquierda a derecha.
Modelos de izquierda a derecha (2)
Como se muestra en la figura 1, el estado 1 (estado inicial) y el 3 (estado final) se denominan no emisores y las flechas en líneas continuas indican las posibles transiciones entre estados. Podemos notar la particularidad de que las transiciones se dan solamente de izquierda a derecha.
Modelos Ergódicos
Pueden evolucionar desde cualquier estado a otro en un número finito de transiciones, todas las transiciones son posibles.
Tipos de Modelos Ocultos de Markov
HMM Discretos HMM Continuos y HMM Semicontinuos
Tipos de HMM (2)
HMM discretos Aquí las observaciones son vectores de símbolos de
un alfabeto finito con M + 1 elementos diferentes, cada uno denominado codeward, que se agrupan en un codebook, V = {v0,.....,vm}.
La distribución de probabilidad de un símbolo entonces se define como B = {bj (k)} donde
b
j(k) = P(Yt =
vk |
Xt =
sj)
es la probabilidad de observación del codebook vk
Tipos de HMM (3)
HMM contínuos
Aquí se asume que las distribuciones de los símbolos observables son densidades de probabilidad definidas sobre espacios de observación contínuos.
La forma mas extendida de distribución es la de una mezcla de funciones de densidad de tipo gaussiano.
Tipos de HMM (4)
HMM semicontinuos Al igual que los continuos se modelan a
partir de un conjunto de mezclas de funciones de densidad de probabilidad gaussiana.
La principal diferencia radica en que las funciones base son comunes o todos los modelos, como ocurre en el caso de los modelos discretos donde existe un codebook común a todos ellos.
Problemas básicos de los HMMs
Problema de evaluación Problema de la decodificación Problema del Entrenamiento
Primer Problema Básico: Problema de evaluación Consiste en calcular la probabilidad
de la secuencia de observación O = (o1o2 ... oT ) , dado el modelo l , es decir, P(O|l) . La forma más simple de resolver el problema 1 consiste en enumerar todas las posibles secuencias de estado de longitud T
Forward algorithm Backward algorithm
Segundo Problema Básico: Problema de decodificación
Determinar la secuencia de estado del modelo dada una secuencia de simbolos
Optimalidad de Bellman Algoritmo de Viterbi
Tercer Problema Básico: Problema del Entrenamiento Se rige principalmente en la
secuencia de estados más probables, entre las secuencias más comunes para esta comparación están los patrones, perfiles y HMMs
Algoritmo Expectation Maximization (EM)
Algritmo de Baum - Welch Algoritmo de Viterbi
Algoritmo EM
Se utiliza para encontrar, en cada paso una estimación del conjunto de parámetros del modelo, para luego, tratar de maximizar la probabilidad de generación de los datos de entrenamiento, de forma que la probabilidad asociada al nuevo modelo sea mayor o igual a la del modelo anterior.
Algoritmo EM
Dada una estimación inicial de los parámetros obtener la verosimilitud
de una secuencia y después utilizarla para reestimar los parámetros.
Algoritmo de Baum-Welch I
Algoritmo de Viterbi
El algoritmo de Viterbi permite encontrar las secuencia de estados más probable en un Modelo oculto de Markov, S=(q1,q2, ..., qT), a partir de una observación O=(o1,o2,..., oT), es decir, obtiene la secuencia óptima que mejor explica la secuencia de observaciones.
Algoritmo de Viterbi
Inicio. T=0. Se calcula para cada estado Sj con j=1,2, .. N, la probabilidad maxima. Inicialmente , se considera que no existen supervivientes.
Paso de recursion. Se calcula la probabilidad maxima en el siguiente instante de tiempo , t+1, en función de la probabilidad maxima en el instante anterior
Algoritmo de Viterbi
Se guardan los supervivientes para cada estado.
Si t < T, siendo T el número máximo de símbolos emitidos, se incrementa t=t+1 y se vuelve al paso de recursion . En caso contrario, el algoritmo finaliza
Finalización. Se calcula la probabilidad maxima y su estado óptimo correspondiente
Algoritmo de Viterbi
Finalmente, la secuencia de estados que proporciona la mayor probabilidad (o camino óptimo), dada una secuencia de símbolos.
Aplicación del Algoritmo Vitervi
Una de las aplicaciones del algoritmo de Viterbi es la desambiguación léxica categorial
Los elementos de un MOM serían: El conjunto Q de estados sería el conjunto de posibles etiquetas
(categorías gramaticales) para las palabras. El conjunto V de observables en cada uno de los estados
corresponde con el conjunto de palabras distintas. El conjunto A de probabilidades de transiciones entre estados sería
la probabilidad de que una determinada categoría categorial siga a otra. Por ejemplo, la probabilidad de que la categoría nombre vaya detrás de la categoría determinante.
El conjunto B de probabilidades de las observaciones correspondería con la probabilidad de pertenencia de una palabra (un observable) a una determinada categoría. Por ejemplo, la probabilidad de que la palabra casa sea verbo, que será menor que la probabilidad de que esta misma palabra tenga la categoría gramatical nombre.
Aplicaciones en reconocimiento de gestos Definicion de estados: Para los ojos:cerrado. Semicerrado y
abierto Para la apertura de la boca: abierta,
semiabierta y cerrada Para el estiramiento de la boca:
estirada, semiestirada y encogida.
Reconocimiento de gestos
Se capturan observaciones de cada tipo (boca y ojos) y se efectúa el entrenamiento.
Reconocimiento de gestos
A partir de la información anterior se pueden reconocer los siguientes gestos:
Las tres grandes preguntas sobre HMMs
EvaluaciónDADO un HMM M, y una secuencia x,ENCUENTRE Prob[ x | M ]
DecodificaciónDADO un HMM M, y una secuencia x,ENCUENTRE la secuencia de estados que maximiza P[ x,
| M ]
AprendizajeDADOS un HMM M, con probs transición/emisión
desconocidas,y una secuencia x,
ENCUENTRE los parámetros = (ei(.), aij) que maximizan P[ x | ]
Ejemplo: El Casino deshonesto
Un casino tiene dos dados: Dado “justo”
P(1) = P(2) = P(3) = P(5) = P(6) = 1/6
Dado cargadoP(1) = P(2) = P(3) = P(5) = 1/10P(6) = 1/2
El casino alterna entre el dado justo y el cargado una vez cada 20 turnos
Juego:1. Apostamos $12. Tiramos (siempre con un dado
justo)3. El Casino tira (tal vez con un dado
justo, tal vez con uno cargado)4. EL número mas alto gana $2
Pregunta # 1 – Evaluación
Dada
Una secuencia de tiradas del casino
1245526462146146136136661664661636616366163616515615115146123562344
PREGUNTA
¿Cuan probable es esta secuencia, dado nuestro modelo de como opera el casino?
Este es el problema de EVALUACIÓN en HMMs
Pregunta # 2 – Decodificación
Dada
Una secuencia de tiradas del casino
1245526462146146136136661664661636616366163616515615115146123562344
PREGUNTA
¿Que partes de la secuencia fueron generadas por el dado cargado y cuales por el dado justo?
Este es el problema de DECODIFICACIÓN en HMMs
Pregunta # 3 – Aprendizaje
Dada
Una secuencia de tiradas del casino
1245526462146146136136661664661636616366163616515615115146123562344
PREGUNTA
¿Cómo está cargado el dado cargado? ¿Cada cuanto cambia el casino entre el dado cargado y el justo?
Este es el problema de APRENDIZAJE en HMMs
El HMM del casino deshonesto
JUSTOCARGAD
O
0.05
0.05
0.950.95
P(1|F) = 1/6P(2|F) = 1/6P(3|F) = 1/6P(4|F) = 1/6P(5|F) = 1/6P(6|F) = 1/6
P(1|L) = 1/10P(2|L) = 1/10P(3|L) = 1/10P(4|L) = 1/10P(5|L) = 1/10P(6|L) = 1/2
Ejemplo: El casino deshonestoImaginemos que la secuencia de dados es:
x = 1, 2, 1, 5, 6, 2, 1, 6, 2, 4 (secuen. mod)
Entonces, cuan probable es
= justo, justo, justo, justo, justo, justo, justo, justo, justo, justo?
(imaginemos inicialmente prob. iguales a0justo = ½, aoCargado = ½)
½ P(1 | justo) P(justo | justo) P(2 | justo) P(justo | justo) … P(4 | justo) =
½ (1/6)10 (0.95)9 = 0,00000000521158647211 = 0.5 10-9
Ejemplo: El casino deshonesto
Entonces, la probabilidad de que el dado sea justo En toda la corrida es solamente 0.521 10-9
Pero…¿Cual es la probabilidad de
= Cargado, Cargado, Cargado, Cargado, Cargado, Cargado, Cargado, Cargado, Cargado, Cargado?
½ P(1 | Cargado) P(Cargado, Cargado) … P(4 | Cargado) =
½ (1/10)8 (1/2)2 (0.95)9 = 0,00000000078781176215 = 7.9 10-10
Sumando probabilidades nos da 0.599 + 6
Entonces, despues de todo es 6.59 veces mas probable que el dado haya sido siempre justo, a que haya sido siempre deshonesto o cargado.
GRACIAS…