Download - 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
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
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 =
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
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
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
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
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
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
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
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
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 =
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
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
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
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
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
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
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
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 =
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
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
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
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
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
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
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 =
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
03112011
29
iquestConsultas
Dr Marcelo G Armentano - ISISTAN - UNICEN