Transcript
Page 1: Sesión 5:  Modelos Ocultos de Markov

Sesión 5: Modelos Ocultos de Markov

Page 2: Sesión 5:  Modelos Ocultos de Markov

Incertidumbre - HMM, L.E. Sucar 2

Modelos Ocultos de Markov

• Cadenas de Markov• Modelos Ocultos de Markov• Problemas básicos

– Evaluación– Secuencia óptima– Aprendizaje

• Aplicaciones– Reconocimiento de voz– Reconocimiento de gestos

Page 3: Sesión 5:  Modelos Ocultos de Markov

Incertidumbre - HMM, L.E. Sucar 3

Máquina de estados

• Es un dispostivo de procesamiento de información especificado por:– Un conjunto de estados, S– Un estado incial, S0

– Un conjunto finito de entradas, I– Un conjunto finito de salidas, S– Una función de transición de Si -> Sj

– Una función de salida de Si -> O

Page 4: Sesión 5:  Modelos Ocultos de Markov

Incertidumbre - HMM, L.E. Sucar 4

Cadena de Markov (MM)

• Máquina de estados finitos en la que:– Las transiciones de un estado a otro no son

determinísticas– La probabilidad de transición de un estado a

otro sólo depende del estado actual (y no de los anteriores) – propiedad de Markov

Page 5: Sesión 5:  Modelos Ocultos de Markov

Incertidumbre - HMM, L.E. Sucar 5

Ejemplo

• Estados del clima:– Lluvioso (q1)– Nublado (q2)– Soleado (q3)

• Probabilidades de transición:0.4 0.3 0.30.2 0.6 0.20.1 0.1 0.8

• Probabilidades iniciales: 0.3 0.5 0.2

Page 6: Sesión 5:  Modelos Ocultos de Markov

Incertidumbre - HMM, L.E. Sucar 6

Ejemplo

q1 q2 q3

Page 7: Sesión 5:  Modelos Ocultos de Markov

Incertidumbre - HMM, L.E. Sucar 7

Especificación de un MM

• Conjunto de estados Q = {q1 ... qn}• Una vector de probabilidades iniciales,

= {1 ... n}, i = P (S0 = qi)• Un matriz de probabilidades de transición, A

= {aij}, donde aij = P (St = qj | St-1 = qi)• En forma compacta:

= {A, }

Page 8: Sesión 5:  Modelos Ocultos de Markov

Incertidumbre - HMM, L.E. Sucar 8

Propiedades

• 1. i i = 1

• 2. j aij = 1

• 3. P (St = qj | St-1 = qi, St-2 = qk, ...) = P (St = qj | St-1 = qi)

Page 9: Sesión 5:  Modelos Ocultos de Markov

Incertidumbre - HMM, L.E. Sucar 9

Salidas

• A cada estado le corresponde una salida, Oi

• Una secuencia de observaciones de t = 1 a t = T se denota por:

O = {o1 ... oT}

Page 10: Sesión 5:  Modelos Ocultos de Markov

Incertidumbre - HMM, L.E. Sucar 10

Preguntas

• Probabilidad de pertenencia: probabilidad de cierta secuencia de estados

• Probabilidad de permanencia: probabilidad de que permanezca en cierto estado por cierto tiempo

• Permanencia promedio: tiempo esperado de permanencia en un estado

Page 11: Sesión 5:  Modelos Ocultos de Markov

Incertidumbre - HMM, L.E. Sucar 11

Preguntas

• Probabilidad de pertenencia: P(qj qk ql ...) = a0j ajk akl ...

• Probabilidad de permanencia:P (di ) = aii

d-1 (1 - aii)

• Permanencia promedio:

E{d} = di P(di )

E{d} = di aii d-1

(1 - aii) = 1/(1 - aii)

Page 12: Sesión 5:  Modelos Ocultos de Markov

Incertidumbre - HMM, L.E. Sucar 12

Ejemplos de Preguntas

Dado el modelo del clima - • Probabilidad de pertenencia:

– Dado que el tiempo inicial es soleado, cual es la P de que sea sol, sol, lluv, lluv, sol, nub, sol?

• Probabilidad de permanencia:• Probabilidad de que este nublado por 3 días seguidos?

• Permanencia promedio:– Tiempo esperado que permanezca nublado?

Page 13: Sesión 5:  Modelos Ocultos de Markov

Incertidumbre - HMM, L.E. Sucar 13

Estimación de parámetros

• Dada una secuencia de observaciones, se pueden determinar los parámetros (A, ) del modelo:– Probabilidades iniciales: i i

