ALGORITMO DE VITERBI

Preview:

DESCRIPTION

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. - PowerPoint PPT Presentation

Citation preview

ALGORITMO DE VITERBI

MODELOS DE MARKOV OCULTOS

Conjunto de v.a {Xt}tT tal que su distribución conjunta es conocida.

Espacio de parámetros del proceso: TEspacio 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 procesoEspacio de Estados: Conjunto de todos los valores que pueden tomar la v.a

PROCESOS ESTOCASTICOS

PROCESOS ESTOCASTICOS

Estados Parámetros Procesos

Contable

Contable

Infinito no Cont.

Infinito

Contable

Infinito no Cont

Contable

Infinito

Cadena Markov

Estocástico

Estocástico

Estocástico

Finito contable, Finito contable Lanzar una moneda 1’000.000 de vecesEspacio 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

1 2 3

4 5 6

7 8 9

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

0 <= Pij <= 1 Pij = 1 i-fila

CADENA DE MARKOV

MATRIZ DE TRANSICIÓN

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

P(y1)= P(y1)P(y2/ y1)P(y3/y1y2)P(y4/y1y2y3) .....

MODELO DE MARKOV APLICADO A UNA SECUENCIA DE DATOS

Es dada por:

Definiciones

Y1= {Y1,Y2,Y3,....YT)

P(y1)= P(y1) P(yt/y1 ) T t-1

T

T

T

Dado que para una variable de estados multinomial Qt {1,2,...n}, el número de parámetros requeridos para representar la probabilidad deTransició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

Definiciones

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 Yt en el estado Q t+1.:

MODELO DE MARKOV OCULTOS

Supuestos de un HMM

MODELO DE MARKOV OCULTOS

Supuestos de un HMM

Independencia

Y1= {Y1,Y2,Y3,....YT)La secuencia observada Se relaciona con

La secuencia de estados Q1= {Q1,Q2,Q3,....QT)

T

T

P(y 1 |q1,y

1 ) = P(yt | qt) t-1 t

P(q t+1 |q1,y

1 ) = P(qt+1 | qt) t t

no observados

MODELO DE MARKOV OCULTOS

Supuestos de un HMM

Probabilidad de Estado Inicial P(q1)

Probabilidad de Transición P(qt|q t-1)

Probabilidad de Emisión P(yt|q t)

1 inicial, 0 otros casos

Estado Inicial Estado Final

MODELO DE MARKOV OCULTOS

Distribución Conjunta de HMM

TT-1

P(y1,q1) = P(q1) P(q t+1| qt) P(yt|qt)T

t=1 t=1

T

P(y1,q1) = P(q1) P(y1|q1) P(q t| qt-1) P(yt|qt,qt-1)TT

t=2

T

Dado que Q1 no es observada realmente interesa representar la distribución de P(y1), entonces,

T

T

P(y1) = P(y1,q1) T T T

T

T

P(y1, qt) =t P(yt|qt) P(qt|q t-1) P(y1 , q t-1))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) = A ij = 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

Y el vector de va. Yt se puede dividir en sub-vectores Yti y calcular:

P(yt|q t), es multinomial.

Entonces: P(yt|q t) = Bij = P(Yi | Qt =j)

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}

A ij =0.2 0.5 0.3 0.00.1 0.0 0.9 0.00.0 0.0 0.4 0.6

1 2 3 F

123

Bij = 0.0 0.3 0.70.3 0.6 0.11.0 0.0 0.0

a b c

123

MODELO DE MARKOV OCULTOS

1 2 3 FiNIC

0.5 0.9 0.6

0.1

0.3

0.2 0.4

1

0.00.30.7

abc

0.30.60.1

1.00.00.0

P(y1, qt) = P(yt|qt) P(qt|q t-1) P(y1 , q t-1))t-1

(P1.B1,c)P(cab, qt) =

(1x0.7)

MODELO DE MARKOV OCULTOS

Un ejemplo para generar una cadena en un HMM

1 2 3 FiNIC

0.5 0.9 0.6

0.1

0.3

0.2 0.4

1

0.00.30.7

abc

0.30.60.1

1.00.00.0

P(y1, qt) = P(yt|qt) P(qt|q t-1) P(y1 , q t-1))t-1

(P1.B1,c) (A1,2.B2,b) P(cab, qt) =

(1x0.7) (0.5 x 0.6)

MODELO DE MARKOV OCULTOS

Un ejemplo para generar una cadena en un HMM

1 2 3 FiNIC

0.5 0.9 0.6

0.1

0.3

0.2 0.4

1

0.00.30.7

abc

0.30.60.1

1.00.00.0

P(y1, qt) = P(yt|qt) P(qt|q t-1) P(y1 , q t-1))t-1

(P1.B1,c) (A1,2.B2,b) (A2,3.B3,a) P(cab, qt) =

(0.5 x 0.6) (0.9 x 1) (1x0.7)

MODELO DE MARKOV OCULTOS

Un ejemplo para generar una cadena en un HMM

1 2 3 FiNIC

0.5 0.9 0.6

0.1

0.3

0.2 0.4

1

0.00.30.7

