Title: Universidad Nacional de Colombia Facultad de Ingenier
1Universidad Nacional de ColombiaFacultad de
IngenieríaDepartamento de Ingeniería Industrial
y de SistemasBiología Computacional
MODELOS OCULTOS DE MARKOV (Hidden Markov Models
,HMMs)
2CONTENIDO
- Generalidades de los HMMs
3GENERALIDADES DE LOS HMMs
- Modelos ocultos de Markov HMMs
- Problemas fundamentales de los HMMs
4CADENAS DE MARKOV
- Una cadena de Markov es un proceso estocástico
de tiempo discreto - Xt t? T
- definido por
- Espacio de estados S 1,2, ...
,N - Probabilidad de transición A (aij )N x N
- Probabilidad inicial ? (?1, ,?N)
5Propiedades
ai j
i
j
aij ? 0
propiedad 1
propiedad 3
propiedad 2
6Ejemplo
7Ampliación a Modelos Ocultos de Markov
Cada estado corresponde a un evento
determinísticamente observable
Modelo restringido no aplicable a ciertos
problemas importantes.
Ampliar el concepto de modelo de Markov para
incluir el caso en el cual la observación es una
función probabilística del estado
Modelo resultante
8Modelos ocultos de Markov
Un Hidden Markov Model (HMM) es un proceso
estocástico bivariado (qt ,ot ) t? T con
o (o1 o2 ...oT )proceso observado
estocásticamente dependiente de q (q1 q2 ...qT )
q (q1 q2 ...qT ) un proceso de Markov no
observado (oculto)
9Elementos de un HMM
N número de estados en el modelo. q
1,2,...,N son los estados individuales y qt
i es el estado i en el tiempo t
A (ai j )N x N distribución de probabilidad de
transición estados , en donde ai j Pqt1
jqt i , 1? i,j ? N
? (?i )N distribución del estado inicial
M Número de símbolos de observación de un
alfabeto ? v1, ,vM ,
B (bj (k))N distribución de probabilidad de
los símbolos de observación, en donde bj (k)
Pot vkqt j , 1? k ? M , 1? j ? N
10Especificación de un HMM
El Modelo Oculto de Markov dado un número de
estados N para qt y un conjunto M de símbolos
de observación queda completamente especificado
por
? (A,B,?)
A probabilidad de transición de estados
B probabilidad de emisión de símbolos
? probabilidad de iniciación de estados
11Arquitectura de un HMM
Ot un proceso observado estocásticamente
dependiente de qt
v1 v2 vM
v1 v2 vM
v1 v2 vM
2
1
n
qt un proceso de Markov no observado (oculto)
12Tipos de arquitecturas de HMMs
- Arquitectura ergódica
- Arquitectura izquierda - derecha
- Arquitectura izquierda - derecha con rutas
paralelas
13Arquitectura de un HMM de secuencias de DNA
14Arquitectura de un profile HMM (Salzberg, 1998)
T
I
Estados principales Estados de
deleción Estados de inserción
15Ejemplo 1 Alineamiento de secuencias de DNA
Sea el siguiente motif (Salzberg, 1998)
A C A - - - A T G T C A A C T A T
C A C A C - - A G C A G A - - - A
T C A C C G - - A T C
- Cuál es la probabilidad de cada secuencia de
observaciones? - Cuál es la probabilidad de la secuencia de
consenso? - Cual es la probabilidad de la secuencia
excepcional?
16Ejemplo 1 Alineamiento de secuencias de DNA
Construir un HMM (parametrizado con ?) con los
siguientes elementos
- Número de estados
- Probabilidades de transición de estados
- Probabilidades de emisión de símbolos
- Probabilidades del estado inicial
- Alfabeto de la secuencia de observaciones
17Ejemplo 1 Alineamiento de secuencias de DNA
motif
Original A C A - - - A T G Original T C A A C
T A T C Original A C A C - - A G C Original A
G A - - - A T C Original A C C G - - A T
C Consenso A C A C - - A T C Excepcional T
G C T - - A G G
Elementos del HMM
A,C,G,T alfabeto del DNA
4 símbolos de observación por estado
7 estados (siete columnas con inserciones)
6 a 9 longitud secuencia
Probabilidad estado inicial ?
Probabilidades de transición A
Probablidades de emisión de símbolos B
18Ejemplo 1 Alineamiento de secuencias de DNA
A.2 C.4 G.2 T.2
A.8 C.0 G.0 T.2
A.0 C.8 G.2 T.0
A.8 C.2 G.0 T.0
A.0 C.0 G.2 T.8
A1 C.0 G.0 T.0
A.0 C.8 G.2 T.0
.4
4
.6
.6
1
1
.4
1
1
1
2
3
5
6
7
Modelo oculto de Markov derivado del alineamiento
(Salzberg, 1998)
19Ejemplo 1 Alineamiento de secuencias de DNA
----------------Secuencia-----------
Probabilidad Original A C A - - - A T
G 0.033 Original T C A A C T A T
C 0.000075 Original A C A C - - A G
C 0.012 Original A G A - - - A T
C 0.033 Original A C C G - - A T
C 0.0059 Consenso A C A C - - A T C 0.047
Excepcional T G C T - - A G G 0.000023
Probabilidades de las 5 secuencias en el
alineamiento
Puntaje de la secuencia consenso ACACATC
P(ACACATC) 0.8 X 1.0 X 0.8 X 1.0 X 0.8 X 0.6 X
0.4 X 0.6 X 1.0 X 1.0 X 0.8 X 1.0 X 0.8 0
.04718592
20Algoritmo
HMMgenerador(A, B,? , N, M, T)
q1 i arg max1 ? i ? N ? i
t 1
while t lt T ot vk max1 ? j ? N
bj(k) 1? k ? M
qt 1 j arg max1 ? j? N ai j
t t 1
Secuencia de estados y observaciones generadas
por el algoritmo
Tiempo t 1 2 3 4 5 6
7 . . . T Estado qt
q1 q2 q3 q4 q5 q6 q7
. . . qT Observación ot o1 o2
o3 o4 o5 o6 o7 . . .
oT
21Ejemplo 2 Experimento del lanzamiento de monedas
Sea la secuencia O (C C C C S C S S S S)
Representar un HMM (parametrizado por ?).
- Suponga un modelo con
- tres estados (que corresponden a tres monedas
diferentes) - probabilidades de iniciación de estados
equiprobables - probabilidades de transición de estados
equiprobables y - probabilidades de emisión de símbolos como se
muestran en la figura
22Ejemplo 2 Experimento del lanzamiento de monedas
c 0.75 s 0.25
lo observado O ( C C C C S C S S S S )
c 0.5 s 0.5
c 0.25 s 0.75
? c, s
b2(k)
a22 1/ 3
b3(k)
b1(k)
2
q 1,2,3
a12 1/ 3
?21/ 3
a32 1/ 3
a21 1/ 3
a23 1/ 3
1
a13 1/ 3
3
a11 1/ 3
a33 1/ 3
a31 1/ 3
?11/ 3
?31/ 3
lo oculto q (2 2 2 2 3 2 3 3 3 3)
23Ejemplo 2. Experimento del lanzamiento de monedas
Cuál es la probabilidad de que la secuencia de
observación O ( C C C C S C S S S S ) provenga
exclusivamente del
- estado 1, es decir, q ( 1 1 1 1 1 1 1 1 1
1 ) ? - estado 2, es decir, q ( 2 2 2 2 2 2 2 2 2
2 ) ? - estado 3, es decir, q ( 3 3 3 3 3 3 3 3 3 3
) ?
Solución
24Ejemplo 2. Experimento del lanzamiento de monedas
La secuencia de estados q más probable es
q ( 2 2 2 2 3 2 3 3 3 3)
La probabilidad de la secuencia de observación O
dada q es
La cantidad de secuencias de estados del ejemplo
son
310 59049
La cantidad de secuencias de estados de un HMM
con N estados y con secuencias de observaciones
de longitud T son
N T
La complejidad computacional es
O( T.N T )
25Ejemplo 3 Experimento de lanzamiento de monedas
Considere la representación de un HMM
(parametrizado por ?) del experimento del
lanzamiento de una moneda. Suponga un modelo de
tres estados (que corresponden a tres monedas
diferentes) con probabilidades (ver figura)
Sea la secuencia O (C C C C S C S S S S)
1. Cuál es la secuencia de estados q mas probable?
2. Cuál es la probabilidad de la secuencia de
observación con esa secuencia de estados q mas
probable?
3. Cuál es la probabilidad de que la secuencia de
observación provenga exclusivamente del estado
1, 2 o 3?
26Ejemplo 3 Experimento de lanzamiento de monedas
c 0.75 s 0.25
O ( C C C C S C S S S S )
c 0.50 s 0.50
c 0.25 s 0.75
b2(k)
a22 0.1
b1(k)
b3(k)
2
a12 0.05
?21/ 3
a32 0.45
a21 0.45
a23 0.45
1
a13 0.05
3
a11 0.9
a33 0.1
a31 0.45
?11/ 3
?31/ 3
q (??????????) lo oculto
27PROBLEMAS FUNDAMENTALES EN LOS HMMs
Problema 1 Calcular la probabilidad P ( O? )
Dados
- una secuencia de observaciones O (o1 o2 . . .
oT )
Enfoque de la solución
1. Problema de la evaluación Cómo calcular la
probabilidad de que la secuencia observada O fué
producida por el modelo ? ?
2. Problema de puntaje Qué tan correctamente un
modelo dado empareja una secuencia de observación?
Solución
Algoritmo forward y programación dinámica.
28Solución recursiva con programación dinámica
1
vk
a1j
bj
ai j
i
j
aNj
N
?t(i)
?t1(j)
29Algoritmo avance (forward)
Inicialización Inducción Terminación
30PROBLEMAS FUNDAMENTALES EN LOS HMMs
Problema 2 Encontrar la mejor secuencia de
estados (q1 q2 ... qT )
Dados
- una secuencia de observaciones O (o1 o2 . . .
oT )
Enfoque de la solución
intentar descubrir la parte oculta del modelo,
esto es, encontrar la secuencia correcta de
estados
Solución
Algoritmo de Viterbi y programación dinámica.
31Solución recursiva con programación dinámica
1
vk
a1j
bj
aij
i
j
aNj
N
?t-1(i) ?t-1(i)
?t (j) ?t(i)
32Algoritmo de Viterbi
33Ejemplo 1. Experimento de la moneda
C C C C
S C S
S S S
?t(i)
qt 2 2 2 2 3 2 3 3 3 3
34PROBLEMAS FUNDAMENTALES EN LOS HMMs
Problema 3 Encontrar ? A,B ,? tal que P( O?
) sea máximo
Dados
un número de estados N, un alfabeto ? y una
secuencia de observaciones O ( o1 o2 . . . oT
) en ?
Enfoque de la solución
optimizar los parámetros del modelo para
describir mejor como viene una secuencia de
observación dada
Solución
Métodos estadísticos de aprendizaje
(entrenamiento, ajuste o reestimación) requieren
un modelo inicial ? 0 ( A 0 , B 0 , ? 0 )
35ENTRENAMIENTO DE LOS MODELOS OCULTOS DE MARKOV
- Expectation-maximization, EM (o Baum-Welch).
- Expectation-maximization generalized, GEM.
- Técnicas de gradiente generalizado.
36Expectation-maximization (EM) o Baum-Welch.
Fórmulas de reestimación para ?, A , B
37Expectation-maximization (EM) o Baum-Welch.
38Terminación del aprendizaje del HMM
- Sea ? ( A, B , ? ) el modelo reestimado
- Sea ? ( A , B , ? ) el modelo inicial
- si ? ? se encontró un punto crítico de la
función de probabilidad, entonces terminar - sino
- ? es mas probable que ?, es decir, P( O? ) gt
P( O? ) continuar el aprendizaje
39Ejemplo 4 Experimento del lanzamiento de una o
más monedas
Supóngase la siguiente secuencia de observación
O
(ccscccccccccscccscccscccccccccccssssCccssssssssss
sssssccccsscsssccccsscssscsssssscccccscsssccccccss
)
40Ejemplo 4 Experimento del lanzamiento de una o
más monedas
c 0.2 s 0.8
c 0.1 s 0.9
0.2
0.5
0.5
2
1
0.9
0.1
0.8
?0 (A0 ,B0 ,?0 )
41Ejemplo 4 Experimento del lanzamiento de una o
más monedas
c 0.33 s 0.67
s 1
0.28
1.0
2
1
0.95
0.05
0.72
? (A,B,?)
42Ejemplo 4 Experimento del lanzamiento de una o
más monedas
P ( 0 ? ) 9.171638e-28
Solución al Problema 1
Solución al Problema 2 Mejor secuencia de
estados q en ?
11111112222222111222222112222211112222221111222222
22222222211122221111111111111111111111111111122111
147 iteraciones
?
?0
43Ejemplo 5 Experimento del lanzamiento de una o
más monedas
c 0.1 s 0.9
0.25
c 0.1 s 0.9
c 0.1 s 0.9
s
c 0.9 s 0.1
0.1
2
0.1
0.1
0.25
0.1
0.1
0.7
3
1
0.1
0.1
0.25
0.7
0.1
0.7
0.7
0.1
0.1
4
0.1
0.7
0.25
?0 (A0 ,B0 ,?0 )
44Ejemplo 5 Experimento del lanzamiento de una o
más monedas
c 0.7 s 0.3
c 0.7 s 0.3
c 1
s 1
0.2
2
0.6
0.2
3
1
0.2
1
1
1
4
0.36
0.62
? (A,B,?)
45Resumen de los experimentos
46OTRAS ESTRATEGIAS DE APRENDIZAJE
47APLICACIONES GENERALES
- Reconocimiento óptico de caracteres.
- Clasificación de secuencias y fragmentos.
- Análisis estructural y descubrimiento de
patrones.