Abstract. This tutorial presents the basic concepts concerning Markov chains,
in particular, regular and absorbing chains. The principal concepts of Hidden Markov Models are also presented. Some applications of these models are
shown.
Resumo. Este tutorial apresenta os conceitos basicos das cadeias de Markov,
ressaltando principalmente, as cadeias regulares e as absorventes. Tambem
apresentam-se os principais conceitos sobre os modelos de Markov ocultos.
Exemplos ilustrativos foram includos, para mostrar as potencialidades de
aplicaca o destes modelos.
1. Introduca o
Um processo de Markov e um processo estocastico cujo comportamento dinamico e tal
que as distribuico es de probabilidade para o seu desenvolvimento fututo depende somente
do estado presente, nao levando em consideraca o como o processo chegou em tal estado.
Os processos markovianos sao modelados formalmente por sistemas de transico es
de estados, onde os estados sao representados em termos de seus vetores probabilsticos,
que podem variar no espaco temporal (discreto ou contnuo), e as transico es entre estados
sao probabilsticas e dependem apenas do estado corrente.
Se o espaco de estados e discreto (enumeravel), entao o modelo de Markov e denominado de cadeia de Markov [17, 19]. As propriedades desses modelos sao estudadas
em termos das propriedades das matrizes de transico es de estados que sao utilizadas na
sua descrica o.
Existem processos de Markov que sao modelados como aproximaco es do mundo
real, onde nem todos os estados sao perfeitamente conhecidos. Nestes casos, diz-se que
o modelo e escondido, e a questao central em torno desses modelos e o grau com que sao
capazes de capturar a essencia do processo escondido sob eles.
O estudo dos modelos de Markov tem uma aplicaca o muito ampla em varias a reas,
como, por exemplo, ciencias sociais, biologicas e administrativas. Os modelos de Markov
escondidos, que surgiram originalmente no domnio de reconhecimento da fala, atualmente tem sido empregados como modelos de computaca o natural the so-called brains
programs [2], em trabalhos sobre visao computacional [4] e reconhecimento de manuscritos, de formas, gestos e expressoes faciais, em biologia computacional, entre outros (veja
em http://www-sig.enst.fr/cappe).
Este tutorial e fruto dos estudos sobre os modelos de Markov, visando a sua
aplicaca o em processos de tomada de decisao, que esta sendo desenvolvido junto ao Mestrado em Saude Mental e Comportamento da UCPel.
2. Modelos de Markov
Uma modelo de Markov e um sistema de transico es de estados, onde a probabilidade do
sistema estar em um certo estado futuro depende apenas do estado corrente do sistema.
Esta seca o resume os principais conceitos basicos e propriedades desses modelos. As
provas das proposico es e teoremas podem ser encontradas em [17, 19].
2.1. Cadeias de Markov
Um modelo de Markov onde o espaco de estados I e discreto e denominado de Cadeia de
Markov e e completamente descrito por sua matriz de transica o de estados. Esta matriz
e dinamica, pois permite que as probabilidades de transica o se modifiquem em funca o do
tempo t, onde t e discreto.
Considere uma cadeia de Markov com N estados xn I e sejam xi , xj I.
Denota-se xi (t) para significar que o processo esta no estado xi no tempo t.
Definica o 1 Se pij e a probabilidade de transica o do estado xi (t) para o estado xj (t+1),
entao a matriz N N , dada por
P = [pij ],
denomina-se matriz de transica o de estados da cadeia de Markov.
Observa-se que, na Definica o 1, a soma das linhas da matriz P deve ser sempre
igual a 1.
A matriz de transica o tambem pode ser dada por um diagrama de transico es de
estados. A Figura 1 mostra o diagrama de transico es de estados para uma cadeia de
Markov com apenas 2 estados.
Proposica o 1 Para t arbitrario, tem-se que:
(i) A probabilidade de transica o do estado xi (t) para o estado xj (t + n) (em n passos) e
dada por pni,j ;
(ii) A matriz de transica o de n passos, denotada por Pn , e calculada como a potencia n
da matriz de transica o P , isto e ,
Pn = P n .
p 01
p 00
x1
x0
p 11
p 10
S1 (t)
S2 (t)
s(t) = ..
.
SN (t)
e denominado de vetor de distribuica o de probabilidades de estado da cadeia de Markov
no tempo t.
Seja sT (0) a distribuica o inicial do processo1 . A evoluca o do vetor de distribuica o
e governada pela matriz de transica o em t passos.
Proposica o 2 Para qualquer tempo t, tem-se que
sT (t) = sT (0)Pt ,
onde Pt e calculada como em ?? e sT e o vetor transposto de s.
2.2. Cadeias Regulares
Considerando que o vetor de distribuica o evolui no tempo, observa-se que ha circunstancias em que ocorre uma distribuica o de probabilidade de equilbrio v tal que
lim s(t) = v,
independentemente da distribuica o inicial s(0). Isto ocorre em processos de Markov denominados de regulares.
1 T
s e o vetor transposto de s.
Definica o 3 Diz-se que um modelo de Markov e regular se sua matriz de transica o inicial
P e regular, isto e , alguma potencia de P contem somente entradas positivas.
Segue da Definica o 3 que um processo de Markov e regular se, para algum t,
tem-se que Pt > 0. Isto significa que, em uma cadeia de Markov regular, todo estado e
acessvel a partir de outro, existindo um caminho de comprimento finito entre quaiquer
dois estados, possibilitando a comunicaca o entre todos os estados.
Seja wT = [w1 , w2 , . . . , wN ] um vetor de comprimento N . Diz-se que w e um
vetor probabistico se w1 , w2 , . . . , wN 0 e w1 + w2 + . . . + wN = 1.
Teorema 1 Se um processo de Markov e regular, entao exite u nico vetor probabilstico
v, denominado de distribuica o de equilbrio, tal que:
(i) v T P = v T ;
(ii) limt P t = P , onde P e formada por t linhas iguais a v T .
2.3. Cadeias Nao-Regulares
Existem processos que podem apresentar estados que nao acessveis a partir de algum
outro estado, isto e , a probabilidade de transica o para tais estados e igual a zero. Alem
disso, um estado de um processo de Markov finito podera eventualemnte atingir um estado
de comunicaca o fechada, absorvente, cuja probabilidade e igual a 1.
Um estado xi de uma cadeia de Markov e denominado de estado absorvente se,
uma vez nesse estado, e impossvel sair dele, isto e , pii = 1. Segue que pij = 0, para
i 6= j.
Definica o 4 Diz-se que uma cadeia de Markov e absorvente se ela apresenta um estado
absorvente e se de cada estado nao absorvente e possvel ir para algum estado absorvente em algum tempo t, isto e , para cada estado nao absorvente xi (t), existe um estado
absorvente xj (t + 1) tal que pij > 0, para algum t.
Observa-se que, e uma cadeia de Markov absorvente, o estado do sistema sera
eventualemente um dos estados absorventes.
Dada uma cadeia de Markov com k estados absorventes, e possvel redistribuir
as linhas da matriz de transica o P , de modo que os estados absorventes fiquem nas k
primeiras linhas. Com isso, um processo de Markon nao regular pode ser sempre reorganizado em quatro submatrizes.
Definica o 5 Seja P a matriz de transica o de uma cadeia de Markov com k estados absorventes. Entao:
(i) A matriz canonica da cadeia e dada por:
Ik
P =
Pxa Pxx
(ii) A matriz fundamental e obtida por:
F = [I Pxx ]1
Exemplo 1 Suponha que no tempo 0, um indivduo e acasalado com outro, sendo este
do tipo H. No tempo 1, o produto do acasalamento e novamente acasalado com um
indivduo H. O processo repete-se entao da mesma maneira. Considera-se como estado
do sistema no tempo t o genotipo do t-esimo filho. Tem-se como resultado uma cadeia de
Markov com tres estados (D, H, R), cuja matriz de transica o e dada por:
0.5 0.5 0
P = 0.25 0.5 0.25 ,
0 0.5 0.5
sendo a matriz de transica o de 2 passos calculada como (com precisao igual a 2 no
Maple):
(1)
P3
j=1
p1 j 6=
1.
Pela observaca o da matriz de transica o de dois passos P2 dada em 1, que apresenta todas as entradas positivas, conclui-se que esta matriz aproxima uma matriz real
regular que tem uma distribuica o de equilbrio v aproximada pelo vetor probabilstico
V = [v1 , v2 , v3 ], tal que V P V . O sistema correpondente e :
5v1 + 0.25v2
5v1 + 5v2 + 5v3
0.25v2 + 0.5v3
v1 + v2 + v3
=
=
=
=
v1
v2
v3
1
uma resposta incorreta. Depois de apresentada toda a lista de estmulos, ela e novamente
apresentada, porem em ordem aleatoria diferente da anterior.
Na situaca o experimental modelada por Bower os estmulos consistiam em 10
pares de consoantes, enquanto as respostas eram os numeros 1 e 2. A cada par de consoantes atribua-se aleatoriamente um desses numeros como resposta, antes do incio da
experiencia. Os estmulos eram apresentados e pedia-se que o paciente para responder
1 ou 2. Apos dar sua resposta, o paciente era informado da resposta correta ao estmulo
apresentado. Depois de exibidos os 10 pares de consoantes (constituindo um ensaio)
os 10 cartoes com estmulos eram baralhados e novamente apresentados ao paciente.
Esse processo era repetido ate que o paciente coseguisse passar sem erros pela lista de
estmulos, por duas vezes consecutivas. Ao acontecer isso, considerava-se que o paciente
tinha aprendido as respostas corretas.
Para analisar esse tipo de experiencia utilizando cadeias de Markov, considera-se
os seguintes axiomas:
1. Cada par estmulo-resposta encontra-se em um estado dentre dois possveis, em
qualquer ensaio n: condicionado (C(n)) ou palpite (P (n)). O estado de condicionamento do par estmulo-resposta corresponde ao paciente ter aprendido o par.
Caso contrario, o paciente estara simplesmente adivinhando.
2. Em qualquer ensaio n, a probabilidade de transica o de P (n) para C(n + 1) e uma
constante c(0 c 1); segue que a probabilidade de uma transica o de P (n) para
P (n + 1) e 1 c.
3. Em qualquer ensaio n, a probabilidade de transica o de C(n) para C(n + 1) e 1;
segue que a probabilidade de uma transica o de C(n) para P (n + 1) e 0.
4. Se estiver em P (n), em qualquer ensaio n, a probabilidade de sucesso S(n) (resposta correta ao estmulo) e 1/N , onde N o numero total de respostas possveis.
5. Cada tem esta no estado nao condicionado (palpite) no ensaio inicial.
Numa primeira modelagem, considere uma cadeia de Markov com dois estados:
condicionado (1) e palpite (2). De acordo com o axioma 5, a distribuica o inicial e entao:
sT =
0.00 1.00
1.00 0.00
c 1c
.
(2)
1.00 0.00
0.30 0.70
.
P =
1.00 0.00
0.83 0.17
15
,P
=
1.00 0.00
1.00 0.0047
,P
100
=
1.00
0.00
1.00 0.32.1015
.
s(10) = s(0)P10 =
0.30 0.70
0.97 0.028
, s(5) = s(0)P5 =
, s(15) = s(0)P15 =
1.00 0.0047
0.83 0.17
,....
Observa-se que os resultados obtidos indicam, por exemplo, que no tempo 10 (ou
seja, logo apos o decimo ensaio), ha uma probabilidade de aproximadamente 97% de um
paciente sob teste estar no estado condicionado. Ja no tempo 15 ha uma probabilidade
virtual (pois o valor 1 esta sujeito ha erros de arredondamento) de 100% de um paciente
estar no estado condicionado.
Refina-se agora o modelo, considerando-o como uma cadeia de Markov com tres
estados: condicionado (1), palpite errado (2) e palpite certo (3). Para determinar a matriz
de transica o da cadeia de Markov correpondente utiliza-se o axioma 4, juntamente com
os outros axiomas. Assim, tem-se que p11 = 1, p12 = 0, p13 = 0, p21 = c, p31 = c.
Para calcular p23 , sejam Gn+1 o evento o paciente tenta adivinhar no ensaio n +
1, Sn+1 o evento o paciente responde corretamente no ensaio n + 1 e Tn o evento o
paciente faz um palpite errado no ensaio n. Se P r(x) denota a probabilidade de x e
P r(x|y) denota a probabilidade condicional de x dado que y tenha ocorrido, tem-se que:
(3)
1
(1 c)
N
.
De forma analoga, conclui-se que:
p22 = (1
1
1
1
)(1 c), p32 = (1 )(1 c), p33 = (1 c).
N
N
N
1.00
0.00
P = c (1 N1 )(1 c)
c (1 N1 )(1 c)
0.00
1
(1 c) ,
N
1
(1 c)
N
(4)
que e uma cadeia absorvente, com o estado 1 absorvente e os estados 2 e 3 nao absorventes.
s(0) =
1
N
1
N
, s(15)
1.000 0.169.104
0.000 0.000
0.525 0.175
0.525 0.175
1.000
P =
0.300
0.300
onde
Pxx =
0.525 0.175
0.525 0.175
Pxa =
0.300
0.300
,
.
F.
Tem-se que
I Pxx =
1.000 0.000
0.000 1.000
0.525 0.175
0.525 0.175
=
0.475 0.175
0.525 0.825
,
e, portanto,
2.750 0.583
1.750 1.583
F =
2.500 0.833
F = [I Pxx ]
o que significa que, por exemplo, o numero esperado de respostas incorretas dadas pelo
paciente ao tem em questao e 2.5. Alem disso, tem-se que a matriz de probabilidade de
absorca o e dada por:
A = F Pxa =
1.000
1.000
,
p 11
x begin
p begin-1
p 12
x1
b 1 (m)
b 1 (n)
p 22
x2
p 21
p 2-end
x end
b 2 (m)
b 2 (n)
Pode-se pensar nesse tipo de modelo como um automato finito (nao determinstico) com sada [9], cujas transicoes sao vazias e probabilsticas, sendo que, em
cada estado podera haver a emissao de smbolos (tens observaveis) segundo uma certa
probabilidade.
Exemplo 2 Os modelos ocultos podem ser representados como diagramas de estados, como, por exemplo, o modelo oculto com conjunto de estados X = {xbegin , x1 ,
x2 , xend } da Figura 2, onde somente os estados nao terminais x1 e x2 emitem os simbolos
(tens observaveis) m e n.
Simulando um experimento, a partir do estado x1 e possvel ir para o outro estado
x2 ou nao, de acordo com as probabilidades de transica o p12 ou P11 , respectivamente. O
mesmo acontece no estado x2 . Segue-se assim sucessivamente, ate atingir o estado final.
Em cada estado nao terminal observa-se a emissao do smbolo m ou m, de acordo
com as probabilidades de emissao do smbolo m ou n no estado x1 (b1 (m), b1 (n)) e no
estado x2 (b2 (m), b2 (n)).
Como resultado, obtem-se uma sequencia oculta (que nao e observada) de estados
percorridos e um seque ncia de smbolos (que e observada). Uma seque ncia de smbolos
que pode ser observada, por exemplo, e O = m, n, m; uma seque ncia possvel de estados
ocultos e I = xbegin , x1 , x1 , x2 , xend . A probabilidade do modelo percorrer os estado de
I para produzir a seque ncia de observaco es O e dada por:
P r(O, I|M ) = pbegin1 b1 (m) p11 b1 (n) p12 b2 (m) p2end .
Assim, dada uma seque ncia de observaco es, nao se conhece a seque ncia de estados pela qual passa o modelo, mas somente uma funca o probabilstica deste caminho.
Exemplo 3 Um exemplo extraido de [2] consiste no modelo das urnas. Suponha que
exitem N urnas contendo L bolas coloridas (preto, branco e cinza). Uma pessoa inicia
por uma das urnas, retira uma bola e observa a sua cor, recoloca-a na urna, e vai para
outra urna ou permanece na mesma urna, com uma certa probabilidade, e toma outra
bola, e assim sucessivamente. O processo termina apos W sequencias de passos deste
tipo.
Considere uma configuraca o especfica de N = 2 urnas e um tempo de
observaca o W = 3, como mostra a Figura 3, e uma distribuica o de probabilidade dada
por:
Estado 1
.8
.7
.2
.1
Estado 2
.9
.3
t=1
t=2
t=3
s=
0.7
0.3
.
0.8 0.2
0.1 0.9
.
.8
.1
.2
.3
.7
.9
branco = .1
preto = .4
cinza = .5
branco = .1
preto = .4
cinza = .5
Estado 1
Estado 2
t = 1
Escolha um estado inicial utilizando s
Enquanto t <= W :
Escolha uma observac
ao O utilizando B
Escolha um novo estado utilizando P
t = t + 1
a matriz de transica o:
P =
0.8 0.2
0.2 0.8
e a distribuica o inicial:
s=
0.5
0.5
.
Observe que, neste caso, e mais difcil descobrir qual a seque ncia mais
provavel observada em um dado experimento. Considere entao uma dada seque ncia de
observaco es O = {h, h, t, t}. Em princpio nao sabe-se a seque ncia de estados que a gerou. Entretanto, considerando uma dada seque ncia de estados (por exemplo, a seque ncia
I = {N, N, V, N }), e possvel estimar qual a probabilidade da seque ncia O ter sido
gerada pelo modelo a partir desse caminho de estados:
P r(O, I|M ) = sN bN (h) pN N bN (h) pN V bV (t) pV N bN (h) = 0, 0005.
.2
.8
.8
N = .5
b N (h) = .5
b N (t) = .5
V = .5
0.2
b V(h) = .75
b V(h) = .25
encia de Observaco es
3.2. A Probabilidade de uma Sequ
Uma discussao interessante, que pode ser feita a partir da analise dos exemplos 2, 3 e 4,
e o problema relacionado a` descoberta da probabilidade de que uma dada seque ncia
de observaco es O tenha sido gerada por M . Para calcular a probabilidade de que
tal seque ncia venha a ser observada, deve-se considerar a soma das probabilidades da
geraca o dessa seque ncia sobre todos os possveis caminhos que a geram. Assim, seja
I = x1 , x2 , . . . , xW uma seque ncia particular de estados possvel em W passos e considere a expansao de P r(O|M ) em todos os estados, dada por:
P r(O|M ) =
P r(O, I|M ).
(5)
Para qualquer seque ncia individual de estados, pode-se usar a regra de Bayes na
equaca o 5, obtendo:
P r(O, I|M ) = P r(O|I, M )P r(I, M ).
(6)
bj (k).
jI
O segundo termo do lado direito da equaca o 6 e dado pelo produto da probabilidade de iniciar no estado x1 e passar pelos estados x2 , . . . , xW :
P r(I|M ) = s1 p12 p23 . . . p(W 1)W .
Assim, a equaca o 5 pode ser escrita como:
W
1
Y
i=1
bi+1 (k)pi(i+1) .
(7)
Versao Iterativa
Versao Recursiva
1 = [si bi (1)]
Para t em {1, . . . , W 1}:
t+1 = P [it bi (t + 1)]
P
W
P r(O|M ) = N
i=1 i
Defina (W ):
se W == 1:
[si bi (1)]
senao:
P [iW 1 bi (W )]
P
W
P r(O|M ) = N
i=1 i
W
Y
bi (k)pi(i+1) ,
i=1
onde xW +1 = xend .
Uma crtica grave a esta formulaca o e que o custo computacional do somatorio da
equaca o 5 e muito alto (da ordem N W ). Entretanto, e possvel usar resultados parciais,
que sao acumulados em um vetor t , conforme descrito no procedimento forward do
algoritmo da Tabela 5.
Exemplo 5 Considere o modelo das urnas apresentado no Exemplo 3. Define-se it como
a probabilidade de acontecer a observaca o Ot no estado xi . Entao, se
0.7
0.5
s=
e B(Cinza) =
,
0.3
0.2
tem-se que o vetor inicial 1 e dado por:
= [si bi (1)] =
s1 b1 (Cinza)
s2 b2 (Cinza)
=
0.35
0.06
Sucessivamente, calcula-se:
2 = P [i1 bi (2)]
0.8 0.2
=
0.1 0.9
0.8 0.2
=
0.1 0.9
0.142
=
0.0283
11 b1 (Cinza)
21 b2 (Cinza)
0.175
0.012
.
e
3 = P [i2 bi (3)]
0.8 0.2
=
0.1 0.9
0.8 0.2
=
0.1 0.9
.0581
=
.
.0122
12 b1 (Cinza)
22 b2 (Cinza)
.0712
.00566
N
X
i=1
iW
2
X
i3 = 0.0703.
i=1
12 b1 (t)
22 b2 (t)
.0781
.0625
4 = P [i3 bi (4)]
0.8 0.2
=
0.2 0.8
0.8 0.2
=
0.2 0.8
.0333
=
.
.0206
13 b1 (t)
23 b2 (t)
.0375
.0164
N
X
i=1
iW
2
X
i4 = 0.0539.
i=1
(8)
(9)
Dado t , os estados mais provaveis sao expressados pelos seus ndices, como:
indext = ndice do max1iN {it }.
Para computar a equaca o 9, pode-se utilizar o algoritmo de Viterbi, onde, para
registrar os estados mais provaveis, define-se um vetor r(t), como mostra o algoritmo
dado na Tabela 6.
2
Pode acontecer que nao exista um caminho entre estados sucessores, mas isto geralmente nao ocorre
na pratica.
Tabela 6: Algoritmo para computar o caminho gerador otimo.
Vesao Iterativa
Versao Recursiva
1 = [si bi (1)]
Defina r(W):
r(1) = [index1 ]
Se W == 1:
Para t em {1, . . . , W 1}:
1 = [si bi (1)]
t+1
t
= P [i bi (t + 1)]
r(1) = [index1 ]
r(t + 1) = anexe(indext+1 , r(t))
Senao:
W = P [iW 1 bi (W )]
r(W ) = anexe(indexW , r(W 1))
= [si bi (1)] =
s1 b1 (Cinza)
s2 b2 (Cinza)
.35
.06
Calcula-se sucessivamente:
2 = P [i1 bi (2)]
.8 .2
=
.1 .9
.8 .2
=
.1 .9
.142
=
,
.0283
11 b1 (Cinza)
21 b2 (Cinza)
.175
.012
3 = P [i2 bi (3)]
12 b1 (Cinza)
=
2 b2 (Cinza)
2
.8 .2
.0712
=
.1 .9
.00566
0.0581
=
,
0.0122
.8 .2
.1 .9
= [si bi (1)] =
s1 b1 (h)
s2 b2 (h)
=
.25
.675
,
Calcula-se sucessivamente:
2 = P [i1 bi (2)]
.8 .2
=
.2 .8
.8 .2
=
.2 .8
.156
=
,
.250
11 b1 (h)
21 b2 (h)
.125
.281
3 = P [i2 bi (3)]
12 b1 (t)
=
2 b2 (t)
2
.8 .2
.0781
=
.2 .8
.0625
0.0750
=
,
0.0656
.8 .2
.2 .8
4 = P [i3 bi (4)]
.8 .2
=
.2 .8
.8 .2
=
.2 .8
0.0333
=
,
0.0206
13 b1 (t)
23 b2 (t)
.0375
.0164
(10)
e
PW
0
bj (k) =
t
t=1,Ot =k j
PW t .
t=1 j
(11)
ao 10
Estimar B utilizando a equac
ao 11
Estimar P utilizando a equac
ao 12
it pij bj (t + 1)jt+1
,
P r(O|M )
de tal forma que a estimativa pode ser obtida como uma media ao longo do tempo:
p0ij
PW
= Pt=1
W
ij
t
t=1 j
(12)
A Tabela 7 apresenta o algoritmo de Baum-Welch para aperfeicoamento do modelo pelo calculo sucessivo de estimativas para os parametros.
Referencias
[1] J. F. F. Araujo, G. P. Dimuro, M. A. Campos, Probabilidades Intervalares com Aplicaco es no Maple, ESIN/UCPel, Pelotas, RS, 2001.
(http://gmc.ucpel.tche.br/fmc)
[2] D. H. Ballard, An Introduction to Natural Computation, MIT Press, Cambridge, 1997.
[3] G. H. Bower, Applications of a Model to Paired-Associate Learning, Psychometrika,
Vol. 26, pp. 225-2380, 1961,
[4] H. Bunke, T. Caelli (Eds), Hidden Markov Models Applied in Computer Vision, in Machine Perception and Artificial Intelligence, Vol. 45, World Scientific, N. J., 2001.
[5] M. A. Campos, Uma Extensao Intervalar para a Probabilidade Real, Tese de Doutorado,
Centro de Informatica/UFPE, 1997.
[6] M. A. Campos, Interval probabilities, application to discrete ramdom variables, Seleta
do XXII CNMAC (E.X.L. de Andrade, J. M. Balthazar, S. M. Gomes, G. N. Silva,
A. Sri Langa, eds.), TEMA, Vol. 1.2, pp. 333-344, SBMAC, 2000.