36
Modelos Markovianos Escondidos Monograf´ ıa de Tratamiento Estad´ ıstico de Se˜ nales, Curso 2003 Andr´ es Ferragut Agosto de 2004 Resumen Los Modelos Markovianos Escondidos (Hidden Markov Models, HMM) constituyen una potente herramienta para el modelado de diversos sistemas que aparecen en el estudio de fen´omenos del mundo real. Esto se debe a su gran flexibilidad en la descripci´on de la din´amica del sistema, introduciendo dependencia en la evoluci´ on del mismo, y a su vez el que permite modelar las caracter´ ısticas aleatorias intr´ ınsecas de mediciones y ruido que aparecen en todos los fen´omenos pr´acticos. Desde el punto de vista matem´atico, los modelos obtenidos permiten obtener f´ormulas recursivas simples, de donde se obtienen filtros y estimadores de gran eficiencia computacional. Todo esto constituye un punto a favor decisivo, que hace que estos modelos hayan cobrado gran relevancia en las aplicaciones modernas. En este trabajo se introducen las caracter´ ısticas b´asicas de un Modelo Markoviano Escondido, as´ ı como las principales herramientas de estimaci´on y predicci´on a partir de observaciones, culminando con la presentaci´ on de algunas aplicaciones de inter´ es que se desarrollan en detalle. 1. Introducci´on Los Modelos Markovianos Escondidos (Hidden Markov Models, HMM) constituyen una rica familia de modelos param´ etricos que han sido utilizados recientemente en una gran canti- dad de aplicaciones. Se trata de una herramienta de modelado estoc´astico de se˜ nales mediante un tipo de proceso conocido como Proceso Markoviano Escondido (Hidden Markov Processes, HMP). La din´amica que genera el proceso se describe mediante un proceso de estados cuyo comportamiento estad´ ıstico se encuentra dictado por una cadena de Markov. Sin embargo, es- te proceso de estados no es observable directamente, lo que explica el t´ ermino “escondido”. La se˜ nal observada en tiempo t depende del estado en tiempo t, pero no de manera determin´ ıstica, introduci´ endose as´ ı una componente extra de aleatoriedad que hace el proceso mucho m´as rico que una cadena de Markov simple. Este tipo de procesos fue introducido en toda su generalidad en 1966 por Baum y Petrie [1] quienes le dieron el nombre de funciones probabil´ ısticas de cadenas de Markov. Dichos autores desarrollaron los primeros teoremas relacionados con las propiedades de ergodicidad del proceso, estudiando adem´as la estimaci´on de par´ametros del mismo, probando resultados de convergencia para estimadores de m´axima verosimilitud. Hacia 1970, los mismos autores junto con Soules y Weiss [2] desarrollaron las primeras estimaciones recursivas de las probabilidades de estado y transici´on, as´ ı como una estimaci´on eficiente por m´axima verosimilitud de los par´ametros del modelo mediante el algoritmo EM (expectation-maximization). El nombre “Hidden Markov Model” es introducido por Ferguson [8] en 1980, donde a su vez se estudian algunas aplicaciones al modelado del habla humana. 1

Instituto de Ingeniería Eléctrica – Sitio Oficial - …iie.fing.edu.uy/ense/asign/tes/materiales/monografias...2.1. Deflnici on Sea (›;A;P) un espacio de probabilidad, y sea

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Instituto de Ingeniería Eléctrica – Sitio Oficial - …iie.fing.edu.uy/ense/asign/tes/materiales/monografias...2.1. Deflnici on Sea (›;A;P) un espacio de probabilidad, y sea

Modelos Markovianos Escondidos

Monografıa de Tratamiento Estadıstico de Senales, Curso 2003

Andres Ferragut

Agosto de 2004

Resumen

Los Modelos Markovianos Escondidos (Hidden Markov Models, HMM) constituyenuna potente herramienta para el modelado de diversos sistemas que aparecen en el estudiode fenomenos del mundo real. Esto se debe a su gran flexibilidad en la descripcion dela dinamica del sistema, introduciendo dependencia en la evolucion del mismo, y a suvez el que permite modelar las caracterısticas aleatorias intrınsecas de mediciones y ruidoque aparecen en todos los fenomenos practicos. Desde el punto de vista matematico, losmodelos obtenidos permiten obtener formulas recursivas simples, de donde se obtienenfiltros y estimadores de gran eficiencia computacional. Todo esto constituye un punto afavor decisivo, que hace que estos modelos hayan cobrado gran relevancia en las aplicacionesmodernas.

En este trabajo se introducen las caracterısticas basicas de un Modelo MarkovianoEscondido, ası como las principales herramientas de estimacion y prediccion a partir deobservaciones, culminando con la presentacion de algunas aplicaciones de interes que sedesarrollan en detalle.

1. Introduccion

Los Modelos Markovianos Escondidos (Hidden Markov Models, HMM) constituyen unarica familia de modelos parametricos que han sido utilizados recientemente en una gran canti-dad de aplicaciones. Se trata de una herramienta de modelado estocastico de senales medianteun tipo de proceso conocido como Proceso Markoviano Escondido (Hidden Markov Processes,HMP). La dinamica que genera el proceso se describe mediante un proceso de estados cuyocomportamiento estadıstico se encuentra dictado por una cadena de Markov. Sin embargo, es-te proceso de estados no es observable directamente, lo que explica el termino “escondido”. Lasenal observada en tiempo t depende del estado en tiempo t, pero no de manera determinıstica,introduciendose ası una componente extra de aleatoriedad que hace el proceso mucho mas ricoque una cadena de Markov simple.

Este tipo de procesos fue introducido en toda su generalidad en 1966 por Baum y Petrie[1] quienes le dieron el nombre de funciones probabilısticas de cadenas de Markov. Dichosautores desarrollaron los primeros teoremas relacionados con las propiedades de ergodicidaddel proceso, estudiando ademas la estimacion de parametros del mismo, probando resultadosde convergencia para estimadores de maxima verosimilitud.

Hacia 1970, los mismos autores junto con Soules y Weiss [2] desarrollaron las primerasestimaciones recursivas de las probabilidades de estado y transicion, ası como una estimacioneficiente por maxima verosimilitud de los parametros del modelo mediante el algoritmo EM(expectation-maximization). El nombre “Hidden Markov Model” es introducido por Ferguson[8] en 1980, donde a su vez se estudian algunas aplicaciones al modelado del habla humana.

1

Page 2: Instituto de Ingeniería Eléctrica – Sitio Oficial - …iie.fing.edu.uy/ense/asign/tes/materiales/monografias...2.1. Deflnici on Sea (›;A;P) un espacio de probabilidad, y sea

Este tipo de modelos esta relacionado con los modelos de mezcla (mixture processes) queaparecen comunmente en aplicaciones estadısticas de ingenierıa y econometrıa. Los modelos demezcla explican el comportamiento de una variable como una mezcla o combinacion ponderadade diferentes distribuciones. En los HMM, esta mezcla esta dada por los estados y las diferentesdistribuciones estan constituidas por el comportamiento de la observacion en cada estado. ElHMM posee la ventaja adicional de que las observaciones no son necesariamente independientessino que se introduce dependencia a traves del proceso de estados.

Debido al uso del concepto de estado, los modelos HMM se relacionan tambien con lossistemas dinamicos, en el sentido de la teorıa de control y la teorıa de cadenas de Markovguarda cierta similitud con la teorıa de sistemas lineales de la teorıa de control clasica. Larepresentacion en variables de estado como las que aparecen en el filtro de Kalman puedenconsiderarse bajo ciertas hipotesis como modelos markovianos escondidos. El desarrollo deeste enfoque puede encontrarse en [7].

Los modelos HMM se relacionan tambien con un tipo de modelos conocido como MarkovModulated Poisson Processes, que constituyen una generalizacion de los procesos de Poissontradicionales, que encuentran gran aplicacion en el modelado de procesos de arribo, como serclientes, llamadas telefonicas, demandas de stock o accidentes de transito.

Entre las aplicaciones de los HMM, la que ha tenido mayor desarrollo es en el modeladoy reconocimiento automatico de voz humana. A su vez, se han aplicado en el modelado deregistros de lluvia o fenomenos meteorologicos. En teorıa de la informacion los modelos Marko-vianos, entre ellos los HMM han sido estudiados exhaustivamente. Algunos casos particularesde HMM ya habıan sido introducidos por Shannon en los primeros pasos de la construccion dela teorıa. En los ultimos anos, la teorıa de los HMM ha sido exhaustivamente extendida paraincorporar espacios de estado y de observacion cada vez mas generales, ası como algoritmosde estimacion cada vez mas eficientes. Este desarrollo se ve reflejado en la numerosa cantidadde aplicaciones que han encontrado estos modelos, en areas tan diversas como la biologıa, laeconomıa, el control, el procesamiento de senales de imagen y sonido, la deteccion de erroresy la codificacion y compresion, entre otras.

El objetivo de este trabajo es brindar un panorama general de las tecnicas relacionadascon los modelos markovianos escondidos. Para ello, en la seccion 2 se introducen brevementelas cadenas de Markov para luego definir formalmente el proceso markoviano escondido en3. Luego, en la seccion 4 se presentan las diferentes herramientas de estimacion a partirde las observaciones con que se cuenta en estos modelos. En particular, se presentan losalgoritmos de Baum y la aplicacion del algoritmo EM antes mencionado. Se presenta tambienun criterio para determinar la cantidad de estados del proceso de estados subyacente a partirde las observaciones. A continuacion, en la seccion 5, se describen algunas aplicaciones de losalgoritmos desarrollados, para luego presentar las conclusiones finales y algunas observacionesde interes en la seccion 6.

2. Cadenas de Markov

El objetivo de esta seccion y la siguiente es presentar detalladamente el modelo marko-viano escondido. Para ello, en esta seccion se definen y presentan brevemente las propiedadesprincipales de las cadenas de Markov, que constituiran el proceso de estados, a modo de repasoy de forma de unificar la notacion. En la seccion 3 se define en detalle el modelo markovianoescondido.

2

Page 3: Instituto de Ingeniería Eléctrica – Sitio Oficial - …iie.fing.edu.uy/ense/asign/tes/materiales/monografias...2.1. Deflnici on Sea (›;A;P) un espacio de probabilidad, y sea

2.1. Definicion

Sea (Ω,A,P) un espacio de probabilidad, y sea S un conjunto al que denominaremosespacio de estados. Un proceso estocastico en S es una familia Xtt∈T tal que para cadat ∈ T , Xt es una variable aleatoria que toma valores en S. El conjunto T es un conjuntoordenado de ındices, que en general es N o R.

Definicion 2.1 (Cadena de Markov). Una cadena de Markov con espacio de estados S,que supondremos numerable, es un proceso estocastico Xnn∈N en S tal que:

P (Xn+1 = j | Xn = i,Xn−1 = in−1, . . . , X0 = i0) = P (Xn+1 = j | Xn = i) (2.1)

para todo n ∈ N y todos los i, j, i0, . . . , in−1 ∈ S para los que la expresion anterior tienesentido.1

La ecuacion (2.1) se denomina propiedad de Markov y establece que el comportamiento(aleatorio) del proceso en tiempo n + 1 depende unicamente del estado en tiempo n y no dela historia previa del proceso. Generalmente se dice que el “futuro” depende unicamente delestado “actual” del proceso.

Es util considerar las probabilidades de transicion como entradas de una matriz. Se definela matriz de transicion en tiempo n a la matriz P(n) indexada en S cuyos elementos son:

pij(n) = P (Xn+1 = j | Xn = i) (2.2)