abc

0.30.60.1

1.00.00.0

P(y1, qt) = P(yt|qt) P(qt|q t-1) P(y1 , q t-1))t-1

(P1.B1,c) (A1,2.B2,b) (A2,3.B3,a) A3,F P(cab, qt) =

(0.5 x 0.6) (0.9 x 1) (0.6 x 1) (1x0.7)

MODELO DE MARKOV OCULTOS

Un ejemplo para generar una cadena en un HMM

1 2 3 FiNIC

0.5 0.9 0.6

0.1

0.3

0.2 0.4

1

0.00.30.7

abc

0.30.60.1

1.00.00.0

P(y1, qt) = P(yt|qt) P(qt|q t-1) P(y1 , q t-1))t-1

(P1.B1,c) (A1,2.B2,b) (A2,3.B3,a) A3,F P(cab, qt) =

+ (P1.B1,c)

(0.5 x 0.6) (0.9 x 1) (0.6 x 1) (1x0.7)

(1x0.7)

MODELO DE MARKOV OCULTOS

Un ejemplo para generar una cadena en un HMM

1 2 3 FiNIC

0.5 0.9 0.6

0.1

0.3

0.2 0.4

1

0.00.30.7

abc

0.30.60.1

1.00.00.0

P(y1, qt) = P(yt|qt) P(qt|q t-1) P(y1 , q t-1))t-1

(P1.B1,c) (A1,2.B2,b) (A2,3.B3,a) A3,F P(cab, qt) =

+ (P1.B1,c)

(0.5 x 0.6) (0.9 x 1) (0.6 x 1) (1x0.7)

(A1,2.B2,b)(0.2 x 0.3)(1x0.7)

MODELO DE MARKOV OCULTOS

Un ejemplo para generar una cadena en un HMM

1 2 3 FiNIC

0.5 0.9 0.6

0.1

0.3

0.2 0.4

1

0.00.30.7

abc

0.30.60.1

1.00.00.0

P(y1, qt) = P(yt|qt) P(qt|q t-1) P(y1 , q t-1))t-1

(P1.B1,c) (A1,2.B2,b) (A2,3.B3,a) A3,F P(cab, qt) =

+ (P1.B1,c)

(0.5 x 0.6) (0.9 x 1) (0.6 x 1) (1x0.7)

(A1,2.B2,b) (A2,3.B3,a)(0.3 x 1)(0.2 x 0.3)(1x0.7)

MODELO DE MARKOV OCULTOS

Un ejemplo para generar una cadena en un HMM

1 2 3 FiNIC

0.5 0.9 0.6

0.1

0.3

0.2 0.4

1

0.00.30.7

abc

0.30.60.1

1.00.00.0

P(y1, qt) = P(yt|qt) P(qt|q t-1) P(y1 , q t-1))t-1

(P1.B1,c) (A1,2.B2,b) (A2,3.B3,a) A3,F P(cab, qt) =

+ (P1.B1,c)

(0.5 x 0.6) (0.9 x 1) (0.6 x 1) (1x0.7)

(A1,2.B2,b) (A2,3.B3,a) A3,F

(0.3 x 1)(0.2 x 0.3)(1x0.7) (0.6 x 1)

MODELO DE MARKOV OCULTOS

Un ejemplo para generar una cadena en un HMM

1 2 3 FiNIC

0.5 0.9 0.6

0.1

0.3

0.2 0.4

1

0.00.30.7

abc

0.30.60.1

1.00.00.0

P(y1, qt) = P(yt|qt) P(qt|q t-1) P(y1 , q t-1))t-1

(P1.B1,c) (A1,2.B2,b) (A2,3.B3,a) A3,F P(cab, qt) =

+ (P1.B1,c)

(0.5 x 0.6) (0.9 x 1) (0.6 x 1) (1x0.7)

(A1,2.B2,b) (A2,3.B3,a) A3,F

(0.3 x 1)(0.2 x 0.3)(1x0.7) (0.6 x 1)

0.1134+0.00756

0.12

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) =

Max {P(yt|Qt=i) P(Q=i|Qt-1=j) V(j,t-1)}

P(y1|Q1=i) P(Q1=i)

j

Si t=1Si t>1

MODELO DE MARKOV OCULTOS

EJEMPLO DE VITERBI V(bcbaa,t)

t

Ini

1

2

3

12

3F

iNIC0.5

0.90.6

0.1

0.3

1

0.20.00.30.7

0.30.60.1

1.00.00.0

F

b

1

c b a a

MODELO DE MARKOV OCULTOS

EJEMPLO DE VITERBI V(bcbaa,t)

t

Ini

1

2

3

12

3F

iNIC0.5

0.90.6

0.1

0.3

1

0.20.00.30.7

0.30.60.1

1.00.00.0

F

b

1

1*0.3

c b a a

MODELO DE MARKOV OCULTOS

EJEMPLO DE VITERBI V(bcbaa,t)

t

Ini

1

2

3

12

3F

iNIC0.5

0.90.6

0.1

0.3

1

0.20.00.30.7

0.30.60.1

1.00.00.0

F

1

