440 likes | 729 Views
ALGORITMO DE VITERBI. MODELOS DE MARKOV OCULTOS. PROCESOS ESTOCASTICOS. Conjunto de v.a {X t } t T tal que su distribución conjunta es conocida. Espacio de parámetros del proceso: T Espacio de Estados: Conjunto de todos los valores que pueden tomar la v.a. PROCESOS ESTOCASTICOS.
E N D
ALGORITMO DE VITERBI MODELOS DE MARKOV OCULTOS
PROCESOS ESTOCASTICOS Conjunto de v.a {Xt}tT tal que su distribución conjunta es conocida. Espacio de parámetros del proceso: T Espacio de Estados: Conjunto de todos los valores que pueden tomar la v.a
PROCESOS ESTOCASTICOS Conjunto de v.a {Xt}tT tal que su distribución conjunta es conocida. T: Espacio de parámetros del proceso Espacio de Estados: Conjunto de todos los valores que pueden tomar la v.a
CADENA DE MARKOV Finito contable, Finito contable Lanzar una moneda 1’000.000 de veces Espacio de estados S= {0,1} Espacio de Parámetros T= {1,2,......1’000.000} Def: Sea un proceso {Yn}nT un proceso estocástico con espacio de estados y parámetros contables se dice que el proceso es una cadena de markov si P(Yn = in | Yn1=i1,Yn2=i2,.....Ynj=ij) n1<n2<n3...<nj) P(Yn=in | Yns=is) : Probabilidad que en el período n este en el estado in
CADENA DE MARKOV • Posibles Casos: • Que el resultado solo dependa del último tiempo • Cuando las Yn son independientes, entonces las partes no dependen una de la otra.
CADENA DE MARKOV MATRIZ DE TRANSICIÓN Yn= No de pieza ocupada por el ratón en el tiempo n (No de pieza ocupada después de n movimientos) Pij = P(Yn=j / Yn-1 = i) Xn 1 2 3 4 5 6 7 8 9 Xn-1 1 0 ½ 0 ½ 0 0 0 0 0 2 1/3 0 1/3 0 1/3 0 0 0 0 . 9 1 2 3 4 5 6 0 <= Pij <= 1 Pij = 1 i-fila 8 9 7
MODELO DE MARKOV APLICADO A UNA SECUENCIA DE DATOS Definiciones • Secuencia finita de datos: yt1t4 = {yt1, yt2, yt3, yt4} • V.a que tome el valor de y: P(Y=y) • Modelo de probabilidad: P(x) • Distribución de Probabilidad Conjunta de una secuencia de observaciones T Y1= {Y1,Y2,Y3,....YT) Es dada por: T P(y1)= P(y1)P(y2/ y1)P(y3/y1y2)P(y4/y1y2y3) ..... T t-1 T P(y1)= P(y1) P(yt/y1 )
MODELO DE MARKOV OCULTOS Definiciones Dado que para una variable de estados multinomial Qt {1,2,...n}, el número de parámetros requeridos para representar la probabilidad de Transición P(qt|q t-1,q t-2,....q t-k} es O(n k+1), y dado que para un k pequeño no se satisfacen los supuestos estadísticos para un modelo de Markov, se asume la hipótesis, de que los datos pasados en el secuencia pueden ser consistentemente modelados a través de una variable de estado.
MODELO DE MARKOV OCULTOS Supuestos de un HMM Yt: Proceso Observable no “Markoviano” Qt: Conjunto de estados, “Markoviano” no observable de orden 1. Resume todos los valores pasados de las variables observadas y ocultas cuando se quiere predecir la variable observada Yten el estado Q t+1.:
MODELO DE MARKOV OCULTOS Supuestos de un HMM T Se relaciona con Y1= {Y1,Y2,Y3,....YT) La secuencia observada T La secuencia de estados no observados Q1= {Q1,Q2,Q3,....QT) Independencia t t-1 P(y 1 |q1,y1 ) = P(yt | qt) t t P(q t+1 |q1,y1 ) = P(qt+1 | qt)
MODELO DE MARKOV OCULTOS Supuestos de un HMM P(q1) 1 inicial, 0 otros casos Probabilidad de Estado Inicial P(qt|q t-1) Probabilidad de Transición Probabilidad de Emisión P(yt|q t) Estado Inicial Estado Final
MODELO DE MARKOV OCULTOS Distribución Conjunta de HMM T-1 T T T P(y1,q1) = P(q1) P(q t+1| qt) P(yt|qt) t=1 t=1 T T T P(y1,q1) = P(q1) P(y1|q1) P(q t| qt-1) P(yt|qt,qt-1) t=2 T Dado que Q1 no es observada realmente interesa representar la distribución de P(y1), entonces, T T T T T P(y1) = P(y1,q1) T t t-1 P(y1, qt) = P(yt|qt) P(qt|q t-1) P(y1 , q t-1))
MODELO DE MARKOV OCULTOS Problemas Básicos con HMM • .Evaluación de la Probabilidad: Calcular eficientemente la probabilidad de una secuencia dada. • Algoritmo de Forward o de Avance • Algoritmo de Backward o Retroceso • Secuencia de estados óptimo • Algoritmo de Viterbi • Estimación de Parámetros • Algoritmo de Baum-Welch (maximización): Optimizar las probabilidad de los parámetros del modelo, con el fin de ajustar los parámetros “secuencia de entrenamiento” hasta un punto dado.
MODELO DE MARKOV OCULTOS Probabilidades de Transición en un HMM Para algunas aplicaciones como en datos secuenciales o reconocimientos de cadenas (discurso) en un HMM se asume que los estados ocultos tienen un valor discreto, con una distribución multinomial, haciendo entonces que la probabilidad de Transición se pueda representar como: P(qt|q t-1) = Aij = P(Qt = i| q t-1 = j) Este supuesto no siempre se puede aplicar, cuando los estados ocultos presentan un comportamiento continuo se habla de un espacio de estados, en que la probabilidad es gaussiana. Por otro lado también pueden ser híbridos (discreta-continua)
MODELO DE MARKOV OCULTOS Probabilidades de Emisión en un HMM Para algunas aplicaciones como en datos secuenciales en un HMM Yt es una v.a discreta independiente y P(yt|q t), es multinomial. Entonces: P(yt|q t) = Bij = P(Yi | Qt =j) Y el vector de va. Yt se puede dividir en sub-vectores Yti y calcular: i P(yti| qt) Sin embargo en algunas aplicaciones, la distribución de emisión es normal o mezcla de normal
MODELO DE MARKOV OCULTOS Un ejemplo para generar una cadena en un HMM Sea QT = {1,2,3,F} = {a,b,c} P(q1) {1,0,0,0} 1 2 3 F a b c 0.0 0.3 0.7 0.3 0.6 0.1 1.0 0.0 0.0 0.2 0.5 0.3 0.0 0.1 0.0 0.9 0.0 0.0 0.0 0.4 0.6 Bij = 1 2 3 1 2 3 Aij =
MODELO DE MARKOV OCULTOS 0.0 0.3 0.7 0.3 0.6 0.1 1.0 0.0 0.0 a b c 0.4 0.2 0.1 1 0.9 0.6 0.5 iNIC 1 3 F 2 0.3 P(y1, qt) = t-1 P(yt|qt) P(qt|q t-1) P(y1 , q t-1)) P(cab, qt) = (P1.B1,c) (1x0.7)
MODELO DE MARKOV OCULTOS Un ejemplo para generar una cadena en un HMM 0.0 0.3 0.7 0.3 0.6 0.1 1.0 0.0 0.0 a b c 0.4 0.2 0.1 1 0.9 0.6 0.5 iNIC 1 3 F 2 0.3 P(y1, qt) = t-1 P(yt|qt) P(qt|q t-1) P(y1 , q t-1)) P(cab, qt) = (P1.B1,c) (A1,2.B2,b) (1x0.7) (0.5 x 0.6)
MODELO DE MARKOV OCULTOS Un ejemplo para generar una cadena en un HMM 0.0 0.3 0.7 0.3 0.6 0.1 1.0 0.0 0.0 a b c 0.4 0.2 0.1 1 0.9 0.6 0.5 iNIC 1 3 F 2 0.3 P(y1, qt) = t-1 P(yt|qt) P(qt|q t-1) P(y1 , q t-1)) P(cab, qt) = (P1.B1,c) (A1,2.B2,b) (A2,3.B3,a) (1x0.7) (0.5 x 0.6) (0.9 x 1)
MODELO DE MARKOV OCULTOS Un ejemplo para generar una cadena en un HMM 0.0 0.3 0.7 0.3 0.6 0.1 1.0 0.0 0.0 a b c 0.4 0.2 0.1 1 0.9 0.6 0.5 iNIC 1 3 F 2 0.3 P(y1, qt) = t-1 P(yt|qt) P(qt|q t-1) P(y1 , q t-1)) P(cab, qt) = (P1.B1,c) (A1,2.B2,b) (A2,3.B3,a) A3,F (0.6 x 1) (1x0.7) (0.5 x 0.6) (0.9 x 1)
MODELO DE MARKOV OCULTOS Un ejemplo para generar una cadena en un HMM 0.0 0.3 0.7 0.3 0.6 0.1 1.0 0.0 0.0 a b c 0.4 0.2 0.1 0.5 1 0.9 0.6 iNIC 1 3 F 2 0.3 P(y1, qt) = t-1 P(yt|qt) P(qt|q t-1) P(y1 , q t-1)) P(cab, qt) = (P1.B1,c) (A1,2.B2,b) (A2,3.B3,a) A3,F (0.6 x 1) (1x0.7) (0.5 x 0.6) (0.9 x 1) + (P1.B1,c) (1x0.7)
MODELO DE MARKOV OCULTOS Un ejemplo para generar una cadena en un HMM 0.0 0.3 0.7 0.3 0.6 0.1 1.0 0.0 0.0 a b c 0.4 0.2 0.1 0.5 1 0.9 0.6 iNIC 1 3 F 2 0.3 P(y1, qt) = t-1 P(yt|qt) P(qt|q t-1) P(y1 , q t-1)) P(cab, qt) = (P1.B1,c) (A1,2.B2,b) (A2,3.B3,a) A3,F (0.6 x 1) (1x0.7) (0.5 x 0.6) (0.9 x 1) + (P1.B1,c) (A1,2.B2,b) (1x0.7) (0.2 x 0.3)
MODELO DE MARKOV OCULTOS Un ejemplo para generar una cadena en un HMM 0.0 0.3 0.7 0.3 0.6 0.1 1.0 0.0 0.0 a b c 0.4 0.2 0.1 0.5 1 0.9 0.6 iNIC 1 3 F 2 0.3 P(y1, qt) = t-1 P(yt|qt) P(qt|q t-1) P(y1 , q t-1)) P(cab, qt) = (P1.B1,c) (A1,2.B2,b) (A2,3.B3,a) A3,F (0.6 x 1) (1x0.7) (0.5 x 0.6) (0.9 x 1) + (P1.B1,c) (A1,2.B2,b) (A2,3.B3,a) (1x0.7) (0.2 x 0.3) (0.3 x 1)
MODELO DE MARKOV OCULTOS Un ejemplo para generar una cadena en un HMM 0.0 0.3 0.7 0.3 0.6 0.1 1.0 0.0 0.0 a b c 0.4 0.2 0.1 0.5 1 0.9 0.6 iNIC 1 3 F 2 0.3 P(y1, qt) = t-1 P(yt|qt) P(qt|q t-1) P(y1 , q t-1)) P(cab, qt) = (P1.B1,c) (A1,2.B2,b) (A2,3.B3,a) A3,F (0.6 x 1) (1x0.7) (0.5 x 0.6) (0.9 x 1) + (P1.B1,c) (A1,2.B2,b) (A2,3.B3,a) A3,F (1x0.7) (0.2 x 0.3) (0.3 x 1) (0.6 x 1)
MODELO DE MARKOV OCULTOS Un ejemplo para generar una cadena en un HMM 0.0 0.3 0.7 0.3 0.6 0.1 1.0 0.0 0.0 a b c 0.4 0.2 0.1 0.5 1 0.9 0.6 iNIC 1 3 F 2 0.3 P(y1, qt) = t-1 P(yt|qt) P(qt|q t-1) P(y1 , q t-1)) P(cab, qt) = (P1.B1,c) (A1,2.B2,b) (A2,3.B3,a) A3,F 0.1134 (0.6 x 1) (1x0.7) (0.5 x 0.6) (0.9 x 1) +0.00756 + (P1.B1,c) (A1,2.B2,b) (A2,3.B3,a) A3,F 0.12 (1x0.7) (0.2 x 0.3) (0.6 x 1) (0.3 x 1)
MODELO DE MARKOV OCULTOS ALGORITMO DE VITERBI Muy usado para reconocimiento de voz, biología molecular, fonemas, palabras, codificadores entre otros). Para secuencia de estados le corresponde una secuencia de labels de clasificación (e.d, palabras, caracteres, fonemas, sufijos). Dado una secuencia observada Y1 = y1, inferir la más probable secuencia de estados Q1 = q1 T T T T V(i,t) = Si t=1 P(y1|Q1=i) P(Q1=i) Si t>1 Max {P(yt|Qt=i) P(Q=i|Qt-1=j) V(j,t-1)} j
0.1 0.2 iNIC 0.5 1 0.9 0.6 1 3 F 2 0.3 MODELO DE MARKOV OCULTOS EJEMPLO DE VITERBI V(bcbaa,t) b c b a a t Ini 1 0.0 0.3 0.7 1 0.3 0.6 0.1 2 1.0 0.0 0.0 3 F
MODELO DE MARKOV OCULTOS EJEMPLO DE VITERBI V(bcbaa,t) b c b a a t iNIC Ini 1 1 0.0 0.3 0.7 0.2 1 1 1*0.3 0.5 0.3 0.6 0.1 0.3 0.1 2 2 0.9 1.0 0.0 0.0 3 3 0.6 F F
MODELO DE MARKOV OCULTOS EJEMPLO DE VITERBI V(bcbaa,t) b c b a a t iNIC Ini 1 1 0.0 0.3 0.7 0.2 1 1 0.3 (0.3)*(0.2*0.7) 0.5 0.3 0.6 0.1 0.3 0.1 2 2 0.0 0.9 1.0 0.0 0.0 3 3 0.0 0.6 F F
MODELO DE MARKOV OCULTOS EJEMPLO DE VITERBI V(bcbaa,t) b c b a a t iNIC Ini 1 1 0.0 0.3 0.7 0.2 1 1 0.3 0.5 0.3 0.6 0.1 0.3 0.1 2 2 0.0 (0.3)*(0.5*0.1) 0.9 1.0 0.0 0.0 3 3 0.0 0.6 F F
MODELO DE MARKOV OCULTOS EJEMPLO DE VITERBI V(bcbaa,t) b c b a a t iNIC Ini 1 1 0.0 0.3 0.7 0.2 1 1 0.3 0.5 0.3 0.6 0.1 0.3 0.1 2 2 0.0 0.9 1.0 0.0 0.0 3 3 (0.3)*(0.3*0.0) 0.0 0.6 F F
MODELO DE MARKOV OCULTOS EJEMPLO DE VITERBI V(bcbaa,t) b c b a a t iNIC Ini 1 1 0.0 0.3 0.7 0.2 1 1 0.3 0.042 (0.042)*(0.2*0.3) 0.5 0.3 0.6 0.1 0.3 0.1 2 2 0.0 0.015 0.9 1.0 0.0 0.0 3 3 0.0 0.000 0.6 F F
MODELO DE MARKOV OCULTOS EJEMPLO DE VITERBI V(bcbaa,t) b c b a a t iNIC Ini 1 1 0.0 0.3 0.7 0.2 1 1 0.3 0.042 0.5 0.3 0.6 0.1 0.3 0.1 2 2 0.0 0.015 (0.042)*(0.5*0.6) 0.9 1.0 0.0 0.0 3 3 0.0 0.000 0.6 F F
MODELO DE MARKOV OCULTOS EJEMPLO DE VITERBI V(bcbaa,t) b c b a a t iNIC Ini 1 1 0.0 0.3 0.7 0.2 1 1 0.3 0.042 0.5 0.3 0.6 0.1 0.3 0.1 2 2 0.0 0.015 0.9 1.0 0.0 0.0 3 3 (0.042)*(0.3*0.0) 0.0 0.000 0.6 F F
0.1 0.2 iNIC 0.5 1 0.9 0.6 1 3 F 2 0.3 MODELO DE MARKOV OCULTOS EJEMPLO DE VITERBI V(bcbaa,t) b c b a a t Ini 1 0.0 0.3 0.7 1 0.3 0.042 (0.042)*(0.2*0.3) 0.3 0.6 0.1 2 (0.042)*(0.5*0.6) 0.015 1.0 0.0 0.0 3 0 (0.042)*(03*0.0 ) F
MODELO DE MARKOV OCULTOS EJEMPLO DE VITERBI V(bcbaa,t) b c b a a t iNIC Ini 1 1 0.0 0.3 0.7 0.2 1 1 0.3 0.042 0.0025 0.5 0.3 0.6 0.1 0.3 0.1 2 2 0.0 0.015 0.0126 0.9 1.0 0.0 0.0 3 3 0.0 0.000 0.000 0.6 F F
MODELO DE MARKOV OCULTOS EJEMPLO DE VITERBI V(bcbaa,t) b c b a a t iNIC Ini 1 1 0.0 0.3 0.7 0.2 1 1 0.3 0.042 0.0025 0.0126*(0.1*0.0) 0.5 0.3 0.6 0.1 0.3 0.1 2 2 0.0 0.015 0.0126 0.9 1.0 0.0 0.0 3 3 0.0 0.000 0.000 0.6 F F
MODELO DE MARKOV OCULTOS EJEMPLO DE VITERBI V(bcbaa,t) b c b a a t iNIC Ini 1 1 0.0 0.3 0.7 0.2 1 1 0.3 0.042 0.0025 0.5 0.3 0.6 0.1 0.3 0.1 2 2 0.0 0.015 0.0126 0.0126*(0.0*0.3) 0.9 1.0 0.0 0.0 3 3 0.0 0.000 0.000 0.6 F F
MODELO DE MARKOV OCULTOS EJEMPLO DE VITERBI V(bcbaa,t) b c b a a t iNIC Ini 1 1 0.0 0.3 0.7 0.2 1 1 0.3 0.042 0.0025 0.5 0.3 0.6 0.1 0.3 0.1 2 2 0.0 0.015 0.0126 0.9 1.0 0.0 0.0 3 3 0.0126*(0.9*1.0) 0.0 0.000 0.000 0.6 F F
MODELO DE MARKOV OCULTOS EJEMPLO DE VITERBI V(bcbaa,t) b c b a a t iNIC Ini 1 1 0.0 0.3 0.7 0.2 1 1 0.3 0.042 0.0025 0.00 0.5 0.3 0.6 0.1 0.3 0.1 2 2 0.0 0.015 0.0126 0.0004 0.9 1.0 0.0 0.0 3 3 0.0 0.0113 0.000 0.000 0.6 F F
MODELO DE MARKOV OCULTOS EJEMPLO DE VITERBI V(bcbaa,t) b c b a a t iNIC Ini 1 1 0.0 0.3 0.7 0.2 1 1 0.3 0.042 0.0025 0.00 0.00 0.5 0.3 0.6 0.1 0.3 0.1 2 2 0.0 0.015 0.0126 0.0004 0.00 0.9 1.0 0.0 0.0 3 3 0.0 0.0113 0.0045 0.000 0.000 0.6 F 0.0027 F