Como se observa en la ecuacion anterior, las probabilidades de transicion pueden depender deltiempo n. En el caso en que dichas probabilidades son constantes, la matriz P(n) no dependede n y se le llama simplemente matriz de transicion P. En este caso, la cadena de Markov sedice homogenea.

Observacion 2.1. Si el espacio de estados S es finito y #S = M , podemos asimilarlo al conjuntoS = 1, 2, . . . , M. En este caso, la matriz P es de tamano M ×M y es del tipo de matricesestudiado en algebra lineal. Si en cambio #S = ∞, entonces podemos asimilarlo a S = N yla matriz P ahora es una matriz infinita. En este caso, definimos las operaciones de matricesdel mismo modo que para matrices finitas. En particular C = AB es la matriz de entradascij =

∑∞k=1 aikbkj .

Las entradas pij de la matriz de transicion satisfacen que pij ≥ 0 por ser probabilidades,y dado que una transicion debe ser de un estado a algun otro, se tiene que:

j∈S

pij =∑

j∈S

P (Xn+1 = j | Xn = i) = P (Xn+1 ∈ S | Xn = i) = 1

por lo que las filas de la matriz de transicion suman 1. Toda matriz P (finita o infinita) conlas propiedades anteriores se denomina matriz estocastica y siempre puede construirse unacadena de Markov tal que P sea su matriz de transicion.

2.2. Distribucion de una Cadena de Markov homogenea

La propiedad de Markov (2.1) caracteriza a un cierto tipo de procesos, pero no definecompletamente la estructura de probabilidad de los mismos. Para completar la definicion,es necesario especificar la distribucion del estado inicial, es decir, la variable X0. Definimosentonces la distribucion inicial ν como:

ν0(i) = P (X0 = i) i ∈ S (2.3)1Recordemos que la probabilidad condicional esta bien definida si el suceso al que se condiciona tiene

probabilidad positiva.

3

Page 4: Instituto de Ingeniería Eléctrica – Sitio Oficial - …iie.fing.edu.uy/ense/asign/tes/materiales/monografias...2.1. Deflnici on Sea (›;A;P) un espacio de probabilidad, y sea

Observacion 2.2. Los valores ν0(i) : i ∈ S definen una distribucion de probabilidad en lossubconjuntos de S dada por Pν(A) =

∑i∈A ν0(i) = P (X0 ∈ A). Como trabajamos con espa-

cios numerables, alcanza con definir la distribucion de probabilidad dando la probabilidad decada estado, como en la ecuacion (2.3).

Pasemos ahora a estudiar la distribucion de una cadena de Markov homogenea. Para ellohay que estudiar las distribuciones conjuntas del proceso, dadas por:

p(i0, . . . , in) = P (X0 = i0, X1 = i1, . . . , Xn = in) ∀i0, . . . , in ∈ S

Para ello, observemos que la interseccion anterior puede escribirse, condicionando, como:

p(i0, . . . , in) = P (X0 = i0)P (X1 = i1 | X0 = i0) · · ·P (Xn = in | Xn−1 = in−1, . . . , X0 = i0)

y debido a la propiedad de Markov, los factores anteriores son la distribucion inicial y proba-bilidades de transicion, por lo que:

p(i0, . . . , in) = ν0(i0)pi0i1pi1i2 · · · pin−1in (2.4)

La ecuacion anterior brinda una expresion para la probabilidad de una trayectoria del proceso,hasta tiempo n. Por las mismas razones de la observacion 2.1, las probabilidades de trayecto-ria determinan completamente las distribuciones conjuntas del proceso. En particular hemosprobado que:

Proposicion 2.1. Las distribuciones de una cadena de Markov estan completamente deter-minadas por su distribucion inicial ν0 y su matriz de transicion P.

Una magnitud interesante es la distribucion de la cadena en tiempo n, es decir:

νn(i) = P (Xn = i) i ∈ S

Observemos que, ∀j ∈ S:

νn+1(j) = P (Xn+1 = j) =∑

i∈S

P (Xn+1 = j, Xn = i) =∑

i∈S

νn(i)pij (2.5)

Si interpretamos νn y νn+1 como vectores fila, la ecuacion anterior puede escribirse como larecurrencia:

νn+1 = νnP

Iterando la ecuacion anterior se obtiene que:

νn = ν0Pn ∀n ∈ N (2.6)

En particular, la matriz Pn representa las probabilidades de transicion en n pasos. En efecto,la entrada p

(n)ij de esta matriz verifica:

p(n)ij =

i1,...,in−1∈S

pii1pi1i2 · · · pin−1j = P (Xm+n = j | Xm = i) ∀m ∈ N

Como consecuencia, se tiene que:

p(n+m)ij =

k∈S

p(n)ik p

(m)kj i, j ∈ S (2.7)

lo que es consecuencia obvia de que toda transicion en n+m pasos de i a j debe pasar por algunestado intermedio k en tiempo n. El conjunto de ecuaciones (2.7) se denomina ecuaciones deChapman-Kolmogorov.

4

Page 5: Instituto de Ingeniería Eléctrica – Sitio Oficial - …iie.fing.edu.uy/ense/asign/tes/materiales/monografias...2.1. Deflnici on Sea (›;A;P) un espacio de probabilidad, y sea

2.3. Algunos ejemplos

Ejemplo 2.1 (Paseo al azar sin barreras). Sea X0 una variable aleatoria en Z, y Znn≥1

una sucesion de variables iid que toman los valores 1 y −1, de forma que P (Zn = 1) = p,p ∈ (0, 1), e independientes de X0. El proceso Xnn≥0 definido por la recurrencia:

Xn+1 = Xn + Zn+1

es una cadena de Markov con espacio de estados S = Z. Omitiremos la demostracion, perocalcularemos la matriz de transicion que esta dada por:

pij = P (Xn+1 = j | Xn = i) =

p si j = i + 11− p si j = i− 10 en otro caso

i, j ∈ Z.

La distribucion inicial de esta cadena esta dada por la de la variable X0.

Ejemplo 2.2 (Paseo al azar con barreras absorbentes). Este ejemplo es similar alanterior, solo que el espacio de estados se restringe a S = 0, 1, . . . , N ⊂ Z y cuando el procesollega al estado 0 o N no hay mas transiciones (de ahı el nombre de barreras absorbentes).Nuevamente, X0 es una variable que toma valores en S y Znn≥1 una sucesion de variablesiid que toman los valores 1 y −1, de forma que P (Zn = 1) = p, p ∈ (0, 1), e independientesde X0. El proceso se describe mediante una recurrencia donde:

Xn+1 =

Xn + Zn+1 si Xn ∈ 1, . . . , N − 1Xn si Xn = 0 o Xn = N

En este caso la matriz de transicion es finita y tiene la forma:

P =

1 0 0 0 . . . 01− p 0 p 0 . . . 0

0 1− p 0 p . . . 0...

.... . . . . . . . .

...0 0 . . . 1− p 0 p0 0 . . . 0 0 1

Nuevamente, la distribucion inicial de esta cadena esta dada por la de la variable X0.

Ejemplo 2.3 (Tienda de reparaciones). Este es un ejemplo basico de cola de espera.Supongamos que durante un dıa n se rompen Zn+1 maquinas, las cuales se ingresan a servicioel dıa n + 1. En la tienda de servicio se repara 1 maquina por dıa. Inicialmente, la tienda notiene maquinas para reparar X0 = 0. Si Xn es la cantidad de maquinas para reparar el dıa n,entonces se cumple que:

Xn+1 = (Xn − 1)+ + Zn+1

donde x+ = maxx, 0. Es decir, en el dıa n+1 quedan para reparar 1 menos que el dıa anterior(o 0 si no habıa ninguna) mas las que se generan en el dıa n. Si suponemos que Znn≥1 es unasucesion de variables iid entonces Xnn≥0 es una cadena de Markov con espacio de estadosS = N. La distribucion inicial esta concentrada en el estado 0. Si denotamos la distribucionde Zn como P (Zn = k) = ak entonces la matriz de transicion queda:

P =

a0 a1 a2 a3 . . .a0 a1 a2 a3 . . .0 a0 a1 a2 . . .0 0 a0 a1 . . ....

......

. . . . . .

5

Page 6: Instituto de Ingeniería Eléctrica – Sitio Oficial - …iie.fing.edu.uy/ense/asign/tes/materiales/monografias...2.1. Deflnici on Sea (›;A;P) un espacio de probabilidad, y sea

Todos los ejemplos antes presentados comparten una caracterıstica comun, y es que ad-miten una expresion en forma de recurrencia. El resultado general, que enunciamos a conti-nuacion, garantiza que este tipo de procesos constituye efectivamente una cadena de Markov.Omitimos la demostracion, que puede encontrarse en [4].

Teorema 2.1 (Cadena dirigida por ruido blanco). Sea Znn≥1 una sucesion de variablesaleatorias iid (ruido blanco) a valores en E, un espacio arbitrario. Sea S un espacio numerabley f : S × E → S una funcion. Sea X0 una variable aleatoria con valores en S independientede las Zn. La ecuacion de recurrencia:

Xn+1 = f(Xn, Zn+1) n ∈ N

define una cadena de Markov con espacio de estados S. Su distribucion inicial es ν(i) =P (X0 = i), i ∈ S y su matriz de transicion esta dada por:

pij = P (f(i, Z1) = j) i, j ∈ S

Si bien no todas las cadenas admiten esta representacion, es un resultado suficientementegeneral como para abarcar a gran parte de los modelos que aparecen en la practica.

2.4. Grafo y topologıa de la matriz de transicion

El grafo de una cadena de Markov es una representacion del espacio de estados y de lastransiciones que pueden ocurrir entre ellos. Sus vertices son los elementos de S. El grafo tieneuna arista dirigida del vertice i al j si y solo si pij > 0, es decir, transicion asociada tieneprobabilidad de ocurrir y dicha probabilidad se asocia a la arista.

A modo de ejemplo, en la figura 1 se muestran los grafos asociados a los ejemplos de laseccion anterior.

-1 0 1 2

p p p

1-p 1-p 1-p

p p

1-p 1-p

0 1 N-1 N

1 p

1-p 1-p 1

p

1-p

p

0 1 2

a0

a1

a2

a0 a1

a2

a0 a1

Figura 1: Grafos de los ejemplos anteriores

Definimos ahora algunas propiedades topologicas a partir del grafo.

6

Page 7: Instituto de Ingeniería Eléctrica – Sitio Oficial - …iie.fing.edu.uy/ense/asign/tes/materiales/monografias...2.1. Deflnici on Sea (›;A;P) un espacio de probabilidad, y sea

Definicion 2.2 (Accesibilidad y comunicacion). Se dice que el estado j es accesible desdeel estado i si existe m ≥ 0 tal que p

(m)ij > 0, es decir, existe probabilidad positiva para ir de i

a j en alguna cantidad de pasos. Se dice que los estados i y j estan comunicados si y solo si ies accesible desde j y j es accesible desde i. Lo denotaremos por i ↔ j.

Debido a que p(m)ij =

∑i1,...,im−1∈S pii1 · · · pim−1j se tiene que p

(m)ij > 0 ⇔ alguno de los

terminos de la suma es positivo, es decir, si existe al menos un camino que lleve de i a j, obien, un camino de i a j en el grafo de transiciones. A su vez, i ↔ j ⇔ existe un camino deida y vuelta a traves del grafo. Observemos tambien que un estado esta comunicado consigomismo en m = 0 pasos.

