49
Sesión 5: Modelos Ocultos de Markov

Sesión 5: Modelos Ocultos de Markov

  • Upload
    peers

  • View
    64

  • Download
    2

Embed Size (px)

DESCRIPTION

Sesión 5: Modelos Ocultos de Markov. 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. Máquina de estados. - PowerPoint PPT Presentation

Citation preview

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