– Probabilidades de transición: aij iji

• Donde:– i= número de veces que el estado i es el inicial

– i= número de veces que pasa por el estado i

– ijnúmero de transiciones del estado i al j

Page 14: Sesión 5:  Modelos Ocultos de Markov

Incertidumbre - HMM, L.E. Sucar 14

Ejemplo de estimación

• Obtener los parámetros del modelo dada la secuencia:

q2q2q3q3q3q3q1q1q3q2q3q3q3q3q3q3q2q2q2q1q2q2q1q1q3

Page 15: Sesión 5:  Modelos Ocultos de Markov

Incertidumbre - HMM, L.E. Sucar 15

Modelos Ocultos de Markov (HMM)

• Es un modelo de Markov en que los estados no son directamente observables

• Se puede ver como un doble proceso estocástico:– Un proceso estocástico “escondido” que es no

observable– Otro proceso estocástico que produce la

secuencia de observaciones

Page 16: Sesión 5:  Modelos Ocultos de Markov

Incertidumbre - HMM, L.E. Sucar 16

Ejemplo

• Se tienen dos monedas (M1 y M2) que se seleccionan en forma aleatoria

• Cada moneda esta cargada:– M1 – P=0.8 de águila– M2 – P=0.8 de sol

• Se tiran en secuencia (N) las moneda y sólo se observa la salida (A o S)

Page 17: Sesión 5:  Modelos Ocultos de Markov

Incertidumbre - HMM, L.E. Sucar 17

Ejemplo

q1 q2

Águila Sol

Page 18: Sesión 5:  Modelos Ocultos de Markov

Incertidumbre - HMM, L.E. Sucar 18

Especificación de un HMM• Conjunto de estados Q = {q1 ... qn} y de posibles

observaciones O {o1 ... om} • Una vector de probabilidades iniciales,

= {1 ... n}, i = P (S0 = qi)• Un matriz de probabilidades de transición,

A = {aij}, donde aij = P (St = qj | St-1 = qi)• Un vector de probabilidades de salida por cada estado (matriz),

B = {bik}, donde bik = P (Ot = ok | St = qi)• En forma compacta:

= {A, B, }

Page 19: Sesión 5:  Modelos Ocultos de Markov

Incertidumbre - HMM, L.E. Sucar 19

Ejemplo - especificación

• P:0.5 0.5

• A:0.5 0.50.5 0.5

• B:0.8 0.20.2 0.8

Page 20: Sesión 5:  Modelos Ocultos de Markov

Incertidumbre - HMM, L.E. Sucar 20

Preguntas básicas• Dado el modelo, calcular la probabilidad de

una secuencia de observaciones (evaluación)

• Dado el modelo, obtener la secuencia de estados más probable correspondiente a una secuencia de observaciones (secuencia óptima)

• Dada una secuencia de observaciones, ajustar los parámetros del modelo (aprendizaje)

Page 21: Sesión 5:  Modelos Ocultos de Markov

Incertidumbre - HMM, L.E. Sucar 21

Evaluación – método directo

• Dada la secuencia de observaciones: O1 O2 O3 O4 ...

• Pueden ser generados por diferentes secuencias de estados, considerando una: S1 S2 S3 S4 ...

• Entonces la probabilidad de las observaciones y dicha secuencia de estado es:

P(O, Qi) = q1 bq1 (O1) aq12 bq2 (O2) ... aq(T-1)T bqt (OT)

Page 22: Sesión 5:  Modelos Ocultos de Markov

Incertidumbre - HMM, L.E. Sucar 22

Evaluación – método directo

• Considerando todas las secuencias:

P(O) = Q P(O, Qi) • Qué es lo mismo que:P(O) =

Q [ q1 bq1 (O1) aq12 bq2 (O2) ... aq(T-1)T bqt (OT) ]

Page 23: Sesión 5:  Modelos Ocultos de Markov

Incertidumbre - HMM, L.E. Sucar 23

Evaluación – método directo

• Número de operaciones– Para cada término:

2T – Número de posibles secuencias (sumatoria)

NT – Total:

2T x NT

• Por ejemplo, N=5 y T=100 -> 1072 operaciones!• Se requiere de un método más eficiente!

Page 24: Sesión 5:  Modelos Ocultos de Markov

Incertidumbre - HMM, L.E. Sucar 24

Evaluación – método iterativo• Se basa en la idea de ir evaluando en paralelo

la probabilidad de estados/observaciones para cada tiempo

q2qo

q1 q1

q2

Page 25: Sesión 5:  Modelos Ocultos de Markov