Con esta definicion, es facil chequear que la relacion ↔ es de equivalencia, por lo que parteel espacio de estados en clases que llamaremos clases de comunicacion. En los ejemplos 2.1 y2.3, existe una unica clase de comunicacion, mientras que en el ejemplo 2.2 existen tres clases:una compuesta por el estado 0, otra por el N y otra por el resto de los estados.

Definicion 2.3 (Conjunto cerrado). Un conjunto de estados C ⊂ S se dice cerrado ⇔∑j∈C pij = 1 para todo i ∈ C. Si el conjunto C consiste de un unico estado, se dice que ese

estado es absorbente.

Los estados 0 y N del ejemplo 2.2 son absorbentes. Si C es cerrado, todas las aristas delgrafo con origen en C vuelven a C y luego de que la cadena entra en este conjunto, no vuelvea salir de el.

Definicion 2.4 (Irreducibilidad). Si existe una unica clase de comunicacion, la cadena,ası como su matriz de transicion y su grafo se dicen irreducibles.

Los cadenas de los ejemplos 2.1 y 2.3 son irreducibles. Una cadena es irreducible si y solosi el unico subconjunto cerrado de estados es todo el espacio.

Otro fenomeno que ocurre en las cadenas de Markov es la periodicidad de los estados.Tomemos por ejemplo el caso del ejemplo 2.1. Es facil ver que p

(2k+1)00 = 0 para todo k ∈ N,

es decir, es imposible salir y volver al estado 0 en un numero impar de pasos. Dicho de otraforma, solo se puede volver al estado 0 en un numero par de transiciones. En este caso se diceque el estado 0 tiene perıodo 2. Es facil ver que lo mismo se cumple para todos los demasestados.

Por el contrario, en el ejemplo 2.3, se observa que puede irse, con cierta probabilidadpositiva, de un estado a otro en cualquier cantidad de pasos. En este caso, la cadena se diceaperiodica.

2.5. Comportamiento asintotico de una cadena

Una de las magnitudes que mas interesa estudiar en una cadena de Markov es su distribu-cion asintotica, es decir:

ν∞ = lımn

νn(i) = lımn

ν0Pn (2.8)

y en particular interesa determinar cuando este lımite no depende de ν0, la condicion inicialdel proceso.

De la ecuacion 2.5 sabemos que νn+1 = νnP. Supongamos que el lımite existe, pasando allımite en ambos lados de la igualdad se tiene que:

ν∞ = ν∞P

es decir, ν∞ debe ser vector propio fila de P, de valor propio 1.Esto motiva la siguiente definicion:

7

Page 8: Instituto de Ingeniería Eléctrica – Sitio Oficial - …iie.fing.edu.uy/ense/asign/tes/materiales/monografias...2.1. Deflnici on Sea (›;A;P) un espacio de probabilidad, y sea

Definicion 2.5 (Distribucion invariante). Una distribucion de probabilidad π en S se diceinvariante para una cadena Xn de matriz de transicion P si y solo si

π = πP

Observemos que si π es una distribucion invariante y tomamos como distribucion inicialν0 = π entonces:

νn(i) = P (Xn = i) = πPn = ((πP)P) . . .P = π

por lo que las variables Xn son identicamente distribuidas. Mas aun, puede probarse que:

Teorema 2.2 (Cadena estacionaria). Si el proceso Xn es una cadena de Markov conmatriz de transicion P y distribucion inicial π invariante para P ⇒ el proceso es estacionarioen sentido estricto.

La existencia y unicidad del lımite de la ecuacion (2.8), ası como de distribuciones inva-riantes, depende fuertemente de las propiedades topologicas definidas anteriormente. Para veresto, tomemos como ejemplo simple una cadena cuya matriz de transicion sea:

P =(

0 11 0

)

Esta cadena alterna indefinidamente entre sus dos estados, por lo que si por ejemplo ν0 = (1, 0)entonces:

ν2k = (1, 0) ν2k+1 = (0, 1) ∀k ≥ 0

por lo que ν∞ no existe. Sin embargo, la distribucion π = (1/2, 1/2) es una distribucioninvariante para esta cadena. El problema en este ejemplo es que la cadena es periodica, y esoproduce la oscilacion de νn.

Otro ejemplo simple pero ilustrativo es el de la matriz identidad:

P =(

1 00 1

)

Aquı el estado inicial es sorteado por ν0 y luego la cadena es absorbida por ese estado. Eneste caso, cualquier ν0 es invariante para P. Por lo tanto, existen tantos lımites ν∞ comodistribuciones iniciales. El problema en este caso es que la cadena no es irreducible, siendo enrealidad dos subcadenas no conectadas, y el entrar en una u otra depende del vector ν0, porlo que tambien depende de el el comportamiento asintotico.

A la luz de estos ejemplos, enunciamos el siguiente resultado que cierra el analisis para lascadenas finitas:

Teorema 2.3. Sea Xn una cadena de Markov con espacio de estados finito y matriz detransicion P, irreducible y aperiodica. Entonces:

1. Existe una unica distribucion invariante π para la matriz P.

2. Cualquiera sea la distribucion inicial ν0, se cumple que:

ν∞ = lımn

νn = π (2.9)

Omitimos la demostracion de este resultado que puede verse en [4].El teorema anterior indica que las condiciones iniciales de la cadena son olvidadas2 y que

en regimen la cadena se comporta como si ν0 = π. Por lo tanto, en regimen, las cadenas deeste tipo se ven como un proceso estacionario.

2Se puede probar ademas que la velocidad de convergencia es exponencial, ver [4].

8

Page 9: Instituto de Ingeniería Eléctrica – Sitio Oficial - …iie.fing.edu.uy/ense/asign/tes/materiales/monografias...2.1. Deflnici on Sea (›;A;P) un espacio de probabilidad, y sea

3. Modelo Markoviano Escondido (Hidden Markov Model)

En la seccion 2 se estudiaron brevemente las cadenas de Markov. En particular, el teorema2.3 establece que las cadenas irreducibles, aperiodicas y con espacio de estados finito son in-teresantes como modelo de procesos dependientes y estacionarios. Sin embargo, un proceso deeste tipo permite modelar senales que admiten un numero finito de valores. Es aquı donde apa-recen los modelos markovianos “escondidos”, donde una cadena de Markov regula solamentelas distribuciones de probabilidad de los valores observados y no determina unıvocamente elvalor.

3.1. Definicion

La definicion exacta de un Proceso de Markov Escondido (HMP) es la siguiente.

Definicion 3.1 (Proceso de Markov Escondido). Sea Xnn≥0 una cadena de Markovcon espacio de estados finito que asimilaremos al conjunto S = 1, . . . , N. Sea ademas (Y,Y)un espacio de medida que denominaremos espacio de observaciones. Supongamos que paracada x ∈ S existe una distribucion de probabilidad ρ(· | x) : Y → [0, 1] en el espacio Y . Unproceso de Markov escondido es un proceso bivariado (Xn, Yn)n≥0 con valores en S × Y talque:

P (Y0 ∈ B0, . . . , Yn ∈ Bn | X0 = x0, . . . , Xn = xn) =n∏

k=0

ρ(Bk | xk) (3.1)

para todo n ∈ N y Bk ∈ Y.

La definicion anterior implica que, dada la trayectoria del proceso de estados, las observa-ciones Yk son independientes y su distribucion depende unicamente del estado Xk. En efecto,tomando Bk = B fijo y Bj = Y para j 6= k en la ecuacion (3.1) se tiene que:

P (Yk ∈ B | X0 = x0, . . . , Xn = xn) = ρ(B | xk) = P (Yk ∈ B | Xk = xk) (3.2)

donde la ultima igualdad se debe a que el valor de la probabilidad no depende de xj , j 6= k.Esto no quiere decir que las observaciones sean independientes, como veremos en los ejemplos,pero sı que su dependencia esta unicamente en el proceso escondido X y no en el ruido ρ. Enla figura 2 se ilustran estas dependencias.

Xn-2 Xn Xn-1 Xn+1

Yn-2 Yn Yn-1 Yn+1

Proceso escondido

Observaciones:

Figura 2: Dependencias en un HMP

Observacion 3.1. Si el espacio de observaciones Y es finito, se dice que el proceso es un HMPcon alfabeto finito. En general, los procesos HMP son de alfabeto finito, o toman como espaciode observaciones Y = Rd para algun d.

Observacion 3.2. Si la cadena que da lugar al proceso de estados se encuentra en las hipotesisdel teorema 2.3 (lo que no se requiere para la definicion), entonces existira una ley invariante

9

Page 10: Instituto de Ingeniería Eléctrica – Sitio Oficial - …iie.fing.edu.uy/ense/asign/tes/materiales/monografias...2.1. Deflnici on Sea (›;A;P) un espacio de probabilidad, y sea

π. Si ν0 = π el proceso Xn sera estacionario. De la definicion (3.1) se desprende que eneste caso, Yn tambien es estacionario y aun mas, el proceso HMP conjunto (Xn, Yn) esestacionario. En este caso, los HMP sirven como modelo de fuentes estacionarias.

Existe una modelo de tıpico de tratamiento de senales para representar este tipo de pro-cesos, ilustrado en la figura 3.

Canal invariante y

sin memoria

p (y|x) Xn

Fuente

Markoviana

Yn

Señal

Observada

Figura 3: Modelo para el HMP

En esta formulacion, un proceso HMP resulta de observar una cadena de Markov a travesde un canal ruidoso. El comportamiento estadıstico de este canal esta determinado por lasdistribuciones ρ(· | ·) que modelan el ruido presente para cada estado de la entrada. El ruidointroducido en cada observacion es independiente de las demas (sin memoria), y su distribuciondepende unicamente del estado actual ocupado por el proceso X (y no del tiempo, de ahı quesea invariante).

3.2. Ejemplos

Ejemplo 3.1 (Ruido blanco aditivo). Supongamos que se tiene una situacion como la dela figura 3, donde se transmite a traves de un canal una fuente markoviana estacionaria, ydonde el proceso de salida puede representarse como:

Yn = c(Xn) + Wn (3.3)

siendo c(·) una funcion que asigna a cada sımbolo (estado de Xn) un nivel en el canal y Wnruido blanco gaussiano de media nula y potencia σ2, independiente del mensaje.

Denotemos por ci = c(i) el nivel de senal correspondiente al estado Xn = i. Entonces ladistribucion de Yn dado que Xn = i (es decir, ρ(· | i)) es normal, con media ci y varianza σ2.En este caso, el espacio de observaciones Y = R. La distribucion de Yn admite una densidaddada por:

p(y) =N∑

i=1

πi1√2πσ

e−(y−ci)

2

2σ2

siendo πi = P (Xn = i) la distribucion invariante de la cadena.En la figura 4 se simula un proceso de este tipo. En este caso se tomaron dos estados y los

siguientes parametros:

P =(

0,9 0,10,1 0,9

)π = (0,5 0,5) c = (−1 1) σ = 0,3

Ejemplo 3.2 (Ruido dependiente del estado). Una generalizacion inmediata del ejemploanterior es permitir que la potencia del ruido dependa del nivel de la senal. En este caso,existen dos funciones, c(·) y σ(·), que modelan el nivel de senal y la potencia del ruido en elcanal, y el proceso de observacion puede representarse como:

Yn = c(Xn) + σ(Xn)Wn

10

Page 11: Instituto de Ingeniería Eléctrica – Sitio Oficial - …iie.fing.edu.uy/ense/asign/tes/materiales/monografias...2.1. Deflnici on Sea (›;A;P) un espacio de probabilidad, y sea

0 50 100 150 200 250 300−2

−1.5

−1

−0.5

0

0.5

1

1.5

2Cadena escondidaObservaciones

