29
03/11/2011 1 Descubrimientode conocimientoa Partirde Datos Dr. Marcelo G. Armentano ISISTAN, Fac. de Cs. Exactas, UNICEN Agenda Introducción Redes de Bayes Modelos de Markov Dr. Marcelo G. Armentano - ISISTAN -UNICEN Teoría de grafos Teoría de grafos Teoría de probabilidad Teoría de probabilidad Modelos Gráficos Probabilísticos Forma natural de hacer frente a: Incertidumbre Complejidad Teoría de probabilidad Teoría de grafos MGP Dr. Marcelo G. Armentano - ISISTAN -UNICEN Modelos Gráficos Probabilísticos Representación Como representamos de manera compacta una distribución de probabilidades conjunta Inferencia Como inferimos los estados ocultos de un sistema basándonos en observaciones parciales Aprendizaje Como estimamos los parámetros y la estructura del modelo Dr. Marcelo G. Armentano - ISISTAN -UNICEN Dr. Marcelo G. Armentano - ISISTAN -UNICEN Agenda Introducción Redes de Bayes Definición Ejemplos Conceptos de Probabilidades Utilización Inferencia Probabilística Construcción Aprendizaje Modelos de Markov Dr. Marcelo G. Armentano - ISISTAN -UNICEN

redes bayesianas UNICEN.pdf

Embed Size (px)

Citation preview

Page 1: redes bayesianas UNICEN.pdf

03112011

1

Descubrimiento de conocimiento a Partir de Datos

D r M a r c e l o G A r m e n t a n o

I S I S T A N F a c d e C s E x a c t a s U N I C E N

Agenda Introduccioacuten

Redes de Bayes

Modelos de Markov

Dr Marcelo G Armentano - ISISTAN - UNICEN

Teoriacutea de grafos

Teoriacutea de grafos

Teoriacutea de probabilidadTeoriacutea de probabilidad

Modelos Graacuteficos Probabiliacutesticos

Forma natural de hacer frente a Incertidumbre Complejidad

Teoriacutea de probabilidad

Teoriacutea de grafos

MGP

Dr Marcelo G Armentano - ISISTAN - UNICEN

Modelos Graacuteficos Probabiliacutesticos Representacioacuten

Como representamos de manera compacta una distribucioacuten de probabilidades conjunta

Inferencia Como inferimos los estados ocultos de un sistema

basaacutendonos en observaciones parciales

Aprendizaje Como estimamos los paraacutemetros y la estructura del

modelo

Dr Marcelo G Armentano - ISISTAN - UNICEN

Dr Marcelo G Armentano - ISISTAN - UNICEN

Agenda Introduccioacuten Redes de Bayes

Definicioacuten Ejemplos Conceptos de Probabilidades Utilizacioacuten Inferencia Probabiliacutestica Construccioacuten Aprendizaje

Modelos de Markov

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

2

Redes de Bayes Las Redes de Bayes se usan para modelar dominios que

contengan incertidumbre

Se conocen tambieacuten como Redes Bayesianas

Redes probabiliacutesticas causales

Redes de creencias

Redes de creencias bayesianas

Dr Marcelo G Armentano - ISISTAN - UNICEN

Incertidumbre fuentes Conocimiento incompleto del dominio Entendimientocomprensioacuten incorrecta del dominio Relaciones en el dominio de naturaleza no

determiniacutestica (ej enfermedades y siacutentomas) Teacuterminos involucrados muy vagos (grande hermosa

dolor) Realizacioacuten de alguacuten tipo de abstraccioacuten Naturaleza aleatoria de los mecanismos que rigen el

comportamiento del dominio (ej modelado de usuarios)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Conceptos Una Red de Bayes consiste de un conjunto de nodos y de

un conjunto de arcos dirigidos entre estos nodos

Los arcos reflejan relaciones causa-efecto dentro del dominio Estos efectos normalmente no son determiniacutesticos (ej enfermedad siacutentoma)

La ldquofuerzardquo de un efecto es modelada como una probabilidad

La base matemaacutetica estaacute dada por el Teorema de Bayes

Dr Marcelo G Armentano - ISISTAN - UNICEN

Definicioacuten Una Red Bayesiana es un grafo dirigido aciacuteclico

(GDA) donde cada nodo representa una variable aleatoria y los arcos entre los nodos representan dependencias probabiliacutesticas entre las variables Cada nodo contiene los estados de la variable que representa y una tabla de probabilidad condicional (CPT) La CPT de un nodo contiene las probabilidades de que el nodo esteacute en un estado especiacutefico dados los estados de sus padres

LJ

TL

A

LMDr Marcelo G Armentano - ISISTAN - UNICEN

Nodos Un nodo representa una variable aleatoria discreta

con un nuacutemero finito de estados o una variable aleatoria continua (distribucioacuten Gaussiana)

Si un nodo no tiene padres el nodo contendraacute una tabla de probabilidad marginal Si el nodo es discreto contiene una distribucioacuten de

probabilidad sobre los estados de la variable que representa

Si el nodo es continuo contiene una funcioacuten de densidad Gaussiana (dada por la media y la varianza) para la variable aleatoria que representa

Dr Marcelo G Armentano - ISISTAN - UNICEN

Tablas de probabilidad Si el nodo tiene padres contiene una tabla de

probabilidad condicional (CPT) Si el nodo es discreto cada celda en la CPT de un nodo

contiene una probabilidad condicional para cada estado en que pueda estar el nodo dada una configuracioacuten especiacutefica de los estados de sus padres

Si el nodo es continuo la CPT contiene una media y una varianza para cada configuracioacuten de los estados de sus padres discretos y un coeficiente de regresioacuten por cada padre continuo

Dr Marcelo G Armentano - ISISTAN - UNICEN

Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin

03112011

3

Ejemplo Apple Jack Un diacutea Apple Jack descubre que su mejor aacuterbol de

manzanas estaacute perdiendo sus hojas Entonces quiere saber queacute estaacute pasando Eacutel sabe que si el aacuterbol estaacute seco es muy comuacuten que pierda sus hojas Por el otro lado perder las hojas puede ser un indicio de que el aacuterbol esteacute enfermo

Dr Marcelo G Armentano - ISISTAN - UNICEN

iquestvariables

iquestestados

iquestrelaciones

Ejemplo Apple Jack

Enfermo=si Enfermo=no

01 09

Seco=si Seco=no

01 09

p(Pierde Seco Enfermo)

Seco=si

Enfermo=si

Seco=si

Enfermo=no

Seco=no

Enfermo=si

Seco=no

Enfermo=no

Pierde=si 095 085 090 002

Pierde=no 005 015 010 098

P(seco)

P(enfermo)

Enfermo Seco

Pierde HojasPierde Hojas

Dependencias Causales Cuando existe una dependencia causal de un nodo A

a un nodo B se espera que cuando A estaacute en un cierto estado esto tiene un impacto en el estado de B

En el ejemplo existe un viacutenculo causal de ldquoEnfermordquo a ldquoPierde hojasrdquo porque cuando un aacuterbol estaacute enfermo puede causar que pierda las hojas

Dr Marcelo G Armentano - ISISTAN - UNICEN

Enfermo Seco

Pierde HojasPierde Hojas

Independencia condicional Dos conjuntos de variables A y B son

(condicionalmente) independientes de un tercer conjunto C si cuando los valores de C son conocidos el conocimiento acerca de B no provee maacutes informacioacuten sobre los valores de A

p(ABC) = p(AC)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo 2 Asia

p(BronchitisVisit AsiaSmoker) = p(BronchitisSmoker)Dr Marcelo G Armentano - ISISTAN - UNICEN

Distribucioacuten de probabilidad

conjunta

Dado un conjunto de variables V1V2Vk cuyos valores se denotan v1v2vk una expresioacuten de la forma

p(V1V2Vk) se denomina funcioacuten de probabilidad conjunta sobre las variables V1V2Vk

Dr Marcelo G Armentano - ISISTAN - UNICEN

Admin
Admin
Admin
Admin
Admin
Admin
Admin

03112011

4

Ejemplo 3 Robot Un robot es capaz de levantar una bandeja si la

bandeja es liviana y si las bateriacuteas de la fuente de energiacutea del robot estaacuten cargadas Si estas condiciones se satisfacen entonces cuando el robot trata de levantar la bandeja mueve sus brazos Se determina si la bateriacutea estaacute cargada mediante un medidor

Dr Marcelo G Armentano - ISISTAN - UNICEN

iquestvariables

iquestestados

iquestrelaciones

Ejemplo 3 Robot

G M

L

P(B) = 095 P(L) = 07

P(GB) = 095

P(GnotB) = 01

P(MBL) = 09

P(MBnotL) = 005

P(MnotBL) = 00

P(MnotBnotL) = 00

B

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo 3 Robot P(BMLG)

4 variables binarias binarias 16 probabilidades

(BMLG) Prob Conj

(VVVV) 05686

(VVVF) 00299

(VVFV) 00135

(VVFF) 00007

hellip hellip

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo 3 Robot

P(ABDLSXT)

7 variables binarias 128 Probs Conjuntas

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problema de la probabilidad

conjunta Se necesitan en el orden de 2k valores para definir la

funcioacuten de probabilidad conjunta

Solucioacuten Las relaciones de independencia condicional entre las

variables contribuyen a la disminucioacuten de la complejidad del problema

Dr Marcelo G Armentano - ISISTAN - UNICEN

Redes de Bayes Representacioacuten compacta de distribuciones de

probabilidades via independencia condicional

Parte cualitativa Grafo dirigido aciacuteclico (gda)

Nodos - variables aleatorias

Arcos ndash influencia directa

Parte cuantitativa Conjunto de

distribuciones de probabilidades condicionales

09 01

e

b

e

02 08

001 099

09 01

be

b

b

e

BE P(A | EB)E

R

B

A

C

Juntos definen una uacutenica distribucioacuten conjunta de manera factorizada

)|()|()|()()()( ACPERPEBAPEPBPRCAEBP =

Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin

03112011

5

Semaacutentica de las Redes de Bayes

Representacioacuten natural y compacta

Independenciascondicionales en

la estructura de

la red

+Modelos de

probabilidadeslocales

Distribucioacuten deprobabilidad

conjunta sobreun dominio

=

)|()|()|()|()()()( eldPlxPcsePslPcPsPdxelcsP =

S

L

C

E

DX

Dr Marcelo G Armentano - ISISTAN - UNICEN

Agenda Definicioacuten

Ejemplos

Conceptos de Probabilidades

Utilizacioacuten

Inferencia Probabiliacutestica

Construccioacuten

Aprendizaje

Dr Marcelo G Armentano - ISISTAN - UNICEN

Utilizacioacuten de Redes de Bayes Obtener los valores de probabilidades de ciertas

variables de intereacutes a partir de la informacioacuten (evidencia) del estado de otras variables

Ej Sabemos que el aacuterbol estaacute perdiendo sus hojas iquestCuaacutel es la probabilidad de que el aacuterbol esteacute enfermo

iquestCuaacutel es la probabilidad de que el aacuterbol esteacute seco

InferenciaInferenciaDr Marcelo G Armentano - ISISTAN - UNICEN

Enfermo Seco

Pierde Pierde Hojas

Inferencia probabiliacutestica

Consiste en calcular probabilidades de intereacutes a partir de una distribucioacuten de probabilidades conjunta

La estructura de la red de Bayes permite calcular cualquier probabilidad de intereacutes donde la independencia condicional simplifica el caacutelculo

Dr Marcelo G Armentano - ISISTAN - UNICEN

Inferencia en Redes de Bayes La inferencia consiste en el caacutelculo de los resultados a

una consulta (distribucioacuten de probabilidades) con respecto a una red dada y a la presencia de cierta evidencia

RedRed

E

EvidenciaEvidencia

ConsultaConsulta

P(AE)

a0 a1P(AE)P(AE)

Inferencia

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de inferencia

Evidencia el aacuterbol pierde las hojas

Consulta iquestEstaacute enfermo el aacuterbol

Dr Marcelo G Armentano - ISISTAN - UNICEN

Enfermo Seco

Pierde HojasPierde Hojas

Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin

03112011

6

Ejemplo de inferencia Consulta iquestEstaacute enfermo el aacuterbol

Evidencia el aacuterbol pierde las hojas

Dr Marcelo G Armentano - ISISTAN - UNICEN

Enfermo Seco

Pierde HojasPierde Hojas

Enfermo Seco

Pierde Hojas

Enfermo Seco

Pierde Hojas

Teorema de Bayes El teorema de Bayes nos dice como obtener una

probabilidad a posteriori en una hipoacutetesis Vi luego de la observacioacuten de alguna evidencia Vj dadas la probabilidad a priori de Vi y la probabilidad de observar Vj dado Vi

)(

)()()(

Vjp

VipViVjpVjVip =

Vi Vj

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo del Teorema de Bayes Si una persona ve que un brazo del robot se estaacute

moviendo se quiere obtener la probabilidad de que esto haya ocurrido cuando la bateriacutea estaacute descargada Evidencia p(M = V)

Probabilidad a priori p(B = F)

Probabilidad condicional p(M = V B = F)

P(B = F M = V) = p( M = V B = F) p(B = F) p(M = V)

G M

LB

Dr Marcelo G Armentano - ISISTAN - UNICEN

Inferencia en Redes de Bayes

Inferencia causal o top-down

Inferencia de diagnoacutestico o bottom-up

Dr Marcelo G Armentano - ISISTAN - UNICEN

Inferencia causal Probabilidad de que el brazo se mueva dado que la

bandeja es liviana

p(ML) = p(MBL) + p(M notBL) (expansioacuten)= p(MBL) P(BL)+ p(M notBL) P(notBL)= p(MBL) P(B)+ p(M notBL) P(notB)

G M

LBP(ML)

EvidenciaConsulta

Dr Marcelo G Armentano - ISISTAN - UNICEN

Inferencia de diagnoacutestico Probabilidad de que la bandeja esteacute pesada dado que el

brazo no se mueve

p(notLnotM) = p(notMnotL) p(notL) p(notM) Bayes

Se resuelve p(notMnotL) usando razonamiento causal

G M

LBP(notLnotM)

EfectoCausa

Dr Marcelo G Armentano - ISISTAN - UNICEN

Admin
Admin
Admin
Admin
Admin
Admin
Admin

03112011

7

Inferencia exacta A pesar de poder explotar las propiedades de la red la

inferencia probabiliacutestica exacta en una red de Bayesarbitraria es NP-hard

Para muchas aplicaciones donde las redes son pequentildeas o pueden simplificarse la complejidad puede no ser fatal

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmos de Inferencia Existen numerosos algoritmos de inferencia

implementados

Centrados en operaciones algebraicas Variable Elimination [Zhang96] Bucket Elimination [Dechter99] SPI [DrsquoAmbrosio94]

Centrados en propiedades graacuteficas Junction trees [Jensen96]

Dr Marcelo G Armentano - ISISTAN - UNICEN

Agenda Definicioacuten

Ejemplos

Conceptos de Probabilidades

Utilizacioacuten

Inferencia Probabiliacutestica

Construccioacuten

Aprendizaje

Dr Marcelo G Armentano - ISISTAN - UNICEN

Construccioacuten de la red Ingenieriacutea del Conocimiento

Un experto en el dominio identifica los aspectos cualitativos (y a veces cuantitativos) del problema

Codificar el conocimiento existente de expertos en una red

Usar una base de datos para actualizar este conocimiento refinar el conocimiento experto original e identificar nuevas

relaciones

Dr Marcelo G Armentano - ISISTAN - UNICEN

Construccioacuten de la red Determinar las variables que intervienen en el

modelo

Determinar cada uno de los estados o valores que pueden tomar las variables

Determinar las relaciones (dependencias) entre las variables

Construir un GDA que codifique las aserciones de independencia condicional

Dr Marcelo G Armentano - ISISTAN - UNICEN

Construccioacuten de la red Coacutemo obtener los valores de las probabilidades

Conocimiento de expertos en el dominio

Estudios estadiacutesticos

Derivados analiacuteticamente

Aprenderlos a partir de los datos crudos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin

03112011

8

Construccioacuten de la red Coacutemo obtener la estructura de la red

A partir del conocimiento de un experto

Algoritmos de aprendizaje en Redes de Bayes Datos completos o incompletos

Estructura conocida o desconocida

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje de Redes de Bayes

E

R

B

A

C

9 1

e

b

e

7 3

99 01

8 2

be

b

b

e

BE P(A | EB)

Datos

+Informacioacuten

Previa

Aprendizaje

Dr Marcelo G Armentano - ISISTAN - UNICEN

Estructura conocida datos completos

E B

A9 1

e

b

e

7 3

99 01

8 2

be

b

b

e

BE P(A | EB)

e

b

e

be

b

b

e

BE P(A | EB) E B

A

bull La estructura de la red estaacute especificada

bull Se necesitan estimar los paraacutemetros (probabilidades)

bull Los datos no contienen valores faltantes

Aprendizaje

E B A

ltYNNgt

ltYNYgt

ltNNYgt

ltNYYgt

ltNYYgt

Dr Marcelo G Armentano - ISISTAN - UNICEN

E B

A9 1

e

b

e

7 3

99 01

8 2

be

b

b

e

BE P(A | EB)

e

b

e

be

b

b

e

BE P(A | EB) E B

A

bull La estructura de la red no estaacute especificada

ndash Se necesitan seleccionar los arcos y estimar los paraacutemetros

bull Los datos no contienen valores faltantes

E B A

ltYNNgt

ltYNYgt

ltNNYgt

ltNYYgt

ltNYYgtAprendizaje

Estructura desconocida datos completos

Dr Marcelo G Armentano - ISISTAN - UNICEN

E B

A9 1

e

b

e

7 3

99 01

8 2

be

b

b

e

BE P(A | EB)

e

b

e

be

b

b

e

BE P(A | EB) E B

A

bull La estructura de la red estaacute especificada

bull Los datos contienen valores faltantes

ndash Se necesitan considerar asignaciones a los valores faltantes

E B A

ltYNNgt

ltYYgt

ltNNYgt

ltNYgt

ltYYgtAprendizaje

Estructura conocida datos incompletos

E B

A9 1

e

b

e

7 3

99 01

8 2

be

b

b

e

BE P(A | EB)

e

b

e

be

b

b

e

BE P(A | EB)E B

A

bull La estructura de la red no estaacute especificada

bull Se necesitan seleccionar los arcos y estimar los paraacutemetros

bull Los datos contienen valores faltantes

ndash Se necesitan considerar asignaciones a los valores faltantes

E B A

ltYNNgt

ltYYgt

ltNNYgt

ltNYgt

ltYYgt

Aprendizaje

Estructura desconocida datos incompletos

Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin

03112011

9

Aprendizaje de Redes de Bayes Aprendizaje parameacutetrico

Aprender los paraacutemetros que describen el grado de dependencia entre las variables del dominio

Aprendizaje estructural Aprender las dependencias entre las variables que

intervienen en el problema

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje parameacutetrico Aprendizaje Adaptativo

Se utiliza cuando se quieren adaptar todas o algunas de las tablas de probabilidad condicional a partir de un nuevo conjunto de datos

Aprendizaje Batch Se utiliza cuando se quieren generar las tablas de

probabilidad condicional a partir de los datos Ej EM (Expectation Maximization)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje adaptativo La adaptacioacuten es el proceso de refinar las

probabilidades condicionales especificadas en la Red de Bayes teniendo en cuenta los resultados de experimentos o casos reales

Se utilizan tablas de experiencia yo tablas de desvanecimiento

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje adaptativo Un paso del proceso de aprendizaje adaptativo consiste

de ingresar evidencia

propagar la evidencia

actualizar (adaptar) las tablas de probabilidad condicional y las tablas de experiencia

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje adaptativo con tablas

de experiencia

Yes No

Cantidad de experiencias

10 5

P(Smoker=yes) = yes) (yes + no) = 10 15 = 0667

P(Smoker=no) = no) (yes + no) = 5 15 = 0333Dr Marcelo G Armentano - ISISTAN - UNICEN

Fractional Updating Utiliza tablas de experiencia

Suposiciones Independencia Global

Independencia Local

Sean p(A|bicj)=(x1x2)

(n1n2) las experiencias de A

s = n1 + n2 cantidad total de experiencias

A

B C

)()|( 21

s

n

s

ncbAp ji =

Dr Marcelo G Armentano - ISISTAN - UNICEN

Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin

03112011

10

Fractional Updating Caso 1

Tenemos una nueva experiencia e con B=bi

C=cj

A=a1

Luego n1=n1+1

s=s+1 )

1

1

1()|( 21

++

+=

s

n

s

ncbAp ji

Dr Marcelo G Armentano - ISISTAN - UNICEN

A

B C

Fractional Updating Caso 2

Tenemos una nueva experiencia e con B=bi

C=cj

de A soacutelo sabemos

Luego nk=nk+yk

s=s+1

A

B C

1+

+=

s

ynx kk

k

)()|()|( 21 yyecbApeAp ji ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Fractional Updating Caso general

Tenemos una nueva experiencia e con

Luego nk=nk+zyk

s=s+z

A

B C

Dr Marcelo G Armentano - ISISTAN - UNICEN

zecbp ji =)|(

)()|( 21 yyecbApji

=

zs

zynx kk

k+

+=

Fractional Updating Ejemplo

B

true false

true 06 03

false 04 07

Experiences 10 10

A

B

S=20

n1 n2

Como P(A=true|B=true) = 06 Tenemos

bullN(A=true|B=true) = 06 10 = 6bullN(A=true|B=false)= 03 10 = 3

El total de las cuentas para la variable AbullN(true) = 6 + 3 = 9 bullN(false) = 4 + 7 = 11 Dr Marcelo G Armentano - ISISTAN - UNICEN

Fractional Updating

Dr Marcelo G Armentano - ISISTAN - UNICEN

B

true false

true 063 03

false 037 07

Experiences 11 10

A

B

Despueacutes de una experiencia conbull A=truebull B=true

Obtenemos

06311

10106)|( =

+=== trueBtrueAp

03711

10004)|( =

+=== trueBfalseAp

0310

00013)|( =

+=== falseBtrueAp

0710

00007)|( =

+=== falseBfalseAp

zs

zynx kk

k+

+=

zebp i =)|(

)()|( 21 yyebAp i =Fractional Updating

Dr Marcelo G Armentano - ISISTAN - UNICEN

B

true false

true 0625 032

false 0375 068

Experiences 1067 1033

A

B

Si solo tenemos evidencia de A=true

Obtenemos

06256710

067106)|( =

+=== trueBtrueAp

03756710

067004)|( =

+=== trueBfalseAp

0323310

033013)|( =

+=== falseBtrueAp

0683310

033007)|( =

+=== falseBfalseAp

p(B=true|e) zs

zynx kk

k+

+=

zebp i =)|(

)()|( 21 yyebAp i =

03112011

11

Aprendizaje adaptativo con tablas

de desvanecimiento A veces las observaciones viejas no son tan importantes

como las nuevas en el proceso de adaptacioacuten Entonces tenemos que ldquodesaprenderrdquo u ldquoolvidarrdquo algunas de ellas

Las observaciones nuevas son maacutes importantes que las viejas y por lo tanto se les debe dar maacutes peso durante la adaptacioacuten

Se introduce un factor de desvanecimiento que indica la tasa con la cual se olvidan las observaciones previas 0 no hay adaptacioacuten 1 no hay desvanecimiento

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje adaptativo con tablas

de desvanecimiento

Yes No

Cantidad de experiencias

10 5

P(Smoker=yes) = yes) (yes + no) = 10 15 = 0667

P(Smoker=no) = no) (yes + no) = 5 15 = 0333Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje adaptativo con tablas

de desvanecimiento Smoker=yes Fading factor(s) = 05

(Smoker=yes) = factor (yes-previos) + 1= 05 10 + 1 = 6

(Smoker=no) = factor (no-previos) = 05 5 = 25

(experiencias) = 6 + 25 = 85

P(Smoker=yes) = 6 85 = 07059 P(Somker=no) = 25 85 = 02941

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje estructural

Earthquake Alarm Set

Sound

Burglary Earthquake Alarm Set

Sound

Burglary

Earthquake Alarm Set

Sound

Burglary

Si sobra un arcoSi falta un arco

bull Aumenta el nuacutemero de paraacutemetros a ser estimados

bull Suposiciones erroacuteneas acerca del dominio

bull No puede ser solucionado ajustando los paraacutemetros

bull Suposiciones erroacuteneas acerca del dominio

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje estructural Search and Score

Meacutetrica de puntuacioacuten (Score) Mide la calidad de la estructura graacutefica Se utiliza para decidir cual es la mejor solucioacuten

Algoritmo de buacutesqueda Selecciona un pequentildeo subconjunto de las posibles

redes que tengan una calidad alta Se selecciona la ldquomejorrdquo

Dr Marcelo G Armentano - ISISTAN - UNICEN

Basado en optimizaciones

E B A

ltYNNgt

ltYYYgt

ltNNYgt

ltNYYgt

ltNYYgtE B

A

E

B

A

E

BA

Buscar una estructura que maximice esa funcioacuten

Definir una funcioacuten que evaluacutee queacute tan bien se asemeja el modelo a los datos

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

12

Aprendizaje estructural Tests de independencia

Obtienen las dependencias condicionales y lasindependencias utilizando tests de independenciasentre triplas de variables

Por ejemplo tests estadiacutesticos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo K2 Score and Search Buacutesqueda Greedy Muy eficiente Asume que las variables estaacuten ordenadas Comienza con una red sin arcos En cada iteracioacuten para cada variable Xi el nodo cuyo orden

es previo a Xi y que incrementa la calidad de la red se agrega a =Pa(Xi)

Se repite el proceso hasta que No hay incremento en la calidad de la red Se llega a una red completa

La cantidad de padres puede limitarse

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo B Score and Search

No requiere un ordenamiento previo de las variables

Controlar ciclos

Comienza con un conjunto vaciacuteo de padres

En cada iteracioacuten agrega un arco tal que

No produce ciclos

Maximiza la calidad de la red

El proceso se detiene cuando

No se incrementa la calidad de la red 0 Se llega a una red completa

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PC Tests de Independencia

Dos fases Construccioacuten del esqueleto

Encontrar las direcciones de los arcos mediante tests de independencia

Orientar el resto de los arcos sin producir ciclos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PC Construccioacuten del esqueleto

Comienza con un grafo no dirigido totalmente conectado

Mediante tests de independencia va eliminando arcos que no cumplen la siguiente condicioacuten Dos nodos X e Y estaacuten conectados si y soacutelo si no existe un

subconjunto Sxy del conjunto de veacutertices V tal que I(XY|Sxy) sea verdadero

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PCComienza con un grafo completo no dirigido gpi = 0Repeat

For each X isinisinisinisin VFor each Y isinisinisinisin ADJX

Determinar si existe Ssube ADJX ndashY con |S| = i y I(XY|S)Si este conjunto existe

SXY = SEliminar el arco X-Y

i = i+1Until |ADJX| lelelele i forallforallforallforallX

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

13

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=

i=0

SI

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

SI

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

03112011

14

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

i=1

SI

SXY=SXW=SZW=Y

03112011

15

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

No hay nodos con maacutes de 3 adyacentes

Algoritmo PC Encontrar las direcciones de los arcos mediante tests

de independencia (tomando las variables de a tres) Para cada variable Z con dos adyacentes X e Y

comprueba que no Z no esteacute en Sxy para conectar a X e Y como padres de Z

Z XY

Z XY

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

ZnotinSXY

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

ZnotinSXY

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

TnotinSZW

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

TnotinSZW

03112011

16

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

Se orienta arbitrariamente (evitando ciclos)

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

Herramientas Hugin

httpwwwhugincomProducts_ServicesProductsDemo

Bayesware httpwwwbayeswarecom

JavaBayes httpwww-2cscmuedu~javabayes

Paacutegina de Finn Jensen httpwwwcsaaudk~fvj

Dr Marcelo G Armentano - ISISTAN - UNICEN

Agenda Introduccioacuten

Redes de Bayes

Modelos de Markov Introduccioacuten

Cadenas de Markov

Modelos Ocultos de Markov

Dr Marcelo G Armentano - ISISTAN - UNICEN

Introduccioacuten Modelar dependencias entre siacutembolos de una

secuencia Temporales

En reconocimiento del habla fonemas en una palabra palabras en una oracioacuten (reconocimiento sintaacutectico)

Espaciales Reconocimiento de escritura

Secuencias de genes

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

17

Procesos aleatorios de Markov Una secuencia aleatoria tiene la propiedad de markov si su

distribucioacuten de probabilidades estaacute determinadauacutenicamente por el estado actual Un proceso aleatorio quecumple con esta propiedad se llama un proceso aleatorio de Markov

Cuando los estados son observables cadenas de Markov

Cuando los estados no son observables modelos ocultos de markov (HMM hidden Markov models)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Regla de Bayes

)()|()( 111111 qqPqqqPqqqP ttttt minusminusminus =

)()|()|()( 121211111 qqPqqqPqqqPqqqP ttttttt minusminusminusminusminus =

prod=

minusminus =t

i

iitt qqqPqPqqqP2

11111 )|()()(

Dr Marcelo G Armentano - ISISTAN - UNICEN

Propiedad de Markov

1)|()|( 111 gt= minusminus iforqqPqqqP iiii

)|()|()()|()()( 1121

2

1111 minus=

minusminus == prod tt

t

i

iitt qqPqqPqPqqPqPqqqP

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov Pueden verse como un grafo de transicioacuten de estados

con probabilidades en sus arcos

Ejemplo Generacioacuten de Texto Aleatorio Un nodo por cada letra uacutenica observada

Si luego de la letra X observo la letra Y agrego un arco de X a Y Si el arco ya existe incremento la cantidad de observaciones

asociada al arco

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTAL

03112011

18

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTALTAL

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTALTALTOTOTALTOTOTOTOTALhellip

Cadenas de Markov Texto aleatorio generado a partir de un modelo

entrenado con el primer capiacutetulo de ldquo100 antildeos de soledadrdquo de Gabriel Garciacutea Marquez

Mapl idoca Uno domen quespiate meacute s abrdiacuteaton quadelaros del y en ioacutera puacutellade y antildeosar soacute Ar e Pon s toacutentun llose fase co tus pe foaciguela tr de paquros losintun oceton deros picaras ro pigeltexpa Arrcoacuten asadosen ca hiacuteracugidend madel cos pelo ca hamuy cuncte preraletrapuina venco sosueacute gifuas y estiogidire y ple peno do dociemanoacutey den matrones s Arseacutelades lelanelo lacides Jombidorentioacute lla caqueacutetrotan de ciechitevo pa e troacute ulega teilizaban riacuteaden zopendesellaundo u ca tioroserar vorasun plara en fue dempa teresen y umusmpio y sedes s s ezordel rugexhas darmabioacute

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N Extensioacuten a las cadenas de Markov en las que cada

estados representa una secuencia de N observaciones consecutivas

N-gramas

Ocurrencias

che 60

chi 25

cha 10

cho 5

ch

ch se observa 100 veces de las cualeshellip

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N=2

ISMI

SS

SI

IP

PP

PI

10

1010

10

10o5 o5

M I S S I S S I P P I

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N=3

ISSMIS

SSI

SIS

SIP

IPP

PPI

10

10

10

10

10

o5

o5

M I S S I S S I P P I

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

19

Cadenas de Markov de orden N N=1

Modelo fiel a las frecuencias de cada par de letras

No representa bien el lenguaje natural

Dr Marcelo G Armentano - ISISTAN - UNICEN

Mapl idoca Uno domen quespiate meacute s abrdiacuteaton quadelaros del y en ioacutera puacutellade y antildeosar soacute Ar e Pon s toacutentun llose fase co tus pe foaciguela tr de paquros losintun oceton deros picaras ro pigeltexpa Arrcoacuten asadosen ca hiacuteracugidend madel cos pelo ca hamuy cuncte preraletrapuina venco sosueacute gifuas y estiogidire y ple peno do dociemanoacutey den matrones s Arseacutelades lelanelo lacides Jombidorentioacute lla caqueacutetrotan de ciechitevo pa e troacute ulega teilizaban riacuteaden zopendesellaundo u ca tioroserar vorasun plara en fue dempa teresen y umusmpio y sedes s s ezordel rugexhas darmabioacute

Cadenas de Markov de Orden N Texto aleatorio generado N=2

Muca donios y hombre llas res pla plambregrimanteoacute el la sioacute entude Salemo fue uncioacuten co crioacuten Tendiacutea en sula ta chicalque le siezblena que tras senterosagareto mdashgruel res entorasanesbazuerasabepaacuten enda con de in inagercamieropito don cuarecior siblimena tero en joacute te Fuedo paresegua pespurantespuen dos porodad de la que cabaquentra denabrencestiminotescuyoacute quel mor loseacute Acturo pen for es ella guanos mitadraratientoacuten condiacutea la allado quen se logoacute la balaritiva triblesala soacutelos habalcabiempor ere griacutea to borse allas laciasiacutemisible por pocaza los so ola la nintildeos cuaro eacutel y lar espiendismo antildeonetrouna que cad fuerofocieres resa combrempuros parsu misiblocerma anoceraya elos no a y ejoacute desta una tioacuten

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Texto aleatorio generado N=3

Muchetextremecitano conveniencia Cuando por acora pre hablancie el rudienteel pusierantado poblado pago y aumentar animaginacioacuten aza des examillos maacutes gigaciera suellevoacute los que inte la viajes rayos imales hacedor y el teacuterminuto pueses siles expedas mocha que la tanos ser en que vez lles la como la maacutes pase lo uacutenicos romera lado JoseacuteArcadiosas antes al realejo en que de dejoacute todidos tre distilado infinito desco a le se para ver bolada alquiacutedea

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Texto aleatorio generado N=4

Muchos y salambioacute un chaleco de habiacutea burla como el pasoacute la resto de aban su fue ser prendedor condo una buena de las casaquimisterios Joseacute Arcadio Buendiacutea sino esentoacute como un en aquel tambor quedoacute recuerdo de un fugitivo en que en que sierrar los metalejos a puestaban de una tersas y el mundo sino consolas y veiacutean desar a la casa cuyos sin comer Aureliano conjuro de el esperso de piedras

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N = 3-4

Comienzan a aparecer palabras maacutes reconocibles

Palabras de muchas letras aparecen frecuentemente ldquopegadasrdquo a otras palabras

Cuanto maacutes extenso es el texto de entrenamiento maacutes variedad habraacute en la salida

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Entrenamiento con palabras completas (N=1)

Texto generado

Se habiacutea que construyoacute trampas y sus iniciales encima con una insolacioacuten por mares incoacutegnitos visitar territorios maacutes emprendedor que se hundiacutean en las maravillas del mundo Era una explicacioacuten inmediata Joseacute Arcadio Buendiacutea la resonancia hueca de helechos y entonces una truculenta demostracioacuten con un aacutespero sabor de fusilamiento el interior y tambores y a prepararse para llevaacuterselos a palmo a conocerlo mantuvo puesta por los burros Asiacute fue desde haciacutea mucho tiempo porque el mundo se asomaba al caramelo vulgar que un paacutenico cuando llegoacute la judiacutea

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

20

Cadenas de Markov de Orden N Entrenamiento con palabras completas (N=4)

Texto generado

Consideraba como una burla de su travieso destino haber buscado el mar sin encontrarlo al precio de sacrificios y penalidades sin cuento y haberlo encontrado entonces sin buscarlo atravesado en su camino como un obstaacuteculo insalvable Uacutersula no volvioacute a acordarse de la intensidad de esa mirada hasta un diacutea en que el pequentildeo Aureliano a la edad de tres antildeos entroacute a la cocina en el momento en que ella retiraba del fogoacuten y poniacutea en la mesa una olla de caldo hirviendo Aquel olor mordiente quedariacutea para siempre en su memoria vinculado al recuerdo de Melquiacuteades

Dr Marcelo G Armentano - ISISTAN - UNICEN

Modelos de Markov Conjunto de estados

El proceso se mueve de un estado a otro generando unasecuencia de estados

Propiedad de Markov la probabilidad de cada estadosiguiente depende soacutelo del estado previo

bull Para definir un modelo de Markov deben especificarselas siguientes probabilidades

21 Nsss K

KK 21 ikii sss

)|()|( 1121 minusminus = ikikikiiik ssPssssP K

)|( jiij ssPa =)( ii sP=π

Probabilidad del estado inicial Probabilidad de transicioacuten de estados

Dr Marcelo G Armentano - ISISTAN - UNICEN

Lluvioso Seco

0703

02 08

Ejemplo de modelo de Markov

Dos posibles estados lsquoLluviosorsquo ylsquoSecorsquo Probabilidades de Transicioacuten

P(lsquoLluviosorsquo|lsquoLluviosorsquo)=03 P(lsquoSecorsquo|lsquoLluviosorsquo)=07

P(lsquoLluviosorsquo|lsquoSecorsquo)=02 P(lsquoSecorsquo|lsquoSecorsquo)=08

Probabilidades iniciales

P(lsquoLluviosorsquo)=04 P(lsquoSecorsquo)=06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Probabilidad de una secuencia Por la probabilidad de Markov

P(lsquoSecorsquorsquoSecorsquorsquoLluviosorsquorsquoLluviosorsquo ) =P(lsquoLluviosorsquo|rsquoLluviosorsquo) P(lsquoLluviosorsquo|rsquoSecorsquo)

P(lsquoSecorsquo|rsquoSecorsquo) P(lsquoSecorsquo) = 03020806 = 00288

)()|()( 12112121 minusminus= ikiiikiiikikii sssPssssPsssP KKK

)()|()|()|(

)()|(

112211

1211

iiiikikikik

ikiiikik

sPssPssPssP

sssPssP

K

KK

minusminusminus

minusminus

=

==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Underflow El producto de muchas probabilidades entre 0 y 1

puede resultar en underflow

Dado que log(xy) = log(x) + log(y) es mejor realizar la suma del logaritmo de las probabilidades que multiplicarlas

El modelo con el mayor puntaje final de probabilidad logariacutetmica sigue siendo la maacutes probable

Dr Marcelo G Armentano - ISISTAN - UNICEN

Hipoacutetesis del maacuteximo a posteriori

)|(maxarg DhPhHh

MAPisin

equiv

)(

)()|(maxarg

DP

hPhDP

Hhisin

=

)()|(maxarg hPhDPHhisin

=

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

21

Modelos Ocultos de Markov (HMM)

Conjunto de estados El proceso de mueve de un estado a otro generando una secuencia de

estados

Propiedad de Markov La probabilidad de cada estado depende solo del estado actual

Los estados no son visibles pero cada estado genera aleatoriamente unade las posibles observaciones (estados visibles)

Para definir un modelo oculto de Markov se deben especificar las siguientes probabilidades Matriz de probabilidades transicioacuten A=(aij) aij= P(si | sj) Matriz de probabilidades de observacioacuten B=(bi (vm )) bi(vm )= P(vm | si) Vector de probabilidades iniciales π=(πi) πi = P(si)

Los modelos quedan definidos por la tripla M=(A B π)

21 Nsss K

KK 21 ikii sss

)|()|( 1121 minusminus = ikikikiiik ssPssssP K

21 Mvvv K

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

Baja Alta

0703

02 08

Lluvioso Seco

06 0604 04

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

bull Dos estados correspondientes a la presioacuten atmosfeacutericabull lsquoAltarsquo y lsquoBajarsquo

bull Dos posibles observaciones bull lsquoLluviosorsquo y lsquoSecorsquo

bull Probabilidades de Transicioacuten

bull P(lsquoBajarsquo|lsquoBajarsquo)=03 P(lsquoAltarsquo|lsquoBajarsquo)=07 P(lsquoBajarsquo|lsquoAltarsquo)=02

P(lsquoAltarsquo|lsquoAltarsquo)=08bull Probabilidades de Observacioacuten

bull P(lsquoLluviosorsquo|lsquoBajarsquo)=06 P(lsquoSecorsquo|lsquoBajarsquo)=04

P(lsquoLluviosorsquo|lsquoAltarsquo)=04 P(lsquoSecorsquo|lsquoAltarsquo)=03 bull Probabilidades iniciales

bull P(lsquoBajarsquo)=04 P(lsquoAltarsquo)=06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM Prediccioacuten del tiempo de acuerdo al estado de un alga

empapado huacutemedo casi seco seco

nubes lluviasol

Oculto

Observable

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

Empapado Huacutemedo Casi seco Seco

Sol 060 020 015 005

Nubes 025 025 025 025

Lluvia 005 010 035 050

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

22

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

i P(qt+1=S1|qt=Si)

P(qt+1=S2|qt=Si)

P(qt+1=Sj|qt=Si)

P(qt+1=SN

|qt=Si)

1 a11 a12 hellip a1j hellip a1N

2 a21 a22 hellip a2j hellip a2N

3 a31 a32 hellip a3j hellip a3N

hellip

i ai1 ai2 hellip aij hellip aiN

hellip

N aN1 aN2 hellip aNj hellip aNN

Todas estas tablas son

iguales

aij = P (qt+1=sj|qt=si)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

i P(Ot=1|qt=Si) P(Ot=2|qt=Si) P(Ot=j|qt=Si) P(Ot=N|qt=Si)

1 b1(1) b1(2) hellip b1(j) hellip b1(N)2 b2(1) b2(2) hellip b2(j) hellip b2(N)3 b3(1) b3(2) hellip b3(j) hellip b3(N)hellip

i Bi(1) bi(2) hellip bi(j) hellip bi(N)hellip

N bN(1) bN(2) hellip bN(j) hellip bN(N)

bi(j) = P (Ot=j|qt=si)

Todas estas tablas son

iguales

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

un enrejado

s1

s2

si

sN

s1

s2

si

sN

s1

s2

sj

sN

s1

s2

si

sN

a1j

a2j

aij

aNj

1 k k+1 K

o1 ok ok+1 oKObservaciones

Tiempo

Ejemplo Casino tramposo

Un casino tiene dos dados Dado ldquojustordquo

P(1) = P(2) = P(3) = P(5) = P(6) = 16 Dado cargado

P(1) = P(2) = P(3) = P(4) = P(5) = 110P(6) = 12

El casino alterna entre el dado justo y el cargado una vezcada 20 turnos

Problemas a resolver con HMM Evaluacioacuten

Dado un HMM M=(A B π) y una secuencia de observaciones O=o1 o2 oK calcular la probabilidad de que el modelo M haya generado la secuencia O

Dr Marcelo G Armentano - ISISTAN - UNICEN

EvaluacioacutenDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestCuan probable es esta secuencia dado nuestromodelo de como opera el casino

Este es el problema de EVALUACIOacuteN en HMMs

03112011

23

Problemas a resolver con HMM Decodificacioacuten o inferencia

Dado un HMM M=(A B π) y una secuencia de observaciones O=o1 o2 oK calcular la secuencia de estados ocultos Si que maacutes probablemente produjo la secuencia de observaciones O

Dr Marcelo G Armentano - ISISTAN - UNICEN

DecodificacioacutenDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestQue partes de la secuencia fueron generadas por el dado cargado y cuales por el dado justo

Este es el problema de DECODIFICACIOacuteN en HMMs

Problemas a resolver con HMM Aprendizaje

Dado un conjunto de secuencias de observaciones de entrenamiento O=o1 o2 oK y la estructura general de HMM (cantidad de estados ocultos y cantidad de estados visibles) determinar los paraacutemetros del HMM M=(A B π) que mejor se ajustan a los datos de entrenamiento

Dr Marcelo G Armentano - ISISTAN - UNICEN

AprendizajeDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestCoacutemo estaacute cargado el dado cargado iquestCada cuantocambia el casino entre el dado cargado y el justo

Este es el problema de APRENDIZAJE en HMMs

El HMM del casino tramposo

JUSTO CARGADO

005

005

095095

P(1|Justo) = 16P(2|Justo) = 16P(3|Justo) = 16P(4|Justo) = 16P(5|Justo) = 16P(6|Justo) = 16

P(1|Cargado) = 110P(2|Cargado) = 110P(3|Cargado) = 110P(4|Cargado) = 110P(5|Cargado) = 110P(6|Cargado) = 12

Ejemplo reconocimiento de

palabras Se asume que los caracteres estaacuten separados

El reconocedorde caracteres da como salida la probabilidad de que una imagen corresponda a un caracterparticular P(caracter|imagen)

05

003

0005

031z

c

b

a

Estado Oculto

Estado Observable

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

24

Ejemplo reconocimiento de

palabras Estados Ocultos del HMM caracteres

Estados Observables imagenes de caracteres

Probabilidades de Observacioacutenαv

( ) ( ))|()( ii svPvbB αα ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo reconocimiento de

palabras Si se conoce el diccionario es posible construir un modelo

individual para cada palabra

bull Problema de evaluacioacuten reconocer la palabra en unaimagen es equivalente a evaluar un conjunto de modelos

amigos a m i g o s

buacutefalo b uacute f a l o

05 003 04 06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo reconocimiento de

palabras Podemos construir un HMM para todas las palabras

Estados ocultos los caracteres de las palabras

Probabilidades de transicioacuten calculadas a partir de modelos del lenguaje

Observaciones y probabilidades de observacioacuten iguales al ejemplo anterior

Problema de decodificacioacuten encontrar la secuencia de estados ocultos que maacutes probablemente generaron la imagen

a m

i g

o

s

t

b v

f

u

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

Forward-Backward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward

Seco Huacutemedo EmpapadoObs

Sol

Nubes

Lluvia

Sol

Nubes

Lluvia

Sol

Nubes

Lluvia

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward Pr(Seco Huacutemedo Empapado|M) =

Pr(seco huacutemedo empapado|sol sol sol) +

Pr(seco huacutemedo empapado|sol nubes sol) +

hellip

Pr(seco huacutemedo empapado|lluvia lluvia lluvia)

iexcliexclMuy Costoso

33 = 27 caacutelculos

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

25

Algoritmo Forward Reduccioacuten de la complejidad

Probabilidad parcial de alcanzar un estado intermedio en el entramado

Yk1 Yk2 hellip YkT

Sol

Nubes

Lluvia

Nubes

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward αt(j)= Pr(obs|estado oculto es j)

Pr( todos los caminos al estado j en el tiempo t)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward En el tiempo t=1

En el tiempo t gt1

α1(j)=π(j) Pr(obs|estado j)

αt(j)=Pr(todos los caminos a j) Pr(obs|estado j)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward

Terminacioacuten

Dr Marcelo G Armentano - ISISTAN - UNICEN

sum=

=n

j

T jMObs1

)()|Pr( α

sum=

++ =n

i

ijttjt ajobj1

11 )()()( αα

Algoritmo Forward

Sol

α1(sol)=π(sol) bsol(humedo)

Nubes

α1(nubes)=π(nubes) bnubes(humedo)

Lluvia

α1(lluvia)=π(lluvia) blluvia(humedo)

)()(secb )(nubesi1nubes2 sum sdotsdot=

iaionubes αα

Nubes

asolnubes

anubesnubes

alluvianubes

Huacutemedo Seco

Algoritmo Backward

Se define la variable β

)|()( 21 λβ iqoooPi tTttt == ++

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

26

Algoritmo Backward

Inicializacioacuten

Caacutelculo

Finalizacioacuten

1)( =jTβ

1 1

1

( ) ( ) ( )N

t t ij j t

j

i j a b oβ β + +=

=sum

sum=

=N

i

i iobiOp1

11 )()()()|( βπλ 11minus= Tt

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

Forward- Backward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Encontrar la secuencia maacutes probable de estados

ocultos dada una secuencia de observaciones

Ejemplo etiquetar palabras en una oracioacuten con su funcioacuten sintaacutectica

iquestEstados observables iquestEstados ocultos

Juan come naranjasNS NP OD

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Probabilidad parcial δ de alcanzar un estado

intermedio particular en el entramado

δ representa la probabilidad del camino maacutes probable a un estado

Para cada estado final hay un camino maacutes probable a ese estado

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi δ(it) es la maacutexima probabilidad de todas las

secuencias que terminan en el estado i en el tiempo t

En t=T tenemos las mejores probabilidades parciales y los mejores caminos parciales

El mejor camino global a T es el que lleva al estado con la mayor probabilidad

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En t=1

)()()1( 1obii isdot= πδ

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

27

Algoritmo de Viterbi En tgt1

A

B

C

Xhellip

Tltt-1 t-1 t

Pr(x en T=t) = maxi=ABC Pr(i en T=t-1) Pr(X|i) Pr(Ot|X)

)())1((max)( tiijj

obajtit sdotsdotminus= δδDr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En cada tiempo t recordamos el estado j que generoacute

δ(ti)

Se reconstruye el camino utilizando los punteros φhasta el tiempo t=1

ijj

ajtit )1(max)( sdotminus= δφ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi

)(max1

iP TNi

δlele

=lowast

)(maxarg1

iq TNi

T δlele

lowast =

P da la probabilidad de los mejores los estados

qT is la secuencia de estados oacuteptima(Q = q1q2hellipqT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

ForwardBackward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Dada un conjunto de secuencias de observaciones O=o1 o2

oK y la estructura general del HMM (cantidadde estados ocultos

y visibles) determinar los paraacutemetros del modelo M=(A B π) que mejor se ajustan a los datos de entrenamiento es decir

que maximice P(O | M)

Se utiliza el algoritmo de maximizacioacuten de la esperanza para

encontrar un maacuteximo local de P(O | M) algoritmo Baum-Welch

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Si los datos de entrenamiento tienen informacioacuten

acerca de la secuencia de estados ocultos los paraacutemetros se estiman como

xsestransicion

ssestransicionssPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

sveces

senodenesobservaciosoPob

)|()( ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

28

Algorimo Baum-Welch Idea general

xsestransiciondeesperado

ssestransiciondeesperadossPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

svecesdeesperado

senodenesobservaciodeesperadosoPob

)|()( ==

1)( === tparasenvecesdeesperadosP iiiπ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

ξt(ij)= P(qt= si qt+1= sj |o1 o2 oT)

ξt(ij)=P(qt= si qt+1= sj o1 o2 oT)

P(o1 o2 oT)=

P(qt= si o1 o2 ot) aij bj (ot+1 ) P(ot+2 oT | qt+1= sj ) P(o1 o2 oT)

=

=αt(i) aij bj (ot+1 ) βt+1(j)

ΣiΣj αt(i) aij bj (ot+1 ) βt+1(j)

αt(i) aij bj (ot+1 ) βt+1(j)

Σi αt(i) βt(i)Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

tiempo

Estados ocultos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch Definimos γt(i) como la probabilidad de estar en el

estado i en el tiempo t dadas las observaciones

Σt γt(i) - cantidad esperada de veces que visitoel estado i

Σt ξt(ij) - cantidad esperada de transiciones

sum=

=N

j

tt jii1

)()( ξγ

ji rarr

γt(i)= P(qt= si |o1 o2 oT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

sumsum

=)(

)(ˆ

i

jia

t

t

ijγ

ξ

sum

sum ==

)(

)()(ˆ

j

job

t

oot t

kjkt

γ

γ

)(ˆ1 iγπ = la frecuencia esperada del estado i en t=1

nuacutemero esperado de transiciones desde el estado i al estado j sobre la cantidad esperada de transiciones desde el estado i

cantidad de veces que se estuvo en el estado j observando el siacutembolo k sobre la cantidad de veces que se estuvo en el estado j

Dr Marcelo G Armentano - ISISTAN - UNICEN

Bibliografiacutea Bayesian Networks and Decision Graphs - Finn V

Jensen and Thomas D Nielsen - Springer Verlag -Second Edition - 2007

A tutorial on hidden Markov models and selected applications in speech recognition - Lawrence R Rabiner - Proceedings of the IEEE Vol 77 Nordm2 pp 257-286 - 1989

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

29

iquestConsultas

Dr Marcelo G Armentano - ISISTAN - UNICEN

Page 2: redes bayesianas UNICEN.pdf

03112011

2

Redes de Bayes Las Redes de Bayes se usan para modelar dominios que

contengan incertidumbre

Se conocen tambieacuten como Redes Bayesianas

Redes probabiliacutesticas causales

Redes de creencias

Redes de creencias bayesianas

Dr Marcelo G Armentano - ISISTAN - UNICEN

Incertidumbre fuentes Conocimiento incompleto del dominio Entendimientocomprensioacuten incorrecta del dominio Relaciones en el dominio de naturaleza no

determiniacutestica (ej enfermedades y siacutentomas) Teacuterminos involucrados muy vagos (grande hermosa

dolor) Realizacioacuten de alguacuten tipo de abstraccioacuten Naturaleza aleatoria de los mecanismos que rigen el

comportamiento del dominio (ej modelado de usuarios)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Conceptos Una Red de Bayes consiste de un conjunto de nodos y de

un conjunto de arcos dirigidos entre estos nodos

Los arcos reflejan relaciones causa-efecto dentro del dominio Estos efectos normalmente no son determiniacutesticos (ej enfermedad siacutentoma)

La ldquofuerzardquo de un efecto es modelada como una probabilidad

La base matemaacutetica estaacute dada por el Teorema de Bayes

Dr Marcelo G Armentano - ISISTAN - UNICEN

Definicioacuten Una Red Bayesiana es un grafo dirigido aciacuteclico

(GDA) donde cada nodo representa una variable aleatoria y los arcos entre los nodos representan dependencias probabiliacutesticas entre las variables Cada nodo contiene los estados de la variable que representa y una tabla de probabilidad condicional (CPT) La CPT de un nodo contiene las probabilidades de que el nodo esteacute en un estado especiacutefico dados los estados de sus padres

LJ

TL

A

LMDr Marcelo G Armentano - ISISTAN - UNICEN

Nodos Un nodo representa una variable aleatoria discreta

con un nuacutemero finito de estados o una variable aleatoria continua (distribucioacuten Gaussiana)

Si un nodo no tiene padres el nodo contendraacute una tabla de probabilidad marginal Si el nodo es discreto contiene una distribucioacuten de

probabilidad sobre los estados de la variable que representa

Si el nodo es continuo contiene una funcioacuten de densidad Gaussiana (dada por la media y la varianza) para la variable aleatoria que representa

Dr Marcelo G Armentano - ISISTAN - UNICEN

Tablas de probabilidad Si el nodo tiene padres contiene una tabla de

probabilidad condicional (CPT) Si el nodo es discreto cada celda en la CPT de un nodo

contiene una probabilidad condicional para cada estado en que pueda estar el nodo dada una configuracioacuten especiacutefica de los estados de sus padres

Si el nodo es continuo la CPT contiene una media y una varianza para cada configuracioacuten de los estados de sus padres discretos y un coeficiente de regresioacuten por cada padre continuo

Dr Marcelo G Armentano - ISISTAN - UNICEN

Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin

03112011

3

Ejemplo Apple Jack Un diacutea Apple Jack descubre que su mejor aacuterbol de

manzanas estaacute perdiendo sus hojas Entonces quiere saber queacute estaacute pasando Eacutel sabe que si el aacuterbol estaacute seco es muy comuacuten que pierda sus hojas Por el otro lado perder las hojas puede ser un indicio de que el aacuterbol esteacute enfermo

Dr Marcelo G Armentano - ISISTAN - UNICEN

iquestvariables

iquestestados

iquestrelaciones

Ejemplo Apple Jack

Enfermo=si Enfermo=no

01 09

Seco=si Seco=no

01 09

p(Pierde Seco Enfermo)

Seco=si

Enfermo=si

Seco=si

Enfermo=no

Seco=no

Enfermo=si

Seco=no

Enfermo=no

Pierde=si 095 085 090 002

Pierde=no 005 015 010 098

P(seco)

P(enfermo)

Enfermo Seco

Pierde HojasPierde Hojas

Dependencias Causales Cuando existe una dependencia causal de un nodo A

a un nodo B se espera que cuando A estaacute en un cierto estado esto tiene un impacto en el estado de B

En el ejemplo existe un viacutenculo causal de ldquoEnfermordquo a ldquoPierde hojasrdquo porque cuando un aacuterbol estaacute enfermo puede causar que pierda las hojas

Dr Marcelo G Armentano - ISISTAN - UNICEN

Enfermo Seco

Pierde HojasPierde Hojas

Independencia condicional Dos conjuntos de variables A y B son

(condicionalmente) independientes de un tercer conjunto C si cuando los valores de C son conocidos el conocimiento acerca de B no provee maacutes informacioacuten sobre los valores de A

p(ABC) = p(AC)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo 2 Asia

p(BronchitisVisit AsiaSmoker) = p(BronchitisSmoker)Dr Marcelo G Armentano - ISISTAN - UNICEN

Distribucioacuten de probabilidad

conjunta

Dado un conjunto de variables V1V2Vk cuyos valores se denotan v1v2vk una expresioacuten de la forma

p(V1V2Vk) se denomina funcioacuten de probabilidad conjunta sobre las variables V1V2Vk

Dr Marcelo G Armentano - ISISTAN - UNICEN

Admin
Admin
Admin
Admin
Admin
Admin
Admin

03112011

4

Ejemplo 3 Robot Un robot es capaz de levantar una bandeja si la

bandeja es liviana y si las bateriacuteas de la fuente de energiacutea del robot estaacuten cargadas Si estas condiciones se satisfacen entonces cuando el robot trata de levantar la bandeja mueve sus brazos Se determina si la bateriacutea estaacute cargada mediante un medidor

Dr Marcelo G Armentano - ISISTAN - UNICEN

iquestvariables

iquestestados

iquestrelaciones

Ejemplo 3 Robot

G M

L

P(B) = 095 P(L) = 07

P(GB) = 095

P(GnotB) = 01

P(MBL) = 09

P(MBnotL) = 005

P(MnotBL) = 00

P(MnotBnotL) = 00

B

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo 3 Robot P(BMLG)

4 variables binarias binarias 16 probabilidades

(BMLG) Prob Conj

(VVVV) 05686

(VVVF) 00299

(VVFV) 00135

(VVFF) 00007

hellip hellip

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo 3 Robot

P(ABDLSXT)

7 variables binarias 128 Probs Conjuntas

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problema de la probabilidad

conjunta Se necesitan en el orden de 2k valores para definir la

funcioacuten de probabilidad conjunta

Solucioacuten Las relaciones de independencia condicional entre las

variables contribuyen a la disminucioacuten de la complejidad del problema

Dr Marcelo G Armentano - ISISTAN - UNICEN

Redes de Bayes Representacioacuten compacta de distribuciones de

probabilidades via independencia condicional

Parte cualitativa Grafo dirigido aciacuteclico (gda)

Nodos - variables aleatorias

Arcos ndash influencia directa

Parte cuantitativa Conjunto de

distribuciones de probabilidades condicionales

09 01

e

b

e

02 08

001 099

09 01

be

b

b

e

BE P(A | EB)E

R

B

A

C

Juntos definen una uacutenica distribucioacuten conjunta de manera factorizada

)|()|()|()()()( ACPERPEBAPEPBPRCAEBP =

Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin

03112011

5

Semaacutentica de las Redes de Bayes

Representacioacuten natural y compacta

Independenciascondicionales en

la estructura de

la red

+Modelos de

probabilidadeslocales

Distribucioacuten deprobabilidad

conjunta sobreun dominio

=

)|()|()|()|()()()( eldPlxPcsePslPcPsPdxelcsP =

S

L

C

E

DX

Dr Marcelo G Armentano - ISISTAN - UNICEN

Agenda Definicioacuten

Ejemplos

Conceptos de Probabilidades

Utilizacioacuten

Inferencia Probabiliacutestica

Construccioacuten

Aprendizaje

Dr Marcelo G Armentano - ISISTAN - UNICEN

Utilizacioacuten de Redes de Bayes Obtener los valores de probabilidades de ciertas

variables de intereacutes a partir de la informacioacuten (evidencia) del estado de otras variables

Ej Sabemos que el aacuterbol estaacute perdiendo sus hojas iquestCuaacutel es la probabilidad de que el aacuterbol esteacute enfermo

iquestCuaacutel es la probabilidad de que el aacuterbol esteacute seco

InferenciaInferenciaDr Marcelo G Armentano - ISISTAN - UNICEN

Enfermo Seco

Pierde Pierde Hojas

Inferencia probabiliacutestica

Consiste en calcular probabilidades de intereacutes a partir de una distribucioacuten de probabilidades conjunta

La estructura de la red de Bayes permite calcular cualquier probabilidad de intereacutes donde la independencia condicional simplifica el caacutelculo

Dr Marcelo G Armentano - ISISTAN - UNICEN

Inferencia en Redes de Bayes La inferencia consiste en el caacutelculo de los resultados a

una consulta (distribucioacuten de probabilidades) con respecto a una red dada y a la presencia de cierta evidencia

RedRed

E

EvidenciaEvidencia

ConsultaConsulta

P(AE)

a0 a1P(AE)P(AE)

Inferencia

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de inferencia

Evidencia el aacuterbol pierde las hojas

Consulta iquestEstaacute enfermo el aacuterbol

Dr Marcelo G Armentano - ISISTAN - UNICEN

Enfermo Seco

Pierde HojasPierde Hojas

Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin

03112011

6

Ejemplo de inferencia Consulta iquestEstaacute enfermo el aacuterbol

Evidencia el aacuterbol pierde las hojas

Dr Marcelo G Armentano - ISISTAN - UNICEN

Enfermo Seco

Pierde HojasPierde Hojas

Enfermo Seco

Pierde Hojas

Enfermo Seco

Pierde Hojas

Teorema de Bayes El teorema de Bayes nos dice como obtener una

probabilidad a posteriori en una hipoacutetesis Vi luego de la observacioacuten de alguna evidencia Vj dadas la probabilidad a priori de Vi y la probabilidad de observar Vj dado Vi

)(

)()()(

Vjp

VipViVjpVjVip =

Vi Vj

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo del Teorema de Bayes Si una persona ve que un brazo del robot se estaacute

moviendo se quiere obtener la probabilidad de que esto haya ocurrido cuando la bateriacutea estaacute descargada Evidencia p(M = V)

Probabilidad a priori p(B = F)

Probabilidad condicional p(M = V B = F)

P(B = F M = V) = p( M = V B = F) p(B = F) p(M = V)

G M

LB

Dr Marcelo G Armentano - ISISTAN - UNICEN

Inferencia en Redes de Bayes

Inferencia causal o top-down

Inferencia de diagnoacutestico o bottom-up

Dr Marcelo G Armentano - ISISTAN - UNICEN

Inferencia causal Probabilidad de que el brazo se mueva dado que la

bandeja es liviana

p(ML) = p(MBL) + p(M notBL) (expansioacuten)= p(MBL) P(BL)+ p(M notBL) P(notBL)= p(MBL) P(B)+ p(M notBL) P(notB)

G M

LBP(ML)

EvidenciaConsulta

Dr Marcelo G Armentano - ISISTAN - UNICEN

Inferencia de diagnoacutestico Probabilidad de que la bandeja esteacute pesada dado que el

brazo no se mueve

p(notLnotM) = p(notMnotL) p(notL) p(notM) Bayes

Se resuelve p(notMnotL) usando razonamiento causal

G M

LBP(notLnotM)

EfectoCausa

Dr Marcelo G Armentano - ISISTAN - UNICEN

Admin
Admin
Admin
Admin
Admin
Admin
Admin

03112011

7

Inferencia exacta A pesar de poder explotar las propiedades de la red la

inferencia probabiliacutestica exacta en una red de Bayesarbitraria es NP-hard

Para muchas aplicaciones donde las redes son pequentildeas o pueden simplificarse la complejidad puede no ser fatal

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmos de Inferencia Existen numerosos algoritmos de inferencia

implementados

Centrados en operaciones algebraicas Variable Elimination [Zhang96] Bucket Elimination [Dechter99] SPI [DrsquoAmbrosio94]

Centrados en propiedades graacuteficas Junction trees [Jensen96]

Dr Marcelo G Armentano - ISISTAN - UNICEN

Agenda Definicioacuten

Ejemplos

Conceptos de Probabilidades

Utilizacioacuten

Inferencia Probabiliacutestica

Construccioacuten

Aprendizaje

Dr Marcelo G Armentano - ISISTAN - UNICEN

Construccioacuten de la red Ingenieriacutea del Conocimiento

Un experto en el dominio identifica los aspectos cualitativos (y a veces cuantitativos) del problema

Codificar el conocimiento existente de expertos en una red

Usar una base de datos para actualizar este conocimiento refinar el conocimiento experto original e identificar nuevas

relaciones

Dr Marcelo G Armentano - ISISTAN - UNICEN

Construccioacuten de la red Determinar las variables que intervienen en el

modelo

Determinar cada uno de los estados o valores que pueden tomar las variables

Determinar las relaciones (dependencias) entre las variables

Construir un GDA que codifique las aserciones de independencia condicional

Dr Marcelo G Armentano - ISISTAN - UNICEN

Construccioacuten de la red Coacutemo obtener los valores de las probabilidades

Conocimiento de expertos en el dominio

Estudios estadiacutesticos

Derivados analiacuteticamente

Aprenderlos a partir de los datos crudos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin

03112011

8

Construccioacuten de la red Coacutemo obtener la estructura de la red

A partir del conocimiento de un experto

Algoritmos de aprendizaje en Redes de Bayes Datos completos o incompletos

Estructura conocida o desconocida

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje de Redes de Bayes

E

R

B

A

C

9 1

e

b

e

7 3

99 01

8 2

be

b

b

e

BE P(A | EB)

Datos

+Informacioacuten

Previa

Aprendizaje

Dr Marcelo G Armentano - ISISTAN - UNICEN

Estructura conocida datos completos

E B

A9 1

e

b

e

7 3

99 01

8 2

be

b

b

e

BE P(A | EB)

e

b

e

be

b

b

e

BE P(A | EB) E B

A

bull La estructura de la red estaacute especificada

bull Se necesitan estimar los paraacutemetros (probabilidades)

bull Los datos no contienen valores faltantes

Aprendizaje

E B A

ltYNNgt

ltYNYgt

ltNNYgt

ltNYYgt

ltNYYgt

Dr Marcelo G Armentano - ISISTAN - UNICEN

E B

A9 1

e

b

e

7 3

99 01

8 2

be

b

b

e

BE P(A | EB)

e

b

e

be

b

b

e

BE P(A | EB) E B

A

bull La estructura de la red no estaacute especificada

ndash Se necesitan seleccionar los arcos y estimar los paraacutemetros

bull Los datos no contienen valores faltantes

E B A

ltYNNgt

ltYNYgt

ltNNYgt

ltNYYgt

ltNYYgtAprendizaje

Estructura desconocida datos completos

Dr Marcelo G Armentano - ISISTAN - UNICEN

E B

A9 1

e

b

e

7 3

99 01

8 2

be

b

b

e

BE P(A | EB)

e

b

e

be

b

b

e

BE P(A | EB) E B

A

bull La estructura de la red estaacute especificada

bull Los datos contienen valores faltantes

ndash Se necesitan considerar asignaciones a los valores faltantes

E B A

ltYNNgt

ltYYgt

ltNNYgt

ltNYgt

ltYYgtAprendizaje

Estructura conocida datos incompletos

E B

A9 1

e

b

e

7 3

99 01

8 2

be

b

b

e

BE P(A | EB)

e

b

e

be

b

b

e

BE P(A | EB)E B

A

bull La estructura de la red no estaacute especificada

bull Se necesitan seleccionar los arcos y estimar los paraacutemetros

bull Los datos contienen valores faltantes

ndash Se necesitan considerar asignaciones a los valores faltantes

E B A

ltYNNgt

ltYYgt

ltNNYgt

ltNYgt

ltYYgt

Aprendizaje

Estructura desconocida datos incompletos

Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin

03112011

9

Aprendizaje de Redes de Bayes Aprendizaje parameacutetrico

Aprender los paraacutemetros que describen el grado de dependencia entre las variables del dominio

Aprendizaje estructural Aprender las dependencias entre las variables que

intervienen en el problema

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje parameacutetrico Aprendizaje Adaptativo

Se utiliza cuando se quieren adaptar todas o algunas de las tablas de probabilidad condicional a partir de un nuevo conjunto de datos

Aprendizaje Batch Se utiliza cuando se quieren generar las tablas de

probabilidad condicional a partir de los datos Ej EM (Expectation Maximization)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje adaptativo La adaptacioacuten es el proceso de refinar las

probabilidades condicionales especificadas en la Red de Bayes teniendo en cuenta los resultados de experimentos o casos reales

Se utilizan tablas de experiencia yo tablas de desvanecimiento

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje adaptativo Un paso del proceso de aprendizaje adaptativo consiste

de ingresar evidencia

propagar la evidencia

actualizar (adaptar) las tablas de probabilidad condicional y las tablas de experiencia

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje adaptativo con tablas

de experiencia

Yes No

Cantidad de experiencias

10 5

P(Smoker=yes) = yes) (yes + no) = 10 15 = 0667

P(Smoker=no) = no) (yes + no) = 5 15 = 0333Dr Marcelo G Armentano - ISISTAN - UNICEN

Fractional Updating Utiliza tablas de experiencia

Suposiciones Independencia Global

Independencia Local

Sean p(A|bicj)=(x1x2)

(n1n2) las experiencias de A

s = n1 + n2 cantidad total de experiencias

A

B C

)()|( 21

s

n

s

ncbAp ji =

Dr Marcelo G Armentano - ISISTAN - UNICEN

Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin

03112011

10

Fractional Updating Caso 1

Tenemos una nueva experiencia e con B=bi

C=cj

A=a1

Luego n1=n1+1

s=s+1 )

1

1

1()|( 21

++

+=

s

n

s

ncbAp ji

Dr Marcelo G Armentano - ISISTAN - UNICEN

A

B C

Fractional Updating Caso 2

Tenemos una nueva experiencia e con B=bi

C=cj

de A soacutelo sabemos

Luego nk=nk+yk

s=s+1

A

B C

1+

+=

s

ynx kk

k

)()|()|( 21 yyecbApeAp ji ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Fractional Updating Caso general

Tenemos una nueva experiencia e con

Luego nk=nk+zyk

s=s+z

A

B C

Dr Marcelo G Armentano - ISISTAN - UNICEN

zecbp ji =)|(

)()|( 21 yyecbApji

=

zs

zynx kk

k+

+=

Fractional Updating Ejemplo

B

true false

true 06 03

false 04 07

Experiences 10 10

A

B

S=20

n1 n2

Como P(A=true|B=true) = 06 Tenemos

bullN(A=true|B=true) = 06 10 = 6bullN(A=true|B=false)= 03 10 = 3

El total de las cuentas para la variable AbullN(true) = 6 + 3 = 9 bullN(false) = 4 + 7 = 11 Dr Marcelo G Armentano - ISISTAN - UNICEN

Fractional Updating

Dr Marcelo G Armentano - ISISTAN - UNICEN

B

true false

true 063 03

false 037 07

Experiences 11 10

A

B

Despueacutes de una experiencia conbull A=truebull B=true

Obtenemos

06311

10106)|( =

+=== trueBtrueAp

03711

10004)|( =

+=== trueBfalseAp

0310

00013)|( =

+=== falseBtrueAp

0710

00007)|( =

+=== falseBfalseAp

zs

zynx kk

k+

+=

zebp i =)|(

)()|( 21 yyebAp i =Fractional Updating

Dr Marcelo G Armentano - ISISTAN - UNICEN

B

true false

true 0625 032

false 0375 068

Experiences 1067 1033

A

B

Si solo tenemos evidencia de A=true

Obtenemos

06256710

067106)|( =

+=== trueBtrueAp

03756710

067004)|( =

+=== trueBfalseAp

0323310

033013)|( =

+=== falseBtrueAp

0683310

033007)|( =

+=== falseBfalseAp

p(B=true|e) zs

zynx kk

k+

+=

zebp i =)|(

)()|( 21 yyebAp i =

03112011

11

Aprendizaje adaptativo con tablas

de desvanecimiento A veces las observaciones viejas no son tan importantes

como las nuevas en el proceso de adaptacioacuten Entonces tenemos que ldquodesaprenderrdquo u ldquoolvidarrdquo algunas de ellas

Las observaciones nuevas son maacutes importantes que las viejas y por lo tanto se les debe dar maacutes peso durante la adaptacioacuten

Se introduce un factor de desvanecimiento que indica la tasa con la cual se olvidan las observaciones previas 0 no hay adaptacioacuten 1 no hay desvanecimiento

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje adaptativo con tablas

de desvanecimiento

Yes No

Cantidad de experiencias

10 5

P(Smoker=yes) = yes) (yes + no) = 10 15 = 0667

P(Smoker=no) = no) (yes + no) = 5 15 = 0333Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje adaptativo con tablas

de desvanecimiento Smoker=yes Fading factor(s) = 05

(Smoker=yes) = factor (yes-previos) + 1= 05 10 + 1 = 6

(Smoker=no) = factor (no-previos) = 05 5 = 25

(experiencias) = 6 + 25 = 85

P(Smoker=yes) = 6 85 = 07059 P(Somker=no) = 25 85 = 02941

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje estructural

Earthquake Alarm Set

Sound

Burglary Earthquake Alarm Set

Sound

Burglary

Earthquake Alarm Set

Sound

Burglary

Si sobra un arcoSi falta un arco

bull Aumenta el nuacutemero de paraacutemetros a ser estimados

bull Suposiciones erroacuteneas acerca del dominio

bull No puede ser solucionado ajustando los paraacutemetros

bull Suposiciones erroacuteneas acerca del dominio

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje estructural Search and Score

Meacutetrica de puntuacioacuten (Score) Mide la calidad de la estructura graacutefica Se utiliza para decidir cual es la mejor solucioacuten

Algoritmo de buacutesqueda Selecciona un pequentildeo subconjunto de las posibles

redes que tengan una calidad alta Se selecciona la ldquomejorrdquo

Dr Marcelo G Armentano - ISISTAN - UNICEN

Basado en optimizaciones

E B A

ltYNNgt

ltYYYgt

ltNNYgt

ltNYYgt

ltNYYgtE B

A

E

B

A

E

BA

Buscar una estructura que maximice esa funcioacuten

Definir una funcioacuten que evaluacutee queacute tan bien se asemeja el modelo a los datos

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

12

Aprendizaje estructural Tests de independencia

Obtienen las dependencias condicionales y lasindependencias utilizando tests de independenciasentre triplas de variables

Por ejemplo tests estadiacutesticos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo K2 Score and Search Buacutesqueda Greedy Muy eficiente Asume que las variables estaacuten ordenadas Comienza con una red sin arcos En cada iteracioacuten para cada variable Xi el nodo cuyo orden

es previo a Xi y que incrementa la calidad de la red se agrega a =Pa(Xi)

Se repite el proceso hasta que No hay incremento en la calidad de la red Se llega a una red completa

La cantidad de padres puede limitarse

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo B Score and Search

No requiere un ordenamiento previo de las variables

Controlar ciclos

Comienza con un conjunto vaciacuteo de padres

En cada iteracioacuten agrega un arco tal que

No produce ciclos

Maximiza la calidad de la red

El proceso se detiene cuando

No se incrementa la calidad de la red 0 Se llega a una red completa

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PC Tests de Independencia

Dos fases Construccioacuten del esqueleto

Encontrar las direcciones de los arcos mediante tests de independencia

Orientar el resto de los arcos sin producir ciclos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PC Construccioacuten del esqueleto

Comienza con un grafo no dirigido totalmente conectado

Mediante tests de independencia va eliminando arcos que no cumplen la siguiente condicioacuten Dos nodos X e Y estaacuten conectados si y soacutelo si no existe un

subconjunto Sxy del conjunto de veacutertices V tal que I(XY|Sxy) sea verdadero

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PCComienza con un grafo completo no dirigido gpi = 0Repeat

For each X isinisinisinisin VFor each Y isinisinisinisin ADJX

Determinar si existe Ssube ADJX ndashY con |S| = i y I(XY|S)Si este conjunto existe

SXY = SEliminar el arco X-Y

i = i+1Until |ADJX| lelelele i forallforallforallforallX

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

13

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=

i=0

SI

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

SI

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

03112011

14

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

i=1

SI

SXY=SXW=SZW=Y

03112011

15

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

No hay nodos con maacutes de 3 adyacentes

Algoritmo PC Encontrar las direcciones de los arcos mediante tests

de independencia (tomando las variables de a tres) Para cada variable Z con dos adyacentes X e Y

comprueba que no Z no esteacute en Sxy para conectar a X e Y como padres de Z

Z XY

Z XY

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

ZnotinSXY

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

ZnotinSXY

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

TnotinSZW

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

TnotinSZW

03112011

16

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

Se orienta arbitrariamente (evitando ciclos)

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

Herramientas Hugin

httpwwwhugincomProducts_ServicesProductsDemo

Bayesware httpwwwbayeswarecom

JavaBayes httpwww-2cscmuedu~javabayes

Paacutegina de Finn Jensen httpwwwcsaaudk~fvj

Dr Marcelo G Armentano - ISISTAN - UNICEN

Agenda Introduccioacuten

Redes de Bayes

Modelos de Markov Introduccioacuten

Cadenas de Markov

Modelos Ocultos de Markov

Dr Marcelo G Armentano - ISISTAN - UNICEN

Introduccioacuten Modelar dependencias entre siacutembolos de una

secuencia Temporales

En reconocimiento del habla fonemas en una palabra palabras en una oracioacuten (reconocimiento sintaacutectico)

Espaciales Reconocimiento de escritura

Secuencias de genes

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

17

Procesos aleatorios de Markov Una secuencia aleatoria tiene la propiedad de markov si su

distribucioacuten de probabilidades estaacute determinadauacutenicamente por el estado actual Un proceso aleatorio quecumple con esta propiedad se llama un proceso aleatorio de Markov

Cuando los estados son observables cadenas de Markov

Cuando los estados no son observables modelos ocultos de markov (HMM hidden Markov models)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Regla de Bayes

)()|()( 111111 qqPqqqPqqqP ttttt minusminusminus =

)()|()|()( 121211111 qqPqqqPqqqPqqqP ttttttt minusminusminusminusminus =

prod=

minusminus =t

i

iitt qqqPqPqqqP2

11111 )|()()(

Dr Marcelo G Armentano - ISISTAN - UNICEN

Propiedad de Markov

1)|()|( 111 gt= minusminus iforqqPqqqP iiii

)|()|()()|()()( 1121

2

1111 minus=

minusminus == prod tt

t

i

iitt qqPqqPqPqqPqPqqqP

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov Pueden verse como un grafo de transicioacuten de estados

con probabilidades en sus arcos

Ejemplo Generacioacuten de Texto Aleatorio Un nodo por cada letra uacutenica observada

Si luego de la letra X observo la letra Y agrego un arco de X a Y Si el arco ya existe incremento la cantidad de observaciones

asociada al arco

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTAL

03112011

18

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTALTAL

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTALTALTOTOTALTOTOTOTOTALhellip

Cadenas de Markov Texto aleatorio generado a partir de un modelo

entrenado con el primer capiacutetulo de ldquo100 antildeos de soledadrdquo de Gabriel Garciacutea Marquez

Mapl idoca Uno domen quespiate meacute s abrdiacuteaton quadelaros del y en ioacutera puacutellade y antildeosar soacute Ar e Pon s toacutentun llose fase co tus pe foaciguela tr de paquros losintun oceton deros picaras ro pigeltexpa Arrcoacuten asadosen ca hiacuteracugidend madel cos pelo ca hamuy cuncte preraletrapuina venco sosueacute gifuas y estiogidire y ple peno do dociemanoacutey den matrones s Arseacutelades lelanelo lacides Jombidorentioacute lla caqueacutetrotan de ciechitevo pa e troacute ulega teilizaban riacuteaden zopendesellaundo u ca tioroserar vorasun plara en fue dempa teresen y umusmpio y sedes s s ezordel rugexhas darmabioacute

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N Extensioacuten a las cadenas de Markov en las que cada

estados representa una secuencia de N observaciones consecutivas

N-gramas

Ocurrencias

che 60

chi 25

cha 10

cho 5

ch

ch se observa 100 veces de las cualeshellip

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N=2

ISMI

SS

SI

IP

PP

PI

10

1010

10

10o5 o5

M I S S I S S I P P I

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N=3

ISSMIS

SSI

SIS

SIP

IPP

PPI

10

10

10

10

10

o5

o5

M I S S I S S I P P I

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

19

Cadenas de Markov de orden N N=1

Modelo fiel a las frecuencias de cada par de letras

No representa bien el lenguaje natural

Dr Marcelo G Armentano - ISISTAN - UNICEN

Mapl idoca Uno domen quespiate meacute s abrdiacuteaton quadelaros del y en ioacutera puacutellade y antildeosar soacute Ar e Pon s toacutentun llose fase co tus pe foaciguela tr de paquros losintun oceton deros picaras ro pigeltexpa Arrcoacuten asadosen ca hiacuteracugidend madel cos pelo ca hamuy cuncte preraletrapuina venco sosueacute gifuas y estiogidire y ple peno do dociemanoacutey den matrones s Arseacutelades lelanelo lacides Jombidorentioacute lla caqueacutetrotan de ciechitevo pa e troacute ulega teilizaban riacuteaden zopendesellaundo u ca tioroserar vorasun plara en fue dempa teresen y umusmpio y sedes s s ezordel rugexhas darmabioacute

Cadenas de Markov de Orden N Texto aleatorio generado N=2

Muca donios y hombre llas res pla plambregrimanteoacute el la sioacute entude Salemo fue uncioacuten co crioacuten Tendiacutea en sula ta chicalque le siezblena que tras senterosagareto mdashgruel res entorasanesbazuerasabepaacuten enda con de in inagercamieropito don cuarecior siblimena tero en joacute te Fuedo paresegua pespurantespuen dos porodad de la que cabaquentra denabrencestiminotescuyoacute quel mor loseacute Acturo pen for es ella guanos mitadraratientoacuten condiacutea la allado quen se logoacute la balaritiva triblesala soacutelos habalcabiempor ere griacutea to borse allas laciasiacutemisible por pocaza los so ola la nintildeos cuaro eacutel y lar espiendismo antildeonetrouna que cad fuerofocieres resa combrempuros parsu misiblocerma anoceraya elos no a y ejoacute desta una tioacuten

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Texto aleatorio generado N=3

Muchetextremecitano conveniencia Cuando por acora pre hablancie el rudienteel pusierantado poblado pago y aumentar animaginacioacuten aza des examillos maacutes gigaciera suellevoacute los que inte la viajes rayos imales hacedor y el teacuterminuto pueses siles expedas mocha que la tanos ser en que vez lles la como la maacutes pase lo uacutenicos romera lado JoseacuteArcadiosas antes al realejo en que de dejoacute todidos tre distilado infinito desco a le se para ver bolada alquiacutedea

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Texto aleatorio generado N=4

Muchos y salambioacute un chaleco de habiacutea burla como el pasoacute la resto de aban su fue ser prendedor condo una buena de las casaquimisterios Joseacute Arcadio Buendiacutea sino esentoacute como un en aquel tambor quedoacute recuerdo de un fugitivo en que en que sierrar los metalejos a puestaban de una tersas y el mundo sino consolas y veiacutean desar a la casa cuyos sin comer Aureliano conjuro de el esperso de piedras

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N = 3-4

Comienzan a aparecer palabras maacutes reconocibles

Palabras de muchas letras aparecen frecuentemente ldquopegadasrdquo a otras palabras

Cuanto maacutes extenso es el texto de entrenamiento maacutes variedad habraacute en la salida

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Entrenamiento con palabras completas (N=1)

Texto generado

Se habiacutea que construyoacute trampas y sus iniciales encima con una insolacioacuten por mares incoacutegnitos visitar territorios maacutes emprendedor que se hundiacutean en las maravillas del mundo Era una explicacioacuten inmediata Joseacute Arcadio Buendiacutea la resonancia hueca de helechos y entonces una truculenta demostracioacuten con un aacutespero sabor de fusilamiento el interior y tambores y a prepararse para llevaacuterselos a palmo a conocerlo mantuvo puesta por los burros Asiacute fue desde haciacutea mucho tiempo porque el mundo se asomaba al caramelo vulgar que un paacutenico cuando llegoacute la judiacutea

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

20

Cadenas de Markov de Orden N Entrenamiento con palabras completas (N=4)

Texto generado

Consideraba como una burla de su travieso destino haber buscado el mar sin encontrarlo al precio de sacrificios y penalidades sin cuento y haberlo encontrado entonces sin buscarlo atravesado en su camino como un obstaacuteculo insalvable Uacutersula no volvioacute a acordarse de la intensidad de esa mirada hasta un diacutea en que el pequentildeo Aureliano a la edad de tres antildeos entroacute a la cocina en el momento en que ella retiraba del fogoacuten y poniacutea en la mesa una olla de caldo hirviendo Aquel olor mordiente quedariacutea para siempre en su memoria vinculado al recuerdo de Melquiacuteades

Dr Marcelo G Armentano - ISISTAN - UNICEN

Modelos de Markov Conjunto de estados

El proceso se mueve de un estado a otro generando unasecuencia de estados

Propiedad de Markov la probabilidad de cada estadosiguiente depende soacutelo del estado previo

bull Para definir un modelo de Markov deben especificarselas siguientes probabilidades

21 Nsss K

KK 21 ikii sss

)|()|( 1121 minusminus = ikikikiiik ssPssssP K

)|( jiij ssPa =)( ii sP=π

Probabilidad del estado inicial Probabilidad de transicioacuten de estados

Dr Marcelo G Armentano - ISISTAN - UNICEN

Lluvioso Seco

0703

02 08

Ejemplo de modelo de Markov

Dos posibles estados lsquoLluviosorsquo ylsquoSecorsquo Probabilidades de Transicioacuten

P(lsquoLluviosorsquo|lsquoLluviosorsquo)=03 P(lsquoSecorsquo|lsquoLluviosorsquo)=07

P(lsquoLluviosorsquo|lsquoSecorsquo)=02 P(lsquoSecorsquo|lsquoSecorsquo)=08

Probabilidades iniciales

P(lsquoLluviosorsquo)=04 P(lsquoSecorsquo)=06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Probabilidad de una secuencia Por la probabilidad de Markov

P(lsquoSecorsquorsquoSecorsquorsquoLluviosorsquorsquoLluviosorsquo ) =P(lsquoLluviosorsquo|rsquoLluviosorsquo) P(lsquoLluviosorsquo|rsquoSecorsquo)

P(lsquoSecorsquo|rsquoSecorsquo) P(lsquoSecorsquo) = 03020806 = 00288

)()|()( 12112121 minusminus= ikiiikiiikikii sssPssssPsssP KKK

)()|()|()|(

)()|(

112211

1211

iiiikikikik

ikiiikik

sPssPssPssP

sssPssP

K

KK

minusminusminus

minusminus

=

==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Underflow El producto de muchas probabilidades entre 0 y 1

puede resultar en underflow

Dado que log(xy) = log(x) + log(y) es mejor realizar la suma del logaritmo de las probabilidades que multiplicarlas

El modelo con el mayor puntaje final de probabilidad logariacutetmica sigue siendo la maacutes probable

Dr Marcelo G Armentano - ISISTAN - UNICEN

Hipoacutetesis del maacuteximo a posteriori

)|(maxarg DhPhHh

MAPisin

equiv

)(

)()|(maxarg

DP

hPhDP

Hhisin

=

)()|(maxarg hPhDPHhisin

=

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

21

Modelos Ocultos de Markov (HMM)

Conjunto de estados El proceso de mueve de un estado a otro generando una secuencia de

estados

Propiedad de Markov La probabilidad de cada estado depende solo del estado actual

Los estados no son visibles pero cada estado genera aleatoriamente unade las posibles observaciones (estados visibles)

Para definir un modelo oculto de Markov se deben especificar las siguientes probabilidades Matriz de probabilidades transicioacuten A=(aij) aij= P(si | sj) Matriz de probabilidades de observacioacuten B=(bi (vm )) bi(vm )= P(vm | si) Vector de probabilidades iniciales π=(πi) πi = P(si)

Los modelos quedan definidos por la tripla M=(A B π)

21 Nsss K

KK 21 ikii sss

)|()|( 1121 minusminus = ikikikiiik ssPssssP K

21 Mvvv K

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

Baja Alta

0703

02 08

Lluvioso Seco

06 0604 04

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

bull Dos estados correspondientes a la presioacuten atmosfeacutericabull lsquoAltarsquo y lsquoBajarsquo

bull Dos posibles observaciones bull lsquoLluviosorsquo y lsquoSecorsquo

bull Probabilidades de Transicioacuten

bull P(lsquoBajarsquo|lsquoBajarsquo)=03 P(lsquoAltarsquo|lsquoBajarsquo)=07 P(lsquoBajarsquo|lsquoAltarsquo)=02

P(lsquoAltarsquo|lsquoAltarsquo)=08bull Probabilidades de Observacioacuten

bull P(lsquoLluviosorsquo|lsquoBajarsquo)=06 P(lsquoSecorsquo|lsquoBajarsquo)=04

P(lsquoLluviosorsquo|lsquoAltarsquo)=04 P(lsquoSecorsquo|lsquoAltarsquo)=03 bull Probabilidades iniciales

bull P(lsquoBajarsquo)=04 P(lsquoAltarsquo)=06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM Prediccioacuten del tiempo de acuerdo al estado de un alga

empapado huacutemedo casi seco seco

nubes lluviasol

Oculto

Observable

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

Empapado Huacutemedo Casi seco Seco

Sol 060 020 015 005

Nubes 025 025 025 025

Lluvia 005 010 035 050

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

22

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

i P(qt+1=S1|qt=Si)

P(qt+1=S2|qt=Si)

P(qt+1=Sj|qt=Si)

P(qt+1=SN

|qt=Si)

1 a11 a12 hellip a1j hellip a1N

2 a21 a22 hellip a2j hellip a2N

3 a31 a32 hellip a3j hellip a3N

hellip

i ai1 ai2 hellip aij hellip aiN

hellip

N aN1 aN2 hellip aNj hellip aNN

Todas estas tablas son

iguales

aij = P (qt+1=sj|qt=si)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

i P(Ot=1|qt=Si) P(Ot=2|qt=Si) P(Ot=j|qt=Si) P(Ot=N|qt=Si)

1 b1(1) b1(2) hellip b1(j) hellip b1(N)2 b2(1) b2(2) hellip b2(j) hellip b2(N)3 b3(1) b3(2) hellip b3(j) hellip b3(N)hellip

i Bi(1) bi(2) hellip bi(j) hellip bi(N)hellip

N bN(1) bN(2) hellip bN(j) hellip bN(N)

bi(j) = P (Ot=j|qt=si)

Todas estas tablas son

iguales

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

un enrejado

s1

s2

si

sN

s1

s2

si

sN

s1

s2

sj

sN

s1

s2

si

sN

a1j

a2j

aij

aNj

1 k k+1 K

o1 ok ok+1 oKObservaciones

Tiempo

Ejemplo Casino tramposo

Un casino tiene dos dados Dado ldquojustordquo

P(1) = P(2) = P(3) = P(5) = P(6) = 16 Dado cargado

P(1) = P(2) = P(3) = P(4) = P(5) = 110P(6) = 12

El casino alterna entre el dado justo y el cargado una vezcada 20 turnos

Problemas a resolver con HMM Evaluacioacuten

Dado un HMM M=(A B π) y una secuencia de observaciones O=o1 o2 oK calcular la probabilidad de que el modelo M haya generado la secuencia O

Dr Marcelo G Armentano - ISISTAN - UNICEN

EvaluacioacutenDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestCuan probable es esta secuencia dado nuestromodelo de como opera el casino

Este es el problema de EVALUACIOacuteN en HMMs

03112011

23

Problemas a resolver con HMM Decodificacioacuten o inferencia

Dado un HMM M=(A B π) y una secuencia de observaciones O=o1 o2 oK calcular la secuencia de estados ocultos Si que maacutes probablemente produjo la secuencia de observaciones O

Dr Marcelo G Armentano - ISISTAN - UNICEN

DecodificacioacutenDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestQue partes de la secuencia fueron generadas por el dado cargado y cuales por el dado justo

Este es el problema de DECODIFICACIOacuteN en HMMs

Problemas a resolver con HMM Aprendizaje

Dado un conjunto de secuencias de observaciones de entrenamiento O=o1 o2 oK y la estructura general de HMM (cantidad de estados ocultos y cantidad de estados visibles) determinar los paraacutemetros del HMM M=(A B π) que mejor se ajustan a los datos de entrenamiento

Dr Marcelo G Armentano - ISISTAN - UNICEN

AprendizajeDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestCoacutemo estaacute cargado el dado cargado iquestCada cuantocambia el casino entre el dado cargado y el justo

Este es el problema de APRENDIZAJE en HMMs

El HMM del casino tramposo

JUSTO CARGADO

005

005

095095

P(1|Justo) = 16P(2|Justo) = 16P(3|Justo) = 16P(4|Justo) = 16P(5|Justo) = 16P(6|Justo) = 16

P(1|Cargado) = 110P(2|Cargado) = 110P(3|Cargado) = 110P(4|Cargado) = 110P(5|Cargado) = 110P(6|Cargado) = 12

Ejemplo reconocimiento de

palabras Se asume que los caracteres estaacuten separados

El reconocedorde caracteres da como salida la probabilidad de que una imagen corresponda a un caracterparticular P(caracter|imagen)

05

003

0005

031z

c

b

a

Estado Oculto

Estado Observable

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

24

Ejemplo reconocimiento de

palabras Estados Ocultos del HMM caracteres

Estados Observables imagenes de caracteres

Probabilidades de Observacioacutenαv

( ) ( ))|()( ii svPvbB αα ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo reconocimiento de

palabras Si se conoce el diccionario es posible construir un modelo

individual para cada palabra

bull Problema de evaluacioacuten reconocer la palabra en unaimagen es equivalente a evaluar un conjunto de modelos

amigos a m i g o s

buacutefalo b uacute f a l o

05 003 04 06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo reconocimiento de

palabras Podemos construir un HMM para todas las palabras

Estados ocultos los caracteres de las palabras

Probabilidades de transicioacuten calculadas a partir de modelos del lenguaje

Observaciones y probabilidades de observacioacuten iguales al ejemplo anterior

Problema de decodificacioacuten encontrar la secuencia de estados ocultos que maacutes probablemente generaron la imagen

a m

i g

o

s

t

b v

f

u

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

Forward-Backward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward

Seco Huacutemedo EmpapadoObs

Sol

Nubes

Lluvia

Sol

Nubes

Lluvia

Sol

Nubes

Lluvia

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward Pr(Seco Huacutemedo Empapado|M) =

Pr(seco huacutemedo empapado|sol sol sol) +

Pr(seco huacutemedo empapado|sol nubes sol) +

hellip

Pr(seco huacutemedo empapado|lluvia lluvia lluvia)

iexcliexclMuy Costoso

33 = 27 caacutelculos

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

25

Algoritmo Forward Reduccioacuten de la complejidad

Probabilidad parcial de alcanzar un estado intermedio en el entramado

Yk1 Yk2 hellip YkT

Sol

Nubes

Lluvia

Nubes

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward αt(j)= Pr(obs|estado oculto es j)

Pr( todos los caminos al estado j en el tiempo t)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward En el tiempo t=1

En el tiempo t gt1

α1(j)=π(j) Pr(obs|estado j)

αt(j)=Pr(todos los caminos a j) Pr(obs|estado j)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward

Terminacioacuten

Dr Marcelo G Armentano - ISISTAN - UNICEN

sum=

=n

j

T jMObs1

)()|Pr( α

sum=

++ =n

i

ijttjt ajobj1

11 )()()( αα

Algoritmo Forward

Sol

α1(sol)=π(sol) bsol(humedo)

Nubes

α1(nubes)=π(nubes) bnubes(humedo)

Lluvia

α1(lluvia)=π(lluvia) blluvia(humedo)

)()(secb )(nubesi1nubes2 sum sdotsdot=

iaionubes αα

Nubes

asolnubes

anubesnubes

alluvianubes

Huacutemedo Seco

Algoritmo Backward

Se define la variable β

)|()( 21 λβ iqoooPi tTttt == ++

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

26

Algoritmo Backward

Inicializacioacuten

Caacutelculo

Finalizacioacuten

1)( =jTβ

1 1

1

( ) ( ) ( )N

t t ij j t

j

i j a b oβ β + +=

=sum

sum=

=N

i

i iobiOp1

11 )()()()|( βπλ 11minus= Tt

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

Forward- Backward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Encontrar la secuencia maacutes probable de estados

ocultos dada una secuencia de observaciones

Ejemplo etiquetar palabras en una oracioacuten con su funcioacuten sintaacutectica

iquestEstados observables iquestEstados ocultos

Juan come naranjasNS NP OD

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Probabilidad parcial δ de alcanzar un estado

intermedio particular en el entramado

δ representa la probabilidad del camino maacutes probable a un estado

Para cada estado final hay un camino maacutes probable a ese estado

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi δ(it) es la maacutexima probabilidad de todas las

secuencias que terminan en el estado i en el tiempo t

En t=T tenemos las mejores probabilidades parciales y los mejores caminos parciales

El mejor camino global a T es el que lleva al estado con la mayor probabilidad

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En t=1

)()()1( 1obii isdot= πδ

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

27

Algoritmo de Viterbi En tgt1

A

B

C

Xhellip

Tltt-1 t-1 t

Pr(x en T=t) = maxi=ABC Pr(i en T=t-1) Pr(X|i) Pr(Ot|X)

)())1((max)( tiijj

obajtit sdotsdotminus= δδDr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En cada tiempo t recordamos el estado j que generoacute

δ(ti)

Se reconstruye el camino utilizando los punteros φhasta el tiempo t=1

ijj

ajtit )1(max)( sdotminus= δφ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi

)(max1

iP TNi

δlele

=lowast

)(maxarg1

iq TNi

T δlele

lowast =

P da la probabilidad de los mejores los estados

qT is la secuencia de estados oacuteptima(Q = q1q2hellipqT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

ForwardBackward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Dada un conjunto de secuencias de observaciones O=o1 o2

oK y la estructura general del HMM (cantidadde estados ocultos

y visibles) determinar los paraacutemetros del modelo M=(A B π) que mejor se ajustan a los datos de entrenamiento es decir

que maximice P(O | M)

Se utiliza el algoritmo de maximizacioacuten de la esperanza para

encontrar un maacuteximo local de P(O | M) algoritmo Baum-Welch

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Si los datos de entrenamiento tienen informacioacuten

acerca de la secuencia de estados ocultos los paraacutemetros se estiman como

xsestransicion

ssestransicionssPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

sveces

senodenesobservaciosoPob

)|()( ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

28

Algorimo Baum-Welch Idea general

xsestransiciondeesperado

ssestransiciondeesperadossPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

svecesdeesperado

senodenesobservaciodeesperadosoPob

)|()( ==

1)( === tparasenvecesdeesperadosP iiiπ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

ξt(ij)= P(qt= si qt+1= sj |o1 o2 oT)

ξt(ij)=P(qt= si qt+1= sj o1 o2 oT)

P(o1 o2 oT)=

P(qt= si o1 o2 ot) aij bj (ot+1 ) P(ot+2 oT | qt+1= sj ) P(o1 o2 oT)

=

=αt(i) aij bj (ot+1 ) βt+1(j)

ΣiΣj αt(i) aij bj (ot+1 ) βt+1(j)

αt(i) aij bj (ot+1 ) βt+1(j)

Σi αt(i) βt(i)Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

tiempo

Estados ocultos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch Definimos γt(i) como la probabilidad de estar en el

estado i en el tiempo t dadas las observaciones

Σt γt(i) - cantidad esperada de veces que visitoel estado i

Σt ξt(ij) - cantidad esperada de transiciones

sum=

=N

j

tt jii1

)()( ξγ

ji rarr

γt(i)= P(qt= si |o1 o2 oT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

sumsum

=)(

)(ˆ

i

jia

t

t

ijγ

ξ

sum

sum ==

)(

)()(ˆ

j

job

t

oot t

kjkt

γ

γ

)(ˆ1 iγπ = la frecuencia esperada del estado i en t=1

nuacutemero esperado de transiciones desde el estado i al estado j sobre la cantidad esperada de transiciones desde el estado i

cantidad de veces que se estuvo en el estado j observando el siacutembolo k sobre la cantidad de veces que se estuvo en el estado j

Dr Marcelo G Armentano - ISISTAN - UNICEN

Bibliografiacutea Bayesian Networks and Decision Graphs - Finn V

Jensen and Thomas D Nielsen - Springer Verlag -Second Edition - 2007

A tutorial on hidden Markov models and selected applications in speech recognition - Lawrence R Rabiner - Proceedings of the IEEE Vol 77 Nordm2 pp 257-286 - 1989

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

29

iquestConsultas

Dr Marcelo G Armentano - ISISTAN - UNICEN

Page 3: redes bayesianas UNICEN.pdf

03112011

3

Ejemplo Apple Jack Un diacutea Apple Jack descubre que su mejor aacuterbol de

manzanas estaacute perdiendo sus hojas Entonces quiere saber queacute estaacute pasando Eacutel sabe que si el aacuterbol estaacute seco es muy comuacuten que pierda sus hojas Por el otro lado perder las hojas puede ser un indicio de que el aacuterbol esteacute enfermo

Dr Marcelo G Armentano - ISISTAN - UNICEN

iquestvariables

iquestestados

iquestrelaciones

Ejemplo Apple Jack

Enfermo=si Enfermo=no

01 09

Seco=si Seco=no

01 09

p(Pierde Seco Enfermo)

Seco=si

Enfermo=si

Seco=si

Enfermo=no

Seco=no

Enfermo=si

Seco=no

Enfermo=no

Pierde=si 095 085 090 002

Pierde=no 005 015 010 098

P(seco)

P(enfermo)

Enfermo Seco

Pierde HojasPierde Hojas

Dependencias Causales Cuando existe una dependencia causal de un nodo A

a un nodo B se espera que cuando A estaacute en un cierto estado esto tiene un impacto en el estado de B

En el ejemplo existe un viacutenculo causal de ldquoEnfermordquo a ldquoPierde hojasrdquo porque cuando un aacuterbol estaacute enfermo puede causar que pierda las hojas

Dr Marcelo G Armentano - ISISTAN - UNICEN

Enfermo Seco

Pierde HojasPierde Hojas

Independencia condicional Dos conjuntos de variables A y B son

(condicionalmente) independientes de un tercer conjunto C si cuando los valores de C son conocidos el conocimiento acerca de B no provee maacutes informacioacuten sobre los valores de A

p(ABC) = p(AC)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo 2 Asia

p(BronchitisVisit AsiaSmoker) = p(BronchitisSmoker)Dr Marcelo G Armentano - ISISTAN - UNICEN

Distribucioacuten de probabilidad

conjunta

Dado un conjunto de variables V1V2Vk cuyos valores se denotan v1v2vk una expresioacuten de la forma

p(V1V2Vk) se denomina funcioacuten de probabilidad conjunta sobre las variables V1V2Vk

Dr Marcelo G Armentano - ISISTAN - UNICEN

Admin
Admin
Admin
Admin
Admin
Admin
Admin

03112011

4

Ejemplo 3 Robot Un robot es capaz de levantar una bandeja si la

bandeja es liviana y si las bateriacuteas de la fuente de energiacutea del robot estaacuten cargadas Si estas condiciones se satisfacen entonces cuando el robot trata de levantar la bandeja mueve sus brazos Se determina si la bateriacutea estaacute cargada mediante un medidor

Dr Marcelo G Armentano - ISISTAN - UNICEN

iquestvariables

iquestestados

iquestrelaciones

Ejemplo 3 Robot

G M

L

P(B) = 095 P(L) = 07

P(GB) = 095

P(GnotB) = 01

P(MBL) = 09

P(MBnotL) = 005

P(MnotBL) = 00

P(MnotBnotL) = 00

B

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo 3 Robot P(BMLG)

4 variables binarias binarias 16 probabilidades

(BMLG) Prob Conj

(VVVV) 05686

(VVVF) 00299

(VVFV) 00135

(VVFF) 00007

hellip hellip

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo 3 Robot

P(ABDLSXT)

7 variables binarias 128 Probs Conjuntas

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problema de la probabilidad

conjunta Se necesitan en el orden de 2k valores para definir la

funcioacuten de probabilidad conjunta

Solucioacuten Las relaciones de independencia condicional entre las

variables contribuyen a la disminucioacuten de la complejidad del problema

Dr Marcelo G Armentano - ISISTAN - UNICEN

Redes de Bayes Representacioacuten compacta de distribuciones de

probabilidades via independencia condicional

Parte cualitativa Grafo dirigido aciacuteclico (gda)

Nodos - variables aleatorias

Arcos ndash influencia directa

Parte cuantitativa Conjunto de

distribuciones de probabilidades condicionales

09 01

e

b

e

02 08

001 099

09 01

be

b

b

e

BE P(A | EB)E

R

B

A

C

Juntos definen una uacutenica distribucioacuten conjunta de manera factorizada

)|()|()|()()()( ACPERPEBAPEPBPRCAEBP =

Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin

03112011

5

Semaacutentica de las Redes de Bayes

Representacioacuten natural y compacta

Independenciascondicionales en

la estructura de

la red

+Modelos de

probabilidadeslocales

Distribucioacuten deprobabilidad

conjunta sobreun dominio

=

)|()|()|()|()()()( eldPlxPcsePslPcPsPdxelcsP =

S

L

C

E

DX

Dr Marcelo G Armentano - ISISTAN - UNICEN

Agenda Definicioacuten

Ejemplos

Conceptos de Probabilidades

Utilizacioacuten

Inferencia Probabiliacutestica

Construccioacuten

Aprendizaje

Dr Marcelo G Armentano - ISISTAN - UNICEN

Utilizacioacuten de Redes de Bayes Obtener los valores de probabilidades de ciertas

variables de intereacutes a partir de la informacioacuten (evidencia) del estado de otras variables

Ej Sabemos que el aacuterbol estaacute perdiendo sus hojas iquestCuaacutel es la probabilidad de que el aacuterbol esteacute enfermo

iquestCuaacutel es la probabilidad de que el aacuterbol esteacute seco

InferenciaInferenciaDr Marcelo G Armentano - ISISTAN - UNICEN

Enfermo Seco

Pierde Pierde Hojas

Inferencia probabiliacutestica

Consiste en calcular probabilidades de intereacutes a partir de una distribucioacuten de probabilidades conjunta

La estructura de la red de Bayes permite calcular cualquier probabilidad de intereacutes donde la independencia condicional simplifica el caacutelculo

Dr Marcelo G Armentano - ISISTAN - UNICEN

Inferencia en Redes de Bayes La inferencia consiste en el caacutelculo de los resultados a

una consulta (distribucioacuten de probabilidades) con respecto a una red dada y a la presencia de cierta evidencia

RedRed

E

EvidenciaEvidencia

ConsultaConsulta

P(AE)

a0 a1P(AE)P(AE)

Inferencia

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de inferencia

Evidencia el aacuterbol pierde las hojas

Consulta iquestEstaacute enfermo el aacuterbol

Dr Marcelo G Armentano - ISISTAN - UNICEN

Enfermo Seco

Pierde HojasPierde Hojas

Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin

03112011

6

Ejemplo de inferencia Consulta iquestEstaacute enfermo el aacuterbol

Evidencia el aacuterbol pierde las hojas

Dr Marcelo G Armentano - ISISTAN - UNICEN

Enfermo Seco

Pierde HojasPierde Hojas

Enfermo Seco

Pierde Hojas

Enfermo Seco

Pierde Hojas

Teorema de Bayes El teorema de Bayes nos dice como obtener una

probabilidad a posteriori en una hipoacutetesis Vi luego de la observacioacuten de alguna evidencia Vj dadas la probabilidad a priori de Vi y la probabilidad de observar Vj dado Vi

)(

)()()(

Vjp

VipViVjpVjVip =

Vi Vj

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo del Teorema de Bayes Si una persona ve que un brazo del robot se estaacute

moviendo se quiere obtener la probabilidad de que esto haya ocurrido cuando la bateriacutea estaacute descargada Evidencia p(M = V)

Probabilidad a priori p(B = F)

Probabilidad condicional p(M = V B = F)

P(B = F M = V) = p( M = V B = F) p(B = F) p(M = V)

G M

LB

Dr Marcelo G Armentano - ISISTAN - UNICEN

Inferencia en Redes de Bayes

Inferencia causal o top-down

Inferencia de diagnoacutestico o bottom-up

Dr Marcelo G Armentano - ISISTAN - UNICEN

Inferencia causal Probabilidad de que el brazo se mueva dado que la

bandeja es liviana

p(ML) = p(MBL) + p(M notBL) (expansioacuten)= p(MBL) P(BL)+ p(M notBL) P(notBL)= p(MBL) P(B)+ p(M notBL) P(notB)

G M

LBP(ML)

EvidenciaConsulta

Dr Marcelo G Armentano - ISISTAN - UNICEN

Inferencia de diagnoacutestico Probabilidad de que la bandeja esteacute pesada dado que el

brazo no se mueve

p(notLnotM) = p(notMnotL) p(notL) p(notM) Bayes

Se resuelve p(notMnotL) usando razonamiento causal

G M

LBP(notLnotM)

EfectoCausa

Dr Marcelo G Armentano - ISISTAN - UNICEN

Admin
Admin
Admin
Admin
Admin
Admin
Admin

03112011

7

Inferencia exacta A pesar de poder explotar las propiedades de la red la

inferencia probabiliacutestica exacta en una red de Bayesarbitraria es NP-hard

Para muchas aplicaciones donde las redes son pequentildeas o pueden simplificarse la complejidad puede no ser fatal

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmos de Inferencia Existen numerosos algoritmos de inferencia

implementados

Centrados en operaciones algebraicas Variable Elimination [Zhang96] Bucket Elimination [Dechter99] SPI [DrsquoAmbrosio94]

Centrados en propiedades graacuteficas Junction trees [Jensen96]

Dr Marcelo G Armentano - ISISTAN - UNICEN

Agenda Definicioacuten

Ejemplos

Conceptos de Probabilidades

Utilizacioacuten

Inferencia Probabiliacutestica

Construccioacuten

Aprendizaje

Dr Marcelo G Armentano - ISISTAN - UNICEN

Construccioacuten de la red Ingenieriacutea del Conocimiento

Un experto en el dominio identifica los aspectos cualitativos (y a veces cuantitativos) del problema

Codificar el conocimiento existente de expertos en una red

Usar una base de datos para actualizar este conocimiento refinar el conocimiento experto original e identificar nuevas

relaciones

Dr Marcelo G Armentano - ISISTAN - UNICEN

Construccioacuten de la red Determinar las variables que intervienen en el

modelo

Determinar cada uno de los estados o valores que pueden tomar las variables

Determinar las relaciones (dependencias) entre las variables

Construir un GDA que codifique las aserciones de independencia condicional

Dr Marcelo G Armentano - ISISTAN - UNICEN

Construccioacuten de la red Coacutemo obtener los valores de las probabilidades

Conocimiento de expertos en el dominio

Estudios estadiacutesticos

Derivados analiacuteticamente

Aprenderlos a partir de los datos crudos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin

03112011

8

Construccioacuten de la red Coacutemo obtener la estructura de la red

A partir del conocimiento de un experto

Algoritmos de aprendizaje en Redes de Bayes Datos completos o incompletos

Estructura conocida o desconocida

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje de Redes de Bayes

E

R

B

A

C

9 1

e

b

e

7 3

99 01

8 2

be

b

b

e

BE P(A | EB)

Datos

+Informacioacuten

Previa

Aprendizaje

Dr Marcelo G Armentano - ISISTAN - UNICEN

Estructura conocida datos completos

E B

A9 1

e

b

e

7 3

99 01

8 2

be

b

b

e

BE P(A | EB)

e

b

e

be

b

b

e

BE P(A | EB) E B

A

bull La estructura de la red estaacute especificada

bull Se necesitan estimar los paraacutemetros (probabilidades)

bull Los datos no contienen valores faltantes

Aprendizaje

E B A

ltYNNgt

ltYNYgt

ltNNYgt

ltNYYgt

ltNYYgt

Dr Marcelo G Armentano - ISISTAN - UNICEN

E B

A9 1

e

b

e

7 3

99 01

8 2

be

b

b

e

BE P(A | EB)

e

b

e

be

b

b

e

BE P(A | EB) E B

A

bull La estructura de la red no estaacute especificada

ndash Se necesitan seleccionar los arcos y estimar los paraacutemetros

bull Los datos no contienen valores faltantes

E B A

ltYNNgt

ltYNYgt

ltNNYgt

ltNYYgt

ltNYYgtAprendizaje

Estructura desconocida datos completos

Dr Marcelo G Armentano - ISISTAN - UNICEN

E B

A9 1

e

b

e

7 3

99 01

8 2

be

b

b

e

BE P(A | EB)

e

b

e

be

b

b

e

BE P(A | EB) E B

A

bull La estructura de la red estaacute especificada

bull Los datos contienen valores faltantes

ndash Se necesitan considerar asignaciones a los valores faltantes

E B A

ltYNNgt

ltYYgt

ltNNYgt

ltNYgt

ltYYgtAprendizaje

Estructura conocida datos incompletos

E B

A9 1

e

b

e

7 3

99 01

8 2

be

b

b

e

BE P(A | EB)

e

b

e

be

b

b

e

BE P(A | EB)E B

A

bull La estructura de la red no estaacute especificada

bull Se necesitan seleccionar los arcos y estimar los paraacutemetros

bull Los datos contienen valores faltantes

ndash Se necesitan considerar asignaciones a los valores faltantes

E B A

ltYNNgt

ltYYgt

ltNNYgt

ltNYgt

ltYYgt

Aprendizaje

Estructura desconocida datos incompletos

Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin

03112011

9

Aprendizaje de Redes de Bayes Aprendizaje parameacutetrico

Aprender los paraacutemetros que describen el grado de dependencia entre las variables del dominio

Aprendizaje estructural Aprender las dependencias entre las variables que

intervienen en el problema

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje parameacutetrico Aprendizaje Adaptativo

Se utiliza cuando se quieren adaptar todas o algunas de las tablas de probabilidad condicional a partir de un nuevo conjunto de datos

Aprendizaje Batch Se utiliza cuando se quieren generar las tablas de

probabilidad condicional a partir de los datos Ej EM (Expectation Maximization)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje adaptativo La adaptacioacuten es el proceso de refinar las

probabilidades condicionales especificadas en la Red de Bayes teniendo en cuenta los resultados de experimentos o casos reales

Se utilizan tablas de experiencia yo tablas de desvanecimiento

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje adaptativo Un paso del proceso de aprendizaje adaptativo consiste

de ingresar evidencia

propagar la evidencia

actualizar (adaptar) las tablas de probabilidad condicional y las tablas de experiencia

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje adaptativo con tablas

de experiencia

Yes No

Cantidad de experiencias

10 5

P(Smoker=yes) = yes) (yes + no) = 10 15 = 0667

P(Smoker=no) = no) (yes + no) = 5 15 = 0333Dr Marcelo G Armentano - ISISTAN - UNICEN

Fractional Updating Utiliza tablas de experiencia

Suposiciones Independencia Global

Independencia Local

Sean p(A|bicj)=(x1x2)

(n1n2) las experiencias de A

s = n1 + n2 cantidad total de experiencias

A

B C

)()|( 21

s

n

s

ncbAp ji =

Dr Marcelo G Armentano - ISISTAN - UNICEN

Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin

03112011

10

Fractional Updating Caso 1

Tenemos una nueva experiencia e con B=bi

C=cj

A=a1

Luego n1=n1+1

s=s+1 )

1

1

1()|( 21

++

+=

s

n

s

ncbAp ji

Dr Marcelo G Armentano - ISISTAN - UNICEN

A

B C

Fractional Updating Caso 2

Tenemos una nueva experiencia e con B=bi

C=cj

de A soacutelo sabemos

Luego nk=nk+yk

s=s+1

A

B C

1+

+=

s

ynx kk

k

)()|()|( 21 yyecbApeAp ji ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Fractional Updating Caso general

Tenemos una nueva experiencia e con

Luego nk=nk+zyk

s=s+z

A

B C

Dr Marcelo G Armentano - ISISTAN - UNICEN

zecbp ji =)|(

)()|( 21 yyecbApji

=

zs

zynx kk

k+

+=

Fractional Updating Ejemplo

B

true false

true 06 03

false 04 07

Experiences 10 10

A

B

S=20

n1 n2

Como P(A=true|B=true) = 06 Tenemos

bullN(A=true|B=true) = 06 10 = 6bullN(A=true|B=false)= 03 10 = 3

El total de las cuentas para la variable AbullN(true) = 6 + 3 = 9 bullN(false) = 4 + 7 = 11 Dr Marcelo G Armentano - ISISTAN - UNICEN

Fractional Updating

Dr Marcelo G Armentano - ISISTAN - UNICEN

B

true false

true 063 03

false 037 07

Experiences 11 10

A

B

Despueacutes de una experiencia conbull A=truebull B=true

Obtenemos

06311

10106)|( =

+=== trueBtrueAp

03711

10004)|( =

+=== trueBfalseAp

0310

00013)|( =

+=== falseBtrueAp

0710

00007)|( =

+=== falseBfalseAp

zs

zynx kk

k+

+=

zebp i =)|(

)()|( 21 yyebAp i =Fractional Updating

Dr Marcelo G Armentano - ISISTAN - UNICEN

B

true false

true 0625 032

false 0375 068

Experiences 1067 1033

A

B

Si solo tenemos evidencia de A=true

Obtenemos

06256710

067106)|( =

+=== trueBtrueAp

03756710

067004)|( =

+=== trueBfalseAp

0323310

033013)|( =

+=== falseBtrueAp

0683310

033007)|( =

+=== falseBfalseAp

p(B=true|e) zs

zynx kk

k+

+=

zebp i =)|(

)()|( 21 yyebAp i =

03112011

11

Aprendizaje adaptativo con tablas

de desvanecimiento A veces las observaciones viejas no son tan importantes

como las nuevas en el proceso de adaptacioacuten Entonces tenemos que ldquodesaprenderrdquo u ldquoolvidarrdquo algunas de ellas

Las observaciones nuevas son maacutes importantes que las viejas y por lo tanto se les debe dar maacutes peso durante la adaptacioacuten

Se introduce un factor de desvanecimiento que indica la tasa con la cual se olvidan las observaciones previas 0 no hay adaptacioacuten 1 no hay desvanecimiento

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje adaptativo con tablas

de desvanecimiento

Yes No

Cantidad de experiencias

10 5

P(Smoker=yes) = yes) (yes + no) = 10 15 = 0667

P(Smoker=no) = no) (yes + no) = 5 15 = 0333Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje adaptativo con tablas

de desvanecimiento Smoker=yes Fading factor(s) = 05

(Smoker=yes) = factor (yes-previos) + 1= 05 10 + 1 = 6

(Smoker=no) = factor (no-previos) = 05 5 = 25

(experiencias) = 6 + 25 = 85

P(Smoker=yes) = 6 85 = 07059 P(Somker=no) = 25 85 = 02941

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje estructural

Earthquake Alarm Set

Sound

Burglary Earthquake Alarm Set

Sound

Burglary

Earthquake Alarm Set

Sound

Burglary

Si sobra un arcoSi falta un arco

bull Aumenta el nuacutemero de paraacutemetros a ser estimados

bull Suposiciones erroacuteneas acerca del dominio

bull No puede ser solucionado ajustando los paraacutemetros

bull Suposiciones erroacuteneas acerca del dominio

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje estructural Search and Score

Meacutetrica de puntuacioacuten (Score) Mide la calidad de la estructura graacutefica Se utiliza para decidir cual es la mejor solucioacuten

Algoritmo de buacutesqueda Selecciona un pequentildeo subconjunto de las posibles

redes que tengan una calidad alta Se selecciona la ldquomejorrdquo

Dr Marcelo G Armentano - ISISTAN - UNICEN

Basado en optimizaciones

E B A

ltYNNgt

ltYYYgt

ltNNYgt

ltNYYgt

ltNYYgtE B

A

E

B

A

E

BA

Buscar una estructura que maximice esa funcioacuten

Definir una funcioacuten que evaluacutee queacute tan bien se asemeja el modelo a los datos

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

12

Aprendizaje estructural Tests de independencia

Obtienen las dependencias condicionales y lasindependencias utilizando tests de independenciasentre triplas de variables

Por ejemplo tests estadiacutesticos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo K2 Score and Search Buacutesqueda Greedy Muy eficiente Asume que las variables estaacuten ordenadas Comienza con una red sin arcos En cada iteracioacuten para cada variable Xi el nodo cuyo orden

es previo a Xi y que incrementa la calidad de la red se agrega a =Pa(Xi)

Se repite el proceso hasta que No hay incremento en la calidad de la red Se llega a una red completa

La cantidad de padres puede limitarse

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo B Score and Search

No requiere un ordenamiento previo de las variables

Controlar ciclos

Comienza con un conjunto vaciacuteo de padres

En cada iteracioacuten agrega un arco tal que

No produce ciclos

Maximiza la calidad de la red

El proceso se detiene cuando

No se incrementa la calidad de la red 0 Se llega a una red completa

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PC Tests de Independencia

Dos fases Construccioacuten del esqueleto

Encontrar las direcciones de los arcos mediante tests de independencia

Orientar el resto de los arcos sin producir ciclos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PC Construccioacuten del esqueleto

Comienza con un grafo no dirigido totalmente conectado

Mediante tests de independencia va eliminando arcos que no cumplen la siguiente condicioacuten Dos nodos X e Y estaacuten conectados si y soacutelo si no existe un

subconjunto Sxy del conjunto de veacutertices V tal que I(XY|Sxy) sea verdadero

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PCComienza con un grafo completo no dirigido gpi = 0Repeat

For each X isinisinisinisin VFor each Y isinisinisinisin ADJX

Determinar si existe Ssube ADJX ndashY con |S| = i y I(XY|S)Si este conjunto existe

SXY = SEliminar el arco X-Y

i = i+1Until |ADJX| lelelele i forallforallforallforallX

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

13

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=

i=0

SI

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

SI

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

03112011

14

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

i=1

SI

SXY=SXW=SZW=Y

03112011

15

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

No hay nodos con maacutes de 3 adyacentes

Algoritmo PC Encontrar las direcciones de los arcos mediante tests

de independencia (tomando las variables de a tres) Para cada variable Z con dos adyacentes X e Y

comprueba que no Z no esteacute en Sxy para conectar a X e Y como padres de Z

Z XY

Z XY

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

ZnotinSXY

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

ZnotinSXY

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

TnotinSZW

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

TnotinSZW

03112011

16

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

Se orienta arbitrariamente (evitando ciclos)

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

Herramientas Hugin

httpwwwhugincomProducts_ServicesProductsDemo

Bayesware httpwwwbayeswarecom

JavaBayes httpwww-2cscmuedu~javabayes

Paacutegina de Finn Jensen httpwwwcsaaudk~fvj

Dr Marcelo G Armentano - ISISTAN - UNICEN

Agenda Introduccioacuten

Redes de Bayes

Modelos de Markov Introduccioacuten

Cadenas de Markov

Modelos Ocultos de Markov

Dr Marcelo G Armentano - ISISTAN - UNICEN

Introduccioacuten Modelar dependencias entre siacutembolos de una

secuencia Temporales

En reconocimiento del habla fonemas en una palabra palabras en una oracioacuten (reconocimiento sintaacutectico)

Espaciales Reconocimiento de escritura

Secuencias de genes

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

17

Procesos aleatorios de Markov Una secuencia aleatoria tiene la propiedad de markov si su

distribucioacuten de probabilidades estaacute determinadauacutenicamente por el estado actual Un proceso aleatorio quecumple con esta propiedad se llama un proceso aleatorio de Markov

Cuando los estados son observables cadenas de Markov

Cuando los estados no son observables modelos ocultos de markov (HMM hidden Markov models)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Regla de Bayes

)()|()( 111111 qqPqqqPqqqP ttttt minusminusminus =

)()|()|()( 121211111 qqPqqqPqqqPqqqP ttttttt minusminusminusminusminus =

prod=

minusminus =t

i

iitt qqqPqPqqqP2

11111 )|()()(

Dr Marcelo G Armentano - ISISTAN - UNICEN

Propiedad de Markov

1)|()|( 111 gt= minusminus iforqqPqqqP iiii

)|()|()()|()()( 1121

2

1111 minus=

minusminus == prod tt

t

i

iitt qqPqqPqPqqPqPqqqP

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov Pueden verse como un grafo de transicioacuten de estados

con probabilidades en sus arcos

Ejemplo Generacioacuten de Texto Aleatorio Un nodo por cada letra uacutenica observada

Si luego de la letra X observo la letra Y agrego un arco de X a Y Si el arco ya existe incremento la cantidad de observaciones

asociada al arco

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTAL

03112011

18

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTALTAL

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTALTALTOTOTALTOTOTOTOTALhellip

Cadenas de Markov Texto aleatorio generado a partir de un modelo

entrenado con el primer capiacutetulo de ldquo100 antildeos de soledadrdquo de Gabriel Garciacutea Marquez

Mapl idoca Uno domen quespiate meacute s abrdiacuteaton quadelaros del y en ioacutera puacutellade y antildeosar soacute Ar e Pon s toacutentun llose fase co tus pe foaciguela tr de paquros losintun oceton deros picaras ro pigeltexpa Arrcoacuten asadosen ca hiacuteracugidend madel cos pelo ca hamuy cuncte preraletrapuina venco sosueacute gifuas y estiogidire y ple peno do dociemanoacutey den matrones s Arseacutelades lelanelo lacides Jombidorentioacute lla caqueacutetrotan de ciechitevo pa e troacute ulega teilizaban riacuteaden zopendesellaundo u ca tioroserar vorasun plara en fue dempa teresen y umusmpio y sedes s s ezordel rugexhas darmabioacute

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N Extensioacuten a las cadenas de Markov en las que cada

estados representa una secuencia de N observaciones consecutivas

N-gramas

Ocurrencias

che 60

chi 25

cha 10

cho 5

ch

ch se observa 100 veces de las cualeshellip

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N=2

ISMI

SS

SI

IP

PP

PI

10

1010

10

10o5 o5

M I S S I S S I P P I

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N=3

ISSMIS

SSI

SIS

SIP

IPP

PPI

10

10

10

10

10

o5

o5

M I S S I S S I P P I

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

19

Cadenas de Markov de orden N N=1

Modelo fiel a las frecuencias de cada par de letras

No representa bien el lenguaje natural

Dr Marcelo G Armentano - ISISTAN - UNICEN

Mapl idoca Uno domen quespiate meacute s abrdiacuteaton quadelaros del y en ioacutera puacutellade y antildeosar soacute Ar e Pon s toacutentun llose fase co tus pe foaciguela tr de paquros losintun oceton deros picaras ro pigeltexpa Arrcoacuten asadosen ca hiacuteracugidend madel cos pelo ca hamuy cuncte preraletrapuina venco sosueacute gifuas y estiogidire y ple peno do dociemanoacutey den matrones s Arseacutelades lelanelo lacides Jombidorentioacute lla caqueacutetrotan de ciechitevo pa e troacute ulega teilizaban riacuteaden zopendesellaundo u ca tioroserar vorasun plara en fue dempa teresen y umusmpio y sedes s s ezordel rugexhas darmabioacute

Cadenas de Markov de Orden N Texto aleatorio generado N=2

Muca donios y hombre llas res pla plambregrimanteoacute el la sioacute entude Salemo fue uncioacuten co crioacuten Tendiacutea en sula ta chicalque le siezblena que tras senterosagareto mdashgruel res entorasanesbazuerasabepaacuten enda con de in inagercamieropito don cuarecior siblimena tero en joacute te Fuedo paresegua pespurantespuen dos porodad de la que cabaquentra denabrencestiminotescuyoacute quel mor loseacute Acturo pen for es ella guanos mitadraratientoacuten condiacutea la allado quen se logoacute la balaritiva triblesala soacutelos habalcabiempor ere griacutea to borse allas laciasiacutemisible por pocaza los so ola la nintildeos cuaro eacutel y lar espiendismo antildeonetrouna que cad fuerofocieres resa combrempuros parsu misiblocerma anoceraya elos no a y ejoacute desta una tioacuten

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Texto aleatorio generado N=3

Muchetextremecitano conveniencia Cuando por acora pre hablancie el rudienteel pusierantado poblado pago y aumentar animaginacioacuten aza des examillos maacutes gigaciera suellevoacute los que inte la viajes rayos imales hacedor y el teacuterminuto pueses siles expedas mocha que la tanos ser en que vez lles la como la maacutes pase lo uacutenicos romera lado JoseacuteArcadiosas antes al realejo en que de dejoacute todidos tre distilado infinito desco a le se para ver bolada alquiacutedea

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Texto aleatorio generado N=4

Muchos y salambioacute un chaleco de habiacutea burla como el pasoacute la resto de aban su fue ser prendedor condo una buena de las casaquimisterios Joseacute Arcadio Buendiacutea sino esentoacute como un en aquel tambor quedoacute recuerdo de un fugitivo en que en que sierrar los metalejos a puestaban de una tersas y el mundo sino consolas y veiacutean desar a la casa cuyos sin comer Aureliano conjuro de el esperso de piedras

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N = 3-4

Comienzan a aparecer palabras maacutes reconocibles

Palabras de muchas letras aparecen frecuentemente ldquopegadasrdquo a otras palabras

Cuanto maacutes extenso es el texto de entrenamiento maacutes variedad habraacute en la salida

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Entrenamiento con palabras completas (N=1)

Texto generado

Se habiacutea que construyoacute trampas y sus iniciales encima con una insolacioacuten por mares incoacutegnitos visitar territorios maacutes emprendedor que se hundiacutean en las maravillas del mundo Era una explicacioacuten inmediata Joseacute Arcadio Buendiacutea la resonancia hueca de helechos y entonces una truculenta demostracioacuten con un aacutespero sabor de fusilamiento el interior y tambores y a prepararse para llevaacuterselos a palmo a conocerlo mantuvo puesta por los burros Asiacute fue desde haciacutea mucho tiempo porque el mundo se asomaba al caramelo vulgar que un paacutenico cuando llegoacute la judiacutea

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

20

Cadenas de Markov de Orden N Entrenamiento con palabras completas (N=4)

Texto generado

Consideraba como una burla de su travieso destino haber buscado el mar sin encontrarlo al precio de sacrificios y penalidades sin cuento y haberlo encontrado entonces sin buscarlo atravesado en su camino como un obstaacuteculo insalvable Uacutersula no volvioacute a acordarse de la intensidad de esa mirada hasta un diacutea en que el pequentildeo Aureliano a la edad de tres antildeos entroacute a la cocina en el momento en que ella retiraba del fogoacuten y poniacutea en la mesa una olla de caldo hirviendo Aquel olor mordiente quedariacutea para siempre en su memoria vinculado al recuerdo de Melquiacuteades

Dr Marcelo G Armentano - ISISTAN - UNICEN

Modelos de Markov Conjunto de estados

El proceso se mueve de un estado a otro generando unasecuencia de estados

Propiedad de Markov la probabilidad de cada estadosiguiente depende soacutelo del estado previo

bull Para definir un modelo de Markov deben especificarselas siguientes probabilidades

21 Nsss K

KK 21 ikii sss

)|()|( 1121 minusminus = ikikikiiik ssPssssP K

)|( jiij ssPa =)( ii sP=π

Probabilidad del estado inicial Probabilidad de transicioacuten de estados

Dr Marcelo G Armentano - ISISTAN - UNICEN

Lluvioso Seco

0703

02 08

Ejemplo de modelo de Markov

Dos posibles estados lsquoLluviosorsquo ylsquoSecorsquo Probabilidades de Transicioacuten

P(lsquoLluviosorsquo|lsquoLluviosorsquo)=03 P(lsquoSecorsquo|lsquoLluviosorsquo)=07

P(lsquoLluviosorsquo|lsquoSecorsquo)=02 P(lsquoSecorsquo|lsquoSecorsquo)=08

Probabilidades iniciales

P(lsquoLluviosorsquo)=04 P(lsquoSecorsquo)=06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Probabilidad de una secuencia Por la probabilidad de Markov

P(lsquoSecorsquorsquoSecorsquorsquoLluviosorsquorsquoLluviosorsquo ) =P(lsquoLluviosorsquo|rsquoLluviosorsquo) P(lsquoLluviosorsquo|rsquoSecorsquo)

P(lsquoSecorsquo|rsquoSecorsquo) P(lsquoSecorsquo) = 03020806 = 00288

)()|()( 12112121 minusminus= ikiiikiiikikii sssPssssPsssP KKK

)()|()|()|(

)()|(

112211

1211

iiiikikikik

ikiiikik

sPssPssPssP

sssPssP

K

KK

minusminusminus

minusminus

=

==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Underflow El producto de muchas probabilidades entre 0 y 1

puede resultar en underflow

Dado que log(xy) = log(x) + log(y) es mejor realizar la suma del logaritmo de las probabilidades que multiplicarlas

El modelo con el mayor puntaje final de probabilidad logariacutetmica sigue siendo la maacutes probable

Dr Marcelo G Armentano - ISISTAN - UNICEN

Hipoacutetesis del maacuteximo a posteriori

)|(maxarg DhPhHh

MAPisin

equiv

)(

)()|(maxarg

DP

hPhDP

Hhisin

=

)()|(maxarg hPhDPHhisin

=

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

21

Modelos Ocultos de Markov (HMM)

Conjunto de estados El proceso de mueve de un estado a otro generando una secuencia de

estados

Propiedad de Markov La probabilidad de cada estado depende solo del estado actual

Los estados no son visibles pero cada estado genera aleatoriamente unade las posibles observaciones (estados visibles)

Para definir un modelo oculto de Markov se deben especificar las siguientes probabilidades Matriz de probabilidades transicioacuten A=(aij) aij= P(si | sj) Matriz de probabilidades de observacioacuten B=(bi (vm )) bi(vm )= P(vm | si) Vector de probabilidades iniciales π=(πi) πi = P(si)

Los modelos quedan definidos por la tripla M=(A B π)

21 Nsss K

KK 21 ikii sss

)|()|( 1121 minusminus = ikikikiiik ssPssssP K

21 Mvvv K

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

Baja Alta

0703

02 08

Lluvioso Seco

06 0604 04

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

bull Dos estados correspondientes a la presioacuten atmosfeacutericabull lsquoAltarsquo y lsquoBajarsquo

bull Dos posibles observaciones bull lsquoLluviosorsquo y lsquoSecorsquo

bull Probabilidades de Transicioacuten

bull P(lsquoBajarsquo|lsquoBajarsquo)=03 P(lsquoAltarsquo|lsquoBajarsquo)=07 P(lsquoBajarsquo|lsquoAltarsquo)=02

P(lsquoAltarsquo|lsquoAltarsquo)=08bull Probabilidades de Observacioacuten

bull P(lsquoLluviosorsquo|lsquoBajarsquo)=06 P(lsquoSecorsquo|lsquoBajarsquo)=04

P(lsquoLluviosorsquo|lsquoAltarsquo)=04 P(lsquoSecorsquo|lsquoAltarsquo)=03 bull Probabilidades iniciales

bull P(lsquoBajarsquo)=04 P(lsquoAltarsquo)=06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM Prediccioacuten del tiempo de acuerdo al estado de un alga

empapado huacutemedo casi seco seco

nubes lluviasol

Oculto

Observable

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

Empapado Huacutemedo Casi seco Seco

Sol 060 020 015 005

Nubes 025 025 025 025

Lluvia 005 010 035 050

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

22

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

i P(qt+1=S1|qt=Si)

P(qt+1=S2|qt=Si)

P(qt+1=Sj|qt=Si)

P(qt+1=SN

|qt=Si)

1 a11 a12 hellip a1j hellip a1N

2 a21 a22 hellip a2j hellip a2N

3 a31 a32 hellip a3j hellip a3N

hellip

i ai1 ai2 hellip aij hellip aiN

hellip

N aN1 aN2 hellip aNj hellip aNN

Todas estas tablas son

iguales

aij = P (qt+1=sj|qt=si)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

i P(Ot=1|qt=Si) P(Ot=2|qt=Si) P(Ot=j|qt=Si) P(Ot=N|qt=Si)

1 b1(1) b1(2) hellip b1(j) hellip b1(N)2 b2(1) b2(2) hellip b2(j) hellip b2(N)3 b3(1) b3(2) hellip b3(j) hellip b3(N)hellip

i Bi(1) bi(2) hellip bi(j) hellip bi(N)hellip

N bN(1) bN(2) hellip bN(j) hellip bN(N)

bi(j) = P (Ot=j|qt=si)

Todas estas tablas son

iguales

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

un enrejado

s1

s2

si

sN

s1

s2

si

sN

s1

s2

sj

sN

s1

s2

si

sN

a1j

a2j

aij

aNj

1 k k+1 K

o1 ok ok+1 oKObservaciones

Tiempo

Ejemplo Casino tramposo

Un casino tiene dos dados Dado ldquojustordquo

P(1) = P(2) = P(3) = P(5) = P(6) = 16 Dado cargado

P(1) = P(2) = P(3) = P(4) = P(5) = 110P(6) = 12

El casino alterna entre el dado justo y el cargado una vezcada 20 turnos

Problemas a resolver con HMM Evaluacioacuten

Dado un HMM M=(A B π) y una secuencia de observaciones O=o1 o2 oK calcular la probabilidad de que el modelo M haya generado la secuencia O

Dr Marcelo G Armentano - ISISTAN - UNICEN

EvaluacioacutenDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestCuan probable es esta secuencia dado nuestromodelo de como opera el casino

Este es el problema de EVALUACIOacuteN en HMMs

03112011

23

Problemas a resolver con HMM Decodificacioacuten o inferencia

Dado un HMM M=(A B π) y una secuencia de observaciones O=o1 o2 oK calcular la secuencia de estados ocultos Si que maacutes probablemente produjo la secuencia de observaciones O

Dr Marcelo G Armentano - ISISTAN - UNICEN

DecodificacioacutenDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestQue partes de la secuencia fueron generadas por el dado cargado y cuales por el dado justo

Este es el problema de DECODIFICACIOacuteN en HMMs

Problemas a resolver con HMM Aprendizaje

Dado un conjunto de secuencias de observaciones de entrenamiento O=o1 o2 oK y la estructura general de HMM (cantidad de estados ocultos y cantidad de estados visibles) determinar los paraacutemetros del HMM M=(A B π) que mejor se ajustan a los datos de entrenamiento

Dr Marcelo G Armentano - ISISTAN - UNICEN

AprendizajeDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestCoacutemo estaacute cargado el dado cargado iquestCada cuantocambia el casino entre el dado cargado y el justo

Este es el problema de APRENDIZAJE en HMMs

El HMM del casino tramposo

JUSTO CARGADO

005

005

095095

P(1|Justo) = 16P(2|Justo) = 16P(3|Justo) = 16P(4|Justo) = 16P(5|Justo) = 16P(6|Justo) = 16

P(1|Cargado) = 110P(2|Cargado) = 110P(3|Cargado) = 110P(4|Cargado) = 110P(5|Cargado) = 110P(6|Cargado) = 12

Ejemplo reconocimiento de

palabras Se asume que los caracteres estaacuten separados

El reconocedorde caracteres da como salida la probabilidad de que una imagen corresponda a un caracterparticular P(caracter|imagen)

05

003

0005

031z

c

b

a

Estado Oculto

Estado Observable

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

24

Ejemplo reconocimiento de

palabras Estados Ocultos del HMM caracteres

Estados Observables imagenes de caracteres

Probabilidades de Observacioacutenαv

( ) ( ))|()( ii svPvbB αα ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo reconocimiento de

palabras Si se conoce el diccionario es posible construir un modelo

individual para cada palabra

bull Problema de evaluacioacuten reconocer la palabra en unaimagen es equivalente a evaluar un conjunto de modelos

amigos a m i g o s

buacutefalo b uacute f a l o

05 003 04 06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo reconocimiento de

palabras Podemos construir un HMM para todas las palabras

Estados ocultos los caracteres de las palabras

Probabilidades de transicioacuten calculadas a partir de modelos del lenguaje

Observaciones y probabilidades de observacioacuten iguales al ejemplo anterior

Problema de decodificacioacuten encontrar la secuencia de estados ocultos que maacutes probablemente generaron la imagen

a m

i g

o

s

t

b v

f

u

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

Forward-Backward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward

Seco Huacutemedo EmpapadoObs

Sol

Nubes

Lluvia

Sol

Nubes

Lluvia

Sol

Nubes

Lluvia

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward Pr(Seco Huacutemedo Empapado|M) =

Pr(seco huacutemedo empapado|sol sol sol) +

Pr(seco huacutemedo empapado|sol nubes sol) +

hellip

Pr(seco huacutemedo empapado|lluvia lluvia lluvia)

iexcliexclMuy Costoso

33 = 27 caacutelculos

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

25

Algoritmo Forward Reduccioacuten de la complejidad

Probabilidad parcial de alcanzar un estado intermedio en el entramado

Yk1 Yk2 hellip YkT

Sol

Nubes

Lluvia

Nubes

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward αt(j)= Pr(obs|estado oculto es j)

Pr( todos los caminos al estado j en el tiempo t)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward En el tiempo t=1

En el tiempo t gt1

α1(j)=π(j) Pr(obs|estado j)

αt(j)=Pr(todos los caminos a j) Pr(obs|estado j)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward

Terminacioacuten

Dr Marcelo G Armentano - ISISTAN - UNICEN

sum=

=n

j

T jMObs1

)()|Pr( α

sum=

++ =n

i

ijttjt ajobj1

11 )()()( αα

Algoritmo Forward

Sol

α1(sol)=π(sol) bsol(humedo)

Nubes

α1(nubes)=π(nubes) bnubes(humedo)

Lluvia

α1(lluvia)=π(lluvia) blluvia(humedo)

)()(secb )(nubesi1nubes2 sum sdotsdot=

iaionubes αα

Nubes

asolnubes

anubesnubes

alluvianubes

Huacutemedo Seco

Algoritmo Backward

Se define la variable β

)|()( 21 λβ iqoooPi tTttt == ++

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

26

Algoritmo Backward

Inicializacioacuten

Caacutelculo

Finalizacioacuten

1)( =jTβ

1 1

1

( ) ( ) ( )N

t t ij j t

j

i j a b oβ β + +=

=sum

sum=

=N

i

i iobiOp1

11 )()()()|( βπλ 11minus= Tt

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

Forward- Backward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Encontrar la secuencia maacutes probable de estados

ocultos dada una secuencia de observaciones

Ejemplo etiquetar palabras en una oracioacuten con su funcioacuten sintaacutectica

iquestEstados observables iquestEstados ocultos

Juan come naranjasNS NP OD

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Probabilidad parcial δ de alcanzar un estado

intermedio particular en el entramado

δ representa la probabilidad del camino maacutes probable a un estado

Para cada estado final hay un camino maacutes probable a ese estado

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi δ(it) es la maacutexima probabilidad de todas las

secuencias que terminan en el estado i en el tiempo t

En t=T tenemos las mejores probabilidades parciales y los mejores caminos parciales

El mejor camino global a T es el que lleva al estado con la mayor probabilidad

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En t=1

)()()1( 1obii isdot= πδ

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

27

Algoritmo de Viterbi En tgt1

A

B

C

Xhellip

Tltt-1 t-1 t

Pr(x en T=t) = maxi=ABC Pr(i en T=t-1) Pr(X|i) Pr(Ot|X)

)())1((max)( tiijj

obajtit sdotsdotminus= δδDr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En cada tiempo t recordamos el estado j que generoacute

δ(ti)

Se reconstruye el camino utilizando los punteros φhasta el tiempo t=1

ijj

ajtit )1(max)( sdotminus= δφ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi

)(max1

iP TNi

δlele

=lowast

)(maxarg1

iq TNi

T δlele

lowast =

P da la probabilidad de los mejores los estados

qT is la secuencia de estados oacuteptima(Q = q1q2hellipqT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

ForwardBackward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Dada un conjunto de secuencias de observaciones O=o1 o2

oK y la estructura general del HMM (cantidadde estados ocultos

y visibles) determinar los paraacutemetros del modelo M=(A B π) que mejor se ajustan a los datos de entrenamiento es decir

que maximice P(O | M)

Se utiliza el algoritmo de maximizacioacuten de la esperanza para

encontrar un maacuteximo local de P(O | M) algoritmo Baum-Welch

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Si los datos de entrenamiento tienen informacioacuten

acerca de la secuencia de estados ocultos los paraacutemetros se estiman como

xsestransicion

ssestransicionssPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

sveces

senodenesobservaciosoPob

)|()( ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

28

Algorimo Baum-Welch Idea general

xsestransiciondeesperado

ssestransiciondeesperadossPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

svecesdeesperado

senodenesobservaciodeesperadosoPob

)|()( ==

1)( === tparasenvecesdeesperadosP iiiπ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

ξt(ij)= P(qt= si qt+1= sj |o1 o2 oT)

ξt(ij)=P(qt= si qt+1= sj o1 o2 oT)

P(o1 o2 oT)=

P(qt= si o1 o2 ot) aij bj (ot+1 ) P(ot+2 oT | qt+1= sj ) P(o1 o2 oT)

=

=αt(i) aij bj (ot+1 ) βt+1(j)

ΣiΣj αt(i) aij bj (ot+1 ) βt+1(j)

αt(i) aij bj (ot+1 ) βt+1(j)

Σi αt(i) βt(i)Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

tiempo

Estados ocultos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch Definimos γt(i) como la probabilidad de estar en el

estado i en el tiempo t dadas las observaciones

Σt γt(i) - cantidad esperada de veces que visitoel estado i

Σt ξt(ij) - cantidad esperada de transiciones

sum=

=N

j

tt jii1

)()( ξγ

ji rarr

γt(i)= P(qt= si |o1 o2 oT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

sumsum

=)(

)(ˆ

i

jia

t

t

ijγ

ξ

sum

sum ==

)(

)()(ˆ

j

job

t

oot t

kjkt

γ

γ

)(ˆ1 iγπ = la frecuencia esperada del estado i en t=1

nuacutemero esperado de transiciones desde el estado i al estado j sobre la cantidad esperada de transiciones desde el estado i

cantidad de veces que se estuvo en el estado j observando el siacutembolo k sobre la cantidad de veces que se estuvo en el estado j

Dr Marcelo G Armentano - ISISTAN - UNICEN

Bibliografiacutea Bayesian Networks and Decision Graphs - Finn V

Jensen and Thomas D Nielsen - Springer Verlag -Second Edition - 2007

A tutorial on hidden Markov models and selected applications in speech recognition - Lawrence R Rabiner - Proceedings of the IEEE Vol 77 Nordm2 pp 257-286 - 1989

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

29

iquestConsultas

Dr Marcelo G Armentano - ISISTAN - UNICEN

Page 4: redes bayesianas UNICEN.pdf

03112011

4

Ejemplo 3 Robot Un robot es capaz de levantar una bandeja si la

bandeja es liviana y si las bateriacuteas de la fuente de energiacutea del robot estaacuten cargadas Si estas condiciones se satisfacen entonces cuando el robot trata de levantar la bandeja mueve sus brazos Se determina si la bateriacutea estaacute cargada mediante un medidor

Dr Marcelo G Armentano - ISISTAN - UNICEN

iquestvariables

iquestestados

iquestrelaciones

Ejemplo 3 Robot

G M

L

P(B) = 095 P(L) = 07

P(GB) = 095

P(GnotB) = 01

P(MBL) = 09

P(MBnotL) = 005

P(MnotBL) = 00

P(MnotBnotL) = 00

B

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo 3 Robot P(BMLG)

4 variables binarias binarias 16 probabilidades

(BMLG) Prob Conj

(VVVV) 05686

(VVVF) 00299

(VVFV) 00135

(VVFF) 00007

hellip hellip

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo 3 Robot

P(ABDLSXT)

7 variables binarias 128 Probs Conjuntas

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problema de la probabilidad

conjunta Se necesitan en el orden de 2k valores para definir la

funcioacuten de probabilidad conjunta

Solucioacuten Las relaciones de independencia condicional entre las

variables contribuyen a la disminucioacuten de la complejidad del problema

Dr Marcelo G Armentano - ISISTAN - UNICEN

Redes de Bayes Representacioacuten compacta de distribuciones de

probabilidades via independencia condicional

Parte cualitativa Grafo dirigido aciacuteclico (gda)

Nodos - variables aleatorias

Arcos ndash influencia directa

Parte cuantitativa Conjunto de

distribuciones de probabilidades condicionales

09 01

e

b

e

02 08

001 099

09 01

be

b

b

e

BE P(A | EB)E

R

B

A

C

Juntos definen una uacutenica distribucioacuten conjunta de manera factorizada

)|()|()|()()()( ACPERPEBAPEPBPRCAEBP =

Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin

03112011

5

Semaacutentica de las Redes de Bayes

Representacioacuten natural y compacta

Independenciascondicionales en

la estructura de

la red

+Modelos de

probabilidadeslocales

Distribucioacuten deprobabilidad

conjunta sobreun dominio

=

)|()|()|()|()()()( eldPlxPcsePslPcPsPdxelcsP =

S

L

C

E

DX

Dr Marcelo G Armentano - ISISTAN - UNICEN

Agenda Definicioacuten

Ejemplos

Conceptos de Probabilidades

Utilizacioacuten

Inferencia Probabiliacutestica

Construccioacuten

Aprendizaje

Dr Marcelo G Armentano - ISISTAN - UNICEN

Utilizacioacuten de Redes de Bayes Obtener los valores de probabilidades de ciertas

variables de intereacutes a partir de la informacioacuten (evidencia) del estado de otras variables

Ej Sabemos que el aacuterbol estaacute perdiendo sus hojas iquestCuaacutel es la probabilidad de que el aacuterbol esteacute enfermo

iquestCuaacutel es la probabilidad de que el aacuterbol esteacute seco

InferenciaInferenciaDr Marcelo G Armentano - ISISTAN - UNICEN

Enfermo Seco

Pierde Pierde Hojas

Inferencia probabiliacutestica

Consiste en calcular probabilidades de intereacutes a partir de una distribucioacuten de probabilidades conjunta

La estructura de la red de Bayes permite calcular cualquier probabilidad de intereacutes donde la independencia condicional simplifica el caacutelculo

Dr Marcelo G Armentano - ISISTAN - UNICEN

Inferencia en Redes de Bayes La inferencia consiste en el caacutelculo de los resultados a

una consulta (distribucioacuten de probabilidades) con respecto a una red dada y a la presencia de cierta evidencia

RedRed

E

EvidenciaEvidencia

ConsultaConsulta

P(AE)

a0 a1P(AE)P(AE)

Inferencia

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de inferencia

Evidencia el aacuterbol pierde las hojas

Consulta iquestEstaacute enfermo el aacuterbol

Dr Marcelo G Armentano - ISISTAN - UNICEN

Enfermo Seco

Pierde HojasPierde Hojas

Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin

03112011

6

Ejemplo de inferencia Consulta iquestEstaacute enfermo el aacuterbol

Evidencia el aacuterbol pierde las hojas

Dr Marcelo G Armentano - ISISTAN - UNICEN

Enfermo Seco

Pierde HojasPierde Hojas

Enfermo Seco

Pierde Hojas

Enfermo Seco

Pierde Hojas

Teorema de Bayes El teorema de Bayes nos dice como obtener una

probabilidad a posteriori en una hipoacutetesis Vi luego de la observacioacuten de alguna evidencia Vj dadas la probabilidad a priori de Vi y la probabilidad de observar Vj dado Vi

)(

)()()(

Vjp

VipViVjpVjVip =

Vi Vj

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo del Teorema de Bayes Si una persona ve que un brazo del robot se estaacute

moviendo se quiere obtener la probabilidad de que esto haya ocurrido cuando la bateriacutea estaacute descargada Evidencia p(M = V)

Probabilidad a priori p(B = F)

Probabilidad condicional p(M = V B = F)

P(B = F M = V) = p( M = V B = F) p(B = F) p(M = V)

G M

LB

Dr Marcelo G Armentano - ISISTAN - UNICEN

Inferencia en Redes de Bayes

Inferencia causal o top-down

Inferencia de diagnoacutestico o bottom-up

Dr Marcelo G Armentano - ISISTAN - UNICEN

Inferencia causal Probabilidad de que el brazo se mueva dado que la

bandeja es liviana

p(ML) = p(MBL) + p(M notBL) (expansioacuten)= p(MBL) P(BL)+ p(M notBL) P(notBL)= p(MBL) P(B)+ p(M notBL) P(notB)

G M

LBP(ML)

EvidenciaConsulta

Dr Marcelo G Armentano - ISISTAN - UNICEN

Inferencia de diagnoacutestico Probabilidad de que la bandeja esteacute pesada dado que el

brazo no se mueve

p(notLnotM) = p(notMnotL) p(notL) p(notM) Bayes

Se resuelve p(notMnotL) usando razonamiento causal

G M

LBP(notLnotM)

EfectoCausa

Dr Marcelo G Armentano - ISISTAN - UNICEN

Admin
Admin
Admin
Admin
Admin
Admin
Admin

03112011

7

Inferencia exacta A pesar de poder explotar las propiedades de la red la

inferencia probabiliacutestica exacta en una red de Bayesarbitraria es NP-hard

Para muchas aplicaciones donde las redes son pequentildeas o pueden simplificarse la complejidad puede no ser fatal

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmos de Inferencia Existen numerosos algoritmos de inferencia

implementados

Centrados en operaciones algebraicas Variable Elimination [Zhang96] Bucket Elimination [Dechter99] SPI [DrsquoAmbrosio94]

Centrados en propiedades graacuteficas Junction trees [Jensen96]

Dr Marcelo G Armentano - ISISTAN - UNICEN

Agenda Definicioacuten

Ejemplos

Conceptos de Probabilidades

Utilizacioacuten

Inferencia Probabiliacutestica

Construccioacuten

Aprendizaje

Dr Marcelo G Armentano - ISISTAN - UNICEN

Construccioacuten de la red Ingenieriacutea del Conocimiento

Un experto en el dominio identifica los aspectos cualitativos (y a veces cuantitativos) del problema

Codificar el conocimiento existente de expertos en una red

Usar una base de datos para actualizar este conocimiento refinar el conocimiento experto original e identificar nuevas

relaciones

Dr Marcelo G Armentano - ISISTAN - UNICEN

Construccioacuten de la red Determinar las variables que intervienen en el

modelo

Determinar cada uno de los estados o valores que pueden tomar las variables

Determinar las relaciones (dependencias) entre las variables

Construir un GDA que codifique las aserciones de independencia condicional

Dr Marcelo G Armentano - ISISTAN - UNICEN

Construccioacuten de la red Coacutemo obtener los valores de las probabilidades

Conocimiento de expertos en el dominio

Estudios estadiacutesticos

Derivados analiacuteticamente

Aprenderlos a partir de los datos crudos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin

03112011

8

Construccioacuten de la red Coacutemo obtener la estructura de la red

A partir del conocimiento de un experto

Algoritmos de aprendizaje en Redes de Bayes Datos completos o incompletos

Estructura conocida o desconocida

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje de Redes de Bayes

E

R

B

A

C

9 1

e

b

e

7 3

99 01

8 2

be

b

b

e

BE P(A | EB)

Datos

+Informacioacuten

Previa

Aprendizaje

Dr Marcelo G Armentano - ISISTAN - UNICEN

Estructura conocida datos completos

E B

A9 1

e

b

e

7 3

99 01

8 2

be

b

b

e

BE P(A | EB)

e

b

e

be

b

b

e

BE P(A | EB) E B

A

bull La estructura de la red estaacute especificada

bull Se necesitan estimar los paraacutemetros (probabilidades)

bull Los datos no contienen valores faltantes

Aprendizaje

E B A

ltYNNgt

ltYNYgt

ltNNYgt

ltNYYgt

ltNYYgt

Dr Marcelo G Armentano - ISISTAN - UNICEN

E B

A9 1

e

b

e

7 3

99 01

8 2

be

b

b

e

BE P(A | EB)

e

b

e

be

b

b

e

BE P(A | EB) E B

A

bull La estructura de la red no estaacute especificada

ndash Se necesitan seleccionar los arcos y estimar los paraacutemetros

bull Los datos no contienen valores faltantes

E B A

ltYNNgt

ltYNYgt

ltNNYgt

ltNYYgt

ltNYYgtAprendizaje

Estructura desconocida datos completos

Dr Marcelo G Armentano - ISISTAN - UNICEN

E B

A9 1

e

b

e

7 3

99 01

8 2

be

b

b

e

BE P(A | EB)

e

b

e

be

b

b

e

BE P(A | EB) E B

A

bull La estructura de la red estaacute especificada

bull Los datos contienen valores faltantes

ndash Se necesitan considerar asignaciones a los valores faltantes

E B A

ltYNNgt

ltYYgt

ltNNYgt

ltNYgt

ltYYgtAprendizaje

Estructura conocida datos incompletos

E B

A9 1

e

b

e

7 3

99 01

8 2

be

b

b

e

BE P(A | EB)

e

b

e

be

b

b

e

BE P(A | EB)E B

A

bull La estructura de la red no estaacute especificada

bull Se necesitan seleccionar los arcos y estimar los paraacutemetros

bull Los datos contienen valores faltantes

ndash Se necesitan considerar asignaciones a los valores faltantes

E B A

ltYNNgt

ltYYgt

ltNNYgt

ltNYgt

ltYYgt

Aprendizaje

Estructura desconocida datos incompletos

Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin

03112011

9

Aprendizaje de Redes de Bayes Aprendizaje parameacutetrico

Aprender los paraacutemetros que describen el grado de dependencia entre las variables del dominio

Aprendizaje estructural Aprender las dependencias entre las variables que

intervienen en el problema

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje parameacutetrico Aprendizaje Adaptativo

Se utiliza cuando se quieren adaptar todas o algunas de las tablas de probabilidad condicional a partir de un nuevo conjunto de datos

Aprendizaje Batch Se utiliza cuando se quieren generar las tablas de

probabilidad condicional a partir de los datos Ej EM (Expectation Maximization)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje adaptativo La adaptacioacuten es el proceso de refinar las

probabilidades condicionales especificadas en la Red de Bayes teniendo en cuenta los resultados de experimentos o casos reales

Se utilizan tablas de experiencia yo tablas de desvanecimiento

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje adaptativo Un paso del proceso de aprendizaje adaptativo consiste

de ingresar evidencia

propagar la evidencia

actualizar (adaptar) las tablas de probabilidad condicional y las tablas de experiencia

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje adaptativo con tablas

de experiencia

Yes No

Cantidad de experiencias

10 5

P(Smoker=yes) = yes) (yes + no) = 10 15 = 0667

P(Smoker=no) = no) (yes + no) = 5 15 = 0333Dr Marcelo G Armentano - ISISTAN - UNICEN

Fractional Updating Utiliza tablas de experiencia

Suposiciones Independencia Global

Independencia Local

Sean p(A|bicj)=(x1x2)

(n1n2) las experiencias de A

s = n1 + n2 cantidad total de experiencias

A

B C

)()|( 21

s

n

s

ncbAp ji =

Dr Marcelo G Armentano - ISISTAN - UNICEN

Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin

03112011

10

Fractional Updating Caso 1

Tenemos una nueva experiencia e con B=bi

C=cj

A=a1

Luego n1=n1+1

s=s+1 )

1

1

1()|( 21

++

+=

s

n

s

ncbAp ji

Dr Marcelo G Armentano - ISISTAN - UNICEN

A

B C

Fractional Updating Caso 2

Tenemos una nueva experiencia e con B=bi

C=cj

de A soacutelo sabemos

Luego nk=nk+yk

s=s+1

A

B C

1+

+=

s

ynx kk

k

)()|()|( 21 yyecbApeAp ji ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Fractional Updating Caso general

Tenemos una nueva experiencia e con

Luego nk=nk+zyk

s=s+z

A

B C

Dr Marcelo G Armentano - ISISTAN - UNICEN

zecbp ji =)|(

)()|( 21 yyecbApji

=

zs

zynx kk

k+

+=

Fractional Updating Ejemplo

B

true false

true 06 03

false 04 07

Experiences 10 10

A

B

S=20

n1 n2

Como P(A=true|B=true) = 06 Tenemos

bullN(A=true|B=true) = 06 10 = 6bullN(A=true|B=false)= 03 10 = 3

El total de las cuentas para la variable AbullN(true) = 6 + 3 = 9 bullN(false) = 4 + 7 = 11 Dr Marcelo G Armentano - ISISTAN - UNICEN

Fractional Updating

Dr Marcelo G Armentano - ISISTAN - UNICEN

B

true false

true 063 03

false 037 07

Experiences 11 10

A

B

Despueacutes de una experiencia conbull A=truebull B=true

Obtenemos

06311

10106)|( =

+=== trueBtrueAp

03711

10004)|( =

+=== trueBfalseAp

0310

00013)|( =

+=== falseBtrueAp

0710

00007)|( =

+=== falseBfalseAp

zs

zynx kk

k+

+=

zebp i =)|(

)()|( 21 yyebAp i =Fractional Updating

Dr Marcelo G Armentano - ISISTAN - UNICEN

B

true false

true 0625 032

false 0375 068

Experiences 1067 1033

A

B

Si solo tenemos evidencia de A=true

Obtenemos

06256710

067106)|( =

+=== trueBtrueAp

03756710

067004)|( =

+=== trueBfalseAp

0323310

033013)|( =

+=== falseBtrueAp

0683310

033007)|( =

+=== falseBfalseAp

p(B=true|e) zs

zynx kk

k+

+=

zebp i =)|(

)()|( 21 yyebAp i =

03112011

11

Aprendizaje adaptativo con tablas

de desvanecimiento A veces las observaciones viejas no son tan importantes

como las nuevas en el proceso de adaptacioacuten Entonces tenemos que ldquodesaprenderrdquo u ldquoolvidarrdquo algunas de ellas

Las observaciones nuevas son maacutes importantes que las viejas y por lo tanto se les debe dar maacutes peso durante la adaptacioacuten

Se introduce un factor de desvanecimiento que indica la tasa con la cual se olvidan las observaciones previas 0 no hay adaptacioacuten 1 no hay desvanecimiento

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje adaptativo con tablas

de desvanecimiento

Yes No

Cantidad de experiencias

10 5

P(Smoker=yes) = yes) (yes + no) = 10 15 = 0667

P(Smoker=no) = no) (yes + no) = 5 15 = 0333Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje adaptativo con tablas

de desvanecimiento Smoker=yes Fading factor(s) = 05

(Smoker=yes) = factor (yes-previos) + 1= 05 10 + 1 = 6

(Smoker=no) = factor (no-previos) = 05 5 = 25

(experiencias) = 6 + 25 = 85

P(Smoker=yes) = 6 85 = 07059 P(Somker=no) = 25 85 = 02941

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje estructural

Earthquake Alarm Set

Sound

Burglary Earthquake Alarm Set

Sound

Burglary

Earthquake Alarm Set

Sound

Burglary

Si sobra un arcoSi falta un arco

bull Aumenta el nuacutemero de paraacutemetros a ser estimados

bull Suposiciones erroacuteneas acerca del dominio

bull No puede ser solucionado ajustando los paraacutemetros

bull Suposiciones erroacuteneas acerca del dominio

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje estructural Search and Score

Meacutetrica de puntuacioacuten (Score) Mide la calidad de la estructura graacutefica Se utiliza para decidir cual es la mejor solucioacuten

Algoritmo de buacutesqueda Selecciona un pequentildeo subconjunto de las posibles

redes que tengan una calidad alta Se selecciona la ldquomejorrdquo

Dr Marcelo G Armentano - ISISTAN - UNICEN

Basado en optimizaciones

E B A

ltYNNgt

ltYYYgt

ltNNYgt

ltNYYgt

ltNYYgtE B

A

E

B

A

E

BA

Buscar una estructura que maximice esa funcioacuten

Definir una funcioacuten que evaluacutee queacute tan bien se asemeja el modelo a los datos

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

12

Aprendizaje estructural Tests de independencia

Obtienen las dependencias condicionales y lasindependencias utilizando tests de independenciasentre triplas de variables

Por ejemplo tests estadiacutesticos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo K2 Score and Search Buacutesqueda Greedy Muy eficiente Asume que las variables estaacuten ordenadas Comienza con una red sin arcos En cada iteracioacuten para cada variable Xi el nodo cuyo orden

es previo a Xi y que incrementa la calidad de la red se agrega a =Pa(Xi)

Se repite el proceso hasta que No hay incremento en la calidad de la red Se llega a una red completa

La cantidad de padres puede limitarse

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo B Score and Search

No requiere un ordenamiento previo de las variables

Controlar ciclos

Comienza con un conjunto vaciacuteo de padres

En cada iteracioacuten agrega un arco tal que

No produce ciclos

Maximiza la calidad de la red

El proceso se detiene cuando

No se incrementa la calidad de la red 0 Se llega a una red completa

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PC Tests de Independencia

Dos fases Construccioacuten del esqueleto

Encontrar las direcciones de los arcos mediante tests de independencia

Orientar el resto de los arcos sin producir ciclos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PC Construccioacuten del esqueleto

Comienza con un grafo no dirigido totalmente conectado

Mediante tests de independencia va eliminando arcos que no cumplen la siguiente condicioacuten Dos nodos X e Y estaacuten conectados si y soacutelo si no existe un

subconjunto Sxy del conjunto de veacutertices V tal que I(XY|Sxy) sea verdadero

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PCComienza con un grafo completo no dirigido gpi = 0Repeat

For each X isinisinisinisin VFor each Y isinisinisinisin ADJX

Determinar si existe Ssube ADJX ndashY con |S| = i y I(XY|S)Si este conjunto existe

SXY = SEliminar el arco X-Y

i = i+1Until |ADJX| lelelele i forallforallforallforallX

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

13

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=

i=0

SI

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

SI

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

03112011

14

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

i=1

SI

SXY=SXW=SZW=Y

03112011

15

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

No hay nodos con maacutes de 3 adyacentes

Algoritmo PC Encontrar las direcciones de los arcos mediante tests

de independencia (tomando las variables de a tres) Para cada variable Z con dos adyacentes X e Y

comprueba que no Z no esteacute en Sxy para conectar a X e Y como padres de Z

Z XY

Z XY

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

ZnotinSXY

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

ZnotinSXY

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

TnotinSZW

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

TnotinSZW

03112011

16

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

Se orienta arbitrariamente (evitando ciclos)

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

Herramientas Hugin

httpwwwhugincomProducts_ServicesProductsDemo

Bayesware httpwwwbayeswarecom

JavaBayes httpwww-2cscmuedu~javabayes

Paacutegina de Finn Jensen httpwwwcsaaudk~fvj

Dr Marcelo G Armentano - ISISTAN - UNICEN

Agenda Introduccioacuten

Redes de Bayes

Modelos de Markov Introduccioacuten

Cadenas de Markov

Modelos Ocultos de Markov

Dr Marcelo G Armentano - ISISTAN - UNICEN

Introduccioacuten Modelar dependencias entre siacutembolos de una

secuencia Temporales

En reconocimiento del habla fonemas en una palabra palabras en una oracioacuten (reconocimiento sintaacutectico)

Espaciales Reconocimiento de escritura

Secuencias de genes

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

17

Procesos aleatorios de Markov Una secuencia aleatoria tiene la propiedad de markov si su

distribucioacuten de probabilidades estaacute determinadauacutenicamente por el estado actual Un proceso aleatorio quecumple con esta propiedad se llama un proceso aleatorio de Markov

Cuando los estados son observables cadenas de Markov

Cuando los estados no son observables modelos ocultos de markov (HMM hidden Markov models)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Regla de Bayes

)()|()( 111111 qqPqqqPqqqP ttttt minusminusminus =

)()|()|()( 121211111 qqPqqqPqqqPqqqP ttttttt minusminusminusminusminus =

prod=

minusminus =t

i

iitt qqqPqPqqqP2

11111 )|()()(

Dr Marcelo G Armentano - ISISTAN - UNICEN

Propiedad de Markov

1)|()|( 111 gt= minusminus iforqqPqqqP iiii

)|()|()()|()()( 1121

2

1111 minus=

minusminus == prod tt

t

i

iitt qqPqqPqPqqPqPqqqP

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov Pueden verse como un grafo de transicioacuten de estados

con probabilidades en sus arcos

Ejemplo Generacioacuten de Texto Aleatorio Un nodo por cada letra uacutenica observada

Si luego de la letra X observo la letra Y agrego un arco de X a Y Si el arco ya existe incremento la cantidad de observaciones

asociada al arco

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTAL

03112011

18

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTALTAL

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTALTALTOTOTALTOTOTOTOTALhellip

Cadenas de Markov Texto aleatorio generado a partir de un modelo

entrenado con el primer capiacutetulo de ldquo100 antildeos de soledadrdquo de Gabriel Garciacutea Marquez

Mapl idoca Uno domen quespiate meacute s abrdiacuteaton quadelaros del y en ioacutera puacutellade y antildeosar soacute Ar e Pon s toacutentun llose fase co tus pe foaciguela tr de paquros losintun oceton deros picaras ro pigeltexpa Arrcoacuten asadosen ca hiacuteracugidend madel cos pelo ca hamuy cuncte preraletrapuina venco sosueacute gifuas y estiogidire y ple peno do dociemanoacutey den matrones s Arseacutelades lelanelo lacides Jombidorentioacute lla caqueacutetrotan de ciechitevo pa e troacute ulega teilizaban riacuteaden zopendesellaundo u ca tioroserar vorasun plara en fue dempa teresen y umusmpio y sedes s s ezordel rugexhas darmabioacute

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N Extensioacuten a las cadenas de Markov en las que cada

estados representa una secuencia de N observaciones consecutivas

N-gramas

Ocurrencias

che 60

chi 25

cha 10

cho 5

ch

ch se observa 100 veces de las cualeshellip

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N=2

ISMI

SS

SI

IP

PP

PI

10

1010

10

10o5 o5

M I S S I S S I P P I

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N=3

ISSMIS

SSI

SIS

SIP

IPP

PPI

10

10

10

10

10

o5

o5

M I S S I S S I P P I

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

19

Cadenas de Markov de orden N N=1

Modelo fiel a las frecuencias de cada par de letras

No representa bien el lenguaje natural

Dr Marcelo G Armentano - ISISTAN - UNICEN

Mapl idoca Uno domen quespiate meacute s abrdiacuteaton quadelaros del y en ioacutera puacutellade y antildeosar soacute Ar e Pon s toacutentun llose fase co tus pe foaciguela tr de paquros losintun oceton deros picaras ro pigeltexpa Arrcoacuten asadosen ca hiacuteracugidend madel cos pelo ca hamuy cuncte preraletrapuina venco sosueacute gifuas y estiogidire y ple peno do dociemanoacutey den matrones s Arseacutelades lelanelo lacides Jombidorentioacute lla caqueacutetrotan de ciechitevo pa e troacute ulega teilizaban riacuteaden zopendesellaundo u ca tioroserar vorasun plara en fue dempa teresen y umusmpio y sedes s s ezordel rugexhas darmabioacute

Cadenas de Markov de Orden N Texto aleatorio generado N=2

Muca donios y hombre llas res pla plambregrimanteoacute el la sioacute entude Salemo fue uncioacuten co crioacuten Tendiacutea en sula ta chicalque le siezblena que tras senterosagareto mdashgruel res entorasanesbazuerasabepaacuten enda con de in inagercamieropito don cuarecior siblimena tero en joacute te Fuedo paresegua pespurantespuen dos porodad de la que cabaquentra denabrencestiminotescuyoacute quel mor loseacute Acturo pen for es ella guanos mitadraratientoacuten condiacutea la allado quen se logoacute la balaritiva triblesala soacutelos habalcabiempor ere griacutea to borse allas laciasiacutemisible por pocaza los so ola la nintildeos cuaro eacutel y lar espiendismo antildeonetrouna que cad fuerofocieres resa combrempuros parsu misiblocerma anoceraya elos no a y ejoacute desta una tioacuten

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Texto aleatorio generado N=3

Muchetextremecitano conveniencia Cuando por acora pre hablancie el rudienteel pusierantado poblado pago y aumentar animaginacioacuten aza des examillos maacutes gigaciera suellevoacute los que inte la viajes rayos imales hacedor y el teacuterminuto pueses siles expedas mocha que la tanos ser en que vez lles la como la maacutes pase lo uacutenicos romera lado JoseacuteArcadiosas antes al realejo en que de dejoacute todidos tre distilado infinito desco a le se para ver bolada alquiacutedea

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Texto aleatorio generado N=4

Muchos y salambioacute un chaleco de habiacutea burla como el pasoacute la resto de aban su fue ser prendedor condo una buena de las casaquimisterios Joseacute Arcadio Buendiacutea sino esentoacute como un en aquel tambor quedoacute recuerdo de un fugitivo en que en que sierrar los metalejos a puestaban de una tersas y el mundo sino consolas y veiacutean desar a la casa cuyos sin comer Aureliano conjuro de el esperso de piedras

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N = 3-4

Comienzan a aparecer palabras maacutes reconocibles

Palabras de muchas letras aparecen frecuentemente ldquopegadasrdquo a otras palabras

Cuanto maacutes extenso es el texto de entrenamiento maacutes variedad habraacute en la salida

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Entrenamiento con palabras completas (N=1)

Texto generado

Se habiacutea que construyoacute trampas y sus iniciales encima con una insolacioacuten por mares incoacutegnitos visitar territorios maacutes emprendedor que se hundiacutean en las maravillas del mundo Era una explicacioacuten inmediata Joseacute Arcadio Buendiacutea la resonancia hueca de helechos y entonces una truculenta demostracioacuten con un aacutespero sabor de fusilamiento el interior y tambores y a prepararse para llevaacuterselos a palmo a conocerlo mantuvo puesta por los burros Asiacute fue desde haciacutea mucho tiempo porque el mundo se asomaba al caramelo vulgar que un paacutenico cuando llegoacute la judiacutea

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

20

Cadenas de Markov de Orden N Entrenamiento con palabras completas (N=4)

Texto generado

Consideraba como una burla de su travieso destino haber buscado el mar sin encontrarlo al precio de sacrificios y penalidades sin cuento y haberlo encontrado entonces sin buscarlo atravesado en su camino como un obstaacuteculo insalvable Uacutersula no volvioacute a acordarse de la intensidad de esa mirada hasta un diacutea en que el pequentildeo Aureliano a la edad de tres antildeos entroacute a la cocina en el momento en que ella retiraba del fogoacuten y poniacutea en la mesa una olla de caldo hirviendo Aquel olor mordiente quedariacutea para siempre en su memoria vinculado al recuerdo de Melquiacuteades

Dr Marcelo G Armentano - ISISTAN - UNICEN

Modelos de Markov Conjunto de estados

El proceso se mueve de un estado a otro generando unasecuencia de estados

Propiedad de Markov la probabilidad de cada estadosiguiente depende soacutelo del estado previo

bull Para definir un modelo de Markov deben especificarselas siguientes probabilidades

21 Nsss K

KK 21 ikii sss

)|()|( 1121 minusminus = ikikikiiik ssPssssP K

)|( jiij ssPa =)( ii sP=π

Probabilidad del estado inicial Probabilidad de transicioacuten de estados

Dr Marcelo G Armentano - ISISTAN - UNICEN

Lluvioso Seco

0703

02 08

Ejemplo de modelo de Markov

Dos posibles estados lsquoLluviosorsquo ylsquoSecorsquo Probabilidades de Transicioacuten

P(lsquoLluviosorsquo|lsquoLluviosorsquo)=03 P(lsquoSecorsquo|lsquoLluviosorsquo)=07

P(lsquoLluviosorsquo|lsquoSecorsquo)=02 P(lsquoSecorsquo|lsquoSecorsquo)=08

Probabilidades iniciales

P(lsquoLluviosorsquo)=04 P(lsquoSecorsquo)=06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Probabilidad de una secuencia Por la probabilidad de Markov

P(lsquoSecorsquorsquoSecorsquorsquoLluviosorsquorsquoLluviosorsquo ) =P(lsquoLluviosorsquo|rsquoLluviosorsquo) P(lsquoLluviosorsquo|rsquoSecorsquo)

P(lsquoSecorsquo|rsquoSecorsquo) P(lsquoSecorsquo) = 03020806 = 00288

)()|()( 12112121 minusminus= ikiiikiiikikii sssPssssPsssP KKK

)()|()|()|(

)()|(

112211

1211

iiiikikikik

ikiiikik

sPssPssPssP

sssPssP

K

KK

minusminusminus

minusminus

=

==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Underflow El producto de muchas probabilidades entre 0 y 1

puede resultar en underflow

Dado que log(xy) = log(x) + log(y) es mejor realizar la suma del logaritmo de las probabilidades que multiplicarlas

El modelo con el mayor puntaje final de probabilidad logariacutetmica sigue siendo la maacutes probable

Dr Marcelo G Armentano - ISISTAN - UNICEN

Hipoacutetesis del maacuteximo a posteriori

)|(maxarg DhPhHh

MAPisin

equiv

)(

)()|(maxarg

DP

hPhDP

Hhisin

=

)()|(maxarg hPhDPHhisin

=

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

21

Modelos Ocultos de Markov (HMM)

Conjunto de estados El proceso de mueve de un estado a otro generando una secuencia de

estados

Propiedad de Markov La probabilidad de cada estado depende solo del estado actual

Los estados no son visibles pero cada estado genera aleatoriamente unade las posibles observaciones (estados visibles)

Para definir un modelo oculto de Markov se deben especificar las siguientes probabilidades Matriz de probabilidades transicioacuten A=(aij) aij= P(si | sj) Matriz de probabilidades de observacioacuten B=(bi (vm )) bi(vm )= P(vm | si) Vector de probabilidades iniciales π=(πi) πi = P(si)

Los modelos quedan definidos por la tripla M=(A B π)

21 Nsss K

KK 21 ikii sss

)|()|( 1121 minusminus = ikikikiiik ssPssssP K

21 Mvvv K

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

Baja Alta

0703

02 08

Lluvioso Seco

06 0604 04

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

bull Dos estados correspondientes a la presioacuten atmosfeacutericabull lsquoAltarsquo y lsquoBajarsquo

bull Dos posibles observaciones bull lsquoLluviosorsquo y lsquoSecorsquo

bull Probabilidades de Transicioacuten

bull P(lsquoBajarsquo|lsquoBajarsquo)=03 P(lsquoAltarsquo|lsquoBajarsquo)=07 P(lsquoBajarsquo|lsquoAltarsquo)=02

P(lsquoAltarsquo|lsquoAltarsquo)=08bull Probabilidades de Observacioacuten

bull P(lsquoLluviosorsquo|lsquoBajarsquo)=06 P(lsquoSecorsquo|lsquoBajarsquo)=04

P(lsquoLluviosorsquo|lsquoAltarsquo)=04 P(lsquoSecorsquo|lsquoAltarsquo)=03 bull Probabilidades iniciales

bull P(lsquoBajarsquo)=04 P(lsquoAltarsquo)=06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM Prediccioacuten del tiempo de acuerdo al estado de un alga

empapado huacutemedo casi seco seco

nubes lluviasol

Oculto

Observable

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

Empapado Huacutemedo Casi seco Seco

Sol 060 020 015 005

Nubes 025 025 025 025

Lluvia 005 010 035 050

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

22

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

i P(qt+1=S1|qt=Si)

P(qt+1=S2|qt=Si)

P(qt+1=Sj|qt=Si)

P(qt+1=SN

|qt=Si)

1 a11 a12 hellip a1j hellip a1N

2 a21 a22 hellip a2j hellip a2N

3 a31 a32 hellip a3j hellip a3N

hellip

i ai1 ai2 hellip aij hellip aiN

hellip

N aN1 aN2 hellip aNj hellip aNN

Todas estas tablas son

iguales

aij = P (qt+1=sj|qt=si)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

i P(Ot=1|qt=Si) P(Ot=2|qt=Si) P(Ot=j|qt=Si) P(Ot=N|qt=Si)

1 b1(1) b1(2) hellip b1(j) hellip b1(N)2 b2(1) b2(2) hellip b2(j) hellip b2(N)3 b3(1) b3(2) hellip b3(j) hellip b3(N)hellip

i Bi(1) bi(2) hellip bi(j) hellip bi(N)hellip

N bN(1) bN(2) hellip bN(j) hellip bN(N)

bi(j) = P (Ot=j|qt=si)

Todas estas tablas son

iguales

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

un enrejado

s1

s2

si

sN

s1

s2

si

sN

s1

s2

sj

sN

s1

s2

si

sN

a1j

a2j

aij

aNj

1 k k+1 K

o1 ok ok+1 oKObservaciones

Tiempo

Ejemplo Casino tramposo

Un casino tiene dos dados Dado ldquojustordquo

P(1) = P(2) = P(3) = P(5) = P(6) = 16 Dado cargado

P(1) = P(2) = P(3) = P(4) = P(5) = 110P(6) = 12

El casino alterna entre el dado justo y el cargado una vezcada 20 turnos

Problemas a resolver con HMM Evaluacioacuten

Dado un HMM M=(A B π) y una secuencia de observaciones O=o1 o2 oK calcular la probabilidad de que el modelo M haya generado la secuencia O

Dr Marcelo G Armentano - ISISTAN - UNICEN

EvaluacioacutenDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestCuan probable es esta secuencia dado nuestromodelo de como opera el casino

Este es el problema de EVALUACIOacuteN en HMMs

03112011

23

Problemas a resolver con HMM Decodificacioacuten o inferencia

Dado un HMM M=(A B π) y una secuencia de observaciones O=o1 o2 oK calcular la secuencia de estados ocultos Si que maacutes probablemente produjo la secuencia de observaciones O

Dr Marcelo G Armentano - ISISTAN - UNICEN

DecodificacioacutenDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestQue partes de la secuencia fueron generadas por el dado cargado y cuales por el dado justo

Este es el problema de DECODIFICACIOacuteN en HMMs

Problemas a resolver con HMM Aprendizaje

Dado un conjunto de secuencias de observaciones de entrenamiento O=o1 o2 oK y la estructura general de HMM (cantidad de estados ocultos y cantidad de estados visibles) determinar los paraacutemetros del HMM M=(A B π) que mejor se ajustan a los datos de entrenamiento

Dr Marcelo G Armentano - ISISTAN - UNICEN

AprendizajeDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestCoacutemo estaacute cargado el dado cargado iquestCada cuantocambia el casino entre el dado cargado y el justo

Este es el problema de APRENDIZAJE en HMMs

El HMM del casino tramposo

JUSTO CARGADO

005

005

095095

P(1|Justo) = 16P(2|Justo) = 16P(3|Justo) = 16P(4|Justo) = 16P(5|Justo) = 16P(6|Justo) = 16

P(1|Cargado) = 110P(2|Cargado) = 110P(3|Cargado) = 110P(4|Cargado) = 110P(5|Cargado) = 110P(6|Cargado) = 12

Ejemplo reconocimiento de

palabras Se asume que los caracteres estaacuten separados

El reconocedorde caracteres da como salida la probabilidad de que una imagen corresponda a un caracterparticular P(caracter|imagen)

05

003

0005

031z

c

b

a

Estado Oculto

Estado Observable

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

24

Ejemplo reconocimiento de

palabras Estados Ocultos del HMM caracteres

Estados Observables imagenes de caracteres

Probabilidades de Observacioacutenαv

( ) ( ))|()( ii svPvbB αα ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo reconocimiento de

palabras Si se conoce el diccionario es posible construir un modelo

individual para cada palabra

bull Problema de evaluacioacuten reconocer la palabra en unaimagen es equivalente a evaluar un conjunto de modelos

amigos a m i g o s

buacutefalo b uacute f a l o

05 003 04 06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo reconocimiento de

palabras Podemos construir un HMM para todas las palabras

Estados ocultos los caracteres de las palabras

Probabilidades de transicioacuten calculadas a partir de modelos del lenguaje

Observaciones y probabilidades de observacioacuten iguales al ejemplo anterior

Problema de decodificacioacuten encontrar la secuencia de estados ocultos que maacutes probablemente generaron la imagen

a m

i g

o

s

t

b v

f

u

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

Forward-Backward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward

Seco Huacutemedo EmpapadoObs

Sol

Nubes

Lluvia

Sol

Nubes

Lluvia

Sol

Nubes

Lluvia

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward Pr(Seco Huacutemedo Empapado|M) =

Pr(seco huacutemedo empapado|sol sol sol) +

Pr(seco huacutemedo empapado|sol nubes sol) +

hellip

Pr(seco huacutemedo empapado|lluvia lluvia lluvia)

iexcliexclMuy Costoso

33 = 27 caacutelculos

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

25

Algoritmo Forward Reduccioacuten de la complejidad

Probabilidad parcial de alcanzar un estado intermedio en el entramado

Yk1 Yk2 hellip YkT

Sol

Nubes

Lluvia

Nubes

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward αt(j)= Pr(obs|estado oculto es j)

Pr( todos los caminos al estado j en el tiempo t)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward En el tiempo t=1

En el tiempo t gt1

α1(j)=π(j) Pr(obs|estado j)

αt(j)=Pr(todos los caminos a j) Pr(obs|estado j)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward

Terminacioacuten

Dr Marcelo G Armentano - ISISTAN - UNICEN

sum=

=n

j

T jMObs1

)()|Pr( α

sum=

++ =n

i

ijttjt ajobj1

11 )()()( αα

Algoritmo Forward

Sol

α1(sol)=π(sol) bsol(humedo)

Nubes

α1(nubes)=π(nubes) bnubes(humedo)

Lluvia

α1(lluvia)=π(lluvia) blluvia(humedo)

)()(secb )(nubesi1nubes2 sum sdotsdot=

iaionubes αα

Nubes

asolnubes

anubesnubes

alluvianubes

Huacutemedo Seco

Algoritmo Backward

Se define la variable β

)|()( 21 λβ iqoooPi tTttt == ++

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

26

Algoritmo Backward

Inicializacioacuten

Caacutelculo

Finalizacioacuten

1)( =jTβ

1 1

1

( ) ( ) ( )N

t t ij j t

j

i j a b oβ β + +=

=sum

sum=

=N

i

i iobiOp1

11 )()()()|( βπλ 11minus= Tt

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

Forward- Backward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Encontrar la secuencia maacutes probable de estados

ocultos dada una secuencia de observaciones

Ejemplo etiquetar palabras en una oracioacuten con su funcioacuten sintaacutectica

iquestEstados observables iquestEstados ocultos

Juan come naranjasNS NP OD

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Probabilidad parcial δ de alcanzar un estado

intermedio particular en el entramado

δ representa la probabilidad del camino maacutes probable a un estado

Para cada estado final hay un camino maacutes probable a ese estado

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi δ(it) es la maacutexima probabilidad de todas las

secuencias que terminan en el estado i en el tiempo t

En t=T tenemos las mejores probabilidades parciales y los mejores caminos parciales

El mejor camino global a T es el que lleva al estado con la mayor probabilidad

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En t=1

)()()1( 1obii isdot= πδ

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

27

Algoritmo de Viterbi En tgt1

A

B

C

Xhellip

Tltt-1 t-1 t

Pr(x en T=t) = maxi=ABC Pr(i en T=t-1) Pr(X|i) Pr(Ot|X)

)())1((max)( tiijj

obajtit sdotsdotminus= δδDr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En cada tiempo t recordamos el estado j que generoacute

δ(ti)

Se reconstruye el camino utilizando los punteros φhasta el tiempo t=1

ijj

ajtit )1(max)( sdotminus= δφ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi

)(max1

iP TNi

δlele

=lowast

)(maxarg1

iq TNi

T δlele

lowast =

P da la probabilidad de los mejores los estados

qT is la secuencia de estados oacuteptima(Q = q1q2hellipqT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

ForwardBackward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Dada un conjunto de secuencias de observaciones O=o1 o2

oK y la estructura general del HMM (cantidadde estados ocultos

y visibles) determinar los paraacutemetros del modelo M=(A B π) que mejor se ajustan a los datos de entrenamiento es decir

que maximice P(O | M)

Se utiliza el algoritmo de maximizacioacuten de la esperanza para

encontrar un maacuteximo local de P(O | M) algoritmo Baum-Welch

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Si los datos de entrenamiento tienen informacioacuten

acerca de la secuencia de estados ocultos los paraacutemetros se estiman como

xsestransicion

ssestransicionssPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

sveces

senodenesobservaciosoPob

)|()( ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

28

Algorimo Baum-Welch Idea general

xsestransiciondeesperado

ssestransiciondeesperadossPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

svecesdeesperado

senodenesobservaciodeesperadosoPob

)|()( ==

1)( === tparasenvecesdeesperadosP iiiπ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

ξt(ij)= P(qt= si qt+1= sj |o1 o2 oT)

ξt(ij)=P(qt= si qt+1= sj o1 o2 oT)

P(o1 o2 oT)=

P(qt= si o1 o2 ot) aij bj (ot+1 ) P(ot+2 oT | qt+1= sj ) P(o1 o2 oT)

=

=αt(i) aij bj (ot+1 ) βt+1(j)

ΣiΣj αt(i) aij bj (ot+1 ) βt+1(j)

αt(i) aij bj (ot+1 ) βt+1(j)

Σi αt(i) βt(i)Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

tiempo

Estados ocultos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch Definimos γt(i) como la probabilidad de estar en el

estado i en el tiempo t dadas las observaciones

Σt γt(i) - cantidad esperada de veces que visitoel estado i

Σt ξt(ij) - cantidad esperada de transiciones

sum=

=N

j

tt jii1

)()( ξγ

ji rarr

γt(i)= P(qt= si |o1 o2 oT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

sumsum

=)(

)(ˆ

i

jia

t

t

ijγ

ξ

sum

sum ==

)(

)()(ˆ

j

job

t

oot t

kjkt

γ

γ

)(ˆ1 iγπ = la frecuencia esperada del estado i en t=1

nuacutemero esperado de transiciones desde el estado i al estado j sobre la cantidad esperada de transiciones desde el estado i

cantidad de veces que se estuvo en el estado j observando el siacutembolo k sobre la cantidad de veces que se estuvo en el estado j

Dr Marcelo G Armentano - ISISTAN - UNICEN

Bibliografiacutea Bayesian Networks and Decision Graphs - Finn V

Jensen and Thomas D Nielsen - Springer Verlag -Second Edition - 2007

A tutorial on hidden Markov models and selected applications in speech recognition - Lawrence R Rabiner - Proceedings of the IEEE Vol 77 Nordm2 pp 257-286 - 1989

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

29

iquestConsultas

Dr Marcelo G Armentano - ISISTAN - UNICEN

Page 5: redes bayesianas UNICEN.pdf

03112011

5

Semaacutentica de las Redes de Bayes

Representacioacuten natural y compacta

Independenciascondicionales en

la estructura de

la red

+Modelos de

probabilidadeslocales

Distribucioacuten deprobabilidad

conjunta sobreun dominio

=

)|()|()|()|()()()( eldPlxPcsePslPcPsPdxelcsP =

S

L

C

E

DX

Dr Marcelo G Armentano - ISISTAN - UNICEN

Agenda Definicioacuten

Ejemplos

Conceptos de Probabilidades

Utilizacioacuten

Inferencia Probabiliacutestica

Construccioacuten

Aprendizaje

Dr Marcelo G Armentano - ISISTAN - UNICEN

Utilizacioacuten de Redes de Bayes Obtener los valores de probabilidades de ciertas

variables de intereacutes a partir de la informacioacuten (evidencia) del estado de otras variables

Ej Sabemos que el aacuterbol estaacute perdiendo sus hojas iquestCuaacutel es la probabilidad de que el aacuterbol esteacute enfermo

iquestCuaacutel es la probabilidad de que el aacuterbol esteacute seco

InferenciaInferenciaDr Marcelo G Armentano - ISISTAN - UNICEN

Enfermo Seco

Pierde Pierde Hojas

Inferencia probabiliacutestica

Consiste en calcular probabilidades de intereacutes a partir de una distribucioacuten de probabilidades conjunta

La estructura de la red de Bayes permite calcular cualquier probabilidad de intereacutes donde la independencia condicional simplifica el caacutelculo

Dr Marcelo G Armentano - ISISTAN - UNICEN

Inferencia en Redes de Bayes La inferencia consiste en el caacutelculo de los resultados a

una consulta (distribucioacuten de probabilidades) con respecto a una red dada y a la presencia de cierta evidencia

RedRed

E

EvidenciaEvidencia

ConsultaConsulta

P(AE)

a0 a1P(AE)P(AE)

Inferencia

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de inferencia

Evidencia el aacuterbol pierde las hojas

Consulta iquestEstaacute enfermo el aacuterbol

Dr Marcelo G Armentano - ISISTAN - UNICEN

Enfermo Seco

Pierde HojasPierde Hojas

Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin

03112011

6

Ejemplo de inferencia Consulta iquestEstaacute enfermo el aacuterbol

Evidencia el aacuterbol pierde las hojas

Dr Marcelo G Armentano - ISISTAN - UNICEN

Enfermo Seco

Pierde HojasPierde Hojas

Enfermo Seco

Pierde Hojas

Enfermo Seco

Pierde Hojas

Teorema de Bayes El teorema de Bayes nos dice como obtener una

probabilidad a posteriori en una hipoacutetesis Vi luego de la observacioacuten de alguna evidencia Vj dadas la probabilidad a priori de Vi y la probabilidad de observar Vj dado Vi

)(

)()()(

Vjp

VipViVjpVjVip =

Vi Vj

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo del Teorema de Bayes Si una persona ve que un brazo del robot se estaacute

moviendo se quiere obtener la probabilidad de que esto haya ocurrido cuando la bateriacutea estaacute descargada Evidencia p(M = V)

Probabilidad a priori p(B = F)

Probabilidad condicional p(M = V B = F)

P(B = F M = V) = p( M = V B = F) p(B = F) p(M = V)

G M

LB

Dr Marcelo G Armentano - ISISTAN - UNICEN

Inferencia en Redes de Bayes

Inferencia causal o top-down

Inferencia de diagnoacutestico o bottom-up

Dr Marcelo G Armentano - ISISTAN - UNICEN

Inferencia causal Probabilidad de que el brazo se mueva dado que la

bandeja es liviana

p(ML) = p(MBL) + p(M notBL) (expansioacuten)= p(MBL) P(BL)+ p(M notBL) P(notBL)= p(MBL) P(B)+ p(M notBL) P(notB)

G M

LBP(ML)

EvidenciaConsulta

Dr Marcelo G Armentano - ISISTAN - UNICEN

Inferencia de diagnoacutestico Probabilidad de que la bandeja esteacute pesada dado que el

brazo no se mueve

p(notLnotM) = p(notMnotL) p(notL) p(notM) Bayes

Se resuelve p(notMnotL) usando razonamiento causal

G M

LBP(notLnotM)

EfectoCausa

Dr Marcelo G Armentano - ISISTAN - UNICEN

Admin
Admin
Admin
Admin
Admin
Admin
Admin

03112011

7

Inferencia exacta A pesar de poder explotar las propiedades de la red la

inferencia probabiliacutestica exacta en una red de Bayesarbitraria es NP-hard

Para muchas aplicaciones donde las redes son pequentildeas o pueden simplificarse la complejidad puede no ser fatal

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmos de Inferencia Existen numerosos algoritmos de inferencia

implementados

Centrados en operaciones algebraicas Variable Elimination [Zhang96] Bucket Elimination [Dechter99] SPI [DrsquoAmbrosio94]

Centrados en propiedades graacuteficas Junction trees [Jensen96]

Dr Marcelo G Armentano - ISISTAN - UNICEN

Agenda Definicioacuten

Ejemplos

Conceptos de Probabilidades

Utilizacioacuten

Inferencia Probabiliacutestica

Construccioacuten

Aprendizaje

Dr Marcelo G Armentano - ISISTAN - UNICEN

Construccioacuten de la red Ingenieriacutea del Conocimiento

Un experto en el dominio identifica los aspectos cualitativos (y a veces cuantitativos) del problema

Codificar el conocimiento existente de expertos en una red

Usar una base de datos para actualizar este conocimiento refinar el conocimiento experto original e identificar nuevas

relaciones

Dr Marcelo G Armentano - ISISTAN - UNICEN

Construccioacuten de la red Determinar las variables que intervienen en el

modelo

Determinar cada uno de los estados o valores que pueden tomar las variables

Determinar las relaciones (dependencias) entre las variables

Construir un GDA que codifique las aserciones de independencia condicional

Dr Marcelo G Armentano - ISISTAN - UNICEN

Construccioacuten de la red Coacutemo obtener los valores de las probabilidades

Conocimiento de expertos en el dominio

Estudios estadiacutesticos

Derivados analiacuteticamente

Aprenderlos a partir de los datos crudos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin

03112011

8

Construccioacuten de la red Coacutemo obtener la estructura de la red

A partir del conocimiento de un experto

Algoritmos de aprendizaje en Redes de Bayes Datos completos o incompletos

Estructura conocida o desconocida

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje de Redes de Bayes

E

R

B

A

C

9 1

e

b

e

7 3

99 01

8 2

be

b

b

e

BE P(A | EB)

Datos

+Informacioacuten

Previa

Aprendizaje

Dr Marcelo G Armentano - ISISTAN - UNICEN

Estructura conocida datos completos

E B

A9 1

e

b

e

7 3

99 01

8 2

be

b

b

e

BE P(A | EB)

e

b

e

be

b

b

e

BE P(A | EB) E B

A

bull La estructura de la red estaacute especificada

bull Se necesitan estimar los paraacutemetros (probabilidades)

bull Los datos no contienen valores faltantes

Aprendizaje

E B A

ltYNNgt

ltYNYgt

ltNNYgt

ltNYYgt

ltNYYgt

Dr Marcelo G Armentano - ISISTAN - UNICEN

E B

A9 1

e

b

e

7 3

99 01

8 2

be

b

b

e

BE P(A | EB)

e

b

e

be

b

b

e

BE P(A | EB) E B

A

bull La estructura de la red no estaacute especificada

ndash Se necesitan seleccionar los arcos y estimar los paraacutemetros

bull Los datos no contienen valores faltantes

E B A

ltYNNgt

ltYNYgt

ltNNYgt

ltNYYgt

ltNYYgtAprendizaje

Estructura desconocida datos completos

Dr Marcelo G Armentano - ISISTAN - UNICEN

E B

A9 1

e

b

e

7 3

99 01

8 2

be

b

b

e

BE P(A | EB)

e

b

e

be

b

b

e

BE P(A | EB) E B

A

bull La estructura de la red estaacute especificada

bull Los datos contienen valores faltantes

ndash Se necesitan considerar asignaciones a los valores faltantes

E B A

ltYNNgt

ltYYgt

ltNNYgt

ltNYgt

ltYYgtAprendizaje

Estructura conocida datos incompletos

E B

A9 1

e

b

e

7 3

99 01

8 2

be

b

b

e

BE P(A | EB)

e

b

e

be

b

b

e

BE P(A | EB)E B

A

bull La estructura de la red no estaacute especificada

bull Se necesitan seleccionar los arcos y estimar los paraacutemetros

bull Los datos contienen valores faltantes

ndash Se necesitan considerar asignaciones a los valores faltantes

E B A

ltYNNgt

ltYYgt

ltNNYgt

ltNYgt

ltYYgt

Aprendizaje

Estructura desconocida datos incompletos

Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin

03112011

9

Aprendizaje de Redes de Bayes Aprendizaje parameacutetrico

Aprender los paraacutemetros que describen el grado de dependencia entre las variables del dominio

Aprendizaje estructural Aprender las dependencias entre las variables que

intervienen en el problema

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje parameacutetrico Aprendizaje Adaptativo

Se utiliza cuando se quieren adaptar todas o algunas de las tablas de probabilidad condicional a partir de un nuevo conjunto de datos

Aprendizaje Batch Se utiliza cuando se quieren generar las tablas de

probabilidad condicional a partir de los datos Ej EM (Expectation Maximization)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje adaptativo La adaptacioacuten es el proceso de refinar las

probabilidades condicionales especificadas en la Red de Bayes teniendo en cuenta los resultados de experimentos o casos reales

Se utilizan tablas de experiencia yo tablas de desvanecimiento

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje adaptativo Un paso del proceso de aprendizaje adaptativo consiste

de ingresar evidencia

propagar la evidencia

actualizar (adaptar) las tablas de probabilidad condicional y las tablas de experiencia

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje adaptativo con tablas

de experiencia

Yes No

Cantidad de experiencias

10 5

P(Smoker=yes) = yes) (yes + no) = 10 15 = 0667

P(Smoker=no) = no) (yes + no) = 5 15 = 0333Dr Marcelo G Armentano - ISISTAN - UNICEN

Fractional Updating Utiliza tablas de experiencia

Suposiciones Independencia Global

Independencia Local

Sean p(A|bicj)=(x1x2)

(n1n2) las experiencias de A

s = n1 + n2 cantidad total de experiencias

A

B C

)()|( 21

s

n

s

ncbAp ji =

Dr Marcelo G Armentano - ISISTAN - UNICEN

Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin

03112011

10

Fractional Updating Caso 1

Tenemos una nueva experiencia e con B=bi

C=cj

A=a1

Luego n1=n1+1

s=s+1 )

1

1

1()|( 21

++

+=

s

n

s

ncbAp ji

Dr Marcelo G Armentano - ISISTAN - UNICEN

A

B C

Fractional Updating Caso 2

Tenemos una nueva experiencia e con B=bi

C=cj

de A soacutelo sabemos

Luego nk=nk+yk

s=s+1

A

B C

1+

+=

s

ynx kk

k

)()|()|( 21 yyecbApeAp ji ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Fractional Updating Caso general

Tenemos una nueva experiencia e con

Luego nk=nk+zyk

s=s+z

A

B C

Dr Marcelo G Armentano - ISISTAN - UNICEN

zecbp ji =)|(

)()|( 21 yyecbApji

=

zs

zynx kk

k+

+=

Fractional Updating Ejemplo

B

true false

true 06 03

false 04 07

Experiences 10 10

A

B

S=20

n1 n2

Como P(A=true|B=true) = 06 Tenemos

bullN(A=true|B=true) = 06 10 = 6bullN(A=true|B=false)= 03 10 = 3

El total de las cuentas para la variable AbullN(true) = 6 + 3 = 9 bullN(false) = 4 + 7 = 11 Dr Marcelo G Armentano - ISISTAN - UNICEN

Fractional Updating

Dr Marcelo G Armentano - ISISTAN - UNICEN

B

true false

true 063 03

false 037 07

Experiences 11 10

A

B

Despueacutes de una experiencia conbull A=truebull B=true

Obtenemos

06311

10106)|( =

+=== trueBtrueAp

03711

10004)|( =

+=== trueBfalseAp

0310

00013)|( =

+=== falseBtrueAp

0710

00007)|( =

+=== falseBfalseAp

zs

zynx kk

k+

+=

zebp i =)|(

)()|( 21 yyebAp i =Fractional Updating

Dr Marcelo G Armentano - ISISTAN - UNICEN

B

true false

true 0625 032

false 0375 068

Experiences 1067 1033

A

B

Si solo tenemos evidencia de A=true

Obtenemos

06256710

067106)|( =

+=== trueBtrueAp

03756710

067004)|( =

+=== trueBfalseAp

0323310

033013)|( =

+=== falseBtrueAp

0683310

033007)|( =

+=== falseBfalseAp

p(B=true|e) zs

zynx kk

k+

+=

zebp i =)|(

)()|( 21 yyebAp i =

03112011

11

Aprendizaje adaptativo con tablas

de desvanecimiento A veces las observaciones viejas no son tan importantes

como las nuevas en el proceso de adaptacioacuten Entonces tenemos que ldquodesaprenderrdquo u ldquoolvidarrdquo algunas de ellas

Las observaciones nuevas son maacutes importantes que las viejas y por lo tanto se les debe dar maacutes peso durante la adaptacioacuten

Se introduce un factor de desvanecimiento que indica la tasa con la cual se olvidan las observaciones previas 0 no hay adaptacioacuten 1 no hay desvanecimiento

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje adaptativo con tablas

de desvanecimiento

Yes No

Cantidad de experiencias

10 5

P(Smoker=yes) = yes) (yes + no) = 10 15 = 0667

P(Smoker=no) = no) (yes + no) = 5 15 = 0333Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje adaptativo con tablas

de desvanecimiento Smoker=yes Fading factor(s) = 05

(Smoker=yes) = factor (yes-previos) + 1= 05 10 + 1 = 6

(Smoker=no) = factor (no-previos) = 05 5 = 25

(experiencias) = 6 + 25 = 85

P(Smoker=yes) = 6 85 = 07059 P(Somker=no) = 25 85 = 02941

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje estructural

Earthquake Alarm Set

Sound

Burglary Earthquake Alarm Set

Sound

Burglary

Earthquake Alarm Set

Sound

Burglary

Si sobra un arcoSi falta un arco

bull Aumenta el nuacutemero de paraacutemetros a ser estimados

bull Suposiciones erroacuteneas acerca del dominio

bull No puede ser solucionado ajustando los paraacutemetros

bull Suposiciones erroacuteneas acerca del dominio

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje estructural Search and Score

Meacutetrica de puntuacioacuten (Score) Mide la calidad de la estructura graacutefica Se utiliza para decidir cual es la mejor solucioacuten

Algoritmo de buacutesqueda Selecciona un pequentildeo subconjunto de las posibles

redes que tengan una calidad alta Se selecciona la ldquomejorrdquo

Dr Marcelo G Armentano - ISISTAN - UNICEN

Basado en optimizaciones

E B A

ltYNNgt

ltYYYgt

ltNNYgt

ltNYYgt

ltNYYgtE B

A

E

B

A

E

BA

Buscar una estructura que maximice esa funcioacuten

Definir una funcioacuten que evaluacutee queacute tan bien se asemeja el modelo a los datos

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

12

Aprendizaje estructural Tests de independencia

Obtienen las dependencias condicionales y lasindependencias utilizando tests de independenciasentre triplas de variables

Por ejemplo tests estadiacutesticos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo K2 Score and Search Buacutesqueda Greedy Muy eficiente Asume que las variables estaacuten ordenadas Comienza con una red sin arcos En cada iteracioacuten para cada variable Xi el nodo cuyo orden

es previo a Xi y que incrementa la calidad de la red se agrega a =Pa(Xi)

Se repite el proceso hasta que No hay incremento en la calidad de la red Se llega a una red completa

La cantidad de padres puede limitarse

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo B Score and Search

No requiere un ordenamiento previo de las variables

Controlar ciclos

Comienza con un conjunto vaciacuteo de padres

En cada iteracioacuten agrega un arco tal que

No produce ciclos

Maximiza la calidad de la red

El proceso se detiene cuando

No se incrementa la calidad de la red 0 Se llega a una red completa

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PC Tests de Independencia

Dos fases Construccioacuten del esqueleto

Encontrar las direcciones de los arcos mediante tests de independencia

Orientar el resto de los arcos sin producir ciclos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PC Construccioacuten del esqueleto

Comienza con un grafo no dirigido totalmente conectado

Mediante tests de independencia va eliminando arcos que no cumplen la siguiente condicioacuten Dos nodos X e Y estaacuten conectados si y soacutelo si no existe un

subconjunto Sxy del conjunto de veacutertices V tal que I(XY|Sxy) sea verdadero

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PCComienza con un grafo completo no dirigido gpi = 0Repeat

For each X isinisinisinisin VFor each Y isinisinisinisin ADJX

Determinar si existe Ssube ADJX ndashY con |S| = i y I(XY|S)Si este conjunto existe

SXY = SEliminar el arco X-Y

i = i+1Until |ADJX| lelelele i forallforallforallforallX

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

13

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=

i=0

SI

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

SI

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

03112011

14

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

i=1

SI

SXY=SXW=SZW=Y

03112011

15

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

No hay nodos con maacutes de 3 adyacentes

Algoritmo PC Encontrar las direcciones de los arcos mediante tests

de independencia (tomando las variables de a tres) Para cada variable Z con dos adyacentes X e Y

comprueba que no Z no esteacute en Sxy para conectar a X e Y como padres de Z

Z XY

Z XY

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

ZnotinSXY

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

ZnotinSXY

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

TnotinSZW

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

TnotinSZW

03112011

16

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

Se orienta arbitrariamente (evitando ciclos)

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

Herramientas Hugin

httpwwwhugincomProducts_ServicesProductsDemo

Bayesware httpwwwbayeswarecom

JavaBayes httpwww-2cscmuedu~javabayes

Paacutegina de Finn Jensen httpwwwcsaaudk~fvj

Dr Marcelo G Armentano - ISISTAN - UNICEN

Agenda Introduccioacuten

Redes de Bayes

Modelos de Markov Introduccioacuten

Cadenas de Markov

Modelos Ocultos de Markov

Dr Marcelo G Armentano - ISISTAN - UNICEN

Introduccioacuten Modelar dependencias entre siacutembolos de una

secuencia Temporales

En reconocimiento del habla fonemas en una palabra palabras en una oracioacuten (reconocimiento sintaacutectico)

Espaciales Reconocimiento de escritura

Secuencias de genes

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

17

Procesos aleatorios de Markov Una secuencia aleatoria tiene la propiedad de markov si su

distribucioacuten de probabilidades estaacute determinadauacutenicamente por el estado actual Un proceso aleatorio quecumple con esta propiedad se llama un proceso aleatorio de Markov

Cuando los estados son observables cadenas de Markov

Cuando los estados no son observables modelos ocultos de markov (HMM hidden Markov models)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Regla de Bayes

)()|()( 111111 qqPqqqPqqqP ttttt minusminusminus =

)()|()|()( 121211111 qqPqqqPqqqPqqqP ttttttt minusminusminusminusminus =

prod=

minusminus =t

i

iitt qqqPqPqqqP2

11111 )|()()(

Dr Marcelo G Armentano - ISISTAN - UNICEN

Propiedad de Markov

1)|()|( 111 gt= minusminus iforqqPqqqP iiii

)|()|()()|()()( 1121

2

1111 minus=

minusminus == prod tt

t

i

iitt qqPqqPqPqqPqPqqqP

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov Pueden verse como un grafo de transicioacuten de estados

con probabilidades en sus arcos

Ejemplo Generacioacuten de Texto Aleatorio Un nodo por cada letra uacutenica observada

Si luego de la letra X observo la letra Y agrego un arco de X a Y Si el arco ya existe incremento la cantidad de observaciones

asociada al arco

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTAL

03112011

18

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTALTAL

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTALTALTOTOTALTOTOTOTOTALhellip

Cadenas de Markov Texto aleatorio generado a partir de un modelo

entrenado con el primer capiacutetulo de ldquo100 antildeos de soledadrdquo de Gabriel Garciacutea Marquez

Mapl idoca Uno domen quespiate meacute s abrdiacuteaton quadelaros del y en ioacutera puacutellade y antildeosar soacute Ar e Pon s toacutentun llose fase co tus pe foaciguela tr de paquros losintun oceton deros picaras ro pigeltexpa Arrcoacuten asadosen ca hiacuteracugidend madel cos pelo ca hamuy cuncte preraletrapuina venco sosueacute gifuas y estiogidire y ple peno do dociemanoacutey den matrones s Arseacutelades lelanelo lacides Jombidorentioacute lla caqueacutetrotan de ciechitevo pa e troacute ulega teilizaban riacuteaden zopendesellaundo u ca tioroserar vorasun plara en fue dempa teresen y umusmpio y sedes s s ezordel rugexhas darmabioacute

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N Extensioacuten a las cadenas de Markov en las que cada

estados representa una secuencia de N observaciones consecutivas

N-gramas

Ocurrencias

che 60

chi 25

cha 10

cho 5

ch

ch se observa 100 veces de las cualeshellip

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N=2

ISMI

SS

SI

IP

PP

PI

10

1010

10

10o5 o5

M I S S I S S I P P I

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N=3

ISSMIS

SSI

SIS

SIP

IPP

PPI

10

10

10

10

10

o5

o5

M I S S I S S I P P I

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

19

Cadenas de Markov de orden N N=1

Modelo fiel a las frecuencias de cada par de letras

No representa bien el lenguaje natural

Dr Marcelo G Armentano - ISISTAN - UNICEN

Mapl idoca Uno domen quespiate meacute s abrdiacuteaton quadelaros del y en ioacutera puacutellade y antildeosar soacute Ar e Pon s toacutentun llose fase co tus pe foaciguela tr de paquros losintun oceton deros picaras ro pigeltexpa Arrcoacuten asadosen ca hiacuteracugidend madel cos pelo ca hamuy cuncte preraletrapuina venco sosueacute gifuas y estiogidire y ple peno do dociemanoacutey den matrones s Arseacutelades lelanelo lacides Jombidorentioacute lla caqueacutetrotan de ciechitevo pa e troacute ulega teilizaban riacuteaden zopendesellaundo u ca tioroserar vorasun plara en fue dempa teresen y umusmpio y sedes s s ezordel rugexhas darmabioacute

Cadenas de Markov de Orden N Texto aleatorio generado N=2

Muca donios y hombre llas res pla plambregrimanteoacute el la sioacute entude Salemo fue uncioacuten co crioacuten Tendiacutea en sula ta chicalque le siezblena que tras senterosagareto mdashgruel res entorasanesbazuerasabepaacuten enda con de in inagercamieropito don cuarecior siblimena tero en joacute te Fuedo paresegua pespurantespuen dos porodad de la que cabaquentra denabrencestiminotescuyoacute quel mor loseacute Acturo pen for es ella guanos mitadraratientoacuten condiacutea la allado quen se logoacute la balaritiva triblesala soacutelos habalcabiempor ere griacutea to borse allas laciasiacutemisible por pocaza los so ola la nintildeos cuaro eacutel y lar espiendismo antildeonetrouna que cad fuerofocieres resa combrempuros parsu misiblocerma anoceraya elos no a y ejoacute desta una tioacuten

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Texto aleatorio generado N=3

Muchetextremecitano conveniencia Cuando por acora pre hablancie el rudienteel pusierantado poblado pago y aumentar animaginacioacuten aza des examillos maacutes gigaciera suellevoacute los que inte la viajes rayos imales hacedor y el teacuterminuto pueses siles expedas mocha que la tanos ser en que vez lles la como la maacutes pase lo uacutenicos romera lado JoseacuteArcadiosas antes al realejo en que de dejoacute todidos tre distilado infinito desco a le se para ver bolada alquiacutedea

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Texto aleatorio generado N=4

Muchos y salambioacute un chaleco de habiacutea burla como el pasoacute la resto de aban su fue ser prendedor condo una buena de las casaquimisterios Joseacute Arcadio Buendiacutea sino esentoacute como un en aquel tambor quedoacute recuerdo de un fugitivo en que en que sierrar los metalejos a puestaban de una tersas y el mundo sino consolas y veiacutean desar a la casa cuyos sin comer Aureliano conjuro de el esperso de piedras

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N = 3-4

Comienzan a aparecer palabras maacutes reconocibles

Palabras de muchas letras aparecen frecuentemente ldquopegadasrdquo a otras palabras

Cuanto maacutes extenso es el texto de entrenamiento maacutes variedad habraacute en la salida

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Entrenamiento con palabras completas (N=1)

Texto generado

Se habiacutea que construyoacute trampas y sus iniciales encima con una insolacioacuten por mares incoacutegnitos visitar territorios maacutes emprendedor que se hundiacutean en las maravillas del mundo Era una explicacioacuten inmediata Joseacute Arcadio Buendiacutea la resonancia hueca de helechos y entonces una truculenta demostracioacuten con un aacutespero sabor de fusilamiento el interior y tambores y a prepararse para llevaacuterselos a palmo a conocerlo mantuvo puesta por los burros Asiacute fue desde haciacutea mucho tiempo porque el mundo se asomaba al caramelo vulgar que un paacutenico cuando llegoacute la judiacutea

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

20

Cadenas de Markov de Orden N Entrenamiento con palabras completas (N=4)

Texto generado

Consideraba como una burla de su travieso destino haber buscado el mar sin encontrarlo al precio de sacrificios y penalidades sin cuento y haberlo encontrado entonces sin buscarlo atravesado en su camino como un obstaacuteculo insalvable Uacutersula no volvioacute a acordarse de la intensidad de esa mirada hasta un diacutea en que el pequentildeo Aureliano a la edad de tres antildeos entroacute a la cocina en el momento en que ella retiraba del fogoacuten y poniacutea en la mesa una olla de caldo hirviendo Aquel olor mordiente quedariacutea para siempre en su memoria vinculado al recuerdo de Melquiacuteades

Dr Marcelo G Armentano - ISISTAN - UNICEN

Modelos de Markov Conjunto de estados

El proceso se mueve de un estado a otro generando unasecuencia de estados

Propiedad de Markov la probabilidad de cada estadosiguiente depende soacutelo del estado previo

bull Para definir un modelo de Markov deben especificarselas siguientes probabilidades

21 Nsss K

KK 21 ikii sss

)|()|( 1121 minusminus = ikikikiiik ssPssssP K

)|( jiij ssPa =)( ii sP=π

Probabilidad del estado inicial Probabilidad de transicioacuten de estados

Dr Marcelo G Armentano - ISISTAN - UNICEN

Lluvioso Seco

0703

02 08

Ejemplo de modelo de Markov

Dos posibles estados lsquoLluviosorsquo ylsquoSecorsquo Probabilidades de Transicioacuten

P(lsquoLluviosorsquo|lsquoLluviosorsquo)=03 P(lsquoSecorsquo|lsquoLluviosorsquo)=07

P(lsquoLluviosorsquo|lsquoSecorsquo)=02 P(lsquoSecorsquo|lsquoSecorsquo)=08

Probabilidades iniciales

P(lsquoLluviosorsquo)=04 P(lsquoSecorsquo)=06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Probabilidad de una secuencia Por la probabilidad de Markov

P(lsquoSecorsquorsquoSecorsquorsquoLluviosorsquorsquoLluviosorsquo ) =P(lsquoLluviosorsquo|rsquoLluviosorsquo) P(lsquoLluviosorsquo|rsquoSecorsquo)

P(lsquoSecorsquo|rsquoSecorsquo) P(lsquoSecorsquo) = 03020806 = 00288

)()|()( 12112121 minusminus= ikiiikiiikikii sssPssssPsssP KKK

)()|()|()|(

)()|(

112211

1211

iiiikikikik

ikiiikik

sPssPssPssP

sssPssP

K

KK

minusminusminus

minusminus

=

==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Underflow El producto de muchas probabilidades entre 0 y 1

puede resultar en underflow

Dado que log(xy) = log(x) + log(y) es mejor realizar la suma del logaritmo de las probabilidades que multiplicarlas

El modelo con el mayor puntaje final de probabilidad logariacutetmica sigue siendo la maacutes probable

Dr Marcelo G Armentano - ISISTAN - UNICEN

Hipoacutetesis del maacuteximo a posteriori

)|(maxarg DhPhHh

MAPisin

equiv

)(

)()|(maxarg

DP

hPhDP

Hhisin

=

)()|(maxarg hPhDPHhisin

=

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

21

Modelos Ocultos de Markov (HMM)

Conjunto de estados El proceso de mueve de un estado a otro generando una secuencia de

estados

Propiedad de Markov La probabilidad de cada estado depende solo del estado actual

Los estados no son visibles pero cada estado genera aleatoriamente unade las posibles observaciones (estados visibles)

Para definir un modelo oculto de Markov se deben especificar las siguientes probabilidades Matriz de probabilidades transicioacuten A=(aij) aij= P(si | sj) Matriz de probabilidades de observacioacuten B=(bi (vm )) bi(vm )= P(vm | si) Vector de probabilidades iniciales π=(πi) πi = P(si)

Los modelos quedan definidos por la tripla M=(A B π)

21 Nsss K

KK 21 ikii sss

)|()|( 1121 minusminus = ikikikiiik ssPssssP K

21 Mvvv K

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

Baja Alta

0703

02 08

Lluvioso Seco

06 0604 04

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

bull Dos estados correspondientes a la presioacuten atmosfeacutericabull lsquoAltarsquo y lsquoBajarsquo

bull Dos posibles observaciones bull lsquoLluviosorsquo y lsquoSecorsquo

bull Probabilidades de Transicioacuten

bull P(lsquoBajarsquo|lsquoBajarsquo)=03 P(lsquoAltarsquo|lsquoBajarsquo)=07 P(lsquoBajarsquo|lsquoAltarsquo)=02

P(lsquoAltarsquo|lsquoAltarsquo)=08bull Probabilidades de Observacioacuten

bull P(lsquoLluviosorsquo|lsquoBajarsquo)=06 P(lsquoSecorsquo|lsquoBajarsquo)=04

P(lsquoLluviosorsquo|lsquoAltarsquo)=04 P(lsquoSecorsquo|lsquoAltarsquo)=03 bull Probabilidades iniciales

bull P(lsquoBajarsquo)=04 P(lsquoAltarsquo)=06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM Prediccioacuten del tiempo de acuerdo al estado de un alga

empapado huacutemedo casi seco seco

nubes lluviasol

Oculto

Observable

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

Empapado Huacutemedo Casi seco Seco

Sol 060 020 015 005

Nubes 025 025 025 025

Lluvia 005 010 035 050

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

22

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

i P(qt+1=S1|qt=Si)

P(qt+1=S2|qt=Si)

P(qt+1=Sj|qt=Si)

P(qt+1=SN

|qt=Si)

1 a11 a12 hellip a1j hellip a1N

2 a21 a22 hellip a2j hellip a2N

3 a31 a32 hellip a3j hellip a3N

hellip

i ai1 ai2 hellip aij hellip aiN

hellip

N aN1 aN2 hellip aNj hellip aNN

Todas estas tablas son

iguales

aij = P (qt+1=sj|qt=si)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

i P(Ot=1|qt=Si) P(Ot=2|qt=Si) P(Ot=j|qt=Si) P(Ot=N|qt=Si)

1 b1(1) b1(2) hellip b1(j) hellip b1(N)2 b2(1) b2(2) hellip b2(j) hellip b2(N)3 b3(1) b3(2) hellip b3(j) hellip b3(N)hellip

i Bi(1) bi(2) hellip bi(j) hellip bi(N)hellip

N bN(1) bN(2) hellip bN(j) hellip bN(N)

bi(j) = P (Ot=j|qt=si)

Todas estas tablas son

iguales

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

un enrejado

s1

s2

si

sN

s1

s2

si

sN

s1

s2

sj

sN

s1

s2

si

sN

a1j

a2j

aij

aNj

1 k k+1 K

o1 ok ok+1 oKObservaciones

Tiempo

Ejemplo Casino tramposo

Un casino tiene dos dados Dado ldquojustordquo

P(1) = P(2) = P(3) = P(5) = P(6) = 16 Dado cargado

P(1) = P(2) = P(3) = P(4) = P(5) = 110P(6) = 12

El casino alterna entre el dado justo y el cargado una vezcada 20 turnos

Problemas a resolver con HMM Evaluacioacuten

Dado un HMM M=(A B π) y una secuencia de observaciones O=o1 o2 oK calcular la probabilidad de que el modelo M haya generado la secuencia O

Dr Marcelo G Armentano - ISISTAN - UNICEN

EvaluacioacutenDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestCuan probable es esta secuencia dado nuestromodelo de como opera el casino

Este es el problema de EVALUACIOacuteN en HMMs

03112011

23

Problemas a resolver con HMM Decodificacioacuten o inferencia

Dado un HMM M=(A B π) y una secuencia de observaciones O=o1 o2 oK calcular la secuencia de estados ocultos Si que maacutes probablemente produjo la secuencia de observaciones O

Dr Marcelo G Armentano - ISISTAN - UNICEN

DecodificacioacutenDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestQue partes de la secuencia fueron generadas por el dado cargado y cuales por el dado justo

Este es el problema de DECODIFICACIOacuteN en HMMs

Problemas a resolver con HMM Aprendizaje

Dado un conjunto de secuencias de observaciones de entrenamiento O=o1 o2 oK y la estructura general de HMM (cantidad de estados ocultos y cantidad de estados visibles) determinar los paraacutemetros del HMM M=(A B π) que mejor se ajustan a los datos de entrenamiento

Dr Marcelo G Armentano - ISISTAN - UNICEN

AprendizajeDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestCoacutemo estaacute cargado el dado cargado iquestCada cuantocambia el casino entre el dado cargado y el justo

Este es el problema de APRENDIZAJE en HMMs

El HMM del casino tramposo

JUSTO CARGADO

005

005

095095

P(1|Justo) = 16P(2|Justo) = 16P(3|Justo) = 16P(4|Justo) = 16P(5|Justo) = 16P(6|Justo) = 16

P(1|Cargado) = 110P(2|Cargado) = 110P(3|Cargado) = 110P(4|Cargado) = 110P(5|Cargado) = 110P(6|Cargado) = 12

Ejemplo reconocimiento de

palabras Se asume que los caracteres estaacuten separados

El reconocedorde caracteres da como salida la probabilidad de que una imagen corresponda a un caracterparticular P(caracter|imagen)

05

003

0005

031z

c

b

a

Estado Oculto

Estado Observable

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

24

Ejemplo reconocimiento de

palabras Estados Ocultos del HMM caracteres

Estados Observables imagenes de caracteres

Probabilidades de Observacioacutenαv

( ) ( ))|()( ii svPvbB αα ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo reconocimiento de

palabras Si se conoce el diccionario es posible construir un modelo

individual para cada palabra

bull Problema de evaluacioacuten reconocer la palabra en unaimagen es equivalente a evaluar un conjunto de modelos

amigos a m i g o s

buacutefalo b uacute f a l o

05 003 04 06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo reconocimiento de

palabras Podemos construir un HMM para todas las palabras

Estados ocultos los caracteres de las palabras

Probabilidades de transicioacuten calculadas a partir de modelos del lenguaje

Observaciones y probabilidades de observacioacuten iguales al ejemplo anterior

Problema de decodificacioacuten encontrar la secuencia de estados ocultos que maacutes probablemente generaron la imagen

a m

i g

o

s

t

b v

f

u

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

Forward-Backward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward

Seco Huacutemedo EmpapadoObs

Sol

Nubes

Lluvia

Sol

Nubes

Lluvia

Sol

Nubes

Lluvia

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward Pr(Seco Huacutemedo Empapado|M) =

Pr(seco huacutemedo empapado|sol sol sol) +

Pr(seco huacutemedo empapado|sol nubes sol) +

hellip

Pr(seco huacutemedo empapado|lluvia lluvia lluvia)

iexcliexclMuy Costoso

33 = 27 caacutelculos

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

25

Algoritmo Forward Reduccioacuten de la complejidad

Probabilidad parcial de alcanzar un estado intermedio en el entramado

Yk1 Yk2 hellip YkT

Sol

Nubes

Lluvia

Nubes

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward αt(j)= Pr(obs|estado oculto es j)

Pr( todos los caminos al estado j en el tiempo t)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward En el tiempo t=1

En el tiempo t gt1

α1(j)=π(j) Pr(obs|estado j)

αt(j)=Pr(todos los caminos a j) Pr(obs|estado j)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward

Terminacioacuten

Dr Marcelo G Armentano - ISISTAN - UNICEN

sum=

=n

j

T jMObs1

)()|Pr( α

sum=

++ =n

i

ijttjt ajobj1

11 )()()( αα

Algoritmo Forward

Sol

α1(sol)=π(sol) bsol(humedo)

Nubes

α1(nubes)=π(nubes) bnubes(humedo)

Lluvia

α1(lluvia)=π(lluvia) blluvia(humedo)

)()(secb )(nubesi1nubes2 sum sdotsdot=

iaionubes αα

Nubes

asolnubes

anubesnubes

alluvianubes

Huacutemedo Seco

Algoritmo Backward

Se define la variable β

)|()( 21 λβ iqoooPi tTttt == ++

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

26

Algoritmo Backward

Inicializacioacuten

Caacutelculo

Finalizacioacuten

1)( =jTβ

1 1

1

( ) ( ) ( )N

t t ij j t

j

i j a b oβ β + +=

=sum

sum=

=N

i

i iobiOp1

11 )()()()|( βπλ 11minus= Tt

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

Forward- Backward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Encontrar la secuencia maacutes probable de estados

ocultos dada una secuencia de observaciones

Ejemplo etiquetar palabras en una oracioacuten con su funcioacuten sintaacutectica

iquestEstados observables iquestEstados ocultos

Juan come naranjasNS NP OD

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Probabilidad parcial δ de alcanzar un estado

intermedio particular en el entramado

δ representa la probabilidad del camino maacutes probable a un estado

Para cada estado final hay un camino maacutes probable a ese estado

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi δ(it) es la maacutexima probabilidad de todas las

secuencias que terminan en el estado i en el tiempo t

En t=T tenemos las mejores probabilidades parciales y los mejores caminos parciales

El mejor camino global a T es el que lleva al estado con la mayor probabilidad

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En t=1

)()()1( 1obii isdot= πδ

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

27

Algoritmo de Viterbi En tgt1

A

B

C

Xhellip

Tltt-1 t-1 t

Pr(x en T=t) = maxi=ABC Pr(i en T=t-1) Pr(X|i) Pr(Ot|X)

)())1((max)( tiijj

obajtit sdotsdotminus= δδDr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En cada tiempo t recordamos el estado j que generoacute

δ(ti)

Se reconstruye el camino utilizando los punteros φhasta el tiempo t=1

ijj

ajtit )1(max)( sdotminus= δφ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi

)(max1

iP TNi

δlele

=lowast

)(maxarg1

iq TNi

T δlele

lowast =

P da la probabilidad de los mejores los estados

qT is la secuencia de estados oacuteptima(Q = q1q2hellipqT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

ForwardBackward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Dada un conjunto de secuencias de observaciones O=o1 o2

oK y la estructura general del HMM (cantidadde estados ocultos

y visibles) determinar los paraacutemetros del modelo M=(A B π) que mejor se ajustan a los datos de entrenamiento es decir

que maximice P(O | M)

Se utiliza el algoritmo de maximizacioacuten de la esperanza para

encontrar un maacuteximo local de P(O | M) algoritmo Baum-Welch

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Si los datos de entrenamiento tienen informacioacuten

acerca de la secuencia de estados ocultos los paraacutemetros se estiman como

xsestransicion

ssestransicionssPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

sveces

senodenesobservaciosoPob

)|()( ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

28

Algorimo Baum-Welch Idea general

xsestransiciondeesperado

ssestransiciondeesperadossPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

svecesdeesperado

senodenesobservaciodeesperadosoPob

)|()( ==

1)( === tparasenvecesdeesperadosP iiiπ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

ξt(ij)= P(qt= si qt+1= sj |o1 o2 oT)

ξt(ij)=P(qt= si qt+1= sj o1 o2 oT)

P(o1 o2 oT)=

P(qt= si o1 o2 ot) aij bj (ot+1 ) P(ot+2 oT | qt+1= sj ) P(o1 o2 oT)

=

=αt(i) aij bj (ot+1 ) βt+1(j)

ΣiΣj αt(i) aij bj (ot+1 ) βt+1(j)

αt(i) aij bj (ot+1 ) βt+1(j)

Σi αt(i) βt(i)Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

tiempo

Estados ocultos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch Definimos γt(i) como la probabilidad de estar en el

estado i en el tiempo t dadas las observaciones

Σt γt(i) - cantidad esperada de veces que visitoel estado i

Σt ξt(ij) - cantidad esperada de transiciones

sum=

=N

j

tt jii1

)()( ξγ

ji rarr

γt(i)= P(qt= si |o1 o2 oT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

sumsum

=)(

)(ˆ

i

jia

t

t

ijγ

ξ

sum

sum ==

)(

)()(ˆ

j

job

t

oot t

kjkt

γ

γ

)(ˆ1 iγπ = la frecuencia esperada del estado i en t=1

nuacutemero esperado de transiciones desde el estado i al estado j sobre la cantidad esperada de transiciones desde el estado i

cantidad de veces que se estuvo en el estado j observando el siacutembolo k sobre la cantidad de veces que se estuvo en el estado j

Dr Marcelo G Armentano - ISISTAN - UNICEN

Bibliografiacutea Bayesian Networks and Decision Graphs - Finn V

Jensen and Thomas D Nielsen - Springer Verlag -Second Edition - 2007

A tutorial on hidden Markov models and selected applications in speech recognition - Lawrence R Rabiner - Proceedings of the IEEE Vol 77 Nordm2 pp 257-286 - 1989

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

29

iquestConsultas

Dr Marcelo G Armentano - ISISTAN - UNICEN

Page 6: redes bayesianas UNICEN.pdf

03112011

6

Ejemplo de inferencia Consulta iquestEstaacute enfermo el aacuterbol

Evidencia el aacuterbol pierde las hojas

Dr Marcelo G Armentano - ISISTAN - UNICEN

Enfermo Seco

Pierde HojasPierde Hojas

Enfermo Seco

Pierde Hojas

Enfermo Seco

Pierde Hojas

Teorema de Bayes El teorema de Bayes nos dice como obtener una

probabilidad a posteriori en una hipoacutetesis Vi luego de la observacioacuten de alguna evidencia Vj dadas la probabilidad a priori de Vi y la probabilidad de observar Vj dado Vi

)(

)()()(

Vjp

VipViVjpVjVip =

Vi Vj

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo del Teorema de Bayes Si una persona ve que un brazo del robot se estaacute

moviendo se quiere obtener la probabilidad de que esto haya ocurrido cuando la bateriacutea estaacute descargada Evidencia p(M = V)

Probabilidad a priori p(B = F)

Probabilidad condicional p(M = V B = F)

P(B = F M = V) = p( M = V B = F) p(B = F) p(M = V)

G M

LB

Dr Marcelo G Armentano - ISISTAN - UNICEN

Inferencia en Redes de Bayes

Inferencia causal o top-down

Inferencia de diagnoacutestico o bottom-up

Dr Marcelo G Armentano - ISISTAN - UNICEN

Inferencia causal Probabilidad de que el brazo se mueva dado que la

bandeja es liviana

p(ML) = p(MBL) + p(M notBL) (expansioacuten)= p(MBL) P(BL)+ p(M notBL) P(notBL)= p(MBL) P(B)+ p(M notBL) P(notB)

G M

LBP(ML)

EvidenciaConsulta

Dr Marcelo G Armentano - ISISTAN - UNICEN

Inferencia de diagnoacutestico Probabilidad de que la bandeja esteacute pesada dado que el

brazo no se mueve

p(notLnotM) = p(notMnotL) p(notL) p(notM) Bayes

Se resuelve p(notMnotL) usando razonamiento causal

G M

LBP(notLnotM)

EfectoCausa

Dr Marcelo G Armentano - ISISTAN - UNICEN

Admin
Admin
Admin
Admin
Admin
Admin
Admin

03112011

7

Inferencia exacta A pesar de poder explotar las propiedades de la red la

inferencia probabiliacutestica exacta en una red de Bayesarbitraria es NP-hard

Para muchas aplicaciones donde las redes son pequentildeas o pueden simplificarse la complejidad puede no ser fatal

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmos de Inferencia Existen numerosos algoritmos de inferencia

implementados

Centrados en operaciones algebraicas Variable Elimination [Zhang96] Bucket Elimination [Dechter99] SPI [DrsquoAmbrosio94]

Centrados en propiedades graacuteficas Junction trees [Jensen96]

Dr Marcelo G Armentano - ISISTAN - UNICEN

Agenda Definicioacuten

Ejemplos

Conceptos de Probabilidades

Utilizacioacuten

Inferencia Probabiliacutestica

Construccioacuten

Aprendizaje

Dr Marcelo G Armentano - ISISTAN - UNICEN

Construccioacuten de la red Ingenieriacutea del Conocimiento

Un experto en el dominio identifica los aspectos cualitativos (y a veces cuantitativos) del problema

Codificar el conocimiento existente de expertos en una red

Usar una base de datos para actualizar este conocimiento refinar el conocimiento experto original e identificar nuevas

relaciones

Dr Marcelo G Armentano - ISISTAN - UNICEN

Construccioacuten de la red Determinar las variables que intervienen en el

modelo

Determinar cada uno de los estados o valores que pueden tomar las variables

Determinar las relaciones (dependencias) entre las variables

Construir un GDA que codifique las aserciones de independencia condicional

Dr Marcelo G Armentano - ISISTAN - UNICEN

Construccioacuten de la red Coacutemo obtener los valores de las probabilidades

Conocimiento de expertos en el dominio

Estudios estadiacutesticos

Derivados analiacuteticamente

Aprenderlos a partir de los datos crudos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin

03112011

8

Construccioacuten de la red Coacutemo obtener la estructura de la red

A partir del conocimiento de un experto

Algoritmos de aprendizaje en Redes de Bayes Datos completos o incompletos

Estructura conocida o desconocida

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje de Redes de Bayes

E

R

B

A

C

9 1

e

b

e

7 3

99 01

8 2

be

b

b

e

BE P(A | EB)

Datos

+Informacioacuten

Previa

Aprendizaje

Dr Marcelo G Armentano - ISISTAN - UNICEN

Estructura conocida datos completos

E B

A9 1

e

b

e

7 3

99 01

8 2

be

b

b

e

BE P(A | EB)

e

b

e

be

b

b

e

BE P(A | EB) E B

A

bull La estructura de la red estaacute especificada

bull Se necesitan estimar los paraacutemetros (probabilidades)

bull Los datos no contienen valores faltantes

Aprendizaje

E B A

ltYNNgt

ltYNYgt

ltNNYgt

ltNYYgt

ltNYYgt

Dr Marcelo G Armentano - ISISTAN - UNICEN

E B

A9 1

e

b

e

7 3

99 01

8 2

be

b

b

e

BE P(A | EB)

e

b

e

be

b

b

e

BE P(A | EB) E B

A

bull La estructura de la red no estaacute especificada

ndash Se necesitan seleccionar los arcos y estimar los paraacutemetros

bull Los datos no contienen valores faltantes

E B A

ltYNNgt

ltYNYgt

ltNNYgt

ltNYYgt

ltNYYgtAprendizaje

Estructura desconocida datos completos

Dr Marcelo G Armentano - ISISTAN - UNICEN

E B

A9 1

e

b

e

7 3

99 01

8 2

be

b

b

e

BE P(A | EB)

e

b

e

be

b

b

e

BE P(A | EB) E B

A

bull La estructura de la red estaacute especificada

bull Los datos contienen valores faltantes

ndash Se necesitan considerar asignaciones a los valores faltantes

E B A

ltYNNgt

ltYYgt

ltNNYgt

ltNYgt

ltYYgtAprendizaje

Estructura conocida datos incompletos

E B

A9 1

e

b

e

7 3

99 01

8 2

be

b

b

e

BE P(A | EB)

e

b

e

be

b

b

e

BE P(A | EB)E B

A

bull La estructura de la red no estaacute especificada

bull Se necesitan seleccionar los arcos y estimar los paraacutemetros

bull Los datos contienen valores faltantes

ndash Se necesitan considerar asignaciones a los valores faltantes

E B A

ltYNNgt

ltYYgt

ltNNYgt

ltNYgt

ltYYgt

Aprendizaje

Estructura desconocida datos incompletos

Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin

03112011

9

Aprendizaje de Redes de Bayes Aprendizaje parameacutetrico

Aprender los paraacutemetros que describen el grado de dependencia entre las variables del dominio

Aprendizaje estructural Aprender las dependencias entre las variables que

intervienen en el problema

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje parameacutetrico Aprendizaje Adaptativo

Se utiliza cuando se quieren adaptar todas o algunas de las tablas de probabilidad condicional a partir de un nuevo conjunto de datos

Aprendizaje Batch Se utiliza cuando se quieren generar las tablas de

probabilidad condicional a partir de los datos Ej EM (Expectation Maximization)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje adaptativo La adaptacioacuten es el proceso de refinar las

probabilidades condicionales especificadas en la Red de Bayes teniendo en cuenta los resultados de experimentos o casos reales

Se utilizan tablas de experiencia yo tablas de desvanecimiento

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje adaptativo Un paso del proceso de aprendizaje adaptativo consiste

de ingresar evidencia

propagar la evidencia

actualizar (adaptar) las tablas de probabilidad condicional y las tablas de experiencia

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje adaptativo con tablas

de experiencia

Yes No

Cantidad de experiencias

10 5

P(Smoker=yes) = yes) (yes + no) = 10 15 = 0667

P(Smoker=no) = no) (yes + no) = 5 15 = 0333Dr Marcelo G Armentano - ISISTAN - UNICEN

Fractional Updating Utiliza tablas de experiencia

Suposiciones Independencia Global

Independencia Local

Sean p(A|bicj)=(x1x2)

(n1n2) las experiencias de A

s = n1 + n2 cantidad total de experiencias

A

B C

)()|( 21

s

n

s

ncbAp ji =

Dr Marcelo G Armentano - ISISTAN - UNICEN

Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin

03112011

10

Fractional Updating Caso 1

Tenemos una nueva experiencia e con B=bi

C=cj

A=a1

Luego n1=n1+1

s=s+1 )

1

1

1()|( 21

++

+=

s

n

s

ncbAp ji

Dr Marcelo G Armentano - ISISTAN - UNICEN

A

B C

Fractional Updating Caso 2

Tenemos una nueva experiencia e con B=bi

C=cj

de A soacutelo sabemos

Luego nk=nk+yk

s=s+1

A

B C

1+

+=

s

ynx kk

k

)()|()|( 21 yyecbApeAp ji ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Fractional Updating Caso general

Tenemos una nueva experiencia e con

Luego nk=nk+zyk

s=s+z

A

B C

Dr Marcelo G Armentano - ISISTAN - UNICEN

zecbp ji =)|(

)()|( 21 yyecbApji

=

zs

zynx kk

k+

+=

Fractional Updating Ejemplo

B

true false

true 06 03

false 04 07

Experiences 10 10

A

B

S=20

n1 n2

Como P(A=true|B=true) = 06 Tenemos

bullN(A=true|B=true) = 06 10 = 6bullN(A=true|B=false)= 03 10 = 3

El total de las cuentas para la variable AbullN(true) = 6 + 3 = 9 bullN(false) = 4 + 7 = 11 Dr Marcelo G Armentano - ISISTAN - UNICEN

Fractional Updating

Dr Marcelo G Armentano - ISISTAN - UNICEN

B

true false

true 063 03

false 037 07

Experiences 11 10

A

B

Despueacutes de una experiencia conbull A=truebull B=true

Obtenemos

06311

10106)|( =

+=== trueBtrueAp

03711

10004)|( =

+=== trueBfalseAp

0310

00013)|( =

+=== falseBtrueAp

0710

00007)|( =

+=== falseBfalseAp

zs

zynx kk

k+

+=

zebp i =)|(

)()|( 21 yyebAp i =Fractional Updating

Dr Marcelo G Armentano - ISISTAN - UNICEN

B

true false

true 0625 032

false 0375 068

Experiences 1067 1033

A

B

Si solo tenemos evidencia de A=true

Obtenemos

06256710

067106)|( =

+=== trueBtrueAp

03756710

067004)|( =

+=== trueBfalseAp

0323310

033013)|( =

+=== falseBtrueAp

0683310

033007)|( =

+=== falseBfalseAp

p(B=true|e) zs

zynx kk

k+

+=

zebp i =)|(

)()|( 21 yyebAp i =

03112011

11

Aprendizaje adaptativo con tablas

de desvanecimiento A veces las observaciones viejas no son tan importantes

como las nuevas en el proceso de adaptacioacuten Entonces tenemos que ldquodesaprenderrdquo u ldquoolvidarrdquo algunas de ellas

Las observaciones nuevas son maacutes importantes que las viejas y por lo tanto se les debe dar maacutes peso durante la adaptacioacuten

Se introduce un factor de desvanecimiento que indica la tasa con la cual se olvidan las observaciones previas 0 no hay adaptacioacuten 1 no hay desvanecimiento

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje adaptativo con tablas

de desvanecimiento

Yes No

Cantidad de experiencias

10 5

P(Smoker=yes) = yes) (yes + no) = 10 15 = 0667

P(Smoker=no) = no) (yes + no) = 5 15 = 0333Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje adaptativo con tablas

de desvanecimiento Smoker=yes Fading factor(s) = 05

(Smoker=yes) = factor (yes-previos) + 1= 05 10 + 1 = 6

(Smoker=no) = factor (no-previos) = 05 5 = 25

(experiencias) = 6 + 25 = 85

P(Smoker=yes) = 6 85 = 07059 P(Somker=no) = 25 85 = 02941

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje estructural

Earthquake Alarm Set

Sound

Burglary Earthquake Alarm Set

Sound

Burglary

Earthquake Alarm Set

Sound

Burglary

Si sobra un arcoSi falta un arco

bull Aumenta el nuacutemero de paraacutemetros a ser estimados

bull Suposiciones erroacuteneas acerca del dominio

bull No puede ser solucionado ajustando los paraacutemetros

bull Suposiciones erroacuteneas acerca del dominio

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje estructural Search and Score

Meacutetrica de puntuacioacuten (Score) Mide la calidad de la estructura graacutefica Se utiliza para decidir cual es la mejor solucioacuten

Algoritmo de buacutesqueda Selecciona un pequentildeo subconjunto de las posibles

redes que tengan una calidad alta Se selecciona la ldquomejorrdquo

Dr Marcelo G Armentano - ISISTAN - UNICEN

Basado en optimizaciones

E B A

ltYNNgt

ltYYYgt

ltNNYgt

ltNYYgt

ltNYYgtE B

A

E

B

A

E

BA

Buscar una estructura que maximice esa funcioacuten

Definir una funcioacuten que evaluacutee queacute tan bien se asemeja el modelo a los datos

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

12

Aprendizaje estructural Tests de independencia

Obtienen las dependencias condicionales y lasindependencias utilizando tests de independenciasentre triplas de variables

Por ejemplo tests estadiacutesticos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo K2 Score and Search Buacutesqueda Greedy Muy eficiente Asume que las variables estaacuten ordenadas Comienza con una red sin arcos En cada iteracioacuten para cada variable Xi el nodo cuyo orden

es previo a Xi y que incrementa la calidad de la red se agrega a =Pa(Xi)

Se repite el proceso hasta que No hay incremento en la calidad de la red Se llega a una red completa

La cantidad de padres puede limitarse

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo B Score and Search

No requiere un ordenamiento previo de las variables

Controlar ciclos

Comienza con un conjunto vaciacuteo de padres

En cada iteracioacuten agrega un arco tal que

No produce ciclos

Maximiza la calidad de la red

El proceso se detiene cuando

No se incrementa la calidad de la red 0 Se llega a una red completa

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PC Tests de Independencia

Dos fases Construccioacuten del esqueleto

Encontrar las direcciones de los arcos mediante tests de independencia

Orientar el resto de los arcos sin producir ciclos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PC Construccioacuten del esqueleto

Comienza con un grafo no dirigido totalmente conectado

Mediante tests de independencia va eliminando arcos que no cumplen la siguiente condicioacuten Dos nodos X e Y estaacuten conectados si y soacutelo si no existe un

subconjunto Sxy del conjunto de veacutertices V tal que I(XY|Sxy) sea verdadero

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PCComienza con un grafo completo no dirigido gpi = 0Repeat

For each X isinisinisinisin VFor each Y isinisinisinisin ADJX

Determinar si existe Ssube ADJX ndashY con |S| = i y I(XY|S)Si este conjunto existe

SXY = SEliminar el arco X-Y

i = i+1Until |ADJX| lelelele i forallforallforallforallX

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

13

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=

i=0

SI

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

SI

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

03112011

14

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

i=1

SI

SXY=SXW=SZW=Y

03112011

15

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

No hay nodos con maacutes de 3 adyacentes

Algoritmo PC Encontrar las direcciones de los arcos mediante tests

de independencia (tomando las variables de a tres) Para cada variable Z con dos adyacentes X e Y

comprueba que no Z no esteacute en Sxy para conectar a X e Y como padres de Z

Z XY

Z XY

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

ZnotinSXY

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

ZnotinSXY

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

TnotinSZW

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

TnotinSZW

03112011

16

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

Se orienta arbitrariamente (evitando ciclos)

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

Herramientas Hugin

httpwwwhugincomProducts_ServicesProductsDemo

Bayesware httpwwwbayeswarecom

JavaBayes httpwww-2cscmuedu~javabayes

Paacutegina de Finn Jensen httpwwwcsaaudk~fvj

Dr Marcelo G Armentano - ISISTAN - UNICEN

Agenda Introduccioacuten

Redes de Bayes

Modelos de Markov Introduccioacuten

Cadenas de Markov

Modelos Ocultos de Markov

Dr Marcelo G Armentano - ISISTAN - UNICEN

Introduccioacuten Modelar dependencias entre siacutembolos de una

secuencia Temporales

En reconocimiento del habla fonemas en una palabra palabras en una oracioacuten (reconocimiento sintaacutectico)

Espaciales Reconocimiento de escritura

Secuencias de genes

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

17

Procesos aleatorios de Markov Una secuencia aleatoria tiene la propiedad de markov si su

distribucioacuten de probabilidades estaacute determinadauacutenicamente por el estado actual Un proceso aleatorio quecumple con esta propiedad se llama un proceso aleatorio de Markov

Cuando los estados son observables cadenas de Markov

Cuando los estados no son observables modelos ocultos de markov (HMM hidden Markov models)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Regla de Bayes

)()|()( 111111 qqPqqqPqqqP ttttt minusminusminus =

)()|()|()( 121211111 qqPqqqPqqqPqqqP ttttttt minusminusminusminusminus =

prod=

minusminus =t

i

iitt qqqPqPqqqP2

11111 )|()()(

Dr Marcelo G Armentano - ISISTAN - UNICEN

Propiedad de Markov

1)|()|( 111 gt= minusminus iforqqPqqqP iiii

)|()|()()|()()( 1121

2

1111 minus=

minusminus == prod tt

t

i

iitt qqPqqPqPqqPqPqqqP

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov Pueden verse como un grafo de transicioacuten de estados

con probabilidades en sus arcos

Ejemplo Generacioacuten de Texto Aleatorio Un nodo por cada letra uacutenica observada

Si luego de la letra X observo la letra Y agrego un arco de X a Y Si el arco ya existe incremento la cantidad de observaciones

asociada al arco

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTAL

03112011

18

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTALTAL

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTALTALTOTOTALTOTOTOTOTALhellip

Cadenas de Markov Texto aleatorio generado a partir de un modelo

entrenado con el primer capiacutetulo de ldquo100 antildeos de soledadrdquo de Gabriel Garciacutea Marquez

Mapl idoca Uno domen quespiate meacute s abrdiacuteaton quadelaros del y en ioacutera puacutellade y antildeosar soacute Ar e Pon s toacutentun llose fase co tus pe foaciguela tr de paquros losintun oceton deros picaras ro pigeltexpa Arrcoacuten asadosen ca hiacuteracugidend madel cos pelo ca hamuy cuncte preraletrapuina venco sosueacute gifuas y estiogidire y ple peno do dociemanoacutey den matrones s Arseacutelades lelanelo lacides Jombidorentioacute lla caqueacutetrotan de ciechitevo pa e troacute ulega teilizaban riacuteaden zopendesellaundo u ca tioroserar vorasun plara en fue dempa teresen y umusmpio y sedes s s ezordel rugexhas darmabioacute

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N Extensioacuten a las cadenas de Markov en las que cada

estados representa una secuencia de N observaciones consecutivas

N-gramas

Ocurrencias

che 60

chi 25

cha 10

cho 5

ch

ch se observa 100 veces de las cualeshellip

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N=2

ISMI

SS

SI

IP

PP

PI

10

1010

10

10o5 o5

M I S S I S S I P P I

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N=3

ISSMIS

SSI

SIS

SIP

IPP

PPI

10

10

10

10

10

o5

o5

M I S S I S S I P P I

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

19

Cadenas de Markov de orden N N=1

Modelo fiel a las frecuencias de cada par de letras

No representa bien el lenguaje natural

Dr Marcelo G Armentano - ISISTAN - UNICEN

Mapl idoca Uno domen quespiate meacute s abrdiacuteaton quadelaros del y en ioacutera puacutellade y antildeosar soacute Ar e Pon s toacutentun llose fase co tus pe foaciguela tr de paquros losintun oceton deros picaras ro pigeltexpa Arrcoacuten asadosen ca hiacuteracugidend madel cos pelo ca hamuy cuncte preraletrapuina venco sosueacute gifuas y estiogidire y ple peno do dociemanoacutey den matrones s Arseacutelades lelanelo lacides Jombidorentioacute lla caqueacutetrotan de ciechitevo pa e troacute ulega teilizaban riacuteaden zopendesellaundo u ca tioroserar vorasun plara en fue dempa teresen y umusmpio y sedes s s ezordel rugexhas darmabioacute

Cadenas de Markov de Orden N Texto aleatorio generado N=2

Muca donios y hombre llas res pla plambregrimanteoacute el la sioacute entude Salemo fue uncioacuten co crioacuten Tendiacutea en sula ta chicalque le siezblena que tras senterosagareto mdashgruel res entorasanesbazuerasabepaacuten enda con de in inagercamieropito don cuarecior siblimena tero en joacute te Fuedo paresegua pespurantespuen dos porodad de la que cabaquentra denabrencestiminotescuyoacute quel mor loseacute Acturo pen for es ella guanos mitadraratientoacuten condiacutea la allado quen se logoacute la balaritiva triblesala soacutelos habalcabiempor ere griacutea to borse allas laciasiacutemisible por pocaza los so ola la nintildeos cuaro eacutel y lar espiendismo antildeonetrouna que cad fuerofocieres resa combrempuros parsu misiblocerma anoceraya elos no a y ejoacute desta una tioacuten

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Texto aleatorio generado N=3

Muchetextremecitano conveniencia Cuando por acora pre hablancie el rudienteel pusierantado poblado pago y aumentar animaginacioacuten aza des examillos maacutes gigaciera suellevoacute los que inte la viajes rayos imales hacedor y el teacuterminuto pueses siles expedas mocha que la tanos ser en que vez lles la como la maacutes pase lo uacutenicos romera lado JoseacuteArcadiosas antes al realejo en que de dejoacute todidos tre distilado infinito desco a le se para ver bolada alquiacutedea

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Texto aleatorio generado N=4

Muchos y salambioacute un chaleco de habiacutea burla como el pasoacute la resto de aban su fue ser prendedor condo una buena de las casaquimisterios Joseacute Arcadio Buendiacutea sino esentoacute como un en aquel tambor quedoacute recuerdo de un fugitivo en que en que sierrar los metalejos a puestaban de una tersas y el mundo sino consolas y veiacutean desar a la casa cuyos sin comer Aureliano conjuro de el esperso de piedras

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N = 3-4

Comienzan a aparecer palabras maacutes reconocibles

Palabras de muchas letras aparecen frecuentemente ldquopegadasrdquo a otras palabras

Cuanto maacutes extenso es el texto de entrenamiento maacutes variedad habraacute en la salida

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Entrenamiento con palabras completas (N=1)

Texto generado

Se habiacutea que construyoacute trampas y sus iniciales encima con una insolacioacuten por mares incoacutegnitos visitar territorios maacutes emprendedor que se hundiacutean en las maravillas del mundo Era una explicacioacuten inmediata Joseacute Arcadio Buendiacutea la resonancia hueca de helechos y entonces una truculenta demostracioacuten con un aacutespero sabor de fusilamiento el interior y tambores y a prepararse para llevaacuterselos a palmo a conocerlo mantuvo puesta por los burros Asiacute fue desde haciacutea mucho tiempo porque el mundo se asomaba al caramelo vulgar que un paacutenico cuando llegoacute la judiacutea

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

20

Cadenas de Markov de Orden N Entrenamiento con palabras completas (N=4)

Texto generado

Consideraba como una burla de su travieso destino haber buscado el mar sin encontrarlo al precio de sacrificios y penalidades sin cuento y haberlo encontrado entonces sin buscarlo atravesado en su camino como un obstaacuteculo insalvable Uacutersula no volvioacute a acordarse de la intensidad de esa mirada hasta un diacutea en que el pequentildeo Aureliano a la edad de tres antildeos entroacute a la cocina en el momento en que ella retiraba del fogoacuten y poniacutea en la mesa una olla de caldo hirviendo Aquel olor mordiente quedariacutea para siempre en su memoria vinculado al recuerdo de Melquiacuteades

Dr Marcelo G Armentano - ISISTAN - UNICEN

Modelos de Markov Conjunto de estados

El proceso se mueve de un estado a otro generando unasecuencia de estados

Propiedad de Markov la probabilidad de cada estadosiguiente depende soacutelo del estado previo

bull Para definir un modelo de Markov deben especificarselas siguientes probabilidades

21 Nsss K

KK 21 ikii sss

)|()|( 1121 minusminus = ikikikiiik ssPssssP K

)|( jiij ssPa =)( ii sP=π

Probabilidad del estado inicial Probabilidad de transicioacuten de estados

Dr Marcelo G Armentano - ISISTAN - UNICEN

Lluvioso Seco

0703

02 08

Ejemplo de modelo de Markov

Dos posibles estados lsquoLluviosorsquo ylsquoSecorsquo Probabilidades de Transicioacuten

P(lsquoLluviosorsquo|lsquoLluviosorsquo)=03 P(lsquoSecorsquo|lsquoLluviosorsquo)=07

P(lsquoLluviosorsquo|lsquoSecorsquo)=02 P(lsquoSecorsquo|lsquoSecorsquo)=08

Probabilidades iniciales

P(lsquoLluviosorsquo)=04 P(lsquoSecorsquo)=06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Probabilidad de una secuencia Por la probabilidad de Markov

P(lsquoSecorsquorsquoSecorsquorsquoLluviosorsquorsquoLluviosorsquo ) =P(lsquoLluviosorsquo|rsquoLluviosorsquo) P(lsquoLluviosorsquo|rsquoSecorsquo)

P(lsquoSecorsquo|rsquoSecorsquo) P(lsquoSecorsquo) = 03020806 = 00288

)()|()( 12112121 minusminus= ikiiikiiikikii sssPssssPsssP KKK

)()|()|()|(

)()|(

112211

1211

iiiikikikik

ikiiikik

sPssPssPssP

sssPssP

K

KK

minusminusminus

minusminus

=

==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Underflow El producto de muchas probabilidades entre 0 y 1

puede resultar en underflow

Dado que log(xy) = log(x) + log(y) es mejor realizar la suma del logaritmo de las probabilidades que multiplicarlas

El modelo con el mayor puntaje final de probabilidad logariacutetmica sigue siendo la maacutes probable

Dr Marcelo G Armentano - ISISTAN - UNICEN

Hipoacutetesis del maacuteximo a posteriori

)|(maxarg DhPhHh

MAPisin

equiv

)(

)()|(maxarg

DP

hPhDP

Hhisin

=

)()|(maxarg hPhDPHhisin

=

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

21

Modelos Ocultos de Markov (HMM)

Conjunto de estados El proceso de mueve de un estado a otro generando una secuencia de

estados

Propiedad de Markov La probabilidad de cada estado depende solo del estado actual

Los estados no son visibles pero cada estado genera aleatoriamente unade las posibles observaciones (estados visibles)

Para definir un modelo oculto de Markov se deben especificar las siguientes probabilidades Matriz de probabilidades transicioacuten A=(aij) aij= P(si | sj) Matriz de probabilidades de observacioacuten B=(bi (vm )) bi(vm )= P(vm | si) Vector de probabilidades iniciales π=(πi) πi = P(si)

Los modelos quedan definidos por la tripla M=(A B π)

21 Nsss K

KK 21 ikii sss

)|()|( 1121 minusminus = ikikikiiik ssPssssP K

21 Mvvv K

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

Baja Alta

0703

02 08

Lluvioso Seco

06 0604 04

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

bull Dos estados correspondientes a la presioacuten atmosfeacutericabull lsquoAltarsquo y lsquoBajarsquo

bull Dos posibles observaciones bull lsquoLluviosorsquo y lsquoSecorsquo

bull Probabilidades de Transicioacuten

bull P(lsquoBajarsquo|lsquoBajarsquo)=03 P(lsquoAltarsquo|lsquoBajarsquo)=07 P(lsquoBajarsquo|lsquoAltarsquo)=02

P(lsquoAltarsquo|lsquoAltarsquo)=08bull Probabilidades de Observacioacuten

bull P(lsquoLluviosorsquo|lsquoBajarsquo)=06 P(lsquoSecorsquo|lsquoBajarsquo)=04

P(lsquoLluviosorsquo|lsquoAltarsquo)=04 P(lsquoSecorsquo|lsquoAltarsquo)=03 bull Probabilidades iniciales

bull P(lsquoBajarsquo)=04 P(lsquoAltarsquo)=06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM Prediccioacuten del tiempo de acuerdo al estado de un alga

empapado huacutemedo casi seco seco

nubes lluviasol

Oculto

Observable

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

Empapado Huacutemedo Casi seco Seco

Sol 060 020 015 005

Nubes 025 025 025 025

Lluvia 005 010 035 050

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

22

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

i P(qt+1=S1|qt=Si)

P(qt+1=S2|qt=Si)

P(qt+1=Sj|qt=Si)

P(qt+1=SN

|qt=Si)

1 a11 a12 hellip a1j hellip a1N

2 a21 a22 hellip a2j hellip a2N

3 a31 a32 hellip a3j hellip a3N

hellip

i ai1 ai2 hellip aij hellip aiN

hellip

N aN1 aN2 hellip aNj hellip aNN

Todas estas tablas son

iguales

aij = P (qt+1=sj|qt=si)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

i P(Ot=1|qt=Si) P(Ot=2|qt=Si) P(Ot=j|qt=Si) P(Ot=N|qt=Si)

1 b1(1) b1(2) hellip b1(j) hellip b1(N)2 b2(1) b2(2) hellip b2(j) hellip b2(N)3 b3(1) b3(2) hellip b3(j) hellip b3(N)hellip

i Bi(1) bi(2) hellip bi(j) hellip bi(N)hellip

N bN(1) bN(2) hellip bN(j) hellip bN(N)

bi(j) = P (Ot=j|qt=si)

Todas estas tablas son

iguales

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

un enrejado

s1

s2

si

sN

s1

s2

si

sN

s1

s2

sj

sN

s1

s2

si

sN

a1j

a2j

aij

aNj

1 k k+1 K

o1 ok ok+1 oKObservaciones

Tiempo

Ejemplo Casino tramposo

Un casino tiene dos dados Dado ldquojustordquo

P(1) = P(2) = P(3) = P(5) = P(6) = 16 Dado cargado

P(1) = P(2) = P(3) = P(4) = P(5) = 110P(6) = 12

El casino alterna entre el dado justo y el cargado una vezcada 20 turnos

Problemas a resolver con HMM Evaluacioacuten

Dado un HMM M=(A B π) y una secuencia de observaciones O=o1 o2 oK calcular la probabilidad de que el modelo M haya generado la secuencia O

Dr Marcelo G Armentano - ISISTAN - UNICEN

EvaluacioacutenDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestCuan probable es esta secuencia dado nuestromodelo de como opera el casino

Este es el problema de EVALUACIOacuteN en HMMs

03112011

23

Problemas a resolver con HMM Decodificacioacuten o inferencia

Dado un HMM M=(A B π) y una secuencia de observaciones O=o1 o2 oK calcular la secuencia de estados ocultos Si que maacutes probablemente produjo la secuencia de observaciones O

Dr Marcelo G Armentano - ISISTAN - UNICEN

DecodificacioacutenDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestQue partes de la secuencia fueron generadas por el dado cargado y cuales por el dado justo

Este es el problema de DECODIFICACIOacuteN en HMMs

Problemas a resolver con HMM Aprendizaje

Dado un conjunto de secuencias de observaciones de entrenamiento O=o1 o2 oK y la estructura general de HMM (cantidad de estados ocultos y cantidad de estados visibles) determinar los paraacutemetros del HMM M=(A B π) que mejor se ajustan a los datos de entrenamiento

Dr Marcelo G Armentano - ISISTAN - UNICEN

AprendizajeDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestCoacutemo estaacute cargado el dado cargado iquestCada cuantocambia el casino entre el dado cargado y el justo

Este es el problema de APRENDIZAJE en HMMs

El HMM del casino tramposo

JUSTO CARGADO

005

005

095095

P(1|Justo) = 16P(2|Justo) = 16P(3|Justo) = 16P(4|Justo) = 16P(5|Justo) = 16P(6|Justo) = 16

P(1|Cargado) = 110P(2|Cargado) = 110P(3|Cargado) = 110P(4|Cargado) = 110P(5|Cargado) = 110P(6|Cargado) = 12

Ejemplo reconocimiento de

palabras Se asume que los caracteres estaacuten separados

El reconocedorde caracteres da como salida la probabilidad de que una imagen corresponda a un caracterparticular P(caracter|imagen)

05

003

0005

031z

c

b

a

Estado Oculto

Estado Observable

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

24

Ejemplo reconocimiento de

palabras Estados Ocultos del HMM caracteres

Estados Observables imagenes de caracteres

Probabilidades de Observacioacutenαv

( ) ( ))|()( ii svPvbB αα ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo reconocimiento de

palabras Si se conoce el diccionario es posible construir un modelo

individual para cada palabra

bull Problema de evaluacioacuten reconocer la palabra en unaimagen es equivalente a evaluar un conjunto de modelos

amigos a m i g o s

buacutefalo b uacute f a l o

05 003 04 06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo reconocimiento de

palabras Podemos construir un HMM para todas las palabras

Estados ocultos los caracteres de las palabras

Probabilidades de transicioacuten calculadas a partir de modelos del lenguaje

Observaciones y probabilidades de observacioacuten iguales al ejemplo anterior

Problema de decodificacioacuten encontrar la secuencia de estados ocultos que maacutes probablemente generaron la imagen

a m

i g

o

s

t

b v

f

u

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

Forward-Backward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward

Seco Huacutemedo EmpapadoObs

Sol

Nubes

Lluvia

Sol

Nubes

Lluvia

Sol

Nubes

Lluvia

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward Pr(Seco Huacutemedo Empapado|M) =

Pr(seco huacutemedo empapado|sol sol sol) +

Pr(seco huacutemedo empapado|sol nubes sol) +

hellip

Pr(seco huacutemedo empapado|lluvia lluvia lluvia)

iexcliexclMuy Costoso

33 = 27 caacutelculos

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

25

Algoritmo Forward Reduccioacuten de la complejidad

Probabilidad parcial de alcanzar un estado intermedio en el entramado

Yk1 Yk2 hellip YkT

Sol

Nubes

Lluvia

Nubes

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward αt(j)= Pr(obs|estado oculto es j)

Pr( todos los caminos al estado j en el tiempo t)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward En el tiempo t=1

En el tiempo t gt1

α1(j)=π(j) Pr(obs|estado j)

αt(j)=Pr(todos los caminos a j) Pr(obs|estado j)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward

Terminacioacuten

Dr Marcelo G Armentano - ISISTAN - UNICEN

sum=

=n

j

T jMObs1

)()|Pr( α

sum=

++ =n

i

ijttjt ajobj1

11 )()()( αα

Algoritmo Forward

Sol

α1(sol)=π(sol) bsol(humedo)

Nubes

α1(nubes)=π(nubes) bnubes(humedo)

Lluvia

α1(lluvia)=π(lluvia) blluvia(humedo)

)()(secb )(nubesi1nubes2 sum sdotsdot=

iaionubes αα

Nubes

asolnubes

anubesnubes

alluvianubes

Huacutemedo Seco

Algoritmo Backward

Se define la variable β

)|()( 21 λβ iqoooPi tTttt == ++

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

26

Algoritmo Backward

Inicializacioacuten

Caacutelculo

Finalizacioacuten

1)( =jTβ

1 1

1

( ) ( ) ( )N

t t ij j t

j

i j a b oβ β + +=

=sum

sum=

=N

i

i iobiOp1

11 )()()()|( βπλ 11minus= Tt

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

Forward- Backward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Encontrar la secuencia maacutes probable de estados

ocultos dada una secuencia de observaciones

Ejemplo etiquetar palabras en una oracioacuten con su funcioacuten sintaacutectica

iquestEstados observables iquestEstados ocultos

Juan come naranjasNS NP OD

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Probabilidad parcial δ de alcanzar un estado

intermedio particular en el entramado

δ representa la probabilidad del camino maacutes probable a un estado

Para cada estado final hay un camino maacutes probable a ese estado

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi δ(it) es la maacutexima probabilidad de todas las

secuencias que terminan en el estado i en el tiempo t

En t=T tenemos las mejores probabilidades parciales y los mejores caminos parciales

El mejor camino global a T es el que lleva al estado con la mayor probabilidad

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En t=1

)()()1( 1obii isdot= πδ

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

27

Algoritmo de Viterbi En tgt1

A

B

C

Xhellip

Tltt-1 t-1 t

Pr(x en T=t) = maxi=ABC Pr(i en T=t-1) Pr(X|i) Pr(Ot|X)

)())1((max)( tiijj

obajtit sdotsdotminus= δδDr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En cada tiempo t recordamos el estado j que generoacute

δ(ti)

Se reconstruye el camino utilizando los punteros φhasta el tiempo t=1

ijj

ajtit )1(max)( sdotminus= δφ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi

)(max1

iP TNi

δlele

=lowast

)(maxarg1

iq TNi

T δlele

lowast =

P da la probabilidad de los mejores los estados

qT is la secuencia de estados oacuteptima(Q = q1q2hellipqT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

ForwardBackward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Dada un conjunto de secuencias de observaciones O=o1 o2

oK y la estructura general del HMM (cantidadde estados ocultos

y visibles) determinar los paraacutemetros del modelo M=(A B π) que mejor se ajustan a los datos de entrenamiento es decir

que maximice P(O | M)

Se utiliza el algoritmo de maximizacioacuten de la esperanza para

encontrar un maacuteximo local de P(O | M) algoritmo Baum-Welch

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Si los datos de entrenamiento tienen informacioacuten

acerca de la secuencia de estados ocultos los paraacutemetros se estiman como

xsestransicion

ssestransicionssPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

sveces

senodenesobservaciosoPob

)|()( ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

28

Algorimo Baum-Welch Idea general

xsestransiciondeesperado

ssestransiciondeesperadossPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

svecesdeesperado

senodenesobservaciodeesperadosoPob

)|()( ==

1)( === tparasenvecesdeesperadosP iiiπ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

ξt(ij)= P(qt= si qt+1= sj |o1 o2 oT)

ξt(ij)=P(qt= si qt+1= sj o1 o2 oT)

P(o1 o2 oT)=

P(qt= si o1 o2 ot) aij bj (ot+1 ) P(ot+2 oT | qt+1= sj ) P(o1 o2 oT)

=

=αt(i) aij bj (ot+1 ) βt+1(j)

ΣiΣj αt(i) aij bj (ot+1 ) βt+1(j)

αt(i) aij bj (ot+1 ) βt+1(j)

Σi αt(i) βt(i)Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

tiempo

Estados ocultos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch Definimos γt(i) como la probabilidad de estar en el

estado i en el tiempo t dadas las observaciones

Σt γt(i) - cantidad esperada de veces que visitoel estado i

Σt ξt(ij) - cantidad esperada de transiciones

sum=

=N

j

tt jii1

)()( ξγ

ji rarr

γt(i)= P(qt= si |o1 o2 oT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

sumsum

=)(

)(ˆ

i

jia

t

t

ijγ

ξ

sum

sum ==

)(

)()(ˆ

j

job

t

oot t

kjkt

γ

γ

)(ˆ1 iγπ = la frecuencia esperada del estado i en t=1

nuacutemero esperado de transiciones desde el estado i al estado j sobre la cantidad esperada de transiciones desde el estado i

cantidad de veces que se estuvo en el estado j observando el siacutembolo k sobre la cantidad de veces que se estuvo en el estado j

Dr Marcelo G Armentano - ISISTAN - UNICEN

Bibliografiacutea Bayesian Networks and Decision Graphs - Finn V

Jensen and Thomas D Nielsen - Springer Verlag -Second Edition - 2007

A tutorial on hidden Markov models and selected applications in speech recognition - Lawrence R Rabiner - Proceedings of the IEEE Vol 77 Nordm2 pp 257-286 - 1989

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

29

iquestConsultas

Dr Marcelo G Armentano - ISISTAN - UNICEN

Page 7: redes bayesianas UNICEN.pdf

03112011

7

Inferencia exacta A pesar de poder explotar las propiedades de la red la

inferencia probabiliacutestica exacta en una red de Bayesarbitraria es NP-hard

Para muchas aplicaciones donde las redes son pequentildeas o pueden simplificarse la complejidad puede no ser fatal

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmos de Inferencia Existen numerosos algoritmos de inferencia

implementados

Centrados en operaciones algebraicas Variable Elimination [Zhang96] Bucket Elimination [Dechter99] SPI [DrsquoAmbrosio94]

Centrados en propiedades graacuteficas Junction trees [Jensen96]

Dr Marcelo G Armentano - ISISTAN - UNICEN

Agenda Definicioacuten

Ejemplos

Conceptos de Probabilidades

Utilizacioacuten

Inferencia Probabiliacutestica

Construccioacuten

Aprendizaje

Dr Marcelo G Armentano - ISISTAN - UNICEN

Construccioacuten de la red Ingenieriacutea del Conocimiento

Un experto en el dominio identifica los aspectos cualitativos (y a veces cuantitativos) del problema

Codificar el conocimiento existente de expertos en una red

Usar una base de datos para actualizar este conocimiento refinar el conocimiento experto original e identificar nuevas

relaciones

Dr Marcelo G Armentano - ISISTAN - UNICEN

Construccioacuten de la red Determinar las variables que intervienen en el

modelo

Determinar cada uno de los estados o valores que pueden tomar las variables

Determinar las relaciones (dependencias) entre las variables

Construir un GDA que codifique las aserciones de independencia condicional

Dr Marcelo G Armentano - ISISTAN - UNICEN

Construccioacuten de la red Coacutemo obtener los valores de las probabilidades

Conocimiento de expertos en el dominio

Estudios estadiacutesticos

Derivados analiacuteticamente

Aprenderlos a partir de los datos crudos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin

03112011

8

Construccioacuten de la red Coacutemo obtener la estructura de la red

A partir del conocimiento de un experto

Algoritmos de aprendizaje en Redes de Bayes Datos completos o incompletos

Estructura conocida o desconocida

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje de Redes de Bayes

E

R

B

A

C

9 1

e

b

e

7 3

99 01

8 2

be

b

b

e

BE P(A | EB)

Datos

+Informacioacuten

Previa

Aprendizaje

Dr Marcelo G Armentano - ISISTAN - UNICEN

Estructura conocida datos completos

E B

A9 1

e

b

e

7 3

99 01

8 2

be

b

b

e

BE P(A | EB)

e

b

e

be

b

b

e

BE P(A | EB) E B

A

bull La estructura de la red estaacute especificada

bull Se necesitan estimar los paraacutemetros (probabilidades)

bull Los datos no contienen valores faltantes

Aprendizaje

E B A

ltYNNgt

ltYNYgt

ltNNYgt

ltNYYgt

ltNYYgt

Dr Marcelo G Armentano - ISISTAN - UNICEN

E B

A9 1

e

b

e

7 3

99 01

8 2

be

b

b

e

BE P(A | EB)

e

b

e

be

b

b

e

BE P(A | EB) E B

A

bull La estructura de la red no estaacute especificada

ndash Se necesitan seleccionar los arcos y estimar los paraacutemetros

bull Los datos no contienen valores faltantes

E B A

ltYNNgt

ltYNYgt

ltNNYgt

ltNYYgt

ltNYYgtAprendizaje

Estructura desconocida datos completos

Dr Marcelo G Armentano - ISISTAN - UNICEN

E B

A9 1

e

b

e

7 3

99 01

8 2

be

b

b

e

BE P(A | EB)

e

b

e

be

b

b

e

BE P(A | EB) E B

A

bull La estructura de la red estaacute especificada

bull Los datos contienen valores faltantes

ndash Se necesitan considerar asignaciones a los valores faltantes

E B A

ltYNNgt

ltYYgt

ltNNYgt

ltNYgt

ltYYgtAprendizaje

Estructura conocida datos incompletos

E B

A9 1

e

b

e

7 3

99 01

8 2

be

b

b

e

BE P(A | EB)

e

b

e

be

b

b

e

BE P(A | EB)E B

A

bull La estructura de la red no estaacute especificada

bull Se necesitan seleccionar los arcos y estimar los paraacutemetros

bull Los datos contienen valores faltantes

ndash Se necesitan considerar asignaciones a los valores faltantes

E B A

ltYNNgt

ltYYgt

ltNNYgt

ltNYgt

ltYYgt

Aprendizaje

Estructura desconocida datos incompletos

Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin

03112011

9

Aprendizaje de Redes de Bayes Aprendizaje parameacutetrico

Aprender los paraacutemetros que describen el grado de dependencia entre las variables del dominio

Aprendizaje estructural Aprender las dependencias entre las variables que

intervienen en el problema

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje parameacutetrico Aprendizaje Adaptativo

Se utiliza cuando se quieren adaptar todas o algunas de las tablas de probabilidad condicional a partir de un nuevo conjunto de datos

Aprendizaje Batch Se utiliza cuando se quieren generar las tablas de

probabilidad condicional a partir de los datos Ej EM (Expectation Maximization)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje adaptativo La adaptacioacuten es el proceso de refinar las

probabilidades condicionales especificadas en la Red de Bayes teniendo en cuenta los resultados de experimentos o casos reales

Se utilizan tablas de experiencia yo tablas de desvanecimiento

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje adaptativo Un paso del proceso de aprendizaje adaptativo consiste

de ingresar evidencia

propagar la evidencia

actualizar (adaptar) las tablas de probabilidad condicional y las tablas de experiencia

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje adaptativo con tablas

de experiencia

Yes No

Cantidad de experiencias

10 5

P(Smoker=yes) = yes) (yes + no) = 10 15 = 0667

P(Smoker=no) = no) (yes + no) = 5 15 = 0333Dr Marcelo G Armentano - ISISTAN - UNICEN

Fractional Updating Utiliza tablas de experiencia

Suposiciones Independencia Global

Independencia Local

Sean p(A|bicj)=(x1x2)

(n1n2) las experiencias de A

s = n1 + n2 cantidad total de experiencias

A

B C

)()|( 21

s

n

s

ncbAp ji =

Dr Marcelo G Armentano - ISISTAN - UNICEN

Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin

03112011

10

Fractional Updating Caso 1

Tenemos una nueva experiencia e con B=bi

C=cj

A=a1

Luego n1=n1+1

s=s+1 )

1

1

1()|( 21

++

+=

s

n

s

ncbAp ji

Dr Marcelo G Armentano - ISISTAN - UNICEN

A

B C

Fractional Updating Caso 2

Tenemos una nueva experiencia e con B=bi

C=cj

de A soacutelo sabemos

Luego nk=nk+yk

s=s+1

A

B C

1+

+=

s

ynx kk

k

)()|()|( 21 yyecbApeAp ji ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Fractional Updating Caso general

Tenemos una nueva experiencia e con

Luego nk=nk+zyk

s=s+z

A

B C

Dr Marcelo G Armentano - ISISTAN - UNICEN

zecbp ji =)|(

)()|( 21 yyecbApji

=

zs

zynx kk

k+

+=

Fractional Updating Ejemplo

B

true false

true 06 03

false 04 07

Experiences 10 10

A

B

S=20

n1 n2

Como P(A=true|B=true) = 06 Tenemos

bullN(A=true|B=true) = 06 10 = 6bullN(A=true|B=false)= 03 10 = 3

El total de las cuentas para la variable AbullN(true) = 6 + 3 = 9 bullN(false) = 4 + 7 = 11 Dr Marcelo G Armentano - ISISTAN - UNICEN

Fractional Updating

Dr Marcelo G Armentano - ISISTAN - UNICEN

B

true false

true 063 03

false 037 07

Experiences 11 10

A

B

Despueacutes de una experiencia conbull A=truebull B=true

Obtenemos

06311

10106)|( =

+=== trueBtrueAp

03711

10004)|( =

+=== trueBfalseAp

0310

00013)|( =

+=== falseBtrueAp

0710

00007)|( =

+=== falseBfalseAp

zs

zynx kk

k+

+=

zebp i =)|(

)()|( 21 yyebAp i =Fractional Updating

Dr Marcelo G Armentano - ISISTAN - UNICEN

B

true false

true 0625 032

false 0375 068

Experiences 1067 1033

A

B

Si solo tenemos evidencia de A=true

Obtenemos

06256710

067106)|( =

+=== trueBtrueAp

03756710

067004)|( =

+=== trueBfalseAp

0323310

033013)|( =

+=== falseBtrueAp

0683310

033007)|( =

+=== falseBfalseAp

p(B=true|e) zs

zynx kk

k+

+=

zebp i =)|(

)()|( 21 yyebAp i =

03112011

11

Aprendizaje adaptativo con tablas

de desvanecimiento A veces las observaciones viejas no son tan importantes

como las nuevas en el proceso de adaptacioacuten Entonces tenemos que ldquodesaprenderrdquo u ldquoolvidarrdquo algunas de ellas

Las observaciones nuevas son maacutes importantes que las viejas y por lo tanto se les debe dar maacutes peso durante la adaptacioacuten

Se introduce un factor de desvanecimiento que indica la tasa con la cual se olvidan las observaciones previas 0 no hay adaptacioacuten 1 no hay desvanecimiento

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje adaptativo con tablas

de desvanecimiento

Yes No

Cantidad de experiencias

10 5

P(Smoker=yes) = yes) (yes + no) = 10 15 = 0667

P(Smoker=no) = no) (yes + no) = 5 15 = 0333Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje adaptativo con tablas

de desvanecimiento Smoker=yes Fading factor(s) = 05

(Smoker=yes) = factor (yes-previos) + 1= 05 10 + 1 = 6

(Smoker=no) = factor (no-previos) = 05 5 = 25

(experiencias) = 6 + 25 = 85

P(Smoker=yes) = 6 85 = 07059 P(Somker=no) = 25 85 = 02941

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje estructural

Earthquake Alarm Set

Sound

Burglary Earthquake Alarm Set

Sound

Burglary

Earthquake Alarm Set

Sound

Burglary

Si sobra un arcoSi falta un arco

bull Aumenta el nuacutemero de paraacutemetros a ser estimados

bull Suposiciones erroacuteneas acerca del dominio

bull No puede ser solucionado ajustando los paraacutemetros

bull Suposiciones erroacuteneas acerca del dominio

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje estructural Search and Score

Meacutetrica de puntuacioacuten (Score) Mide la calidad de la estructura graacutefica Se utiliza para decidir cual es la mejor solucioacuten

Algoritmo de buacutesqueda Selecciona un pequentildeo subconjunto de las posibles

redes que tengan una calidad alta Se selecciona la ldquomejorrdquo

Dr Marcelo G Armentano - ISISTAN - UNICEN

Basado en optimizaciones

E B A

ltYNNgt

ltYYYgt

ltNNYgt

ltNYYgt

ltNYYgtE B

A

E

B

A

E

BA

Buscar una estructura que maximice esa funcioacuten

Definir una funcioacuten que evaluacutee queacute tan bien se asemeja el modelo a los datos

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

12

Aprendizaje estructural Tests de independencia

Obtienen las dependencias condicionales y lasindependencias utilizando tests de independenciasentre triplas de variables

Por ejemplo tests estadiacutesticos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo K2 Score and Search Buacutesqueda Greedy Muy eficiente Asume que las variables estaacuten ordenadas Comienza con una red sin arcos En cada iteracioacuten para cada variable Xi el nodo cuyo orden

es previo a Xi y que incrementa la calidad de la red se agrega a =Pa(Xi)

Se repite el proceso hasta que No hay incremento en la calidad de la red Se llega a una red completa

La cantidad de padres puede limitarse

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo B Score and Search

No requiere un ordenamiento previo de las variables

Controlar ciclos

Comienza con un conjunto vaciacuteo de padres

En cada iteracioacuten agrega un arco tal que

No produce ciclos

Maximiza la calidad de la red

El proceso se detiene cuando

No se incrementa la calidad de la red 0 Se llega a una red completa

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PC Tests de Independencia

Dos fases Construccioacuten del esqueleto

Encontrar las direcciones de los arcos mediante tests de independencia

Orientar el resto de los arcos sin producir ciclos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PC Construccioacuten del esqueleto

Comienza con un grafo no dirigido totalmente conectado

Mediante tests de independencia va eliminando arcos que no cumplen la siguiente condicioacuten Dos nodos X e Y estaacuten conectados si y soacutelo si no existe un

subconjunto Sxy del conjunto de veacutertices V tal que I(XY|Sxy) sea verdadero

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PCComienza con un grafo completo no dirigido gpi = 0Repeat

For each X isinisinisinisin VFor each Y isinisinisinisin ADJX

Determinar si existe Ssube ADJX ndashY con |S| = i y I(XY|S)Si este conjunto existe

SXY = SEliminar el arco X-Y

i = i+1Until |ADJX| lelelele i forallforallforallforallX

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

13

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=

i=0

SI

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

SI

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

03112011

14

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

i=1

SI

SXY=SXW=SZW=Y

03112011

15

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

No hay nodos con maacutes de 3 adyacentes

Algoritmo PC Encontrar las direcciones de los arcos mediante tests

de independencia (tomando las variables de a tres) Para cada variable Z con dos adyacentes X e Y

comprueba que no Z no esteacute en Sxy para conectar a X e Y como padres de Z

Z XY

Z XY

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

ZnotinSXY

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

ZnotinSXY

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

TnotinSZW

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

TnotinSZW

03112011

16

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

Se orienta arbitrariamente (evitando ciclos)

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

Herramientas Hugin

httpwwwhugincomProducts_ServicesProductsDemo

Bayesware httpwwwbayeswarecom

JavaBayes httpwww-2cscmuedu~javabayes

Paacutegina de Finn Jensen httpwwwcsaaudk~fvj

Dr Marcelo G Armentano - ISISTAN - UNICEN

Agenda Introduccioacuten

Redes de Bayes

Modelos de Markov Introduccioacuten

Cadenas de Markov

Modelos Ocultos de Markov

Dr Marcelo G Armentano - ISISTAN - UNICEN

Introduccioacuten Modelar dependencias entre siacutembolos de una

secuencia Temporales

En reconocimiento del habla fonemas en una palabra palabras en una oracioacuten (reconocimiento sintaacutectico)

Espaciales Reconocimiento de escritura

Secuencias de genes

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

17

Procesos aleatorios de Markov Una secuencia aleatoria tiene la propiedad de markov si su

distribucioacuten de probabilidades estaacute determinadauacutenicamente por el estado actual Un proceso aleatorio quecumple con esta propiedad se llama un proceso aleatorio de Markov

Cuando los estados son observables cadenas de Markov

Cuando los estados no son observables modelos ocultos de markov (HMM hidden Markov models)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Regla de Bayes

)()|()( 111111 qqPqqqPqqqP ttttt minusminusminus =

)()|()|()( 121211111 qqPqqqPqqqPqqqP ttttttt minusminusminusminusminus =

prod=

minusminus =t

i

iitt qqqPqPqqqP2

11111 )|()()(

Dr Marcelo G Armentano - ISISTAN - UNICEN

Propiedad de Markov

1)|()|( 111 gt= minusminus iforqqPqqqP iiii

)|()|()()|()()( 1121

2

1111 minus=

minusminus == prod tt

t

i

iitt qqPqqPqPqqPqPqqqP

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov Pueden verse como un grafo de transicioacuten de estados

con probabilidades en sus arcos

Ejemplo Generacioacuten de Texto Aleatorio Un nodo por cada letra uacutenica observada

Si luego de la letra X observo la letra Y agrego un arco de X a Y Si el arco ya existe incremento la cantidad de observaciones

asociada al arco

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTAL

03112011

18

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTALTAL

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTALTALTOTOTALTOTOTOTOTALhellip

Cadenas de Markov Texto aleatorio generado a partir de un modelo

entrenado con el primer capiacutetulo de ldquo100 antildeos de soledadrdquo de Gabriel Garciacutea Marquez

Mapl idoca Uno domen quespiate meacute s abrdiacuteaton quadelaros del y en ioacutera puacutellade y antildeosar soacute Ar e Pon s toacutentun llose fase co tus pe foaciguela tr de paquros losintun oceton deros picaras ro pigeltexpa Arrcoacuten asadosen ca hiacuteracugidend madel cos pelo ca hamuy cuncte preraletrapuina venco sosueacute gifuas y estiogidire y ple peno do dociemanoacutey den matrones s Arseacutelades lelanelo lacides Jombidorentioacute lla caqueacutetrotan de ciechitevo pa e troacute ulega teilizaban riacuteaden zopendesellaundo u ca tioroserar vorasun plara en fue dempa teresen y umusmpio y sedes s s ezordel rugexhas darmabioacute

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N Extensioacuten a las cadenas de Markov en las que cada

estados representa una secuencia de N observaciones consecutivas

N-gramas

Ocurrencias

che 60

chi 25

cha 10

cho 5

ch

ch se observa 100 veces de las cualeshellip

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N=2

ISMI

SS

SI

IP

PP

PI

10

1010

10

10o5 o5

M I S S I S S I P P I

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N=3

ISSMIS

SSI

SIS

SIP

IPP

PPI

10

10

10

10

10

o5

o5

M I S S I S S I P P I

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

19

Cadenas de Markov de orden N N=1

Modelo fiel a las frecuencias de cada par de letras

No representa bien el lenguaje natural

Dr Marcelo G Armentano - ISISTAN - UNICEN

Mapl idoca Uno domen quespiate meacute s abrdiacuteaton quadelaros del y en ioacutera puacutellade y antildeosar soacute Ar e Pon s toacutentun llose fase co tus pe foaciguela tr de paquros losintun oceton deros picaras ro pigeltexpa Arrcoacuten asadosen ca hiacuteracugidend madel cos pelo ca hamuy cuncte preraletrapuina venco sosueacute gifuas y estiogidire y ple peno do dociemanoacutey den matrones s Arseacutelades lelanelo lacides Jombidorentioacute lla caqueacutetrotan de ciechitevo pa e troacute ulega teilizaban riacuteaden zopendesellaundo u ca tioroserar vorasun plara en fue dempa teresen y umusmpio y sedes s s ezordel rugexhas darmabioacute

Cadenas de Markov de Orden N Texto aleatorio generado N=2

Muca donios y hombre llas res pla plambregrimanteoacute el la sioacute entude Salemo fue uncioacuten co crioacuten Tendiacutea en sula ta chicalque le siezblena que tras senterosagareto mdashgruel res entorasanesbazuerasabepaacuten enda con de in inagercamieropito don cuarecior siblimena tero en joacute te Fuedo paresegua pespurantespuen dos porodad de la que cabaquentra denabrencestiminotescuyoacute quel mor loseacute Acturo pen for es ella guanos mitadraratientoacuten condiacutea la allado quen se logoacute la balaritiva triblesala soacutelos habalcabiempor ere griacutea to borse allas laciasiacutemisible por pocaza los so ola la nintildeos cuaro eacutel y lar espiendismo antildeonetrouna que cad fuerofocieres resa combrempuros parsu misiblocerma anoceraya elos no a y ejoacute desta una tioacuten

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Texto aleatorio generado N=3

Muchetextremecitano conveniencia Cuando por acora pre hablancie el rudienteel pusierantado poblado pago y aumentar animaginacioacuten aza des examillos maacutes gigaciera suellevoacute los que inte la viajes rayos imales hacedor y el teacuterminuto pueses siles expedas mocha que la tanos ser en que vez lles la como la maacutes pase lo uacutenicos romera lado JoseacuteArcadiosas antes al realejo en que de dejoacute todidos tre distilado infinito desco a le se para ver bolada alquiacutedea

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Texto aleatorio generado N=4

Muchos y salambioacute un chaleco de habiacutea burla como el pasoacute la resto de aban su fue ser prendedor condo una buena de las casaquimisterios Joseacute Arcadio Buendiacutea sino esentoacute como un en aquel tambor quedoacute recuerdo de un fugitivo en que en que sierrar los metalejos a puestaban de una tersas y el mundo sino consolas y veiacutean desar a la casa cuyos sin comer Aureliano conjuro de el esperso de piedras

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N = 3-4

Comienzan a aparecer palabras maacutes reconocibles

Palabras de muchas letras aparecen frecuentemente ldquopegadasrdquo a otras palabras

Cuanto maacutes extenso es el texto de entrenamiento maacutes variedad habraacute en la salida

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Entrenamiento con palabras completas (N=1)

Texto generado

Se habiacutea que construyoacute trampas y sus iniciales encima con una insolacioacuten por mares incoacutegnitos visitar territorios maacutes emprendedor que se hundiacutean en las maravillas del mundo Era una explicacioacuten inmediata Joseacute Arcadio Buendiacutea la resonancia hueca de helechos y entonces una truculenta demostracioacuten con un aacutespero sabor de fusilamiento el interior y tambores y a prepararse para llevaacuterselos a palmo a conocerlo mantuvo puesta por los burros Asiacute fue desde haciacutea mucho tiempo porque el mundo se asomaba al caramelo vulgar que un paacutenico cuando llegoacute la judiacutea

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

20

Cadenas de Markov de Orden N Entrenamiento con palabras completas (N=4)

Texto generado

Consideraba como una burla de su travieso destino haber buscado el mar sin encontrarlo al precio de sacrificios y penalidades sin cuento y haberlo encontrado entonces sin buscarlo atravesado en su camino como un obstaacuteculo insalvable Uacutersula no volvioacute a acordarse de la intensidad de esa mirada hasta un diacutea en que el pequentildeo Aureliano a la edad de tres antildeos entroacute a la cocina en el momento en que ella retiraba del fogoacuten y poniacutea en la mesa una olla de caldo hirviendo Aquel olor mordiente quedariacutea para siempre en su memoria vinculado al recuerdo de Melquiacuteades

Dr Marcelo G Armentano - ISISTAN - UNICEN

Modelos de Markov Conjunto de estados

El proceso se mueve de un estado a otro generando unasecuencia de estados

Propiedad de Markov la probabilidad de cada estadosiguiente depende soacutelo del estado previo

bull Para definir un modelo de Markov deben especificarselas siguientes probabilidades

21 Nsss K

KK 21 ikii sss

)|()|( 1121 minusminus = ikikikiiik ssPssssP K

)|( jiij ssPa =)( ii sP=π

Probabilidad del estado inicial Probabilidad de transicioacuten de estados

Dr Marcelo G Armentano - ISISTAN - UNICEN

Lluvioso Seco

0703

02 08

Ejemplo de modelo de Markov

Dos posibles estados lsquoLluviosorsquo ylsquoSecorsquo Probabilidades de Transicioacuten

P(lsquoLluviosorsquo|lsquoLluviosorsquo)=03 P(lsquoSecorsquo|lsquoLluviosorsquo)=07

P(lsquoLluviosorsquo|lsquoSecorsquo)=02 P(lsquoSecorsquo|lsquoSecorsquo)=08

Probabilidades iniciales

P(lsquoLluviosorsquo)=04 P(lsquoSecorsquo)=06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Probabilidad de una secuencia Por la probabilidad de Markov

P(lsquoSecorsquorsquoSecorsquorsquoLluviosorsquorsquoLluviosorsquo ) =P(lsquoLluviosorsquo|rsquoLluviosorsquo) P(lsquoLluviosorsquo|rsquoSecorsquo)

P(lsquoSecorsquo|rsquoSecorsquo) P(lsquoSecorsquo) = 03020806 = 00288

)()|()( 12112121 minusminus= ikiiikiiikikii sssPssssPsssP KKK

)()|()|()|(

)()|(

112211

1211

iiiikikikik

ikiiikik

sPssPssPssP

sssPssP

K

KK

minusminusminus

minusminus

=

==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Underflow El producto de muchas probabilidades entre 0 y 1

puede resultar en underflow

Dado que log(xy) = log(x) + log(y) es mejor realizar la suma del logaritmo de las probabilidades que multiplicarlas

El modelo con el mayor puntaje final de probabilidad logariacutetmica sigue siendo la maacutes probable

Dr Marcelo G Armentano - ISISTAN - UNICEN

Hipoacutetesis del maacuteximo a posteriori

)|(maxarg DhPhHh

MAPisin

equiv

)(

)()|(maxarg

DP

hPhDP

Hhisin

=

)()|(maxarg hPhDPHhisin

=

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

21

Modelos Ocultos de Markov (HMM)

Conjunto de estados El proceso de mueve de un estado a otro generando una secuencia de

estados

Propiedad de Markov La probabilidad de cada estado depende solo del estado actual

Los estados no son visibles pero cada estado genera aleatoriamente unade las posibles observaciones (estados visibles)

Para definir un modelo oculto de Markov se deben especificar las siguientes probabilidades Matriz de probabilidades transicioacuten A=(aij) aij= P(si | sj) Matriz de probabilidades de observacioacuten B=(bi (vm )) bi(vm )= P(vm | si) Vector de probabilidades iniciales π=(πi) πi = P(si)

Los modelos quedan definidos por la tripla M=(A B π)

21 Nsss K

KK 21 ikii sss

)|()|( 1121 minusminus = ikikikiiik ssPssssP K

21 Mvvv K

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

Baja Alta

0703

02 08

Lluvioso Seco

06 0604 04

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

bull Dos estados correspondientes a la presioacuten atmosfeacutericabull lsquoAltarsquo y lsquoBajarsquo

bull Dos posibles observaciones bull lsquoLluviosorsquo y lsquoSecorsquo

bull Probabilidades de Transicioacuten

bull P(lsquoBajarsquo|lsquoBajarsquo)=03 P(lsquoAltarsquo|lsquoBajarsquo)=07 P(lsquoBajarsquo|lsquoAltarsquo)=02

P(lsquoAltarsquo|lsquoAltarsquo)=08bull Probabilidades de Observacioacuten

bull P(lsquoLluviosorsquo|lsquoBajarsquo)=06 P(lsquoSecorsquo|lsquoBajarsquo)=04

P(lsquoLluviosorsquo|lsquoAltarsquo)=04 P(lsquoSecorsquo|lsquoAltarsquo)=03 bull Probabilidades iniciales

bull P(lsquoBajarsquo)=04 P(lsquoAltarsquo)=06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM Prediccioacuten del tiempo de acuerdo al estado de un alga

empapado huacutemedo casi seco seco

nubes lluviasol

Oculto

Observable

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

Empapado Huacutemedo Casi seco Seco

Sol 060 020 015 005

Nubes 025 025 025 025

Lluvia 005 010 035 050

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

22

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

i P(qt+1=S1|qt=Si)

P(qt+1=S2|qt=Si)

P(qt+1=Sj|qt=Si)

P(qt+1=SN

|qt=Si)

1 a11 a12 hellip a1j hellip a1N

2 a21 a22 hellip a2j hellip a2N

3 a31 a32 hellip a3j hellip a3N

hellip

i ai1 ai2 hellip aij hellip aiN

hellip

N aN1 aN2 hellip aNj hellip aNN

Todas estas tablas son

iguales

aij = P (qt+1=sj|qt=si)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

i P(Ot=1|qt=Si) P(Ot=2|qt=Si) P(Ot=j|qt=Si) P(Ot=N|qt=Si)

1 b1(1) b1(2) hellip b1(j) hellip b1(N)2 b2(1) b2(2) hellip b2(j) hellip b2(N)3 b3(1) b3(2) hellip b3(j) hellip b3(N)hellip

i Bi(1) bi(2) hellip bi(j) hellip bi(N)hellip

N bN(1) bN(2) hellip bN(j) hellip bN(N)

bi(j) = P (Ot=j|qt=si)

Todas estas tablas son

iguales

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

un enrejado

s1

s2

si

sN

s1

s2

si

sN

s1

s2

sj

sN

s1

s2

si

sN

a1j

a2j

aij

aNj

1 k k+1 K

o1 ok ok+1 oKObservaciones

Tiempo

Ejemplo Casino tramposo

Un casino tiene dos dados Dado ldquojustordquo

P(1) = P(2) = P(3) = P(5) = P(6) = 16 Dado cargado

P(1) = P(2) = P(3) = P(4) = P(5) = 110P(6) = 12

El casino alterna entre el dado justo y el cargado una vezcada 20 turnos

Problemas a resolver con HMM Evaluacioacuten

Dado un HMM M=(A B π) y una secuencia de observaciones O=o1 o2 oK calcular la probabilidad de que el modelo M haya generado la secuencia O

Dr Marcelo G Armentano - ISISTAN - UNICEN

EvaluacioacutenDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestCuan probable es esta secuencia dado nuestromodelo de como opera el casino

Este es el problema de EVALUACIOacuteN en HMMs

03112011

23

Problemas a resolver con HMM Decodificacioacuten o inferencia

Dado un HMM M=(A B π) y una secuencia de observaciones O=o1 o2 oK calcular la secuencia de estados ocultos Si que maacutes probablemente produjo la secuencia de observaciones O

Dr Marcelo G Armentano - ISISTAN - UNICEN

DecodificacioacutenDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestQue partes de la secuencia fueron generadas por el dado cargado y cuales por el dado justo

Este es el problema de DECODIFICACIOacuteN en HMMs

Problemas a resolver con HMM Aprendizaje

Dado un conjunto de secuencias de observaciones de entrenamiento O=o1 o2 oK y la estructura general de HMM (cantidad de estados ocultos y cantidad de estados visibles) determinar los paraacutemetros del HMM M=(A B π) que mejor se ajustan a los datos de entrenamiento

Dr Marcelo G Armentano - ISISTAN - UNICEN

AprendizajeDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestCoacutemo estaacute cargado el dado cargado iquestCada cuantocambia el casino entre el dado cargado y el justo

Este es el problema de APRENDIZAJE en HMMs

El HMM del casino tramposo

JUSTO CARGADO

005

005

095095

P(1|Justo) = 16P(2|Justo) = 16P(3|Justo) = 16P(4|Justo) = 16P(5|Justo) = 16P(6|Justo) = 16

P(1|Cargado) = 110P(2|Cargado) = 110P(3|Cargado) = 110P(4|Cargado) = 110P(5|Cargado) = 110P(6|Cargado) = 12

Ejemplo reconocimiento de

palabras Se asume que los caracteres estaacuten separados

El reconocedorde caracteres da como salida la probabilidad de que una imagen corresponda a un caracterparticular P(caracter|imagen)

05

003

0005

031z

c

b

a

Estado Oculto

Estado Observable

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

24

Ejemplo reconocimiento de

palabras Estados Ocultos del HMM caracteres

Estados Observables imagenes de caracteres

Probabilidades de Observacioacutenαv

( ) ( ))|()( ii svPvbB αα ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo reconocimiento de

palabras Si se conoce el diccionario es posible construir un modelo

individual para cada palabra

bull Problema de evaluacioacuten reconocer la palabra en unaimagen es equivalente a evaluar un conjunto de modelos

amigos a m i g o s

buacutefalo b uacute f a l o

05 003 04 06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo reconocimiento de

palabras Podemos construir un HMM para todas las palabras

Estados ocultos los caracteres de las palabras

Probabilidades de transicioacuten calculadas a partir de modelos del lenguaje

Observaciones y probabilidades de observacioacuten iguales al ejemplo anterior

Problema de decodificacioacuten encontrar la secuencia de estados ocultos que maacutes probablemente generaron la imagen

a m

i g

o

s

t

b v

f

u

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

Forward-Backward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward

Seco Huacutemedo EmpapadoObs

Sol

Nubes

Lluvia

Sol

Nubes

Lluvia

Sol

Nubes

Lluvia

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward Pr(Seco Huacutemedo Empapado|M) =

Pr(seco huacutemedo empapado|sol sol sol) +

Pr(seco huacutemedo empapado|sol nubes sol) +

hellip

Pr(seco huacutemedo empapado|lluvia lluvia lluvia)

iexcliexclMuy Costoso

33 = 27 caacutelculos

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

25

Algoritmo Forward Reduccioacuten de la complejidad

Probabilidad parcial de alcanzar un estado intermedio en el entramado

Yk1 Yk2 hellip YkT

Sol

Nubes

Lluvia

Nubes

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward αt(j)= Pr(obs|estado oculto es j)

Pr( todos los caminos al estado j en el tiempo t)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward En el tiempo t=1

En el tiempo t gt1

α1(j)=π(j) Pr(obs|estado j)

αt(j)=Pr(todos los caminos a j) Pr(obs|estado j)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward

Terminacioacuten

Dr Marcelo G Armentano - ISISTAN - UNICEN

sum=

=n

j

T jMObs1

)()|Pr( α

sum=

++ =n

i

ijttjt ajobj1

11 )()()( αα

Algoritmo Forward

Sol

α1(sol)=π(sol) bsol(humedo)

Nubes

α1(nubes)=π(nubes) bnubes(humedo)

Lluvia

α1(lluvia)=π(lluvia) blluvia(humedo)

)()(secb )(nubesi1nubes2 sum sdotsdot=

iaionubes αα

Nubes

asolnubes

anubesnubes

alluvianubes

Huacutemedo Seco

Algoritmo Backward

Se define la variable β

)|()( 21 λβ iqoooPi tTttt == ++

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

26

Algoritmo Backward

Inicializacioacuten

Caacutelculo

Finalizacioacuten

1)( =jTβ

1 1

1

( ) ( ) ( )N

t t ij j t

j

i j a b oβ β + +=

=sum

sum=

=N

i

i iobiOp1

11 )()()()|( βπλ 11minus= Tt

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

Forward- Backward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Encontrar la secuencia maacutes probable de estados

ocultos dada una secuencia de observaciones

Ejemplo etiquetar palabras en una oracioacuten con su funcioacuten sintaacutectica

iquestEstados observables iquestEstados ocultos

Juan come naranjasNS NP OD

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Probabilidad parcial δ de alcanzar un estado

intermedio particular en el entramado

δ representa la probabilidad del camino maacutes probable a un estado

Para cada estado final hay un camino maacutes probable a ese estado

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi δ(it) es la maacutexima probabilidad de todas las

secuencias que terminan en el estado i en el tiempo t

En t=T tenemos las mejores probabilidades parciales y los mejores caminos parciales

El mejor camino global a T es el que lleva al estado con la mayor probabilidad

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En t=1

)()()1( 1obii isdot= πδ

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

27

Algoritmo de Viterbi En tgt1

A

B

C

Xhellip

Tltt-1 t-1 t

Pr(x en T=t) = maxi=ABC Pr(i en T=t-1) Pr(X|i) Pr(Ot|X)

)())1((max)( tiijj

obajtit sdotsdotminus= δδDr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En cada tiempo t recordamos el estado j que generoacute

δ(ti)

Se reconstruye el camino utilizando los punteros φhasta el tiempo t=1

ijj

ajtit )1(max)( sdotminus= δφ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi

)(max1

iP TNi

δlele

=lowast

)(maxarg1

iq TNi

T δlele

lowast =

P da la probabilidad de los mejores los estados

qT is la secuencia de estados oacuteptima(Q = q1q2hellipqT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

ForwardBackward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Dada un conjunto de secuencias de observaciones O=o1 o2

oK y la estructura general del HMM (cantidadde estados ocultos

y visibles) determinar los paraacutemetros del modelo M=(A B π) que mejor se ajustan a los datos de entrenamiento es decir

que maximice P(O | M)

Se utiliza el algoritmo de maximizacioacuten de la esperanza para

encontrar un maacuteximo local de P(O | M) algoritmo Baum-Welch

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Si los datos de entrenamiento tienen informacioacuten

acerca de la secuencia de estados ocultos los paraacutemetros se estiman como

xsestransicion

ssestransicionssPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

sveces

senodenesobservaciosoPob

)|()( ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

28

Algorimo Baum-Welch Idea general

xsestransiciondeesperado

ssestransiciondeesperadossPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

svecesdeesperado

senodenesobservaciodeesperadosoPob

)|()( ==

1)( === tparasenvecesdeesperadosP iiiπ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

ξt(ij)= P(qt= si qt+1= sj |o1 o2 oT)

ξt(ij)=P(qt= si qt+1= sj o1 o2 oT)

P(o1 o2 oT)=

P(qt= si o1 o2 ot) aij bj (ot+1 ) P(ot+2 oT | qt+1= sj ) P(o1 o2 oT)

=

=αt(i) aij bj (ot+1 ) βt+1(j)

ΣiΣj αt(i) aij bj (ot+1 ) βt+1(j)

αt(i) aij bj (ot+1 ) βt+1(j)

Σi αt(i) βt(i)Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

tiempo

Estados ocultos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch Definimos γt(i) como la probabilidad de estar en el

estado i en el tiempo t dadas las observaciones

Σt γt(i) - cantidad esperada de veces que visitoel estado i

Σt ξt(ij) - cantidad esperada de transiciones

sum=

=N

j

tt jii1

)()( ξγ

ji rarr

γt(i)= P(qt= si |o1 o2 oT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

sumsum

=)(

)(ˆ

i

jia

t

t

ijγ

ξ

sum

sum ==

)(

)()(ˆ

j

job

t

oot t

kjkt

γ

γ

)(ˆ1 iγπ = la frecuencia esperada del estado i en t=1

nuacutemero esperado de transiciones desde el estado i al estado j sobre la cantidad esperada de transiciones desde el estado i

cantidad de veces que se estuvo en el estado j observando el siacutembolo k sobre la cantidad de veces que se estuvo en el estado j

Dr Marcelo G Armentano - ISISTAN - UNICEN

Bibliografiacutea Bayesian Networks and Decision Graphs - Finn V

Jensen and Thomas D Nielsen - Springer Verlag -Second Edition - 2007

A tutorial on hidden Markov models and selected applications in speech recognition - Lawrence R Rabiner - Proceedings of the IEEE Vol 77 Nordm2 pp 257-286 - 1989

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

29

iquestConsultas

Dr Marcelo G Armentano - ISISTAN - UNICEN

Page 8: redes bayesianas UNICEN.pdf

03112011

8

Construccioacuten de la red Coacutemo obtener la estructura de la red

A partir del conocimiento de un experto

Algoritmos de aprendizaje en Redes de Bayes Datos completos o incompletos

Estructura conocida o desconocida

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje de Redes de Bayes

E

R

B

A

C

9 1

e

b

e

7 3

99 01

8 2

be

b

b

e

BE P(A | EB)

Datos

+Informacioacuten

Previa

Aprendizaje

Dr Marcelo G Armentano - ISISTAN - UNICEN

Estructura conocida datos completos

E B

A9 1

e

b

e

7 3

99 01

8 2

be

b

b

e

BE P(A | EB)

e

b

e

be

b

b

e

BE P(A | EB) E B

A

bull La estructura de la red estaacute especificada

bull Se necesitan estimar los paraacutemetros (probabilidades)

bull Los datos no contienen valores faltantes

Aprendizaje

E B A

ltYNNgt

ltYNYgt

ltNNYgt

ltNYYgt

ltNYYgt

Dr Marcelo G Armentano - ISISTAN - UNICEN

E B

A9 1

e

b

e

7 3

99 01

8 2

be

b

b

e

BE P(A | EB)

e

b

e

be

b

b

e

BE P(A | EB) E B

A

bull La estructura de la red no estaacute especificada

ndash Se necesitan seleccionar los arcos y estimar los paraacutemetros

bull Los datos no contienen valores faltantes

E B A

ltYNNgt

ltYNYgt

ltNNYgt

ltNYYgt

ltNYYgtAprendizaje

Estructura desconocida datos completos

Dr Marcelo G Armentano - ISISTAN - UNICEN

E B

A9 1

e

b

e

7 3

99 01

8 2

be

b

b

e

BE P(A | EB)

e

b

e

be

b

b

e

BE P(A | EB) E B

A

bull La estructura de la red estaacute especificada

bull Los datos contienen valores faltantes

ndash Se necesitan considerar asignaciones a los valores faltantes

E B A

ltYNNgt

ltYYgt

ltNNYgt

ltNYgt

ltYYgtAprendizaje

Estructura conocida datos incompletos

E B

A9 1

e

b

e

7 3

99 01

8 2

be

b

b

e

BE P(A | EB)

e

b

e

be

b

b

e

BE P(A | EB)E B

A

bull La estructura de la red no estaacute especificada

bull Se necesitan seleccionar los arcos y estimar los paraacutemetros

bull Los datos contienen valores faltantes

ndash Se necesitan considerar asignaciones a los valores faltantes

E B A

ltYNNgt

ltYYgt

ltNNYgt

ltNYgt

ltYYgt

Aprendizaje

Estructura desconocida datos incompletos

Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin

03112011

9

Aprendizaje de Redes de Bayes Aprendizaje parameacutetrico

Aprender los paraacutemetros que describen el grado de dependencia entre las variables del dominio

Aprendizaje estructural Aprender las dependencias entre las variables que

intervienen en el problema

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje parameacutetrico Aprendizaje Adaptativo

Se utiliza cuando se quieren adaptar todas o algunas de las tablas de probabilidad condicional a partir de un nuevo conjunto de datos

Aprendizaje Batch Se utiliza cuando se quieren generar las tablas de

probabilidad condicional a partir de los datos Ej EM (Expectation Maximization)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje adaptativo La adaptacioacuten es el proceso de refinar las

probabilidades condicionales especificadas en la Red de Bayes teniendo en cuenta los resultados de experimentos o casos reales

Se utilizan tablas de experiencia yo tablas de desvanecimiento

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje adaptativo Un paso del proceso de aprendizaje adaptativo consiste

de ingresar evidencia

propagar la evidencia

actualizar (adaptar) las tablas de probabilidad condicional y las tablas de experiencia

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje adaptativo con tablas

de experiencia

Yes No

Cantidad de experiencias

10 5

P(Smoker=yes) = yes) (yes + no) = 10 15 = 0667

P(Smoker=no) = no) (yes + no) = 5 15 = 0333Dr Marcelo G Armentano - ISISTAN - UNICEN

Fractional Updating Utiliza tablas de experiencia

Suposiciones Independencia Global

Independencia Local

Sean p(A|bicj)=(x1x2)

(n1n2) las experiencias de A

s = n1 + n2 cantidad total de experiencias

A

B C

)()|( 21

s

n

s

ncbAp ji =

Dr Marcelo G Armentano - ISISTAN - UNICEN

Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin

03112011

10

Fractional Updating Caso 1

Tenemos una nueva experiencia e con B=bi

C=cj

A=a1

Luego n1=n1+1

s=s+1 )

1

1

1()|( 21

++

+=

s

n

s

ncbAp ji

Dr Marcelo G Armentano - ISISTAN - UNICEN

A

B C

Fractional Updating Caso 2

Tenemos una nueva experiencia e con B=bi

C=cj

de A soacutelo sabemos

Luego nk=nk+yk

s=s+1

A

B C

1+

+=

s

ynx kk

k

)()|()|( 21 yyecbApeAp ji ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Fractional Updating Caso general

Tenemos una nueva experiencia e con

Luego nk=nk+zyk

s=s+z

A

B C

Dr Marcelo G Armentano - ISISTAN - UNICEN

zecbp ji =)|(

)()|( 21 yyecbApji

=

zs

zynx kk

k+

+=

Fractional Updating Ejemplo

B

true false

true 06 03

false 04 07

Experiences 10 10

A

B

S=20

n1 n2

Como P(A=true|B=true) = 06 Tenemos

bullN(A=true|B=true) = 06 10 = 6bullN(A=true|B=false)= 03 10 = 3

El total de las cuentas para la variable AbullN(true) = 6 + 3 = 9 bullN(false) = 4 + 7 = 11 Dr Marcelo G Armentano - ISISTAN - UNICEN

Fractional Updating

Dr Marcelo G Armentano - ISISTAN - UNICEN

B

true false

true 063 03

false 037 07

Experiences 11 10

A

B

Despueacutes de una experiencia conbull A=truebull B=true

Obtenemos

06311

10106)|( =

+=== trueBtrueAp

03711

10004)|( =

+=== trueBfalseAp

0310

00013)|( =

+=== falseBtrueAp

0710

00007)|( =

+=== falseBfalseAp

zs

zynx kk

k+

+=

zebp i =)|(

)()|( 21 yyebAp i =Fractional Updating

Dr Marcelo G Armentano - ISISTAN - UNICEN

B

true false

true 0625 032

false 0375 068

Experiences 1067 1033

A

B

Si solo tenemos evidencia de A=true

Obtenemos

06256710

067106)|( =

+=== trueBtrueAp

03756710

067004)|( =

+=== trueBfalseAp

0323310

033013)|( =

+=== falseBtrueAp

0683310

033007)|( =

+=== falseBfalseAp

p(B=true|e) zs

zynx kk

k+

+=

zebp i =)|(

)()|( 21 yyebAp i =

03112011

11

Aprendizaje adaptativo con tablas

de desvanecimiento A veces las observaciones viejas no son tan importantes

como las nuevas en el proceso de adaptacioacuten Entonces tenemos que ldquodesaprenderrdquo u ldquoolvidarrdquo algunas de ellas

Las observaciones nuevas son maacutes importantes que las viejas y por lo tanto se les debe dar maacutes peso durante la adaptacioacuten

Se introduce un factor de desvanecimiento que indica la tasa con la cual se olvidan las observaciones previas 0 no hay adaptacioacuten 1 no hay desvanecimiento

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje adaptativo con tablas

de desvanecimiento

Yes No

Cantidad de experiencias

10 5

P(Smoker=yes) = yes) (yes + no) = 10 15 = 0667

P(Smoker=no) = no) (yes + no) = 5 15 = 0333Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje adaptativo con tablas

de desvanecimiento Smoker=yes Fading factor(s) = 05

(Smoker=yes) = factor (yes-previos) + 1= 05 10 + 1 = 6

(Smoker=no) = factor (no-previos) = 05 5 = 25

(experiencias) = 6 + 25 = 85

P(Smoker=yes) = 6 85 = 07059 P(Somker=no) = 25 85 = 02941

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje estructural

Earthquake Alarm Set

Sound

Burglary Earthquake Alarm Set

Sound

Burglary

Earthquake Alarm Set

Sound

Burglary

Si sobra un arcoSi falta un arco

bull Aumenta el nuacutemero de paraacutemetros a ser estimados

bull Suposiciones erroacuteneas acerca del dominio

bull No puede ser solucionado ajustando los paraacutemetros

bull Suposiciones erroacuteneas acerca del dominio

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje estructural Search and Score

Meacutetrica de puntuacioacuten (Score) Mide la calidad de la estructura graacutefica Se utiliza para decidir cual es la mejor solucioacuten

Algoritmo de buacutesqueda Selecciona un pequentildeo subconjunto de las posibles

redes que tengan una calidad alta Se selecciona la ldquomejorrdquo

Dr Marcelo G Armentano - ISISTAN - UNICEN

Basado en optimizaciones

E B A

ltYNNgt

ltYYYgt

ltNNYgt

ltNYYgt

ltNYYgtE B

A

E

B

A

E

BA

Buscar una estructura que maximice esa funcioacuten

Definir una funcioacuten que evaluacutee queacute tan bien se asemeja el modelo a los datos

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

12

Aprendizaje estructural Tests de independencia

Obtienen las dependencias condicionales y lasindependencias utilizando tests de independenciasentre triplas de variables

Por ejemplo tests estadiacutesticos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo K2 Score and Search Buacutesqueda Greedy Muy eficiente Asume que las variables estaacuten ordenadas Comienza con una red sin arcos En cada iteracioacuten para cada variable Xi el nodo cuyo orden

es previo a Xi y que incrementa la calidad de la red se agrega a =Pa(Xi)

Se repite el proceso hasta que No hay incremento en la calidad de la red Se llega a una red completa

La cantidad de padres puede limitarse

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo B Score and Search

No requiere un ordenamiento previo de las variables

Controlar ciclos

Comienza con un conjunto vaciacuteo de padres

En cada iteracioacuten agrega un arco tal que

No produce ciclos

Maximiza la calidad de la red

El proceso se detiene cuando

No se incrementa la calidad de la red 0 Se llega a una red completa

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PC Tests de Independencia

Dos fases Construccioacuten del esqueleto

Encontrar las direcciones de los arcos mediante tests de independencia

Orientar el resto de los arcos sin producir ciclos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PC Construccioacuten del esqueleto

Comienza con un grafo no dirigido totalmente conectado

Mediante tests de independencia va eliminando arcos que no cumplen la siguiente condicioacuten Dos nodos X e Y estaacuten conectados si y soacutelo si no existe un

subconjunto Sxy del conjunto de veacutertices V tal que I(XY|Sxy) sea verdadero

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PCComienza con un grafo completo no dirigido gpi = 0Repeat

For each X isinisinisinisin VFor each Y isinisinisinisin ADJX

Determinar si existe Ssube ADJX ndashY con |S| = i y I(XY|S)Si este conjunto existe

SXY = SEliminar el arco X-Y

i = i+1Until |ADJX| lelelele i forallforallforallforallX

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

13

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=

i=0

SI

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

SI

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

03112011

14

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

i=1

SI

SXY=SXW=SZW=Y

03112011

15

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

No hay nodos con maacutes de 3 adyacentes

Algoritmo PC Encontrar las direcciones de los arcos mediante tests

de independencia (tomando las variables de a tres) Para cada variable Z con dos adyacentes X e Y

comprueba que no Z no esteacute en Sxy para conectar a X e Y como padres de Z

Z XY

Z XY

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

ZnotinSXY

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

ZnotinSXY

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

TnotinSZW

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

TnotinSZW

03112011

16

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

Se orienta arbitrariamente (evitando ciclos)

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

Herramientas Hugin

httpwwwhugincomProducts_ServicesProductsDemo

Bayesware httpwwwbayeswarecom

JavaBayes httpwww-2cscmuedu~javabayes

Paacutegina de Finn Jensen httpwwwcsaaudk~fvj

Dr Marcelo G Armentano - ISISTAN - UNICEN

Agenda Introduccioacuten

Redes de Bayes

Modelos de Markov Introduccioacuten

Cadenas de Markov

Modelos Ocultos de Markov

Dr Marcelo G Armentano - ISISTAN - UNICEN

Introduccioacuten Modelar dependencias entre siacutembolos de una

secuencia Temporales

En reconocimiento del habla fonemas en una palabra palabras en una oracioacuten (reconocimiento sintaacutectico)

Espaciales Reconocimiento de escritura

Secuencias de genes

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

17

Procesos aleatorios de Markov Una secuencia aleatoria tiene la propiedad de markov si su

distribucioacuten de probabilidades estaacute determinadauacutenicamente por el estado actual Un proceso aleatorio quecumple con esta propiedad se llama un proceso aleatorio de Markov

Cuando los estados son observables cadenas de Markov

Cuando los estados no son observables modelos ocultos de markov (HMM hidden Markov models)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Regla de Bayes

)()|()( 111111 qqPqqqPqqqP ttttt minusminusminus =

)()|()|()( 121211111 qqPqqqPqqqPqqqP ttttttt minusminusminusminusminus =

prod=

minusminus =t

i

iitt qqqPqPqqqP2

11111 )|()()(

Dr Marcelo G Armentano - ISISTAN - UNICEN

Propiedad de Markov

1)|()|( 111 gt= minusminus iforqqPqqqP iiii

)|()|()()|()()( 1121

2

1111 minus=

minusminus == prod tt

t

i

iitt qqPqqPqPqqPqPqqqP

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov Pueden verse como un grafo de transicioacuten de estados

con probabilidades en sus arcos

Ejemplo Generacioacuten de Texto Aleatorio Un nodo por cada letra uacutenica observada

Si luego de la letra X observo la letra Y agrego un arco de X a Y Si el arco ya existe incremento la cantidad de observaciones

asociada al arco

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTAL

03112011

18

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTALTAL

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTALTALTOTOTALTOTOTOTOTALhellip

Cadenas de Markov Texto aleatorio generado a partir de un modelo

entrenado con el primer capiacutetulo de ldquo100 antildeos de soledadrdquo de Gabriel Garciacutea Marquez

Mapl idoca Uno domen quespiate meacute s abrdiacuteaton quadelaros del y en ioacutera puacutellade y antildeosar soacute Ar e Pon s toacutentun llose fase co tus pe foaciguela tr de paquros losintun oceton deros picaras ro pigeltexpa Arrcoacuten asadosen ca hiacuteracugidend madel cos pelo ca hamuy cuncte preraletrapuina venco sosueacute gifuas y estiogidire y ple peno do dociemanoacutey den matrones s Arseacutelades lelanelo lacides Jombidorentioacute lla caqueacutetrotan de ciechitevo pa e troacute ulega teilizaban riacuteaden zopendesellaundo u ca tioroserar vorasun plara en fue dempa teresen y umusmpio y sedes s s ezordel rugexhas darmabioacute

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N Extensioacuten a las cadenas de Markov en las que cada

estados representa una secuencia de N observaciones consecutivas

N-gramas

Ocurrencias

che 60

chi 25

cha 10

cho 5

ch

ch se observa 100 veces de las cualeshellip

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N=2

ISMI

SS

SI

IP

PP

PI

10

1010

10

10o5 o5

M I S S I S S I P P I

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N=3

ISSMIS

SSI

SIS

SIP

IPP

PPI

10

10

10

10

10

o5

o5

M I S S I S S I P P I

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

19

Cadenas de Markov de orden N N=1

Modelo fiel a las frecuencias de cada par de letras

No representa bien el lenguaje natural

Dr Marcelo G Armentano - ISISTAN - UNICEN

Mapl idoca Uno domen quespiate meacute s abrdiacuteaton quadelaros del y en ioacutera puacutellade y antildeosar soacute Ar e Pon s toacutentun llose fase co tus pe foaciguela tr de paquros losintun oceton deros picaras ro pigeltexpa Arrcoacuten asadosen ca hiacuteracugidend madel cos pelo ca hamuy cuncte preraletrapuina venco sosueacute gifuas y estiogidire y ple peno do dociemanoacutey den matrones s Arseacutelades lelanelo lacides Jombidorentioacute lla caqueacutetrotan de ciechitevo pa e troacute ulega teilizaban riacuteaden zopendesellaundo u ca tioroserar vorasun plara en fue dempa teresen y umusmpio y sedes s s ezordel rugexhas darmabioacute

Cadenas de Markov de Orden N Texto aleatorio generado N=2

Muca donios y hombre llas res pla plambregrimanteoacute el la sioacute entude Salemo fue uncioacuten co crioacuten Tendiacutea en sula ta chicalque le siezblena que tras senterosagareto mdashgruel res entorasanesbazuerasabepaacuten enda con de in inagercamieropito don cuarecior siblimena tero en joacute te Fuedo paresegua pespurantespuen dos porodad de la que cabaquentra denabrencestiminotescuyoacute quel mor loseacute Acturo pen for es ella guanos mitadraratientoacuten condiacutea la allado quen se logoacute la balaritiva triblesala soacutelos habalcabiempor ere griacutea to borse allas laciasiacutemisible por pocaza los so ola la nintildeos cuaro eacutel y lar espiendismo antildeonetrouna que cad fuerofocieres resa combrempuros parsu misiblocerma anoceraya elos no a y ejoacute desta una tioacuten

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Texto aleatorio generado N=3

Muchetextremecitano conveniencia Cuando por acora pre hablancie el rudienteel pusierantado poblado pago y aumentar animaginacioacuten aza des examillos maacutes gigaciera suellevoacute los que inte la viajes rayos imales hacedor y el teacuterminuto pueses siles expedas mocha que la tanos ser en que vez lles la como la maacutes pase lo uacutenicos romera lado JoseacuteArcadiosas antes al realejo en que de dejoacute todidos tre distilado infinito desco a le se para ver bolada alquiacutedea

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Texto aleatorio generado N=4

Muchos y salambioacute un chaleco de habiacutea burla como el pasoacute la resto de aban su fue ser prendedor condo una buena de las casaquimisterios Joseacute Arcadio Buendiacutea sino esentoacute como un en aquel tambor quedoacute recuerdo de un fugitivo en que en que sierrar los metalejos a puestaban de una tersas y el mundo sino consolas y veiacutean desar a la casa cuyos sin comer Aureliano conjuro de el esperso de piedras

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N = 3-4

Comienzan a aparecer palabras maacutes reconocibles

Palabras de muchas letras aparecen frecuentemente ldquopegadasrdquo a otras palabras

Cuanto maacutes extenso es el texto de entrenamiento maacutes variedad habraacute en la salida

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Entrenamiento con palabras completas (N=1)

Texto generado

Se habiacutea que construyoacute trampas y sus iniciales encima con una insolacioacuten por mares incoacutegnitos visitar territorios maacutes emprendedor que se hundiacutean en las maravillas del mundo Era una explicacioacuten inmediata Joseacute Arcadio Buendiacutea la resonancia hueca de helechos y entonces una truculenta demostracioacuten con un aacutespero sabor de fusilamiento el interior y tambores y a prepararse para llevaacuterselos a palmo a conocerlo mantuvo puesta por los burros Asiacute fue desde haciacutea mucho tiempo porque el mundo se asomaba al caramelo vulgar que un paacutenico cuando llegoacute la judiacutea

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

20

Cadenas de Markov de Orden N Entrenamiento con palabras completas (N=4)

Texto generado

Consideraba como una burla de su travieso destino haber buscado el mar sin encontrarlo al precio de sacrificios y penalidades sin cuento y haberlo encontrado entonces sin buscarlo atravesado en su camino como un obstaacuteculo insalvable Uacutersula no volvioacute a acordarse de la intensidad de esa mirada hasta un diacutea en que el pequentildeo Aureliano a la edad de tres antildeos entroacute a la cocina en el momento en que ella retiraba del fogoacuten y poniacutea en la mesa una olla de caldo hirviendo Aquel olor mordiente quedariacutea para siempre en su memoria vinculado al recuerdo de Melquiacuteades

Dr Marcelo G Armentano - ISISTAN - UNICEN

Modelos de Markov Conjunto de estados

El proceso se mueve de un estado a otro generando unasecuencia de estados

Propiedad de Markov la probabilidad de cada estadosiguiente depende soacutelo del estado previo

bull Para definir un modelo de Markov deben especificarselas siguientes probabilidades

21 Nsss K

KK 21 ikii sss

)|()|( 1121 minusminus = ikikikiiik ssPssssP K

)|( jiij ssPa =)( ii sP=π

Probabilidad del estado inicial Probabilidad de transicioacuten de estados

Dr Marcelo G Armentano - ISISTAN - UNICEN

Lluvioso Seco

0703

02 08

Ejemplo de modelo de Markov

Dos posibles estados lsquoLluviosorsquo ylsquoSecorsquo Probabilidades de Transicioacuten

P(lsquoLluviosorsquo|lsquoLluviosorsquo)=03 P(lsquoSecorsquo|lsquoLluviosorsquo)=07

P(lsquoLluviosorsquo|lsquoSecorsquo)=02 P(lsquoSecorsquo|lsquoSecorsquo)=08

Probabilidades iniciales

P(lsquoLluviosorsquo)=04 P(lsquoSecorsquo)=06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Probabilidad de una secuencia Por la probabilidad de Markov

P(lsquoSecorsquorsquoSecorsquorsquoLluviosorsquorsquoLluviosorsquo ) =P(lsquoLluviosorsquo|rsquoLluviosorsquo) P(lsquoLluviosorsquo|rsquoSecorsquo)

P(lsquoSecorsquo|rsquoSecorsquo) P(lsquoSecorsquo) = 03020806 = 00288

)()|()( 12112121 minusminus= ikiiikiiikikii sssPssssPsssP KKK

)()|()|()|(

)()|(

112211

1211

iiiikikikik

ikiiikik

sPssPssPssP

sssPssP

K

KK

minusminusminus

minusminus

=

==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Underflow El producto de muchas probabilidades entre 0 y 1

puede resultar en underflow

Dado que log(xy) = log(x) + log(y) es mejor realizar la suma del logaritmo de las probabilidades que multiplicarlas

El modelo con el mayor puntaje final de probabilidad logariacutetmica sigue siendo la maacutes probable

Dr Marcelo G Armentano - ISISTAN - UNICEN

Hipoacutetesis del maacuteximo a posteriori

)|(maxarg DhPhHh

MAPisin

equiv

)(

)()|(maxarg

DP

hPhDP

Hhisin

=

)()|(maxarg hPhDPHhisin

=

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

21

Modelos Ocultos de Markov (HMM)

Conjunto de estados El proceso de mueve de un estado a otro generando una secuencia de

estados

Propiedad de Markov La probabilidad de cada estado depende solo del estado actual

Los estados no son visibles pero cada estado genera aleatoriamente unade las posibles observaciones (estados visibles)

Para definir un modelo oculto de Markov se deben especificar las siguientes probabilidades Matriz de probabilidades transicioacuten A=(aij) aij= P(si | sj) Matriz de probabilidades de observacioacuten B=(bi (vm )) bi(vm )= P(vm | si) Vector de probabilidades iniciales π=(πi) πi = P(si)

Los modelos quedan definidos por la tripla M=(A B π)

21 Nsss K

KK 21 ikii sss

)|()|( 1121 minusminus = ikikikiiik ssPssssP K

21 Mvvv K

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

Baja Alta

0703

02 08

Lluvioso Seco

06 0604 04

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

bull Dos estados correspondientes a la presioacuten atmosfeacutericabull lsquoAltarsquo y lsquoBajarsquo

bull Dos posibles observaciones bull lsquoLluviosorsquo y lsquoSecorsquo

bull Probabilidades de Transicioacuten

bull P(lsquoBajarsquo|lsquoBajarsquo)=03 P(lsquoAltarsquo|lsquoBajarsquo)=07 P(lsquoBajarsquo|lsquoAltarsquo)=02

P(lsquoAltarsquo|lsquoAltarsquo)=08bull Probabilidades de Observacioacuten

bull P(lsquoLluviosorsquo|lsquoBajarsquo)=06 P(lsquoSecorsquo|lsquoBajarsquo)=04

P(lsquoLluviosorsquo|lsquoAltarsquo)=04 P(lsquoSecorsquo|lsquoAltarsquo)=03 bull Probabilidades iniciales

bull P(lsquoBajarsquo)=04 P(lsquoAltarsquo)=06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM Prediccioacuten del tiempo de acuerdo al estado de un alga

empapado huacutemedo casi seco seco

nubes lluviasol

Oculto

Observable

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

Empapado Huacutemedo Casi seco Seco

Sol 060 020 015 005

Nubes 025 025 025 025

Lluvia 005 010 035 050

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

22

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

i P(qt+1=S1|qt=Si)

P(qt+1=S2|qt=Si)

P(qt+1=Sj|qt=Si)

P(qt+1=SN

|qt=Si)

1 a11 a12 hellip a1j hellip a1N

2 a21 a22 hellip a2j hellip a2N

3 a31 a32 hellip a3j hellip a3N

hellip

i ai1 ai2 hellip aij hellip aiN

hellip

N aN1 aN2 hellip aNj hellip aNN

Todas estas tablas son

iguales

aij = P (qt+1=sj|qt=si)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

i P(Ot=1|qt=Si) P(Ot=2|qt=Si) P(Ot=j|qt=Si) P(Ot=N|qt=Si)

1 b1(1) b1(2) hellip b1(j) hellip b1(N)2 b2(1) b2(2) hellip b2(j) hellip b2(N)3 b3(1) b3(2) hellip b3(j) hellip b3(N)hellip

i Bi(1) bi(2) hellip bi(j) hellip bi(N)hellip

N bN(1) bN(2) hellip bN(j) hellip bN(N)

bi(j) = P (Ot=j|qt=si)

Todas estas tablas son

iguales

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

un enrejado

s1

s2

si

sN

s1

s2

si

sN

s1

s2

sj

sN

s1

s2

si

sN

a1j

a2j

aij

aNj

1 k k+1 K

o1 ok ok+1 oKObservaciones

Tiempo

Ejemplo Casino tramposo

Un casino tiene dos dados Dado ldquojustordquo

P(1) = P(2) = P(3) = P(5) = P(6) = 16 Dado cargado

P(1) = P(2) = P(3) = P(4) = P(5) = 110P(6) = 12

El casino alterna entre el dado justo y el cargado una vezcada 20 turnos

Problemas a resolver con HMM Evaluacioacuten

Dado un HMM M=(A B π) y una secuencia de observaciones O=o1 o2 oK calcular la probabilidad de que el modelo M haya generado la secuencia O

Dr Marcelo G Armentano - ISISTAN - UNICEN

EvaluacioacutenDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestCuan probable es esta secuencia dado nuestromodelo de como opera el casino

Este es el problema de EVALUACIOacuteN en HMMs

03112011

23

Problemas a resolver con HMM Decodificacioacuten o inferencia

Dado un HMM M=(A B π) y una secuencia de observaciones O=o1 o2 oK calcular la secuencia de estados ocultos Si que maacutes probablemente produjo la secuencia de observaciones O

Dr Marcelo G Armentano - ISISTAN - UNICEN

DecodificacioacutenDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestQue partes de la secuencia fueron generadas por el dado cargado y cuales por el dado justo

Este es el problema de DECODIFICACIOacuteN en HMMs

Problemas a resolver con HMM Aprendizaje

Dado un conjunto de secuencias de observaciones de entrenamiento O=o1 o2 oK y la estructura general de HMM (cantidad de estados ocultos y cantidad de estados visibles) determinar los paraacutemetros del HMM M=(A B π) que mejor se ajustan a los datos de entrenamiento

Dr Marcelo G Armentano - ISISTAN - UNICEN

AprendizajeDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestCoacutemo estaacute cargado el dado cargado iquestCada cuantocambia el casino entre el dado cargado y el justo

Este es el problema de APRENDIZAJE en HMMs

El HMM del casino tramposo

JUSTO CARGADO

005

005

095095

P(1|Justo) = 16P(2|Justo) = 16P(3|Justo) = 16P(4|Justo) = 16P(5|Justo) = 16P(6|Justo) = 16

P(1|Cargado) = 110P(2|Cargado) = 110P(3|Cargado) = 110P(4|Cargado) = 110P(5|Cargado) = 110P(6|Cargado) = 12

Ejemplo reconocimiento de

palabras Se asume que los caracteres estaacuten separados

El reconocedorde caracteres da como salida la probabilidad de que una imagen corresponda a un caracterparticular P(caracter|imagen)

05

003

0005

031z

c

b

a

Estado Oculto

Estado Observable

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

24

Ejemplo reconocimiento de

palabras Estados Ocultos del HMM caracteres

Estados Observables imagenes de caracteres

Probabilidades de Observacioacutenαv

( ) ( ))|()( ii svPvbB αα ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo reconocimiento de

palabras Si se conoce el diccionario es posible construir un modelo

individual para cada palabra

bull Problema de evaluacioacuten reconocer la palabra en unaimagen es equivalente a evaluar un conjunto de modelos

amigos a m i g o s

buacutefalo b uacute f a l o

05 003 04 06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo reconocimiento de

palabras Podemos construir un HMM para todas las palabras

Estados ocultos los caracteres de las palabras

Probabilidades de transicioacuten calculadas a partir de modelos del lenguaje

Observaciones y probabilidades de observacioacuten iguales al ejemplo anterior

Problema de decodificacioacuten encontrar la secuencia de estados ocultos que maacutes probablemente generaron la imagen

a m

i g

o

s

t

b v

f

u

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

Forward-Backward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward

Seco Huacutemedo EmpapadoObs

Sol

Nubes

Lluvia

Sol

Nubes

Lluvia

Sol

Nubes

Lluvia

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward Pr(Seco Huacutemedo Empapado|M) =

Pr(seco huacutemedo empapado|sol sol sol) +

Pr(seco huacutemedo empapado|sol nubes sol) +

hellip

Pr(seco huacutemedo empapado|lluvia lluvia lluvia)

iexcliexclMuy Costoso

33 = 27 caacutelculos

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

25

Algoritmo Forward Reduccioacuten de la complejidad

Probabilidad parcial de alcanzar un estado intermedio en el entramado

Yk1 Yk2 hellip YkT

Sol

Nubes

Lluvia

Nubes

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward αt(j)= Pr(obs|estado oculto es j)

Pr( todos los caminos al estado j en el tiempo t)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward En el tiempo t=1

En el tiempo t gt1

α1(j)=π(j) Pr(obs|estado j)

αt(j)=Pr(todos los caminos a j) Pr(obs|estado j)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward

Terminacioacuten

Dr Marcelo G Armentano - ISISTAN - UNICEN

sum=

=n

j

T jMObs1

)()|Pr( α

sum=

++ =n

i

ijttjt ajobj1

11 )()()( αα

Algoritmo Forward

Sol

α1(sol)=π(sol) bsol(humedo)

Nubes

α1(nubes)=π(nubes) bnubes(humedo)

Lluvia

α1(lluvia)=π(lluvia) blluvia(humedo)

)()(secb )(nubesi1nubes2 sum sdotsdot=

iaionubes αα

Nubes

asolnubes

anubesnubes

alluvianubes

Huacutemedo Seco

Algoritmo Backward

Se define la variable β

)|()( 21 λβ iqoooPi tTttt == ++

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

26

Algoritmo Backward

Inicializacioacuten

Caacutelculo

Finalizacioacuten

1)( =jTβ

1 1

1

( ) ( ) ( )N

t t ij j t

j

i j a b oβ β + +=

=sum

sum=

=N

i

i iobiOp1

11 )()()()|( βπλ 11minus= Tt

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

Forward- Backward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Encontrar la secuencia maacutes probable de estados

ocultos dada una secuencia de observaciones

Ejemplo etiquetar palabras en una oracioacuten con su funcioacuten sintaacutectica

iquestEstados observables iquestEstados ocultos

Juan come naranjasNS NP OD

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Probabilidad parcial δ de alcanzar un estado

intermedio particular en el entramado

δ representa la probabilidad del camino maacutes probable a un estado

Para cada estado final hay un camino maacutes probable a ese estado

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi δ(it) es la maacutexima probabilidad de todas las

secuencias que terminan en el estado i en el tiempo t

En t=T tenemos las mejores probabilidades parciales y los mejores caminos parciales

El mejor camino global a T es el que lleva al estado con la mayor probabilidad

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En t=1

)()()1( 1obii isdot= πδ

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

27

Algoritmo de Viterbi En tgt1

A

B

C

Xhellip

Tltt-1 t-1 t

Pr(x en T=t) = maxi=ABC Pr(i en T=t-1) Pr(X|i) Pr(Ot|X)

)())1((max)( tiijj

obajtit sdotsdotminus= δδDr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En cada tiempo t recordamos el estado j que generoacute

δ(ti)

Se reconstruye el camino utilizando los punteros φhasta el tiempo t=1

ijj

ajtit )1(max)( sdotminus= δφ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi

)(max1

iP TNi

δlele

=lowast

)(maxarg1

iq TNi

T δlele

lowast =

P da la probabilidad de los mejores los estados

qT is la secuencia de estados oacuteptima(Q = q1q2hellipqT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

ForwardBackward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Dada un conjunto de secuencias de observaciones O=o1 o2

oK y la estructura general del HMM (cantidadde estados ocultos

y visibles) determinar los paraacutemetros del modelo M=(A B π) que mejor se ajustan a los datos de entrenamiento es decir

que maximice P(O | M)

Se utiliza el algoritmo de maximizacioacuten de la esperanza para

encontrar un maacuteximo local de P(O | M) algoritmo Baum-Welch

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Si los datos de entrenamiento tienen informacioacuten

acerca de la secuencia de estados ocultos los paraacutemetros se estiman como

xsestransicion

ssestransicionssPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

sveces

senodenesobservaciosoPob

)|()( ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

28

Algorimo Baum-Welch Idea general

xsestransiciondeesperado

ssestransiciondeesperadossPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

svecesdeesperado

senodenesobservaciodeesperadosoPob

)|()( ==

1)( === tparasenvecesdeesperadosP iiiπ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

ξt(ij)= P(qt= si qt+1= sj |o1 o2 oT)

ξt(ij)=P(qt= si qt+1= sj o1 o2 oT)

P(o1 o2 oT)=

P(qt= si o1 o2 ot) aij bj (ot+1 ) P(ot+2 oT | qt+1= sj ) P(o1 o2 oT)

=

=αt(i) aij bj (ot+1 ) βt+1(j)

ΣiΣj αt(i) aij bj (ot+1 ) βt+1(j)

αt(i) aij bj (ot+1 ) βt+1(j)

Σi αt(i) βt(i)Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

tiempo

Estados ocultos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch Definimos γt(i) como la probabilidad de estar en el

estado i en el tiempo t dadas las observaciones

Σt γt(i) - cantidad esperada de veces que visitoel estado i

Σt ξt(ij) - cantidad esperada de transiciones

sum=

=N

j

tt jii1

)()( ξγ

ji rarr

γt(i)= P(qt= si |o1 o2 oT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

sumsum

=)(

)(ˆ

i

jia

t

t

ijγ

ξ

sum

sum ==

)(

)()(ˆ

j

job

t

oot t

kjkt

γ

γ

)(ˆ1 iγπ = la frecuencia esperada del estado i en t=1

nuacutemero esperado de transiciones desde el estado i al estado j sobre la cantidad esperada de transiciones desde el estado i

cantidad de veces que se estuvo en el estado j observando el siacutembolo k sobre la cantidad de veces que se estuvo en el estado j

Dr Marcelo G Armentano - ISISTAN - UNICEN

Bibliografiacutea Bayesian Networks and Decision Graphs - Finn V

Jensen and Thomas D Nielsen - Springer Verlag -Second Edition - 2007

A tutorial on hidden Markov models and selected applications in speech recognition - Lawrence R Rabiner - Proceedings of the IEEE Vol 77 Nordm2 pp 257-286 - 1989

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

29

iquestConsultas

Dr Marcelo G Armentano - ISISTAN - UNICEN

Page 9: redes bayesianas UNICEN.pdf

03112011

9

Aprendizaje de Redes de Bayes Aprendizaje parameacutetrico

Aprender los paraacutemetros que describen el grado de dependencia entre las variables del dominio

Aprendizaje estructural Aprender las dependencias entre las variables que

intervienen en el problema

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje parameacutetrico Aprendizaje Adaptativo

Se utiliza cuando se quieren adaptar todas o algunas de las tablas de probabilidad condicional a partir de un nuevo conjunto de datos

Aprendizaje Batch Se utiliza cuando se quieren generar las tablas de

probabilidad condicional a partir de los datos Ej EM (Expectation Maximization)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje adaptativo La adaptacioacuten es el proceso de refinar las

probabilidades condicionales especificadas en la Red de Bayes teniendo en cuenta los resultados de experimentos o casos reales

Se utilizan tablas de experiencia yo tablas de desvanecimiento

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje adaptativo Un paso del proceso de aprendizaje adaptativo consiste

de ingresar evidencia

propagar la evidencia

actualizar (adaptar) las tablas de probabilidad condicional y las tablas de experiencia

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje adaptativo con tablas

de experiencia

Yes No

Cantidad de experiencias

10 5

P(Smoker=yes) = yes) (yes + no) = 10 15 = 0667

P(Smoker=no) = no) (yes + no) = 5 15 = 0333Dr Marcelo G Armentano - ISISTAN - UNICEN

Fractional Updating Utiliza tablas de experiencia

Suposiciones Independencia Global

Independencia Local

Sean p(A|bicj)=(x1x2)

(n1n2) las experiencias de A

s = n1 + n2 cantidad total de experiencias

A

B C

)()|( 21

s

n

s

ncbAp ji =

Dr Marcelo G Armentano - ISISTAN - UNICEN

Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin
Admin

03112011

10

Fractional Updating Caso 1

Tenemos una nueva experiencia e con B=bi

C=cj

A=a1

Luego n1=n1+1

s=s+1 )

1

1

1()|( 21

++

+=

s

n

s

ncbAp ji

Dr Marcelo G Armentano - ISISTAN - UNICEN

A

B C

Fractional Updating Caso 2

Tenemos una nueva experiencia e con B=bi

C=cj

de A soacutelo sabemos

Luego nk=nk+yk

s=s+1

A

B C

1+

+=

s

ynx kk

k

)()|()|( 21 yyecbApeAp ji ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Fractional Updating Caso general

Tenemos una nueva experiencia e con

Luego nk=nk+zyk

s=s+z

A

B C

Dr Marcelo G Armentano - ISISTAN - UNICEN

zecbp ji =)|(

)()|( 21 yyecbApji

=

zs

zynx kk

k+

+=

Fractional Updating Ejemplo

B

true false

true 06 03

false 04 07

Experiences 10 10

A

B

S=20

n1 n2

Como P(A=true|B=true) = 06 Tenemos

bullN(A=true|B=true) = 06 10 = 6bullN(A=true|B=false)= 03 10 = 3

El total de las cuentas para la variable AbullN(true) = 6 + 3 = 9 bullN(false) = 4 + 7 = 11 Dr Marcelo G Armentano - ISISTAN - UNICEN

Fractional Updating

Dr Marcelo G Armentano - ISISTAN - UNICEN

B

true false

true 063 03

false 037 07

Experiences 11 10

A

B

Despueacutes de una experiencia conbull A=truebull B=true

Obtenemos

06311

10106)|( =

+=== trueBtrueAp

03711

10004)|( =

+=== trueBfalseAp

0310

00013)|( =

+=== falseBtrueAp

0710

00007)|( =

+=== falseBfalseAp

zs

zynx kk

k+

+=

zebp i =)|(

)()|( 21 yyebAp i =Fractional Updating

Dr Marcelo G Armentano - ISISTAN - UNICEN

B

true false

true 0625 032

false 0375 068

Experiences 1067 1033

A

B

Si solo tenemos evidencia de A=true

Obtenemos

06256710

067106)|( =

+=== trueBtrueAp

03756710

067004)|( =

+=== trueBfalseAp

0323310

033013)|( =

+=== falseBtrueAp

0683310

033007)|( =

+=== falseBfalseAp

p(B=true|e) zs

zynx kk

k+

+=

zebp i =)|(

)()|( 21 yyebAp i =

03112011

11

Aprendizaje adaptativo con tablas

de desvanecimiento A veces las observaciones viejas no son tan importantes

como las nuevas en el proceso de adaptacioacuten Entonces tenemos que ldquodesaprenderrdquo u ldquoolvidarrdquo algunas de ellas

Las observaciones nuevas son maacutes importantes que las viejas y por lo tanto se les debe dar maacutes peso durante la adaptacioacuten

Se introduce un factor de desvanecimiento que indica la tasa con la cual se olvidan las observaciones previas 0 no hay adaptacioacuten 1 no hay desvanecimiento

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje adaptativo con tablas

de desvanecimiento

Yes No

Cantidad de experiencias

10 5

P(Smoker=yes) = yes) (yes + no) = 10 15 = 0667

P(Smoker=no) = no) (yes + no) = 5 15 = 0333Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje adaptativo con tablas

de desvanecimiento Smoker=yes Fading factor(s) = 05

(Smoker=yes) = factor (yes-previos) + 1= 05 10 + 1 = 6

(Smoker=no) = factor (no-previos) = 05 5 = 25

(experiencias) = 6 + 25 = 85

P(Smoker=yes) = 6 85 = 07059 P(Somker=no) = 25 85 = 02941

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje estructural

Earthquake Alarm Set

Sound

Burglary Earthquake Alarm Set

Sound

Burglary

Earthquake Alarm Set

Sound

Burglary

Si sobra un arcoSi falta un arco

bull Aumenta el nuacutemero de paraacutemetros a ser estimados

bull Suposiciones erroacuteneas acerca del dominio

bull No puede ser solucionado ajustando los paraacutemetros

bull Suposiciones erroacuteneas acerca del dominio

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje estructural Search and Score

Meacutetrica de puntuacioacuten (Score) Mide la calidad de la estructura graacutefica Se utiliza para decidir cual es la mejor solucioacuten

Algoritmo de buacutesqueda Selecciona un pequentildeo subconjunto de las posibles

redes que tengan una calidad alta Se selecciona la ldquomejorrdquo

Dr Marcelo G Armentano - ISISTAN - UNICEN

Basado en optimizaciones

E B A

ltYNNgt

ltYYYgt

ltNNYgt

ltNYYgt

ltNYYgtE B

A

E

B

A

E

BA

Buscar una estructura que maximice esa funcioacuten

Definir una funcioacuten que evaluacutee queacute tan bien se asemeja el modelo a los datos

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

12

Aprendizaje estructural Tests de independencia

Obtienen las dependencias condicionales y lasindependencias utilizando tests de independenciasentre triplas de variables

Por ejemplo tests estadiacutesticos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo K2 Score and Search Buacutesqueda Greedy Muy eficiente Asume que las variables estaacuten ordenadas Comienza con una red sin arcos En cada iteracioacuten para cada variable Xi el nodo cuyo orden

es previo a Xi y que incrementa la calidad de la red se agrega a =Pa(Xi)

Se repite el proceso hasta que No hay incremento en la calidad de la red Se llega a una red completa

La cantidad de padres puede limitarse

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo B Score and Search

No requiere un ordenamiento previo de las variables

Controlar ciclos

Comienza con un conjunto vaciacuteo de padres

En cada iteracioacuten agrega un arco tal que

No produce ciclos

Maximiza la calidad de la red

El proceso se detiene cuando

No se incrementa la calidad de la red 0 Se llega a una red completa

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PC Tests de Independencia

Dos fases Construccioacuten del esqueleto

Encontrar las direcciones de los arcos mediante tests de independencia

Orientar el resto de los arcos sin producir ciclos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PC Construccioacuten del esqueleto

Comienza con un grafo no dirigido totalmente conectado

Mediante tests de independencia va eliminando arcos que no cumplen la siguiente condicioacuten Dos nodos X e Y estaacuten conectados si y soacutelo si no existe un

subconjunto Sxy del conjunto de veacutertices V tal que I(XY|Sxy) sea verdadero

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PCComienza con un grafo completo no dirigido gpi = 0Repeat

For each X isinisinisinisin VFor each Y isinisinisinisin ADJX

Determinar si existe Ssube ADJX ndashY con |S| = i y I(XY|S)Si este conjunto existe

SXY = SEliminar el arco X-Y

i = i+1Until |ADJX| lelelele i forallforallforallforallX

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

13

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=

i=0

SI

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

SI

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

03112011

14

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

i=1

SI

SXY=SXW=SZW=Y

03112011

15

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

No hay nodos con maacutes de 3 adyacentes

Algoritmo PC Encontrar las direcciones de los arcos mediante tests

de independencia (tomando las variables de a tres) Para cada variable Z con dos adyacentes X e Y

comprueba que no Z no esteacute en Sxy para conectar a X e Y como padres de Z

Z XY

Z XY

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

ZnotinSXY

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

ZnotinSXY

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

TnotinSZW

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

TnotinSZW

03112011

16

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

Se orienta arbitrariamente (evitando ciclos)

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

Herramientas Hugin

httpwwwhugincomProducts_ServicesProductsDemo

Bayesware httpwwwbayeswarecom

JavaBayes httpwww-2cscmuedu~javabayes

Paacutegina de Finn Jensen httpwwwcsaaudk~fvj

Dr Marcelo G Armentano - ISISTAN - UNICEN

Agenda Introduccioacuten

Redes de Bayes

Modelos de Markov Introduccioacuten

Cadenas de Markov

Modelos Ocultos de Markov

Dr Marcelo G Armentano - ISISTAN - UNICEN

Introduccioacuten Modelar dependencias entre siacutembolos de una

secuencia Temporales

En reconocimiento del habla fonemas en una palabra palabras en una oracioacuten (reconocimiento sintaacutectico)

Espaciales Reconocimiento de escritura

Secuencias de genes

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

17

Procesos aleatorios de Markov Una secuencia aleatoria tiene la propiedad de markov si su

distribucioacuten de probabilidades estaacute determinadauacutenicamente por el estado actual Un proceso aleatorio quecumple con esta propiedad se llama un proceso aleatorio de Markov

Cuando los estados son observables cadenas de Markov

Cuando los estados no son observables modelos ocultos de markov (HMM hidden Markov models)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Regla de Bayes

)()|()( 111111 qqPqqqPqqqP ttttt minusminusminus =

)()|()|()( 121211111 qqPqqqPqqqPqqqP ttttttt minusminusminusminusminus =

prod=

minusminus =t

i

iitt qqqPqPqqqP2

11111 )|()()(

Dr Marcelo G Armentano - ISISTAN - UNICEN

Propiedad de Markov

1)|()|( 111 gt= minusminus iforqqPqqqP iiii

)|()|()()|()()( 1121

2

1111 minus=

minusminus == prod tt

t

i

iitt qqPqqPqPqqPqPqqqP

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov Pueden verse como un grafo de transicioacuten de estados

con probabilidades en sus arcos

Ejemplo Generacioacuten de Texto Aleatorio Un nodo por cada letra uacutenica observada

Si luego de la letra X observo la letra Y agrego un arco de X a Y Si el arco ya existe incremento la cantidad de observaciones

asociada al arco

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTAL

03112011

18

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTALTAL

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTALTALTOTOTALTOTOTOTOTALhellip

Cadenas de Markov Texto aleatorio generado a partir de un modelo

entrenado con el primer capiacutetulo de ldquo100 antildeos de soledadrdquo de Gabriel Garciacutea Marquez

Mapl idoca Uno domen quespiate meacute s abrdiacuteaton quadelaros del y en ioacutera puacutellade y antildeosar soacute Ar e Pon s toacutentun llose fase co tus pe foaciguela tr de paquros losintun oceton deros picaras ro pigeltexpa Arrcoacuten asadosen ca hiacuteracugidend madel cos pelo ca hamuy cuncte preraletrapuina venco sosueacute gifuas y estiogidire y ple peno do dociemanoacutey den matrones s Arseacutelades lelanelo lacides Jombidorentioacute lla caqueacutetrotan de ciechitevo pa e troacute ulega teilizaban riacuteaden zopendesellaundo u ca tioroserar vorasun plara en fue dempa teresen y umusmpio y sedes s s ezordel rugexhas darmabioacute

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N Extensioacuten a las cadenas de Markov en las que cada

estados representa una secuencia de N observaciones consecutivas

N-gramas

Ocurrencias

che 60

chi 25

cha 10

cho 5

ch

ch se observa 100 veces de las cualeshellip

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N=2

ISMI

SS

SI

IP

PP

PI

10

1010

10

10o5 o5

M I S S I S S I P P I

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N=3

ISSMIS

SSI

SIS

SIP

IPP

PPI

10

10

10

10

10

o5

o5

M I S S I S S I P P I

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

19

Cadenas de Markov de orden N N=1

Modelo fiel a las frecuencias de cada par de letras

No representa bien el lenguaje natural

Dr Marcelo G Armentano - ISISTAN - UNICEN

Mapl idoca Uno domen quespiate meacute s abrdiacuteaton quadelaros del y en ioacutera puacutellade y antildeosar soacute Ar e Pon s toacutentun llose fase co tus pe foaciguela tr de paquros losintun oceton deros picaras ro pigeltexpa Arrcoacuten asadosen ca hiacuteracugidend madel cos pelo ca hamuy cuncte preraletrapuina venco sosueacute gifuas y estiogidire y ple peno do dociemanoacutey den matrones s Arseacutelades lelanelo lacides Jombidorentioacute lla caqueacutetrotan de ciechitevo pa e troacute ulega teilizaban riacuteaden zopendesellaundo u ca tioroserar vorasun plara en fue dempa teresen y umusmpio y sedes s s ezordel rugexhas darmabioacute

Cadenas de Markov de Orden N Texto aleatorio generado N=2

Muca donios y hombre llas res pla plambregrimanteoacute el la sioacute entude Salemo fue uncioacuten co crioacuten Tendiacutea en sula ta chicalque le siezblena que tras senterosagareto mdashgruel res entorasanesbazuerasabepaacuten enda con de in inagercamieropito don cuarecior siblimena tero en joacute te Fuedo paresegua pespurantespuen dos porodad de la que cabaquentra denabrencestiminotescuyoacute quel mor loseacute Acturo pen for es ella guanos mitadraratientoacuten condiacutea la allado quen se logoacute la balaritiva triblesala soacutelos habalcabiempor ere griacutea to borse allas laciasiacutemisible por pocaza los so ola la nintildeos cuaro eacutel y lar espiendismo antildeonetrouna que cad fuerofocieres resa combrempuros parsu misiblocerma anoceraya elos no a y ejoacute desta una tioacuten

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Texto aleatorio generado N=3

Muchetextremecitano conveniencia Cuando por acora pre hablancie el rudienteel pusierantado poblado pago y aumentar animaginacioacuten aza des examillos maacutes gigaciera suellevoacute los que inte la viajes rayos imales hacedor y el teacuterminuto pueses siles expedas mocha que la tanos ser en que vez lles la como la maacutes pase lo uacutenicos romera lado JoseacuteArcadiosas antes al realejo en que de dejoacute todidos tre distilado infinito desco a le se para ver bolada alquiacutedea

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Texto aleatorio generado N=4

Muchos y salambioacute un chaleco de habiacutea burla como el pasoacute la resto de aban su fue ser prendedor condo una buena de las casaquimisterios Joseacute Arcadio Buendiacutea sino esentoacute como un en aquel tambor quedoacute recuerdo de un fugitivo en que en que sierrar los metalejos a puestaban de una tersas y el mundo sino consolas y veiacutean desar a la casa cuyos sin comer Aureliano conjuro de el esperso de piedras

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N = 3-4

Comienzan a aparecer palabras maacutes reconocibles

Palabras de muchas letras aparecen frecuentemente ldquopegadasrdquo a otras palabras

Cuanto maacutes extenso es el texto de entrenamiento maacutes variedad habraacute en la salida

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Entrenamiento con palabras completas (N=1)

Texto generado

Se habiacutea que construyoacute trampas y sus iniciales encima con una insolacioacuten por mares incoacutegnitos visitar territorios maacutes emprendedor que se hundiacutean en las maravillas del mundo Era una explicacioacuten inmediata Joseacute Arcadio Buendiacutea la resonancia hueca de helechos y entonces una truculenta demostracioacuten con un aacutespero sabor de fusilamiento el interior y tambores y a prepararse para llevaacuterselos a palmo a conocerlo mantuvo puesta por los burros Asiacute fue desde haciacutea mucho tiempo porque el mundo se asomaba al caramelo vulgar que un paacutenico cuando llegoacute la judiacutea

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

20

Cadenas de Markov de Orden N Entrenamiento con palabras completas (N=4)

Texto generado

Consideraba como una burla de su travieso destino haber buscado el mar sin encontrarlo al precio de sacrificios y penalidades sin cuento y haberlo encontrado entonces sin buscarlo atravesado en su camino como un obstaacuteculo insalvable Uacutersula no volvioacute a acordarse de la intensidad de esa mirada hasta un diacutea en que el pequentildeo Aureliano a la edad de tres antildeos entroacute a la cocina en el momento en que ella retiraba del fogoacuten y poniacutea en la mesa una olla de caldo hirviendo Aquel olor mordiente quedariacutea para siempre en su memoria vinculado al recuerdo de Melquiacuteades

Dr Marcelo G Armentano - ISISTAN - UNICEN

Modelos de Markov Conjunto de estados

El proceso se mueve de un estado a otro generando unasecuencia de estados

Propiedad de Markov la probabilidad de cada estadosiguiente depende soacutelo del estado previo

bull Para definir un modelo de Markov deben especificarselas siguientes probabilidades

21 Nsss K

KK 21 ikii sss

)|()|( 1121 minusminus = ikikikiiik ssPssssP K

)|( jiij ssPa =)( ii sP=π

Probabilidad del estado inicial Probabilidad de transicioacuten de estados

Dr Marcelo G Armentano - ISISTAN - UNICEN

Lluvioso Seco

0703

02 08

Ejemplo de modelo de Markov

Dos posibles estados lsquoLluviosorsquo ylsquoSecorsquo Probabilidades de Transicioacuten

P(lsquoLluviosorsquo|lsquoLluviosorsquo)=03 P(lsquoSecorsquo|lsquoLluviosorsquo)=07

P(lsquoLluviosorsquo|lsquoSecorsquo)=02 P(lsquoSecorsquo|lsquoSecorsquo)=08

Probabilidades iniciales

P(lsquoLluviosorsquo)=04 P(lsquoSecorsquo)=06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Probabilidad de una secuencia Por la probabilidad de Markov

P(lsquoSecorsquorsquoSecorsquorsquoLluviosorsquorsquoLluviosorsquo ) =P(lsquoLluviosorsquo|rsquoLluviosorsquo) P(lsquoLluviosorsquo|rsquoSecorsquo)

P(lsquoSecorsquo|rsquoSecorsquo) P(lsquoSecorsquo) = 03020806 = 00288

)()|()( 12112121 minusminus= ikiiikiiikikii sssPssssPsssP KKK

)()|()|()|(

)()|(

112211

1211

iiiikikikik

ikiiikik

sPssPssPssP

sssPssP

K

KK

minusminusminus

minusminus

=

==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Underflow El producto de muchas probabilidades entre 0 y 1

puede resultar en underflow

Dado que log(xy) = log(x) + log(y) es mejor realizar la suma del logaritmo de las probabilidades que multiplicarlas

El modelo con el mayor puntaje final de probabilidad logariacutetmica sigue siendo la maacutes probable

Dr Marcelo G Armentano - ISISTAN - UNICEN

Hipoacutetesis del maacuteximo a posteriori

)|(maxarg DhPhHh

MAPisin

equiv

)(

)()|(maxarg

DP

hPhDP

Hhisin

=

)()|(maxarg hPhDPHhisin

=

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

21

Modelos Ocultos de Markov (HMM)

Conjunto de estados El proceso de mueve de un estado a otro generando una secuencia de

estados

Propiedad de Markov La probabilidad de cada estado depende solo del estado actual

Los estados no son visibles pero cada estado genera aleatoriamente unade las posibles observaciones (estados visibles)

Para definir un modelo oculto de Markov se deben especificar las siguientes probabilidades Matriz de probabilidades transicioacuten A=(aij) aij= P(si | sj) Matriz de probabilidades de observacioacuten B=(bi (vm )) bi(vm )= P(vm | si) Vector de probabilidades iniciales π=(πi) πi = P(si)

Los modelos quedan definidos por la tripla M=(A B π)

21 Nsss K

KK 21 ikii sss

)|()|( 1121 minusminus = ikikikiiik ssPssssP K

21 Mvvv K

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

Baja Alta

0703

02 08

Lluvioso Seco

06 0604 04

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

bull Dos estados correspondientes a la presioacuten atmosfeacutericabull lsquoAltarsquo y lsquoBajarsquo

bull Dos posibles observaciones bull lsquoLluviosorsquo y lsquoSecorsquo

bull Probabilidades de Transicioacuten

bull P(lsquoBajarsquo|lsquoBajarsquo)=03 P(lsquoAltarsquo|lsquoBajarsquo)=07 P(lsquoBajarsquo|lsquoAltarsquo)=02

P(lsquoAltarsquo|lsquoAltarsquo)=08bull Probabilidades de Observacioacuten

bull P(lsquoLluviosorsquo|lsquoBajarsquo)=06 P(lsquoSecorsquo|lsquoBajarsquo)=04

P(lsquoLluviosorsquo|lsquoAltarsquo)=04 P(lsquoSecorsquo|lsquoAltarsquo)=03 bull Probabilidades iniciales

bull P(lsquoBajarsquo)=04 P(lsquoAltarsquo)=06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM Prediccioacuten del tiempo de acuerdo al estado de un alga

empapado huacutemedo casi seco seco

nubes lluviasol

Oculto

Observable

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

Empapado Huacutemedo Casi seco Seco

Sol 060 020 015 005

Nubes 025 025 025 025

Lluvia 005 010 035 050

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

22

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

i P(qt+1=S1|qt=Si)

P(qt+1=S2|qt=Si)

P(qt+1=Sj|qt=Si)

P(qt+1=SN

|qt=Si)

1 a11 a12 hellip a1j hellip a1N

2 a21 a22 hellip a2j hellip a2N

3 a31 a32 hellip a3j hellip a3N

hellip

i ai1 ai2 hellip aij hellip aiN

hellip

N aN1 aN2 hellip aNj hellip aNN

Todas estas tablas son

iguales

aij = P (qt+1=sj|qt=si)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

i P(Ot=1|qt=Si) P(Ot=2|qt=Si) P(Ot=j|qt=Si) P(Ot=N|qt=Si)

1 b1(1) b1(2) hellip b1(j) hellip b1(N)2 b2(1) b2(2) hellip b2(j) hellip b2(N)3 b3(1) b3(2) hellip b3(j) hellip b3(N)hellip

i Bi(1) bi(2) hellip bi(j) hellip bi(N)hellip

N bN(1) bN(2) hellip bN(j) hellip bN(N)

bi(j) = P (Ot=j|qt=si)

Todas estas tablas son

iguales

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

un enrejado

s1

s2

si

sN

s1

s2

si

sN

s1

s2

sj

sN

s1

s2

si

sN

a1j

a2j

aij

aNj

1 k k+1 K

o1 ok ok+1 oKObservaciones

Tiempo

Ejemplo Casino tramposo

Un casino tiene dos dados Dado ldquojustordquo

P(1) = P(2) = P(3) = P(5) = P(6) = 16 Dado cargado

P(1) = P(2) = P(3) = P(4) = P(5) = 110P(6) = 12

El casino alterna entre el dado justo y el cargado una vezcada 20 turnos

Problemas a resolver con HMM Evaluacioacuten

Dado un HMM M=(A B π) y una secuencia de observaciones O=o1 o2 oK calcular la probabilidad de que el modelo M haya generado la secuencia O

Dr Marcelo G Armentano - ISISTAN - UNICEN

EvaluacioacutenDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestCuan probable es esta secuencia dado nuestromodelo de como opera el casino

Este es el problema de EVALUACIOacuteN en HMMs

03112011

23

Problemas a resolver con HMM Decodificacioacuten o inferencia

Dado un HMM M=(A B π) y una secuencia de observaciones O=o1 o2 oK calcular la secuencia de estados ocultos Si que maacutes probablemente produjo la secuencia de observaciones O

Dr Marcelo G Armentano - ISISTAN - UNICEN

DecodificacioacutenDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestQue partes de la secuencia fueron generadas por el dado cargado y cuales por el dado justo

Este es el problema de DECODIFICACIOacuteN en HMMs

Problemas a resolver con HMM Aprendizaje

Dado un conjunto de secuencias de observaciones de entrenamiento O=o1 o2 oK y la estructura general de HMM (cantidad de estados ocultos y cantidad de estados visibles) determinar los paraacutemetros del HMM M=(A B π) que mejor se ajustan a los datos de entrenamiento

Dr Marcelo G Armentano - ISISTAN - UNICEN

AprendizajeDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestCoacutemo estaacute cargado el dado cargado iquestCada cuantocambia el casino entre el dado cargado y el justo

Este es el problema de APRENDIZAJE en HMMs

El HMM del casino tramposo

JUSTO CARGADO

005

005

095095

P(1|Justo) = 16P(2|Justo) = 16P(3|Justo) = 16P(4|Justo) = 16P(5|Justo) = 16P(6|Justo) = 16

P(1|Cargado) = 110P(2|Cargado) = 110P(3|Cargado) = 110P(4|Cargado) = 110P(5|Cargado) = 110P(6|Cargado) = 12

Ejemplo reconocimiento de

palabras Se asume que los caracteres estaacuten separados

El reconocedorde caracteres da como salida la probabilidad de que una imagen corresponda a un caracterparticular P(caracter|imagen)

05

003

0005

031z

c

b

a

Estado Oculto

Estado Observable

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

24

Ejemplo reconocimiento de

palabras Estados Ocultos del HMM caracteres

Estados Observables imagenes de caracteres

Probabilidades de Observacioacutenαv

( ) ( ))|()( ii svPvbB αα ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo reconocimiento de

palabras Si se conoce el diccionario es posible construir un modelo

individual para cada palabra

bull Problema de evaluacioacuten reconocer la palabra en unaimagen es equivalente a evaluar un conjunto de modelos

amigos a m i g o s

buacutefalo b uacute f a l o

05 003 04 06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo reconocimiento de

palabras Podemos construir un HMM para todas las palabras

Estados ocultos los caracteres de las palabras

Probabilidades de transicioacuten calculadas a partir de modelos del lenguaje

Observaciones y probabilidades de observacioacuten iguales al ejemplo anterior

Problema de decodificacioacuten encontrar la secuencia de estados ocultos que maacutes probablemente generaron la imagen

a m

i g

o

s

t

b v

f

u

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

Forward-Backward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward

Seco Huacutemedo EmpapadoObs

Sol

Nubes

Lluvia

Sol

Nubes

Lluvia

Sol

Nubes

Lluvia

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward Pr(Seco Huacutemedo Empapado|M) =

Pr(seco huacutemedo empapado|sol sol sol) +

Pr(seco huacutemedo empapado|sol nubes sol) +

hellip

Pr(seco huacutemedo empapado|lluvia lluvia lluvia)

iexcliexclMuy Costoso

33 = 27 caacutelculos

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

25

Algoritmo Forward Reduccioacuten de la complejidad

Probabilidad parcial de alcanzar un estado intermedio en el entramado

Yk1 Yk2 hellip YkT

Sol

Nubes

Lluvia

Nubes

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward αt(j)= Pr(obs|estado oculto es j)

Pr( todos los caminos al estado j en el tiempo t)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward En el tiempo t=1

En el tiempo t gt1

α1(j)=π(j) Pr(obs|estado j)

αt(j)=Pr(todos los caminos a j) Pr(obs|estado j)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward

Terminacioacuten

Dr Marcelo G Armentano - ISISTAN - UNICEN

sum=

=n

j

T jMObs1

)()|Pr( α

sum=

++ =n

i

ijttjt ajobj1

11 )()()( αα

Algoritmo Forward

Sol

α1(sol)=π(sol) bsol(humedo)

Nubes

α1(nubes)=π(nubes) bnubes(humedo)

Lluvia

α1(lluvia)=π(lluvia) blluvia(humedo)

)()(secb )(nubesi1nubes2 sum sdotsdot=

iaionubes αα

Nubes

asolnubes

anubesnubes

alluvianubes

Huacutemedo Seco

Algoritmo Backward

Se define la variable β

)|()( 21 λβ iqoooPi tTttt == ++

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

26

Algoritmo Backward

Inicializacioacuten

Caacutelculo

Finalizacioacuten

1)( =jTβ

1 1

1

( ) ( ) ( )N

t t ij j t

j

i j a b oβ β + +=

=sum

sum=

=N

i

i iobiOp1

11 )()()()|( βπλ 11minus= Tt

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

Forward- Backward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Encontrar la secuencia maacutes probable de estados

ocultos dada una secuencia de observaciones

Ejemplo etiquetar palabras en una oracioacuten con su funcioacuten sintaacutectica

iquestEstados observables iquestEstados ocultos

Juan come naranjasNS NP OD

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Probabilidad parcial δ de alcanzar un estado

intermedio particular en el entramado

δ representa la probabilidad del camino maacutes probable a un estado

Para cada estado final hay un camino maacutes probable a ese estado

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi δ(it) es la maacutexima probabilidad de todas las

secuencias que terminan en el estado i en el tiempo t

En t=T tenemos las mejores probabilidades parciales y los mejores caminos parciales

El mejor camino global a T es el que lleva al estado con la mayor probabilidad

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En t=1

)()()1( 1obii isdot= πδ

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

27

Algoritmo de Viterbi En tgt1

A

B

C

Xhellip

Tltt-1 t-1 t

Pr(x en T=t) = maxi=ABC Pr(i en T=t-1) Pr(X|i) Pr(Ot|X)

)())1((max)( tiijj

obajtit sdotsdotminus= δδDr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En cada tiempo t recordamos el estado j que generoacute

δ(ti)

Se reconstruye el camino utilizando los punteros φhasta el tiempo t=1

ijj

ajtit )1(max)( sdotminus= δφ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi

)(max1

iP TNi

δlele

=lowast

)(maxarg1

iq TNi

T δlele

lowast =

P da la probabilidad de los mejores los estados

qT is la secuencia de estados oacuteptima(Q = q1q2hellipqT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

ForwardBackward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Dada un conjunto de secuencias de observaciones O=o1 o2

oK y la estructura general del HMM (cantidadde estados ocultos

y visibles) determinar los paraacutemetros del modelo M=(A B π) que mejor se ajustan a los datos de entrenamiento es decir

que maximice P(O | M)

Se utiliza el algoritmo de maximizacioacuten de la esperanza para

encontrar un maacuteximo local de P(O | M) algoritmo Baum-Welch

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Si los datos de entrenamiento tienen informacioacuten

acerca de la secuencia de estados ocultos los paraacutemetros se estiman como

xsestransicion

ssestransicionssPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

sveces

senodenesobservaciosoPob

)|()( ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

28

Algorimo Baum-Welch Idea general

xsestransiciondeesperado

ssestransiciondeesperadossPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

svecesdeesperado

senodenesobservaciodeesperadosoPob

)|()( ==

1)( === tparasenvecesdeesperadosP iiiπ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

ξt(ij)= P(qt= si qt+1= sj |o1 o2 oT)

ξt(ij)=P(qt= si qt+1= sj o1 o2 oT)

P(o1 o2 oT)=

P(qt= si o1 o2 ot) aij bj (ot+1 ) P(ot+2 oT | qt+1= sj ) P(o1 o2 oT)

=

=αt(i) aij bj (ot+1 ) βt+1(j)

ΣiΣj αt(i) aij bj (ot+1 ) βt+1(j)

αt(i) aij bj (ot+1 ) βt+1(j)

Σi αt(i) βt(i)Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

tiempo

Estados ocultos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch Definimos γt(i) como la probabilidad de estar en el

estado i en el tiempo t dadas las observaciones

Σt γt(i) - cantidad esperada de veces que visitoel estado i

Σt ξt(ij) - cantidad esperada de transiciones

sum=

=N

j

tt jii1

)()( ξγ

ji rarr

γt(i)= P(qt= si |o1 o2 oT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

sumsum

=)(

)(ˆ

i

jia

t

t

ijγ

ξ

sum

sum ==

)(

)()(ˆ

j

job

t

oot t

kjkt

γ

γ

)(ˆ1 iγπ = la frecuencia esperada del estado i en t=1

nuacutemero esperado de transiciones desde el estado i al estado j sobre la cantidad esperada de transiciones desde el estado i

cantidad de veces que se estuvo en el estado j observando el siacutembolo k sobre la cantidad de veces que se estuvo en el estado j

Dr Marcelo G Armentano - ISISTAN - UNICEN

Bibliografiacutea Bayesian Networks and Decision Graphs - Finn V

Jensen and Thomas D Nielsen - Springer Verlag -Second Edition - 2007

A tutorial on hidden Markov models and selected applications in speech recognition - Lawrence R Rabiner - Proceedings of the IEEE Vol 77 Nordm2 pp 257-286 - 1989

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

29

iquestConsultas

Dr Marcelo G Armentano - ISISTAN - UNICEN

Page 10: redes bayesianas UNICEN.pdf

03112011

10

Fractional Updating Caso 1

Tenemos una nueva experiencia e con B=bi

C=cj

A=a1

Luego n1=n1+1

s=s+1 )

1

1

1()|( 21

++

+=

s

n

s

ncbAp ji

Dr Marcelo G Armentano - ISISTAN - UNICEN

A

B C

Fractional Updating Caso 2

Tenemos una nueva experiencia e con B=bi

C=cj

de A soacutelo sabemos

Luego nk=nk+yk

s=s+1

A

B C

1+

+=

s

ynx kk

k

)()|()|( 21 yyecbApeAp ji ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Fractional Updating Caso general

Tenemos una nueva experiencia e con

Luego nk=nk+zyk

s=s+z

A

B C

Dr Marcelo G Armentano - ISISTAN - UNICEN

zecbp ji =)|(

)()|( 21 yyecbApji

=

zs

zynx kk

k+

+=

Fractional Updating Ejemplo

B

true false

true 06 03

false 04 07

Experiences 10 10

A

B

S=20

n1 n2

Como P(A=true|B=true) = 06 Tenemos

bullN(A=true|B=true) = 06 10 = 6bullN(A=true|B=false)= 03 10 = 3

El total de las cuentas para la variable AbullN(true) = 6 + 3 = 9 bullN(false) = 4 + 7 = 11 Dr Marcelo G Armentano - ISISTAN - UNICEN

Fractional Updating

Dr Marcelo G Armentano - ISISTAN - UNICEN

B

true false

true 063 03

false 037 07

Experiences 11 10

A

B

Despueacutes de una experiencia conbull A=truebull B=true

Obtenemos

06311

10106)|( =

+=== trueBtrueAp

03711

10004)|( =

+=== trueBfalseAp

0310

00013)|( =

+=== falseBtrueAp

0710

00007)|( =

+=== falseBfalseAp

zs

zynx kk

k+

+=

zebp i =)|(

)()|( 21 yyebAp i =Fractional Updating

Dr Marcelo G Armentano - ISISTAN - UNICEN

B

true false

true 0625 032

false 0375 068

Experiences 1067 1033

A

B

Si solo tenemos evidencia de A=true

Obtenemos

06256710

067106)|( =

+=== trueBtrueAp

03756710

067004)|( =

+=== trueBfalseAp

0323310

033013)|( =

+=== falseBtrueAp

0683310

033007)|( =

+=== falseBfalseAp

p(B=true|e) zs

zynx kk

k+

+=

zebp i =)|(

)()|( 21 yyebAp i =

03112011

11

Aprendizaje adaptativo con tablas

de desvanecimiento A veces las observaciones viejas no son tan importantes

como las nuevas en el proceso de adaptacioacuten Entonces tenemos que ldquodesaprenderrdquo u ldquoolvidarrdquo algunas de ellas

Las observaciones nuevas son maacutes importantes que las viejas y por lo tanto se les debe dar maacutes peso durante la adaptacioacuten

Se introduce un factor de desvanecimiento que indica la tasa con la cual se olvidan las observaciones previas 0 no hay adaptacioacuten 1 no hay desvanecimiento

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje adaptativo con tablas

de desvanecimiento

Yes No

Cantidad de experiencias

10 5

P(Smoker=yes) = yes) (yes + no) = 10 15 = 0667

P(Smoker=no) = no) (yes + no) = 5 15 = 0333Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje adaptativo con tablas

de desvanecimiento Smoker=yes Fading factor(s) = 05

(Smoker=yes) = factor (yes-previos) + 1= 05 10 + 1 = 6

(Smoker=no) = factor (no-previos) = 05 5 = 25

(experiencias) = 6 + 25 = 85

P(Smoker=yes) = 6 85 = 07059 P(Somker=no) = 25 85 = 02941

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje estructural

Earthquake Alarm Set

Sound

Burglary Earthquake Alarm Set

Sound

Burglary

Earthquake Alarm Set

Sound

Burglary

Si sobra un arcoSi falta un arco

bull Aumenta el nuacutemero de paraacutemetros a ser estimados

bull Suposiciones erroacuteneas acerca del dominio

bull No puede ser solucionado ajustando los paraacutemetros

bull Suposiciones erroacuteneas acerca del dominio

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje estructural Search and Score

Meacutetrica de puntuacioacuten (Score) Mide la calidad de la estructura graacutefica Se utiliza para decidir cual es la mejor solucioacuten

Algoritmo de buacutesqueda Selecciona un pequentildeo subconjunto de las posibles

redes que tengan una calidad alta Se selecciona la ldquomejorrdquo

Dr Marcelo G Armentano - ISISTAN - UNICEN

Basado en optimizaciones

E B A

ltYNNgt

ltYYYgt

ltNNYgt

ltNYYgt

ltNYYgtE B

A

E

B

A

E

BA

Buscar una estructura que maximice esa funcioacuten

Definir una funcioacuten que evaluacutee queacute tan bien se asemeja el modelo a los datos

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

12

Aprendizaje estructural Tests de independencia

Obtienen las dependencias condicionales y lasindependencias utilizando tests de independenciasentre triplas de variables

Por ejemplo tests estadiacutesticos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo K2 Score and Search Buacutesqueda Greedy Muy eficiente Asume que las variables estaacuten ordenadas Comienza con una red sin arcos En cada iteracioacuten para cada variable Xi el nodo cuyo orden

es previo a Xi y que incrementa la calidad de la red se agrega a =Pa(Xi)

Se repite el proceso hasta que No hay incremento en la calidad de la red Se llega a una red completa

La cantidad de padres puede limitarse

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo B Score and Search

No requiere un ordenamiento previo de las variables

Controlar ciclos

Comienza con un conjunto vaciacuteo de padres

En cada iteracioacuten agrega un arco tal que

No produce ciclos

Maximiza la calidad de la red

El proceso se detiene cuando

No se incrementa la calidad de la red 0 Se llega a una red completa

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PC Tests de Independencia

Dos fases Construccioacuten del esqueleto

Encontrar las direcciones de los arcos mediante tests de independencia

Orientar el resto de los arcos sin producir ciclos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PC Construccioacuten del esqueleto

Comienza con un grafo no dirigido totalmente conectado

Mediante tests de independencia va eliminando arcos que no cumplen la siguiente condicioacuten Dos nodos X e Y estaacuten conectados si y soacutelo si no existe un

subconjunto Sxy del conjunto de veacutertices V tal que I(XY|Sxy) sea verdadero

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PCComienza con un grafo completo no dirigido gpi = 0Repeat

For each X isinisinisinisin VFor each Y isinisinisinisin ADJX

Determinar si existe Ssube ADJX ndashY con |S| = i y I(XY|S)Si este conjunto existe

SXY = SEliminar el arco X-Y

i = i+1Until |ADJX| lelelele i forallforallforallforallX

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

13

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=

i=0

SI

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

SI

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

03112011

14

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

i=1

SI

SXY=SXW=SZW=Y

03112011

15

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

No hay nodos con maacutes de 3 adyacentes

Algoritmo PC Encontrar las direcciones de los arcos mediante tests

de independencia (tomando las variables de a tres) Para cada variable Z con dos adyacentes X e Y

comprueba que no Z no esteacute en Sxy para conectar a X e Y como padres de Z

Z XY

Z XY

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

ZnotinSXY

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

ZnotinSXY

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

TnotinSZW

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

TnotinSZW

03112011

16

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

Se orienta arbitrariamente (evitando ciclos)

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

Herramientas Hugin

httpwwwhugincomProducts_ServicesProductsDemo

Bayesware httpwwwbayeswarecom

JavaBayes httpwww-2cscmuedu~javabayes

Paacutegina de Finn Jensen httpwwwcsaaudk~fvj

Dr Marcelo G Armentano - ISISTAN - UNICEN

Agenda Introduccioacuten

Redes de Bayes

Modelos de Markov Introduccioacuten

Cadenas de Markov

Modelos Ocultos de Markov

Dr Marcelo G Armentano - ISISTAN - UNICEN

Introduccioacuten Modelar dependencias entre siacutembolos de una

secuencia Temporales

En reconocimiento del habla fonemas en una palabra palabras en una oracioacuten (reconocimiento sintaacutectico)

Espaciales Reconocimiento de escritura

Secuencias de genes

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

17

Procesos aleatorios de Markov Una secuencia aleatoria tiene la propiedad de markov si su

distribucioacuten de probabilidades estaacute determinadauacutenicamente por el estado actual Un proceso aleatorio quecumple con esta propiedad se llama un proceso aleatorio de Markov

Cuando los estados son observables cadenas de Markov

Cuando los estados no son observables modelos ocultos de markov (HMM hidden Markov models)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Regla de Bayes

)()|()( 111111 qqPqqqPqqqP ttttt minusminusminus =

)()|()|()( 121211111 qqPqqqPqqqPqqqP ttttttt minusminusminusminusminus =

prod=

minusminus =t

i

iitt qqqPqPqqqP2

11111 )|()()(

Dr Marcelo G Armentano - ISISTAN - UNICEN

Propiedad de Markov

1)|()|( 111 gt= minusminus iforqqPqqqP iiii

)|()|()()|()()( 1121

2

1111 minus=

minusminus == prod tt

t

i

iitt qqPqqPqPqqPqPqqqP

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov Pueden verse como un grafo de transicioacuten de estados

con probabilidades en sus arcos

Ejemplo Generacioacuten de Texto Aleatorio Un nodo por cada letra uacutenica observada

Si luego de la letra X observo la letra Y agrego un arco de X a Y Si el arco ya existe incremento la cantidad de observaciones

asociada al arco

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTAL

03112011

18

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTALTAL

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTALTALTOTOTALTOTOTOTOTALhellip

Cadenas de Markov Texto aleatorio generado a partir de un modelo

entrenado con el primer capiacutetulo de ldquo100 antildeos de soledadrdquo de Gabriel Garciacutea Marquez

Mapl idoca Uno domen quespiate meacute s abrdiacuteaton quadelaros del y en ioacutera puacutellade y antildeosar soacute Ar e Pon s toacutentun llose fase co tus pe foaciguela tr de paquros losintun oceton deros picaras ro pigeltexpa Arrcoacuten asadosen ca hiacuteracugidend madel cos pelo ca hamuy cuncte preraletrapuina venco sosueacute gifuas y estiogidire y ple peno do dociemanoacutey den matrones s Arseacutelades lelanelo lacides Jombidorentioacute lla caqueacutetrotan de ciechitevo pa e troacute ulega teilizaban riacuteaden zopendesellaundo u ca tioroserar vorasun plara en fue dempa teresen y umusmpio y sedes s s ezordel rugexhas darmabioacute

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N Extensioacuten a las cadenas de Markov en las que cada

estados representa una secuencia de N observaciones consecutivas

N-gramas

Ocurrencias

che 60

chi 25

cha 10

cho 5

ch

ch se observa 100 veces de las cualeshellip

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N=2

ISMI

SS

SI

IP

PP

PI

10

1010

10

10o5 o5

M I S S I S S I P P I

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N=3

ISSMIS

SSI

SIS

SIP

IPP

PPI

10

10

10

10

10

o5

o5

M I S S I S S I P P I

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

19

Cadenas de Markov de orden N N=1

Modelo fiel a las frecuencias de cada par de letras

No representa bien el lenguaje natural

Dr Marcelo G Armentano - ISISTAN - UNICEN

Mapl idoca Uno domen quespiate meacute s abrdiacuteaton quadelaros del y en ioacutera puacutellade y antildeosar soacute Ar e Pon s toacutentun llose fase co tus pe foaciguela tr de paquros losintun oceton deros picaras ro pigeltexpa Arrcoacuten asadosen ca hiacuteracugidend madel cos pelo ca hamuy cuncte preraletrapuina venco sosueacute gifuas y estiogidire y ple peno do dociemanoacutey den matrones s Arseacutelades lelanelo lacides Jombidorentioacute lla caqueacutetrotan de ciechitevo pa e troacute ulega teilizaban riacuteaden zopendesellaundo u ca tioroserar vorasun plara en fue dempa teresen y umusmpio y sedes s s ezordel rugexhas darmabioacute

Cadenas de Markov de Orden N Texto aleatorio generado N=2

Muca donios y hombre llas res pla plambregrimanteoacute el la sioacute entude Salemo fue uncioacuten co crioacuten Tendiacutea en sula ta chicalque le siezblena que tras senterosagareto mdashgruel res entorasanesbazuerasabepaacuten enda con de in inagercamieropito don cuarecior siblimena tero en joacute te Fuedo paresegua pespurantespuen dos porodad de la que cabaquentra denabrencestiminotescuyoacute quel mor loseacute Acturo pen for es ella guanos mitadraratientoacuten condiacutea la allado quen se logoacute la balaritiva triblesala soacutelos habalcabiempor ere griacutea to borse allas laciasiacutemisible por pocaza los so ola la nintildeos cuaro eacutel y lar espiendismo antildeonetrouna que cad fuerofocieres resa combrempuros parsu misiblocerma anoceraya elos no a y ejoacute desta una tioacuten

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Texto aleatorio generado N=3

Muchetextremecitano conveniencia Cuando por acora pre hablancie el rudienteel pusierantado poblado pago y aumentar animaginacioacuten aza des examillos maacutes gigaciera suellevoacute los que inte la viajes rayos imales hacedor y el teacuterminuto pueses siles expedas mocha que la tanos ser en que vez lles la como la maacutes pase lo uacutenicos romera lado JoseacuteArcadiosas antes al realejo en que de dejoacute todidos tre distilado infinito desco a le se para ver bolada alquiacutedea

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Texto aleatorio generado N=4

Muchos y salambioacute un chaleco de habiacutea burla como el pasoacute la resto de aban su fue ser prendedor condo una buena de las casaquimisterios Joseacute Arcadio Buendiacutea sino esentoacute como un en aquel tambor quedoacute recuerdo de un fugitivo en que en que sierrar los metalejos a puestaban de una tersas y el mundo sino consolas y veiacutean desar a la casa cuyos sin comer Aureliano conjuro de el esperso de piedras

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N = 3-4

Comienzan a aparecer palabras maacutes reconocibles

Palabras de muchas letras aparecen frecuentemente ldquopegadasrdquo a otras palabras

Cuanto maacutes extenso es el texto de entrenamiento maacutes variedad habraacute en la salida

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Entrenamiento con palabras completas (N=1)

Texto generado

Se habiacutea que construyoacute trampas y sus iniciales encima con una insolacioacuten por mares incoacutegnitos visitar territorios maacutes emprendedor que se hundiacutean en las maravillas del mundo Era una explicacioacuten inmediata Joseacute Arcadio Buendiacutea la resonancia hueca de helechos y entonces una truculenta demostracioacuten con un aacutespero sabor de fusilamiento el interior y tambores y a prepararse para llevaacuterselos a palmo a conocerlo mantuvo puesta por los burros Asiacute fue desde haciacutea mucho tiempo porque el mundo se asomaba al caramelo vulgar que un paacutenico cuando llegoacute la judiacutea

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

20

Cadenas de Markov de Orden N Entrenamiento con palabras completas (N=4)

Texto generado

Consideraba como una burla de su travieso destino haber buscado el mar sin encontrarlo al precio de sacrificios y penalidades sin cuento y haberlo encontrado entonces sin buscarlo atravesado en su camino como un obstaacuteculo insalvable Uacutersula no volvioacute a acordarse de la intensidad de esa mirada hasta un diacutea en que el pequentildeo Aureliano a la edad de tres antildeos entroacute a la cocina en el momento en que ella retiraba del fogoacuten y poniacutea en la mesa una olla de caldo hirviendo Aquel olor mordiente quedariacutea para siempre en su memoria vinculado al recuerdo de Melquiacuteades

Dr Marcelo G Armentano - ISISTAN - UNICEN

Modelos de Markov Conjunto de estados

El proceso se mueve de un estado a otro generando unasecuencia de estados

Propiedad de Markov la probabilidad de cada estadosiguiente depende soacutelo del estado previo

bull Para definir un modelo de Markov deben especificarselas siguientes probabilidades

21 Nsss K

KK 21 ikii sss

)|()|( 1121 minusminus = ikikikiiik ssPssssP K

)|( jiij ssPa =)( ii sP=π

Probabilidad del estado inicial Probabilidad de transicioacuten de estados

Dr Marcelo G Armentano - ISISTAN - UNICEN

Lluvioso Seco

0703

02 08

Ejemplo de modelo de Markov

Dos posibles estados lsquoLluviosorsquo ylsquoSecorsquo Probabilidades de Transicioacuten

P(lsquoLluviosorsquo|lsquoLluviosorsquo)=03 P(lsquoSecorsquo|lsquoLluviosorsquo)=07

P(lsquoLluviosorsquo|lsquoSecorsquo)=02 P(lsquoSecorsquo|lsquoSecorsquo)=08

Probabilidades iniciales

P(lsquoLluviosorsquo)=04 P(lsquoSecorsquo)=06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Probabilidad de una secuencia Por la probabilidad de Markov

P(lsquoSecorsquorsquoSecorsquorsquoLluviosorsquorsquoLluviosorsquo ) =P(lsquoLluviosorsquo|rsquoLluviosorsquo) P(lsquoLluviosorsquo|rsquoSecorsquo)

P(lsquoSecorsquo|rsquoSecorsquo) P(lsquoSecorsquo) = 03020806 = 00288

)()|()( 12112121 minusminus= ikiiikiiikikii sssPssssPsssP KKK

)()|()|()|(

)()|(

112211

1211

iiiikikikik

ikiiikik

sPssPssPssP

sssPssP

K

KK

minusminusminus

minusminus

=

==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Underflow El producto de muchas probabilidades entre 0 y 1

puede resultar en underflow

Dado que log(xy) = log(x) + log(y) es mejor realizar la suma del logaritmo de las probabilidades que multiplicarlas

El modelo con el mayor puntaje final de probabilidad logariacutetmica sigue siendo la maacutes probable

Dr Marcelo G Armentano - ISISTAN - UNICEN

Hipoacutetesis del maacuteximo a posteriori

)|(maxarg DhPhHh

MAPisin

equiv

)(

)()|(maxarg

DP

hPhDP

Hhisin

=

)()|(maxarg hPhDPHhisin

=

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

21

Modelos Ocultos de Markov (HMM)

Conjunto de estados El proceso de mueve de un estado a otro generando una secuencia de

estados

Propiedad de Markov La probabilidad de cada estado depende solo del estado actual

Los estados no son visibles pero cada estado genera aleatoriamente unade las posibles observaciones (estados visibles)

Para definir un modelo oculto de Markov se deben especificar las siguientes probabilidades Matriz de probabilidades transicioacuten A=(aij) aij= P(si | sj) Matriz de probabilidades de observacioacuten B=(bi (vm )) bi(vm )= P(vm | si) Vector de probabilidades iniciales π=(πi) πi = P(si)

Los modelos quedan definidos por la tripla M=(A B π)

21 Nsss K

KK 21 ikii sss

)|()|( 1121 minusminus = ikikikiiik ssPssssP K

21 Mvvv K

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

Baja Alta

0703

02 08

Lluvioso Seco

06 0604 04

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

bull Dos estados correspondientes a la presioacuten atmosfeacutericabull lsquoAltarsquo y lsquoBajarsquo

bull Dos posibles observaciones bull lsquoLluviosorsquo y lsquoSecorsquo

bull Probabilidades de Transicioacuten

bull P(lsquoBajarsquo|lsquoBajarsquo)=03 P(lsquoAltarsquo|lsquoBajarsquo)=07 P(lsquoBajarsquo|lsquoAltarsquo)=02

P(lsquoAltarsquo|lsquoAltarsquo)=08bull Probabilidades de Observacioacuten

bull P(lsquoLluviosorsquo|lsquoBajarsquo)=06 P(lsquoSecorsquo|lsquoBajarsquo)=04

P(lsquoLluviosorsquo|lsquoAltarsquo)=04 P(lsquoSecorsquo|lsquoAltarsquo)=03 bull Probabilidades iniciales

bull P(lsquoBajarsquo)=04 P(lsquoAltarsquo)=06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM Prediccioacuten del tiempo de acuerdo al estado de un alga

empapado huacutemedo casi seco seco

nubes lluviasol

Oculto

Observable

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

Empapado Huacutemedo Casi seco Seco

Sol 060 020 015 005

Nubes 025 025 025 025

Lluvia 005 010 035 050

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

22

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

i P(qt+1=S1|qt=Si)

P(qt+1=S2|qt=Si)

P(qt+1=Sj|qt=Si)

P(qt+1=SN

|qt=Si)

1 a11 a12 hellip a1j hellip a1N

2 a21 a22 hellip a2j hellip a2N

3 a31 a32 hellip a3j hellip a3N

hellip

i ai1 ai2 hellip aij hellip aiN

hellip

N aN1 aN2 hellip aNj hellip aNN

Todas estas tablas son

iguales

aij = P (qt+1=sj|qt=si)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

i P(Ot=1|qt=Si) P(Ot=2|qt=Si) P(Ot=j|qt=Si) P(Ot=N|qt=Si)

1 b1(1) b1(2) hellip b1(j) hellip b1(N)2 b2(1) b2(2) hellip b2(j) hellip b2(N)3 b3(1) b3(2) hellip b3(j) hellip b3(N)hellip

i Bi(1) bi(2) hellip bi(j) hellip bi(N)hellip

N bN(1) bN(2) hellip bN(j) hellip bN(N)

bi(j) = P (Ot=j|qt=si)

Todas estas tablas son

iguales

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

un enrejado

s1

s2

si

sN

s1

s2

si

sN

s1

s2

sj

sN

s1

s2

si

sN

a1j

a2j

aij

aNj

1 k k+1 K

o1 ok ok+1 oKObservaciones

Tiempo

Ejemplo Casino tramposo

Un casino tiene dos dados Dado ldquojustordquo

P(1) = P(2) = P(3) = P(5) = P(6) = 16 Dado cargado

P(1) = P(2) = P(3) = P(4) = P(5) = 110P(6) = 12

El casino alterna entre el dado justo y el cargado una vezcada 20 turnos

Problemas a resolver con HMM Evaluacioacuten

Dado un HMM M=(A B π) y una secuencia de observaciones O=o1 o2 oK calcular la probabilidad de que el modelo M haya generado la secuencia O

Dr Marcelo G Armentano - ISISTAN - UNICEN

EvaluacioacutenDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestCuan probable es esta secuencia dado nuestromodelo de como opera el casino

Este es el problema de EVALUACIOacuteN en HMMs

03112011

23

Problemas a resolver con HMM Decodificacioacuten o inferencia

Dado un HMM M=(A B π) y una secuencia de observaciones O=o1 o2 oK calcular la secuencia de estados ocultos Si que maacutes probablemente produjo la secuencia de observaciones O

Dr Marcelo G Armentano - ISISTAN - UNICEN

DecodificacioacutenDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestQue partes de la secuencia fueron generadas por el dado cargado y cuales por el dado justo

Este es el problema de DECODIFICACIOacuteN en HMMs

Problemas a resolver con HMM Aprendizaje

Dado un conjunto de secuencias de observaciones de entrenamiento O=o1 o2 oK y la estructura general de HMM (cantidad de estados ocultos y cantidad de estados visibles) determinar los paraacutemetros del HMM M=(A B π) que mejor se ajustan a los datos de entrenamiento

Dr Marcelo G Armentano - ISISTAN - UNICEN

AprendizajeDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestCoacutemo estaacute cargado el dado cargado iquestCada cuantocambia el casino entre el dado cargado y el justo

Este es el problema de APRENDIZAJE en HMMs

El HMM del casino tramposo

JUSTO CARGADO

005

005

095095

P(1|Justo) = 16P(2|Justo) = 16P(3|Justo) = 16P(4|Justo) = 16P(5|Justo) = 16P(6|Justo) = 16

P(1|Cargado) = 110P(2|Cargado) = 110P(3|Cargado) = 110P(4|Cargado) = 110P(5|Cargado) = 110P(6|Cargado) = 12

Ejemplo reconocimiento de

palabras Se asume que los caracteres estaacuten separados

El reconocedorde caracteres da como salida la probabilidad de que una imagen corresponda a un caracterparticular P(caracter|imagen)

05

003

0005

031z

c

b

a

Estado Oculto

Estado Observable

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

24

Ejemplo reconocimiento de

palabras Estados Ocultos del HMM caracteres

Estados Observables imagenes de caracteres

Probabilidades de Observacioacutenαv

( ) ( ))|()( ii svPvbB αα ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo reconocimiento de

palabras Si se conoce el diccionario es posible construir un modelo

individual para cada palabra

bull Problema de evaluacioacuten reconocer la palabra en unaimagen es equivalente a evaluar un conjunto de modelos

amigos a m i g o s

buacutefalo b uacute f a l o

05 003 04 06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo reconocimiento de

palabras Podemos construir un HMM para todas las palabras

Estados ocultos los caracteres de las palabras

Probabilidades de transicioacuten calculadas a partir de modelos del lenguaje

Observaciones y probabilidades de observacioacuten iguales al ejemplo anterior

Problema de decodificacioacuten encontrar la secuencia de estados ocultos que maacutes probablemente generaron la imagen

a m

i g

o

s

t

b v

f

u

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

Forward-Backward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward

Seco Huacutemedo EmpapadoObs

Sol

Nubes

Lluvia

Sol

Nubes

Lluvia

Sol

Nubes

Lluvia

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward Pr(Seco Huacutemedo Empapado|M) =

Pr(seco huacutemedo empapado|sol sol sol) +

Pr(seco huacutemedo empapado|sol nubes sol) +

hellip

Pr(seco huacutemedo empapado|lluvia lluvia lluvia)

iexcliexclMuy Costoso

33 = 27 caacutelculos

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

25

Algoritmo Forward Reduccioacuten de la complejidad

Probabilidad parcial de alcanzar un estado intermedio en el entramado

Yk1 Yk2 hellip YkT

Sol

Nubes

Lluvia

Nubes

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward αt(j)= Pr(obs|estado oculto es j)

Pr( todos los caminos al estado j en el tiempo t)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward En el tiempo t=1

En el tiempo t gt1

α1(j)=π(j) Pr(obs|estado j)

αt(j)=Pr(todos los caminos a j) Pr(obs|estado j)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward

Terminacioacuten

Dr Marcelo G Armentano - ISISTAN - UNICEN

sum=

=n

j

T jMObs1

)()|Pr( α

sum=

++ =n

i

ijttjt ajobj1

11 )()()( αα

Algoritmo Forward

Sol

α1(sol)=π(sol) bsol(humedo)

Nubes

α1(nubes)=π(nubes) bnubes(humedo)

Lluvia

α1(lluvia)=π(lluvia) blluvia(humedo)

)()(secb )(nubesi1nubes2 sum sdotsdot=

iaionubes αα

Nubes

asolnubes

anubesnubes

alluvianubes

Huacutemedo Seco

Algoritmo Backward

Se define la variable β

)|()( 21 λβ iqoooPi tTttt == ++

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

26

Algoritmo Backward

Inicializacioacuten

Caacutelculo

Finalizacioacuten

1)( =jTβ

1 1

1

( ) ( ) ( )N

t t ij j t

j

i j a b oβ β + +=

=sum

sum=

=N

i

i iobiOp1

11 )()()()|( βπλ 11minus= Tt

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

Forward- Backward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Encontrar la secuencia maacutes probable de estados

ocultos dada una secuencia de observaciones

Ejemplo etiquetar palabras en una oracioacuten con su funcioacuten sintaacutectica

iquestEstados observables iquestEstados ocultos

Juan come naranjasNS NP OD

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Probabilidad parcial δ de alcanzar un estado

intermedio particular en el entramado

δ representa la probabilidad del camino maacutes probable a un estado

Para cada estado final hay un camino maacutes probable a ese estado

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi δ(it) es la maacutexima probabilidad de todas las

secuencias que terminan en el estado i en el tiempo t

En t=T tenemos las mejores probabilidades parciales y los mejores caminos parciales

El mejor camino global a T es el que lleva al estado con la mayor probabilidad

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En t=1

)()()1( 1obii isdot= πδ

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

27

Algoritmo de Viterbi En tgt1

A

B

C

Xhellip

Tltt-1 t-1 t

Pr(x en T=t) = maxi=ABC Pr(i en T=t-1) Pr(X|i) Pr(Ot|X)

)())1((max)( tiijj

obajtit sdotsdotminus= δδDr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En cada tiempo t recordamos el estado j que generoacute

δ(ti)

Se reconstruye el camino utilizando los punteros φhasta el tiempo t=1

ijj

ajtit )1(max)( sdotminus= δφ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi

)(max1

iP TNi

δlele

=lowast

)(maxarg1

iq TNi

T δlele

lowast =

P da la probabilidad de los mejores los estados

qT is la secuencia de estados oacuteptima(Q = q1q2hellipqT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

ForwardBackward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Dada un conjunto de secuencias de observaciones O=o1 o2

oK y la estructura general del HMM (cantidadde estados ocultos

y visibles) determinar los paraacutemetros del modelo M=(A B π) que mejor se ajustan a los datos de entrenamiento es decir

que maximice P(O | M)

Se utiliza el algoritmo de maximizacioacuten de la esperanza para

encontrar un maacuteximo local de P(O | M) algoritmo Baum-Welch

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Si los datos de entrenamiento tienen informacioacuten

acerca de la secuencia de estados ocultos los paraacutemetros se estiman como

xsestransicion

ssestransicionssPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

sveces

senodenesobservaciosoPob

)|()( ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

28

Algorimo Baum-Welch Idea general

xsestransiciondeesperado

ssestransiciondeesperadossPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

svecesdeesperado

senodenesobservaciodeesperadosoPob

)|()( ==

1)( === tparasenvecesdeesperadosP iiiπ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

ξt(ij)= P(qt= si qt+1= sj |o1 o2 oT)

ξt(ij)=P(qt= si qt+1= sj o1 o2 oT)

P(o1 o2 oT)=

P(qt= si o1 o2 ot) aij bj (ot+1 ) P(ot+2 oT | qt+1= sj ) P(o1 o2 oT)

=

=αt(i) aij bj (ot+1 ) βt+1(j)

ΣiΣj αt(i) aij bj (ot+1 ) βt+1(j)

αt(i) aij bj (ot+1 ) βt+1(j)

Σi αt(i) βt(i)Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

tiempo

Estados ocultos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch Definimos γt(i) como la probabilidad de estar en el

estado i en el tiempo t dadas las observaciones

Σt γt(i) - cantidad esperada de veces que visitoel estado i

Σt ξt(ij) - cantidad esperada de transiciones

sum=

=N

j

tt jii1

)()( ξγ

ji rarr

γt(i)= P(qt= si |o1 o2 oT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

sumsum

=)(

)(ˆ

i

jia

t

t

ijγ

ξ

sum

sum ==

)(

)()(ˆ

j

job

t

oot t

kjkt

γ

γ

)(ˆ1 iγπ = la frecuencia esperada del estado i en t=1

nuacutemero esperado de transiciones desde el estado i al estado j sobre la cantidad esperada de transiciones desde el estado i

cantidad de veces que se estuvo en el estado j observando el siacutembolo k sobre la cantidad de veces que se estuvo en el estado j

Dr Marcelo G Armentano - ISISTAN - UNICEN

Bibliografiacutea Bayesian Networks and Decision Graphs - Finn V

Jensen and Thomas D Nielsen - Springer Verlag -Second Edition - 2007

A tutorial on hidden Markov models and selected applications in speech recognition - Lawrence R Rabiner - Proceedings of the IEEE Vol 77 Nordm2 pp 257-286 - 1989

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

29

iquestConsultas

Dr Marcelo G Armentano - ISISTAN - UNICEN

Page 11: redes bayesianas UNICEN.pdf

03112011

11

Aprendizaje adaptativo con tablas

de desvanecimiento A veces las observaciones viejas no son tan importantes

como las nuevas en el proceso de adaptacioacuten Entonces tenemos que ldquodesaprenderrdquo u ldquoolvidarrdquo algunas de ellas

Las observaciones nuevas son maacutes importantes que las viejas y por lo tanto se les debe dar maacutes peso durante la adaptacioacuten

Se introduce un factor de desvanecimiento que indica la tasa con la cual se olvidan las observaciones previas 0 no hay adaptacioacuten 1 no hay desvanecimiento

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje adaptativo con tablas

de desvanecimiento

Yes No

Cantidad de experiencias

10 5

P(Smoker=yes) = yes) (yes + no) = 10 15 = 0667

P(Smoker=no) = no) (yes + no) = 5 15 = 0333Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje adaptativo con tablas

de desvanecimiento Smoker=yes Fading factor(s) = 05

(Smoker=yes) = factor (yes-previos) + 1= 05 10 + 1 = 6

(Smoker=no) = factor (no-previos) = 05 5 = 25

(experiencias) = 6 + 25 = 85

P(Smoker=yes) = 6 85 = 07059 P(Somker=no) = 25 85 = 02941

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje estructural

Earthquake Alarm Set

Sound

Burglary Earthquake Alarm Set

Sound

Burglary

Earthquake Alarm Set

Sound

Burglary

Si sobra un arcoSi falta un arco

bull Aumenta el nuacutemero de paraacutemetros a ser estimados

bull Suposiciones erroacuteneas acerca del dominio

bull No puede ser solucionado ajustando los paraacutemetros

bull Suposiciones erroacuteneas acerca del dominio

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje estructural Search and Score

Meacutetrica de puntuacioacuten (Score) Mide la calidad de la estructura graacutefica Se utiliza para decidir cual es la mejor solucioacuten

Algoritmo de buacutesqueda Selecciona un pequentildeo subconjunto de las posibles

redes que tengan una calidad alta Se selecciona la ldquomejorrdquo

Dr Marcelo G Armentano - ISISTAN - UNICEN

Basado en optimizaciones

E B A

ltYNNgt

ltYYYgt

ltNNYgt

ltNYYgt

ltNYYgtE B

A

E

B

A

E

BA

Buscar una estructura que maximice esa funcioacuten

Definir una funcioacuten que evaluacutee queacute tan bien se asemeja el modelo a los datos

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

12

Aprendizaje estructural Tests de independencia

Obtienen las dependencias condicionales y lasindependencias utilizando tests de independenciasentre triplas de variables

Por ejemplo tests estadiacutesticos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo K2 Score and Search Buacutesqueda Greedy Muy eficiente Asume que las variables estaacuten ordenadas Comienza con una red sin arcos En cada iteracioacuten para cada variable Xi el nodo cuyo orden

es previo a Xi y que incrementa la calidad de la red se agrega a =Pa(Xi)

Se repite el proceso hasta que No hay incremento en la calidad de la red Se llega a una red completa

La cantidad de padres puede limitarse

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo B Score and Search

No requiere un ordenamiento previo de las variables

Controlar ciclos

Comienza con un conjunto vaciacuteo de padres

En cada iteracioacuten agrega un arco tal que

No produce ciclos

Maximiza la calidad de la red

El proceso se detiene cuando

No se incrementa la calidad de la red 0 Se llega a una red completa

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PC Tests de Independencia

Dos fases Construccioacuten del esqueleto

Encontrar las direcciones de los arcos mediante tests de independencia

Orientar el resto de los arcos sin producir ciclos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PC Construccioacuten del esqueleto

Comienza con un grafo no dirigido totalmente conectado

Mediante tests de independencia va eliminando arcos que no cumplen la siguiente condicioacuten Dos nodos X e Y estaacuten conectados si y soacutelo si no existe un

subconjunto Sxy del conjunto de veacutertices V tal que I(XY|Sxy) sea verdadero

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PCComienza con un grafo completo no dirigido gpi = 0Repeat

For each X isinisinisinisin VFor each Y isinisinisinisin ADJX

Determinar si existe Ssube ADJX ndashY con |S| = i y I(XY|S)Si este conjunto existe

SXY = SEliminar el arco X-Y

i = i+1Until |ADJX| lelelele i forallforallforallforallX

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

13

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=

i=0

SI

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

SI

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

03112011

14

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

i=1

SI

SXY=SXW=SZW=Y

03112011

15

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

No hay nodos con maacutes de 3 adyacentes

Algoritmo PC Encontrar las direcciones de los arcos mediante tests

de independencia (tomando las variables de a tres) Para cada variable Z con dos adyacentes X e Y

comprueba que no Z no esteacute en Sxy para conectar a X e Y como padres de Z

Z XY

Z XY

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

ZnotinSXY

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

ZnotinSXY

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

TnotinSZW

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

TnotinSZW

03112011

16

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

Se orienta arbitrariamente (evitando ciclos)

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

Herramientas Hugin

httpwwwhugincomProducts_ServicesProductsDemo

Bayesware httpwwwbayeswarecom

JavaBayes httpwww-2cscmuedu~javabayes

Paacutegina de Finn Jensen httpwwwcsaaudk~fvj

Dr Marcelo G Armentano - ISISTAN - UNICEN

Agenda Introduccioacuten

Redes de Bayes

Modelos de Markov Introduccioacuten

Cadenas de Markov

Modelos Ocultos de Markov

Dr Marcelo G Armentano - ISISTAN - UNICEN

Introduccioacuten Modelar dependencias entre siacutembolos de una

secuencia Temporales

En reconocimiento del habla fonemas en una palabra palabras en una oracioacuten (reconocimiento sintaacutectico)

Espaciales Reconocimiento de escritura

Secuencias de genes

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

17

Procesos aleatorios de Markov Una secuencia aleatoria tiene la propiedad de markov si su

distribucioacuten de probabilidades estaacute determinadauacutenicamente por el estado actual Un proceso aleatorio quecumple con esta propiedad se llama un proceso aleatorio de Markov

Cuando los estados son observables cadenas de Markov

Cuando los estados no son observables modelos ocultos de markov (HMM hidden Markov models)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Regla de Bayes

)()|()( 111111 qqPqqqPqqqP ttttt minusminusminus =

)()|()|()( 121211111 qqPqqqPqqqPqqqP ttttttt minusminusminusminusminus =

prod=

minusminus =t

i

iitt qqqPqPqqqP2

11111 )|()()(

Dr Marcelo G Armentano - ISISTAN - UNICEN

Propiedad de Markov

1)|()|( 111 gt= minusminus iforqqPqqqP iiii

)|()|()()|()()( 1121

2

1111 minus=

minusminus == prod tt

t

i

iitt qqPqqPqPqqPqPqqqP

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov Pueden verse como un grafo de transicioacuten de estados

con probabilidades en sus arcos

Ejemplo Generacioacuten de Texto Aleatorio Un nodo por cada letra uacutenica observada

Si luego de la letra X observo la letra Y agrego un arco de X a Y Si el arco ya existe incremento la cantidad de observaciones

asociada al arco

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTAL

03112011

18

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTALTAL

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTALTALTOTOTALTOTOTOTOTALhellip

Cadenas de Markov Texto aleatorio generado a partir de un modelo

entrenado con el primer capiacutetulo de ldquo100 antildeos de soledadrdquo de Gabriel Garciacutea Marquez

Mapl idoca Uno domen quespiate meacute s abrdiacuteaton quadelaros del y en ioacutera puacutellade y antildeosar soacute Ar e Pon s toacutentun llose fase co tus pe foaciguela tr de paquros losintun oceton deros picaras ro pigeltexpa Arrcoacuten asadosen ca hiacuteracugidend madel cos pelo ca hamuy cuncte preraletrapuina venco sosueacute gifuas y estiogidire y ple peno do dociemanoacutey den matrones s Arseacutelades lelanelo lacides Jombidorentioacute lla caqueacutetrotan de ciechitevo pa e troacute ulega teilizaban riacuteaden zopendesellaundo u ca tioroserar vorasun plara en fue dempa teresen y umusmpio y sedes s s ezordel rugexhas darmabioacute

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N Extensioacuten a las cadenas de Markov en las que cada

estados representa una secuencia de N observaciones consecutivas

N-gramas

Ocurrencias

che 60

chi 25

cha 10

cho 5

ch

ch se observa 100 veces de las cualeshellip

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N=2

ISMI

SS

SI

IP

PP

PI

10

1010

10

10o5 o5

M I S S I S S I P P I

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N=3

ISSMIS

SSI

SIS

SIP

IPP

PPI

10

10

10

10

10

o5

o5

M I S S I S S I P P I

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

19

Cadenas de Markov de orden N N=1

Modelo fiel a las frecuencias de cada par de letras

No representa bien el lenguaje natural

Dr Marcelo G Armentano - ISISTAN - UNICEN

Mapl idoca Uno domen quespiate meacute s abrdiacuteaton quadelaros del y en ioacutera puacutellade y antildeosar soacute Ar e Pon s toacutentun llose fase co tus pe foaciguela tr de paquros losintun oceton deros picaras ro pigeltexpa Arrcoacuten asadosen ca hiacuteracugidend madel cos pelo ca hamuy cuncte preraletrapuina venco sosueacute gifuas y estiogidire y ple peno do dociemanoacutey den matrones s Arseacutelades lelanelo lacides Jombidorentioacute lla caqueacutetrotan de ciechitevo pa e troacute ulega teilizaban riacuteaden zopendesellaundo u ca tioroserar vorasun plara en fue dempa teresen y umusmpio y sedes s s ezordel rugexhas darmabioacute

Cadenas de Markov de Orden N Texto aleatorio generado N=2

Muca donios y hombre llas res pla plambregrimanteoacute el la sioacute entude Salemo fue uncioacuten co crioacuten Tendiacutea en sula ta chicalque le siezblena que tras senterosagareto mdashgruel res entorasanesbazuerasabepaacuten enda con de in inagercamieropito don cuarecior siblimena tero en joacute te Fuedo paresegua pespurantespuen dos porodad de la que cabaquentra denabrencestiminotescuyoacute quel mor loseacute Acturo pen for es ella guanos mitadraratientoacuten condiacutea la allado quen se logoacute la balaritiva triblesala soacutelos habalcabiempor ere griacutea to borse allas laciasiacutemisible por pocaza los so ola la nintildeos cuaro eacutel y lar espiendismo antildeonetrouna que cad fuerofocieres resa combrempuros parsu misiblocerma anoceraya elos no a y ejoacute desta una tioacuten

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Texto aleatorio generado N=3

Muchetextremecitano conveniencia Cuando por acora pre hablancie el rudienteel pusierantado poblado pago y aumentar animaginacioacuten aza des examillos maacutes gigaciera suellevoacute los que inte la viajes rayos imales hacedor y el teacuterminuto pueses siles expedas mocha que la tanos ser en que vez lles la como la maacutes pase lo uacutenicos romera lado JoseacuteArcadiosas antes al realejo en que de dejoacute todidos tre distilado infinito desco a le se para ver bolada alquiacutedea

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Texto aleatorio generado N=4

Muchos y salambioacute un chaleco de habiacutea burla como el pasoacute la resto de aban su fue ser prendedor condo una buena de las casaquimisterios Joseacute Arcadio Buendiacutea sino esentoacute como un en aquel tambor quedoacute recuerdo de un fugitivo en que en que sierrar los metalejos a puestaban de una tersas y el mundo sino consolas y veiacutean desar a la casa cuyos sin comer Aureliano conjuro de el esperso de piedras

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N = 3-4

Comienzan a aparecer palabras maacutes reconocibles

Palabras de muchas letras aparecen frecuentemente ldquopegadasrdquo a otras palabras

Cuanto maacutes extenso es el texto de entrenamiento maacutes variedad habraacute en la salida

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Entrenamiento con palabras completas (N=1)

Texto generado

Se habiacutea que construyoacute trampas y sus iniciales encima con una insolacioacuten por mares incoacutegnitos visitar territorios maacutes emprendedor que se hundiacutean en las maravillas del mundo Era una explicacioacuten inmediata Joseacute Arcadio Buendiacutea la resonancia hueca de helechos y entonces una truculenta demostracioacuten con un aacutespero sabor de fusilamiento el interior y tambores y a prepararse para llevaacuterselos a palmo a conocerlo mantuvo puesta por los burros Asiacute fue desde haciacutea mucho tiempo porque el mundo se asomaba al caramelo vulgar que un paacutenico cuando llegoacute la judiacutea

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

20

Cadenas de Markov de Orden N Entrenamiento con palabras completas (N=4)

Texto generado

Consideraba como una burla de su travieso destino haber buscado el mar sin encontrarlo al precio de sacrificios y penalidades sin cuento y haberlo encontrado entonces sin buscarlo atravesado en su camino como un obstaacuteculo insalvable Uacutersula no volvioacute a acordarse de la intensidad de esa mirada hasta un diacutea en que el pequentildeo Aureliano a la edad de tres antildeos entroacute a la cocina en el momento en que ella retiraba del fogoacuten y poniacutea en la mesa una olla de caldo hirviendo Aquel olor mordiente quedariacutea para siempre en su memoria vinculado al recuerdo de Melquiacuteades

Dr Marcelo G Armentano - ISISTAN - UNICEN

Modelos de Markov Conjunto de estados

El proceso se mueve de un estado a otro generando unasecuencia de estados

Propiedad de Markov la probabilidad de cada estadosiguiente depende soacutelo del estado previo

bull Para definir un modelo de Markov deben especificarselas siguientes probabilidades

21 Nsss K

KK 21 ikii sss

)|()|( 1121 minusminus = ikikikiiik ssPssssP K

)|( jiij ssPa =)( ii sP=π

Probabilidad del estado inicial Probabilidad de transicioacuten de estados

Dr Marcelo G Armentano - ISISTAN - UNICEN

Lluvioso Seco

0703

02 08

Ejemplo de modelo de Markov

Dos posibles estados lsquoLluviosorsquo ylsquoSecorsquo Probabilidades de Transicioacuten

P(lsquoLluviosorsquo|lsquoLluviosorsquo)=03 P(lsquoSecorsquo|lsquoLluviosorsquo)=07

P(lsquoLluviosorsquo|lsquoSecorsquo)=02 P(lsquoSecorsquo|lsquoSecorsquo)=08

Probabilidades iniciales

P(lsquoLluviosorsquo)=04 P(lsquoSecorsquo)=06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Probabilidad de una secuencia Por la probabilidad de Markov

P(lsquoSecorsquorsquoSecorsquorsquoLluviosorsquorsquoLluviosorsquo ) =P(lsquoLluviosorsquo|rsquoLluviosorsquo) P(lsquoLluviosorsquo|rsquoSecorsquo)

P(lsquoSecorsquo|rsquoSecorsquo) P(lsquoSecorsquo) = 03020806 = 00288

)()|()( 12112121 minusminus= ikiiikiiikikii sssPssssPsssP KKK

)()|()|()|(

)()|(

112211

1211

iiiikikikik

ikiiikik

sPssPssPssP

sssPssP

K

KK

minusminusminus

minusminus

=

==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Underflow El producto de muchas probabilidades entre 0 y 1

puede resultar en underflow

Dado que log(xy) = log(x) + log(y) es mejor realizar la suma del logaritmo de las probabilidades que multiplicarlas

El modelo con el mayor puntaje final de probabilidad logariacutetmica sigue siendo la maacutes probable

Dr Marcelo G Armentano - ISISTAN - UNICEN

Hipoacutetesis del maacuteximo a posteriori

)|(maxarg DhPhHh

MAPisin

equiv

)(

)()|(maxarg

DP

hPhDP

Hhisin

=

)()|(maxarg hPhDPHhisin

=

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

21

Modelos Ocultos de Markov (HMM)

Conjunto de estados El proceso de mueve de un estado a otro generando una secuencia de

estados

Propiedad de Markov La probabilidad de cada estado depende solo del estado actual

Los estados no son visibles pero cada estado genera aleatoriamente unade las posibles observaciones (estados visibles)

Para definir un modelo oculto de Markov se deben especificar las siguientes probabilidades Matriz de probabilidades transicioacuten A=(aij) aij= P(si | sj) Matriz de probabilidades de observacioacuten B=(bi (vm )) bi(vm )= P(vm | si) Vector de probabilidades iniciales π=(πi) πi = P(si)

Los modelos quedan definidos por la tripla M=(A B π)

21 Nsss K

KK 21 ikii sss

)|()|( 1121 minusminus = ikikikiiik ssPssssP K

21 Mvvv K

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

Baja Alta

0703

02 08

Lluvioso Seco

06 0604 04

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

bull Dos estados correspondientes a la presioacuten atmosfeacutericabull lsquoAltarsquo y lsquoBajarsquo

bull Dos posibles observaciones bull lsquoLluviosorsquo y lsquoSecorsquo

bull Probabilidades de Transicioacuten

bull P(lsquoBajarsquo|lsquoBajarsquo)=03 P(lsquoAltarsquo|lsquoBajarsquo)=07 P(lsquoBajarsquo|lsquoAltarsquo)=02

P(lsquoAltarsquo|lsquoAltarsquo)=08bull Probabilidades de Observacioacuten

bull P(lsquoLluviosorsquo|lsquoBajarsquo)=06 P(lsquoSecorsquo|lsquoBajarsquo)=04

P(lsquoLluviosorsquo|lsquoAltarsquo)=04 P(lsquoSecorsquo|lsquoAltarsquo)=03 bull Probabilidades iniciales

bull P(lsquoBajarsquo)=04 P(lsquoAltarsquo)=06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM Prediccioacuten del tiempo de acuerdo al estado de un alga

empapado huacutemedo casi seco seco

nubes lluviasol

Oculto

Observable

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

Empapado Huacutemedo Casi seco Seco

Sol 060 020 015 005

Nubes 025 025 025 025

Lluvia 005 010 035 050

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

22

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

i P(qt+1=S1|qt=Si)

P(qt+1=S2|qt=Si)

P(qt+1=Sj|qt=Si)

P(qt+1=SN

|qt=Si)

1 a11 a12 hellip a1j hellip a1N

2 a21 a22 hellip a2j hellip a2N

3 a31 a32 hellip a3j hellip a3N

hellip

i ai1 ai2 hellip aij hellip aiN

hellip

N aN1 aN2 hellip aNj hellip aNN

Todas estas tablas son

iguales

aij = P (qt+1=sj|qt=si)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

i P(Ot=1|qt=Si) P(Ot=2|qt=Si) P(Ot=j|qt=Si) P(Ot=N|qt=Si)

1 b1(1) b1(2) hellip b1(j) hellip b1(N)2 b2(1) b2(2) hellip b2(j) hellip b2(N)3 b3(1) b3(2) hellip b3(j) hellip b3(N)hellip

i Bi(1) bi(2) hellip bi(j) hellip bi(N)hellip

N bN(1) bN(2) hellip bN(j) hellip bN(N)

bi(j) = P (Ot=j|qt=si)

Todas estas tablas son

iguales

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

un enrejado

s1

s2

si

sN

s1

s2

si

sN

s1

s2

sj

sN

s1

s2

si

sN

a1j

a2j

aij

aNj

1 k k+1 K

o1 ok ok+1 oKObservaciones

Tiempo

Ejemplo Casino tramposo

Un casino tiene dos dados Dado ldquojustordquo

P(1) = P(2) = P(3) = P(5) = P(6) = 16 Dado cargado

P(1) = P(2) = P(3) = P(4) = P(5) = 110P(6) = 12

El casino alterna entre el dado justo y el cargado una vezcada 20 turnos

Problemas a resolver con HMM Evaluacioacuten

Dado un HMM M=(A B π) y una secuencia de observaciones O=o1 o2 oK calcular la probabilidad de que el modelo M haya generado la secuencia O

Dr Marcelo G Armentano - ISISTAN - UNICEN

EvaluacioacutenDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestCuan probable es esta secuencia dado nuestromodelo de como opera el casino

Este es el problema de EVALUACIOacuteN en HMMs

03112011

23

Problemas a resolver con HMM Decodificacioacuten o inferencia

Dado un HMM M=(A B π) y una secuencia de observaciones O=o1 o2 oK calcular la secuencia de estados ocultos Si que maacutes probablemente produjo la secuencia de observaciones O

Dr Marcelo G Armentano - ISISTAN - UNICEN

DecodificacioacutenDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestQue partes de la secuencia fueron generadas por el dado cargado y cuales por el dado justo

Este es el problema de DECODIFICACIOacuteN en HMMs

Problemas a resolver con HMM Aprendizaje

Dado un conjunto de secuencias de observaciones de entrenamiento O=o1 o2 oK y la estructura general de HMM (cantidad de estados ocultos y cantidad de estados visibles) determinar los paraacutemetros del HMM M=(A B π) que mejor se ajustan a los datos de entrenamiento

Dr Marcelo G Armentano - ISISTAN - UNICEN

AprendizajeDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestCoacutemo estaacute cargado el dado cargado iquestCada cuantocambia el casino entre el dado cargado y el justo

Este es el problema de APRENDIZAJE en HMMs

El HMM del casino tramposo

JUSTO CARGADO

005

005

095095

P(1|Justo) = 16P(2|Justo) = 16P(3|Justo) = 16P(4|Justo) = 16P(5|Justo) = 16P(6|Justo) = 16

P(1|Cargado) = 110P(2|Cargado) = 110P(3|Cargado) = 110P(4|Cargado) = 110P(5|Cargado) = 110P(6|Cargado) = 12

Ejemplo reconocimiento de

palabras Se asume que los caracteres estaacuten separados

El reconocedorde caracteres da como salida la probabilidad de que una imagen corresponda a un caracterparticular P(caracter|imagen)

05

003

0005

031z

c

b

a

Estado Oculto

Estado Observable

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

24

Ejemplo reconocimiento de

palabras Estados Ocultos del HMM caracteres

Estados Observables imagenes de caracteres

Probabilidades de Observacioacutenαv

( ) ( ))|()( ii svPvbB αα ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo reconocimiento de

palabras Si se conoce el diccionario es posible construir un modelo

individual para cada palabra

bull Problema de evaluacioacuten reconocer la palabra en unaimagen es equivalente a evaluar un conjunto de modelos

amigos a m i g o s

buacutefalo b uacute f a l o

05 003 04 06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo reconocimiento de

palabras Podemos construir un HMM para todas las palabras

Estados ocultos los caracteres de las palabras

Probabilidades de transicioacuten calculadas a partir de modelos del lenguaje

Observaciones y probabilidades de observacioacuten iguales al ejemplo anterior

Problema de decodificacioacuten encontrar la secuencia de estados ocultos que maacutes probablemente generaron la imagen

a m

i g

o

s

t

b v

f

u

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

Forward-Backward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward

Seco Huacutemedo EmpapadoObs

Sol

Nubes

Lluvia

Sol

Nubes

Lluvia

Sol

Nubes

Lluvia

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward Pr(Seco Huacutemedo Empapado|M) =

Pr(seco huacutemedo empapado|sol sol sol) +

Pr(seco huacutemedo empapado|sol nubes sol) +

hellip

Pr(seco huacutemedo empapado|lluvia lluvia lluvia)

iexcliexclMuy Costoso

33 = 27 caacutelculos

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

25

Algoritmo Forward Reduccioacuten de la complejidad

Probabilidad parcial de alcanzar un estado intermedio en el entramado

Yk1 Yk2 hellip YkT

Sol

Nubes

Lluvia

Nubes

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward αt(j)= Pr(obs|estado oculto es j)

Pr( todos los caminos al estado j en el tiempo t)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward En el tiempo t=1

En el tiempo t gt1

α1(j)=π(j) Pr(obs|estado j)

αt(j)=Pr(todos los caminos a j) Pr(obs|estado j)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward

Terminacioacuten

Dr Marcelo G Armentano - ISISTAN - UNICEN

sum=

=n

j

T jMObs1

)()|Pr( α

sum=

++ =n

i

ijttjt ajobj1

11 )()()( αα

Algoritmo Forward

Sol

α1(sol)=π(sol) bsol(humedo)

Nubes

α1(nubes)=π(nubes) bnubes(humedo)

Lluvia

α1(lluvia)=π(lluvia) blluvia(humedo)

)()(secb )(nubesi1nubes2 sum sdotsdot=

iaionubes αα

Nubes

asolnubes

anubesnubes

alluvianubes

Huacutemedo Seco

Algoritmo Backward

Se define la variable β

)|()( 21 λβ iqoooPi tTttt == ++

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

26

Algoritmo Backward

Inicializacioacuten

Caacutelculo

Finalizacioacuten

1)( =jTβ

1 1

1

( ) ( ) ( )N

t t ij j t

j

i j a b oβ β + +=

=sum

sum=

=N

i

i iobiOp1

11 )()()()|( βπλ 11minus= Tt

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

Forward- Backward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Encontrar la secuencia maacutes probable de estados

ocultos dada una secuencia de observaciones

Ejemplo etiquetar palabras en una oracioacuten con su funcioacuten sintaacutectica

iquestEstados observables iquestEstados ocultos

Juan come naranjasNS NP OD

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Probabilidad parcial δ de alcanzar un estado

intermedio particular en el entramado

δ representa la probabilidad del camino maacutes probable a un estado

Para cada estado final hay un camino maacutes probable a ese estado

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi δ(it) es la maacutexima probabilidad de todas las

secuencias que terminan en el estado i en el tiempo t

En t=T tenemos las mejores probabilidades parciales y los mejores caminos parciales

El mejor camino global a T es el que lleva al estado con la mayor probabilidad

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En t=1

)()()1( 1obii isdot= πδ

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

27

Algoritmo de Viterbi En tgt1

A

B

C

Xhellip

Tltt-1 t-1 t

Pr(x en T=t) = maxi=ABC Pr(i en T=t-1) Pr(X|i) Pr(Ot|X)

)())1((max)( tiijj

obajtit sdotsdotminus= δδDr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En cada tiempo t recordamos el estado j que generoacute

δ(ti)

Se reconstruye el camino utilizando los punteros φhasta el tiempo t=1

ijj

ajtit )1(max)( sdotminus= δφ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi

)(max1

iP TNi

δlele

=lowast

)(maxarg1

iq TNi

T δlele

lowast =

P da la probabilidad de los mejores los estados

qT is la secuencia de estados oacuteptima(Q = q1q2hellipqT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

ForwardBackward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Dada un conjunto de secuencias de observaciones O=o1 o2

oK y la estructura general del HMM (cantidadde estados ocultos

y visibles) determinar los paraacutemetros del modelo M=(A B π) que mejor se ajustan a los datos de entrenamiento es decir

que maximice P(O | M)

Se utiliza el algoritmo de maximizacioacuten de la esperanza para

encontrar un maacuteximo local de P(O | M) algoritmo Baum-Welch

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Si los datos de entrenamiento tienen informacioacuten

acerca de la secuencia de estados ocultos los paraacutemetros se estiman como

xsestransicion

ssestransicionssPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

sveces

senodenesobservaciosoPob

)|()( ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

28

Algorimo Baum-Welch Idea general

xsestransiciondeesperado

ssestransiciondeesperadossPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

svecesdeesperado

senodenesobservaciodeesperadosoPob

)|()( ==

1)( === tparasenvecesdeesperadosP iiiπ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

ξt(ij)= P(qt= si qt+1= sj |o1 o2 oT)

ξt(ij)=P(qt= si qt+1= sj o1 o2 oT)

P(o1 o2 oT)=

P(qt= si o1 o2 ot) aij bj (ot+1 ) P(ot+2 oT | qt+1= sj ) P(o1 o2 oT)

=

=αt(i) aij bj (ot+1 ) βt+1(j)

ΣiΣj αt(i) aij bj (ot+1 ) βt+1(j)

αt(i) aij bj (ot+1 ) βt+1(j)

Σi αt(i) βt(i)Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

tiempo

Estados ocultos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch Definimos γt(i) como la probabilidad de estar en el

estado i en el tiempo t dadas las observaciones

Σt γt(i) - cantidad esperada de veces que visitoel estado i

Σt ξt(ij) - cantidad esperada de transiciones

sum=

=N

j

tt jii1

)()( ξγ

ji rarr

γt(i)= P(qt= si |o1 o2 oT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

sumsum

=)(

)(ˆ

i

jia

t

t

ijγ

ξ

sum

sum ==

)(

)()(ˆ

j

job

t

oot t

kjkt

γ

γ

)(ˆ1 iγπ = la frecuencia esperada del estado i en t=1

nuacutemero esperado de transiciones desde el estado i al estado j sobre la cantidad esperada de transiciones desde el estado i

cantidad de veces que se estuvo en el estado j observando el siacutembolo k sobre la cantidad de veces que se estuvo en el estado j

Dr Marcelo G Armentano - ISISTAN - UNICEN

Bibliografiacutea Bayesian Networks and Decision Graphs - Finn V

Jensen and Thomas D Nielsen - Springer Verlag -Second Edition - 2007

A tutorial on hidden Markov models and selected applications in speech recognition - Lawrence R Rabiner - Proceedings of the IEEE Vol 77 Nordm2 pp 257-286 - 1989

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

29

iquestConsultas

Dr Marcelo G Armentano - ISISTAN - UNICEN

Page 12: redes bayesianas UNICEN.pdf

03112011

12

Aprendizaje estructural Tests de independencia

Obtienen las dependencias condicionales y lasindependencias utilizando tests de independenciasentre triplas de variables

Por ejemplo tests estadiacutesticos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo K2 Score and Search Buacutesqueda Greedy Muy eficiente Asume que las variables estaacuten ordenadas Comienza con una red sin arcos En cada iteracioacuten para cada variable Xi el nodo cuyo orden

es previo a Xi y que incrementa la calidad de la red se agrega a =Pa(Xi)

Se repite el proceso hasta que No hay incremento en la calidad de la red Se llega a una red completa

La cantidad de padres puede limitarse

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo B Score and Search

No requiere un ordenamiento previo de las variables

Controlar ciclos

Comienza con un conjunto vaciacuteo de padres

En cada iteracioacuten agrega un arco tal que

No produce ciclos

Maximiza la calidad de la red

El proceso se detiene cuando

No se incrementa la calidad de la red 0 Se llega a una red completa

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PC Tests de Independencia

Dos fases Construccioacuten del esqueleto

Encontrar las direcciones de los arcos mediante tests de independencia

Orientar el resto de los arcos sin producir ciclos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PC Construccioacuten del esqueleto

Comienza con un grafo no dirigido totalmente conectado

Mediante tests de independencia va eliminando arcos que no cumplen la siguiente condicioacuten Dos nodos X e Y estaacuten conectados si y soacutelo si no existe un

subconjunto Sxy del conjunto de veacutertices V tal que I(XY|Sxy) sea verdadero

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PCComienza con un grafo completo no dirigido gpi = 0Repeat

For each X isinisinisinisin VFor each Y isinisinisinisin ADJX

Determinar si existe Ssube ADJX ndashY con |S| = i y I(XY|S)Si este conjunto existe

SXY = SEliminar el arco X-Y

i = i+1Until |ADJX| lelelele i forallforallforallforallX

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

13

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=

i=0

SI

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

SI

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

03112011

14

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

i=1

SI

SXY=SXW=SZW=Y

03112011

15

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

No hay nodos con maacutes de 3 adyacentes

Algoritmo PC Encontrar las direcciones de los arcos mediante tests

de independencia (tomando las variables de a tres) Para cada variable Z con dos adyacentes X e Y

comprueba que no Z no esteacute en Sxy para conectar a X e Y como padres de Z

Z XY

Z XY

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

ZnotinSXY

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

ZnotinSXY

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

TnotinSZW

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

TnotinSZW

03112011

16

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

Se orienta arbitrariamente (evitando ciclos)

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

Herramientas Hugin

httpwwwhugincomProducts_ServicesProductsDemo

Bayesware httpwwwbayeswarecom

JavaBayes httpwww-2cscmuedu~javabayes

Paacutegina de Finn Jensen httpwwwcsaaudk~fvj

Dr Marcelo G Armentano - ISISTAN - UNICEN

Agenda Introduccioacuten

Redes de Bayes

Modelos de Markov Introduccioacuten

Cadenas de Markov

Modelos Ocultos de Markov

Dr Marcelo G Armentano - ISISTAN - UNICEN

Introduccioacuten Modelar dependencias entre siacutembolos de una

secuencia Temporales

En reconocimiento del habla fonemas en una palabra palabras en una oracioacuten (reconocimiento sintaacutectico)

Espaciales Reconocimiento de escritura

Secuencias de genes

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

17

Procesos aleatorios de Markov Una secuencia aleatoria tiene la propiedad de markov si su

distribucioacuten de probabilidades estaacute determinadauacutenicamente por el estado actual Un proceso aleatorio quecumple con esta propiedad se llama un proceso aleatorio de Markov

Cuando los estados son observables cadenas de Markov

Cuando los estados no son observables modelos ocultos de markov (HMM hidden Markov models)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Regla de Bayes

)()|()( 111111 qqPqqqPqqqP ttttt minusminusminus =

)()|()|()( 121211111 qqPqqqPqqqPqqqP ttttttt minusminusminusminusminus =

prod=

minusminus =t

i

iitt qqqPqPqqqP2

11111 )|()()(

Dr Marcelo G Armentano - ISISTAN - UNICEN

Propiedad de Markov

1)|()|( 111 gt= minusminus iforqqPqqqP iiii

)|()|()()|()()( 1121

2

1111 minus=

minusminus == prod tt

t

i

iitt qqPqqPqPqqPqPqqqP

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov Pueden verse como un grafo de transicioacuten de estados

con probabilidades en sus arcos

Ejemplo Generacioacuten de Texto Aleatorio Un nodo por cada letra uacutenica observada

Si luego de la letra X observo la letra Y agrego un arco de X a Y Si el arco ya existe incremento la cantidad de observaciones

asociada al arco

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTAL

03112011

18

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTALTAL

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTALTALTOTOTALTOTOTOTOTALhellip

Cadenas de Markov Texto aleatorio generado a partir de un modelo

entrenado con el primer capiacutetulo de ldquo100 antildeos de soledadrdquo de Gabriel Garciacutea Marquez

Mapl idoca Uno domen quespiate meacute s abrdiacuteaton quadelaros del y en ioacutera puacutellade y antildeosar soacute Ar e Pon s toacutentun llose fase co tus pe foaciguela tr de paquros losintun oceton deros picaras ro pigeltexpa Arrcoacuten asadosen ca hiacuteracugidend madel cos pelo ca hamuy cuncte preraletrapuina venco sosueacute gifuas y estiogidire y ple peno do dociemanoacutey den matrones s Arseacutelades lelanelo lacides Jombidorentioacute lla caqueacutetrotan de ciechitevo pa e troacute ulega teilizaban riacuteaden zopendesellaundo u ca tioroserar vorasun plara en fue dempa teresen y umusmpio y sedes s s ezordel rugexhas darmabioacute

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N Extensioacuten a las cadenas de Markov en las que cada

estados representa una secuencia de N observaciones consecutivas

N-gramas

Ocurrencias

che 60

chi 25

cha 10

cho 5

ch

ch se observa 100 veces de las cualeshellip

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N=2

ISMI

SS

SI

IP

PP

PI

10

1010

10

10o5 o5

M I S S I S S I P P I

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N=3

ISSMIS

SSI

SIS

SIP

IPP

PPI

10

10

10

10

10

o5

o5

M I S S I S S I P P I

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

19

Cadenas de Markov de orden N N=1

Modelo fiel a las frecuencias de cada par de letras

No representa bien el lenguaje natural

Dr Marcelo G Armentano - ISISTAN - UNICEN

Mapl idoca Uno domen quespiate meacute s abrdiacuteaton quadelaros del y en ioacutera puacutellade y antildeosar soacute Ar e Pon s toacutentun llose fase co tus pe foaciguela tr de paquros losintun oceton deros picaras ro pigeltexpa Arrcoacuten asadosen ca hiacuteracugidend madel cos pelo ca hamuy cuncte preraletrapuina venco sosueacute gifuas y estiogidire y ple peno do dociemanoacutey den matrones s Arseacutelades lelanelo lacides Jombidorentioacute lla caqueacutetrotan de ciechitevo pa e troacute ulega teilizaban riacuteaden zopendesellaundo u ca tioroserar vorasun plara en fue dempa teresen y umusmpio y sedes s s ezordel rugexhas darmabioacute

Cadenas de Markov de Orden N Texto aleatorio generado N=2

Muca donios y hombre llas res pla plambregrimanteoacute el la sioacute entude Salemo fue uncioacuten co crioacuten Tendiacutea en sula ta chicalque le siezblena que tras senterosagareto mdashgruel res entorasanesbazuerasabepaacuten enda con de in inagercamieropito don cuarecior siblimena tero en joacute te Fuedo paresegua pespurantespuen dos porodad de la que cabaquentra denabrencestiminotescuyoacute quel mor loseacute Acturo pen for es ella guanos mitadraratientoacuten condiacutea la allado quen se logoacute la balaritiva triblesala soacutelos habalcabiempor ere griacutea to borse allas laciasiacutemisible por pocaza los so ola la nintildeos cuaro eacutel y lar espiendismo antildeonetrouna que cad fuerofocieres resa combrempuros parsu misiblocerma anoceraya elos no a y ejoacute desta una tioacuten

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Texto aleatorio generado N=3

Muchetextremecitano conveniencia Cuando por acora pre hablancie el rudienteel pusierantado poblado pago y aumentar animaginacioacuten aza des examillos maacutes gigaciera suellevoacute los que inte la viajes rayos imales hacedor y el teacuterminuto pueses siles expedas mocha que la tanos ser en que vez lles la como la maacutes pase lo uacutenicos romera lado JoseacuteArcadiosas antes al realejo en que de dejoacute todidos tre distilado infinito desco a le se para ver bolada alquiacutedea

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Texto aleatorio generado N=4

Muchos y salambioacute un chaleco de habiacutea burla como el pasoacute la resto de aban su fue ser prendedor condo una buena de las casaquimisterios Joseacute Arcadio Buendiacutea sino esentoacute como un en aquel tambor quedoacute recuerdo de un fugitivo en que en que sierrar los metalejos a puestaban de una tersas y el mundo sino consolas y veiacutean desar a la casa cuyos sin comer Aureliano conjuro de el esperso de piedras

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N = 3-4

Comienzan a aparecer palabras maacutes reconocibles

Palabras de muchas letras aparecen frecuentemente ldquopegadasrdquo a otras palabras

Cuanto maacutes extenso es el texto de entrenamiento maacutes variedad habraacute en la salida

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Entrenamiento con palabras completas (N=1)

Texto generado

Se habiacutea que construyoacute trampas y sus iniciales encima con una insolacioacuten por mares incoacutegnitos visitar territorios maacutes emprendedor que se hundiacutean en las maravillas del mundo Era una explicacioacuten inmediata Joseacute Arcadio Buendiacutea la resonancia hueca de helechos y entonces una truculenta demostracioacuten con un aacutespero sabor de fusilamiento el interior y tambores y a prepararse para llevaacuterselos a palmo a conocerlo mantuvo puesta por los burros Asiacute fue desde haciacutea mucho tiempo porque el mundo se asomaba al caramelo vulgar que un paacutenico cuando llegoacute la judiacutea

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

20

Cadenas de Markov de Orden N Entrenamiento con palabras completas (N=4)

Texto generado

Consideraba como una burla de su travieso destino haber buscado el mar sin encontrarlo al precio de sacrificios y penalidades sin cuento y haberlo encontrado entonces sin buscarlo atravesado en su camino como un obstaacuteculo insalvable Uacutersula no volvioacute a acordarse de la intensidad de esa mirada hasta un diacutea en que el pequentildeo Aureliano a la edad de tres antildeos entroacute a la cocina en el momento en que ella retiraba del fogoacuten y poniacutea en la mesa una olla de caldo hirviendo Aquel olor mordiente quedariacutea para siempre en su memoria vinculado al recuerdo de Melquiacuteades

Dr Marcelo G Armentano - ISISTAN - UNICEN

Modelos de Markov Conjunto de estados

El proceso se mueve de un estado a otro generando unasecuencia de estados

Propiedad de Markov la probabilidad de cada estadosiguiente depende soacutelo del estado previo

bull Para definir un modelo de Markov deben especificarselas siguientes probabilidades

21 Nsss K

KK 21 ikii sss

)|()|( 1121 minusminus = ikikikiiik ssPssssP K

)|( jiij ssPa =)( ii sP=π

Probabilidad del estado inicial Probabilidad de transicioacuten de estados

Dr Marcelo G Armentano - ISISTAN - UNICEN

Lluvioso Seco

0703

02 08

Ejemplo de modelo de Markov

Dos posibles estados lsquoLluviosorsquo ylsquoSecorsquo Probabilidades de Transicioacuten

P(lsquoLluviosorsquo|lsquoLluviosorsquo)=03 P(lsquoSecorsquo|lsquoLluviosorsquo)=07

P(lsquoLluviosorsquo|lsquoSecorsquo)=02 P(lsquoSecorsquo|lsquoSecorsquo)=08

Probabilidades iniciales

P(lsquoLluviosorsquo)=04 P(lsquoSecorsquo)=06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Probabilidad de una secuencia Por la probabilidad de Markov

P(lsquoSecorsquorsquoSecorsquorsquoLluviosorsquorsquoLluviosorsquo ) =P(lsquoLluviosorsquo|rsquoLluviosorsquo) P(lsquoLluviosorsquo|rsquoSecorsquo)

P(lsquoSecorsquo|rsquoSecorsquo) P(lsquoSecorsquo) = 03020806 = 00288

)()|()( 12112121 minusminus= ikiiikiiikikii sssPssssPsssP KKK

)()|()|()|(

)()|(

112211

1211

iiiikikikik

ikiiikik

sPssPssPssP

sssPssP

K

KK

minusminusminus

minusminus

=

==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Underflow El producto de muchas probabilidades entre 0 y 1

puede resultar en underflow

Dado que log(xy) = log(x) + log(y) es mejor realizar la suma del logaritmo de las probabilidades que multiplicarlas

El modelo con el mayor puntaje final de probabilidad logariacutetmica sigue siendo la maacutes probable

Dr Marcelo G Armentano - ISISTAN - UNICEN

Hipoacutetesis del maacuteximo a posteriori

)|(maxarg DhPhHh

MAPisin

equiv

)(

)()|(maxarg

DP

hPhDP

Hhisin

=

)()|(maxarg hPhDPHhisin

=

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

21

Modelos Ocultos de Markov (HMM)

Conjunto de estados El proceso de mueve de un estado a otro generando una secuencia de

estados

Propiedad de Markov La probabilidad de cada estado depende solo del estado actual

Los estados no son visibles pero cada estado genera aleatoriamente unade las posibles observaciones (estados visibles)

Para definir un modelo oculto de Markov se deben especificar las siguientes probabilidades Matriz de probabilidades transicioacuten A=(aij) aij= P(si | sj) Matriz de probabilidades de observacioacuten B=(bi (vm )) bi(vm )= P(vm | si) Vector de probabilidades iniciales π=(πi) πi = P(si)

Los modelos quedan definidos por la tripla M=(A B π)

21 Nsss K

KK 21 ikii sss

)|()|( 1121 minusminus = ikikikiiik ssPssssP K

21 Mvvv K

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

Baja Alta

0703

02 08

Lluvioso Seco

06 0604 04

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

bull Dos estados correspondientes a la presioacuten atmosfeacutericabull lsquoAltarsquo y lsquoBajarsquo

bull Dos posibles observaciones bull lsquoLluviosorsquo y lsquoSecorsquo

bull Probabilidades de Transicioacuten

bull P(lsquoBajarsquo|lsquoBajarsquo)=03 P(lsquoAltarsquo|lsquoBajarsquo)=07 P(lsquoBajarsquo|lsquoAltarsquo)=02

P(lsquoAltarsquo|lsquoAltarsquo)=08bull Probabilidades de Observacioacuten

bull P(lsquoLluviosorsquo|lsquoBajarsquo)=06 P(lsquoSecorsquo|lsquoBajarsquo)=04

P(lsquoLluviosorsquo|lsquoAltarsquo)=04 P(lsquoSecorsquo|lsquoAltarsquo)=03 bull Probabilidades iniciales

bull P(lsquoBajarsquo)=04 P(lsquoAltarsquo)=06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM Prediccioacuten del tiempo de acuerdo al estado de un alga

empapado huacutemedo casi seco seco

nubes lluviasol

Oculto

Observable

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

Empapado Huacutemedo Casi seco Seco

Sol 060 020 015 005

Nubes 025 025 025 025

Lluvia 005 010 035 050

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

22

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

i P(qt+1=S1|qt=Si)

P(qt+1=S2|qt=Si)

P(qt+1=Sj|qt=Si)

P(qt+1=SN

|qt=Si)

1 a11 a12 hellip a1j hellip a1N

2 a21 a22 hellip a2j hellip a2N

3 a31 a32 hellip a3j hellip a3N

hellip

i ai1 ai2 hellip aij hellip aiN

hellip

N aN1 aN2 hellip aNj hellip aNN

Todas estas tablas son

iguales

aij = P (qt+1=sj|qt=si)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

i P(Ot=1|qt=Si) P(Ot=2|qt=Si) P(Ot=j|qt=Si) P(Ot=N|qt=Si)

1 b1(1) b1(2) hellip b1(j) hellip b1(N)2 b2(1) b2(2) hellip b2(j) hellip b2(N)3 b3(1) b3(2) hellip b3(j) hellip b3(N)hellip

i Bi(1) bi(2) hellip bi(j) hellip bi(N)hellip

N bN(1) bN(2) hellip bN(j) hellip bN(N)

bi(j) = P (Ot=j|qt=si)

Todas estas tablas son

iguales

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

un enrejado

s1

s2

si

sN

s1

s2

si

sN

s1

s2

sj

sN

s1

s2

si

sN

a1j

a2j

aij

aNj

1 k k+1 K

o1 ok ok+1 oKObservaciones

Tiempo

Ejemplo Casino tramposo

Un casino tiene dos dados Dado ldquojustordquo

P(1) = P(2) = P(3) = P(5) = P(6) = 16 Dado cargado

P(1) = P(2) = P(3) = P(4) = P(5) = 110P(6) = 12

El casino alterna entre el dado justo y el cargado una vezcada 20 turnos

Problemas a resolver con HMM Evaluacioacuten

Dado un HMM M=(A B π) y una secuencia de observaciones O=o1 o2 oK calcular la probabilidad de que el modelo M haya generado la secuencia O

Dr Marcelo G Armentano - ISISTAN - UNICEN

EvaluacioacutenDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestCuan probable es esta secuencia dado nuestromodelo de como opera el casino

Este es el problema de EVALUACIOacuteN en HMMs

03112011

23

Problemas a resolver con HMM Decodificacioacuten o inferencia

Dado un HMM M=(A B π) y una secuencia de observaciones O=o1 o2 oK calcular la secuencia de estados ocultos Si que maacutes probablemente produjo la secuencia de observaciones O

Dr Marcelo G Armentano - ISISTAN - UNICEN

DecodificacioacutenDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestQue partes de la secuencia fueron generadas por el dado cargado y cuales por el dado justo

Este es el problema de DECODIFICACIOacuteN en HMMs

Problemas a resolver con HMM Aprendizaje

Dado un conjunto de secuencias de observaciones de entrenamiento O=o1 o2 oK y la estructura general de HMM (cantidad de estados ocultos y cantidad de estados visibles) determinar los paraacutemetros del HMM M=(A B π) que mejor se ajustan a los datos de entrenamiento

Dr Marcelo G Armentano - ISISTAN - UNICEN

AprendizajeDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestCoacutemo estaacute cargado el dado cargado iquestCada cuantocambia el casino entre el dado cargado y el justo

Este es el problema de APRENDIZAJE en HMMs

El HMM del casino tramposo

JUSTO CARGADO

005

005

095095

P(1|Justo) = 16P(2|Justo) = 16P(3|Justo) = 16P(4|Justo) = 16P(5|Justo) = 16P(6|Justo) = 16

P(1|Cargado) = 110P(2|Cargado) = 110P(3|Cargado) = 110P(4|Cargado) = 110P(5|Cargado) = 110P(6|Cargado) = 12

Ejemplo reconocimiento de

palabras Se asume que los caracteres estaacuten separados

El reconocedorde caracteres da como salida la probabilidad de que una imagen corresponda a un caracterparticular P(caracter|imagen)

05

003

0005

031z

c

b

a

Estado Oculto

Estado Observable

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

24

Ejemplo reconocimiento de

palabras Estados Ocultos del HMM caracteres

Estados Observables imagenes de caracteres

Probabilidades de Observacioacutenαv

( ) ( ))|()( ii svPvbB αα ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo reconocimiento de

palabras Si se conoce el diccionario es posible construir un modelo

individual para cada palabra

bull Problema de evaluacioacuten reconocer la palabra en unaimagen es equivalente a evaluar un conjunto de modelos

amigos a m i g o s

buacutefalo b uacute f a l o

05 003 04 06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo reconocimiento de

palabras Podemos construir un HMM para todas las palabras

Estados ocultos los caracteres de las palabras

Probabilidades de transicioacuten calculadas a partir de modelos del lenguaje

Observaciones y probabilidades de observacioacuten iguales al ejemplo anterior

Problema de decodificacioacuten encontrar la secuencia de estados ocultos que maacutes probablemente generaron la imagen

a m

i g

o

s

t

b v

f

u

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

Forward-Backward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward

Seco Huacutemedo EmpapadoObs

Sol

Nubes

Lluvia

Sol

Nubes

Lluvia

Sol

Nubes

Lluvia

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward Pr(Seco Huacutemedo Empapado|M) =

Pr(seco huacutemedo empapado|sol sol sol) +

Pr(seco huacutemedo empapado|sol nubes sol) +

hellip

Pr(seco huacutemedo empapado|lluvia lluvia lluvia)

iexcliexclMuy Costoso

33 = 27 caacutelculos

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

25

Algoritmo Forward Reduccioacuten de la complejidad

Probabilidad parcial de alcanzar un estado intermedio en el entramado

Yk1 Yk2 hellip YkT

Sol

Nubes

Lluvia

Nubes

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward αt(j)= Pr(obs|estado oculto es j)

Pr( todos los caminos al estado j en el tiempo t)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward En el tiempo t=1

En el tiempo t gt1

α1(j)=π(j) Pr(obs|estado j)

αt(j)=Pr(todos los caminos a j) Pr(obs|estado j)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward

Terminacioacuten

Dr Marcelo G Armentano - ISISTAN - UNICEN

sum=

=n

j

T jMObs1

)()|Pr( α

sum=

++ =n

i

ijttjt ajobj1

11 )()()( αα

Algoritmo Forward

Sol

α1(sol)=π(sol) bsol(humedo)

Nubes

α1(nubes)=π(nubes) bnubes(humedo)

Lluvia

α1(lluvia)=π(lluvia) blluvia(humedo)

)()(secb )(nubesi1nubes2 sum sdotsdot=

iaionubes αα

Nubes

asolnubes

anubesnubes

alluvianubes

Huacutemedo Seco

Algoritmo Backward

Se define la variable β

)|()( 21 λβ iqoooPi tTttt == ++

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

26

Algoritmo Backward

Inicializacioacuten

Caacutelculo

Finalizacioacuten

1)( =jTβ

1 1

1

( ) ( ) ( )N

t t ij j t

j

i j a b oβ β + +=

=sum

sum=

=N

i

i iobiOp1

11 )()()()|( βπλ 11minus= Tt

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

Forward- Backward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Encontrar la secuencia maacutes probable de estados

ocultos dada una secuencia de observaciones

Ejemplo etiquetar palabras en una oracioacuten con su funcioacuten sintaacutectica

iquestEstados observables iquestEstados ocultos

Juan come naranjasNS NP OD

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Probabilidad parcial δ de alcanzar un estado

intermedio particular en el entramado

δ representa la probabilidad del camino maacutes probable a un estado

Para cada estado final hay un camino maacutes probable a ese estado

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi δ(it) es la maacutexima probabilidad de todas las

secuencias que terminan en el estado i en el tiempo t

En t=T tenemos las mejores probabilidades parciales y los mejores caminos parciales

El mejor camino global a T es el que lleva al estado con la mayor probabilidad

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En t=1

)()()1( 1obii isdot= πδ

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

27

Algoritmo de Viterbi En tgt1

A

B

C

Xhellip

Tltt-1 t-1 t

Pr(x en T=t) = maxi=ABC Pr(i en T=t-1) Pr(X|i) Pr(Ot|X)

)())1((max)( tiijj

obajtit sdotsdotminus= δδDr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En cada tiempo t recordamos el estado j que generoacute

δ(ti)

Se reconstruye el camino utilizando los punteros φhasta el tiempo t=1

ijj

ajtit )1(max)( sdotminus= δφ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi

)(max1

iP TNi

δlele

=lowast

)(maxarg1

iq TNi

T δlele

lowast =

P da la probabilidad de los mejores los estados

qT is la secuencia de estados oacuteptima(Q = q1q2hellipqT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

ForwardBackward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Dada un conjunto de secuencias de observaciones O=o1 o2

oK y la estructura general del HMM (cantidadde estados ocultos

y visibles) determinar los paraacutemetros del modelo M=(A B π) que mejor se ajustan a los datos de entrenamiento es decir

que maximice P(O | M)

Se utiliza el algoritmo de maximizacioacuten de la esperanza para

encontrar un maacuteximo local de P(O | M) algoritmo Baum-Welch

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Si los datos de entrenamiento tienen informacioacuten

acerca de la secuencia de estados ocultos los paraacutemetros se estiman como

xsestransicion

ssestransicionssPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

sveces

senodenesobservaciosoPob

)|()( ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

28

Algorimo Baum-Welch Idea general

xsestransiciondeesperado

ssestransiciondeesperadossPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

svecesdeesperado

senodenesobservaciodeesperadosoPob

)|()( ==

1)( === tparasenvecesdeesperadosP iiiπ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

ξt(ij)= P(qt= si qt+1= sj |o1 o2 oT)

ξt(ij)=P(qt= si qt+1= sj o1 o2 oT)

P(o1 o2 oT)=

P(qt= si o1 o2 ot) aij bj (ot+1 ) P(ot+2 oT | qt+1= sj ) P(o1 o2 oT)

=

=αt(i) aij bj (ot+1 ) βt+1(j)

ΣiΣj αt(i) aij bj (ot+1 ) βt+1(j)

αt(i) aij bj (ot+1 ) βt+1(j)

Σi αt(i) βt(i)Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

tiempo

Estados ocultos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch Definimos γt(i) como la probabilidad de estar en el

estado i en el tiempo t dadas las observaciones

Σt γt(i) - cantidad esperada de veces que visitoel estado i

Σt ξt(ij) - cantidad esperada de transiciones

sum=

=N

j

tt jii1

)()( ξγ

ji rarr

γt(i)= P(qt= si |o1 o2 oT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

sumsum

=)(

)(ˆ

i

jia

t

t

ijγ

ξ

sum

sum ==

)(

)()(ˆ

j

job

t

oot t

kjkt

γ

γ

)(ˆ1 iγπ = la frecuencia esperada del estado i en t=1

nuacutemero esperado de transiciones desde el estado i al estado j sobre la cantidad esperada de transiciones desde el estado i

cantidad de veces que se estuvo en el estado j observando el siacutembolo k sobre la cantidad de veces que se estuvo en el estado j

Dr Marcelo G Armentano - ISISTAN - UNICEN

Bibliografiacutea Bayesian Networks and Decision Graphs - Finn V

Jensen and Thomas D Nielsen - Springer Verlag -Second Edition - 2007

A tutorial on hidden Markov models and selected applications in speech recognition - Lawrence R Rabiner - Proceedings of the IEEE Vol 77 Nordm2 pp 257-286 - 1989

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

29

iquestConsultas

Dr Marcelo G Armentano - ISISTAN - UNICEN

Page 13: redes bayesianas UNICEN.pdf

03112011

13

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=

i=0

SI

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

SI

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

03112011

14

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

i=1

SI

SXY=SXW=SZW=Y

03112011

15

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

No hay nodos con maacutes de 3 adyacentes

Algoritmo PC Encontrar las direcciones de los arcos mediante tests

de independencia (tomando las variables de a tres) Para cada variable Z con dos adyacentes X e Y

comprueba que no Z no esteacute en Sxy para conectar a X e Y como padres de Z

Z XY

Z XY

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

ZnotinSXY

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

ZnotinSXY

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

TnotinSZW

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

TnotinSZW

03112011

16

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

Se orienta arbitrariamente (evitando ciclos)

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

Herramientas Hugin

httpwwwhugincomProducts_ServicesProductsDemo

Bayesware httpwwwbayeswarecom

JavaBayes httpwww-2cscmuedu~javabayes

Paacutegina de Finn Jensen httpwwwcsaaudk~fvj

Dr Marcelo G Armentano - ISISTAN - UNICEN

Agenda Introduccioacuten

Redes de Bayes

Modelos de Markov Introduccioacuten

Cadenas de Markov

Modelos Ocultos de Markov

Dr Marcelo G Armentano - ISISTAN - UNICEN

Introduccioacuten Modelar dependencias entre siacutembolos de una

secuencia Temporales

En reconocimiento del habla fonemas en una palabra palabras en una oracioacuten (reconocimiento sintaacutectico)

Espaciales Reconocimiento de escritura

Secuencias de genes

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

17

Procesos aleatorios de Markov Una secuencia aleatoria tiene la propiedad de markov si su

distribucioacuten de probabilidades estaacute determinadauacutenicamente por el estado actual Un proceso aleatorio quecumple con esta propiedad se llama un proceso aleatorio de Markov

Cuando los estados son observables cadenas de Markov

Cuando los estados no son observables modelos ocultos de markov (HMM hidden Markov models)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Regla de Bayes

)()|()( 111111 qqPqqqPqqqP ttttt minusminusminus =

)()|()|()( 121211111 qqPqqqPqqqPqqqP ttttttt minusminusminusminusminus =

prod=

minusminus =t

i

iitt qqqPqPqqqP2

11111 )|()()(

Dr Marcelo G Armentano - ISISTAN - UNICEN

Propiedad de Markov

1)|()|( 111 gt= minusminus iforqqPqqqP iiii

)|()|()()|()()( 1121

2

1111 minus=

minusminus == prod tt

t

i

iitt qqPqqPqPqqPqPqqqP

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov Pueden verse como un grafo de transicioacuten de estados

con probabilidades en sus arcos

Ejemplo Generacioacuten de Texto Aleatorio Un nodo por cada letra uacutenica observada

Si luego de la letra X observo la letra Y agrego un arco de X a Y Si el arco ya existe incremento la cantidad de observaciones

asociada al arco

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTAL

03112011

18

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTALTAL

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTALTALTOTOTALTOTOTOTOTALhellip

Cadenas de Markov Texto aleatorio generado a partir de un modelo

entrenado con el primer capiacutetulo de ldquo100 antildeos de soledadrdquo de Gabriel Garciacutea Marquez

Mapl idoca Uno domen quespiate meacute s abrdiacuteaton quadelaros del y en ioacutera puacutellade y antildeosar soacute Ar e Pon s toacutentun llose fase co tus pe foaciguela tr de paquros losintun oceton deros picaras ro pigeltexpa Arrcoacuten asadosen ca hiacuteracugidend madel cos pelo ca hamuy cuncte preraletrapuina venco sosueacute gifuas y estiogidire y ple peno do dociemanoacutey den matrones s Arseacutelades lelanelo lacides Jombidorentioacute lla caqueacutetrotan de ciechitevo pa e troacute ulega teilizaban riacuteaden zopendesellaundo u ca tioroserar vorasun plara en fue dempa teresen y umusmpio y sedes s s ezordel rugexhas darmabioacute

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N Extensioacuten a las cadenas de Markov en las que cada

estados representa una secuencia de N observaciones consecutivas

N-gramas

Ocurrencias

che 60

chi 25

cha 10

cho 5

ch

ch se observa 100 veces de las cualeshellip

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N=2

ISMI

SS

SI

IP

PP

PI

10

1010

10

10o5 o5

M I S S I S S I P P I

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N=3

ISSMIS

SSI

SIS

SIP

IPP

PPI

10

10

10

10

10

o5

o5

M I S S I S S I P P I

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

19

Cadenas de Markov de orden N N=1

Modelo fiel a las frecuencias de cada par de letras

No representa bien el lenguaje natural

Dr Marcelo G Armentano - ISISTAN - UNICEN

Mapl idoca Uno domen quespiate meacute s abrdiacuteaton quadelaros del y en ioacutera puacutellade y antildeosar soacute Ar e Pon s toacutentun llose fase co tus pe foaciguela tr de paquros losintun oceton deros picaras ro pigeltexpa Arrcoacuten asadosen ca hiacuteracugidend madel cos pelo ca hamuy cuncte preraletrapuina venco sosueacute gifuas y estiogidire y ple peno do dociemanoacutey den matrones s Arseacutelades lelanelo lacides Jombidorentioacute lla caqueacutetrotan de ciechitevo pa e troacute ulega teilizaban riacuteaden zopendesellaundo u ca tioroserar vorasun plara en fue dempa teresen y umusmpio y sedes s s ezordel rugexhas darmabioacute

Cadenas de Markov de Orden N Texto aleatorio generado N=2

Muca donios y hombre llas res pla plambregrimanteoacute el la sioacute entude Salemo fue uncioacuten co crioacuten Tendiacutea en sula ta chicalque le siezblena que tras senterosagareto mdashgruel res entorasanesbazuerasabepaacuten enda con de in inagercamieropito don cuarecior siblimena tero en joacute te Fuedo paresegua pespurantespuen dos porodad de la que cabaquentra denabrencestiminotescuyoacute quel mor loseacute Acturo pen for es ella guanos mitadraratientoacuten condiacutea la allado quen se logoacute la balaritiva triblesala soacutelos habalcabiempor ere griacutea to borse allas laciasiacutemisible por pocaza los so ola la nintildeos cuaro eacutel y lar espiendismo antildeonetrouna que cad fuerofocieres resa combrempuros parsu misiblocerma anoceraya elos no a y ejoacute desta una tioacuten

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Texto aleatorio generado N=3

Muchetextremecitano conveniencia Cuando por acora pre hablancie el rudienteel pusierantado poblado pago y aumentar animaginacioacuten aza des examillos maacutes gigaciera suellevoacute los que inte la viajes rayos imales hacedor y el teacuterminuto pueses siles expedas mocha que la tanos ser en que vez lles la como la maacutes pase lo uacutenicos romera lado JoseacuteArcadiosas antes al realejo en que de dejoacute todidos tre distilado infinito desco a le se para ver bolada alquiacutedea

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Texto aleatorio generado N=4

Muchos y salambioacute un chaleco de habiacutea burla como el pasoacute la resto de aban su fue ser prendedor condo una buena de las casaquimisterios Joseacute Arcadio Buendiacutea sino esentoacute como un en aquel tambor quedoacute recuerdo de un fugitivo en que en que sierrar los metalejos a puestaban de una tersas y el mundo sino consolas y veiacutean desar a la casa cuyos sin comer Aureliano conjuro de el esperso de piedras

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N = 3-4

Comienzan a aparecer palabras maacutes reconocibles

Palabras de muchas letras aparecen frecuentemente ldquopegadasrdquo a otras palabras

Cuanto maacutes extenso es el texto de entrenamiento maacutes variedad habraacute en la salida

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Entrenamiento con palabras completas (N=1)

Texto generado

Se habiacutea que construyoacute trampas y sus iniciales encima con una insolacioacuten por mares incoacutegnitos visitar territorios maacutes emprendedor que se hundiacutean en las maravillas del mundo Era una explicacioacuten inmediata Joseacute Arcadio Buendiacutea la resonancia hueca de helechos y entonces una truculenta demostracioacuten con un aacutespero sabor de fusilamiento el interior y tambores y a prepararse para llevaacuterselos a palmo a conocerlo mantuvo puesta por los burros Asiacute fue desde haciacutea mucho tiempo porque el mundo se asomaba al caramelo vulgar que un paacutenico cuando llegoacute la judiacutea

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

20

Cadenas de Markov de Orden N Entrenamiento con palabras completas (N=4)

Texto generado

Consideraba como una burla de su travieso destino haber buscado el mar sin encontrarlo al precio de sacrificios y penalidades sin cuento y haberlo encontrado entonces sin buscarlo atravesado en su camino como un obstaacuteculo insalvable Uacutersula no volvioacute a acordarse de la intensidad de esa mirada hasta un diacutea en que el pequentildeo Aureliano a la edad de tres antildeos entroacute a la cocina en el momento en que ella retiraba del fogoacuten y poniacutea en la mesa una olla de caldo hirviendo Aquel olor mordiente quedariacutea para siempre en su memoria vinculado al recuerdo de Melquiacuteades

Dr Marcelo G Armentano - ISISTAN - UNICEN

Modelos de Markov Conjunto de estados

El proceso se mueve de un estado a otro generando unasecuencia de estados

Propiedad de Markov la probabilidad de cada estadosiguiente depende soacutelo del estado previo

bull Para definir un modelo de Markov deben especificarselas siguientes probabilidades

21 Nsss K

KK 21 ikii sss

)|()|( 1121 minusminus = ikikikiiik ssPssssP K

)|( jiij ssPa =)( ii sP=π

Probabilidad del estado inicial Probabilidad de transicioacuten de estados

Dr Marcelo G Armentano - ISISTAN - UNICEN

Lluvioso Seco

0703

02 08

Ejemplo de modelo de Markov

Dos posibles estados lsquoLluviosorsquo ylsquoSecorsquo Probabilidades de Transicioacuten

P(lsquoLluviosorsquo|lsquoLluviosorsquo)=03 P(lsquoSecorsquo|lsquoLluviosorsquo)=07

P(lsquoLluviosorsquo|lsquoSecorsquo)=02 P(lsquoSecorsquo|lsquoSecorsquo)=08

Probabilidades iniciales

P(lsquoLluviosorsquo)=04 P(lsquoSecorsquo)=06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Probabilidad de una secuencia Por la probabilidad de Markov

P(lsquoSecorsquorsquoSecorsquorsquoLluviosorsquorsquoLluviosorsquo ) =P(lsquoLluviosorsquo|rsquoLluviosorsquo) P(lsquoLluviosorsquo|rsquoSecorsquo)

P(lsquoSecorsquo|rsquoSecorsquo) P(lsquoSecorsquo) = 03020806 = 00288

)()|()( 12112121 minusminus= ikiiikiiikikii sssPssssPsssP KKK

)()|()|()|(

)()|(

112211

1211

iiiikikikik

ikiiikik

sPssPssPssP

sssPssP

K

KK

minusminusminus

minusminus

=

==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Underflow El producto de muchas probabilidades entre 0 y 1

puede resultar en underflow

Dado que log(xy) = log(x) + log(y) es mejor realizar la suma del logaritmo de las probabilidades que multiplicarlas

El modelo con el mayor puntaje final de probabilidad logariacutetmica sigue siendo la maacutes probable

Dr Marcelo G Armentano - ISISTAN - UNICEN

Hipoacutetesis del maacuteximo a posteriori

)|(maxarg DhPhHh

MAPisin

equiv

)(

)()|(maxarg

DP

hPhDP

Hhisin

=

)()|(maxarg hPhDPHhisin

=

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

21

Modelos Ocultos de Markov (HMM)

Conjunto de estados El proceso de mueve de un estado a otro generando una secuencia de

estados

Propiedad de Markov La probabilidad de cada estado depende solo del estado actual

Los estados no son visibles pero cada estado genera aleatoriamente unade las posibles observaciones (estados visibles)

Para definir un modelo oculto de Markov se deben especificar las siguientes probabilidades Matriz de probabilidades transicioacuten A=(aij) aij= P(si | sj) Matriz de probabilidades de observacioacuten B=(bi (vm )) bi(vm )= P(vm | si) Vector de probabilidades iniciales π=(πi) πi = P(si)

Los modelos quedan definidos por la tripla M=(A B π)

21 Nsss K

KK 21 ikii sss

)|()|( 1121 minusminus = ikikikiiik ssPssssP K

21 Mvvv K

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

Baja Alta

0703

02 08

Lluvioso Seco

06 0604 04

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

bull Dos estados correspondientes a la presioacuten atmosfeacutericabull lsquoAltarsquo y lsquoBajarsquo

bull Dos posibles observaciones bull lsquoLluviosorsquo y lsquoSecorsquo

bull Probabilidades de Transicioacuten

bull P(lsquoBajarsquo|lsquoBajarsquo)=03 P(lsquoAltarsquo|lsquoBajarsquo)=07 P(lsquoBajarsquo|lsquoAltarsquo)=02

P(lsquoAltarsquo|lsquoAltarsquo)=08bull Probabilidades de Observacioacuten

bull P(lsquoLluviosorsquo|lsquoBajarsquo)=06 P(lsquoSecorsquo|lsquoBajarsquo)=04

P(lsquoLluviosorsquo|lsquoAltarsquo)=04 P(lsquoSecorsquo|lsquoAltarsquo)=03 bull Probabilidades iniciales

bull P(lsquoBajarsquo)=04 P(lsquoAltarsquo)=06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM Prediccioacuten del tiempo de acuerdo al estado de un alga

empapado huacutemedo casi seco seco

nubes lluviasol

Oculto

Observable

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

Empapado Huacutemedo Casi seco Seco

Sol 060 020 015 005

Nubes 025 025 025 025

Lluvia 005 010 035 050

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

22

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

i P(qt+1=S1|qt=Si)

P(qt+1=S2|qt=Si)

P(qt+1=Sj|qt=Si)

P(qt+1=SN

|qt=Si)

1 a11 a12 hellip a1j hellip a1N

2 a21 a22 hellip a2j hellip a2N

3 a31 a32 hellip a3j hellip a3N

hellip

i ai1 ai2 hellip aij hellip aiN

hellip

N aN1 aN2 hellip aNj hellip aNN

Todas estas tablas son

iguales

aij = P (qt+1=sj|qt=si)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

i P(Ot=1|qt=Si) P(Ot=2|qt=Si) P(Ot=j|qt=Si) P(Ot=N|qt=Si)

1 b1(1) b1(2) hellip b1(j) hellip b1(N)2 b2(1) b2(2) hellip b2(j) hellip b2(N)3 b3(1) b3(2) hellip b3(j) hellip b3(N)hellip

i Bi(1) bi(2) hellip bi(j) hellip bi(N)hellip

N bN(1) bN(2) hellip bN(j) hellip bN(N)

bi(j) = P (Ot=j|qt=si)

Todas estas tablas son

iguales

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

un enrejado

s1

s2

si

sN

s1

s2

si

sN

s1

s2

sj

sN

s1

s2

si

sN

a1j

a2j

aij

aNj

1 k k+1 K

o1 ok ok+1 oKObservaciones

Tiempo

Ejemplo Casino tramposo

Un casino tiene dos dados Dado ldquojustordquo

P(1) = P(2) = P(3) = P(5) = P(6) = 16 Dado cargado

P(1) = P(2) = P(3) = P(4) = P(5) = 110P(6) = 12

El casino alterna entre el dado justo y el cargado una vezcada 20 turnos

Problemas a resolver con HMM Evaluacioacuten

Dado un HMM M=(A B π) y una secuencia de observaciones O=o1 o2 oK calcular la probabilidad de que el modelo M haya generado la secuencia O

Dr Marcelo G Armentano - ISISTAN - UNICEN

EvaluacioacutenDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestCuan probable es esta secuencia dado nuestromodelo de como opera el casino

Este es el problema de EVALUACIOacuteN en HMMs

03112011

23

Problemas a resolver con HMM Decodificacioacuten o inferencia

Dado un HMM M=(A B π) y una secuencia de observaciones O=o1 o2 oK calcular la secuencia de estados ocultos Si que maacutes probablemente produjo la secuencia de observaciones O

Dr Marcelo G Armentano - ISISTAN - UNICEN

DecodificacioacutenDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestQue partes de la secuencia fueron generadas por el dado cargado y cuales por el dado justo

Este es el problema de DECODIFICACIOacuteN en HMMs

Problemas a resolver con HMM Aprendizaje

Dado un conjunto de secuencias de observaciones de entrenamiento O=o1 o2 oK y la estructura general de HMM (cantidad de estados ocultos y cantidad de estados visibles) determinar los paraacutemetros del HMM M=(A B π) que mejor se ajustan a los datos de entrenamiento

Dr Marcelo G Armentano - ISISTAN - UNICEN

AprendizajeDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestCoacutemo estaacute cargado el dado cargado iquestCada cuantocambia el casino entre el dado cargado y el justo

Este es el problema de APRENDIZAJE en HMMs

El HMM del casino tramposo

JUSTO CARGADO

005

005

095095

P(1|Justo) = 16P(2|Justo) = 16P(3|Justo) = 16P(4|Justo) = 16P(5|Justo) = 16P(6|Justo) = 16

P(1|Cargado) = 110P(2|Cargado) = 110P(3|Cargado) = 110P(4|Cargado) = 110P(5|Cargado) = 110P(6|Cargado) = 12

Ejemplo reconocimiento de

palabras Se asume que los caracteres estaacuten separados

El reconocedorde caracteres da como salida la probabilidad de que una imagen corresponda a un caracterparticular P(caracter|imagen)

05

003

0005

031z

c

b

a

Estado Oculto

Estado Observable

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

24

Ejemplo reconocimiento de

palabras Estados Ocultos del HMM caracteres

Estados Observables imagenes de caracteres

Probabilidades de Observacioacutenαv

( ) ( ))|()( ii svPvbB αα ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo reconocimiento de

palabras Si se conoce el diccionario es posible construir un modelo

individual para cada palabra

bull Problema de evaluacioacuten reconocer la palabra en unaimagen es equivalente a evaluar un conjunto de modelos

amigos a m i g o s

buacutefalo b uacute f a l o

05 003 04 06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo reconocimiento de

palabras Podemos construir un HMM para todas las palabras

Estados ocultos los caracteres de las palabras

Probabilidades de transicioacuten calculadas a partir de modelos del lenguaje

Observaciones y probabilidades de observacioacuten iguales al ejemplo anterior

Problema de decodificacioacuten encontrar la secuencia de estados ocultos que maacutes probablemente generaron la imagen

a m

i g

o

s

t

b v

f

u

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

Forward-Backward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward

Seco Huacutemedo EmpapadoObs

Sol

Nubes

Lluvia

Sol

Nubes

Lluvia

Sol

Nubes

Lluvia

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward Pr(Seco Huacutemedo Empapado|M) =

Pr(seco huacutemedo empapado|sol sol sol) +

Pr(seco huacutemedo empapado|sol nubes sol) +

hellip

Pr(seco huacutemedo empapado|lluvia lluvia lluvia)

iexcliexclMuy Costoso

33 = 27 caacutelculos

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

25

Algoritmo Forward Reduccioacuten de la complejidad

Probabilidad parcial de alcanzar un estado intermedio en el entramado

Yk1 Yk2 hellip YkT

Sol

Nubes

Lluvia

Nubes

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward αt(j)= Pr(obs|estado oculto es j)

Pr( todos los caminos al estado j en el tiempo t)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward En el tiempo t=1

En el tiempo t gt1

α1(j)=π(j) Pr(obs|estado j)

αt(j)=Pr(todos los caminos a j) Pr(obs|estado j)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward

Terminacioacuten

Dr Marcelo G Armentano - ISISTAN - UNICEN

sum=

=n

j

T jMObs1

)()|Pr( α

sum=

++ =n

i

ijttjt ajobj1

11 )()()( αα

Algoritmo Forward

Sol

α1(sol)=π(sol) bsol(humedo)

Nubes

α1(nubes)=π(nubes) bnubes(humedo)

Lluvia

α1(lluvia)=π(lluvia) blluvia(humedo)

)()(secb )(nubesi1nubes2 sum sdotsdot=

iaionubes αα

Nubes

asolnubes

anubesnubes

alluvianubes

Huacutemedo Seco

Algoritmo Backward

Se define la variable β

)|()( 21 λβ iqoooPi tTttt == ++

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

26

Algoritmo Backward

Inicializacioacuten

Caacutelculo

Finalizacioacuten

1)( =jTβ

1 1

1

( ) ( ) ( )N

t t ij j t

j

i j a b oβ β + +=

=sum

sum=

=N

i

i iobiOp1

11 )()()()|( βπλ 11minus= Tt

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

Forward- Backward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Encontrar la secuencia maacutes probable de estados

ocultos dada una secuencia de observaciones

Ejemplo etiquetar palabras en una oracioacuten con su funcioacuten sintaacutectica

iquestEstados observables iquestEstados ocultos

Juan come naranjasNS NP OD

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Probabilidad parcial δ de alcanzar un estado

intermedio particular en el entramado

δ representa la probabilidad del camino maacutes probable a un estado

Para cada estado final hay un camino maacutes probable a ese estado

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi δ(it) es la maacutexima probabilidad de todas las

secuencias que terminan en el estado i en el tiempo t

En t=T tenemos las mejores probabilidades parciales y los mejores caminos parciales

El mejor camino global a T es el que lleva al estado con la mayor probabilidad

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En t=1

)()()1( 1obii isdot= πδ

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

27

Algoritmo de Viterbi En tgt1

A

B

C

Xhellip

Tltt-1 t-1 t

Pr(x en T=t) = maxi=ABC Pr(i en T=t-1) Pr(X|i) Pr(Ot|X)

)())1((max)( tiijj

obajtit sdotsdotminus= δδDr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En cada tiempo t recordamos el estado j que generoacute

δ(ti)

Se reconstruye el camino utilizando los punteros φhasta el tiempo t=1

ijj

ajtit )1(max)( sdotminus= δφ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi

)(max1

iP TNi

δlele

=lowast

)(maxarg1

iq TNi

T δlele

lowast =

P da la probabilidad de los mejores los estados

qT is la secuencia de estados oacuteptima(Q = q1q2hellipqT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

ForwardBackward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Dada un conjunto de secuencias de observaciones O=o1 o2

oK y la estructura general del HMM (cantidadde estados ocultos

y visibles) determinar los paraacutemetros del modelo M=(A B π) que mejor se ajustan a los datos de entrenamiento es decir

que maximice P(O | M)

Se utiliza el algoritmo de maximizacioacuten de la esperanza para

encontrar un maacuteximo local de P(O | M) algoritmo Baum-Welch

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Si los datos de entrenamiento tienen informacioacuten

acerca de la secuencia de estados ocultos los paraacutemetros se estiman como

xsestransicion

ssestransicionssPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

sveces

senodenesobservaciosoPob

)|()( ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

28

Algorimo Baum-Welch Idea general

xsestransiciondeesperado

ssestransiciondeesperadossPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

svecesdeesperado

senodenesobservaciodeesperadosoPob

)|()( ==

1)( === tparasenvecesdeesperadosP iiiπ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

ξt(ij)= P(qt= si qt+1= sj |o1 o2 oT)

ξt(ij)=P(qt= si qt+1= sj o1 o2 oT)

P(o1 o2 oT)=

P(qt= si o1 o2 ot) aij bj (ot+1 ) P(ot+2 oT | qt+1= sj ) P(o1 o2 oT)

=

=αt(i) aij bj (ot+1 ) βt+1(j)

ΣiΣj αt(i) aij bj (ot+1 ) βt+1(j)

αt(i) aij bj (ot+1 ) βt+1(j)

Σi αt(i) βt(i)Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

tiempo

Estados ocultos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch Definimos γt(i) como la probabilidad de estar en el

estado i en el tiempo t dadas las observaciones

Σt γt(i) - cantidad esperada de veces que visitoel estado i

Σt ξt(ij) - cantidad esperada de transiciones

sum=

=N

j

tt jii1

)()( ξγ

ji rarr

γt(i)= P(qt= si |o1 o2 oT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

sumsum

=)(

)(ˆ

i

jia

t

t

ijγ

ξ

sum

sum ==

)(

)()(ˆ

j

job

t

oot t

kjkt

γ

γ

)(ˆ1 iγπ = la frecuencia esperada del estado i en t=1

nuacutemero esperado de transiciones desde el estado i al estado j sobre la cantidad esperada de transiciones desde el estado i

cantidad de veces que se estuvo en el estado j observando el siacutembolo k sobre la cantidad de veces que se estuvo en el estado j

Dr Marcelo G Armentano - ISISTAN - UNICEN

Bibliografiacutea Bayesian Networks and Decision Graphs - Finn V

Jensen and Thomas D Nielsen - Springer Verlag -Second Edition - 2007

A tutorial on hidden Markov models and selected applications in speech recognition - Lawrence R Rabiner - Proceedings of the IEEE Vol 77 Nordm2 pp 257-286 - 1989

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

29

iquestConsultas

Dr Marcelo G Armentano - ISISTAN - UNICEN

Page 14: redes bayesianas UNICEN.pdf

03112011

14

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

TSXY=SXW=

i=0

NO

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

i=1

SI

SXY=SXW=SZW=Y

03112011

15

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

No hay nodos con maacutes de 3 adyacentes

Algoritmo PC Encontrar las direcciones de los arcos mediante tests

de independencia (tomando las variables de a tres) Para cada variable Z con dos adyacentes X e Y

comprueba que no Z no esteacute en Sxy para conectar a X e Y como padres de Z

Z XY

Z XY

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

ZnotinSXY

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

ZnotinSXY

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

TnotinSZW

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

TnotinSZW

03112011

16

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

Se orienta arbitrariamente (evitando ciclos)

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

Herramientas Hugin

httpwwwhugincomProducts_ServicesProductsDemo

Bayesware httpwwwbayeswarecom

JavaBayes httpwww-2cscmuedu~javabayes

Paacutegina de Finn Jensen httpwwwcsaaudk~fvj

Dr Marcelo G Armentano - ISISTAN - UNICEN

Agenda Introduccioacuten

Redes de Bayes

Modelos de Markov Introduccioacuten

Cadenas de Markov

Modelos Ocultos de Markov

Dr Marcelo G Armentano - ISISTAN - UNICEN

Introduccioacuten Modelar dependencias entre siacutembolos de una

secuencia Temporales

En reconocimiento del habla fonemas en una palabra palabras en una oracioacuten (reconocimiento sintaacutectico)

Espaciales Reconocimiento de escritura

Secuencias de genes

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

17

Procesos aleatorios de Markov Una secuencia aleatoria tiene la propiedad de markov si su

distribucioacuten de probabilidades estaacute determinadauacutenicamente por el estado actual Un proceso aleatorio quecumple con esta propiedad se llama un proceso aleatorio de Markov

Cuando los estados son observables cadenas de Markov

Cuando los estados no son observables modelos ocultos de markov (HMM hidden Markov models)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Regla de Bayes

)()|()( 111111 qqPqqqPqqqP ttttt minusminusminus =

)()|()|()( 121211111 qqPqqqPqqqPqqqP ttttttt minusminusminusminusminus =

prod=

minusminus =t

i

iitt qqqPqPqqqP2

11111 )|()()(

Dr Marcelo G Armentano - ISISTAN - UNICEN

Propiedad de Markov

1)|()|( 111 gt= minusminus iforqqPqqqP iiii

)|()|()()|()()( 1121

2

1111 minus=

minusminus == prod tt

t

i

iitt qqPqqPqPqqPqPqqqP

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov Pueden verse como un grafo de transicioacuten de estados

con probabilidades en sus arcos

Ejemplo Generacioacuten de Texto Aleatorio Un nodo por cada letra uacutenica observada

Si luego de la letra X observo la letra Y agrego un arco de X a Y Si el arco ya existe incremento la cantidad de observaciones

asociada al arco

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTAL

03112011

18

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTALTAL

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTALTALTOTOTALTOTOTOTOTALhellip

Cadenas de Markov Texto aleatorio generado a partir de un modelo

entrenado con el primer capiacutetulo de ldquo100 antildeos de soledadrdquo de Gabriel Garciacutea Marquez

Mapl idoca Uno domen quespiate meacute s abrdiacuteaton quadelaros del y en ioacutera puacutellade y antildeosar soacute Ar e Pon s toacutentun llose fase co tus pe foaciguela tr de paquros losintun oceton deros picaras ro pigeltexpa Arrcoacuten asadosen ca hiacuteracugidend madel cos pelo ca hamuy cuncte preraletrapuina venco sosueacute gifuas y estiogidire y ple peno do dociemanoacutey den matrones s Arseacutelades lelanelo lacides Jombidorentioacute lla caqueacutetrotan de ciechitevo pa e troacute ulega teilizaban riacuteaden zopendesellaundo u ca tioroserar vorasun plara en fue dempa teresen y umusmpio y sedes s s ezordel rugexhas darmabioacute

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N Extensioacuten a las cadenas de Markov en las que cada

estados representa una secuencia de N observaciones consecutivas

N-gramas

Ocurrencias

che 60

chi 25

cha 10

cho 5

ch

ch se observa 100 veces de las cualeshellip

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N=2

ISMI

SS

SI

IP

PP

PI

10

1010

10

10o5 o5

M I S S I S S I P P I

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N=3

ISSMIS

SSI

SIS

SIP

IPP

PPI

10

10

10

10

10

o5

o5

M I S S I S S I P P I

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

19

Cadenas de Markov de orden N N=1

Modelo fiel a las frecuencias de cada par de letras

No representa bien el lenguaje natural

Dr Marcelo G Armentano - ISISTAN - UNICEN

Mapl idoca Uno domen quespiate meacute s abrdiacuteaton quadelaros del y en ioacutera puacutellade y antildeosar soacute Ar e Pon s toacutentun llose fase co tus pe foaciguela tr de paquros losintun oceton deros picaras ro pigeltexpa Arrcoacuten asadosen ca hiacuteracugidend madel cos pelo ca hamuy cuncte preraletrapuina venco sosueacute gifuas y estiogidire y ple peno do dociemanoacutey den matrones s Arseacutelades lelanelo lacides Jombidorentioacute lla caqueacutetrotan de ciechitevo pa e troacute ulega teilizaban riacuteaden zopendesellaundo u ca tioroserar vorasun plara en fue dempa teresen y umusmpio y sedes s s ezordel rugexhas darmabioacute

Cadenas de Markov de Orden N Texto aleatorio generado N=2

Muca donios y hombre llas res pla plambregrimanteoacute el la sioacute entude Salemo fue uncioacuten co crioacuten Tendiacutea en sula ta chicalque le siezblena que tras senterosagareto mdashgruel res entorasanesbazuerasabepaacuten enda con de in inagercamieropito don cuarecior siblimena tero en joacute te Fuedo paresegua pespurantespuen dos porodad de la que cabaquentra denabrencestiminotescuyoacute quel mor loseacute Acturo pen for es ella guanos mitadraratientoacuten condiacutea la allado quen se logoacute la balaritiva triblesala soacutelos habalcabiempor ere griacutea to borse allas laciasiacutemisible por pocaza los so ola la nintildeos cuaro eacutel y lar espiendismo antildeonetrouna que cad fuerofocieres resa combrempuros parsu misiblocerma anoceraya elos no a y ejoacute desta una tioacuten

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Texto aleatorio generado N=3

Muchetextremecitano conveniencia Cuando por acora pre hablancie el rudienteel pusierantado poblado pago y aumentar animaginacioacuten aza des examillos maacutes gigaciera suellevoacute los que inte la viajes rayos imales hacedor y el teacuterminuto pueses siles expedas mocha que la tanos ser en que vez lles la como la maacutes pase lo uacutenicos romera lado JoseacuteArcadiosas antes al realejo en que de dejoacute todidos tre distilado infinito desco a le se para ver bolada alquiacutedea

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Texto aleatorio generado N=4

Muchos y salambioacute un chaleco de habiacutea burla como el pasoacute la resto de aban su fue ser prendedor condo una buena de las casaquimisterios Joseacute Arcadio Buendiacutea sino esentoacute como un en aquel tambor quedoacute recuerdo de un fugitivo en que en que sierrar los metalejos a puestaban de una tersas y el mundo sino consolas y veiacutean desar a la casa cuyos sin comer Aureliano conjuro de el esperso de piedras

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N = 3-4

Comienzan a aparecer palabras maacutes reconocibles

Palabras de muchas letras aparecen frecuentemente ldquopegadasrdquo a otras palabras

Cuanto maacutes extenso es el texto de entrenamiento maacutes variedad habraacute en la salida

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Entrenamiento con palabras completas (N=1)

Texto generado

Se habiacutea que construyoacute trampas y sus iniciales encima con una insolacioacuten por mares incoacutegnitos visitar territorios maacutes emprendedor que se hundiacutean en las maravillas del mundo Era una explicacioacuten inmediata Joseacute Arcadio Buendiacutea la resonancia hueca de helechos y entonces una truculenta demostracioacuten con un aacutespero sabor de fusilamiento el interior y tambores y a prepararse para llevaacuterselos a palmo a conocerlo mantuvo puesta por los burros Asiacute fue desde haciacutea mucho tiempo porque el mundo se asomaba al caramelo vulgar que un paacutenico cuando llegoacute la judiacutea

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

20

Cadenas de Markov de Orden N Entrenamiento con palabras completas (N=4)

Texto generado

Consideraba como una burla de su travieso destino haber buscado el mar sin encontrarlo al precio de sacrificios y penalidades sin cuento y haberlo encontrado entonces sin buscarlo atravesado en su camino como un obstaacuteculo insalvable Uacutersula no volvioacute a acordarse de la intensidad de esa mirada hasta un diacutea en que el pequentildeo Aureliano a la edad de tres antildeos entroacute a la cocina en el momento en que ella retiraba del fogoacuten y poniacutea en la mesa una olla de caldo hirviendo Aquel olor mordiente quedariacutea para siempre en su memoria vinculado al recuerdo de Melquiacuteades

Dr Marcelo G Armentano - ISISTAN - UNICEN

Modelos de Markov Conjunto de estados

El proceso se mueve de un estado a otro generando unasecuencia de estados

Propiedad de Markov la probabilidad de cada estadosiguiente depende soacutelo del estado previo

bull Para definir un modelo de Markov deben especificarselas siguientes probabilidades

21 Nsss K

KK 21 ikii sss

)|()|( 1121 minusminus = ikikikiiik ssPssssP K

)|( jiij ssPa =)( ii sP=π

Probabilidad del estado inicial Probabilidad de transicioacuten de estados

Dr Marcelo G Armentano - ISISTAN - UNICEN

Lluvioso Seco

0703

02 08

Ejemplo de modelo de Markov

Dos posibles estados lsquoLluviosorsquo ylsquoSecorsquo Probabilidades de Transicioacuten

P(lsquoLluviosorsquo|lsquoLluviosorsquo)=03 P(lsquoSecorsquo|lsquoLluviosorsquo)=07

P(lsquoLluviosorsquo|lsquoSecorsquo)=02 P(lsquoSecorsquo|lsquoSecorsquo)=08

Probabilidades iniciales

P(lsquoLluviosorsquo)=04 P(lsquoSecorsquo)=06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Probabilidad de una secuencia Por la probabilidad de Markov

P(lsquoSecorsquorsquoSecorsquorsquoLluviosorsquorsquoLluviosorsquo ) =P(lsquoLluviosorsquo|rsquoLluviosorsquo) P(lsquoLluviosorsquo|rsquoSecorsquo)

P(lsquoSecorsquo|rsquoSecorsquo) P(lsquoSecorsquo) = 03020806 = 00288

)()|()( 12112121 minusminus= ikiiikiiikikii sssPssssPsssP KKK

)()|()|()|(

)()|(

112211

1211

iiiikikikik

ikiiikik

sPssPssPssP

sssPssP

K

KK

minusminusminus

minusminus

=

==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Underflow El producto de muchas probabilidades entre 0 y 1

puede resultar en underflow

Dado que log(xy) = log(x) + log(y) es mejor realizar la suma del logaritmo de las probabilidades que multiplicarlas

El modelo con el mayor puntaje final de probabilidad logariacutetmica sigue siendo la maacutes probable

Dr Marcelo G Armentano - ISISTAN - UNICEN

Hipoacutetesis del maacuteximo a posteriori

)|(maxarg DhPhHh

MAPisin

equiv

)(

)()|(maxarg

DP

hPhDP

Hhisin

=

)()|(maxarg hPhDPHhisin

=

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

21

Modelos Ocultos de Markov (HMM)

Conjunto de estados El proceso de mueve de un estado a otro generando una secuencia de

estados

Propiedad de Markov La probabilidad de cada estado depende solo del estado actual

Los estados no son visibles pero cada estado genera aleatoriamente unade las posibles observaciones (estados visibles)

Para definir un modelo oculto de Markov se deben especificar las siguientes probabilidades Matriz de probabilidades transicioacuten A=(aij) aij= P(si | sj) Matriz de probabilidades de observacioacuten B=(bi (vm )) bi(vm )= P(vm | si) Vector de probabilidades iniciales π=(πi) πi = P(si)

Los modelos quedan definidos por la tripla M=(A B π)

21 Nsss K

KK 21 ikii sss

)|()|( 1121 minusminus = ikikikiiik ssPssssP K

21 Mvvv K

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

Baja Alta

0703

02 08

Lluvioso Seco

06 0604 04

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

bull Dos estados correspondientes a la presioacuten atmosfeacutericabull lsquoAltarsquo y lsquoBajarsquo

bull Dos posibles observaciones bull lsquoLluviosorsquo y lsquoSecorsquo

bull Probabilidades de Transicioacuten

bull P(lsquoBajarsquo|lsquoBajarsquo)=03 P(lsquoAltarsquo|lsquoBajarsquo)=07 P(lsquoBajarsquo|lsquoAltarsquo)=02

P(lsquoAltarsquo|lsquoAltarsquo)=08bull Probabilidades de Observacioacuten

bull P(lsquoLluviosorsquo|lsquoBajarsquo)=06 P(lsquoSecorsquo|lsquoBajarsquo)=04

P(lsquoLluviosorsquo|lsquoAltarsquo)=04 P(lsquoSecorsquo|lsquoAltarsquo)=03 bull Probabilidades iniciales

bull P(lsquoBajarsquo)=04 P(lsquoAltarsquo)=06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM Prediccioacuten del tiempo de acuerdo al estado de un alga

empapado huacutemedo casi seco seco

nubes lluviasol

Oculto

Observable

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

Empapado Huacutemedo Casi seco Seco

Sol 060 020 015 005

Nubes 025 025 025 025

Lluvia 005 010 035 050

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

22

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

i P(qt+1=S1|qt=Si)

P(qt+1=S2|qt=Si)

P(qt+1=Sj|qt=Si)

P(qt+1=SN

|qt=Si)

1 a11 a12 hellip a1j hellip a1N

2 a21 a22 hellip a2j hellip a2N

3 a31 a32 hellip a3j hellip a3N

hellip

i ai1 ai2 hellip aij hellip aiN

hellip

N aN1 aN2 hellip aNj hellip aNN

Todas estas tablas son

iguales

aij = P (qt+1=sj|qt=si)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

i P(Ot=1|qt=Si) P(Ot=2|qt=Si) P(Ot=j|qt=Si) P(Ot=N|qt=Si)

1 b1(1) b1(2) hellip b1(j) hellip b1(N)2 b2(1) b2(2) hellip b2(j) hellip b2(N)3 b3(1) b3(2) hellip b3(j) hellip b3(N)hellip

i Bi(1) bi(2) hellip bi(j) hellip bi(N)hellip

N bN(1) bN(2) hellip bN(j) hellip bN(N)

bi(j) = P (Ot=j|qt=si)

Todas estas tablas son

iguales

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

un enrejado

s1

s2

si

sN

s1

s2

si

sN

s1

s2

sj

sN

s1

s2

si

sN

a1j

a2j

aij

aNj

1 k k+1 K

o1 ok ok+1 oKObservaciones

Tiempo

Ejemplo Casino tramposo

Un casino tiene dos dados Dado ldquojustordquo

P(1) = P(2) = P(3) = P(5) = P(6) = 16 Dado cargado

P(1) = P(2) = P(3) = P(4) = P(5) = 110P(6) = 12

El casino alterna entre el dado justo y el cargado una vezcada 20 turnos

Problemas a resolver con HMM Evaluacioacuten

Dado un HMM M=(A B π) y una secuencia de observaciones O=o1 o2 oK calcular la probabilidad de que el modelo M haya generado la secuencia O

Dr Marcelo G Armentano - ISISTAN - UNICEN

EvaluacioacutenDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestCuan probable es esta secuencia dado nuestromodelo de como opera el casino

Este es el problema de EVALUACIOacuteN en HMMs

03112011

23

Problemas a resolver con HMM Decodificacioacuten o inferencia

Dado un HMM M=(A B π) y una secuencia de observaciones O=o1 o2 oK calcular la secuencia de estados ocultos Si que maacutes probablemente produjo la secuencia de observaciones O

Dr Marcelo G Armentano - ISISTAN - UNICEN

DecodificacioacutenDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestQue partes de la secuencia fueron generadas por el dado cargado y cuales por el dado justo

Este es el problema de DECODIFICACIOacuteN en HMMs

Problemas a resolver con HMM Aprendizaje

Dado un conjunto de secuencias de observaciones de entrenamiento O=o1 o2 oK y la estructura general de HMM (cantidad de estados ocultos y cantidad de estados visibles) determinar los paraacutemetros del HMM M=(A B π) que mejor se ajustan a los datos de entrenamiento

Dr Marcelo G Armentano - ISISTAN - UNICEN

AprendizajeDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestCoacutemo estaacute cargado el dado cargado iquestCada cuantocambia el casino entre el dado cargado y el justo

Este es el problema de APRENDIZAJE en HMMs

El HMM del casino tramposo

JUSTO CARGADO

005

005

095095

P(1|Justo) = 16P(2|Justo) = 16P(3|Justo) = 16P(4|Justo) = 16P(5|Justo) = 16P(6|Justo) = 16

P(1|Cargado) = 110P(2|Cargado) = 110P(3|Cargado) = 110P(4|Cargado) = 110P(5|Cargado) = 110P(6|Cargado) = 12

Ejemplo reconocimiento de

palabras Se asume que los caracteres estaacuten separados

El reconocedorde caracteres da como salida la probabilidad de que una imagen corresponda a un caracterparticular P(caracter|imagen)

05

003

0005

031z

c

b

a

Estado Oculto

Estado Observable

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

24

Ejemplo reconocimiento de

palabras Estados Ocultos del HMM caracteres

Estados Observables imagenes de caracteres

Probabilidades de Observacioacutenαv

( ) ( ))|()( ii svPvbB αα ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo reconocimiento de

palabras Si se conoce el diccionario es posible construir un modelo

individual para cada palabra

bull Problema de evaluacioacuten reconocer la palabra en unaimagen es equivalente a evaluar un conjunto de modelos

amigos a m i g o s

buacutefalo b uacute f a l o

05 003 04 06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo reconocimiento de

palabras Podemos construir un HMM para todas las palabras

Estados ocultos los caracteres de las palabras

Probabilidades de transicioacuten calculadas a partir de modelos del lenguaje

Observaciones y probabilidades de observacioacuten iguales al ejemplo anterior

Problema de decodificacioacuten encontrar la secuencia de estados ocultos que maacutes probablemente generaron la imagen

a m

i g

o

s

t

b v

f

u

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

Forward-Backward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward

Seco Huacutemedo EmpapadoObs

Sol

Nubes

Lluvia

Sol

Nubes

Lluvia

Sol

Nubes

Lluvia

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward Pr(Seco Huacutemedo Empapado|M) =

Pr(seco huacutemedo empapado|sol sol sol) +

Pr(seco huacutemedo empapado|sol nubes sol) +

hellip

Pr(seco huacutemedo empapado|lluvia lluvia lluvia)

iexcliexclMuy Costoso

33 = 27 caacutelculos

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

25

Algoritmo Forward Reduccioacuten de la complejidad

Probabilidad parcial de alcanzar un estado intermedio en el entramado

Yk1 Yk2 hellip YkT

Sol

Nubes

Lluvia

Nubes

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward αt(j)= Pr(obs|estado oculto es j)

Pr( todos los caminos al estado j en el tiempo t)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward En el tiempo t=1

En el tiempo t gt1

α1(j)=π(j) Pr(obs|estado j)

αt(j)=Pr(todos los caminos a j) Pr(obs|estado j)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward

Terminacioacuten

Dr Marcelo G Armentano - ISISTAN - UNICEN

sum=

=n

j

T jMObs1

)()|Pr( α

sum=

++ =n

i

ijttjt ajobj1

11 )()()( αα

Algoritmo Forward

Sol

α1(sol)=π(sol) bsol(humedo)

Nubes

α1(nubes)=π(nubes) bnubes(humedo)

Lluvia

α1(lluvia)=π(lluvia) blluvia(humedo)

)()(secb )(nubesi1nubes2 sum sdotsdot=

iaionubes αα

Nubes

asolnubes

anubesnubes

alluvianubes

Huacutemedo Seco

Algoritmo Backward

Se define la variable β

)|()( 21 λβ iqoooPi tTttt == ++

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

26

Algoritmo Backward

Inicializacioacuten

Caacutelculo

Finalizacioacuten

1)( =jTβ

1 1

1

( ) ( ) ( )N

t t ij j t

j

i j a b oβ β + +=

=sum

sum=

=N

i

i iobiOp1

11 )()()()|( βπλ 11minus= Tt

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

Forward- Backward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Encontrar la secuencia maacutes probable de estados

ocultos dada una secuencia de observaciones

Ejemplo etiquetar palabras en una oracioacuten con su funcioacuten sintaacutectica

iquestEstados observables iquestEstados ocultos

Juan come naranjasNS NP OD

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Probabilidad parcial δ de alcanzar un estado

intermedio particular en el entramado

δ representa la probabilidad del camino maacutes probable a un estado

Para cada estado final hay un camino maacutes probable a ese estado

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi δ(it) es la maacutexima probabilidad de todas las

secuencias que terminan en el estado i en el tiempo t

En t=T tenemos las mejores probabilidades parciales y los mejores caminos parciales

El mejor camino global a T es el que lleva al estado con la mayor probabilidad

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En t=1

)()()1( 1obii isdot= πδ

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

27

Algoritmo de Viterbi En tgt1

A

B

C

Xhellip

Tltt-1 t-1 t

Pr(x en T=t) = maxi=ABC Pr(i en T=t-1) Pr(X|i) Pr(Ot|X)

)())1((max)( tiijj

obajtit sdotsdotminus= δδDr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En cada tiempo t recordamos el estado j que generoacute

δ(ti)

Se reconstruye el camino utilizando los punteros φhasta el tiempo t=1

ijj

ajtit )1(max)( sdotminus= δφ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi

)(max1

iP TNi

δlele

=lowast

)(maxarg1

iq TNi

T δlele

lowast =

P da la probabilidad de los mejores los estados

qT is la secuencia de estados oacuteptima(Q = q1q2hellipqT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

ForwardBackward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Dada un conjunto de secuencias de observaciones O=o1 o2

oK y la estructura general del HMM (cantidadde estados ocultos

y visibles) determinar los paraacutemetros del modelo M=(A B π) que mejor se ajustan a los datos de entrenamiento es decir

que maximice P(O | M)

Se utiliza el algoritmo de maximizacioacuten de la esperanza para

encontrar un maacuteximo local de P(O | M) algoritmo Baum-Welch

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Si los datos de entrenamiento tienen informacioacuten

acerca de la secuencia de estados ocultos los paraacutemetros se estiman como

xsestransicion

ssestransicionssPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

sveces

senodenesobservaciosoPob

)|()( ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

28

Algorimo Baum-Welch Idea general

xsestransiciondeesperado

ssestransiciondeesperadossPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

svecesdeesperado

senodenesobservaciodeesperadosoPob

)|()( ==

1)( === tparasenvecesdeesperadosP iiiπ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

ξt(ij)= P(qt= si qt+1= sj |o1 o2 oT)

ξt(ij)=P(qt= si qt+1= sj o1 o2 oT)

P(o1 o2 oT)=

P(qt= si o1 o2 ot) aij bj (ot+1 ) P(ot+2 oT | qt+1= sj ) P(o1 o2 oT)

=

=αt(i) aij bj (ot+1 ) βt+1(j)

ΣiΣj αt(i) aij bj (ot+1 ) βt+1(j)

αt(i) aij bj (ot+1 ) βt+1(j)

Σi αt(i) βt(i)Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

tiempo

Estados ocultos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch Definimos γt(i) como la probabilidad de estar en el

estado i en el tiempo t dadas las observaciones

Σt γt(i) - cantidad esperada de veces que visitoel estado i

Σt ξt(ij) - cantidad esperada de transiciones

sum=

=N

j

tt jii1

)()( ξγ

ji rarr

γt(i)= P(qt= si |o1 o2 oT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

sumsum

=)(

)(ˆ

i

jia

t

t

ijγ

ξ

sum

sum ==

)(

)()(ˆ

j

job

t

oot t

kjkt

γ

γ

)(ˆ1 iγπ = la frecuencia esperada del estado i en t=1

nuacutemero esperado de transiciones desde el estado i al estado j sobre la cantidad esperada de transiciones desde el estado i

cantidad de veces que se estuvo en el estado j observando el siacutembolo k sobre la cantidad de veces que se estuvo en el estado j

Dr Marcelo G Armentano - ISISTAN - UNICEN

Bibliografiacutea Bayesian Networks and Decision Graphs - Finn V

Jensen and Thomas D Nielsen - Springer Verlag -Second Edition - 2007

A tutorial on hidden Markov models and selected applications in speech recognition - Lawrence R Rabiner - Proceedings of the IEEE Vol 77 Nordm2 pp 257-286 - 1989

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

29

iquestConsultas

Dr Marcelo G Armentano - ISISTAN - UNICEN

Page 15: redes bayesianas UNICEN.pdf

03112011

15

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

No hay nodos con maacutes de 3 adyacentes

Algoritmo PC Encontrar las direcciones de los arcos mediante tests

de independencia (tomando las variables de a tres) Para cada variable Z con dos adyacentes X e Y

comprueba que no Z no esteacute en Sxy para conectar a X e Y como padres de Z

Z XY

Z XY

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

ZnotinSXY

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

ZnotinSXY

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

TnotinSZW

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

SXY=SXW=SZW=YSXT=ZWSYT=ZW

TnotinSZW

03112011

16

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

Se orienta arbitrariamente (evitando ciclos)

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

Herramientas Hugin

httpwwwhugincomProducts_ServicesProductsDemo

Bayesware httpwwwbayeswarecom

JavaBayes httpwww-2cscmuedu~javabayes

Paacutegina de Finn Jensen httpwwwcsaaudk~fvj

Dr Marcelo G Armentano - ISISTAN - UNICEN

Agenda Introduccioacuten

Redes de Bayes

Modelos de Markov Introduccioacuten

Cadenas de Markov

Modelos Ocultos de Markov

Dr Marcelo G Armentano - ISISTAN - UNICEN

Introduccioacuten Modelar dependencias entre siacutembolos de una

secuencia Temporales

En reconocimiento del habla fonemas en una palabra palabras en una oracioacuten (reconocimiento sintaacutectico)

Espaciales Reconocimiento de escritura

Secuencias de genes

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

17

Procesos aleatorios de Markov Una secuencia aleatoria tiene la propiedad de markov si su

distribucioacuten de probabilidades estaacute determinadauacutenicamente por el estado actual Un proceso aleatorio quecumple con esta propiedad se llama un proceso aleatorio de Markov

Cuando los estados son observables cadenas de Markov

Cuando los estados no son observables modelos ocultos de markov (HMM hidden Markov models)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Regla de Bayes

)()|()( 111111 qqPqqqPqqqP ttttt minusminusminus =

)()|()|()( 121211111 qqPqqqPqqqPqqqP ttttttt minusminusminusminusminus =

prod=

minusminus =t

i

iitt qqqPqPqqqP2

11111 )|()()(

Dr Marcelo G Armentano - ISISTAN - UNICEN

Propiedad de Markov

1)|()|( 111 gt= minusminus iforqqPqqqP iiii

)|()|()()|()()( 1121

2

1111 minus=

minusminus == prod tt

t

i

iitt qqPqqPqPqqPqPqqqP

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov Pueden verse como un grafo de transicioacuten de estados

con probabilidades en sus arcos

Ejemplo Generacioacuten de Texto Aleatorio Un nodo por cada letra uacutenica observada

Si luego de la letra X observo la letra Y agrego un arco de X a Y Si el arco ya existe incremento la cantidad de observaciones

asociada al arco

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTAL

03112011

18

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTALTAL

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTALTALTOTOTALTOTOTOTOTALhellip

Cadenas de Markov Texto aleatorio generado a partir de un modelo

entrenado con el primer capiacutetulo de ldquo100 antildeos de soledadrdquo de Gabriel Garciacutea Marquez

Mapl idoca Uno domen quespiate meacute s abrdiacuteaton quadelaros del y en ioacutera puacutellade y antildeosar soacute Ar e Pon s toacutentun llose fase co tus pe foaciguela tr de paquros losintun oceton deros picaras ro pigeltexpa Arrcoacuten asadosen ca hiacuteracugidend madel cos pelo ca hamuy cuncte preraletrapuina venco sosueacute gifuas y estiogidire y ple peno do dociemanoacutey den matrones s Arseacutelades lelanelo lacides Jombidorentioacute lla caqueacutetrotan de ciechitevo pa e troacute ulega teilizaban riacuteaden zopendesellaundo u ca tioroserar vorasun plara en fue dempa teresen y umusmpio y sedes s s ezordel rugexhas darmabioacute

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N Extensioacuten a las cadenas de Markov en las que cada

estados representa una secuencia de N observaciones consecutivas

N-gramas

Ocurrencias

che 60

chi 25

cha 10

cho 5

ch

ch se observa 100 veces de las cualeshellip

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N=2

ISMI

SS

SI

IP

PP

PI

10

1010

10

10o5 o5

M I S S I S S I P P I

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N=3

ISSMIS

SSI

SIS

SIP

IPP

PPI

10

10

10

10

10

o5

o5

M I S S I S S I P P I

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

19

Cadenas de Markov de orden N N=1

Modelo fiel a las frecuencias de cada par de letras

No representa bien el lenguaje natural

Dr Marcelo G Armentano - ISISTAN - UNICEN

Mapl idoca Uno domen quespiate meacute s abrdiacuteaton quadelaros del y en ioacutera puacutellade y antildeosar soacute Ar e Pon s toacutentun llose fase co tus pe foaciguela tr de paquros losintun oceton deros picaras ro pigeltexpa Arrcoacuten asadosen ca hiacuteracugidend madel cos pelo ca hamuy cuncte preraletrapuina venco sosueacute gifuas y estiogidire y ple peno do dociemanoacutey den matrones s Arseacutelades lelanelo lacides Jombidorentioacute lla caqueacutetrotan de ciechitevo pa e troacute ulega teilizaban riacuteaden zopendesellaundo u ca tioroserar vorasun plara en fue dempa teresen y umusmpio y sedes s s ezordel rugexhas darmabioacute

Cadenas de Markov de Orden N Texto aleatorio generado N=2

Muca donios y hombre llas res pla plambregrimanteoacute el la sioacute entude Salemo fue uncioacuten co crioacuten Tendiacutea en sula ta chicalque le siezblena que tras senterosagareto mdashgruel res entorasanesbazuerasabepaacuten enda con de in inagercamieropito don cuarecior siblimena tero en joacute te Fuedo paresegua pespurantespuen dos porodad de la que cabaquentra denabrencestiminotescuyoacute quel mor loseacute Acturo pen for es ella guanos mitadraratientoacuten condiacutea la allado quen se logoacute la balaritiva triblesala soacutelos habalcabiempor ere griacutea to borse allas laciasiacutemisible por pocaza los so ola la nintildeos cuaro eacutel y lar espiendismo antildeonetrouna que cad fuerofocieres resa combrempuros parsu misiblocerma anoceraya elos no a y ejoacute desta una tioacuten

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Texto aleatorio generado N=3

Muchetextremecitano conveniencia Cuando por acora pre hablancie el rudienteel pusierantado poblado pago y aumentar animaginacioacuten aza des examillos maacutes gigaciera suellevoacute los que inte la viajes rayos imales hacedor y el teacuterminuto pueses siles expedas mocha que la tanos ser en que vez lles la como la maacutes pase lo uacutenicos romera lado JoseacuteArcadiosas antes al realejo en que de dejoacute todidos tre distilado infinito desco a le se para ver bolada alquiacutedea

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Texto aleatorio generado N=4

Muchos y salambioacute un chaleco de habiacutea burla como el pasoacute la resto de aban su fue ser prendedor condo una buena de las casaquimisterios Joseacute Arcadio Buendiacutea sino esentoacute como un en aquel tambor quedoacute recuerdo de un fugitivo en que en que sierrar los metalejos a puestaban de una tersas y el mundo sino consolas y veiacutean desar a la casa cuyos sin comer Aureliano conjuro de el esperso de piedras

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N = 3-4

Comienzan a aparecer palabras maacutes reconocibles

Palabras de muchas letras aparecen frecuentemente ldquopegadasrdquo a otras palabras

Cuanto maacutes extenso es el texto de entrenamiento maacutes variedad habraacute en la salida

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Entrenamiento con palabras completas (N=1)

Texto generado

Se habiacutea que construyoacute trampas y sus iniciales encima con una insolacioacuten por mares incoacutegnitos visitar territorios maacutes emprendedor que se hundiacutean en las maravillas del mundo Era una explicacioacuten inmediata Joseacute Arcadio Buendiacutea la resonancia hueca de helechos y entonces una truculenta demostracioacuten con un aacutespero sabor de fusilamiento el interior y tambores y a prepararse para llevaacuterselos a palmo a conocerlo mantuvo puesta por los burros Asiacute fue desde haciacutea mucho tiempo porque el mundo se asomaba al caramelo vulgar que un paacutenico cuando llegoacute la judiacutea

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

20

Cadenas de Markov de Orden N Entrenamiento con palabras completas (N=4)

Texto generado

Consideraba como una burla de su travieso destino haber buscado el mar sin encontrarlo al precio de sacrificios y penalidades sin cuento y haberlo encontrado entonces sin buscarlo atravesado en su camino como un obstaacuteculo insalvable Uacutersula no volvioacute a acordarse de la intensidad de esa mirada hasta un diacutea en que el pequentildeo Aureliano a la edad de tres antildeos entroacute a la cocina en el momento en que ella retiraba del fogoacuten y poniacutea en la mesa una olla de caldo hirviendo Aquel olor mordiente quedariacutea para siempre en su memoria vinculado al recuerdo de Melquiacuteades

Dr Marcelo G Armentano - ISISTAN - UNICEN

Modelos de Markov Conjunto de estados

El proceso se mueve de un estado a otro generando unasecuencia de estados

Propiedad de Markov la probabilidad de cada estadosiguiente depende soacutelo del estado previo

bull Para definir un modelo de Markov deben especificarselas siguientes probabilidades

21 Nsss K

KK 21 ikii sss

)|()|( 1121 minusminus = ikikikiiik ssPssssP K

)|( jiij ssPa =)( ii sP=π

Probabilidad del estado inicial Probabilidad de transicioacuten de estados

Dr Marcelo G Armentano - ISISTAN - UNICEN

Lluvioso Seco

0703

02 08

Ejemplo de modelo de Markov

Dos posibles estados lsquoLluviosorsquo ylsquoSecorsquo Probabilidades de Transicioacuten

P(lsquoLluviosorsquo|lsquoLluviosorsquo)=03 P(lsquoSecorsquo|lsquoLluviosorsquo)=07

P(lsquoLluviosorsquo|lsquoSecorsquo)=02 P(lsquoSecorsquo|lsquoSecorsquo)=08

Probabilidades iniciales

P(lsquoLluviosorsquo)=04 P(lsquoSecorsquo)=06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Probabilidad de una secuencia Por la probabilidad de Markov

P(lsquoSecorsquorsquoSecorsquorsquoLluviosorsquorsquoLluviosorsquo ) =P(lsquoLluviosorsquo|rsquoLluviosorsquo) P(lsquoLluviosorsquo|rsquoSecorsquo)

P(lsquoSecorsquo|rsquoSecorsquo) P(lsquoSecorsquo) = 03020806 = 00288

)()|()( 12112121 minusminus= ikiiikiiikikii sssPssssPsssP KKK

)()|()|()|(

)()|(

112211

1211

iiiikikikik

ikiiikik

sPssPssPssP

sssPssP

K

KK

minusminusminus

minusminus

=

==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Underflow El producto de muchas probabilidades entre 0 y 1

puede resultar en underflow

Dado que log(xy) = log(x) + log(y) es mejor realizar la suma del logaritmo de las probabilidades que multiplicarlas

El modelo con el mayor puntaje final de probabilidad logariacutetmica sigue siendo la maacutes probable

Dr Marcelo G Armentano - ISISTAN - UNICEN

Hipoacutetesis del maacuteximo a posteriori

)|(maxarg DhPhHh

MAPisin

equiv

)(

)()|(maxarg

DP

hPhDP

Hhisin

=

)()|(maxarg hPhDPHhisin

=

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

21

Modelos Ocultos de Markov (HMM)

Conjunto de estados El proceso de mueve de un estado a otro generando una secuencia de

estados

Propiedad de Markov La probabilidad de cada estado depende solo del estado actual

Los estados no son visibles pero cada estado genera aleatoriamente unade las posibles observaciones (estados visibles)

Para definir un modelo oculto de Markov se deben especificar las siguientes probabilidades Matriz de probabilidades transicioacuten A=(aij) aij= P(si | sj) Matriz de probabilidades de observacioacuten B=(bi (vm )) bi(vm )= P(vm | si) Vector de probabilidades iniciales π=(πi) πi = P(si)

Los modelos quedan definidos por la tripla M=(A B π)

21 Nsss K

KK 21 ikii sss

)|()|( 1121 minusminus = ikikikiiik ssPssssP K

21 Mvvv K

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

Baja Alta

0703

02 08

Lluvioso Seco

06 0604 04

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

bull Dos estados correspondientes a la presioacuten atmosfeacutericabull lsquoAltarsquo y lsquoBajarsquo

bull Dos posibles observaciones bull lsquoLluviosorsquo y lsquoSecorsquo

bull Probabilidades de Transicioacuten

bull P(lsquoBajarsquo|lsquoBajarsquo)=03 P(lsquoAltarsquo|lsquoBajarsquo)=07 P(lsquoBajarsquo|lsquoAltarsquo)=02

P(lsquoAltarsquo|lsquoAltarsquo)=08bull Probabilidades de Observacioacuten

bull P(lsquoLluviosorsquo|lsquoBajarsquo)=06 P(lsquoSecorsquo|lsquoBajarsquo)=04

P(lsquoLluviosorsquo|lsquoAltarsquo)=04 P(lsquoSecorsquo|lsquoAltarsquo)=03 bull Probabilidades iniciales

bull P(lsquoBajarsquo)=04 P(lsquoAltarsquo)=06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM Prediccioacuten del tiempo de acuerdo al estado de un alga

empapado huacutemedo casi seco seco

nubes lluviasol

Oculto

Observable

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

Empapado Huacutemedo Casi seco Seco

Sol 060 020 015 005

Nubes 025 025 025 025

Lluvia 005 010 035 050

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

22

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

i P(qt+1=S1|qt=Si)

P(qt+1=S2|qt=Si)

P(qt+1=Sj|qt=Si)

P(qt+1=SN

|qt=Si)

1 a11 a12 hellip a1j hellip a1N

2 a21 a22 hellip a2j hellip a2N

3 a31 a32 hellip a3j hellip a3N

hellip

i ai1 ai2 hellip aij hellip aiN

hellip

N aN1 aN2 hellip aNj hellip aNN

Todas estas tablas son

iguales

aij = P (qt+1=sj|qt=si)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

i P(Ot=1|qt=Si) P(Ot=2|qt=Si) P(Ot=j|qt=Si) P(Ot=N|qt=Si)

1 b1(1) b1(2) hellip b1(j) hellip b1(N)2 b2(1) b2(2) hellip b2(j) hellip b2(N)3 b3(1) b3(2) hellip b3(j) hellip b3(N)hellip

i Bi(1) bi(2) hellip bi(j) hellip bi(N)hellip

N bN(1) bN(2) hellip bN(j) hellip bN(N)

bi(j) = P (Ot=j|qt=si)

Todas estas tablas son

iguales

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

un enrejado

s1

s2

si

sN

s1

s2

si

sN

s1

s2

sj

sN

s1

s2

si

sN

a1j

a2j

aij

aNj

1 k k+1 K

o1 ok ok+1 oKObservaciones

Tiempo

Ejemplo Casino tramposo

Un casino tiene dos dados Dado ldquojustordquo

P(1) = P(2) = P(3) = P(5) = P(6) = 16 Dado cargado

P(1) = P(2) = P(3) = P(4) = P(5) = 110P(6) = 12

El casino alterna entre el dado justo y el cargado una vezcada 20 turnos

Problemas a resolver con HMM Evaluacioacuten

Dado un HMM M=(A B π) y una secuencia de observaciones O=o1 o2 oK calcular la probabilidad de que el modelo M haya generado la secuencia O

Dr Marcelo G Armentano - ISISTAN - UNICEN

EvaluacioacutenDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestCuan probable es esta secuencia dado nuestromodelo de como opera el casino

Este es el problema de EVALUACIOacuteN en HMMs

03112011

23

Problemas a resolver con HMM Decodificacioacuten o inferencia

Dado un HMM M=(A B π) y una secuencia de observaciones O=o1 o2 oK calcular la secuencia de estados ocultos Si que maacutes probablemente produjo la secuencia de observaciones O

Dr Marcelo G Armentano - ISISTAN - UNICEN

DecodificacioacutenDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestQue partes de la secuencia fueron generadas por el dado cargado y cuales por el dado justo

Este es el problema de DECODIFICACIOacuteN en HMMs

Problemas a resolver con HMM Aprendizaje

Dado un conjunto de secuencias de observaciones de entrenamiento O=o1 o2 oK y la estructura general de HMM (cantidad de estados ocultos y cantidad de estados visibles) determinar los paraacutemetros del HMM M=(A B π) que mejor se ajustan a los datos de entrenamiento

Dr Marcelo G Armentano - ISISTAN - UNICEN

AprendizajeDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestCoacutemo estaacute cargado el dado cargado iquestCada cuantocambia el casino entre el dado cargado y el justo

Este es el problema de APRENDIZAJE en HMMs

El HMM del casino tramposo

JUSTO CARGADO

005

005

095095

P(1|Justo) = 16P(2|Justo) = 16P(3|Justo) = 16P(4|Justo) = 16P(5|Justo) = 16P(6|Justo) = 16

P(1|Cargado) = 110P(2|Cargado) = 110P(3|Cargado) = 110P(4|Cargado) = 110P(5|Cargado) = 110P(6|Cargado) = 12

Ejemplo reconocimiento de

palabras Se asume que los caracteres estaacuten separados

El reconocedorde caracteres da como salida la probabilidad de que una imagen corresponda a un caracterparticular P(caracter|imagen)

05

003

0005

031z

c

b

a

Estado Oculto

Estado Observable

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

24

Ejemplo reconocimiento de

palabras Estados Ocultos del HMM caracteres

Estados Observables imagenes de caracteres

Probabilidades de Observacioacutenαv

( ) ( ))|()( ii svPvbB αα ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo reconocimiento de

palabras Si se conoce el diccionario es posible construir un modelo

individual para cada palabra

bull Problema de evaluacioacuten reconocer la palabra en unaimagen es equivalente a evaluar un conjunto de modelos

amigos a m i g o s

buacutefalo b uacute f a l o

05 003 04 06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo reconocimiento de

palabras Podemos construir un HMM para todas las palabras

Estados ocultos los caracteres de las palabras

Probabilidades de transicioacuten calculadas a partir de modelos del lenguaje

Observaciones y probabilidades de observacioacuten iguales al ejemplo anterior

Problema de decodificacioacuten encontrar la secuencia de estados ocultos que maacutes probablemente generaron la imagen

a m

i g

o

s

t

b v

f

u

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

Forward-Backward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward

Seco Huacutemedo EmpapadoObs

Sol

Nubes

Lluvia

Sol

Nubes

Lluvia

Sol

Nubes

Lluvia

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward Pr(Seco Huacutemedo Empapado|M) =

Pr(seco huacutemedo empapado|sol sol sol) +

Pr(seco huacutemedo empapado|sol nubes sol) +

hellip

Pr(seco huacutemedo empapado|lluvia lluvia lluvia)

iexcliexclMuy Costoso

33 = 27 caacutelculos

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

25

Algoritmo Forward Reduccioacuten de la complejidad

Probabilidad parcial de alcanzar un estado intermedio en el entramado

Yk1 Yk2 hellip YkT

Sol

Nubes

Lluvia

Nubes

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward αt(j)= Pr(obs|estado oculto es j)

Pr( todos los caminos al estado j en el tiempo t)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward En el tiempo t=1

En el tiempo t gt1

α1(j)=π(j) Pr(obs|estado j)

αt(j)=Pr(todos los caminos a j) Pr(obs|estado j)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward

Terminacioacuten

Dr Marcelo G Armentano - ISISTAN - UNICEN

sum=

=n

j

T jMObs1

)()|Pr( α

sum=

++ =n

i

ijttjt ajobj1

11 )()()( αα

Algoritmo Forward

Sol

α1(sol)=π(sol) bsol(humedo)

Nubes

α1(nubes)=π(nubes) bnubes(humedo)

Lluvia

α1(lluvia)=π(lluvia) blluvia(humedo)

)()(secb )(nubesi1nubes2 sum sdotsdot=

iaionubes αα

Nubes

asolnubes

anubesnubes

alluvianubes

Huacutemedo Seco

Algoritmo Backward

Se define la variable β

)|()( 21 λβ iqoooPi tTttt == ++

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

26

Algoritmo Backward

Inicializacioacuten

Caacutelculo

Finalizacioacuten

1)( =jTβ

1 1

1

( ) ( ) ( )N

t t ij j t

j

i j a b oβ β + +=

=sum

sum=

=N

i

i iobiOp1

11 )()()()|( βπλ 11minus= Tt

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

Forward- Backward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Encontrar la secuencia maacutes probable de estados

ocultos dada una secuencia de observaciones

Ejemplo etiquetar palabras en una oracioacuten con su funcioacuten sintaacutectica

iquestEstados observables iquestEstados ocultos

Juan come naranjasNS NP OD

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Probabilidad parcial δ de alcanzar un estado

intermedio particular en el entramado

δ representa la probabilidad del camino maacutes probable a un estado

Para cada estado final hay un camino maacutes probable a ese estado

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi δ(it) es la maacutexima probabilidad de todas las

secuencias que terminan en el estado i en el tiempo t

En t=T tenemos las mejores probabilidades parciales y los mejores caminos parciales

El mejor camino global a T es el que lleva al estado con la mayor probabilidad

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En t=1

)()()1( 1obii isdot= πδ

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

27

Algoritmo de Viterbi En tgt1

A

B

C

Xhellip

Tltt-1 t-1 t

Pr(x en T=t) = maxi=ABC Pr(i en T=t-1) Pr(X|i) Pr(Ot|X)

)())1((max)( tiijj

obajtit sdotsdotminus= δδDr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En cada tiempo t recordamos el estado j que generoacute

δ(ti)

Se reconstruye el camino utilizando los punteros φhasta el tiempo t=1

ijj

ajtit )1(max)( sdotminus= δφ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi

)(max1

iP TNi

δlele

=lowast

)(maxarg1

iq TNi

T δlele

lowast =

P da la probabilidad de los mejores los estados

qT is la secuencia de estados oacuteptima(Q = q1q2hellipqT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

ForwardBackward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Dada un conjunto de secuencias de observaciones O=o1 o2

oK y la estructura general del HMM (cantidadde estados ocultos

y visibles) determinar los paraacutemetros del modelo M=(A B π) que mejor se ajustan a los datos de entrenamiento es decir

que maximice P(O | M)

Se utiliza el algoritmo de maximizacioacuten de la esperanza para

encontrar un maacuteximo local de P(O | M) algoritmo Baum-Welch

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Si los datos de entrenamiento tienen informacioacuten

acerca de la secuencia de estados ocultos los paraacutemetros se estiman como

xsestransicion

ssestransicionssPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

sveces

senodenesobservaciosoPob

)|()( ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

28

Algorimo Baum-Welch Idea general

xsestransiciondeesperado

ssestransiciondeesperadossPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

svecesdeesperado

senodenesobservaciodeesperadosoPob

)|()( ==

1)( === tparasenvecesdeesperadosP iiiπ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

ξt(ij)= P(qt= si qt+1= sj |o1 o2 oT)

ξt(ij)=P(qt= si qt+1= sj o1 o2 oT)

P(o1 o2 oT)=

P(qt= si o1 o2 ot) aij bj (ot+1 ) P(ot+2 oT | qt+1= sj ) P(o1 o2 oT)

=

=αt(i) aij bj (ot+1 ) βt+1(j)

ΣiΣj αt(i) aij bj (ot+1 ) βt+1(j)

αt(i) aij bj (ot+1 ) βt+1(j)

Σi αt(i) βt(i)Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

tiempo

Estados ocultos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch Definimos γt(i) como la probabilidad de estar en el

estado i en el tiempo t dadas las observaciones

Σt γt(i) - cantidad esperada de veces que visitoel estado i

Σt ξt(ij) - cantidad esperada de transiciones

sum=

=N

j

tt jii1

)()( ξγ

ji rarr

γt(i)= P(qt= si |o1 o2 oT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

sumsum

=)(

)(ˆ

i

jia

t

t

ijγ

ξ

sum

sum ==

)(

)()(ˆ

j

job

t

oot t

kjkt

γ

γ

)(ˆ1 iγπ = la frecuencia esperada del estado i en t=1

nuacutemero esperado de transiciones desde el estado i al estado j sobre la cantidad esperada de transiciones desde el estado i

cantidad de veces que se estuvo en el estado j observando el siacutembolo k sobre la cantidad de veces que se estuvo en el estado j

Dr Marcelo G Armentano - ISISTAN - UNICEN

Bibliografiacutea Bayesian Networks and Decision Graphs - Finn V

Jensen and Thomas D Nielsen - Springer Verlag -Second Edition - 2007

A tutorial on hidden Markov models and selected applications in speech recognition - Lawrence R Rabiner - Proceedings of the IEEE Vol 77 Nordm2 pp 257-286 - 1989

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

29

iquestConsultas

Dr Marcelo G Armentano - ISISTAN - UNICEN

Page 16: redes bayesianas UNICEN.pdf

03112011

16

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

Se orienta arbitrariamente (evitando ciclos)

Algoritmo PC

Dr Marcelo G Armentano - ISISTAN - UNICEN

X Y

Z W

T

X Y

Z W

T

Herramientas Hugin

httpwwwhugincomProducts_ServicesProductsDemo

Bayesware httpwwwbayeswarecom

JavaBayes httpwww-2cscmuedu~javabayes

Paacutegina de Finn Jensen httpwwwcsaaudk~fvj

Dr Marcelo G Armentano - ISISTAN - UNICEN

Agenda Introduccioacuten

Redes de Bayes

Modelos de Markov Introduccioacuten

Cadenas de Markov

Modelos Ocultos de Markov

Dr Marcelo G Armentano - ISISTAN - UNICEN

Introduccioacuten Modelar dependencias entre siacutembolos de una

secuencia Temporales

En reconocimiento del habla fonemas en una palabra palabras en una oracioacuten (reconocimiento sintaacutectico)

Espaciales Reconocimiento de escritura

Secuencias de genes

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

17

Procesos aleatorios de Markov Una secuencia aleatoria tiene la propiedad de markov si su

distribucioacuten de probabilidades estaacute determinadauacutenicamente por el estado actual Un proceso aleatorio quecumple con esta propiedad se llama un proceso aleatorio de Markov

Cuando los estados son observables cadenas de Markov

Cuando los estados no son observables modelos ocultos de markov (HMM hidden Markov models)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Regla de Bayes

)()|()( 111111 qqPqqqPqqqP ttttt minusminusminus =

)()|()|()( 121211111 qqPqqqPqqqPqqqP ttttttt minusminusminusminusminus =

prod=

minusminus =t

i

iitt qqqPqPqqqP2

11111 )|()()(

Dr Marcelo G Armentano - ISISTAN - UNICEN

Propiedad de Markov

1)|()|( 111 gt= minusminus iforqqPqqqP iiii

)|()|()()|()()( 1121

2

1111 minus=

minusminus == prod tt

t

i

iitt qqPqqPqPqqPqPqqqP

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov Pueden verse como un grafo de transicioacuten de estados

con probabilidades en sus arcos

Ejemplo Generacioacuten de Texto Aleatorio Un nodo por cada letra uacutenica observada

Si luego de la letra X observo la letra Y agrego un arco de X a Y Si el arco ya existe incremento la cantidad de observaciones

asociada al arco

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTAL

03112011

18

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTALTAL

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTALTALTOTOTALTOTOTOTOTALhellip

Cadenas de Markov Texto aleatorio generado a partir de un modelo

entrenado con el primer capiacutetulo de ldquo100 antildeos de soledadrdquo de Gabriel Garciacutea Marquez

Mapl idoca Uno domen quespiate meacute s abrdiacuteaton quadelaros del y en ioacutera puacutellade y antildeosar soacute Ar e Pon s toacutentun llose fase co tus pe foaciguela tr de paquros losintun oceton deros picaras ro pigeltexpa Arrcoacuten asadosen ca hiacuteracugidend madel cos pelo ca hamuy cuncte preraletrapuina venco sosueacute gifuas y estiogidire y ple peno do dociemanoacutey den matrones s Arseacutelades lelanelo lacides Jombidorentioacute lla caqueacutetrotan de ciechitevo pa e troacute ulega teilizaban riacuteaden zopendesellaundo u ca tioroserar vorasun plara en fue dempa teresen y umusmpio y sedes s s ezordel rugexhas darmabioacute

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N Extensioacuten a las cadenas de Markov en las que cada

estados representa una secuencia de N observaciones consecutivas

N-gramas

Ocurrencias

che 60

chi 25

cha 10

cho 5

ch

ch se observa 100 veces de las cualeshellip

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N=2

ISMI

SS

SI

IP

PP

PI

10

1010

10

10o5 o5

M I S S I S S I P P I

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N=3

ISSMIS

SSI

SIS

SIP

IPP

PPI

10

10

10

10

10

o5

o5

M I S S I S S I P P I

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

19

Cadenas de Markov de orden N N=1

Modelo fiel a las frecuencias de cada par de letras

No representa bien el lenguaje natural

Dr Marcelo G Armentano - ISISTAN - UNICEN

Mapl idoca Uno domen quespiate meacute s abrdiacuteaton quadelaros del y en ioacutera puacutellade y antildeosar soacute Ar e Pon s toacutentun llose fase co tus pe foaciguela tr de paquros losintun oceton deros picaras ro pigeltexpa Arrcoacuten asadosen ca hiacuteracugidend madel cos pelo ca hamuy cuncte preraletrapuina venco sosueacute gifuas y estiogidire y ple peno do dociemanoacutey den matrones s Arseacutelades lelanelo lacides Jombidorentioacute lla caqueacutetrotan de ciechitevo pa e troacute ulega teilizaban riacuteaden zopendesellaundo u ca tioroserar vorasun plara en fue dempa teresen y umusmpio y sedes s s ezordel rugexhas darmabioacute

Cadenas de Markov de Orden N Texto aleatorio generado N=2

Muca donios y hombre llas res pla plambregrimanteoacute el la sioacute entude Salemo fue uncioacuten co crioacuten Tendiacutea en sula ta chicalque le siezblena que tras senterosagareto mdashgruel res entorasanesbazuerasabepaacuten enda con de in inagercamieropito don cuarecior siblimena tero en joacute te Fuedo paresegua pespurantespuen dos porodad de la que cabaquentra denabrencestiminotescuyoacute quel mor loseacute Acturo pen for es ella guanos mitadraratientoacuten condiacutea la allado quen se logoacute la balaritiva triblesala soacutelos habalcabiempor ere griacutea to borse allas laciasiacutemisible por pocaza los so ola la nintildeos cuaro eacutel y lar espiendismo antildeonetrouna que cad fuerofocieres resa combrempuros parsu misiblocerma anoceraya elos no a y ejoacute desta una tioacuten

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Texto aleatorio generado N=3

Muchetextremecitano conveniencia Cuando por acora pre hablancie el rudienteel pusierantado poblado pago y aumentar animaginacioacuten aza des examillos maacutes gigaciera suellevoacute los que inte la viajes rayos imales hacedor y el teacuterminuto pueses siles expedas mocha que la tanos ser en que vez lles la como la maacutes pase lo uacutenicos romera lado JoseacuteArcadiosas antes al realejo en que de dejoacute todidos tre distilado infinito desco a le se para ver bolada alquiacutedea

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Texto aleatorio generado N=4

Muchos y salambioacute un chaleco de habiacutea burla como el pasoacute la resto de aban su fue ser prendedor condo una buena de las casaquimisterios Joseacute Arcadio Buendiacutea sino esentoacute como un en aquel tambor quedoacute recuerdo de un fugitivo en que en que sierrar los metalejos a puestaban de una tersas y el mundo sino consolas y veiacutean desar a la casa cuyos sin comer Aureliano conjuro de el esperso de piedras

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N = 3-4

Comienzan a aparecer palabras maacutes reconocibles

Palabras de muchas letras aparecen frecuentemente ldquopegadasrdquo a otras palabras

Cuanto maacutes extenso es el texto de entrenamiento maacutes variedad habraacute en la salida

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Entrenamiento con palabras completas (N=1)

Texto generado

Se habiacutea que construyoacute trampas y sus iniciales encima con una insolacioacuten por mares incoacutegnitos visitar territorios maacutes emprendedor que se hundiacutean en las maravillas del mundo Era una explicacioacuten inmediata Joseacute Arcadio Buendiacutea la resonancia hueca de helechos y entonces una truculenta demostracioacuten con un aacutespero sabor de fusilamiento el interior y tambores y a prepararse para llevaacuterselos a palmo a conocerlo mantuvo puesta por los burros Asiacute fue desde haciacutea mucho tiempo porque el mundo se asomaba al caramelo vulgar que un paacutenico cuando llegoacute la judiacutea

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

20

Cadenas de Markov de Orden N Entrenamiento con palabras completas (N=4)

Texto generado

Consideraba como una burla de su travieso destino haber buscado el mar sin encontrarlo al precio de sacrificios y penalidades sin cuento y haberlo encontrado entonces sin buscarlo atravesado en su camino como un obstaacuteculo insalvable Uacutersula no volvioacute a acordarse de la intensidad de esa mirada hasta un diacutea en que el pequentildeo Aureliano a la edad de tres antildeos entroacute a la cocina en el momento en que ella retiraba del fogoacuten y poniacutea en la mesa una olla de caldo hirviendo Aquel olor mordiente quedariacutea para siempre en su memoria vinculado al recuerdo de Melquiacuteades

Dr Marcelo G Armentano - ISISTAN - UNICEN

Modelos de Markov Conjunto de estados

El proceso se mueve de un estado a otro generando unasecuencia de estados

Propiedad de Markov la probabilidad de cada estadosiguiente depende soacutelo del estado previo

bull Para definir un modelo de Markov deben especificarselas siguientes probabilidades

21 Nsss K

KK 21 ikii sss

)|()|( 1121 minusminus = ikikikiiik ssPssssP K

)|( jiij ssPa =)( ii sP=π

Probabilidad del estado inicial Probabilidad de transicioacuten de estados

Dr Marcelo G Armentano - ISISTAN - UNICEN

Lluvioso Seco

0703

02 08

Ejemplo de modelo de Markov

Dos posibles estados lsquoLluviosorsquo ylsquoSecorsquo Probabilidades de Transicioacuten

P(lsquoLluviosorsquo|lsquoLluviosorsquo)=03 P(lsquoSecorsquo|lsquoLluviosorsquo)=07

P(lsquoLluviosorsquo|lsquoSecorsquo)=02 P(lsquoSecorsquo|lsquoSecorsquo)=08

Probabilidades iniciales

P(lsquoLluviosorsquo)=04 P(lsquoSecorsquo)=06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Probabilidad de una secuencia Por la probabilidad de Markov

P(lsquoSecorsquorsquoSecorsquorsquoLluviosorsquorsquoLluviosorsquo ) =P(lsquoLluviosorsquo|rsquoLluviosorsquo) P(lsquoLluviosorsquo|rsquoSecorsquo)

P(lsquoSecorsquo|rsquoSecorsquo) P(lsquoSecorsquo) = 03020806 = 00288

)()|()( 12112121 minusminus= ikiiikiiikikii sssPssssPsssP KKK

)()|()|()|(

)()|(

112211

1211

iiiikikikik

ikiiikik

sPssPssPssP

sssPssP

K

KK

minusminusminus

minusminus

=

==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Underflow El producto de muchas probabilidades entre 0 y 1

puede resultar en underflow

Dado que log(xy) = log(x) + log(y) es mejor realizar la suma del logaritmo de las probabilidades que multiplicarlas

El modelo con el mayor puntaje final de probabilidad logariacutetmica sigue siendo la maacutes probable

Dr Marcelo G Armentano - ISISTAN - UNICEN

Hipoacutetesis del maacuteximo a posteriori

)|(maxarg DhPhHh

MAPisin

equiv

)(

)()|(maxarg

DP

hPhDP

Hhisin

=

)()|(maxarg hPhDPHhisin

=

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

21

Modelos Ocultos de Markov (HMM)

Conjunto de estados El proceso de mueve de un estado a otro generando una secuencia de

estados

Propiedad de Markov La probabilidad de cada estado depende solo del estado actual

Los estados no son visibles pero cada estado genera aleatoriamente unade las posibles observaciones (estados visibles)

Para definir un modelo oculto de Markov se deben especificar las siguientes probabilidades Matriz de probabilidades transicioacuten A=(aij) aij= P(si | sj) Matriz de probabilidades de observacioacuten B=(bi (vm )) bi(vm )= P(vm | si) Vector de probabilidades iniciales π=(πi) πi = P(si)

Los modelos quedan definidos por la tripla M=(A B π)

21 Nsss K

KK 21 ikii sss

)|()|( 1121 minusminus = ikikikiiik ssPssssP K

21 Mvvv K

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

Baja Alta

0703

02 08

Lluvioso Seco

06 0604 04

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

bull Dos estados correspondientes a la presioacuten atmosfeacutericabull lsquoAltarsquo y lsquoBajarsquo

bull Dos posibles observaciones bull lsquoLluviosorsquo y lsquoSecorsquo

bull Probabilidades de Transicioacuten

bull P(lsquoBajarsquo|lsquoBajarsquo)=03 P(lsquoAltarsquo|lsquoBajarsquo)=07 P(lsquoBajarsquo|lsquoAltarsquo)=02

P(lsquoAltarsquo|lsquoAltarsquo)=08bull Probabilidades de Observacioacuten

bull P(lsquoLluviosorsquo|lsquoBajarsquo)=06 P(lsquoSecorsquo|lsquoBajarsquo)=04

P(lsquoLluviosorsquo|lsquoAltarsquo)=04 P(lsquoSecorsquo|lsquoAltarsquo)=03 bull Probabilidades iniciales

bull P(lsquoBajarsquo)=04 P(lsquoAltarsquo)=06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM Prediccioacuten del tiempo de acuerdo al estado de un alga

empapado huacutemedo casi seco seco

nubes lluviasol

Oculto

Observable

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

Empapado Huacutemedo Casi seco Seco

Sol 060 020 015 005

Nubes 025 025 025 025

Lluvia 005 010 035 050

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

22

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

i P(qt+1=S1|qt=Si)

P(qt+1=S2|qt=Si)

P(qt+1=Sj|qt=Si)

P(qt+1=SN

|qt=Si)

1 a11 a12 hellip a1j hellip a1N

2 a21 a22 hellip a2j hellip a2N

3 a31 a32 hellip a3j hellip a3N

hellip

i ai1 ai2 hellip aij hellip aiN

hellip

N aN1 aN2 hellip aNj hellip aNN

Todas estas tablas son

iguales

aij = P (qt+1=sj|qt=si)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

i P(Ot=1|qt=Si) P(Ot=2|qt=Si) P(Ot=j|qt=Si) P(Ot=N|qt=Si)

1 b1(1) b1(2) hellip b1(j) hellip b1(N)2 b2(1) b2(2) hellip b2(j) hellip b2(N)3 b3(1) b3(2) hellip b3(j) hellip b3(N)hellip

i Bi(1) bi(2) hellip bi(j) hellip bi(N)hellip

N bN(1) bN(2) hellip bN(j) hellip bN(N)

bi(j) = P (Ot=j|qt=si)

Todas estas tablas son

iguales

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

un enrejado

s1

s2

si

sN

s1

s2

si

sN

s1

s2

sj

sN

s1

s2

si

sN

a1j

a2j

aij

aNj

1 k k+1 K

o1 ok ok+1 oKObservaciones

Tiempo

Ejemplo Casino tramposo

Un casino tiene dos dados Dado ldquojustordquo

P(1) = P(2) = P(3) = P(5) = P(6) = 16 Dado cargado

P(1) = P(2) = P(3) = P(4) = P(5) = 110P(6) = 12

El casino alterna entre el dado justo y el cargado una vezcada 20 turnos

Problemas a resolver con HMM Evaluacioacuten

Dado un HMM M=(A B π) y una secuencia de observaciones O=o1 o2 oK calcular la probabilidad de que el modelo M haya generado la secuencia O

Dr Marcelo G Armentano - ISISTAN - UNICEN

EvaluacioacutenDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestCuan probable es esta secuencia dado nuestromodelo de como opera el casino

Este es el problema de EVALUACIOacuteN en HMMs

03112011

23

Problemas a resolver con HMM Decodificacioacuten o inferencia

Dado un HMM M=(A B π) y una secuencia de observaciones O=o1 o2 oK calcular la secuencia de estados ocultos Si que maacutes probablemente produjo la secuencia de observaciones O

Dr Marcelo G Armentano - ISISTAN - UNICEN

DecodificacioacutenDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestQue partes de la secuencia fueron generadas por el dado cargado y cuales por el dado justo

Este es el problema de DECODIFICACIOacuteN en HMMs

Problemas a resolver con HMM Aprendizaje

Dado un conjunto de secuencias de observaciones de entrenamiento O=o1 o2 oK y la estructura general de HMM (cantidad de estados ocultos y cantidad de estados visibles) determinar los paraacutemetros del HMM M=(A B π) que mejor se ajustan a los datos de entrenamiento

Dr Marcelo G Armentano - ISISTAN - UNICEN

AprendizajeDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestCoacutemo estaacute cargado el dado cargado iquestCada cuantocambia el casino entre el dado cargado y el justo

Este es el problema de APRENDIZAJE en HMMs

El HMM del casino tramposo

JUSTO CARGADO

005

005

095095

P(1|Justo) = 16P(2|Justo) = 16P(3|Justo) = 16P(4|Justo) = 16P(5|Justo) = 16P(6|Justo) = 16

P(1|Cargado) = 110P(2|Cargado) = 110P(3|Cargado) = 110P(4|Cargado) = 110P(5|Cargado) = 110P(6|Cargado) = 12

Ejemplo reconocimiento de

palabras Se asume que los caracteres estaacuten separados

El reconocedorde caracteres da como salida la probabilidad de que una imagen corresponda a un caracterparticular P(caracter|imagen)

05

003

0005

031z

c

b

a

Estado Oculto

Estado Observable

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

24

Ejemplo reconocimiento de

palabras Estados Ocultos del HMM caracteres

Estados Observables imagenes de caracteres

Probabilidades de Observacioacutenαv

( ) ( ))|()( ii svPvbB αα ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo reconocimiento de

palabras Si se conoce el diccionario es posible construir un modelo

individual para cada palabra

bull Problema de evaluacioacuten reconocer la palabra en unaimagen es equivalente a evaluar un conjunto de modelos

amigos a m i g o s

buacutefalo b uacute f a l o

05 003 04 06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo reconocimiento de

palabras Podemos construir un HMM para todas las palabras

Estados ocultos los caracteres de las palabras

Probabilidades de transicioacuten calculadas a partir de modelos del lenguaje

Observaciones y probabilidades de observacioacuten iguales al ejemplo anterior

Problema de decodificacioacuten encontrar la secuencia de estados ocultos que maacutes probablemente generaron la imagen

a m

i g

o

s

t

b v

f

u

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

Forward-Backward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward

Seco Huacutemedo EmpapadoObs

Sol

Nubes

Lluvia

Sol

Nubes

Lluvia

Sol

Nubes

Lluvia

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward Pr(Seco Huacutemedo Empapado|M) =

Pr(seco huacutemedo empapado|sol sol sol) +

Pr(seco huacutemedo empapado|sol nubes sol) +

hellip

Pr(seco huacutemedo empapado|lluvia lluvia lluvia)

iexcliexclMuy Costoso

33 = 27 caacutelculos

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

25

Algoritmo Forward Reduccioacuten de la complejidad

Probabilidad parcial de alcanzar un estado intermedio en el entramado

Yk1 Yk2 hellip YkT

Sol

Nubes

Lluvia

Nubes

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward αt(j)= Pr(obs|estado oculto es j)

Pr( todos los caminos al estado j en el tiempo t)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward En el tiempo t=1

En el tiempo t gt1

α1(j)=π(j) Pr(obs|estado j)

αt(j)=Pr(todos los caminos a j) Pr(obs|estado j)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward

Terminacioacuten

Dr Marcelo G Armentano - ISISTAN - UNICEN

sum=

=n

j

T jMObs1

)()|Pr( α

sum=

++ =n

i

ijttjt ajobj1

11 )()()( αα

Algoritmo Forward

Sol

α1(sol)=π(sol) bsol(humedo)

Nubes

α1(nubes)=π(nubes) bnubes(humedo)

Lluvia

α1(lluvia)=π(lluvia) blluvia(humedo)

)()(secb )(nubesi1nubes2 sum sdotsdot=

iaionubes αα

Nubes

asolnubes

anubesnubes

alluvianubes

Huacutemedo Seco

Algoritmo Backward

Se define la variable β

)|()( 21 λβ iqoooPi tTttt == ++

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

26

Algoritmo Backward

Inicializacioacuten

Caacutelculo

Finalizacioacuten

1)( =jTβ

1 1

1

( ) ( ) ( )N

t t ij j t

j

i j a b oβ β + +=

=sum

sum=

=N

i

i iobiOp1

11 )()()()|( βπλ 11minus= Tt

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

Forward- Backward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Encontrar la secuencia maacutes probable de estados

ocultos dada una secuencia de observaciones

Ejemplo etiquetar palabras en una oracioacuten con su funcioacuten sintaacutectica

iquestEstados observables iquestEstados ocultos

Juan come naranjasNS NP OD

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Probabilidad parcial δ de alcanzar un estado

intermedio particular en el entramado

δ representa la probabilidad del camino maacutes probable a un estado

Para cada estado final hay un camino maacutes probable a ese estado

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi δ(it) es la maacutexima probabilidad de todas las

secuencias que terminan en el estado i en el tiempo t

En t=T tenemos las mejores probabilidades parciales y los mejores caminos parciales

El mejor camino global a T es el que lleva al estado con la mayor probabilidad

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En t=1

)()()1( 1obii isdot= πδ

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

27

Algoritmo de Viterbi En tgt1

A

B

C

Xhellip

Tltt-1 t-1 t

Pr(x en T=t) = maxi=ABC Pr(i en T=t-1) Pr(X|i) Pr(Ot|X)

)())1((max)( tiijj

obajtit sdotsdotminus= δδDr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En cada tiempo t recordamos el estado j que generoacute

δ(ti)

Se reconstruye el camino utilizando los punteros φhasta el tiempo t=1

ijj

ajtit )1(max)( sdotminus= δφ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi

)(max1

iP TNi

δlele

=lowast

)(maxarg1

iq TNi

T δlele

lowast =

P da la probabilidad de los mejores los estados

qT is la secuencia de estados oacuteptima(Q = q1q2hellipqT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

ForwardBackward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Dada un conjunto de secuencias de observaciones O=o1 o2

oK y la estructura general del HMM (cantidadde estados ocultos

y visibles) determinar los paraacutemetros del modelo M=(A B π) que mejor se ajustan a los datos de entrenamiento es decir

que maximice P(O | M)

Se utiliza el algoritmo de maximizacioacuten de la esperanza para

encontrar un maacuteximo local de P(O | M) algoritmo Baum-Welch

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Si los datos de entrenamiento tienen informacioacuten

acerca de la secuencia de estados ocultos los paraacutemetros se estiman como

xsestransicion

ssestransicionssPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

sveces

senodenesobservaciosoPob

)|()( ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

28

Algorimo Baum-Welch Idea general

xsestransiciondeesperado

ssestransiciondeesperadossPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

svecesdeesperado

senodenesobservaciodeesperadosoPob

)|()( ==

1)( === tparasenvecesdeesperadosP iiiπ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

ξt(ij)= P(qt= si qt+1= sj |o1 o2 oT)

ξt(ij)=P(qt= si qt+1= sj o1 o2 oT)

P(o1 o2 oT)=

P(qt= si o1 o2 ot) aij bj (ot+1 ) P(ot+2 oT | qt+1= sj ) P(o1 o2 oT)

=

=αt(i) aij bj (ot+1 ) βt+1(j)

ΣiΣj αt(i) aij bj (ot+1 ) βt+1(j)

αt(i) aij bj (ot+1 ) βt+1(j)

Σi αt(i) βt(i)Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

tiempo

Estados ocultos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch Definimos γt(i) como la probabilidad de estar en el

estado i en el tiempo t dadas las observaciones

Σt γt(i) - cantidad esperada de veces que visitoel estado i

Σt ξt(ij) - cantidad esperada de transiciones

sum=

=N

j

tt jii1

)()( ξγ

ji rarr

γt(i)= P(qt= si |o1 o2 oT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

sumsum

=)(

)(ˆ

i

jia

t

t

ijγ

ξ

sum

sum ==

)(

)()(ˆ

j

job

t

oot t

kjkt

γ

γ

)(ˆ1 iγπ = la frecuencia esperada del estado i en t=1

nuacutemero esperado de transiciones desde el estado i al estado j sobre la cantidad esperada de transiciones desde el estado i

cantidad de veces que se estuvo en el estado j observando el siacutembolo k sobre la cantidad de veces que se estuvo en el estado j

Dr Marcelo G Armentano - ISISTAN - UNICEN

Bibliografiacutea Bayesian Networks and Decision Graphs - Finn V

Jensen and Thomas D Nielsen - Springer Verlag -Second Edition - 2007

A tutorial on hidden Markov models and selected applications in speech recognition - Lawrence R Rabiner - Proceedings of the IEEE Vol 77 Nordm2 pp 257-286 - 1989

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

29

iquestConsultas

Dr Marcelo G Armentano - ISISTAN - UNICEN

Page 17: redes bayesianas UNICEN.pdf

03112011

17

Procesos aleatorios de Markov Una secuencia aleatoria tiene la propiedad de markov si su

distribucioacuten de probabilidades estaacute determinadauacutenicamente por el estado actual Un proceso aleatorio quecumple con esta propiedad se llama un proceso aleatorio de Markov

Cuando los estados son observables cadenas de Markov

Cuando los estados no son observables modelos ocultos de markov (HMM hidden Markov models)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Regla de Bayes

)()|()( 111111 qqPqqqPqqqP ttttt minusminusminus =

)()|()|()( 121211111 qqPqqqPqqqPqqqP ttttttt minusminusminusminusminus =

prod=

minusminus =t

i

iitt qqqPqPqqqP2

11111 )|()()(

Dr Marcelo G Armentano - ISISTAN - UNICEN

Propiedad de Markov

1)|()|( 111 gt= minusminus iforqqPqqqP iiii

)|()|()()|()()( 1121

2

1111 minus=

minusminus == prod tt

t

i

iitt qqPqqPqPqqPqPqqqP

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov Pueden verse como un grafo de transicioacuten de estados

con probabilidades en sus arcos

Ejemplo Generacioacuten de Texto Aleatorio Un nodo por cada letra uacutenica observada

Si luego de la letra X observo la letra Y agrego un arco de X a Y Si el arco ya existe incremento la cantidad de observaciones

asociada al arco

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTAL

03112011

18

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTALTAL

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTALTALTOTOTALTOTOTOTOTALhellip

Cadenas de Markov Texto aleatorio generado a partir de un modelo

entrenado con el primer capiacutetulo de ldquo100 antildeos de soledadrdquo de Gabriel Garciacutea Marquez

Mapl idoca Uno domen quespiate meacute s abrdiacuteaton quadelaros del y en ioacutera puacutellade y antildeosar soacute Ar e Pon s toacutentun llose fase co tus pe foaciguela tr de paquros losintun oceton deros picaras ro pigeltexpa Arrcoacuten asadosen ca hiacuteracugidend madel cos pelo ca hamuy cuncte preraletrapuina venco sosueacute gifuas y estiogidire y ple peno do dociemanoacutey den matrones s Arseacutelades lelanelo lacides Jombidorentioacute lla caqueacutetrotan de ciechitevo pa e troacute ulega teilizaban riacuteaden zopendesellaundo u ca tioroserar vorasun plara en fue dempa teresen y umusmpio y sedes s s ezordel rugexhas darmabioacute

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N Extensioacuten a las cadenas de Markov en las que cada

estados representa una secuencia de N observaciones consecutivas

N-gramas

Ocurrencias

che 60

chi 25

cha 10

cho 5

ch

ch se observa 100 veces de las cualeshellip

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N=2

ISMI

SS

SI

IP

PP

PI

10

1010

10

10o5 o5

M I S S I S S I P P I

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N=3

ISSMIS

SSI

SIS

SIP

IPP

PPI

10

10

10

10

10

o5

o5

M I S S I S S I P P I

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

19

Cadenas de Markov de orden N N=1

Modelo fiel a las frecuencias de cada par de letras

No representa bien el lenguaje natural

Dr Marcelo G Armentano - ISISTAN - UNICEN

Mapl idoca Uno domen quespiate meacute s abrdiacuteaton quadelaros del y en ioacutera puacutellade y antildeosar soacute Ar e Pon s toacutentun llose fase co tus pe foaciguela tr de paquros losintun oceton deros picaras ro pigeltexpa Arrcoacuten asadosen ca hiacuteracugidend madel cos pelo ca hamuy cuncte preraletrapuina venco sosueacute gifuas y estiogidire y ple peno do dociemanoacutey den matrones s Arseacutelades lelanelo lacides Jombidorentioacute lla caqueacutetrotan de ciechitevo pa e troacute ulega teilizaban riacuteaden zopendesellaundo u ca tioroserar vorasun plara en fue dempa teresen y umusmpio y sedes s s ezordel rugexhas darmabioacute

Cadenas de Markov de Orden N Texto aleatorio generado N=2

Muca donios y hombre llas res pla plambregrimanteoacute el la sioacute entude Salemo fue uncioacuten co crioacuten Tendiacutea en sula ta chicalque le siezblena que tras senterosagareto mdashgruel res entorasanesbazuerasabepaacuten enda con de in inagercamieropito don cuarecior siblimena tero en joacute te Fuedo paresegua pespurantespuen dos porodad de la que cabaquentra denabrencestiminotescuyoacute quel mor loseacute Acturo pen for es ella guanos mitadraratientoacuten condiacutea la allado quen se logoacute la balaritiva triblesala soacutelos habalcabiempor ere griacutea to borse allas laciasiacutemisible por pocaza los so ola la nintildeos cuaro eacutel y lar espiendismo antildeonetrouna que cad fuerofocieres resa combrempuros parsu misiblocerma anoceraya elos no a y ejoacute desta una tioacuten

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Texto aleatorio generado N=3

Muchetextremecitano conveniencia Cuando por acora pre hablancie el rudienteel pusierantado poblado pago y aumentar animaginacioacuten aza des examillos maacutes gigaciera suellevoacute los que inte la viajes rayos imales hacedor y el teacuterminuto pueses siles expedas mocha que la tanos ser en que vez lles la como la maacutes pase lo uacutenicos romera lado JoseacuteArcadiosas antes al realejo en que de dejoacute todidos tre distilado infinito desco a le se para ver bolada alquiacutedea

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Texto aleatorio generado N=4

Muchos y salambioacute un chaleco de habiacutea burla como el pasoacute la resto de aban su fue ser prendedor condo una buena de las casaquimisterios Joseacute Arcadio Buendiacutea sino esentoacute como un en aquel tambor quedoacute recuerdo de un fugitivo en que en que sierrar los metalejos a puestaban de una tersas y el mundo sino consolas y veiacutean desar a la casa cuyos sin comer Aureliano conjuro de el esperso de piedras

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N = 3-4

Comienzan a aparecer palabras maacutes reconocibles

Palabras de muchas letras aparecen frecuentemente ldquopegadasrdquo a otras palabras

Cuanto maacutes extenso es el texto de entrenamiento maacutes variedad habraacute en la salida

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Entrenamiento con palabras completas (N=1)

Texto generado

Se habiacutea que construyoacute trampas y sus iniciales encima con una insolacioacuten por mares incoacutegnitos visitar territorios maacutes emprendedor que se hundiacutean en las maravillas del mundo Era una explicacioacuten inmediata Joseacute Arcadio Buendiacutea la resonancia hueca de helechos y entonces una truculenta demostracioacuten con un aacutespero sabor de fusilamiento el interior y tambores y a prepararse para llevaacuterselos a palmo a conocerlo mantuvo puesta por los burros Asiacute fue desde haciacutea mucho tiempo porque el mundo se asomaba al caramelo vulgar que un paacutenico cuando llegoacute la judiacutea

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

20

Cadenas de Markov de Orden N Entrenamiento con palabras completas (N=4)

Texto generado

Consideraba como una burla de su travieso destino haber buscado el mar sin encontrarlo al precio de sacrificios y penalidades sin cuento y haberlo encontrado entonces sin buscarlo atravesado en su camino como un obstaacuteculo insalvable Uacutersula no volvioacute a acordarse de la intensidad de esa mirada hasta un diacutea en que el pequentildeo Aureliano a la edad de tres antildeos entroacute a la cocina en el momento en que ella retiraba del fogoacuten y poniacutea en la mesa una olla de caldo hirviendo Aquel olor mordiente quedariacutea para siempre en su memoria vinculado al recuerdo de Melquiacuteades

Dr Marcelo G Armentano - ISISTAN - UNICEN

Modelos de Markov Conjunto de estados

El proceso se mueve de un estado a otro generando unasecuencia de estados

Propiedad de Markov la probabilidad de cada estadosiguiente depende soacutelo del estado previo

bull Para definir un modelo de Markov deben especificarselas siguientes probabilidades

21 Nsss K

KK 21 ikii sss

)|()|( 1121 minusminus = ikikikiiik ssPssssP K

)|( jiij ssPa =)( ii sP=π

Probabilidad del estado inicial Probabilidad de transicioacuten de estados

Dr Marcelo G Armentano - ISISTAN - UNICEN

Lluvioso Seco

0703

02 08

Ejemplo de modelo de Markov

Dos posibles estados lsquoLluviosorsquo ylsquoSecorsquo Probabilidades de Transicioacuten

P(lsquoLluviosorsquo|lsquoLluviosorsquo)=03 P(lsquoSecorsquo|lsquoLluviosorsquo)=07

P(lsquoLluviosorsquo|lsquoSecorsquo)=02 P(lsquoSecorsquo|lsquoSecorsquo)=08

Probabilidades iniciales

P(lsquoLluviosorsquo)=04 P(lsquoSecorsquo)=06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Probabilidad de una secuencia Por la probabilidad de Markov

P(lsquoSecorsquorsquoSecorsquorsquoLluviosorsquorsquoLluviosorsquo ) =P(lsquoLluviosorsquo|rsquoLluviosorsquo) P(lsquoLluviosorsquo|rsquoSecorsquo)

P(lsquoSecorsquo|rsquoSecorsquo) P(lsquoSecorsquo) = 03020806 = 00288

)()|()( 12112121 minusminus= ikiiikiiikikii sssPssssPsssP KKK

)()|()|()|(

)()|(

112211

1211

iiiikikikik

ikiiikik

sPssPssPssP

sssPssP

K

KK

minusminusminus

minusminus

=

==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Underflow El producto de muchas probabilidades entre 0 y 1

puede resultar en underflow

Dado que log(xy) = log(x) + log(y) es mejor realizar la suma del logaritmo de las probabilidades que multiplicarlas

El modelo con el mayor puntaje final de probabilidad logariacutetmica sigue siendo la maacutes probable

Dr Marcelo G Armentano - ISISTAN - UNICEN

Hipoacutetesis del maacuteximo a posteriori

)|(maxarg DhPhHh

MAPisin

equiv

)(

)()|(maxarg

DP

hPhDP

Hhisin

=

)()|(maxarg hPhDPHhisin

=

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

21

Modelos Ocultos de Markov (HMM)

Conjunto de estados El proceso de mueve de un estado a otro generando una secuencia de

estados

Propiedad de Markov La probabilidad de cada estado depende solo del estado actual

Los estados no son visibles pero cada estado genera aleatoriamente unade las posibles observaciones (estados visibles)

Para definir un modelo oculto de Markov se deben especificar las siguientes probabilidades Matriz de probabilidades transicioacuten A=(aij) aij= P(si | sj) Matriz de probabilidades de observacioacuten B=(bi (vm )) bi(vm )= P(vm | si) Vector de probabilidades iniciales π=(πi) πi = P(si)

Los modelos quedan definidos por la tripla M=(A B π)

21 Nsss K

KK 21 ikii sss

)|()|( 1121 minusminus = ikikikiiik ssPssssP K

21 Mvvv K

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

Baja Alta

0703

02 08

Lluvioso Seco

06 0604 04

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

bull Dos estados correspondientes a la presioacuten atmosfeacutericabull lsquoAltarsquo y lsquoBajarsquo

bull Dos posibles observaciones bull lsquoLluviosorsquo y lsquoSecorsquo

bull Probabilidades de Transicioacuten

bull P(lsquoBajarsquo|lsquoBajarsquo)=03 P(lsquoAltarsquo|lsquoBajarsquo)=07 P(lsquoBajarsquo|lsquoAltarsquo)=02

P(lsquoAltarsquo|lsquoAltarsquo)=08bull Probabilidades de Observacioacuten

bull P(lsquoLluviosorsquo|lsquoBajarsquo)=06 P(lsquoSecorsquo|lsquoBajarsquo)=04

P(lsquoLluviosorsquo|lsquoAltarsquo)=04 P(lsquoSecorsquo|lsquoAltarsquo)=03 bull Probabilidades iniciales

bull P(lsquoBajarsquo)=04 P(lsquoAltarsquo)=06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM Prediccioacuten del tiempo de acuerdo al estado de un alga

empapado huacutemedo casi seco seco

nubes lluviasol

Oculto

Observable

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

Empapado Huacutemedo Casi seco Seco

Sol 060 020 015 005

Nubes 025 025 025 025

Lluvia 005 010 035 050

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

22

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

i P(qt+1=S1|qt=Si)

P(qt+1=S2|qt=Si)

P(qt+1=Sj|qt=Si)

P(qt+1=SN

|qt=Si)

1 a11 a12 hellip a1j hellip a1N

2 a21 a22 hellip a2j hellip a2N

3 a31 a32 hellip a3j hellip a3N

hellip

i ai1 ai2 hellip aij hellip aiN

hellip

N aN1 aN2 hellip aNj hellip aNN

Todas estas tablas son

iguales

aij = P (qt+1=sj|qt=si)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

i P(Ot=1|qt=Si) P(Ot=2|qt=Si) P(Ot=j|qt=Si) P(Ot=N|qt=Si)

1 b1(1) b1(2) hellip b1(j) hellip b1(N)2 b2(1) b2(2) hellip b2(j) hellip b2(N)3 b3(1) b3(2) hellip b3(j) hellip b3(N)hellip

i Bi(1) bi(2) hellip bi(j) hellip bi(N)hellip

N bN(1) bN(2) hellip bN(j) hellip bN(N)

bi(j) = P (Ot=j|qt=si)

Todas estas tablas son

iguales

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

un enrejado

s1

s2

si

sN

s1

s2

si

sN

s1

s2

sj

sN

s1

s2

si

sN

a1j

a2j

aij

aNj

1 k k+1 K

o1 ok ok+1 oKObservaciones

Tiempo

Ejemplo Casino tramposo

Un casino tiene dos dados Dado ldquojustordquo

P(1) = P(2) = P(3) = P(5) = P(6) = 16 Dado cargado

P(1) = P(2) = P(3) = P(4) = P(5) = 110P(6) = 12

El casino alterna entre el dado justo y el cargado una vezcada 20 turnos

Problemas a resolver con HMM Evaluacioacuten

Dado un HMM M=(A B π) y una secuencia de observaciones O=o1 o2 oK calcular la probabilidad de que el modelo M haya generado la secuencia O

Dr Marcelo G Armentano - ISISTAN - UNICEN

EvaluacioacutenDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestCuan probable es esta secuencia dado nuestromodelo de como opera el casino

Este es el problema de EVALUACIOacuteN en HMMs

03112011

23

Problemas a resolver con HMM Decodificacioacuten o inferencia

Dado un HMM M=(A B π) y una secuencia de observaciones O=o1 o2 oK calcular la secuencia de estados ocultos Si que maacutes probablemente produjo la secuencia de observaciones O

Dr Marcelo G Armentano - ISISTAN - UNICEN

DecodificacioacutenDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestQue partes de la secuencia fueron generadas por el dado cargado y cuales por el dado justo

Este es el problema de DECODIFICACIOacuteN en HMMs

Problemas a resolver con HMM Aprendizaje

Dado un conjunto de secuencias de observaciones de entrenamiento O=o1 o2 oK y la estructura general de HMM (cantidad de estados ocultos y cantidad de estados visibles) determinar los paraacutemetros del HMM M=(A B π) que mejor se ajustan a los datos de entrenamiento

Dr Marcelo G Armentano - ISISTAN - UNICEN

AprendizajeDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestCoacutemo estaacute cargado el dado cargado iquestCada cuantocambia el casino entre el dado cargado y el justo

Este es el problema de APRENDIZAJE en HMMs

El HMM del casino tramposo

JUSTO CARGADO

005

005

095095

P(1|Justo) = 16P(2|Justo) = 16P(3|Justo) = 16P(4|Justo) = 16P(5|Justo) = 16P(6|Justo) = 16

P(1|Cargado) = 110P(2|Cargado) = 110P(3|Cargado) = 110P(4|Cargado) = 110P(5|Cargado) = 110P(6|Cargado) = 12

Ejemplo reconocimiento de

palabras Se asume que los caracteres estaacuten separados

El reconocedorde caracteres da como salida la probabilidad de que una imagen corresponda a un caracterparticular P(caracter|imagen)

05

003

0005

031z

c

b

a

Estado Oculto

Estado Observable

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

24

Ejemplo reconocimiento de

palabras Estados Ocultos del HMM caracteres

Estados Observables imagenes de caracteres

Probabilidades de Observacioacutenαv

( ) ( ))|()( ii svPvbB αα ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo reconocimiento de

palabras Si se conoce el diccionario es posible construir un modelo

individual para cada palabra

bull Problema de evaluacioacuten reconocer la palabra en unaimagen es equivalente a evaluar un conjunto de modelos

amigos a m i g o s

buacutefalo b uacute f a l o

05 003 04 06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo reconocimiento de

palabras Podemos construir un HMM para todas las palabras

Estados ocultos los caracteres de las palabras

Probabilidades de transicioacuten calculadas a partir de modelos del lenguaje

Observaciones y probabilidades de observacioacuten iguales al ejemplo anterior

Problema de decodificacioacuten encontrar la secuencia de estados ocultos que maacutes probablemente generaron la imagen

a m

i g

o

s

t

b v

f

u

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

Forward-Backward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward

Seco Huacutemedo EmpapadoObs

Sol

Nubes

Lluvia

Sol

Nubes

Lluvia

Sol

Nubes

Lluvia

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward Pr(Seco Huacutemedo Empapado|M) =

Pr(seco huacutemedo empapado|sol sol sol) +

Pr(seco huacutemedo empapado|sol nubes sol) +

hellip

Pr(seco huacutemedo empapado|lluvia lluvia lluvia)

iexcliexclMuy Costoso

33 = 27 caacutelculos

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

25

Algoritmo Forward Reduccioacuten de la complejidad

Probabilidad parcial de alcanzar un estado intermedio en el entramado

Yk1 Yk2 hellip YkT

Sol

Nubes

Lluvia

Nubes

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward αt(j)= Pr(obs|estado oculto es j)

Pr( todos los caminos al estado j en el tiempo t)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward En el tiempo t=1

En el tiempo t gt1

α1(j)=π(j) Pr(obs|estado j)

αt(j)=Pr(todos los caminos a j) Pr(obs|estado j)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward

Terminacioacuten

Dr Marcelo G Armentano - ISISTAN - UNICEN

sum=

=n

j

T jMObs1

)()|Pr( α

sum=

++ =n

i

ijttjt ajobj1

11 )()()( αα

Algoritmo Forward

Sol

α1(sol)=π(sol) bsol(humedo)

Nubes

α1(nubes)=π(nubes) bnubes(humedo)

Lluvia

α1(lluvia)=π(lluvia) blluvia(humedo)

)()(secb )(nubesi1nubes2 sum sdotsdot=

iaionubes αα

Nubes

asolnubes

anubesnubes

alluvianubes

Huacutemedo Seco

Algoritmo Backward

Se define la variable β

)|()( 21 λβ iqoooPi tTttt == ++

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

26

Algoritmo Backward

Inicializacioacuten

Caacutelculo

Finalizacioacuten

1)( =jTβ

1 1

1

( ) ( ) ( )N

t t ij j t

j

i j a b oβ β + +=

=sum

sum=

=N

i

i iobiOp1

11 )()()()|( βπλ 11minus= Tt

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

Forward- Backward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Encontrar la secuencia maacutes probable de estados

ocultos dada una secuencia de observaciones

Ejemplo etiquetar palabras en una oracioacuten con su funcioacuten sintaacutectica

iquestEstados observables iquestEstados ocultos

Juan come naranjasNS NP OD

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Probabilidad parcial δ de alcanzar un estado

intermedio particular en el entramado

δ representa la probabilidad del camino maacutes probable a un estado

Para cada estado final hay un camino maacutes probable a ese estado

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi δ(it) es la maacutexima probabilidad de todas las

secuencias que terminan en el estado i en el tiempo t

En t=T tenemos las mejores probabilidades parciales y los mejores caminos parciales

El mejor camino global a T es el que lleva al estado con la mayor probabilidad

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En t=1

)()()1( 1obii isdot= πδ

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

27

Algoritmo de Viterbi En tgt1

A

B

C

Xhellip

Tltt-1 t-1 t

Pr(x en T=t) = maxi=ABC Pr(i en T=t-1) Pr(X|i) Pr(Ot|X)

)())1((max)( tiijj

obajtit sdotsdotminus= δδDr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En cada tiempo t recordamos el estado j que generoacute

δ(ti)

Se reconstruye el camino utilizando los punteros φhasta el tiempo t=1

ijj

ajtit )1(max)( sdotminus= δφ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi

)(max1

iP TNi

δlele

=lowast

)(maxarg1

iq TNi

T δlele

lowast =

P da la probabilidad de los mejores los estados

qT is la secuencia de estados oacuteptima(Q = q1q2hellipqT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

ForwardBackward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Dada un conjunto de secuencias de observaciones O=o1 o2

oK y la estructura general del HMM (cantidadde estados ocultos

y visibles) determinar los paraacutemetros del modelo M=(A B π) que mejor se ajustan a los datos de entrenamiento es decir

que maximice P(O | M)

Se utiliza el algoritmo de maximizacioacuten de la esperanza para

encontrar un maacuteximo local de P(O | M) algoritmo Baum-Welch

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Si los datos de entrenamiento tienen informacioacuten

acerca de la secuencia de estados ocultos los paraacutemetros se estiman como

xsestransicion

ssestransicionssPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

sveces

senodenesobservaciosoPob

)|()( ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

28

Algorimo Baum-Welch Idea general

xsestransiciondeesperado

ssestransiciondeesperadossPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

svecesdeesperado

senodenesobservaciodeesperadosoPob

)|()( ==

1)( === tparasenvecesdeesperadosP iiiπ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

ξt(ij)= P(qt= si qt+1= sj |o1 o2 oT)

ξt(ij)=P(qt= si qt+1= sj o1 o2 oT)

P(o1 o2 oT)=

P(qt= si o1 o2 ot) aij bj (ot+1 ) P(ot+2 oT | qt+1= sj ) P(o1 o2 oT)

=

=αt(i) aij bj (ot+1 ) βt+1(j)

ΣiΣj αt(i) aij bj (ot+1 ) βt+1(j)

αt(i) aij bj (ot+1 ) βt+1(j)

Σi αt(i) βt(i)Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

tiempo

Estados ocultos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch Definimos γt(i) como la probabilidad de estar en el

estado i en el tiempo t dadas las observaciones

Σt γt(i) - cantidad esperada de veces que visitoel estado i

Σt ξt(ij) - cantidad esperada de transiciones

sum=

=N

j

tt jii1

)()( ξγ

ji rarr

γt(i)= P(qt= si |o1 o2 oT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

sumsum

=)(

)(ˆ

i

jia

t

t

ijγ

ξ

sum

sum ==

)(

)()(ˆ

j

job

t

oot t

kjkt

γ

γ

)(ˆ1 iγπ = la frecuencia esperada del estado i en t=1

nuacutemero esperado de transiciones desde el estado i al estado j sobre la cantidad esperada de transiciones desde el estado i

cantidad de veces que se estuvo en el estado j observando el siacutembolo k sobre la cantidad de veces que se estuvo en el estado j

Dr Marcelo G Armentano - ISISTAN - UNICEN

Bibliografiacutea Bayesian Networks and Decision Graphs - Finn V

Jensen and Thomas D Nielsen - Springer Verlag -Second Edition - 2007

A tutorial on hidden Markov models and selected applications in speech recognition - Lawrence R Rabiner - Proceedings of the IEEE Vol 77 Nordm2 pp 257-286 - 1989

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

29

iquestConsultas

Dr Marcelo G Armentano - ISISTAN - UNICEN

Page 18: redes bayesianas UNICEN.pdf

03112011

18

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTALTAL

Cadenas de Markov

T O

A L

o5

o5

10

10

Dr Marcelo G Armentano - ISISTAN - UNICEN

TOTALTALTOTOTALTOTOTOTOTALhellip

Cadenas de Markov Texto aleatorio generado a partir de un modelo

entrenado con el primer capiacutetulo de ldquo100 antildeos de soledadrdquo de Gabriel Garciacutea Marquez

Mapl idoca Uno domen quespiate meacute s abrdiacuteaton quadelaros del y en ioacutera puacutellade y antildeosar soacute Ar e Pon s toacutentun llose fase co tus pe foaciguela tr de paquros losintun oceton deros picaras ro pigeltexpa Arrcoacuten asadosen ca hiacuteracugidend madel cos pelo ca hamuy cuncte preraletrapuina venco sosueacute gifuas y estiogidire y ple peno do dociemanoacutey den matrones s Arseacutelades lelanelo lacides Jombidorentioacute lla caqueacutetrotan de ciechitevo pa e troacute ulega teilizaban riacuteaden zopendesellaundo u ca tioroserar vorasun plara en fue dempa teresen y umusmpio y sedes s s ezordel rugexhas darmabioacute

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N Extensioacuten a las cadenas de Markov en las que cada

estados representa una secuencia de N observaciones consecutivas

N-gramas

Ocurrencias

che 60

chi 25

cha 10

cho 5

ch

ch se observa 100 veces de las cualeshellip

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N=2

ISMI

SS

SI

IP

PP

PI

10

1010

10

10o5 o5

M I S S I S S I P P I

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N=3

ISSMIS

SSI

SIS

SIP

IPP

PPI

10

10

10

10

10

o5

o5

M I S S I S S I P P I

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

19

Cadenas de Markov de orden N N=1

Modelo fiel a las frecuencias de cada par de letras

No representa bien el lenguaje natural

Dr Marcelo G Armentano - ISISTAN - UNICEN

Mapl idoca Uno domen quespiate meacute s abrdiacuteaton quadelaros del y en ioacutera puacutellade y antildeosar soacute Ar e Pon s toacutentun llose fase co tus pe foaciguela tr de paquros losintun oceton deros picaras ro pigeltexpa Arrcoacuten asadosen ca hiacuteracugidend madel cos pelo ca hamuy cuncte preraletrapuina venco sosueacute gifuas y estiogidire y ple peno do dociemanoacutey den matrones s Arseacutelades lelanelo lacides Jombidorentioacute lla caqueacutetrotan de ciechitevo pa e troacute ulega teilizaban riacuteaden zopendesellaundo u ca tioroserar vorasun plara en fue dempa teresen y umusmpio y sedes s s ezordel rugexhas darmabioacute

Cadenas de Markov de Orden N Texto aleatorio generado N=2

Muca donios y hombre llas res pla plambregrimanteoacute el la sioacute entude Salemo fue uncioacuten co crioacuten Tendiacutea en sula ta chicalque le siezblena que tras senterosagareto mdashgruel res entorasanesbazuerasabepaacuten enda con de in inagercamieropito don cuarecior siblimena tero en joacute te Fuedo paresegua pespurantespuen dos porodad de la que cabaquentra denabrencestiminotescuyoacute quel mor loseacute Acturo pen for es ella guanos mitadraratientoacuten condiacutea la allado quen se logoacute la balaritiva triblesala soacutelos habalcabiempor ere griacutea to borse allas laciasiacutemisible por pocaza los so ola la nintildeos cuaro eacutel y lar espiendismo antildeonetrouna que cad fuerofocieres resa combrempuros parsu misiblocerma anoceraya elos no a y ejoacute desta una tioacuten

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Texto aleatorio generado N=3

Muchetextremecitano conveniencia Cuando por acora pre hablancie el rudienteel pusierantado poblado pago y aumentar animaginacioacuten aza des examillos maacutes gigaciera suellevoacute los que inte la viajes rayos imales hacedor y el teacuterminuto pueses siles expedas mocha que la tanos ser en que vez lles la como la maacutes pase lo uacutenicos romera lado JoseacuteArcadiosas antes al realejo en que de dejoacute todidos tre distilado infinito desco a le se para ver bolada alquiacutedea

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Texto aleatorio generado N=4

Muchos y salambioacute un chaleco de habiacutea burla como el pasoacute la resto de aban su fue ser prendedor condo una buena de las casaquimisterios Joseacute Arcadio Buendiacutea sino esentoacute como un en aquel tambor quedoacute recuerdo de un fugitivo en que en que sierrar los metalejos a puestaban de una tersas y el mundo sino consolas y veiacutean desar a la casa cuyos sin comer Aureliano conjuro de el esperso de piedras

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N = 3-4

Comienzan a aparecer palabras maacutes reconocibles

Palabras de muchas letras aparecen frecuentemente ldquopegadasrdquo a otras palabras

Cuanto maacutes extenso es el texto de entrenamiento maacutes variedad habraacute en la salida

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Entrenamiento con palabras completas (N=1)

Texto generado

Se habiacutea que construyoacute trampas y sus iniciales encima con una insolacioacuten por mares incoacutegnitos visitar territorios maacutes emprendedor que se hundiacutean en las maravillas del mundo Era una explicacioacuten inmediata Joseacute Arcadio Buendiacutea la resonancia hueca de helechos y entonces una truculenta demostracioacuten con un aacutespero sabor de fusilamiento el interior y tambores y a prepararse para llevaacuterselos a palmo a conocerlo mantuvo puesta por los burros Asiacute fue desde haciacutea mucho tiempo porque el mundo se asomaba al caramelo vulgar que un paacutenico cuando llegoacute la judiacutea

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

20

Cadenas de Markov de Orden N Entrenamiento con palabras completas (N=4)

Texto generado

Consideraba como una burla de su travieso destino haber buscado el mar sin encontrarlo al precio de sacrificios y penalidades sin cuento y haberlo encontrado entonces sin buscarlo atravesado en su camino como un obstaacuteculo insalvable Uacutersula no volvioacute a acordarse de la intensidad de esa mirada hasta un diacutea en que el pequentildeo Aureliano a la edad de tres antildeos entroacute a la cocina en el momento en que ella retiraba del fogoacuten y poniacutea en la mesa una olla de caldo hirviendo Aquel olor mordiente quedariacutea para siempre en su memoria vinculado al recuerdo de Melquiacuteades

Dr Marcelo G Armentano - ISISTAN - UNICEN

Modelos de Markov Conjunto de estados

El proceso se mueve de un estado a otro generando unasecuencia de estados

Propiedad de Markov la probabilidad de cada estadosiguiente depende soacutelo del estado previo

bull Para definir un modelo de Markov deben especificarselas siguientes probabilidades

21 Nsss K

KK 21 ikii sss

)|()|( 1121 minusminus = ikikikiiik ssPssssP K

)|( jiij ssPa =)( ii sP=π

Probabilidad del estado inicial Probabilidad de transicioacuten de estados

Dr Marcelo G Armentano - ISISTAN - UNICEN

Lluvioso Seco

0703

02 08

Ejemplo de modelo de Markov

Dos posibles estados lsquoLluviosorsquo ylsquoSecorsquo Probabilidades de Transicioacuten

P(lsquoLluviosorsquo|lsquoLluviosorsquo)=03 P(lsquoSecorsquo|lsquoLluviosorsquo)=07

P(lsquoLluviosorsquo|lsquoSecorsquo)=02 P(lsquoSecorsquo|lsquoSecorsquo)=08

Probabilidades iniciales

P(lsquoLluviosorsquo)=04 P(lsquoSecorsquo)=06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Probabilidad de una secuencia Por la probabilidad de Markov

P(lsquoSecorsquorsquoSecorsquorsquoLluviosorsquorsquoLluviosorsquo ) =P(lsquoLluviosorsquo|rsquoLluviosorsquo) P(lsquoLluviosorsquo|rsquoSecorsquo)

P(lsquoSecorsquo|rsquoSecorsquo) P(lsquoSecorsquo) = 03020806 = 00288

)()|()( 12112121 minusminus= ikiiikiiikikii sssPssssPsssP KKK

)()|()|()|(

)()|(

112211

1211

iiiikikikik

ikiiikik

sPssPssPssP

sssPssP

K

KK

minusminusminus

minusminus

=

==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Underflow El producto de muchas probabilidades entre 0 y 1

puede resultar en underflow

Dado que log(xy) = log(x) + log(y) es mejor realizar la suma del logaritmo de las probabilidades que multiplicarlas

El modelo con el mayor puntaje final de probabilidad logariacutetmica sigue siendo la maacutes probable

Dr Marcelo G Armentano - ISISTAN - UNICEN

Hipoacutetesis del maacuteximo a posteriori

)|(maxarg DhPhHh

MAPisin

equiv

)(

)()|(maxarg

DP

hPhDP

Hhisin

=

)()|(maxarg hPhDPHhisin

=

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

21

Modelos Ocultos de Markov (HMM)

Conjunto de estados El proceso de mueve de un estado a otro generando una secuencia de

estados

Propiedad de Markov La probabilidad de cada estado depende solo del estado actual

Los estados no son visibles pero cada estado genera aleatoriamente unade las posibles observaciones (estados visibles)

Para definir un modelo oculto de Markov se deben especificar las siguientes probabilidades Matriz de probabilidades transicioacuten A=(aij) aij= P(si | sj) Matriz de probabilidades de observacioacuten B=(bi (vm )) bi(vm )= P(vm | si) Vector de probabilidades iniciales π=(πi) πi = P(si)

Los modelos quedan definidos por la tripla M=(A B π)

21 Nsss K

KK 21 ikii sss

)|()|( 1121 minusminus = ikikikiiik ssPssssP K

21 Mvvv K

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

Baja Alta

0703

02 08

Lluvioso Seco

06 0604 04

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

bull Dos estados correspondientes a la presioacuten atmosfeacutericabull lsquoAltarsquo y lsquoBajarsquo

bull Dos posibles observaciones bull lsquoLluviosorsquo y lsquoSecorsquo

bull Probabilidades de Transicioacuten

bull P(lsquoBajarsquo|lsquoBajarsquo)=03 P(lsquoAltarsquo|lsquoBajarsquo)=07 P(lsquoBajarsquo|lsquoAltarsquo)=02

P(lsquoAltarsquo|lsquoAltarsquo)=08bull Probabilidades de Observacioacuten

bull P(lsquoLluviosorsquo|lsquoBajarsquo)=06 P(lsquoSecorsquo|lsquoBajarsquo)=04

P(lsquoLluviosorsquo|lsquoAltarsquo)=04 P(lsquoSecorsquo|lsquoAltarsquo)=03 bull Probabilidades iniciales

bull P(lsquoBajarsquo)=04 P(lsquoAltarsquo)=06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM Prediccioacuten del tiempo de acuerdo al estado de un alga

empapado huacutemedo casi seco seco

nubes lluviasol

Oculto

Observable

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

Empapado Huacutemedo Casi seco Seco

Sol 060 020 015 005

Nubes 025 025 025 025

Lluvia 005 010 035 050

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

22

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

i P(qt+1=S1|qt=Si)

P(qt+1=S2|qt=Si)

P(qt+1=Sj|qt=Si)

P(qt+1=SN

|qt=Si)

1 a11 a12 hellip a1j hellip a1N

2 a21 a22 hellip a2j hellip a2N

3 a31 a32 hellip a3j hellip a3N

hellip

i ai1 ai2 hellip aij hellip aiN

hellip

N aN1 aN2 hellip aNj hellip aNN

Todas estas tablas son

iguales

aij = P (qt+1=sj|qt=si)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

i P(Ot=1|qt=Si) P(Ot=2|qt=Si) P(Ot=j|qt=Si) P(Ot=N|qt=Si)

1 b1(1) b1(2) hellip b1(j) hellip b1(N)2 b2(1) b2(2) hellip b2(j) hellip b2(N)3 b3(1) b3(2) hellip b3(j) hellip b3(N)hellip

i Bi(1) bi(2) hellip bi(j) hellip bi(N)hellip

N bN(1) bN(2) hellip bN(j) hellip bN(N)

bi(j) = P (Ot=j|qt=si)

Todas estas tablas son

iguales

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

un enrejado

s1

s2

si

sN

s1

s2

si

sN

s1

s2

sj

sN

s1

s2

si

sN

a1j

a2j

aij

aNj

1 k k+1 K

o1 ok ok+1 oKObservaciones

Tiempo

Ejemplo Casino tramposo

Un casino tiene dos dados Dado ldquojustordquo

P(1) = P(2) = P(3) = P(5) = P(6) = 16 Dado cargado

P(1) = P(2) = P(3) = P(4) = P(5) = 110P(6) = 12

El casino alterna entre el dado justo y el cargado una vezcada 20 turnos

Problemas a resolver con HMM Evaluacioacuten

Dado un HMM M=(A B π) y una secuencia de observaciones O=o1 o2 oK calcular la probabilidad de que el modelo M haya generado la secuencia O

Dr Marcelo G Armentano - ISISTAN - UNICEN

EvaluacioacutenDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestCuan probable es esta secuencia dado nuestromodelo de como opera el casino

Este es el problema de EVALUACIOacuteN en HMMs

03112011

23

Problemas a resolver con HMM Decodificacioacuten o inferencia

Dado un HMM M=(A B π) y una secuencia de observaciones O=o1 o2 oK calcular la secuencia de estados ocultos Si que maacutes probablemente produjo la secuencia de observaciones O

Dr Marcelo G Armentano - ISISTAN - UNICEN

DecodificacioacutenDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestQue partes de la secuencia fueron generadas por el dado cargado y cuales por el dado justo

Este es el problema de DECODIFICACIOacuteN en HMMs

Problemas a resolver con HMM Aprendizaje

Dado un conjunto de secuencias de observaciones de entrenamiento O=o1 o2 oK y la estructura general de HMM (cantidad de estados ocultos y cantidad de estados visibles) determinar los paraacutemetros del HMM M=(A B π) que mejor se ajustan a los datos de entrenamiento

Dr Marcelo G Armentano - ISISTAN - UNICEN

AprendizajeDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestCoacutemo estaacute cargado el dado cargado iquestCada cuantocambia el casino entre el dado cargado y el justo

Este es el problema de APRENDIZAJE en HMMs

El HMM del casino tramposo

JUSTO CARGADO

005

005

095095

P(1|Justo) = 16P(2|Justo) = 16P(3|Justo) = 16P(4|Justo) = 16P(5|Justo) = 16P(6|Justo) = 16

P(1|Cargado) = 110P(2|Cargado) = 110P(3|Cargado) = 110P(4|Cargado) = 110P(5|Cargado) = 110P(6|Cargado) = 12

Ejemplo reconocimiento de

palabras Se asume que los caracteres estaacuten separados

El reconocedorde caracteres da como salida la probabilidad de que una imagen corresponda a un caracterparticular P(caracter|imagen)

05

003

0005

031z

c

b

a

Estado Oculto

Estado Observable

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

24

Ejemplo reconocimiento de

palabras Estados Ocultos del HMM caracteres

Estados Observables imagenes de caracteres

Probabilidades de Observacioacutenαv

( ) ( ))|()( ii svPvbB αα ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo reconocimiento de

palabras Si se conoce el diccionario es posible construir un modelo

individual para cada palabra

bull Problema de evaluacioacuten reconocer la palabra en unaimagen es equivalente a evaluar un conjunto de modelos

amigos a m i g o s

buacutefalo b uacute f a l o

05 003 04 06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo reconocimiento de

palabras Podemos construir un HMM para todas las palabras

Estados ocultos los caracteres de las palabras

Probabilidades de transicioacuten calculadas a partir de modelos del lenguaje

Observaciones y probabilidades de observacioacuten iguales al ejemplo anterior

Problema de decodificacioacuten encontrar la secuencia de estados ocultos que maacutes probablemente generaron la imagen

a m

i g

o

s

t

b v

f

u

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

Forward-Backward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward

Seco Huacutemedo EmpapadoObs

Sol

Nubes

Lluvia

Sol

Nubes

Lluvia

Sol

Nubes

Lluvia

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward Pr(Seco Huacutemedo Empapado|M) =

Pr(seco huacutemedo empapado|sol sol sol) +

Pr(seco huacutemedo empapado|sol nubes sol) +

hellip

Pr(seco huacutemedo empapado|lluvia lluvia lluvia)

iexcliexclMuy Costoso

33 = 27 caacutelculos

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

25

Algoritmo Forward Reduccioacuten de la complejidad

Probabilidad parcial de alcanzar un estado intermedio en el entramado

Yk1 Yk2 hellip YkT

Sol

Nubes

Lluvia

Nubes

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward αt(j)= Pr(obs|estado oculto es j)

Pr( todos los caminos al estado j en el tiempo t)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward En el tiempo t=1

En el tiempo t gt1

α1(j)=π(j) Pr(obs|estado j)

αt(j)=Pr(todos los caminos a j) Pr(obs|estado j)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward

Terminacioacuten

Dr Marcelo G Armentano - ISISTAN - UNICEN

sum=

=n

j

T jMObs1

)()|Pr( α

sum=

++ =n

i

ijttjt ajobj1

11 )()()( αα

Algoritmo Forward

Sol

α1(sol)=π(sol) bsol(humedo)

Nubes

α1(nubes)=π(nubes) bnubes(humedo)

Lluvia

α1(lluvia)=π(lluvia) blluvia(humedo)

)()(secb )(nubesi1nubes2 sum sdotsdot=

iaionubes αα

Nubes

asolnubes

anubesnubes

alluvianubes

Huacutemedo Seco

Algoritmo Backward

Se define la variable β

)|()( 21 λβ iqoooPi tTttt == ++

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

26

Algoritmo Backward

Inicializacioacuten

Caacutelculo

Finalizacioacuten

1)( =jTβ

1 1

1

( ) ( ) ( )N

t t ij j t

j

i j a b oβ β + +=

=sum

sum=

=N

i

i iobiOp1

11 )()()()|( βπλ 11minus= Tt

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

Forward- Backward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Encontrar la secuencia maacutes probable de estados

ocultos dada una secuencia de observaciones

Ejemplo etiquetar palabras en una oracioacuten con su funcioacuten sintaacutectica

iquestEstados observables iquestEstados ocultos

Juan come naranjasNS NP OD

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Probabilidad parcial δ de alcanzar un estado

intermedio particular en el entramado

δ representa la probabilidad del camino maacutes probable a un estado

Para cada estado final hay un camino maacutes probable a ese estado

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi δ(it) es la maacutexima probabilidad de todas las

secuencias que terminan en el estado i en el tiempo t

En t=T tenemos las mejores probabilidades parciales y los mejores caminos parciales

El mejor camino global a T es el que lleva al estado con la mayor probabilidad

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En t=1

)()()1( 1obii isdot= πδ

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

27

Algoritmo de Viterbi En tgt1

A

B

C

Xhellip

Tltt-1 t-1 t

Pr(x en T=t) = maxi=ABC Pr(i en T=t-1) Pr(X|i) Pr(Ot|X)

)())1((max)( tiijj

obajtit sdotsdotminus= δδDr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En cada tiempo t recordamos el estado j que generoacute

δ(ti)

Se reconstruye el camino utilizando los punteros φhasta el tiempo t=1

ijj

ajtit )1(max)( sdotminus= δφ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi

)(max1

iP TNi

δlele

=lowast

)(maxarg1

iq TNi

T δlele

lowast =

P da la probabilidad de los mejores los estados

qT is la secuencia de estados oacuteptima(Q = q1q2hellipqT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

ForwardBackward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Dada un conjunto de secuencias de observaciones O=o1 o2

oK y la estructura general del HMM (cantidadde estados ocultos

y visibles) determinar los paraacutemetros del modelo M=(A B π) que mejor se ajustan a los datos de entrenamiento es decir

que maximice P(O | M)

Se utiliza el algoritmo de maximizacioacuten de la esperanza para

encontrar un maacuteximo local de P(O | M) algoritmo Baum-Welch

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Si los datos de entrenamiento tienen informacioacuten

acerca de la secuencia de estados ocultos los paraacutemetros se estiman como

xsestransicion

ssestransicionssPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

sveces

senodenesobservaciosoPob

)|()( ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

28

Algorimo Baum-Welch Idea general

xsestransiciondeesperado

ssestransiciondeesperadossPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

svecesdeesperado

senodenesobservaciodeesperadosoPob

)|()( ==

1)( === tparasenvecesdeesperadosP iiiπ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

ξt(ij)= P(qt= si qt+1= sj |o1 o2 oT)

ξt(ij)=P(qt= si qt+1= sj o1 o2 oT)

P(o1 o2 oT)=

P(qt= si o1 o2 ot) aij bj (ot+1 ) P(ot+2 oT | qt+1= sj ) P(o1 o2 oT)

=

=αt(i) aij bj (ot+1 ) βt+1(j)

ΣiΣj αt(i) aij bj (ot+1 ) βt+1(j)

αt(i) aij bj (ot+1 ) βt+1(j)

Σi αt(i) βt(i)Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

tiempo

Estados ocultos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch Definimos γt(i) como la probabilidad de estar en el

estado i en el tiempo t dadas las observaciones

Σt γt(i) - cantidad esperada de veces que visitoel estado i

Σt ξt(ij) - cantidad esperada de transiciones

sum=

=N

j

tt jii1

)()( ξγ

ji rarr

γt(i)= P(qt= si |o1 o2 oT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

sumsum

=)(

)(ˆ

i

jia

t

t

ijγ

ξ

sum

sum ==

)(

)()(ˆ

j

job

t

oot t

kjkt

γ

γ

)(ˆ1 iγπ = la frecuencia esperada del estado i en t=1

nuacutemero esperado de transiciones desde el estado i al estado j sobre la cantidad esperada de transiciones desde el estado i

cantidad de veces que se estuvo en el estado j observando el siacutembolo k sobre la cantidad de veces que se estuvo en el estado j

Dr Marcelo G Armentano - ISISTAN - UNICEN

Bibliografiacutea Bayesian Networks and Decision Graphs - Finn V

Jensen and Thomas D Nielsen - Springer Verlag -Second Edition - 2007

A tutorial on hidden Markov models and selected applications in speech recognition - Lawrence R Rabiner - Proceedings of the IEEE Vol 77 Nordm2 pp 257-286 - 1989

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

29

iquestConsultas

Dr Marcelo G Armentano - ISISTAN - UNICEN

Page 19: redes bayesianas UNICEN.pdf

03112011

19

Cadenas de Markov de orden N N=1

Modelo fiel a las frecuencias de cada par de letras

No representa bien el lenguaje natural

Dr Marcelo G Armentano - ISISTAN - UNICEN

Mapl idoca Uno domen quespiate meacute s abrdiacuteaton quadelaros del y en ioacutera puacutellade y antildeosar soacute Ar e Pon s toacutentun llose fase co tus pe foaciguela tr de paquros losintun oceton deros picaras ro pigeltexpa Arrcoacuten asadosen ca hiacuteracugidend madel cos pelo ca hamuy cuncte preraletrapuina venco sosueacute gifuas y estiogidire y ple peno do dociemanoacutey den matrones s Arseacutelades lelanelo lacides Jombidorentioacute lla caqueacutetrotan de ciechitevo pa e troacute ulega teilizaban riacuteaden zopendesellaundo u ca tioroserar vorasun plara en fue dempa teresen y umusmpio y sedes s s ezordel rugexhas darmabioacute

Cadenas de Markov de Orden N Texto aleatorio generado N=2

Muca donios y hombre llas res pla plambregrimanteoacute el la sioacute entude Salemo fue uncioacuten co crioacuten Tendiacutea en sula ta chicalque le siezblena que tras senterosagareto mdashgruel res entorasanesbazuerasabepaacuten enda con de in inagercamieropito don cuarecior siblimena tero en joacute te Fuedo paresegua pespurantespuen dos porodad de la que cabaquentra denabrencestiminotescuyoacute quel mor loseacute Acturo pen for es ella guanos mitadraratientoacuten condiacutea la allado quen se logoacute la balaritiva triblesala soacutelos habalcabiempor ere griacutea to borse allas laciasiacutemisible por pocaza los so ola la nintildeos cuaro eacutel y lar espiendismo antildeonetrouna que cad fuerofocieres resa combrempuros parsu misiblocerma anoceraya elos no a y ejoacute desta una tioacuten

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Texto aleatorio generado N=3

Muchetextremecitano conveniencia Cuando por acora pre hablancie el rudienteel pusierantado poblado pago y aumentar animaginacioacuten aza des examillos maacutes gigaciera suellevoacute los que inte la viajes rayos imales hacedor y el teacuterminuto pueses siles expedas mocha que la tanos ser en que vez lles la como la maacutes pase lo uacutenicos romera lado JoseacuteArcadiosas antes al realejo en que de dejoacute todidos tre distilado infinito desco a le se para ver bolada alquiacutedea

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Texto aleatorio generado N=4

Muchos y salambioacute un chaleco de habiacutea burla como el pasoacute la resto de aban su fue ser prendedor condo una buena de las casaquimisterios Joseacute Arcadio Buendiacutea sino esentoacute como un en aquel tambor quedoacute recuerdo de un fugitivo en que en que sierrar los metalejos a puestaban de una tersas y el mundo sino consolas y veiacutean desar a la casa cuyos sin comer Aureliano conjuro de el esperso de piedras

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de orden N N = 3-4

Comienzan a aparecer palabras maacutes reconocibles

Palabras de muchas letras aparecen frecuentemente ldquopegadasrdquo a otras palabras

Cuanto maacutes extenso es el texto de entrenamiento maacutes variedad habraacute en la salida

Dr Marcelo G Armentano - ISISTAN - UNICEN

Cadenas de Markov de Orden N Entrenamiento con palabras completas (N=1)

Texto generado

Se habiacutea que construyoacute trampas y sus iniciales encima con una insolacioacuten por mares incoacutegnitos visitar territorios maacutes emprendedor que se hundiacutean en las maravillas del mundo Era una explicacioacuten inmediata Joseacute Arcadio Buendiacutea la resonancia hueca de helechos y entonces una truculenta demostracioacuten con un aacutespero sabor de fusilamiento el interior y tambores y a prepararse para llevaacuterselos a palmo a conocerlo mantuvo puesta por los burros Asiacute fue desde haciacutea mucho tiempo porque el mundo se asomaba al caramelo vulgar que un paacutenico cuando llegoacute la judiacutea

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

20

Cadenas de Markov de Orden N Entrenamiento con palabras completas (N=4)

Texto generado

Consideraba como una burla de su travieso destino haber buscado el mar sin encontrarlo al precio de sacrificios y penalidades sin cuento y haberlo encontrado entonces sin buscarlo atravesado en su camino como un obstaacuteculo insalvable Uacutersula no volvioacute a acordarse de la intensidad de esa mirada hasta un diacutea en que el pequentildeo Aureliano a la edad de tres antildeos entroacute a la cocina en el momento en que ella retiraba del fogoacuten y poniacutea en la mesa una olla de caldo hirviendo Aquel olor mordiente quedariacutea para siempre en su memoria vinculado al recuerdo de Melquiacuteades

Dr Marcelo G Armentano - ISISTAN - UNICEN

Modelos de Markov Conjunto de estados

El proceso se mueve de un estado a otro generando unasecuencia de estados

Propiedad de Markov la probabilidad de cada estadosiguiente depende soacutelo del estado previo

bull Para definir un modelo de Markov deben especificarselas siguientes probabilidades

21 Nsss K

KK 21 ikii sss

)|()|( 1121 minusminus = ikikikiiik ssPssssP K

)|( jiij ssPa =)( ii sP=π

Probabilidad del estado inicial Probabilidad de transicioacuten de estados

Dr Marcelo G Armentano - ISISTAN - UNICEN

Lluvioso Seco

0703

02 08

Ejemplo de modelo de Markov

Dos posibles estados lsquoLluviosorsquo ylsquoSecorsquo Probabilidades de Transicioacuten

P(lsquoLluviosorsquo|lsquoLluviosorsquo)=03 P(lsquoSecorsquo|lsquoLluviosorsquo)=07

P(lsquoLluviosorsquo|lsquoSecorsquo)=02 P(lsquoSecorsquo|lsquoSecorsquo)=08

Probabilidades iniciales

P(lsquoLluviosorsquo)=04 P(lsquoSecorsquo)=06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Probabilidad de una secuencia Por la probabilidad de Markov

P(lsquoSecorsquorsquoSecorsquorsquoLluviosorsquorsquoLluviosorsquo ) =P(lsquoLluviosorsquo|rsquoLluviosorsquo) P(lsquoLluviosorsquo|rsquoSecorsquo)

P(lsquoSecorsquo|rsquoSecorsquo) P(lsquoSecorsquo) = 03020806 = 00288

)()|()( 12112121 minusminus= ikiiikiiikikii sssPssssPsssP KKK

)()|()|()|(

)()|(

112211

1211

iiiikikikik

ikiiikik

sPssPssPssP

sssPssP

K

KK

minusminusminus

minusminus

=

==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Underflow El producto de muchas probabilidades entre 0 y 1

puede resultar en underflow

Dado que log(xy) = log(x) + log(y) es mejor realizar la suma del logaritmo de las probabilidades que multiplicarlas

El modelo con el mayor puntaje final de probabilidad logariacutetmica sigue siendo la maacutes probable

Dr Marcelo G Armentano - ISISTAN - UNICEN

Hipoacutetesis del maacuteximo a posteriori

)|(maxarg DhPhHh

MAPisin

equiv

)(

)()|(maxarg

DP

hPhDP

Hhisin

=

)()|(maxarg hPhDPHhisin

=

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

21

Modelos Ocultos de Markov (HMM)

Conjunto de estados El proceso de mueve de un estado a otro generando una secuencia de

estados

Propiedad de Markov La probabilidad de cada estado depende solo del estado actual

Los estados no son visibles pero cada estado genera aleatoriamente unade las posibles observaciones (estados visibles)

Para definir un modelo oculto de Markov se deben especificar las siguientes probabilidades Matriz de probabilidades transicioacuten A=(aij) aij= P(si | sj) Matriz de probabilidades de observacioacuten B=(bi (vm )) bi(vm )= P(vm | si) Vector de probabilidades iniciales π=(πi) πi = P(si)

Los modelos quedan definidos por la tripla M=(A B π)

21 Nsss K

KK 21 ikii sss

)|()|( 1121 minusminus = ikikikiiik ssPssssP K

21 Mvvv K

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

Baja Alta

0703

02 08

Lluvioso Seco

06 0604 04

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

bull Dos estados correspondientes a la presioacuten atmosfeacutericabull lsquoAltarsquo y lsquoBajarsquo

bull Dos posibles observaciones bull lsquoLluviosorsquo y lsquoSecorsquo

bull Probabilidades de Transicioacuten

bull P(lsquoBajarsquo|lsquoBajarsquo)=03 P(lsquoAltarsquo|lsquoBajarsquo)=07 P(lsquoBajarsquo|lsquoAltarsquo)=02

P(lsquoAltarsquo|lsquoAltarsquo)=08bull Probabilidades de Observacioacuten

bull P(lsquoLluviosorsquo|lsquoBajarsquo)=06 P(lsquoSecorsquo|lsquoBajarsquo)=04

P(lsquoLluviosorsquo|lsquoAltarsquo)=04 P(lsquoSecorsquo|lsquoAltarsquo)=03 bull Probabilidades iniciales

bull P(lsquoBajarsquo)=04 P(lsquoAltarsquo)=06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM Prediccioacuten del tiempo de acuerdo al estado de un alga

empapado huacutemedo casi seco seco

nubes lluviasol

Oculto

Observable

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

Empapado Huacutemedo Casi seco Seco

Sol 060 020 015 005

Nubes 025 025 025 025

Lluvia 005 010 035 050

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

22

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

i P(qt+1=S1|qt=Si)

P(qt+1=S2|qt=Si)

P(qt+1=Sj|qt=Si)

P(qt+1=SN

|qt=Si)

1 a11 a12 hellip a1j hellip a1N

2 a21 a22 hellip a2j hellip a2N

3 a31 a32 hellip a3j hellip a3N

hellip

i ai1 ai2 hellip aij hellip aiN

hellip

N aN1 aN2 hellip aNj hellip aNN

Todas estas tablas son

iguales

aij = P (qt+1=sj|qt=si)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

i P(Ot=1|qt=Si) P(Ot=2|qt=Si) P(Ot=j|qt=Si) P(Ot=N|qt=Si)

1 b1(1) b1(2) hellip b1(j) hellip b1(N)2 b2(1) b2(2) hellip b2(j) hellip b2(N)3 b3(1) b3(2) hellip b3(j) hellip b3(N)hellip

i Bi(1) bi(2) hellip bi(j) hellip bi(N)hellip

N bN(1) bN(2) hellip bN(j) hellip bN(N)

bi(j) = P (Ot=j|qt=si)

Todas estas tablas son

iguales

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

un enrejado

s1

s2

si

sN

s1

s2

si

sN

s1

s2

sj

sN

s1

s2

si

sN

a1j

a2j

aij

aNj

1 k k+1 K

o1 ok ok+1 oKObservaciones

Tiempo

Ejemplo Casino tramposo

Un casino tiene dos dados Dado ldquojustordquo

P(1) = P(2) = P(3) = P(5) = P(6) = 16 Dado cargado

P(1) = P(2) = P(3) = P(4) = P(5) = 110P(6) = 12

El casino alterna entre el dado justo y el cargado una vezcada 20 turnos

Problemas a resolver con HMM Evaluacioacuten

Dado un HMM M=(A B π) y una secuencia de observaciones O=o1 o2 oK calcular la probabilidad de que el modelo M haya generado la secuencia O

Dr Marcelo G Armentano - ISISTAN - UNICEN

EvaluacioacutenDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestCuan probable es esta secuencia dado nuestromodelo de como opera el casino

Este es el problema de EVALUACIOacuteN en HMMs

03112011

23

Problemas a resolver con HMM Decodificacioacuten o inferencia

Dado un HMM M=(A B π) y una secuencia de observaciones O=o1 o2 oK calcular la secuencia de estados ocultos Si que maacutes probablemente produjo la secuencia de observaciones O

Dr Marcelo G Armentano - ISISTAN - UNICEN

DecodificacioacutenDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestQue partes de la secuencia fueron generadas por el dado cargado y cuales por el dado justo

Este es el problema de DECODIFICACIOacuteN en HMMs

Problemas a resolver con HMM Aprendizaje

Dado un conjunto de secuencias de observaciones de entrenamiento O=o1 o2 oK y la estructura general de HMM (cantidad de estados ocultos y cantidad de estados visibles) determinar los paraacutemetros del HMM M=(A B π) que mejor se ajustan a los datos de entrenamiento

Dr Marcelo G Armentano - ISISTAN - UNICEN

AprendizajeDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestCoacutemo estaacute cargado el dado cargado iquestCada cuantocambia el casino entre el dado cargado y el justo

Este es el problema de APRENDIZAJE en HMMs

El HMM del casino tramposo

JUSTO CARGADO

005

005

095095

P(1|Justo) = 16P(2|Justo) = 16P(3|Justo) = 16P(4|Justo) = 16P(5|Justo) = 16P(6|Justo) = 16

P(1|Cargado) = 110P(2|Cargado) = 110P(3|Cargado) = 110P(4|Cargado) = 110P(5|Cargado) = 110P(6|Cargado) = 12

Ejemplo reconocimiento de

palabras Se asume que los caracteres estaacuten separados

El reconocedorde caracteres da como salida la probabilidad de que una imagen corresponda a un caracterparticular P(caracter|imagen)

05

003

0005

031z

c

b

a

Estado Oculto

Estado Observable

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

24

Ejemplo reconocimiento de

palabras Estados Ocultos del HMM caracteres

Estados Observables imagenes de caracteres

Probabilidades de Observacioacutenαv

( ) ( ))|()( ii svPvbB αα ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo reconocimiento de

palabras Si se conoce el diccionario es posible construir un modelo

individual para cada palabra

bull Problema de evaluacioacuten reconocer la palabra en unaimagen es equivalente a evaluar un conjunto de modelos

amigos a m i g o s

buacutefalo b uacute f a l o

05 003 04 06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo reconocimiento de

palabras Podemos construir un HMM para todas las palabras

Estados ocultos los caracteres de las palabras

Probabilidades de transicioacuten calculadas a partir de modelos del lenguaje

Observaciones y probabilidades de observacioacuten iguales al ejemplo anterior

Problema de decodificacioacuten encontrar la secuencia de estados ocultos que maacutes probablemente generaron la imagen

a m

i g

o

s

t

b v

f

u

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

Forward-Backward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward

Seco Huacutemedo EmpapadoObs

Sol

Nubes

Lluvia

Sol

Nubes

Lluvia

Sol

Nubes

Lluvia

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward Pr(Seco Huacutemedo Empapado|M) =

Pr(seco huacutemedo empapado|sol sol sol) +

Pr(seco huacutemedo empapado|sol nubes sol) +

hellip

Pr(seco huacutemedo empapado|lluvia lluvia lluvia)

iexcliexclMuy Costoso

33 = 27 caacutelculos

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

25

Algoritmo Forward Reduccioacuten de la complejidad

Probabilidad parcial de alcanzar un estado intermedio en el entramado

Yk1 Yk2 hellip YkT

Sol

Nubes

Lluvia

Nubes

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward αt(j)= Pr(obs|estado oculto es j)

Pr( todos los caminos al estado j en el tiempo t)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward En el tiempo t=1

En el tiempo t gt1

α1(j)=π(j) Pr(obs|estado j)

αt(j)=Pr(todos los caminos a j) Pr(obs|estado j)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward

Terminacioacuten

Dr Marcelo G Armentano - ISISTAN - UNICEN

sum=

=n

j

T jMObs1

)()|Pr( α

sum=

++ =n

i

ijttjt ajobj1

11 )()()( αα

Algoritmo Forward

Sol

α1(sol)=π(sol) bsol(humedo)

Nubes

α1(nubes)=π(nubes) bnubes(humedo)

Lluvia

α1(lluvia)=π(lluvia) blluvia(humedo)

)()(secb )(nubesi1nubes2 sum sdotsdot=

iaionubes αα

Nubes

asolnubes

anubesnubes

alluvianubes

Huacutemedo Seco

Algoritmo Backward

Se define la variable β

)|()( 21 λβ iqoooPi tTttt == ++

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

26

Algoritmo Backward

Inicializacioacuten

Caacutelculo

Finalizacioacuten

1)( =jTβ

1 1

1

( ) ( ) ( )N

t t ij j t

j

i j a b oβ β + +=

=sum

sum=

=N

i

i iobiOp1

11 )()()()|( βπλ 11minus= Tt

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

Forward- Backward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Encontrar la secuencia maacutes probable de estados

ocultos dada una secuencia de observaciones

Ejemplo etiquetar palabras en una oracioacuten con su funcioacuten sintaacutectica

iquestEstados observables iquestEstados ocultos

Juan come naranjasNS NP OD

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Probabilidad parcial δ de alcanzar un estado

intermedio particular en el entramado

δ representa la probabilidad del camino maacutes probable a un estado

Para cada estado final hay un camino maacutes probable a ese estado

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi δ(it) es la maacutexima probabilidad de todas las

secuencias que terminan en el estado i en el tiempo t

En t=T tenemos las mejores probabilidades parciales y los mejores caminos parciales

El mejor camino global a T es el que lleva al estado con la mayor probabilidad

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En t=1

)()()1( 1obii isdot= πδ

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

27

Algoritmo de Viterbi En tgt1

A

B

C

Xhellip

Tltt-1 t-1 t

Pr(x en T=t) = maxi=ABC Pr(i en T=t-1) Pr(X|i) Pr(Ot|X)

)())1((max)( tiijj

obajtit sdotsdotminus= δδDr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En cada tiempo t recordamos el estado j que generoacute

δ(ti)

Se reconstruye el camino utilizando los punteros φhasta el tiempo t=1

ijj

ajtit )1(max)( sdotminus= δφ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi

)(max1

iP TNi

δlele

=lowast

)(maxarg1

iq TNi

T δlele

lowast =

P da la probabilidad de los mejores los estados

qT is la secuencia de estados oacuteptima(Q = q1q2hellipqT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

ForwardBackward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Dada un conjunto de secuencias de observaciones O=o1 o2

oK y la estructura general del HMM (cantidadde estados ocultos

y visibles) determinar los paraacutemetros del modelo M=(A B π) que mejor se ajustan a los datos de entrenamiento es decir

que maximice P(O | M)

Se utiliza el algoritmo de maximizacioacuten de la esperanza para

encontrar un maacuteximo local de P(O | M) algoritmo Baum-Welch

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Si los datos de entrenamiento tienen informacioacuten

acerca de la secuencia de estados ocultos los paraacutemetros se estiman como

xsestransicion

ssestransicionssPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

sveces

senodenesobservaciosoPob

)|()( ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

28

Algorimo Baum-Welch Idea general

xsestransiciondeesperado

ssestransiciondeesperadossPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

svecesdeesperado

senodenesobservaciodeesperadosoPob

)|()( ==

1)( === tparasenvecesdeesperadosP iiiπ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

ξt(ij)= P(qt= si qt+1= sj |o1 o2 oT)

ξt(ij)=P(qt= si qt+1= sj o1 o2 oT)

P(o1 o2 oT)=

P(qt= si o1 o2 ot) aij bj (ot+1 ) P(ot+2 oT | qt+1= sj ) P(o1 o2 oT)

=

=αt(i) aij bj (ot+1 ) βt+1(j)

ΣiΣj αt(i) aij bj (ot+1 ) βt+1(j)

αt(i) aij bj (ot+1 ) βt+1(j)

Σi αt(i) βt(i)Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

tiempo

Estados ocultos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch Definimos γt(i) como la probabilidad de estar en el

estado i en el tiempo t dadas las observaciones

Σt γt(i) - cantidad esperada de veces que visitoel estado i

Σt ξt(ij) - cantidad esperada de transiciones

sum=

=N

j

tt jii1

)()( ξγ

ji rarr

γt(i)= P(qt= si |o1 o2 oT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

sumsum

=)(

)(ˆ

i

jia

t

t

ijγ

ξ

sum

sum ==

)(

)()(ˆ

j

job

t

oot t

kjkt

γ

γ

)(ˆ1 iγπ = la frecuencia esperada del estado i en t=1

nuacutemero esperado de transiciones desde el estado i al estado j sobre la cantidad esperada de transiciones desde el estado i

cantidad de veces que se estuvo en el estado j observando el siacutembolo k sobre la cantidad de veces que se estuvo en el estado j

Dr Marcelo G Armentano - ISISTAN - UNICEN

Bibliografiacutea Bayesian Networks and Decision Graphs - Finn V

Jensen and Thomas D Nielsen - Springer Verlag -Second Edition - 2007

A tutorial on hidden Markov models and selected applications in speech recognition - Lawrence R Rabiner - Proceedings of the IEEE Vol 77 Nordm2 pp 257-286 - 1989

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

29

iquestConsultas

Dr Marcelo G Armentano - ISISTAN - UNICEN

Page 20: redes bayesianas UNICEN.pdf

03112011

20

Cadenas de Markov de Orden N Entrenamiento con palabras completas (N=4)

Texto generado

Consideraba como una burla de su travieso destino haber buscado el mar sin encontrarlo al precio de sacrificios y penalidades sin cuento y haberlo encontrado entonces sin buscarlo atravesado en su camino como un obstaacuteculo insalvable Uacutersula no volvioacute a acordarse de la intensidad de esa mirada hasta un diacutea en que el pequentildeo Aureliano a la edad de tres antildeos entroacute a la cocina en el momento en que ella retiraba del fogoacuten y poniacutea en la mesa una olla de caldo hirviendo Aquel olor mordiente quedariacutea para siempre en su memoria vinculado al recuerdo de Melquiacuteades

Dr Marcelo G Armentano - ISISTAN - UNICEN

Modelos de Markov Conjunto de estados

El proceso se mueve de un estado a otro generando unasecuencia de estados

Propiedad de Markov la probabilidad de cada estadosiguiente depende soacutelo del estado previo

bull Para definir un modelo de Markov deben especificarselas siguientes probabilidades

21 Nsss K

KK 21 ikii sss

)|()|( 1121 minusminus = ikikikiiik ssPssssP K

)|( jiij ssPa =)( ii sP=π

Probabilidad del estado inicial Probabilidad de transicioacuten de estados

Dr Marcelo G Armentano - ISISTAN - UNICEN

Lluvioso Seco

0703

02 08

Ejemplo de modelo de Markov

Dos posibles estados lsquoLluviosorsquo ylsquoSecorsquo Probabilidades de Transicioacuten

P(lsquoLluviosorsquo|lsquoLluviosorsquo)=03 P(lsquoSecorsquo|lsquoLluviosorsquo)=07

P(lsquoLluviosorsquo|lsquoSecorsquo)=02 P(lsquoSecorsquo|lsquoSecorsquo)=08

Probabilidades iniciales

P(lsquoLluviosorsquo)=04 P(lsquoSecorsquo)=06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Probabilidad de una secuencia Por la probabilidad de Markov

P(lsquoSecorsquorsquoSecorsquorsquoLluviosorsquorsquoLluviosorsquo ) =P(lsquoLluviosorsquo|rsquoLluviosorsquo) P(lsquoLluviosorsquo|rsquoSecorsquo)

P(lsquoSecorsquo|rsquoSecorsquo) P(lsquoSecorsquo) = 03020806 = 00288

)()|()( 12112121 minusminus= ikiiikiiikikii sssPssssPsssP KKK

)()|()|()|(

)()|(

112211

1211

iiiikikikik

ikiiikik

sPssPssPssP

sssPssP

K

KK

minusminusminus

minusminus

=

==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Underflow El producto de muchas probabilidades entre 0 y 1

puede resultar en underflow

Dado que log(xy) = log(x) + log(y) es mejor realizar la suma del logaritmo de las probabilidades que multiplicarlas

El modelo con el mayor puntaje final de probabilidad logariacutetmica sigue siendo la maacutes probable

Dr Marcelo G Armentano - ISISTAN - UNICEN

Hipoacutetesis del maacuteximo a posteriori

)|(maxarg DhPhHh

MAPisin

equiv

)(

)()|(maxarg

DP

hPhDP

Hhisin

=

)()|(maxarg hPhDPHhisin

=

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

21

Modelos Ocultos de Markov (HMM)

Conjunto de estados El proceso de mueve de un estado a otro generando una secuencia de

estados

Propiedad de Markov La probabilidad de cada estado depende solo del estado actual

Los estados no son visibles pero cada estado genera aleatoriamente unade las posibles observaciones (estados visibles)

Para definir un modelo oculto de Markov se deben especificar las siguientes probabilidades Matriz de probabilidades transicioacuten A=(aij) aij= P(si | sj) Matriz de probabilidades de observacioacuten B=(bi (vm )) bi(vm )= P(vm | si) Vector de probabilidades iniciales π=(πi) πi = P(si)

Los modelos quedan definidos por la tripla M=(A B π)

21 Nsss K

KK 21 ikii sss

)|()|( 1121 minusminus = ikikikiiik ssPssssP K

21 Mvvv K

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

Baja Alta

0703

02 08

Lluvioso Seco

06 0604 04

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

bull Dos estados correspondientes a la presioacuten atmosfeacutericabull lsquoAltarsquo y lsquoBajarsquo

bull Dos posibles observaciones bull lsquoLluviosorsquo y lsquoSecorsquo

bull Probabilidades de Transicioacuten

bull P(lsquoBajarsquo|lsquoBajarsquo)=03 P(lsquoAltarsquo|lsquoBajarsquo)=07 P(lsquoBajarsquo|lsquoAltarsquo)=02

P(lsquoAltarsquo|lsquoAltarsquo)=08bull Probabilidades de Observacioacuten

bull P(lsquoLluviosorsquo|lsquoBajarsquo)=06 P(lsquoSecorsquo|lsquoBajarsquo)=04

P(lsquoLluviosorsquo|lsquoAltarsquo)=04 P(lsquoSecorsquo|lsquoAltarsquo)=03 bull Probabilidades iniciales

bull P(lsquoBajarsquo)=04 P(lsquoAltarsquo)=06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM Prediccioacuten del tiempo de acuerdo al estado de un alga

empapado huacutemedo casi seco seco

nubes lluviasol

Oculto

Observable

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

Empapado Huacutemedo Casi seco Seco

Sol 060 020 015 005

Nubes 025 025 025 025

Lluvia 005 010 035 050

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

22

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

i P(qt+1=S1|qt=Si)

P(qt+1=S2|qt=Si)

P(qt+1=Sj|qt=Si)

P(qt+1=SN

|qt=Si)

1 a11 a12 hellip a1j hellip a1N

2 a21 a22 hellip a2j hellip a2N

3 a31 a32 hellip a3j hellip a3N

hellip

i ai1 ai2 hellip aij hellip aiN

hellip

N aN1 aN2 hellip aNj hellip aNN

Todas estas tablas son

iguales

aij = P (qt+1=sj|qt=si)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

i P(Ot=1|qt=Si) P(Ot=2|qt=Si) P(Ot=j|qt=Si) P(Ot=N|qt=Si)

1 b1(1) b1(2) hellip b1(j) hellip b1(N)2 b2(1) b2(2) hellip b2(j) hellip b2(N)3 b3(1) b3(2) hellip b3(j) hellip b3(N)hellip

i Bi(1) bi(2) hellip bi(j) hellip bi(N)hellip

N bN(1) bN(2) hellip bN(j) hellip bN(N)

bi(j) = P (Ot=j|qt=si)

Todas estas tablas son

iguales

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

un enrejado

s1

s2

si

sN

s1

s2

si

sN

s1

s2

sj

sN

s1

s2

si

sN

a1j

a2j

aij

aNj

1 k k+1 K

o1 ok ok+1 oKObservaciones

Tiempo

Ejemplo Casino tramposo

Un casino tiene dos dados Dado ldquojustordquo

P(1) = P(2) = P(3) = P(5) = P(6) = 16 Dado cargado

P(1) = P(2) = P(3) = P(4) = P(5) = 110P(6) = 12

El casino alterna entre el dado justo y el cargado una vezcada 20 turnos

Problemas a resolver con HMM Evaluacioacuten

Dado un HMM M=(A B π) y una secuencia de observaciones O=o1 o2 oK calcular la probabilidad de que el modelo M haya generado la secuencia O

Dr Marcelo G Armentano - ISISTAN - UNICEN

EvaluacioacutenDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestCuan probable es esta secuencia dado nuestromodelo de como opera el casino

Este es el problema de EVALUACIOacuteN en HMMs

03112011

23

Problemas a resolver con HMM Decodificacioacuten o inferencia

Dado un HMM M=(A B π) y una secuencia de observaciones O=o1 o2 oK calcular la secuencia de estados ocultos Si que maacutes probablemente produjo la secuencia de observaciones O

Dr Marcelo G Armentano - ISISTAN - UNICEN

DecodificacioacutenDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestQue partes de la secuencia fueron generadas por el dado cargado y cuales por el dado justo

Este es el problema de DECODIFICACIOacuteN en HMMs

Problemas a resolver con HMM Aprendizaje

Dado un conjunto de secuencias de observaciones de entrenamiento O=o1 o2 oK y la estructura general de HMM (cantidad de estados ocultos y cantidad de estados visibles) determinar los paraacutemetros del HMM M=(A B π) que mejor se ajustan a los datos de entrenamiento

Dr Marcelo G Armentano - ISISTAN - UNICEN

AprendizajeDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestCoacutemo estaacute cargado el dado cargado iquestCada cuantocambia el casino entre el dado cargado y el justo

Este es el problema de APRENDIZAJE en HMMs

El HMM del casino tramposo

JUSTO CARGADO

005

005

095095

P(1|Justo) = 16P(2|Justo) = 16P(3|Justo) = 16P(4|Justo) = 16P(5|Justo) = 16P(6|Justo) = 16

P(1|Cargado) = 110P(2|Cargado) = 110P(3|Cargado) = 110P(4|Cargado) = 110P(5|Cargado) = 110P(6|Cargado) = 12

Ejemplo reconocimiento de

palabras Se asume que los caracteres estaacuten separados

El reconocedorde caracteres da como salida la probabilidad de que una imagen corresponda a un caracterparticular P(caracter|imagen)

05

003

0005

031z

c

b

a

Estado Oculto

Estado Observable

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

24

Ejemplo reconocimiento de

palabras Estados Ocultos del HMM caracteres

Estados Observables imagenes de caracteres

Probabilidades de Observacioacutenαv

( ) ( ))|()( ii svPvbB αα ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo reconocimiento de

palabras Si se conoce el diccionario es posible construir un modelo

individual para cada palabra

bull Problema de evaluacioacuten reconocer la palabra en unaimagen es equivalente a evaluar un conjunto de modelos

amigos a m i g o s

buacutefalo b uacute f a l o

05 003 04 06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo reconocimiento de

palabras Podemos construir un HMM para todas las palabras

Estados ocultos los caracteres de las palabras

Probabilidades de transicioacuten calculadas a partir de modelos del lenguaje

Observaciones y probabilidades de observacioacuten iguales al ejemplo anterior

Problema de decodificacioacuten encontrar la secuencia de estados ocultos que maacutes probablemente generaron la imagen

a m

i g

o

s

t

b v

f

u

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

Forward-Backward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward

Seco Huacutemedo EmpapadoObs

Sol

Nubes

Lluvia

Sol

Nubes

Lluvia

Sol

Nubes

Lluvia

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward Pr(Seco Huacutemedo Empapado|M) =

Pr(seco huacutemedo empapado|sol sol sol) +

Pr(seco huacutemedo empapado|sol nubes sol) +

hellip

Pr(seco huacutemedo empapado|lluvia lluvia lluvia)

iexcliexclMuy Costoso

33 = 27 caacutelculos

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

25

Algoritmo Forward Reduccioacuten de la complejidad

Probabilidad parcial de alcanzar un estado intermedio en el entramado

Yk1 Yk2 hellip YkT

Sol

Nubes

Lluvia

Nubes

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward αt(j)= Pr(obs|estado oculto es j)

Pr( todos los caminos al estado j en el tiempo t)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward En el tiempo t=1

En el tiempo t gt1

α1(j)=π(j) Pr(obs|estado j)

αt(j)=Pr(todos los caminos a j) Pr(obs|estado j)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward

Terminacioacuten

Dr Marcelo G Armentano - ISISTAN - UNICEN

sum=

=n

j

T jMObs1

)()|Pr( α

sum=

++ =n

i

ijttjt ajobj1

11 )()()( αα

Algoritmo Forward

Sol

α1(sol)=π(sol) bsol(humedo)

Nubes

α1(nubes)=π(nubes) bnubes(humedo)

Lluvia

α1(lluvia)=π(lluvia) blluvia(humedo)

)()(secb )(nubesi1nubes2 sum sdotsdot=

iaionubes αα

Nubes

asolnubes

anubesnubes

alluvianubes

Huacutemedo Seco

Algoritmo Backward

Se define la variable β

)|()( 21 λβ iqoooPi tTttt == ++

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

26

Algoritmo Backward

Inicializacioacuten

Caacutelculo

Finalizacioacuten

1)( =jTβ

1 1

1

( ) ( ) ( )N

t t ij j t

j

i j a b oβ β + +=

=sum

sum=

=N

i

i iobiOp1

11 )()()()|( βπλ 11minus= Tt

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

Forward- Backward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Encontrar la secuencia maacutes probable de estados

ocultos dada una secuencia de observaciones

Ejemplo etiquetar palabras en una oracioacuten con su funcioacuten sintaacutectica

iquestEstados observables iquestEstados ocultos

Juan come naranjasNS NP OD

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Probabilidad parcial δ de alcanzar un estado

intermedio particular en el entramado

δ representa la probabilidad del camino maacutes probable a un estado

Para cada estado final hay un camino maacutes probable a ese estado

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi δ(it) es la maacutexima probabilidad de todas las

secuencias que terminan en el estado i en el tiempo t

En t=T tenemos las mejores probabilidades parciales y los mejores caminos parciales

El mejor camino global a T es el que lleva al estado con la mayor probabilidad

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En t=1

)()()1( 1obii isdot= πδ

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

27

Algoritmo de Viterbi En tgt1

A

B

C

Xhellip

Tltt-1 t-1 t

Pr(x en T=t) = maxi=ABC Pr(i en T=t-1) Pr(X|i) Pr(Ot|X)

)())1((max)( tiijj

obajtit sdotsdotminus= δδDr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En cada tiempo t recordamos el estado j que generoacute

δ(ti)

Se reconstruye el camino utilizando los punteros φhasta el tiempo t=1

ijj

ajtit )1(max)( sdotminus= δφ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi

)(max1

iP TNi

δlele

=lowast

)(maxarg1

iq TNi

T δlele

lowast =

P da la probabilidad de los mejores los estados

qT is la secuencia de estados oacuteptima(Q = q1q2hellipqT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

ForwardBackward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Dada un conjunto de secuencias de observaciones O=o1 o2

oK y la estructura general del HMM (cantidadde estados ocultos

y visibles) determinar los paraacutemetros del modelo M=(A B π) que mejor se ajustan a los datos de entrenamiento es decir

que maximice P(O | M)

Se utiliza el algoritmo de maximizacioacuten de la esperanza para

encontrar un maacuteximo local de P(O | M) algoritmo Baum-Welch

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Si los datos de entrenamiento tienen informacioacuten

acerca de la secuencia de estados ocultos los paraacutemetros se estiman como

xsestransicion

ssestransicionssPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

sveces

senodenesobservaciosoPob

)|()( ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

28

Algorimo Baum-Welch Idea general

xsestransiciondeesperado

ssestransiciondeesperadossPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

svecesdeesperado

senodenesobservaciodeesperadosoPob

)|()( ==

1)( === tparasenvecesdeesperadosP iiiπ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

ξt(ij)= P(qt= si qt+1= sj |o1 o2 oT)

ξt(ij)=P(qt= si qt+1= sj o1 o2 oT)

P(o1 o2 oT)=

P(qt= si o1 o2 ot) aij bj (ot+1 ) P(ot+2 oT | qt+1= sj ) P(o1 o2 oT)

=

=αt(i) aij bj (ot+1 ) βt+1(j)

ΣiΣj αt(i) aij bj (ot+1 ) βt+1(j)

αt(i) aij bj (ot+1 ) βt+1(j)

Σi αt(i) βt(i)Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

tiempo

Estados ocultos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch Definimos γt(i) como la probabilidad de estar en el

estado i en el tiempo t dadas las observaciones

Σt γt(i) - cantidad esperada de veces que visitoel estado i

Σt ξt(ij) - cantidad esperada de transiciones

sum=

=N

j

tt jii1

)()( ξγ

ji rarr

γt(i)= P(qt= si |o1 o2 oT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

sumsum

=)(

)(ˆ

i

jia

t

t

ijγ

ξ

sum

sum ==

)(

)()(ˆ

j

job

t

oot t

kjkt

γ

γ

)(ˆ1 iγπ = la frecuencia esperada del estado i en t=1

nuacutemero esperado de transiciones desde el estado i al estado j sobre la cantidad esperada de transiciones desde el estado i

cantidad de veces que se estuvo en el estado j observando el siacutembolo k sobre la cantidad de veces que se estuvo en el estado j

Dr Marcelo G Armentano - ISISTAN - UNICEN

Bibliografiacutea Bayesian Networks and Decision Graphs - Finn V

Jensen and Thomas D Nielsen - Springer Verlag -Second Edition - 2007

A tutorial on hidden Markov models and selected applications in speech recognition - Lawrence R Rabiner - Proceedings of the IEEE Vol 77 Nordm2 pp 257-286 - 1989

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

29

iquestConsultas

Dr Marcelo G Armentano - ISISTAN - UNICEN

Page 21: redes bayesianas UNICEN.pdf

03112011

21

Modelos Ocultos de Markov (HMM)

Conjunto de estados El proceso de mueve de un estado a otro generando una secuencia de

estados

Propiedad de Markov La probabilidad de cada estado depende solo del estado actual

Los estados no son visibles pero cada estado genera aleatoriamente unade las posibles observaciones (estados visibles)

Para definir un modelo oculto de Markov se deben especificar las siguientes probabilidades Matriz de probabilidades transicioacuten A=(aij) aij= P(si | sj) Matriz de probabilidades de observacioacuten B=(bi (vm )) bi(vm )= P(vm | si) Vector de probabilidades iniciales π=(πi) πi = P(si)

Los modelos quedan definidos por la tripla M=(A B π)

21 Nsss K

KK 21 ikii sss

)|()|( 1121 minusminus = ikikikiiik ssPssssP K

21 Mvvv K

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

Baja Alta

0703

02 08

Lluvioso Seco

06 0604 04

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

bull Dos estados correspondientes a la presioacuten atmosfeacutericabull lsquoAltarsquo y lsquoBajarsquo

bull Dos posibles observaciones bull lsquoLluviosorsquo y lsquoSecorsquo

bull Probabilidades de Transicioacuten

bull P(lsquoBajarsquo|lsquoBajarsquo)=03 P(lsquoAltarsquo|lsquoBajarsquo)=07 P(lsquoBajarsquo|lsquoAltarsquo)=02

P(lsquoAltarsquo|lsquoAltarsquo)=08bull Probabilidades de Observacioacuten

bull P(lsquoLluviosorsquo|lsquoBajarsquo)=06 P(lsquoSecorsquo|lsquoBajarsquo)=04

P(lsquoLluviosorsquo|lsquoAltarsquo)=04 P(lsquoSecorsquo|lsquoAltarsquo)=03 bull Probabilidades iniciales

bull P(lsquoBajarsquo)=04 P(lsquoAltarsquo)=06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM Prediccioacuten del tiempo de acuerdo al estado de un alga

empapado huacutemedo casi seco seco

nubes lluviasol

Oculto

Observable

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo de HMM

Empapado Huacutemedo Casi seco Seco

Sol 060 020 015 005

Nubes 025 025 025 025

Lluvia 005 010 035 050

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

22

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

i P(qt+1=S1|qt=Si)

P(qt+1=S2|qt=Si)

P(qt+1=Sj|qt=Si)

P(qt+1=SN

|qt=Si)

1 a11 a12 hellip a1j hellip a1N

2 a21 a22 hellip a2j hellip a2N

3 a31 a32 hellip a3j hellip a3N

hellip

i ai1 ai2 hellip aij hellip aiN

hellip

N aN1 aN2 hellip aNj hellip aNN

Todas estas tablas son

iguales

aij = P (qt+1=sj|qt=si)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

i P(Ot=1|qt=Si) P(Ot=2|qt=Si) P(Ot=j|qt=Si) P(Ot=N|qt=Si)

1 b1(1) b1(2) hellip b1(j) hellip b1(N)2 b2(1) b2(2) hellip b2(j) hellip b2(N)3 b3(1) b3(2) hellip b3(j) hellip b3(N)hellip

i Bi(1) bi(2) hellip bi(j) hellip bi(N)hellip

N bN(1) bN(2) hellip bN(j) hellip bN(N)

bi(j) = P (Ot=j|qt=si)

Todas estas tablas son

iguales

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

un enrejado

s1

s2

si

sN

s1

s2

si

sN

s1

s2

sj

sN

s1

s2

si

sN

a1j

a2j

aij

aNj

1 k k+1 K

o1 ok ok+1 oKObservaciones

Tiempo

Ejemplo Casino tramposo

Un casino tiene dos dados Dado ldquojustordquo

P(1) = P(2) = P(3) = P(5) = P(6) = 16 Dado cargado

P(1) = P(2) = P(3) = P(4) = P(5) = 110P(6) = 12

El casino alterna entre el dado justo y el cargado una vezcada 20 turnos

Problemas a resolver con HMM Evaluacioacuten

Dado un HMM M=(A B π) y una secuencia de observaciones O=o1 o2 oK calcular la probabilidad de que el modelo M haya generado la secuencia O

Dr Marcelo G Armentano - ISISTAN - UNICEN

EvaluacioacutenDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestCuan probable es esta secuencia dado nuestromodelo de como opera el casino

Este es el problema de EVALUACIOacuteN en HMMs

03112011

23

Problemas a resolver con HMM Decodificacioacuten o inferencia

Dado un HMM M=(A B π) y una secuencia de observaciones O=o1 o2 oK calcular la secuencia de estados ocultos Si que maacutes probablemente produjo la secuencia de observaciones O

Dr Marcelo G Armentano - ISISTAN - UNICEN

DecodificacioacutenDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestQue partes de la secuencia fueron generadas por el dado cargado y cuales por el dado justo

Este es el problema de DECODIFICACIOacuteN en HMMs

Problemas a resolver con HMM Aprendizaje

Dado un conjunto de secuencias de observaciones de entrenamiento O=o1 o2 oK y la estructura general de HMM (cantidad de estados ocultos y cantidad de estados visibles) determinar los paraacutemetros del HMM M=(A B π) que mejor se ajustan a los datos de entrenamiento

Dr Marcelo G Armentano - ISISTAN - UNICEN

AprendizajeDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestCoacutemo estaacute cargado el dado cargado iquestCada cuantocambia el casino entre el dado cargado y el justo

Este es el problema de APRENDIZAJE en HMMs

El HMM del casino tramposo

JUSTO CARGADO

005

005

095095

P(1|Justo) = 16P(2|Justo) = 16P(3|Justo) = 16P(4|Justo) = 16P(5|Justo) = 16P(6|Justo) = 16

P(1|Cargado) = 110P(2|Cargado) = 110P(3|Cargado) = 110P(4|Cargado) = 110P(5|Cargado) = 110P(6|Cargado) = 12

Ejemplo reconocimiento de

palabras Se asume que los caracteres estaacuten separados

El reconocedorde caracteres da como salida la probabilidad de que una imagen corresponda a un caracterparticular P(caracter|imagen)

05

003

0005

031z

c

b

a

Estado Oculto

Estado Observable

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

24

Ejemplo reconocimiento de

palabras Estados Ocultos del HMM caracteres

Estados Observables imagenes de caracteres

Probabilidades de Observacioacutenαv

( ) ( ))|()( ii svPvbB αα ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo reconocimiento de

palabras Si se conoce el diccionario es posible construir un modelo

individual para cada palabra

bull Problema de evaluacioacuten reconocer la palabra en unaimagen es equivalente a evaluar un conjunto de modelos

amigos a m i g o s

buacutefalo b uacute f a l o

05 003 04 06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo reconocimiento de

palabras Podemos construir un HMM para todas las palabras

Estados ocultos los caracteres de las palabras

Probabilidades de transicioacuten calculadas a partir de modelos del lenguaje

Observaciones y probabilidades de observacioacuten iguales al ejemplo anterior

Problema de decodificacioacuten encontrar la secuencia de estados ocultos que maacutes probablemente generaron la imagen

a m

i g

o

s

t

b v

f

u

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

Forward-Backward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward

Seco Huacutemedo EmpapadoObs

Sol

Nubes

Lluvia

Sol

Nubes

Lluvia

Sol

Nubes

Lluvia

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward Pr(Seco Huacutemedo Empapado|M) =

Pr(seco huacutemedo empapado|sol sol sol) +

Pr(seco huacutemedo empapado|sol nubes sol) +

hellip

Pr(seco huacutemedo empapado|lluvia lluvia lluvia)

iexcliexclMuy Costoso

33 = 27 caacutelculos

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

25

Algoritmo Forward Reduccioacuten de la complejidad

Probabilidad parcial de alcanzar un estado intermedio en el entramado

Yk1 Yk2 hellip YkT

Sol

Nubes

Lluvia

Nubes

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward αt(j)= Pr(obs|estado oculto es j)

Pr( todos los caminos al estado j en el tiempo t)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward En el tiempo t=1

En el tiempo t gt1

α1(j)=π(j) Pr(obs|estado j)

αt(j)=Pr(todos los caminos a j) Pr(obs|estado j)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward

Terminacioacuten

Dr Marcelo G Armentano - ISISTAN - UNICEN

sum=

=n

j

T jMObs1

)()|Pr( α

sum=

++ =n

i

ijttjt ajobj1

11 )()()( αα

Algoritmo Forward

Sol

α1(sol)=π(sol) bsol(humedo)

Nubes

α1(nubes)=π(nubes) bnubes(humedo)

Lluvia

α1(lluvia)=π(lluvia) blluvia(humedo)

)()(secb )(nubesi1nubes2 sum sdotsdot=

iaionubes αα

Nubes

asolnubes

anubesnubes

alluvianubes

Huacutemedo Seco

Algoritmo Backward

Se define la variable β

)|()( 21 λβ iqoooPi tTttt == ++

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

26

Algoritmo Backward

Inicializacioacuten

Caacutelculo

Finalizacioacuten

1)( =jTβ

1 1

1

( ) ( ) ( )N

t t ij j t

j

i j a b oβ β + +=

=sum

sum=

=N

i

i iobiOp1

11 )()()()|( βπλ 11minus= Tt

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

Forward- Backward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Encontrar la secuencia maacutes probable de estados

ocultos dada una secuencia de observaciones

Ejemplo etiquetar palabras en una oracioacuten con su funcioacuten sintaacutectica

iquestEstados observables iquestEstados ocultos

Juan come naranjasNS NP OD

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Probabilidad parcial δ de alcanzar un estado

intermedio particular en el entramado

δ representa la probabilidad del camino maacutes probable a un estado

Para cada estado final hay un camino maacutes probable a ese estado

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi δ(it) es la maacutexima probabilidad de todas las

secuencias que terminan en el estado i en el tiempo t

En t=T tenemos las mejores probabilidades parciales y los mejores caminos parciales

El mejor camino global a T es el que lleva al estado con la mayor probabilidad

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En t=1

)()()1( 1obii isdot= πδ

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

27

Algoritmo de Viterbi En tgt1

A

B

C

Xhellip

Tltt-1 t-1 t

Pr(x en T=t) = maxi=ABC Pr(i en T=t-1) Pr(X|i) Pr(Ot|X)

)())1((max)( tiijj

obajtit sdotsdotminus= δδDr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En cada tiempo t recordamos el estado j que generoacute

δ(ti)

Se reconstruye el camino utilizando los punteros φhasta el tiempo t=1

ijj

ajtit )1(max)( sdotminus= δφ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi

)(max1

iP TNi

δlele

=lowast

)(maxarg1

iq TNi

T δlele

lowast =

P da la probabilidad de los mejores los estados

qT is la secuencia de estados oacuteptima(Q = q1q2hellipqT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

ForwardBackward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Dada un conjunto de secuencias de observaciones O=o1 o2

oK y la estructura general del HMM (cantidadde estados ocultos

y visibles) determinar los paraacutemetros del modelo M=(A B π) que mejor se ajustan a los datos de entrenamiento es decir

que maximice P(O | M)

Se utiliza el algoritmo de maximizacioacuten de la esperanza para

encontrar un maacuteximo local de P(O | M) algoritmo Baum-Welch

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Si los datos de entrenamiento tienen informacioacuten

acerca de la secuencia de estados ocultos los paraacutemetros se estiman como

xsestransicion

ssestransicionssPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

sveces

senodenesobservaciosoPob

)|()( ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

28

Algorimo Baum-Welch Idea general

xsestransiciondeesperado

ssestransiciondeesperadossPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

svecesdeesperado

senodenesobservaciodeesperadosoPob

)|()( ==

1)( === tparasenvecesdeesperadosP iiiπ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

ξt(ij)= P(qt= si qt+1= sj |o1 o2 oT)

ξt(ij)=P(qt= si qt+1= sj o1 o2 oT)

P(o1 o2 oT)=

P(qt= si o1 o2 ot) aij bj (ot+1 ) P(ot+2 oT | qt+1= sj ) P(o1 o2 oT)

=

=αt(i) aij bj (ot+1 ) βt+1(j)

ΣiΣj αt(i) aij bj (ot+1 ) βt+1(j)

αt(i) aij bj (ot+1 ) βt+1(j)

Σi αt(i) βt(i)Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

tiempo

Estados ocultos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch Definimos γt(i) como la probabilidad de estar en el

estado i en el tiempo t dadas las observaciones

Σt γt(i) - cantidad esperada de veces que visitoel estado i

Σt ξt(ij) - cantidad esperada de transiciones

sum=

=N

j

tt jii1

)()( ξγ

ji rarr

γt(i)= P(qt= si |o1 o2 oT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

sumsum

=)(

)(ˆ

i

jia

t

t

ijγ

ξ

sum

sum ==

)(

)()(ˆ

j

job

t

oot t

kjkt

γ

γ

)(ˆ1 iγπ = la frecuencia esperada del estado i en t=1

nuacutemero esperado de transiciones desde el estado i al estado j sobre la cantidad esperada de transiciones desde el estado i

cantidad de veces que se estuvo en el estado j observando el siacutembolo k sobre la cantidad de veces que se estuvo en el estado j

Dr Marcelo G Armentano - ISISTAN - UNICEN

Bibliografiacutea Bayesian Networks and Decision Graphs - Finn V

Jensen and Thomas D Nielsen - Springer Verlag -Second Edition - 2007

A tutorial on hidden Markov models and selected applications in speech recognition - Lawrence R Rabiner - Proceedings of the IEEE Vol 77 Nordm2 pp 257-286 - 1989

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

29

iquestConsultas

Dr Marcelo G Armentano - ISISTAN - UNICEN

Page 22: redes bayesianas UNICEN.pdf

03112011

22

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

i P(qt+1=S1|qt=Si)

P(qt+1=S2|qt=Si)

P(qt+1=Sj|qt=Si)

P(qt+1=SN

|qt=Si)

1 a11 a12 hellip a1j hellip a1N

2 a21 a22 hellip a2j hellip a2N

3 a31 a32 hellip a3j hellip a3N

hellip

i ai1 ai2 hellip aij hellip aiN

hellip

N aN1 aN2 hellip aNj hellip aNN

Todas estas tablas son

iguales

aij = P (qt+1=sj|qt=si)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

Red de Bayes

q1 q2 q3 q4

O1 O2 O3 O4

i P(Ot=1|qt=Si) P(Ot=2|qt=Si) P(Ot=j|qt=Si) P(Ot=N|qt=Si)

1 b1(1) b1(2) hellip b1(j) hellip b1(N)2 b2(1) b2(2) hellip b2(j) hellip b2(N)3 b3(1) b3(2) hellip b3(j) hellip b3(N)hellip

i Bi(1) bi(2) hellip bi(j) hellip bi(N)hellip

N bN(1) bN(2) hellip bN(j) hellip bN(N)

bi(j) = P (Ot=j|qt=si)

Todas estas tablas son

iguales

Dr Marcelo G Armentano - ISISTAN - UNICEN

Representacioacuten de un HMM como

un enrejado

s1

s2

si

sN

s1

s2

si

sN

s1

s2

sj

sN

s1

s2

si

sN

a1j

a2j

aij

aNj

1 k k+1 K

o1 ok ok+1 oKObservaciones

Tiempo

Ejemplo Casino tramposo

Un casino tiene dos dados Dado ldquojustordquo

P(1) = P(2) = P(3) = P(5) = P(6) = 16 Dado cargado

P(1) = P(2) = P(3) = P(4) = P(5) = 110P(6) = 12

El casino alterna entre el dado justo y el cargado una vezcada 20 turnos

Problemas a resolver con HMM Evaluacioacuten

Dado un HMM M=(A B π) y una secuencia de observaciones O=o1 o2 oK calcular la probabilidad de que el modelo M haya generado la secuencia O

Dr Marcelo G Armentano - ISISTAN - UNICEN

EvaluacioacutenDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestCuan probable es esta secuencia dado nuestromodelo de como opera el casino

Este es el problema de EVALUACIOacuteN en HMMs

03112011

23

Problemas a resolver con HMM Decodificacioacuten o inferencia

Dado un HMM M=(A B π) y una secuencia de observaciones O=o1 o2 oK calcular la secuencia de estados ocultos Si que maacutes probablemente produjo la secuencia de observaciones O

Dr Marcelo G Armentano - ISISTAN - UNICEN

DecodificacioacutenDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestQue partes de la secuencia fueron generadas por el dado cargado y cuales por el dado justo

Este es el problema de DECODIFICACIOacuteN en HMMs

Problemas a resolver con HMM Aprendizaje

Dado un conjunto de secuencias de observaciones de entrenamiento O=o1 o2 oK y la estructura general de HMM (cantidad de estados ocultos y cantidad de estados visibles) determinar los paraacutemetros del HMM M=(A B π) que mejor se ajustan a los datos de entrenamiento

Dr Marcelo G Armentano - ISISTAN - UNICEN

AprendizajeDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestCoacutemo estaacute cargado el dado cargado iquestCada cuantocambia el casino entre el dado cargado y el justo

Este es el problema de APRENDIZAJE en HMMs

El HMM del casino tramposo

JUSTO CARGADO

005

005

095095

P(1|Justo) = 16P(2|Justo) = 16P(3|Justo) = 16P(4|Justo) = 16P(5|Justo) = 16P(6|Justo) = 16

P(1|Cargado) = 110P(2|Cargado) = 110P(3|Cargado) = 110P(4|Cargado) = 110P(5|Cargado) = 110P(6|Cargado) = 12

Ejemplo reconocimiento de

palabras Se asume que los caracteres estaacuten separados

El reconocedorde caracteres da como salida la probabilidad de que una imagen corresponda a un caracterparticular P(caracter|imagen)

05

003

0005

031z

c

b

a

Estado Oculto

Estado Observable

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

24

Ejemplo reconocimiento de

palabras Estados Ocultos del HMM caracteres

Estados Observables imagenes de caracteres

Probabilidades de Observacioacutenαv

( ) ( ))|()( ii svPvbB αα ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo reconocimiento de

palabras Si se conoce el diccionario es posible construir un modelo

individual para cada palabra

bull Problema de evaluacioacuten reconocer la palabra en unaimagen es equivalente a evaluar un conjunto de modelos

amigos a m i g o s

buacutefalo b uacute f a l o

05 003 04 06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo reconocimiento de

palabras Podemos construir un HMM para todas las palabras

Estados ocultos los caracteres de las palabras

Probabilidades de transicioacuten calculadas a partir de modelos del lenguaje

Observaciones y probabilidades de observacioacuten iguales al ejemplo anterior

Problema de decodificacioacuten encontrar la secuencia de estados ocultos que maacutes probablemente generaron la imagen

a m

i g

o

s

t

b v

f

u

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

Forward-Backward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward

Seco Huacutemedo EmpapadoObs

Sol

Nubes

Lluvia

Sol

Nubes

Lluvia

Sol

Nubes

Lluvia

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward Pr(Seco Huacutemedo Empapado|M) =

Pr(seco huacutemedo empapado|sol sol sol) +

Pr(seco huacutemedo empapado|sol nubes sol) +

hellip

Pr(seco huacutemedo empapado|lluvia lluvia lluvia)

iexcliexclMuy Costoso

33 = 27 caacutelculos

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

25

Algoritmo Forward Reduccioacuten de la complejidad

Probabilidad parcial de alcanzar un estado intermedio en el entramado

Yk1 Yk2 hellip YkT

Sol

Nubes

Lluvia

Nubes

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward αt(j)= Pr(obs|estado oculto es j)

Pr( todos los caminos al estado j en el tiempo t)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward En el tiempo t=1

En el tiempo t gt1

α1(j)=π(j) Pr(obs|estado j)

αt(j)=Pr(todos los caminos a j) Pr(obs|estado j)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward

Terminacioacuten

Dr Marcelo G Armentano - ISISTAN - UNICEN

sum=

=n

j

T jMObs1

)()|Pr( α

sum=

++ =n

i

ijttjt ajobj1

11 )()()( αα

Algoritmo Forward

Sol

α1(sol)=π(sol) bsol(humedo)

Nubes

α1(nubes)=π(nubes) bnubes(humedo)

Lluvia

α1(lluvia)=π(lluvia) blluvia(humedo)

)()(secb )(nubesi1nubes2 sum sdotsdot=

iaionubes αα

Nubes

asolnubes

anubesnubes

alluvianubes

Huacutemedo Seco

Algoritmo Backward

Se define la variable β

)|()( 21 λβ iqoooPi tTttt == ++

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

26

Algoritmo Backward

Inicializacioacuten

Caacutelculo

Finalizacioacuten

1)( =jTβ

1 1

1

( ) ( ) ( )N

t t ij j t

j

i j a b oβ β + +=

=sum

sum=

=N

i

i iobiOp1

11 )()()()|( βπλ 11minus= Tt

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

Forward- Backward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Encontrar la secuencia maacutes probable de estados

ocultos dada una secuencia de observaciones

Ejemplo etiquetar palabras en una oracioacuten con su funcioacuten sintaacutectica

iquestEstados observables iquestEstados ocultos

Juan come naranjasNS NP OD

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Probabilidad parcial δ de alcanzar un estado

intermedio particular en el entramado

δ representa la probabilidad del camino maacutes probable a un estado

Para cada estado final hay un camino maacutes probable a ese estado

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi δ(it) es la maacutexima probabilidad de todas las

secuencias que terminan en el estado i en el tiempo t

En t=T tenemos las mejores probabilidades parciales y los mejores caminos parciales

El mejor camino global a T es el que lleva al estado con la mayor probabilidad

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En t=1

)()()1( 1obii isdot= πδ

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

27

Algoritmo de Viterbi En tgt1

A

B

C

Xhellip

Tltt-1 t-1 t

Pr(x en T=t) = maxi=ABC Pr(i en T=t-1) Pr(X|i) Pr(Ot|X)

)())1((max)( tiijj

obajtit sdotsdotminus= δδDr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En cada tiempo t recordamos el estado j que generoacute

δ(ti)

Se reconstruye el camino utilizando los punteros φhasta el tiempo t=1

ijj

ajtit )1(max)( sdotminus= δφ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi

)(max1

iP TNi

δlele

=lowast

)(maxarg1

iq TNi

T δlele

lowast =

P da la probabilidad de los mejores los estados

qT is la secuencia de estados oacuteptima(Q = q1q2hellipqT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

ForwardBackward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Dada un conjunto de secuencias de observaciones O=o1 o2

oK y la estructura general del HMM (cantidadde estados ocultos

y visibles) determinar los paraacutemetros del modelo M=(A B π) que mejor se ajustan a los datos de entrenamiento es decir

que maximice P(O | M)

Se utiliza el algoritmo de maximizacioacuten de la esperanza para

encontrar un maacuteximo local de P(O | M) algoritmo Baum-Welch

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Si los datos de entrenamiento tienen informacioacuten

acerca de la secuencia de estados ocultos los paraacutemetros se estiman como

xsestransicion

ssestransicionssPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

sveces

senodenesobservaciosoPob

)|()( ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

28

Algorimo Baum-Welch Idea general

xsestransiciondeesperado

ssestransiciondeesperadossPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

svecesdeesperado

senodenesobservaciodeesperadosoPob

)|()( ==

1)( === tparasenvecesdeesperadosP iiiπ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

ξt(ij)= P(qt= si qt+1= sj |o1 o2 oT)

ξt(ij)=P(qt= si qt+1= sj o1 o2 oT)

P(o1 o2 oT)=

P(qt= si o1 o2 ot) aij bj (ot+1 ) P(ot+2 oT | qt+1= sj ) P(o1 o2 oT)

=

=αt(i) aij bj (ot+1 ) βt+1(j)

ΣiΣj αt(i) aij bj (ot+1 ) βt+1(j)

αt(i) aij bj (ot+1 ) βt+1(j)

Σi αt(i) βt(i)Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

tiempo

Estados ocultos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch Definimos γt(i) como la probabilidad de estar en el

estado i en el tiempo t dadas las observaciones

Σt γt(i) - cantidad esperada de veces que visitoel estado i

Σt ξt(ij) - cantidad esperada de transiciones

sum=

=N

j

tt jii1

)()( ξγ

ji rarr

γt(i)= P(qt= si |o1 o2 oT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

sumsum

=)(

)(ˆ

i

jia

t

t

ijγ

ξ

sum

sum ==

)(

)()(ˆ

j

job

t

oot t

kjkt

γ

γ

)(ˆ1 iγπ = la frecuencia esperada del estado i en t=1

nuacutemero esperado de transiciones desde el estado i al estado j sobre la cantidad esperada de transiciones desde el estado i

cantidad de veces que se estuvo en el estado j observando el siacutembolo k sobre la cantidad de veces que se estuvo en el estado j

Dr Marcelo G Armentano - ISISTAN - UNICEN

Bibliografiacutea Bayesian Networks and Decision Graphs - Finn V

Jensen and Thomas D Nielsen - Springer Verlag -Second Edition - 2007

A tutorial on hidden Markov models and selected applications in speech recognition - Lawrence R Rabiner - Proceedings of the IEEE Vol 77 Nordm2 pp 257-286 - 1989

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

29

iquestConsultas

Dr Marcelo G Armentano - ISISTAN - UNICEN

Page 23: redes bayesianas UNICEN.pdf

03112011

23

Problemas a resolver con HMM Decodificacioacuten o inferencia

Dado un HMM M=(A B π) y una secuencia de observaciones O=o1 o2 oK calcular la secuencia de estados ocultos Si que maacutes probablemente produjo la secuencia de observaciones O

Dr Marcelo G Armentano - ISISTAN - UNICEN

DecodificacioacutenDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestQue partes de la secuencia fueron generadas por el dado cargado y cuales por el dado justo

Este es el problema de DECODIFICACIOacuteN en HMMs

Problemas a resolver con HMM Aprendizaje

Dado un conjunto de secuencias de observaciones de entrenamiento O=o1 o2 oK y la estructura general de HMM (cantidad de estados ocultos y cantidad de estados visibles) determinar los paraacutemetros del HMM M=(A B π) que mejor se ajustan a los datos de entrenamiento

Dr Marcelo G Armentano - ISISTAN - UNICEN

AprendizajeDada una secuencia de tiradas del casino

1245526462146146136136661664661636616366163616515615115146123562344

iquestCoacutemo estaacute cargado el dado cargado iquestCada cuantocambia el casino entre el dado cargado y el justo

Este es el problema de APRENDIZAJE en HMMs

El HMM del casino tramposo

JUSTO CARGADO

005

005

095095

P(1|Justo) = 16P(2|Justo) = 16P(3|Justo) = 16P(4|Justo) = 16P(5|Justo) = 16P(6|Justo) = 16

P(1|Cargado) = 110P(2|Cargado) = 110P(3|Cargado) = 110P(4|Cargado) = 110P(5|Cargado) = 110P(6|Cargado) = 12

Ejemplo reconocimiento de

palabras Se asume que los caracteres estaacuten separados

El reconocedorde caracteres da como salida la probabilidad de que una imagen corresponda a un caracterparticular P(caracter|imagen)

05

003

0005

031z

c

b

a

Estado Oculto

Estado Observable

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

24

Ejemplo reconocimiento de

palabras Estados Ocultos del HMM caracteres

Estados Observables imagenes de caracteres

Probabilidades de Observacioacutenαv

( ) ( ))|()( ii svPvbB αα ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo reconocimiento de

palabras Si se conoce el diccionario es posible construir un modelo

individual para cada palabra

bull Problema de evaluacioacuten reconocer la palabra en unaimagen es equivalente a evaluar un conjunto de modelos

amigos a m i g o s

buacutefalo b uacute f a l o

05 003 04 06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo reconocimiento de

palabras Podemos construir un HMM para todas las palabras

Estados ocultos los caracteres de las palabras

Probabilidades de transicioacuten calculadas a partir de modelos del lenguaje

Observaciones y probabilidades de observacioacuten iguales al ejemplo anterior

Problema de decodificacioacuten encontrar la secuencia de estados ocultos que maacutes probablemente generaron la imagen

a m

i g

o

s

t

b v

f

u

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

Forward-Backward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward

Seco Huacutemedo EmpapadoObs

Sol

Nubes

Lluvia

Sol

Nubes

Lluvia

Sol

Nubes

Lluvia

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward Pr(Seco Huacutemedo Empapado|M) =

Pr(seco huacutemedo empapado|sol sol sol) +

Pr(seco huacutemedo empapado|sol nubes sol) +

hellip

Pr(seco huacutemedo empapado|lluvia lluvia lluvia)

iexcliexclMuy Costoso

33 = 27 caacutelculos

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

25

Algoritmo Forward Reduccioacuten de la complejidad

Probabilidad parcial de alcanzar un estado intermedio en el entramado

Yk1 Yk2 hellip YkT

Sol

Nubes

Lluvia

Nubes

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward αt(j)= Pr(obs|estado oculto es j)

Pr( todos los caminos al estado j en el tiempo t)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward En el tiempo t=1

En el tiempo t gt1

α1(j)=π(j) Pr(obs|estado j)

αt(j)=Pr(todos los caminos a j) Pr(obs|estado j)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward

Terminacioacuten

Dr Marcelo G Armentano - ISISTAN - UNICEN

sum=

=n

j

T jMObs1

)()|Pr( α

sum=

++ =n

i

ijttjt ajobj1

11 )()()( αα

Algoritmo Forward

Sol

α1(sol)=π(sol) bsol(humedo)

Nubes

α1(nubes)=π(nubes) bnubes(humedo)

Lluvia

α1(lluvia)=π(lluvia) blluvia(humedo)

)()(secb )(nubesi1nubes2 sum sdotsdot=

iaionubes αα

Nubes

asolnubes

anubesnubes

alluvianubes

Huacutemedo Seco

Algoritmo Backward

Se define la variable β

)|()( 21 λβ iqoooPi tTttt == ++

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

26

Algoritmo Backward

Inicializacioacuten

Caacutelculo

Finalizacioacuten

1)( =jTβ

1 1

1

( ) ( ) ( )N

t t ij j t

j

i j a b oβ β + +=

=sum

sum=

=N

i

i iobiOp1

11 )()()()|( βπλ 11minus= Tt

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

Forward- Backward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Encontrar la secuencia maacutes probable de estados

ocultos dada una secuencia de observaciones

Ejemplo etiquetar palabras en una oracioacuten con su funcioacuten sintaacutectica

iquestEstados observables iquestEstados ocultos

Juan come naranjasNS NP OD

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Probabilidad parcial δ de alcanzar un estado

intermedio particular en el entramado

δ representa la probabilidad del camino maacutes probable a un estado

Para cada estado final hay un camino maacutes probable a ese estado

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi δ(it) es la maacutexima probabilidad de todas las

secuencias que terminan en el estado i en el tiempo t

En t=T tenemos las mejores probabilidades parciales y los mejores caminos parciales

El mejor camino global a T es el que lleva al estado con la mayor probabilidad

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En t=1

)()()1( 1obii isdot= πδ

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

27

Algoritmo de Viterbi En tgt1

A

B

C

Xhellip

Tltt-1 t-1 t

Pr(x en T=t) = maxi=ABC Pr(i en T=t-1) Pr(X|i) Pr(Ot|X)

)())1((max)( tiijj

obajtit sdotsdotminus= δδDr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En cada tiempo t recordamos el estado j que generoacute

δ(ti)

Se reconstruye el camino utilizando los punteros φhasta el tiempo t=1

ijj

ajtit )1(max)( sdotminus= δφ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi

)(max1

iP TNi

δlele

=lowast

)(maxarg1

iq TNi

T δlele

lowast =

P da la probabilidad de los mejores los estados

qT is la secuencia de estados oacuteptima(Q = q1q2hellipqT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

ForwardBackward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Dada un conjunto de secuencias de observaciones O=o1 o2

oK y la estructura general del HMM (cantidadde estados ocultos

y visibles) determinar los paraacutemetros del modelo M=(A B π) que mejor se ajustan a los datos de entrenamiento es decir

que maximice P(O | M)

Se utiliza el algoritmo de maximizacioacuten de la esperanza para

encontrar un maacuteximo local de P(O | M) algoritmo Baum-Welch

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Si los datos de entrenamiento tienen informacioacuten

acerca de la secuencia de estados ocultos los paraacutemetros se estiman como

xsestransicion

ssestransicionssPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

sveces

senodenesobservaciosoPob

)|()( ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

28

Algorimo Baum-Welch Idea general

xsestransiciondeesperado

ssestransiciondeesperadossPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

svecesdeesperado

senodenesobservaciodeesperadosoPob

)|()( ==

1)( === tparasenvecesdeesperadosP iiiπ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

ξt(ij)= P(qt= si qt+1= sj |o1 o2 oT)

ξt(ij)=P(qt= si qt+1= sj o1 o2 oT)

P(o1 o2 oT)=

P(qt= si o1 o2 ot) aij bj (ot+1 ) P(ot+2 oT | qt+1= sj ) P(o1 o2 oT)

=

=αt(i) aij bj (ot+1 ) βt+1(j)

ΣiΣj αt(i) aij bj (ot+1 ) βt+1(j)

αt(i) aij bj (ot+1 ) βt+1(j)

Σi αt(i) βt(i)Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

tiempo

Estados ocultos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch Definimos γt(i) como la probabilidad de estar en el

estado i en el tiempo t dadas las observaciones

Σt γt(i) - cantidad esperada de veces que visitoel estado i

Σt ξt(ij) - cantidad esperada de transiciones

sum=

=N

j

tt jii1

)()( ξγ

ji rarr

γt(i)= P(qt= si |o1 o2 oT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

sumsum

=)(

)(ˆ

i

jia

t

t

ijγ

ξ

sum

sum ==

)(

)()(ˆ

j

job

t

oot t

kjkt

γ

γ

)(ˆ1 iγπ = la frecuencia esperada del estado i en t=1

nuacutemero esperado de transiciones desde el estado i al estado j sobre la cantidad esperada de transiciones desde el estado i

cantidad de veces que se estuvo en el estado j observando el siacutembolo k sobre la cantidad de veces que se estuvo en el estado j

Dr Marcelo G Armentano - ISISTAN - UNICEN

Bibliografiacutea Bayesian Networks and Decision Graphs - Finn V

Jensen and Thomas D Nielsen - Springer Verlag -Second Edition - 2007

A tutorial on hidden Markov models and selected applications in speech recognition - Lawrence R Rabiner - Proceedings of the IEEE Vol 77 Nordm2 pp 257-286 - 1989

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

29

iquestConsultas

Dr Marcelo G Armentano - ISISTAN - UNICEN

Page 24: redes bayesianas UNICEN.pdf

03112011

24

Ejemplo reconocimiento de

palabras Estados Ocultos del HMM caracteres

Estados Observables imagenes de caracteres

Probabilidades de Observacioacutenαv

( ) ( ))|()( ii svPvbB αα ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo reconocimiento de

palabras Si se conoce el diccionario es posible construir un modelo

individual para cada palabra

bull Problema de evaluacioacuten reconocer la palabra en unaimagen es equivalente a evaluar un conjunto de modelos

amigos a m i g o s

buacutefalo b uacute f a l o

05 003 04 06

Dr Marcelo G Armentano - ISISTAN - UNICEN

Ejemplo reconocimiento de

palabras Podemos construir un HMM para todas las palabras

Estados ocultos los caracteres de las palabras

Probabilidades de transicioacuten calculadas a partir de modelos del lenguaje

Observaciones y probabilidades de observacioacuten iguales al ejemplo anterior

Problema de decodificacioacuten encontrar la secuencia de estados ocultos que maacutes probablemente generaron la imagen

a m

i g

o

s

t

b v

f

u

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

Forward-Backward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward

Seco Huacutemedo EmpapadoObs

Sol

Nubes

Lluvia

Sol

Nubes

Lluvia

Sol

Nubes

Lluvia

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward Pr(Seco Huacutemedo Empapado|M) =

Pr(seco huacutemedo empapado|sol sol sol) +

Pr(seco huacutemedo empapado|sol nubes sol) +

hellip

Pr(seco huacutemedo empapado|lluvia lluvia lluvia)

iexcliexclMuy Costoso

33 = 27 caacutelculos

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

25

Algoritmo Forward Reduccioacuten de la complejidad

Probabilidad parcial de alcanzar un estado intermedio en el entramado

Yk1 Yk2 hellip YkT

Sol

Nubes

Lluvia

Nubes

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward αt(j)= Pr(obs|estado oculto es j)

Pr( todos los caminos al estado j en el tiempo t)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward En el tiempo t=1

En el tiempo t gt1

α1(j)=π(j) Pr(obs|estado j)

αt(j)=Pr(todos los caminos a j) Pr(obs|estado j)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward

Terminacioacuten

Dr Marcelo G Armentano - ISISTAN - UNICEN

sum=

=n

j

T jMObs1

)()|Pr( α

sum=

++ =n

i

ijttjt ajobj1

11 )()()( αα

Algoritmo Forward

Sol

α1(sol)=π(sol) bsol(humedo)

Nubes

α1(nubes)=π(nubes) bnubes(humedo)

Lluvia

α1(lluvia)=π(lluvia) blluvia(humedo)

)()(secb )(nubesi1nubes2 sum sdotsdot=

iaionubes αα

Nubes

asolnubes

anubesnubes

alluvianubes

Huacutemedo Seco

Algoritmo Backward

Se define la variable β

)|()( 21 λβ iqoooPi tTttt == ++

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

26

Algoritmo Backward

Inicializacioacuten

Caacutelculo

Finalizacioacuten

1)( =jTβ

1 1

1

( ) ( ) ( )N

t t ij j t

j

i j a b oβ β + +=

=sum

sum=

=N

i

i iobiOp1

11 )()()()|( βπλ 11minus= Tt

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

Forward- Backward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Encontrar la secuencia maacutes probable de estados

ocultos dada una secuencia de observaciones

Ejemplo etiquetar palabras en una oracioacuten con su funcioacuten sintaacutectica

iquestEstados observables iquestEstados ocultos

Juan come naranjasNS NP OD

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Probabilidad parcial δ de alcanzar un estado

intermedio particular en el entramado

δ representa la probabilidad del camino maacutes probable a un estado

Para cada estado final hay un camino maacutes probable a ese estado

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi δ(it) es la maacutexima probabilidad de todas las

secuencias que terminan en el estado i en el tiempo t

En t=T tenemos las mejores probabilidades parciales y los mejores caminos parciales

El mejor camino global a T es el que lleva al estado con la mayor probabilidad

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En t=1

)()()1( 1obii isdot= πδ

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

27

Algoritmo de Viterbi En tgt1

A

B

C

Xhellip

Tltt-1 t-1 t

Pr(x en T=t) = maxi=ABC Pr(i en T=t-1) Pr(X|i) Pr(Ot|X)

)())1((max)( tiijj

obajtit sdotsdotminus= δδDr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En cada tiempo t recordamos el estado j que generoacute

δ(ti)

Se reconstruye el camino utilizando los punteros φhasta el tiempo t=1

ijj

ajtit )1(max)( sdotminus= δφ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi

)(max1

iP TNi

δlele

=lowast

)(maxarg1

iq TNi

T δlele

lowast =

P da la probabilidad de los mejores los estados

qT is la secuencia de estados oacuteptima(Q = q1q2hellipqT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

ForwardBackward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Dada un conjunto de secuencias de observaciones O=o1 o2

oK y la estructura general del HMM (cantidadde estados ocultos

y visibles) determinar los paraacutemetros del modelo M=(A B π) que mejor se ajustan a los datos de entrenamiento es decir

que maximice P(O | M)

Se utiliza el algoritmo de maximizacioacuten de la esperanza para

encontrar un maacuteximo local de P(O | M) algoritmo Baum-Welch

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Si los datos de entrenamiento tienen informacioacuten

acerca de la secuencia de estados ocultos los paraacutemetros se estiman como

xsestransicion

ssestransicionssPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

sveces

senodenesobservaciosoPob

)|()( ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

28

Algorimo Baum-Welch Idea general

xsestransiciondeesperado

ssestransiciondeesperadossPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

svecesdeesperado

senodenesobservaciodeesperadosoPob

)|()( ==

1)( === tparasenvecesdeesperadosP iiiπ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

ξt(ij)= P(qt= si qt+1= sj |o1 o2 oT)

ξt(ij)=P(qt= si qt+1= sj o1 o2 oT)

P(o1 o2 oT)=

P(qt= si o1 o2 ot) aij bj (ot+1 ) P(ot+2 oT | qt+1= sj ) P(o1 o2 oT)

=

=αt(i) aij bj (ot+1 ) βt+1(j)

ΣiΣj αt(i) aij bj (ot+1 ) βt+1(j)

αt(i) aij bj (ot+1 ) βt+1(j)

Σi αt(i) βt(i)Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

tiempo

Estados ocultos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch Definimos γt(i) como la probabilidad de estar en el

estado i en el tiempo t dadas las observaciones

Σt γt(i) - cantidad esperada de veces que visitoel estado i

Σt ξt(ij) - cantidad esperada de transiciones

sum=

=N

j

tt jii1

)()( ξγ

ji rarr

γt(i)= P(qt= si |o1 o2 oT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

sumsum

=)(

)(ˆ

i

jia

t

t

ijγ

ξ

sum

sum ==

)(

)()(ˆ

j

job

t

oot t

kjkt

γ

γ

)(ˆ1 iγπ = la frecuencia esperada del estado i en t=1

nuacutemero esperado de transiciones desde el estado i al estado j sobre la cantidad esperada de transiciones desde el estado i

cantidad de veces que se estuvo en el estado j observando el siacutembolo k sobre la cantidad de veces que se estuvo en el estado j

Dr Marcelo G Armentano - ISISTAN - UNICEN

Bibliografiacutea Bayesian Networks and Decision Graphs - Finn V

Jensen and Thomas D Nielsen - Springer Verlag -Second Edition - 2007

A tutorial on hidden Markov models and selected applications in speech recognition - Lawrence R Rabiner - Proceedings of the IEEE Vol 77 Nordm2 pp 257-286 - 1989

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

29

iquestConsultas

Dr Marcelo G Armentano - ISISTAN - UNICEN

Page 25: redes bayesianas UNICEN.pdf

03112011

25

Algoritmo Forward Reduccioacuten de la complejidad

Probabilidad parcial de alcanzar un estado intermedio en el entramado

Yk1 Yk2 hellip YkT

Sol

Nubes

Lluvia

Nubes

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward αt(j)= Pr(obs|estado oculto es j)

Pr( todos los caminos al estado j en el tiempo t)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward En el tiempo t=1

En el tiempo t gt1

α1(j)=π(j) Pr(obs|estado j)

αt(j)=Pr(todos los caminos a j) Pr(obs|estado j)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Forward

Terminacioacuten

Dr Marcelo G Armentano - ISISTAN - UNICEN

sum=

=n

j

T jMObs1

)()|Pr( α

sum=

++ =n

i

ijttjt ajobj1

11 )()()( αα

Algoritmo Forward

Sol

α1(sol)=π(sol) bsol(humedo)

Nubes

α1(nubes)=π(nubes) bnubes(humedo)

Lluvia

α1(lluvia)=π(lluvia) blluvia(humedo)

)()(secb )(nubesi1nubes2 sum sdotsdot=

iaionubes αα

Nubes

asolnubes

anubesnubes

alluvianubes

Huacutemedo Seco

Algoritmo Backward

Se define la variable β

)|()( 21 λβ iqoooPi tTttt == ++

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

26

Algoritmo Backward

Inicializacioacuten

Caacutelculo

Finalizacioacuten

1)( =jTβ

1 1

1

( ) ( ) ( )N

t t ij j t

j

i j a b oβ β + +=

=sum

sum=

=N

i

i iobiOp1

11 )()()()|( βπλ 11minus= Tt

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

Forward- Backward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Encontrar la secuencia maacutes probable de estados

ocultos dada una secuencia de observaciones

Ejemplo etiquetar palabras en una oracioacuten con su funcioacuten sintaacutectica

iquestEstados observables iquestEstados ocultos

Juan come naranjasNS NP OD

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Probabilidad parcial δ de alcanzar un estado

intermedio particular en el entramado

δ representa la probabilidad del camino maacutes probable a un estado

Para cada estado final hay un camino maacutes probable a ese estado

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi δ(it) es la maacutexima probabilidad de todas las

secuencias que terminan en el estado i en el tiempo t

En t=T tenemos las mejores probabilidades parciales y los mejores caminos parciales

El mejor camino global a T es el que lleva al estado con la mayor probabilidad

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En t=1

)()()1( 1obii isdot= πδ

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

27

Algoritmo de Viterbi En tgt1

A

B

C

Xhellip

Tltt-1 t-1 t

Pr(x en T=t) = maxi=ABC Pr(i en T=t-1) Pr(X|i) Pr(Ot|X)

)())1((max)( tiijj

obajtit sdotsdotminus= δδDr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En cada tiempo t recordamos el estado j que generoacute

δ(ti)

Se reconstruye el camino utilizando los punteros φhasta el tiempo t=1

ijj

ajtit )1(max)( sdotminus= δφ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi

)(max1

iP TNi

δlele

=lowast

)(maxarg1

iq TNi

T δlele

lowast =

P da la probabilidad de los mejores los estados

qT is la secuencia de estados oacuteptima(Q = q1q2hellipqT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

ForwardBackward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Dada un conjunto de secuencias de observaciones O=o1 o2

oK y la estructura general del HMM (cantidadde estados ocultos

y visibles) determinar los paraacutemetros del modelo M=(A B π) que mejor se ajustan a los datos de entrenamiento es decir

que maximice P(O | M)

Se utiliza el algoritmo de maximizacioacuten de la esperanza para

encontrar un maacuteximo local de P(O | M) algoritmo Baum-Welch

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Si los datos de entrenamiento tienen informacioacuten

acerca de la secuencia de estados ocultos los paraacutemetros se estiman como

xsestransicion

ssestransicionssPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

sveces

senodenesobservaciosoPob

)|()( ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

28

Algorimo Baum-Welch Idea general

xsestransiciondeesperado

ssestransiciondeesperadossPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

svecesdeesperado

senodenesobservaciodeesperadosoPob

)|()( ==

1)( === tparasenvecesdeesperadosP iiiπ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

ξt(ij)= P(qt= si qt+1= sj |o1 o2 oT)

ξt(ij)=P(qt= si qt+1= sj o1 o2 oT)

P(o1 o2 oT)=

P(qt= si o1 o2 ot) aij bj (ot+1 ) P(ot+2 oT | qt+1= sj ) P(o1 o2 oT)

=

=αt(i) aij bj (ot+1 ) βt+1(j)

ΣiΣj αt(i) aij bj (ot+1 ) βt+1(j)

αt(i) aij bj (ot+1 ) βt+1(j)

Σi αt(i) βt(i)Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

tiempo

Estados ocultos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch Definimos γt(i) como la probabilidad de estar en el

estado i en el tiempo t dadas las observaciones

Σt γt(i) - cantidad esperada de veces que visitoel estado i

Σt ξt(ij) - cantidad esperada de transiciones

sum=

=N

j

tt jii1

)()( ξγ

ji rarr

γt(i)= P(qt= si |o1 o2 oT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

sumsum

=)(

)(ˆ

i

jia

t

t

ijγ

ξ

sum

sum ==

)(

)()(ˆ

j

job

t

oot t

kjkt

γ

γ

)(ˆ1 iγπ = la frecuencia esperada del estado i en t=1

nuacutemero esperado de transiciones desde el estado i al estado j sobre la cantidad esperada de transiciones desde el estado i

cantidad de veces que se estuvo en el estado j observando el siacutembolo k sobre la cantidad de veces que se estuvo en el estado j

Dr Marcelo G Armentano - ISISTAN - UNICEN

Bibliografiacutea Bayesian Networks and Decision Graphs - Finn V

Jensen and Thomas D Nielsen - Springer Verlag -Second Edition - 2007

A tutorial on hidden Markov models and selected applications in speech recognition - Lawrence R Rabiner - Proceedings of the IEEE Vol 77 Nordm2 pp 257-286 - 1989

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

29

iquestConsultas

Dr Marcelo G Armentano - ISISTAN - UNICEN

Page 26: redes bayesianas UNICEN.pdf

03112011

26

Algoritmo Backward

Inicializacioacuten

Caacutelculo

Finalizacioacuten

1)( =jTβ

1 1

1

( ) ( ) ( )N

t t ij j t

j

i j a b oβ β + +=

=sum

sum=

=N

i

i iobiOp1

11 )()()()|( βπλ 11minus= Tt

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

Forward- Backward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Encontrar la secuencia maacutes probable de estados

ocultos dada una secuencia de observaciones

Ejemplo etiquetar palabras en una oracioacuten con su funcioacuten sintaacutectica

iquestEstados observables iquestEstados ocultos

Juan come naranjasNS NP OD

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi Probabilidad parcial δ de alcanzar un estado

intermedio particular en el entramado

δ representa la probabilidad del camino maacutes probable a un estado

Para cada estado final hay un camino maacutes probable a ese estado

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi δ(it) es la maacutexima probabilidad de todas las

secuencias que terminan en el estado i en el tiempo t

En t=T tenemos las mejores probabilidades parciales y los mejores caminos parciales

El mejor camino global a T es el que lleva al estado con la mayor probabilidad

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En t=1

)()()1( 1obii isdot= πδ

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

27

Algoritmo de Viterbi En tgt1

A

B

C

Xhellip

Tltt-1 t-1 t

Pr(x en T=t) = maxi=ABC Pr(i en T=t-1) Pr(X|i) Pr(Ot|X)

)())1((max)( tiijj

obajtit sdotsdotminus= δδDr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En cada tiempo t recordamos el estado j que generoacute

δ(ti)

Se reconstruye el camino utilizando los punteros φhasta el tiempo t=1

ijj

ajtit )1(max)( sdotminus= δφ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi

)(max1

iP TNi

δlele

=lowast

)(maxarg1

iq TNi

T δlele

lowast =

P da la probabilidad de los mejores los estados

qT is la secuencia de estados oacuteptima(Q = q1q2hellipqT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

ForwardBackward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Dada un conjunto de secuencias de observaciones O=o1 o2

oK y la estructura general del HMM (cantidadde estados ocultos

y visibles) determinar los paraacutemetros del modelo M=(A B π) que mejor se ajustan a los datos de entrenamiento es decir

que maximice P(O | M)

Se utiliza el algoritmo de maximizacioacuten de la esperanza para

encontrar un maacuteximo local de P(O | M) algoritmo Baum-Welch

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Si los datos de entrenamiento tienen informacioacuten

acerca de la secuencia de estados ocultos los paraacutemetros se estiman como

xsestransicion

ssestransicionssPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

sveces

senodenesobservaciosoPob

)|()( ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

28

Algorimo Baum-Welch Idea general

xsestransiciondeesperado

ssestransiciondeesperadossPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

svecesdeesperado

senodenesobservaciodeesperadosoPob

)|()( ==

1)( === tparasenvecesdeesperadosP iiiπ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

ξt(ij)= P(qt= si qt+1= sj |o1 o2 oT)

ξt(ij)=P(qt= si qt+1= sj o1 o2 oT)

P(o1 o2 oT)=

P(qt= si o1 o2 ot) aij bj (ot+1 ) P(ot+2 oT | qt+1= sj ) P(o1 o2 oT)

=

=αt(i) aij bj (ot+1 ) βt+1(j)

ΣiΣj αt(i) aij bj (ot+1 ) βt+1(j)

αt(i) aij bj (ot+1 ) βt+1(j)

Σi αt(i) βt(i)Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

tiempo

Estados ocultos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch Definimos γt(i) como la probabilidad de estar en el

estado i en el tiempo t dadas las observaciones

Σt γt(i) - cantidad esperada de veces que visitoel estado i

Σt ξt(ij) - cantidad esperada de transiciones

sum=

=N

j

tt jii1

)()( ξγ

ji rarr

γt(i)= P(qt= si |o1 o2 oT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

sumsum

=)(

)(ˆ

i

jia

t

t

ijγ

ξ

sum

sum ==

)(

)()(ˆ

j

job

t

oot t

kjkt

γ

γ

)(ˆ1 iγπ = la frecuencia esperada del estado i en t=1

nuacutemero esperado de transiciones desde el estado i al estado j sobre la cantidad esperada de transiciones desde el estado i

cantidad de veces que se estuvo en el estado j observando el siacutembolo k sobre la cantidad de veces que se estuvo en el estado j

Dr Marcelo G Armentano - ISISTAN - UNICEN

Bibliografiacutea Bayesian Networks and Decision Graphs - Finn V

Jensen and Thomas D Nielsen - Springer Verlag -Second Edition - 2007

A tutorial on hidden Markov models and selected applications in speech recognition - Lawrence R Rabiner - Proceedings of the IEEE Vol 77 Nordm2 pp 257-286 - 1989

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

29

iquestConsultas

Dr Marcelo G Armentano - ISISTAN - UNICEN

Page 27: redes bayesianas UNICEN.pdf

03112011

27

Algoritmo de Viterbi En tgt1

A

B

C

Xhellip

Tltt-1 t-1 t

Pr(x en T=t) = maxi=ABC Pr(i en T=t-1) Pr(X|i) Pr(Ot|X)

)())1((max)( tiijj

obajtit sdotsdotminus= δδDr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi En cada tiempo t recordamos el estado j que generoacute

δ(ti)

Se reconstruye el camino utilizando los punteros φhasta el tiempo t=1

ijj

ajtit )1(max)( sdotminus= δφ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo de Viterbi

)(max1

iP TNi

δlele

=lowast

)(maxarg1

iq TNi

T δlele

lowast =

P da la probabilidad de los mejores los estados

qT is la secuencia de estados oacuteptima(Q = q1q2hellipqT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Problemas a resolver con HMM Dada una secuencia de observaciones O1 O2hellip OT

Problema Algoritmo Complejidad

Evaluacioacuten Calcular P(O|M)

ForwardBackward (TN2)

Inferencia Calcular Q=argmaxQP(Q|OM)

Viterbi Decoding (TN2)

Aprendizaje Calcular M= argmaxMP(O|M)

Baum-Welch (EM) (TN2)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Dada un conjunto de secuencias de observaciones O=o1 o2

oK y la estructura general del HMM (cantidadde estados ocultos

y visibles) determinar los paraacutemetros del modelo M=(A B π) que mejor se ajustan a los datos de entrenamiento es decir

que maximice P(O | M)

Se utiliza el algoritmo de maximizacioacuten de la esperanza para

encontrar un maacuteximo local de P(O | M) algoritmo Baum-Welch

Dr Marcelo G Armentano - ISISTAN - UNICEN

Aprendizaje Si los datos de entrenamiento tienen informacioacuten

acerca de la secuencia de estados ocultos los paraacutemetros se estiman como

xsestransicion

ssestransicionssPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

sveces

senodenesobservaciosoPob

)|()( ==

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

28

Algorimo Baum-Welch Idea general

xsestransiciondeesperado

ssestransiciondeesperadossPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

svecesdeesperado

senodenesobservaciodeesperadosoPob

)|()( ==

1)( === tparasenvecesdeesperadosP iiiπ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

ξt(ij)= P(qt= si qt+1= sj |o1 o2 oT)

ξt(ij)=P(qt= si qt+1= sj o1 o2 oT)

P(o1 o2 oT)=

P(qt= si o1 o2 ot) aij bj (ot+1 ) P(ot+2 oT | qt+1= sj ) P(o1 o2 oT)

=

=αt(i) aij bj (ot+1 ) βt+1(j)

ΣiΣj αt(i) aij bj (ot+1 ) βt+1(j)

αt(i) aij bj (ot+1 ) βt+1(j)

Σi αt(i) βt(i)Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

tiempo

Estados ocultos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch Definimos γt(i) como la probabilidad de estar en el

estado i en el tiempo t dadas las observaciones

Σt γt(i) - cantidad esperada de veces que visitoel estado i

Σt ξt(ij) - cantidad esperada de transiciones

sum=

=N

j

tt jii1

)()( ξγ

ji rarr

γt(i)= P(qt= si |o1 o2 oT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

sumsum

=)(

)(ˆ

i

jia

t

t

ijγ

ξ

sum

sum ==

)(

)()(ˆ

j

job

t

oot t

kjkt

γ

γ

)(ˆ1 iγπ = la frecuencia esperada del estado i en t=1

nuacutemero esperado de transiciones desde el estado i al estado j sobre la cantidad esperada de transiciones desde el estado i

cantidad de veces que se estuvo en el estado j observando el siacutembolo k sobre la cantidad de veces que se estuvo en el estado j

Dr Marcelo G Armentano - ISISTAN - UNICEN

Bibliografiacutea Bayesian Networks and Decision Graphs - Finn V

Jensen and Thomas D Nielsen - Springer Verlag -Second Edition - 2007

A tutorial on hidden Markov models and selected applications in speech recognition - Lawrence R Rabiner - Proceedings of the IEEE Vol 77 Nordm2 pp 257-286 - 1989

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

29

iquestConsultas

Dr Marcelo G Armentano - ISISTAN - UNICEN

Page 28: redes bayesianas UNICEN.pdf

03112011

28

Algorimo Baum-Welch Idea general

xsestransiciondeesperado

ssestransiciondeesperadossPa

j

ij

jijirarr

rarr==

)|(

i

imimmi

svecesdeesperado

senodenesobservaciodeesperadosoPob

)|()( ==

1)( === tparasenvecesdeesperadosP iiiπ

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

ξt(ij)= P(qt= si qt+1= sj |o1 o2 oT)

ξt(ij)=P(qt= si qt+1= sj o1 o2 oT)

P(o1 o2 oT)=

P(qt= si o1 o2 ot) aij bj (ot+1 ) P(ot+2 oT | qt+1= sj ) P(o1 o2 oT)

=

=αt(i) aij bj (ot+1 ) βt+1(j)

ΣiΣj αt(i) aij bj (ot+1 ) βt+1(j)

αt(i) aij bj (ot+1 ) βt+1(j)

Σi αt(i) βt(i)Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

tiempo

Estados ocultos

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch Definimos γt(i) como la probabilidad de estar en el

estado i en el tiempo t dadas las observaciones

Σt γt(i) - cantidad esperada de veces que visitoel estado i

Σt ξt(ij) - cantidad esperada de transiciones

sum=

=N

j

tt jii1

)()( ξγ

ji rarr

γt(i)= P(qt= si |o1 o2 oT)

Dr Marcelo G Armentano - ISISTAN - UNICEN

Algoritmo Baum-Welch

sumsum

=)(

)(ˆ

i

jia

t

t

ijγ

ξ

sum

sum ==

)(

)()(ˆ

j

job

t

oot t

kjkt

γ

γ

)(ˆ1 iγπ = la frecuencia esperada del estado i en t=1

nuacutemero esperado de transiciones desde el estado i al estado j sobre la cantidad esperada de transiciones desde el estado i

cantidad de veces que se estuvo en el estado j observando el siacutembolo k sobre la cantidad de veces que se estuvo en el estado j

Dr Marcelo G Armentano - ISISTAN - UNICEN

Bibliografiacutea Bayesian Networks and Decision Graphs - Finn V

Jensen and Thomas D Nielsen - Springer Verlag -Second Edition - 2007

A tutorial on hidden Markov models and selected applications in speech recognition - Lawrence R Rabiner - Proceedings of the IEEE Vol 77 Nordm2 pp 257-286 - 1989

Dr Marcelo G Armentano - ISISTAN - UNICEN

03112011

29

iquestConsultas

Dr Marcelo G Armentano - ISISTAN - UNICEN

Page 29: redes bayesianas UNICEN.pdf

03112011

29

iquestConsultas

Dr Marcelo G Armentano - ISISTAN - UNICEN