Incertidumbre - HMM, L.E. Sucar 25

Evaluación – método iterativo• Se define la variable “forward”:

t(i) = P (O1 O2 O3 O4 ... Ot , St = qi)

• Es decir, la probabilidad de una secuencia parcial de observaciones y que llegue a cierto estado

Page 26: Sesión 5:  Modelos Ocultos de Markov

Incertidumbre - HMM, L.E. Sucar 26

Algoritmo

1. Inicializaciónt(1) = P (O1, S1 = qi) = i bi (O1)

2. Inducciónt+1(j) = [ i t(i) aij ] bj (Ot+1)

3. TerminaciónP(O) = i T(i)

Page 27: Sesión 5:  Modelos Ocultos de Markov

Incertidumbre - HMM, L.E. Sucar 27

Complejidad

• En cada iteración se tiene del orden de N multiplicaciones y N sumas

• Para las T iteraciones:N2 x T

Page 28: Sesión 5:  Modelos Ocultos de Markov

Incertidumbre - HMM, L.E. Sucar 28

Secuencia óptima

• Encontrar la secuencia de estados óptima dada la secuencia de observaciones

• Óptimo se puede definir de diferentes maneras:– Estados más probables– Secuencia total más probable

Page 29: Sesión 5:  Modelos Ocultos de Markov

Incertidumbre - HMM, L.E. Sucar 29

Definiciones

• Variable “backward”: t(i) = P (Ot+1 Ot+2 ... OT , St = qi)

• En forma iterativa:t(j) = [ j t+1(j) aij ] bj (Ot+1)

• Definiendo:T(j) = 1

Page 30: Sesión 5:  Modelos Ocultos de Markov

Incertidumbre - HMM, L.E. Sucar 30

Definiciones

• Por lo tanto, combinando ambas definiciones:

P (O, St = qi) = t(i) t(i) • Y entonces:

P(O) = j t(i) t(i)

Page 31: Sesión 5:  Modelos Ocultos de Markov

Incertidumbre - HMM, L.E. Sucar 31

Cálculo iterativo

q2qo

q1 q1

q2

q1

q2

q1

q2

O1 O2 OTOt

Page 32: Sesión 5:  Modelos Ocultos de Markov

Incertidumbre - HMM, L.E. Sucar 32

Más definiciones

• Probabilidad condicional:t(i) = P (St = qi | O) = P (St = qi , O) / P (O)

• En términos de y :t(i) = t(i) t(i) / P(O)

t(i) = t(i) t(i) / i t(i) t(i)

Page 33: Sesión 5:  Modelos Ocultos de Markov

Incertidumbre - HMM, L.E. Sucar 33

Estados más probable

• El estado individual más probable para el tiempo t es:

ARG MAX i t(i) • El problema es que la concatenación de los

estados más probables no necesariamente corresponde a la secuencia más probable

Page 34: Sesión 5:  Modelos Ocultos de Markov

Incertidumbre - HMM, L.E. Sucar 34

Secuencia más probable

• Secuencia total más probable es:MAX P(Q | O)

• Dado que P(Q|O) = P(Q,O) / P(O), entonces es equivalente a:

MAX P(Q , O)

Page 35: Sesión 5:  Modelos Ocultos de Markov

Incertidumbre - HMM, L.E. Sucar 35

Algoritmo de Viterbi

• Antes de ver el algoritmo es necesario definir otra variable

• La subsecuencia de estados óptimos hasta el tiempo t:

t(i) = P (S1 S2 ... St = qi, O1 O2 ... Ot )• En forma iterativa:

t+1(i) = [ MAX t(i) aij ] bj (Ot+1)

Page 36: Sesión 5:  Modelos Ocultos de Markov

Incertidumbre - HMM, L.E. Sucar 36

Algoritmo1. Inicialización:1(i) = i bi (O1)

1(i) = 0

2. Recursiónt(i) = MAXi [t-1(i) aij ] bj (Ot)

t(i) = ARGMAXi [t(i)]

3. TerminaciónP*= MAXi [T(i)]

qT*= ARGMAXi [T(i)]

4. Backtrackingqt*= t+1(qt+1*)

Page 37: Sesión 5:  Modelos Ocultos de Markov

Incertidumbre - HMM, L.E. Sucar 37

Aprendizaje

• Consiste en determinar los parámetros del modelo, = {A, B, }, dada una secuencia de observaciones

• Para ello, se buscan los parámetros que maximizen P(O | ) – no se pueden obtener con precisión

• Número de parámetros:N + N2 + N x M

Page 38: Sesión 5:  Modelos Ocultos de Markov