Figura 4: Cadena observada a traves de ruido aditivo

siendo Xn una cadena en estado estacionario y Wn ruido blanco gaussiano de media nula ypotencia 1.

Denotando ci = c(i) y σi = σ(i), la distribucion de Yn dado que Xn = i es normal, conmedia ci y varianza σ2

i . La densidad de Yn es ahora:

p(y) =N∑

i=1

πi1√2πσi

e− (y−ci)

2

2σ2i

siendo πi = P (Xn = i) la distribucion invariante de la cadena.

Ejemplo 3.3 (Video codificado). Cuando se transmite por una red datos de video concodificacion predictiva (MPEG) se observan dos tipos de cuadros que dan lugar a diferentestamanos de paquete. Estos son los cuadros en que hay cambio de escena (lo que producemayor cantidad de datos) y los cuadros de una misma escena (que son relativamente parecidos,produciendo pocos datos nuevos).

Un modelo simple para este tipo de procesos es asumir que hay un proceso de estados Xn

que gobierna los cambios de escena y que tiene dos estados. La cantidad de datos que arribanen cada cuadro sera Yn cuya distribucion sera F0 cuando hay baja intensidad y F1 cuando hayalta intensidad. Pueden tomarse por ejemplo distribuciones exponenciales de parametros λ0 yλ1, donde λ0 À λ1 para que el estado 0 produzca menos datos.

Si se puede asumir independencia entre cuadros de un mismo estado tenemos que el proceso(Xn, Yn) es un HMP con S = 0, 1 y ρ(· | i) esta dada a traves de su funcion de distribucionFi.

En la figura 5 se observa una simulacion de un proceso de este tipo, utilizando distribucionesexponenciales en cada estado.

3.3. Distribucion del proceso

A partir de la definicion (3.1) puede calcularse la distribucion conjunta de un procesoHMP (Xn, Yn). Supondremos a partir de ahora que las distribuciones ρ(· | x) admiten unafuncion de probabilidad (variable discreta) o una densidad (variable continua) en el espaciode observaciones, que denotaremos indistintamente b(y | x) para cada x ∈ S.

11

Page 12: Instituto de Ingeniería Eléctrica – Sitio Oficial - …iie.fing.edu.uy/ense/asign/tes/materiales/monografias...2.1. Deflnici on Sea (›;A;P) un espacio de probabilidad, y sea

0 20 40 60 80 100 120 140 160 180 2000

50

100

150

Yn

0 20 40 60 80 100 120 140 160 180 200−0.5

0

0.5

1

1.5

n

Xn

Figura 5: Modelo de video codificado, λ0 = 50λ1.

Adoptaremos ademas la siguiente notacion: la sucesion de estados xm, xm+1, . . . , xn seabreviara como xn

m. Analogamente, ynm representa la sucesion de observaciones ym, . . . , yn.

Por ultimo, abreviaremos xn0 e yn

0 como xn e yn respectivamente.Con esta notacion, la ecuacion (3.1) puede escribirse en terminos de densidades como:

p(yn | xn) =n∏

k=0

b(yk | xk) (3.4)

A su vez, el que Xn sea una cadena de Markov permite aplicar la ecuacion (2.4) paraescribir:

p(xn) = ν0(x0)px0x1 . . . pxn−1xn (3.5)

siendo ν0 la distribucion inicial y pij las entradas de la matriz de transicion.De (3.4) y (3.5) surge la densidad conjunta del proceso:

p(xn, yn) = p(yn | xn)p(xn) = ν0(x0)b(y0 | x0)n∏

k=1

pxk−1xkb(yk | xk) (3.6)

que puede reinterpretarse como:

p(xn, yn) = p(x0, y0)n∏

k=1

p(xk, yk | xk−1)

Con estas ecuaciones es sencillo hallar la distribucion marginal del proceso de observacionesY , que estara dada por:

p(yn) =∑

xn∈Sn+1

p(xn, yn) =∑

xn∈Sn+1

p(x0, y0)

n∏

k=1

p(xk, yk | xk−1)

(3.7)

Sin embargo, esta ecuacion es poco practica debido a que la suma debe hacerse sobre lasNn+1 posibles secuencias de estados hasta tiempo n, una magnitud poco manejable parasecuencias largas aun con espacio de estados pequeno. Mas adelante veremos formas recursivasde implementar este calculo.

12

Page 13: Instituto de Ingeniería Eléctrica – Sitio Oficial - …iie.fing.edu.uy/ense/asign/tes/materiales/monografias...2.1. Deflnici on Sea (›;A;P) un espacio de probabilidad, y sea

4. Estimacion en Modelos Markovianos Escondidos

Pasemos ahora a estudiar los problemas de estimacion que se presentan cuando uno pre-tende utilizar un Modelo Markoviano Escondido para modelar el comportamiento de una senalobservada yn.

En primer lugar, si se dispone del modelo estadıstico que rige el proceso, se presenta elproblema de recuperar la secuencia de estados (la parte oculta) a partir de las observaciones,es decir, el problema del filtrado o de regresion.

En segundo lugar, si no se dispone del modelo pero sı se dispone de observaciones delmismo, aparece el problema del aprendizaje, es decir, ajustar los parametros del modelo paraencontrar aquel proceso markoviano escondido que se ajuste mejor a las observaciones.

En cada una de las subsecciones siguientes se describen en detalle los algoritmos principalesque se han desarrollado para atacar estos dos problemas. La presentacion sigue las lıneas de[6].

4.1. Estimacion de estados

El primer problema interesante entonces desde el punto de vista de tratamiento de senalesque presentan los Modelos Markovianos Escondidos es el de recuperar el proceso escondido deestados Xn a partir de las observaciones Yn.

Supongamos que (Xn, Yn)n≥0 es un HMP con N estados, distribucion inicial π y matrizde transicion P. Sea b(· | x) la densidad (o ley) de la observacion Yn cuando Xn = x para cadax ∈ S. El objetivo es, dada la sucesion de observaciones hasta tiempo n, hallar un estimadordel estado Xk = T (Y0, . . . , Yn). En la terminologıa de tratamiento de senales, este problemase denomina filtrado cuando k = n, prediccion cuando k > n o suavizado cuando k < n.

El criterio mas sencillo para construir el estimador Xk es minimizar la probabilidad de errorP

(Xk 6= Xk | Y0, . . . , Yn

). La regla es entonces, para cada secuencia observada yn, calcular la

distribucion p(xk | yn) en el espacio de estados y elegir:

xk : p(xk | yn) = maxxk

p(xk | yn) (4.1)

lo que se conoce como estimacion por maximo a posteriori del estado o sımbolo xk. Para queel metodo sea razonable, se requiere una forma eficiente de calcular p(xk | yn) a partir de lasobservaciones y los parametros del modelo, como veremos mas adelante.

En el problema de suavizado es conveniente introducir un segundo criterio para construirla estimacion. Este consiste en minimizar la probabilidad conjunta de error, y no sımbolo asımbolo, eligiendo la secuencia completa de estados de forma tal que:

xn : p(xn | yn) = maxxn∈Sn+1

p(xn | yn) (4.2)

conduciendo a una estimacion por maximo a posteriori de la secuencia xn. Este problema esa priori mas complejo debido a que el maximo se toma sobre Nn+1 posibles secuencias, locual crece rapidamente con n. Sin embargo, se presentara mas adelante el algoritmo de Viterbique permite realizar esta optimizacion de forma eficiente, valiendose de las propiedades delproceso.

A modo de comparacion, el criterio (4.1) minimiza el error sımbolo a sımbolo, lo quepuede ser util en los problemas de filtrado y prediccion. Sin embargo, la secuencia de estadosestimada obtenida por este metodo no necesariamente constituye una secuencia posible deestados (es decir, puede ocurrir que xk = i, xk+1 = j siendo pij = 0). El criterio (4.2)soluciona este problema debido a que si p(xn) = 0 entonces p(xn | yn) = 0 por lo que las

13

Page 14: Instituto de Ingeniería Eléctrica – Sitio Oficial - …iie.fing.edu.uy/ense/asign/tes/materiales/monografias...2.1. Deflnici on Sea (›;A;P) un espacio de probabilidad, y sea

secuencias imposibles no constituyen posibles maximos. Esto resulta util en el problema delsuavizado, donde se busca recuperar la secuencia completa.

Pasemos ahora a describir los algoritmos.

4.1.1. Ecuaciones forward-backward

Se desea hallar, utilizando las propiedades del proceso vistas en la seccion 3.3, un metodorecursivo de calculo de la magnitud p(xk | yn). Comencemos estudiando el caso del filtrado,es decir, k = n.

Se tiene que:

p(xn | yn) =p(xn, yn)

p(yn)=

p(xn, yn)∑xn∈S p(xn, yn)

(4.3)

por lo que el calculo de p(xn | yn) depende del calculo de la denominada densidad haciaadelante (forward density) α(xn, yn) = p(xn, yn).

Observemos que α(x0, y0) = p(x0, y0) = π(x0)b(y0 | x0), donde hemos usado la distribucion

inicial del proceso. Ademas:

α(xk+1, yk+1) = p(xk+1, y

k, yk+1) =∑

xk∈S

p(xk, xk+1, yk, yk+1)

=∑

xk∈S

p(yk+1 | xk, xk+1, yk)p(xk+1 | xk, y

k)p(xk, yk)

y usando las propiedades del proceso, se tiene que p(yk+1 | xk, xk+1, yk) = p(yk+1 | xk+1) =

b(yk+1 | xk+1), p(xk+1 | xk, yk) = p(xk+1 | xk) = pxkxk+1

por lo que se tiene la recurrenciahacia adelante (forward equation):

α(x0, y0) = π(x0)b(y0 | x0) (4.4a)

α(xk+1, yk+1) = b(yk+1 | xk+1)

xk∈S

α(xk, yk)pxkxk+1

(4.4b)

Esto resuelve el problema del filtrado reescribiendo (4.3) como:

p(xn | yn) =α(xn, yn)∑

xn∈S α(xn, yn)xn ∈ S (4.5)

lo que permite aplicar (4.1) para elegir el estado.En el camino hemos encontrado un metodo alternativo a la ecuacion (3.7) para calcular la

verosimilitud de una secuencia de observaciones, que es simplemente:

p(yn) =∑

xn∈S

α(xn, yn) (4.6)

La ecuacion (4.6) requiere del orden de nN2 operaciones, que es lineal en n, mientras que laevaluacion directa de (3.7) requiere del orden de nNn operaciones.

Observemos que el calculo de α resuelve tambien el problema de prediccion. En efecto, sise desea calcular p(xn+1 | yn) basta observar que:

p(xn+1, yn) =

xn∈S

p(xn+1, xn, yn) =∑

xn∈S

p(xn+1 | xn, yn)p(xn, yn) =∑

xn∈S

p(xn, yn)pxnxn+1

por lo que:

p(xn+1 | yn) =1

p(yn)

xn∈S

p(xn, yn)pxnxn+1 =∑

xn∈S

p(xn | yn)pxnxn+1

14

Page 15: Instituto de Ingeniería Eléctrica – Sitio Oficial - …iie.fing.edu.uy/ense/asign/tes/materiales/monografias...2.1. Deflnici on Sea (›;A;P) un espacio de probabilidad, y sea

Esta ultima ecuacion es similar a la ecuacion (2.5) para cadenas de Markov, y estableceque la distribucion condicional a yn del proceso Xn+mm≥0 es la de una cadena de matrizde transicion P y distribucion inicial p(xn | yn). Es decir, conocidas las probabilidades delproblema de filtrado, el proceso de estados “futuros”se comporta como una cadena a partirde esta distribucion inicial.