0.3 (0.3)*(0.2*0.7)

b c b a a

0.0

0.0

MODELO DE MARKOV OCULTOS

EJEMPLO DE VITERBI V(bcbaa,t)

t

Ini

1

2

3

12

3F

iNIC0.5

0.90.6

0.1

0.3

1

0.20.00.30.7

0.30.60.1

1.00.00.0

F

1

0.3

(0.3)*(0.5*0.1)

b c b a a

0.0

0.0

MODELO DE MARKOV OCULTOS

EJEMPLO DE VITERBI V(bcbaa,t)

t

Ini

1

2

3

12

3F

iNIC0.5

0.90.6

0.1

0.3

1

0.20.00.30.7

0.30.60.1

1.00.00.0

F

1

0.3

(0.3)*(0.3*0.0)

b c b a a

0.0

0.0

MODELO DE MARKOV OCULTOS

EJEMPLO DE VITERBI V(bcbaa,t)

t

Ini

1

2

3

12

3F

iNIC0.5

0.90.6

0.1

0.3

1

0.20.00.30.7

0.30.60.1

1.00.00.0

F

1

0.3 0.042

0.015

0.000

b c b a a

0.0

0.0

(0.042)*(0.2*0.3)

MODELO DE MARKOV OCULTOS

EJEMPLO DE VITERBI V(bcbaa,t)

t

Ini

1

2

3

12

3F

iNIC0.5

0.90.6

0.1

0.3

1

0.20.00.30.7

0.30.60.1

1.00.00.0

F

1

0.3 0.042

0.015

0.000

b c b a a

0.0

0.0

(0.042)*(0.5*0.6)

MODELO DE MARKOV OCULTOS

EJEMPLO DE VITERBI V(bcbaa,t)

t

Ini

1

2

3

12

3F

iNIC0.5

0.90.6

0.1

0.3

1

0.20.00.30.7

0.30.60.1

1.00.00.0

F

1

0.3 0.042

0.015

0.000

b c b a a

0.0

0.0 (0.042)*(0.3*0.0)

MODELO DE MARKOV OCULTOS

EJEMPLO DE VITERBI V(bcbaa,t)

t

Ini

1

2

3

12

3F

iNIC0.5

0.90.6

0.1

0.3

1

0.20.00.30.7

0.30.60.1

1.00.00.0

F

b

1

0.3

c b a a

0.042

0.015

0

(0.042)*(0.2*0.3)

(0.042)*(0.5*0.6)

(0.042)*(03*0.0 )

MODELO DE MARKOV OCULTOS

EJEMPLO DE VITERBI V(bcbaa,t)

t

Ini

1

2

3

12

3F

iNIC0.5

0.90.6

0.1

0.3

1

0.20.00.30.7

0.30.60.1

1.00.00.0

F

1

0.3 0.042

0.015

0.000

b c b a a

0.0

0.0

0.0025

0.0126

0.000

MODELO DE MARKOV OCULTOS

EJEMPLO DE VITERBI V(bcbaa,t)

t

Ini

1

2

3

12

3F

iNIC0.5

0.90.6

0.1

0.3

1

0.20.00.30.7

0.30.60.1

1.00.00.0

F

1

0.3 0.042

0.015

0.000

b c b a a

0.0

0.0

0.0025

0.0126

0.000

0.0126*(0.1*0.0)

MODELO DE MARKOV OCULTOS

EJEMPLO DE VITERBI V(bcbaa,t)

t

Ini

1

2

3

12

3F

iNIC0.5

0.90.6

0.1

0.3

1

0.20.00.30.7

0.30.60.1

1.00.00.0

F

1

0.3 0.042

0.015

0.000

b c b a a

0.0

0.0

0.0025

0.0126

0.000

0.0126*(0.0*0.3)

MODELO DE MARKOV OCULTOS

EJEMPLO DE VITERBI V(bcbaa,t)

t

Ini

1

2

3

12

3F

iNIC0.5

0.90.6

0.1

0.3

1

0.20.00.30.7

0.30.60.1

1.00.00.0

F

1

0.3 0.042

0.015

0.000

b c b a a

0.0

0.0

0.0025

0.0126

0.000 0.0126*(0.9*1.0)

MODELO DE MARKOV OCULTOS

EJEMPLO DE VITERBI V(bcbaa,t)

t

Ini

1

2

3

12

3F

iNIC0.5

0.90.6

0.1

0.3

1

0.20.00.30.7

0.30.60.1

1.00.00.0

F

1

0.3 0.042

0.015

0.000

b c b a a

0.0

0.0

0.0025

0.0126

0.000

0.00

0.0004

0.0113

MODELO DE MARKOV OCULTOS

EJEMPLO DE VITERBI V(bcbaa,t)

t

Ini

1

2

3

12

3F

iNIC0.5

0.90.6

0.1

0.3

1

0.20.00.30.7

0.30.60.1

1.00.00.0

F

1

0.3 0.042

0.015

0.000

b c b a a

0.0

0.0

0.0025

0.0126

0.000

0.00

0.0004

0.0113

0.00

0.00

0.0045

0.0027

Recommended