Incertidumbre - HMM, L.E. Sucar 38

Algoritmo de Baum-Welch• Otra variable auxiliar – probabilidad de estar en el

estado i en t y pasar a j en t+1 dada la secuencia de observaciones:

t(i,j) = P (St = qi , St+1 = qj | O) = P (St = qi , St+1 = qj , O) / P (O)

• En términos de y :t(i,j) = t(i) aij bj (Ot+1) t+1(j) / P(O)t(i,j) = t(i) aij bj (Ot+1) t+1(j) /

i j t(i) aij bj (Ot+1) t+1(j)

Page 39: Sesión 5:  Modelos Ocultos de Markov

Incertidumbre - HMM, L.E. Sucar 39

Algoritmo de Baum-Welch• La variable t(i) se puede calcular como:

t(i) =j t(i,j)• Esta variable sumada sobre todos los tiempos da

una estimación del número de veces que se pasa por el estado “i”

t t(i) • Mientras que la suma sobre t de t(i,j) da una

estimación del número de transiciones de “i -> j”:

t t(i,j)

Page 40: Sesión 5:  Modelos Ocultos de Markov

Incertidumbre - HMM, L.E. Sucar 40

Re-estimación de los parámetros1. Probabilidades iniciales – número de veces en el

estaod “i” en t=1:i=1(i)

2. Probabilidades de transición – número de transiciones de “i -> j” entre el número de veces en “i”

aij = t t(i,j) / t t(i) 3. Probabilidades de salidas – número de veces en

estado “j” y observar “k” entre el número de veces en dicho estado:

bjk = t,O = k t(i) / t t(i)

Page 41: Sesión 5:  Modelos Ocultos de Markov

Incertidumbre - HMM, L.E. Sucar 41

Re-estimación de los parámetros

• Se inicia con ciertos valores (al azar) y se van mejorando iterativamente (se repite el proceso varias veces)

• Se obtiene un estimador de máxima verosimilitud

• No se garantiza el óptimo global

Page 42: Sesión 5:  Modelos Ocultos de Markov

Incertidumbre - HMM, L.E. Sucar 42

Aplicaciones

• Modelado de procesos dinámicos, como:– Reconocimiento de voz– Reconocimiento de gestos

Page 43: Sesión 5:  Modelos Ocultos de Markov

Incertidumbre - HMM, L.E. Sucar 43

Reconocimiento de voz

• Se modela a nivel palabra o fonema utilizando HMM

• Las observaciones consisten de vectores de característcas obtenidas del procesamiento de la señal de voz

• Se utilizan secuencias de voz para el entrenamiento y, posteriormente durante reconocimiento, se obtiene la probabilidad de cada modelo (palabra o fonema), seleccionando la de mayor probabilidad

Page 44: Sesión 5:  Modelos Ocultos de Markov

Incertidumbre - HMM, L.E. Sucar 44

Reconocimiento de voz

t ow m

ini mid fin

eyt ow

aa

Palabra: “tomato”

Fonema

Page 45: Sesión 5:  Modelos Ocultos de Markov

Incertidumbre - HMM, L.E. Sucar 45

Reconocimiento de gestos

Seguimiento de la mano en una secuenciaimágenes

Page 46: Sesión 5:  Modelos Ocultos de Markov

Incertidumbre - HMM, L.E. Sucar 46

Características• Observaciones:

– cambio en X (X)– cambio en Y (Y)– cambio en área (A)– cambio en razón X-Y (R)

• Cada una se codifica en 3 valores: (+, 0, -), lo que da un total de 81 posibles observaciones

X1,Y,1X2,Y2

A1A2

Page 47: Sesión 5:  Modelos Ocultos de Markov

Incertidumbre - HMM, L.E. Sucar 47

HMM• Se utiliza un HMM para cada gesto (5

gestos):– 3 estados: gestos simples– 5 estados: gestos complejos

Page 48: Sesión 5:  Modelos Ocultos de Markov

Incertidumbre - HMM, L.E. Sucar 48

Referencias

• L. R. Rabiner, B. H. Juang, “An introduction to hidden Markov models”, IEEE ASSP, Enero 1986.

• L. R. Rabiner, “A tutorial on hidden Markov Models and selected applications in speech recognition”, IEEE 1989.

• J. K. Kemeny, J. L. Snell, “Finite Markov Chains”, Van Nostrand, 1965.

Page 49: Sesión 5:  Modelos Ocultos de Markov

Incertidumbre - HMM, L.E. Sucar 49

Actividades

• Hacer ejercicio de HMM


Recommended