Resta estudiar el problema de suavizado. En este caso se requiere calcular p(xk, yn) con

k < n. Observemos que:

p(xk, yn) = p(xk, y

k, ynk+1) = p(yn

k+1 | xk, yk)p(xk, y

k) (4.7)

donde ahora aparece α(xk, yk). Se cumple tambien que p(yn

k+1 | xk, yk) = p(yn

k+1 | xk) yaque, dado xk, el pasado y el futuro son independientes (por la prop. de Markov) y por lotanto las observaciones tambien lo son. Llamaremos densidad hacia atras (backward density)β(yn

k+1 | xk) a p(ynk+1 | xk).

Observemos que:

β(ynk+1 | xk) =

xk+1∈S

p(ynk+1, xk+1 | xk) =

xk+1∈S

p(ynk+1 | xk+1, xk)p(xk+1 | xk)

En la ecuacion anterior, p(xk+1 | xk) = pxkxk+1y p(yn

k+1 | xk+1, xk) puede descomponerse parak < n como:

p(ynk+1 | xk+1, xk) = p(yk+1, y

nk+2 | xk+1, xk) = b(yk+1 | xk+1)p(yn

k+2 | xk+1)

donde hemos usado nuevamente la estructura de dependencias del proceso.De las ultimas dos ecuaciones surge la denominada recurrencia hacia atras (backward

equation):

β(ynn+1 | xn) = 1 (4.8a)

β(ynk+1 | xk) =

xk+1∈S

β(ynk+2 | xk+1)pxkxk+1

b(yk+1 | xk+1) (4.8b)

Volviendo a la ecuacion (4.7), se tiene que p(xk, yn) = α(xk, y

n)β(ynk+1 | xk) y

p(xk | yn) =α(xk, y

n)β(ynk+1 | xk)∑

xk∈S α(xk, yn)β(ynk+1 | xk)

(4.9)

lo que resuelve el problema del suavizado a partir de las recurrencias (4.4) y (4.8). La ecuacion(4.9) se reduce a (4.5) para k = n.

Si bien en teorıa estas ecuaciones constituyen una solucion satisfactoria, presentan algunosproblemas de estabilidad numerica que complican su utilizacion. Una idea intuitiva de porque surgen complicaciones se desprende directamente de la ecuacion (4.4b). Allı se observaque en cada iteracion se multiplica α por una probabilidad de transicion, que es un numeromenor a 1. A medida que n crece, el efecto agregado de todas estas multiplicaciones hacenque la densidad α tome valores cada vez mas pequenos (la suma de N terminos y el productopor b(y | x) en cada paso a la larga siempre es despreciable).

Se hace necesaria otra forma de llevar a cabo el calculo, a traves de una estimacion directade p(xk | yn) sin pasar por p(xk, y

n). Comencemos por el problema del filtrado, es decir k = n.Utilizando la formula de Bayes se tiene, para el primer paso:

p(x0 | y0) = p(x0 | y0) =p(y0 | x0)p(x0)∑

x0∈S p(y0 | x0)p(x0)=

b(y0 | x0)π(x0)∑x0∈S b(y0 | x0)π(x0)

15

Page 16: Instituto de Ingeniería Eléctrica – Sitio Oficial - …iie.fing.edu.uy/ense/asign/tes/materiales/monografias...2.1. Deflnici on Sea (›;A;P) un espacio de probabilidad, y sea

Ahora que disponemos de p(x0 | y0) podemos hacer una primera prediccion de X1 mediante:

p(x1 | y0) =∑

x0∈S

p(x1 | x0, y0)p(x0 | y0)

donde ademas p(x1 | x0, y0) = p(x1 | x0) = px0x1 . Ahora, esta estimacion puede usarse como

insumo para estimar p(x1 | y1) completando la recurrencia. El calculo es:

p(x1 | y1) = p(x1 | y0, y1) =p(y1 | x1, y

0)p(x1 | y0)∑x0∈S p(y1 | x1, y0)p(x1 | y0)

=b(y0 | x0)p(x1 | y0)∑

x0∈S b(y0 | x0)p(x1 | y0)

donde en la ultima igualdad hemos usado ademas que dado x1, y1 es independiente de lasdemas observaciones.

Lo que hemos hallado es una doble recurrencia que permite calcular la llamada densidadpredictiva de estado, p(xn+1 | yn). La recurrencia completa se resume en:

p(x0 | y0) =b(y0 | x0)π(x0)∑

x0∈S b(y0 | x0)π(x0)(4.10a)

p(xk+1 | yk) =∑

xk∈S

p(xk | yk)pxkxk+1(4.10b)

p(xk+1 | yk+1) =b(yk+1 | xk+1)p(xk+1 | yk)∑

xk+1∈S b(yk+1 | xk+1)p(xk+1 | yk)(4.10c)

Las ecuaciones (4.10) proveen una recurrencia estable para p(xn | yn) y p(xn+1 | yn).Para el problema del suavizado el algoritmo consiste en calcular todas las densidades

predictivas utilizando (4.10) y luego realizar una recurrencia hacia atras para calcular p(xk |yn) con k < n a partir del valor siguiente p(xk+1 | yn) y de la densidad predictiva p(xk+1 | yk).La recurrencia se realiza en dos pasos y consiste en:

p(xk, xk+1 | yn) = p(xk | yk)pxkxk+1

p(xk+1 | yn)p(xk+1 | yk)

(4.11a)

p(xk | yn) =∑

xk+1∈S

p(xk, xk+1 | yn) (4.11b)

con k < n. Cabe acotar ademas que la ecuacion (4.11a) brinda un estimador de las probabi-lidades de salto en tiempo k a partir de las observaciones. Esta estimacion sera util para elajuste de parametros del modelo que se discute en la seccion 4.2.

4.1.2. Algoritmo de Viterbi

El algoritmo de Viterbi es una alternativa a las ecuaciones forward-backward presentadasen la seccion anterior para el suavizado de HMMs. El objetivo del mismo es resolver demanera eficiente el problema planteado en la ecuacion (4.2), es decir, hallar la sucesion deestados xn que maximiza la verosimilitud conjunta p(xn, yn) del proceso observado. Para ello,reescribamos la densidad conjunta de la ecuacion (3.6) como:

p(xn, yn) = π(x0)b(y0 | x0)n∏

k=1

pxk−1xkb(yk | xk) = e−U(xn,yn)

Donde:

U(xn, yn) = − log(π(x0)b(y0 | x0))−n∑

k=1

log(pxk−1xkb(yk | xk))

16

Page 17: Instituto de Ingeniería Eléctrica – Sitio Oficial - …iie.fing.edu.uy/ense/asign/tes/materiales/monografias...2.1. Deflnici on Sea (›;A;P) un espacio de probabilidad, y sea

Maximizar p(xn, yn) es equivalente entonces a minimizar U(xn, yn) como funcion de xn. Defi-niendo:

u0(x0) = − log (π(x0)b(y0 | x0))u(xk−1, xk) = − log

(pxk−1xk

b(yk | xk))

tenemos asociado a cada estado x ∈ S un costo inicial u0 y un costo de transicion u en paracada transicion. La funcion U(xn, yn) es simplemente:

U(xn, yn) = u0(x0) +n∑

k=1

u(xk−1, xk)

Observemos que u(xk−1, xk) puede ser infinito si la probabilidad de la transicion es 0. Utambien puede ser infinito si la probabilidad de alguna transicion u observacion es 0 para lasecuencia de estados elegida.

Para entender el algoritmo, supongamos que conocemos para cada estado x, el costo ck(x)de la trayectoria optima para llegar en tiempo k al estado x. En tiempo k = 0 este costo esobviamente u0(x) ya que hay una unica forma de llegar a cada estado.

La trayectoria optima para llegar al estado x en tiempo k+1 debe pasar por algun estado entiempo k, y obviamente debe haber llegado allı de manera optima (si no habrıa una trayectoriacon menor costo). Con esta idea, el costo ck+1(x) puede calcularse recursivamente para cadaestado de la siguiente forma:

ck+1(x) = mınxk∈S

ck(xk) + u(xk, x)

El valor de xk donde se produce el mınimo es el estado anterior en la trayectoria optima quelleva a x y lo denotaremos γk(x).

Al llegar a k = n, se tienen almacenados N costos cn(x) = U(xn−1, x, yn) correspondientesa cada posible estado final. La trayectoria optima se determina entonces eligiendo de estos Ncostos totales el mas pequeno haciendo xn = arg mınx∈S cn(x) y luego recursivamente haciaatras, xk = γk(xk+1).

4.2. Estimacion de parametros

Como se describio en la seccion 4.1, conocido el modelo que rige el proceso, la estimaciondel proceso escondido puede hacerse mediante las recurrencias allı presentadas. Sin embargo,en el caso en que el modelo no se conoce completamente, sera necesario aprenderlo de laspropias observaciones. Este es el problema de ajuste o aprendizaje o entrenamiento.

En toda esta seccion se supone que (Xn, Yn)n≥0 es un HMP, con matriz de transicion Py distribucion inicial π desconocidas. A su vez, supondremos que las densidades condicionalesb(y | i) con i ∈ S pertenecen a una familia parametrica, siendo θ = (θ1, . . . , θN ) el vectorcon todos los parametros verdaderos del modelo, tambien desconocidos. En el ejemplo 3.2de la cadena observada con ruido, θi = (ci, σi) con i = 1, 2; θ = (c1, σ1, c2, σ2) y la familiaparametrica es la gaussiana.

El modelo markoviano escondido que da lugar a la cadena puede resumirse en φ∗ = (π, P, θ).Este es el enfoque mas general, y nos concentraremos en determinar una estimacion de φ∗ apartir de una sucesion de observaciones yn.

Observacion 4.1. Si se dispone de informacion adicional, puede incluirse en el modelo. Porejemplo, si se supone que π es la distribucion invariante entonces el HMM esta dado por(P, θ) ya que π es funcion de P. Del mismo modo, estamos suponiendo que P es una matriz(estocastica) generica. Si se tiene informacion sobre la estructura de P (si es simetrica por

17

Page 18: Instituto de Ingeniería Eléctrica – Sitio Oficial - …iie.fing.edu.uy/ense/asign/tes/materiales/monografias...2.1. Deflnici on Sea (›;A;P) un espacio de probabilidad, y sea

ejemplo) puede tenerse en consideracion para disminuir la cantidad de parametros libres y porconsiguiente la dimension del problema.

Pasemos a la descripcion de los algoritmos.

4.2.1. Algoritmo de Baum

Un primer criterio para estimar φ∗ es utilizar φ tal que:

φ = arg maxφ∈Φ

p(yn; φ) (4.12)

siendo p(yn; φ) la verosimilitud de la muestra (ecuacion (3.7)) donde hemos introducido lanotacion p(·;φ) para hacer explıcita la dependencia de la funcion p respecto de los parame-tros. Este criterio es el de maxima verosimilitud de las observaciones. El espacio Φ donde semaximiza son todos aquellos parametros φ = (π(φ), P(φ), θ(φ)) en los que π(φ) es una distri-bucion, P(φ) es una matriz estocastica y θ(φ) recorre los posibles parametros de las densidadesb(· | x).

De la ecuacion (3.7) se observa que p(yn; φ) es una magnitud compleja de calcular, y quesu dependencia respecto de φ es compleja como para realizar esta maximizacion directamente.Es por eso que se utiliza un procedimiento iterativo conocido como algoritmo de Baum yque constituye una variante especializada el algoritmo EM (Expectation-Maximization) deDempster, Laird y Rubin.

La idea es razonar como sigue: supongamos que se dispone de una aproximacion φm delmodelo. La idea es hallar φm+1 de forma tal que la verosimilitud aumente. Definamos laverosimilitud logarıtmica como:

Ln(φ) = log p(yn; φ)

y observemos que es equivalente maximizar p(yn;φ) que Ln(φ).Estudiemos la cantidad:

Ln(φ)− Ln(φm) = logp(yn; φ)

p(yn;φm)

La idea es hacer aparecer la verosimilitud completa p(xn, yn), que es una magnitud menoscomplicada ya que fija una secuencia de estados. Para ello, escribamos:

Ln(φ)− Ln(φm) = log

[∑xn

p(xn, yn; φ)p(yn; φm)

]= log

[∑xn

p(xn, yn;φ)p(xn | yn; φm)p(yn;φm)p(xn | yn;φm)

]

= log

[∑xn

p(xn, yn; φ)p(xn, yn; φm)

p(xn | yn;φm)

]

Lo interesante es que esta ultima cantidad puede interpretarse como una esperanza:

Ln(φ)− Ln(φm) = log E(

p(Xn, yn; φ)p(Xn, yn; φm)

∣∣∣∣ yn; φm

)

Aplicando la desigualdad de Jensen resulta:

Ln(φ)− Ln(φm) ≥ E(

logp(Xn, yn; φ)

p(Xn, yn; φm)

∣∣∣∣ yn;φm

)= Q(φ, φm)−Q(φm, φm) (4.13)

siendo Q(φ, φm) = E ( log p(Xn, yn; φ)| yn; φm) y la esperanza se toma respecto de las variablesestado Xn = X0, . . . , Xn. Calcular Q(φ, φm) constituye el paso “E” del algoritmo EM.

18

Page 19: Instituto de Ingeniería Eléctrica – Sitio Oficial - …iie.fing.edu.uy/ense/asign/tes/materiales/monografias...2.1. Deflnici on Sea (›;A;P) un espacio de probabilidad, y sea

Como consecuencia de (4.13), lograremos aumentar Ln(φ) si logramos aumentar Q(φ, φm).La recurrencia se cierra entonces haciendo:

φm+1 = arg maxφ∈Φ

Q(φ, φm) (4.14)

lo que constituye el paso “M” del algoritmo.Observemos que, usando la ecuacion (3.6):

log p(xn, yn; φ) = log(π(x0)) +n∑

k=1

log pxk−1xk+

n∑

k=0

log (b(yk | xk; θxk))

siendo π = π(φ), pij = pij(φ) y θ = θ(φ).Tomando esperanza condicional de cada uno de los tres terminos de la ecuacion anterior

queda:

Q(φ, φm) =N∑

i=1

log(π(i))P (X0 = i | yn; φm)

+n∑

k=1

N∑

i,j=1

log pij P (Xk−1 = i,Xk = j | yn; φm)

+n∑

k=0

N∑

i=1

log (b(yk | i; θi))P (Xk = i | yn; φm) (4.15)

Maximizando el primer termino, sujeto a la restriccion∑

i π(i) = 1 conduce a la formula dereestimacion para π

π(m+1)(i) = P (X0 = i | yn; φm) i = 1, . . . , N (4.16)

Analogamente, maximizando para cada i del segundo termino, sujeto a la restriccion de que∑nj=1 pij = 1 llegamos a la formula de reestimacion para las entradas de P.

p(m+1)ij =

∑nk=1 P (Xk−1 = i,Xk = j | yn;φm)∑n

k=1 P (Xk−1 = i | yn;φm)i, j = 1, . . . , N (4.17)

Las formulas de reestimacion para θ deben analizarse caso por caso de acuerdo a la densidadb. En la parte de aplicaciones veremos algunos ejemplos. Con los parametros reestimados, seconstruye φm+1.

Ahora la utilidad de pasar a estudiar Q esta clara: todas las probabilidades que aparecenen las reestimaciones anteriores son, con una notacion un poco distinta, el resultado de lasecuaciones forward-backward (4.10) y (4.11) aplicadas a la secuencia yn y utilizando el modelodado por φm.

El algoritmo de Baum es entonces:

1. Construyo una estimacion inicial del modelo φ0.

2. Calculo las densidades condicionales usando las ecuaciones forward-backward (4.10) y(4.11) (es el equivalente al paso “E”).

3. Reestimo los parametros del modelo φk utilizando (4.16), (4.17) y las reestimaciones deθ que dependen de la densidad usada.

4. Con las reestimaciones construyo el modelo φk+1 y vuelvo al paso 2.

El algoritmo se detiene cuando se encuentra un punto fijo (lo que quiere decir que se llego aun maximo) o mediante alguna condicion de parada. Si bien este algoritmo solo garantizaconvergencia a un maximo local de la verosimilitud logarıtmica, si el modelo inicial φ0 esbueno en pocas iteraciones se obtiene una aproximacion mucho mejor al verdadero modelo φ∗.

19

Page 20: Instituto de Ingeniería Eléctrica – Sitio Oficial - …iie.fing.edu.uy/ense/asign/tes/materiales/monografias...2.1. Deflnici on Sea (›;A;P) un espacio de probabilidad, y sea

4.2.2. Algoritmo de Baum-Viterbi

El algoritmo de Baum-Viterbi (tambien llamado extraccion de Viterbi y k-medias segmen-tadas) es una variante al algoritmo anterior que busca maximizar la verosimilitud conjunta:

φ = arg maxφ∈Φ

p(xn, yn; φ)

El objetivo es obtener simultaneamente una estimacion de la secuencia de estados y del modelo.Para ello, realiza una doble maximizacion:

maxφ∈Φ

maxxn∈Sn+1

p(xn, yn; φ)

y lo hace de forma iterativa. Partiendo de una estimacion del modelo φm se aplica el algoritmode Viterbi visto en 4.1.2 para hallar la secuencia de estados xn(φm) optima. Luego, utilizandoesta secuencia de estados se reestiman la distribucion inicial, las probabilidades de transiciony los parametros θ, utilizando una variante de las ecuaciones de reestimacion del algoritmo deBaum.

Para la reestimacion, se maximiza p(xn(φm), yn; φ) como funcion de φ. Esta maximizacionpuede interpretarse como un caso particular de la magnitud Q(φ, φm) de la ecuacion (4.15),en donde se sustituye P (Xk = i | yn; φm) por 1 si xk(φm) = i y 0 en otro caso. Analogamente,se sustituye la probabilidad de transicion por 1 si la transicion ocurre en la secuencia optimay 0 si no.

Al cabo de este proceso, las ecuaciones de reestimacion del algoritmo de Baum se trans-forman en:

π(m+1)(i) = 1x1(φm)=i (4.18)

p(m+1)ij =

∑nk=1 1xk−1(φm)=i,xk(φm)=j∑n

k=1 1xk(φm)=i=

cant. de i → j en xn(φm)cant. de visitas a i en xn(φm)

(4.19)

Ademas, la reestimacion de θj se simplifica, debido a que la secuencia optima xn(φm) clasificalos estados, por lo que para estimar θj solo se utilizan aquellos yk en los que xk(φm) = j.La reestimacion de θj es simplemente la estimacion por maxima verosimilitud de la densidadb(y | j) con esas observaciones yk como si fueran independientes.

Una observacion que cabe hacer es que el algoritmo no estima bien la distribucion inicial,ya que asigna toda la masa al punto inicial de la secuencia optima. Alternativamente, se puedeestimar la distribucion invariante usando:

π(i) =1

n + 1

n∑

k=0

1xk(φm)=i

es decir, como la proporcion de tiempo que la secuencia optima esta en cada estado.La recurrencia debe ser incializada con algun modelo φ0 adecuado, al igual que el algoritmo

de Baum, y finaliza cuando la secuencia de estados optima queda fija, o con algun criterio deparada.

5. Aplicaciones

Para ilustrar el funcionamiento de los algoritmos anteriores analizaremos en detalle dosejemplos que ilustran la potencia de los metodos desarrollados. Por ultimo, resenamos algunasotras aplicaciones de los HMM.

20

Page 21: Instituto de Ingeniería Eléctrica – Sitio Oficial - …iie.fing.edu.uy/ense/asign/tes/materiales/monografias...2.1. Deflnici on Sea (›;A;P) un espacio de probabilidad, y sea

5.1. Filtrado de un Canal Ruidoso

El primer caso de estudio consiste en generalizar lo visto en el ejemplo 3.2. Supongamosque se quiere transmitir una senal Xn a traves de un canal ruidoso. Asumiremos que el modelode Xn es conocido, y que se trata de una cadena de Markov estacionaria, con N estados, matrizde transicion P y distribucion invariante π.

Para transmitir esta secuencia, cada sımbolo Xn se modula transmitiendo un nivel de senalcXn . El canal afecta la transmision introduciendo un ruido gaussiano aditivo cuya potenciadepende del nivel de senal que se transmite, y esta dada por σ2

Xn. Si el espacio de estados es S =

1, . . . , N, el canal queda determinado por los vectores c = (c1, . . . , cN ) y σ = (σ1, . . . , σN ).Supondremos dados estos valores, lo cual es razonable, ya que los ci los elige el transmisorpara modular la senal, y los σi se pueden medir transmitiendo durante un cierto tiempo cadanivel y observando el ruido introducido por el canal.

El proceso de observaciones admite la representacion:

Yn = cXn + σXnWn

siendo Wn un proceso de ruido blanco gaussiano de potencia 1.Las densidades condicionales de observacion son entonces:

b(y | i) =1√2πσi

e− (y−ci)

2

2σ2i

Estamos entonces en las condiciones de la seccion 4.1: se conoce completamente el modelopero se requiere recuperar el estado (sımbolo transmitido) a partir de las observaciones. Paracontinuar asumiremos una cadena de 3 estados con los siguientes valores de los parametros:

P =

0,9 0,05 0,050,1 0,8 0,10,05 0,05 0,9

π = (0,4 0,2 0,4) c = (−1 0 1) σ = (0,6 0,4 0,6);

Una simulacion del proceso con estos valores hasta tiempo n = 200 puede verse en la figura6, donde tambien se muestra el proceso de estados oculto.

Propongamos primero una reconstruccion de la secuencia de estados que no hace uso delmodelo Markoviano. Si miramos cada observacion Yn de manera independiente, la densidades:

p(y) =3∑

i=1

πib(y | i)

que con los valores anteriores resulta en la grafica de la figura 7.La regla del maximo a posteriori aplicada a esta densidad, sin considerar la historia del

proceso (es decir, usando p(xn | yn) y no yn), consiste en elegir como estado el de la compo-nente con mayor densidad en el valor observado. La ventaja de este filtrado es que consisteunicamente en comparar contra umbrales fijos, que son los que se ven en la figura 7. En lafigura 8 se muestra el resultado de este procedimiento. Se obtuvo un 84 % de reconocimientoscorrectos de sımbolo. Se observa en particular un exceso de sımbolos clasificados como 0.

Como siguiente paso, se aplico el filtro basado en la recurrencia hacia adelante estable dela ecuacion (4.10), decidiendo luego por el estado mas probable. En esta recurrencia, se tomaen cuenta toda la historia del proceso para calcular la probabilidad p(xn | yn) y luego se decidenuevamente por maximo a posteriori. Se adjunta el programa Matlab forward.m que realizaeste calculo. Puede verse que los requerimientos de calculo y memoria de este algoritmo sonmuy bajos, ya que su implementacion recursiva permite unicamente guardar las probabilidadesdel paso anterior para llevar a cabo el filtrado.

21

Page 22: Instituto de Ingeniería Eléctrica – Sitio Oficial - …iie.fing.edu.uy/ense/asign/tes/materiales/monografias...2.1. Deflnici on Sea (›;A;P) un espacio de probabilidad, y sea

0 20 40 60 80 100 120 140 160 180 200−2.5

−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

2.5Simulación de un proceso markoviano escondido de tres estados

n

Observación Símbolo transmitido

Figura 6: Simulacion del proceso del ejemplo en estudio

En la figura 9 se presenta el resultado de aplicar el filtro a la simulacion de la figura6. Se obtiene una tasa de reconocimiento del 97 % en este caso, mejorando ampliamente laperformance del filtro anterior.

Por ultimo se aplican las dos alternativas de suavizado vistas en la seccion 4.1. En primerlugar, la recurrencia hacia adelante y hacia atras (forward-backward) compuesta por (4.10) y(4.11). Esta requiere mas memoria que la recurrencia hacia adelante ya que hay que guardartodas las densidades intermedias, y su implementacion se adjunta en backward.m. Como se-gunda alternativa se aplico el algoritmo de Viterbi explicado en 4.1.2 y cuya implementacionse adjunta en viterbi.m.

Los resultados se muestran en la figura 10. Ambos muestran niveles de reconocimientosimilares al del filtro forward, lo cual indica que en este caso el costo adicional no aportasustancialmente al reconocimiento. El suavizado forward-backward clasifico correctamente enel 97.5 % de los casos y la trayectoria optima del algoritmo de Viterbi clasifico correctamenteen el 97 % de los casos.

22

Page 23: Instituto de Ingeniería Eléctrica – Sitio Oficial - …iie.fing.edu.uy/ense/asign/tes/materiales/monografias...2.1. Deflnici on Sea (›;A;P) un espacio de probabilidad, y sea

−2 −1.5 −1 −0.5 0 0.5 1 1.5 20

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

y

p(y)

Decido Cx = −1 Decido C

x = 0 Decido C

x = +1

Figura 7: Densidad teorica de las observaciones (punteado) y cada una de las componentes

0 20 40 60 80 100 120 140 160 180 200−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1Filtrado simple de la señal

n

Símbolo transmitidoSímbolo reconocido

Figura 8: Filtrado simple de la senal basado solo en la observacion actual

23

Page 24: Instituto de Ingeniería Eléctrica – Sitio Oficial - …iie.fing.edu.uy/ense/asign/tes/materiales/monografias...2.1. Deflnici on Sea (›;A;P) un espacio de probabilidad, y sea

0 20 40 60 80 100 120 140 160 180 200−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1Filtrado markoviano de la señal

n

Símbolo transmitidoSímbolo reconocido

Figura 9: Filtrado basado en la recurrencia hacia adelante

0 20 40 60 80 100 120 140 160 180 200−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1Suavizado markoviano de la señal

n

Símbolo transmitidoSímbolo reconocido

0 20 40 60 80 100 120 140 160 180 200−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1Suavizado por algoritmo de Viterbi

n

Símbolo transmitidoSímbolo reconocido

Figura 10: Suavizado de la senal completa

24

Page 25: Instituto de Ingeniería Eléctrica – Sitio Oficial - …iie.fing.edu.uy/ense/asign/tes/materiales/monografias...2.1. Deflnici on Sea (›;A;P) un espacio de probabilidad, y sea

5.2. Modelo de video codificado

El segundo problema que presentamos aquı es un problema de aprendizaje o ajuste de unmodelo a una senal. Se trata de una continuacion del ejemplo 3.3.

En este caso el proceso observado consiste en el trafico de datos a la salida de un codificadorde video MPEG. Estos codificadores se utilizan actualmente, entre otras aplicaciones, paratransmitir video en tiempo real a traves de Internet. Como los requerimientos de tiempo realson exigentes para permitir la correcta visualizacion, debe conocerse el impacto del traficoproducido por el emisor en la red, de modo de poder evaluar la performance que se puedealcanzar en la transmision.

En particular, en trabajos del Grupo ARTES (IIE-IMERL) se ha estudiado la magnitudancho de banda efectivo como medida de recursos requeridos por la fuente. En el marco de estostrabajos, P. Bermolen en [3] demuestra una formula que permite calcular de manera eficienteel ancho de banda efectivo de un Modelo Markoviano Escondido a partir de sus parametros.

Por lo tanto, un enfoque para estimar la magnitud deseada consiste en tomar una traza detrafico, elegir un modelo simple para describirla, aplicar los algoritmos de aprendizaje de laseccion 4.2 y luego estimar el ancho de banda efectivo a partir de los parametros aprendidos.

Este procedimiento es el que seguimos a continuacion. Para poder testear la potencia delos algoritmos utilizamos una traza simulada con parametros conocidos.

0 100 200 300 400 500 600 700 800 900 10000

5

10

15

20

25

30Traza de tráfico simulada

n

Figura 11: Traza de video simulada y proceso de estados escondido

El modelo de trafico consistio en un HMM de dos estados, que representan “baja actividad”o estado 1 y “alta actividad” o estado 2. La matriz de transicion para el proceso de estadossimulado fue:

P =(

0,99 0,010,05 0,95

)

por lo que la duracion media de un perıodo de baja es de 100 muestras y la de un perıodo dealta es de 20 muestras. La distribucion invariante para esta matriz es:

π = (5/6 1/6)

25

Page 26: Instituto de Ingeniería Eléctrica – Sitio Oficial - …iie.fing.edu.uy/ense/asign/tes/materiales/monografias...2.1. Deflnici on Sea (›;A;P) un espacio de probabilidad, y sea

Las densidades condicionales de cada estado se tomaron exponenciales parametrizadas porla media, es decir:

b(y | i) =1µi

e−y/µi y ≥ 0

y se tomo µ2 = 5µ1 para que el proceso tome valores mayores en el estado 2, de acuerdo conel modelo.

Se simularon n = 1000 muestras y el resultado se observa en la figura 11.Para proceder a la inicializacion de los algoritmos, debe construirse una primera estimacion

de parametros. El procedimiento seguido fue el siguiente: se elige un umbral para clasificar lasobservaciones, si superan este umbral se clasifican como estado “alto”, de lo contrario comobajo. Ası se obtiene una estimacion inicial de la trayectoria xn

0 . Este procedimiento puedeverse en la figura 12.

0 100 200 300 400 500 600 700 800 900 10000

5

10

15

20

25

30Estimación inicial de los estados

n

ObservacionesUmbral Estados

Figura 12: Inicializacion del aprendizaje mediante umbralizacion

Luego, para estimar los parametros iniciales se utiliza la trayectoria de estados estimadade la siguiente manera3:

La distribucion invariante se estima como la proporcion de tiempo en cada estado en xn0 .

La probabilidad de transicion p12 se estima como la cantidad de saltos de 1 a 2 en xn0

sobre el tiempo que permanece en el estado 1. Analogamente para p21. Las probabilidadesp11 y p22 simplemente son las complementarias.

La media µi en cada estado se estima como el promedio de las observaciones clasificadasen ese estado.

Las estimaciones iniciales resultaron ser:

P0 =(

0,9338 0,06620,7949 0,2051

)µ0 = (1,3860 11,5560) π0 = (0,9220 0,0780)

3Este procedimiento es el mismo que utiliza el algoritmo de Baum-Viterbi en cada iteracion.

26

Page 27: Instituto de Ingeniería Eléctrica – Sitio Oficial - …iie.fing.edu.uy/ense/asign/tes/materiales/monografias...2.1. Deflnici on Sea (›;A;P) un espacio de probabilidad, y sea

Al cabo de 10 iteraciones del algoritmo de Baum (utilizando baum.m, ver apendice) sellego a las siguientes estimaciones:

P =(

0,9929 0,00580,0151 0,9849

)µ = (0,9960 5,2764) π = (0,7235 0,2765)

En este algoritmo, se utilizan las ecuaciones (4.16) y (4.17) deducidas en 4.2.1. Para la reesti-macion de los parametros de las exponenciales (θj en la notacion de la seccion 4.2.1) se utilizala formula de reestimacion de la media, que surge de derivar en la ecuacion (4.15):

µi(m + 1) =∑n

k=0 ykP (Xk = i | yn; φm)∑nk=0 P (Xk = i | yn; φm)

Tambien se realizaron 10 iteraciones del algoritmo de Baum-Viterbi (ver baumviterbi.men el apendice) se llego a:

P =(

0,9891 0,01090,0341 0,9659

)µ = (1,0002 5,4666) π = (0,9190 0,0810)

A su vez este algoritmo predice el ajuste de estados simultaneamente a la estimacion. Elresultado se observa en la figura 13, y alcanza el 98.3 % de efectividad en la clasificacion.

0 100 200 300 400 500 600 700 800 900 10000

5

10

15

20

25

30Secuencia aprendida mediante Baum−Viterbi

n

Observaciones Umbral inicialEstados

Figura 13: Secuencia de estados aprendida por Baum-Viterbi

En ambos casos se observa una mejora sustancial de la aproximacion inicial con pocasiteraciones.

Resta aplicar los resultados obtenidos a la estimacion del ancho de banda efectivo. Este esuna funcion α(s) de un parametro de escala s y en [3] se demuestra que:

α(s) =1s

log (π (PM)1)

27

Page 28: Instituto de Ingeniería Eléctrica – Sitio Oficial - …iie.fing.edu.uy/ense/asign/tes/materiales/monografias...2.1. Deflnici on Sea (›;A;P) un espacio de probabilidad, y sea

Siendo P y π los parametros de la cadena, 1 un vector columna de unos y M una matrizdiagonal tal que Mii = E

(esYn | Xn = i

). Utilizando la densidad queda:

Mii =∫ ∞

−∞esy b(y | i) dy

que es la transformada de Laplace de b. Para el caso de densidades exponenciales, se resuelvela integral y se tiene que:

Mii =1

µis− 1s < 1/µi

Por lo que el ancho de banda depende explıcitamente de los parametros φ = (P, π, µ) delHMM.

Sustituyendo φ por los valores aprendidos φ se obtienen estimaciones4 α(s) del ancho debanda efectivo. En la figura 14 se muestra una comparacion del valor real con la estimacionde Baum-Viterbi (que era la mejor), mostrando un buen ajuste.

0 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.11.6

1.7

1.8

1.9

2

2.1

2.2

2.3

2.4

2.5Estimación del ancho de banda

s

α(s)

Ancho de banda teórico Estimado por Baum−Viterbi

Figura 14: Estimacion del ancho de banda efectivo

4Una justificacion de que este procedimiento plugin funciona puede verse en [3]

28

Page 29: Instituto de Ingeniería Eléctrica – Sitio Oficial - …iie.fing.edu.uy/ense/asign/tes/materiales/monografias...2.1. Deflnici on Sea (›;A;P) un espacio de probabilidad, y sea

6. Conclusiones

A modo de conclusion, podemos decir que las tecnicas presentadas resultan utiles para elmodelado de fenomenos que aparecen en la practica, como quedo demostrado en los ejemplospresentados en la seccion 5. Entre otros ejemplos que hemos dejado de lado en esta presentacionse encuentra el modelado de registros de lluvias, que puede verse en [9], o bien el reconocimientode la palabra a traves de registros sonoros, como se describe en [8].

Si se estudian los programas que se adjuntan en el apendice se vera que la programacion delos algoritmos se vuelve sencilla debido a la posibilidad de escribir matricialmente buena partede los mismos, lo que ademas acelera su ejecucion. Esto constituye una ventaja importante ala hora de utilizar los mismos.

Por ultimo, cabe mencionar que estos modelos pueden generalizarse en diversas direccio-nes. Se pueden presentar modelos de tiempo continuo, aunque allı las recurrencias se vuelvemas complejas. Una direccion interesante es la que elimina la suposicion de independenciaentre muestras de estados dados, o dicho de otra forma, la suposicion de que el canal seasin memoria. Aquı aparecen los modelos ARMAX, que son procesos autorregresivos, cuyoscoeficientes varıan de acuerdo a un proceso de estados markoviano. El HMP es el ARMAXde orden 0 o sin memoria. Muchos de los filtros aquı presentados admiten generalizacionessencillas a este tipo de procesos.

A. Programas utilizados

A.1. Simulador de cadenas markov.m

function x = markov(N,P,pi,S);

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%function x = markov(N,P,pi,S)%% Un generador de Cadenas de Markov. N es el largo de la% simulacin, P es la matriz de transicin y pi la distribucin% inicial.% S es un vector que contiene los estados. Este parmetro es% opcional.%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

if (nargin<4)S=(1:length(pi));

end

est=sorteo(pi);x=S(est);

for i=2:Nest=sorteo(P(est,:));x=[x S(est)];

end

29

Page 30: Instituto de Ingeniería Eléctrica – Sitio Oficial - …iie.fing.edu.uy/ense/asign/tes/materiales/monografias...2.1. Deflnici on Sea (›;A;P) un espacio de probabilidad, y sea

function resultado = sorteo(p);U=unifrnd(0,1);px=0;i=0;while(U>px)i=i+1;

px=px+p(i);end

resultado=i;

A.2. Ecuaciones forward-backward: forward.m y backward.m

function [x,F1,F2]=forward(y,P,pi,fun,p1,p2)

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%[x,F1,F2]=forward(y,P,pi,fun,p1,p2)%% Realiza la recursine estable hacia adelante.% y es la secuencia de observaciones, P la matriz de% transicin del modelo, pi la distribucin inicial.% La funcin fun debe recibir una pareja estado,observacion (x,y)% y devolver b(y|x). p1 y p2 son posibles parmetros adicionales% la funcin fun.% Devuelve x, estados estimados usando maximo a posteriori,% F1 que es una matriz con las densidad a posteriori y F2 que es una% matriz con las densidades predictivas.%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

if (nargout>1) %guardo F1 y F2, si no noguardoF=1;F1=[];

F2=[];end

N=length(pi);n=length(y);s=(1:N)’;f2 = pi’;

for k=1:n;b=feval(fun,s,y(k),p1,p2);f1=b.*f2/(b’*f2);if(nargout>1)

F1=[F1 f1];F2=[F2 f2];

endf2=P’*f1;

30

Page 31: Instituto de Ingeniería Eléctrica – Sitio Oficial - …iie.fing.edu.uy/ense/asign/tes/materiales/monografias...2.1. Deflnici on Sea (›;A;P) un espacio de probabilidad, y sea

[aux,xk]=max(f1);x(k)=xk;

end

function [x,Pest,F]=backward(y,P,pi,fun,p1,p2)

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%[x,Pest,F]=backward(y,P,pi,fun,p1,p2)%% Realiza la recursion estable hacia adelante y atras. Primero llama a% forward para hallar las densidades predictivas del filtrado y luego% realiza la recusrion hacia atras para el suavizado.% y es la secuencia de observaciones, P la matriz de% transicin del modelo, pi la distribucin inicial.% La funcin fun debe recibir una pareja estado,observacion (x,y)% y devolver b(y|x). p1 y p2 son posibles parmetros adicionales% la funcin fun.% Devuelve x, estados estimados usando maximo a posteriori,% Pest que es una estimacion matriz P para cada k con las densidad a% posteriori y F2 que es una matriz con las densidades predictivas.%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

[x,F1,F2]=forward(y,P,pi,fun,p1,p2);

N=length(pi);n=length(y);

f=F1(:,n);

if (nargout>1) %guardo F y PguardoPF=1;F=f;Pest=zeros(N,N,n-1);

end

[max,xn]=max(f);x(n)=xn;

for k=n-1:-1:1f = F1(:,k).*(P*(f./F2(:,k+1)));[max,xk]=max(f);x(k)=xk;if(guardoPF)

F=[f F];aux1=F1(:,k)*(f./F2(:,k+1))’;Pest(:,:,k)=aux1.*P;

end

31

Page 32: Instituto de Ingeniería Eléctrica – Sitio Oficial - …iie.fing.edu.uy/ense/asign/tes/materiales/monografias...2.1. Deflnici on Sea (›;A;P) un espacio de probabilidad, y sea

end

A.3. Algoritmo de Baum para la traza de video

%%%%% Implementa el algoritmo de Baum para densidades%%%%% condicionales exponenciales y 2 estados.% y: traza

%%%%%%%%%%%%% inicializacinN=2; %nmero de estadosclose allplot(y); %grafico la traza[s,t]=ginput(1); %el usuario elige el umbralhold onplot((1:length(y)),t*ones(size(y)),’:’);

x0=(y>t)+1; %clasifica los estados para la secuencia inicial

muest(1,1)=mean(y(find(x0==1))); %estimo la media del estado 1muest(2,1)=mean(y(find(x0==2))); %estimo la media del estado 2

%estimo la matriz de transicionp12=sum((x0(1:end-1)==1).*(x0(2:end)==2))./sum((x0==1));p21=sum((x0(1:end-1)==2).*(x0(2:end)==1))./sum((x0==2));p11=1-p12;p22=1-p21;Pest=[p11 p12;p21 p22];

%estimo la distribucin inicial como la invariantepiest=[sum(x0==1) sum(x0==2)]./length(x0);

%%%%%%%%%%%%% fin de la inicializacin

disp(’Condicin inicial’)Pestmuestpiest

%%%%%%%%%%%% Ciclo principalfor iter=1:20

%%% Aplico Forward Backward para hallar las probabilidades de suavizado[x1,Ptran,F]=backward(y,Pest,piest,’expcond’,muest,1);

%%% Aplico las frmulas de reestimacin

Pest = sum(Ptran,3)./(sum(F,2)*ones(1,N));piest = F(:,1)’;muest = sum(F.*(ones(N,1)*y’),2)./sum(F,2);

end

32

Page 33: Instituto de Ingeniería Eléctrica – Sitio Oficial - …iie.fing.edu.uy/ense/asign/tes/materiales/monografias...2.1. Deflnici on Sea (›;A;P) un espacio de probabilidad, y sea

disp(’Parmetros finales’)Pestmuestpiest

A.4. Algoritmo de Baum-Viterbi para la traza de video

%%%%% Implementa el algoritmo de Baum-Viterbi para densidades%%%%% condicionales exponenciales y 2 estados.% y: traza

%%%%%%%%%%%%% inicializacinN=2; %nmero de estadosclose allplot(y); %grafico la traza[s,t]=ginput(1); %el usuario elige el umbralhold onplot((1:length(y)),t*ones(size(y)),’:’);

x0=(y>t)+1; %clasifica los estados para la secuencia inicial

muest(1,1)=mean(y(find(x0==1))); %estimo la media del estado 1muest(2,1)=mean(y(find(x0==2))); %estimo la media del estado 2

%estimo la matriz de transicionp12=sum((x0(1:end-1)==1).*(x0(2:end)==2))./sum((x0==1));p21=sum((x0(1:end-1)==2).*(x0(2:end)==1))./sum((x0==2));p11=1-p12;p22=1-p21;Pest=[p11 p12;p21 p22];

%estimo la distribucin inicial como la invariantepiest=[sum(x0==1) sum(x0==2)]./length(x0);

%%%%%%%%%%%%% fin de la inicializacin

disp(’Condicin inicial’)Pestmuestpiest

%%%%%%%%%%%% Ciclo principal

for iter=1:10

%%% Aplico Viterbi para hallar la trayectoria ptima con los parmetros actualesx1=viterbi(y,Pest,piest,’expcond’,muest,1);

33

Page 34: Instituto de Ingeniería Eléctrica – Sitio Oficial - …iie.fing.edu.uy/ense/asign/tes/materiales/monografias...2.1. Deflnici on Sea (›;A;P) un espacio de probabilidad, y sea

%%% Aplico las frmulas de reestimacinmuest(1,1)=mean(y(find(x1==1))); %estimo la media del estado 1muest(2,1)=mean(y(find(x1==2))); %estimo la media del estado 2

%estimo la matriz de transicionp12=sum((x1(1:end-1)==1).*(x1(2:end)==2))./sum((x1==1));p21=sum((x1(1:end-1)==2).*(x1(2:end)==1))./sum((x1==2));p11=1-p12;p22=1-p21;Pest=[p11 p12;p21 p22];

%estimo la distribucin inicialpiest=[sum(x1==1) sum(x1==2)]./length(x1);

end

disp(’Parmetros finales’)Pestmuestpiest

A.5. Programas auxiliares

function resultado = sorteo(p);U=unifrnd(0,1);px=0;i=0;while(U>px)i=i+1;

px=px+p(i);end

resultado=i;

function b=normcond(x,y,mu,sigma)

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%function b=normcond(x,y)%% Devuelve la densidad normal de media mu(x)% y varianza sigma(x) evaluada en y.%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

b=normpdf(y,mu(x),sigma(x));

function b=expcond(x,y,mu,p2)

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

34

Page 35: Instituto de Ingeniería Eléctrica – Sitio Oficial - …iie.fing.edu.uy/ense/asign/tes/materiales/monografias...2.1. Deflnici on Sea (›;A;P) un espacio de probabilidad, y sea

%%function b=expcond(x,y,mu,p2)%% Devuelve la densidad exponencial de media mu(x)% evaluada en y. p2 es un parmetro mudo para% compatibilidad.%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

b=exppdf(y,mu(x));

35

Page 36: Instituto de Ingeniería Eléctrica – Sitio Oficial - …iie.fing.edu.uy/ense/asign/tes/materiales/monografias...2.1. Deflnici on Sea (›;A;P) un espacio de probabilidad, y sea

Referencias

[1] L.E. Baum, T. Petrie; “Statistical inference for probabilistic functions of finite state Mar-kov chains”, Ann. Math. Statist., vol. 37, pp. 1554-1563, 1966.

[2] L.E. Baum, T. Petrie, G. Soules, N. Weiss; “A maximization technique occuring in thestatistical analysis of probabilistic functions of Markov chains”, Ann. Math. Statist., vol.41, pp. 164-171, 1970.

[3] P. Bermolen; “Effective Bandwidth for Hidden Markov Models”, IX Congreso Latinoa-mericano de Matematica y Estadıstica (CLAPEM), Punta del Este, Uruguay, 2004.

[4] P. Bremaud; Markov Chains: Gibbs Fields, Monte Carlo Simulation and Queues,Springer-Verlag, New York, 1998.

[5] R. Dugad, U.Desai; “A Tutorial on Hidden Markov Models”, Technical Report, IndianInstitute of Technology, 1996.

[6] Y. Ephraim, N. Merhav; “Hidden Markov Processes”, IEEE Tran. on Information Theory,Vol. 48, No. 6, Junio 2002.

[7] R.J. Elliot, L. Aggoun, J.B. Moore; Hidden Markov Models: Estimation and Control,Springer-Verlag, New York, 1994.

[8] J.D. Ferguson (Ed.); Proc. Symp. Application of Hidden Markov Models to Text andSpeech, Princeton, NJ, 1980.

[9] G. Perez Iribarren; Cadenas de Markov gobernando algunos procesos aplicables a los rıos,Pub. Mat. del Uruguay, Vol. 1, Mayo 1999.

36