Modelos de Markov e Aplicac¸˜oes
∗Grac¸aliz P. Dimuro1 , Renata H. S. Reiser1, Antˆonio C. R. Costa12 , Paulo L. R. Sousa3 1Escola de Inform´atica – Universidade Cat´olica de Pelotas
Rua Felix da Cunha 412 – 96010-140 Pelotas, RS
2Programa de P´os-Graduac¸˜ao em Computac¸˜ao – Universidade Federal do Rio Grande do Sul
Caixa Postal 15064 – 90501-970 Porto Alegre, RS
3Mestrado em Sa´ude e Comportamento – Universidade Cat´olica de Pelotas
Rua Felix da Cunha 412 – 96010-140 Pelotas, RS
{liz,reiser,rocha}@atlas.ucpel.tche.br
Abstract. This tutorial presents the basic concepts concerning Markov chains,
in particular, regular and absorbing chains. The principal concepts of Hid-den Markov Models are also presented. Some applications of these models are shown.
Resumo. Este tutorial apresenta os conceitos b´asicos das cadeias de Markov,
ressaltando principalmente, as cadeias regulares e as absorventes. Tamb´em apresentam-se os principais conceitos sobre os modelos de Markov ocultos. Exemplos ilustrativos foram inclu´ıdos, para mostrar as potencialidades de aplicac¸˜ao destes modelos.
1. Introduc¸˜ao
Um processo de Markov ´e um processo estoc´astico cujo comportamento dinˆamico ´e tal que as distribuic¸˜oes de probabilidade para o seu desenvolvimento fututo depende somente do estado presente, n˜ao levando em considerac¸˜ao como o processo chegou em tal estado. Os processos markovianos s˜ao modelados formalmente por sistemas de transic¸˜oes
de estados, onde os estados s˜ao representados em termos de seus vetores probabil´ısticos,
que podem variar no espac¸o temporal (discreto ou cont´ınuo), e as transic¸˜oes entre estados s˜ao probabil´ısticas e dependem apenas do estado corrente.
Se o espac¸o de estados ´e discreto (enumer´avel), ent˜ao o modelo de Markov ´e de-nominado de cadeia de Markov [17, 19]. As propriedades desses modelos s˜ao estudadas em termos das propriedades das matrizes de transic¸˜oes de estados que s˜ao utilizadas na sua descric¸˜ao.
Existem processos de Markov que s˜ao modelados como aproximac¸˜oes do mundo real, onde nem todos os estados s˜ao perfeitamente conhecidos. Nestes casos, diz-se que o modelo ´e escondido, e a quest˜ao central em torno desses modelos ´e o grau com que s˜ao capazes de capturar a essˆencia do processo escondido sob eles.
O estudo dos modelos de Markov tˆem uma aplicac¸˜ao muito ampla em v´arias ´areas, como, por exemplo, ciˆencias sociais, biol´ogicas e administrativas. Os modelos de Markov escondidos, que surgiram originalmente no dom´ınio de reconhecimento da fala, atual-mente tˆem sido empregados como modelos de computac¸˜ao natural – the so-called brain’s programs [2], em trabalhos sobre vis˜ao computacional [4] e reconhecimento de manuscri-tos, de formas, gestos e express˜oes faciais, em biologia computacional, entre outros (veja emhttp://www-sig.enst.fr/∼cappe).
Este tutorial ´e fruto dos estudos sobre os modelos de Markov, visando a sua aplicac¸˜ao em processos de tomada de decis˜ao, que est´a sendo desenvolvido junto ao Me-strado em Sa´ude Mental e Comportamento da UCPel.
2. Modelos de Markov
Uma modelo de Markov ´e um sistema de transic¸˜oes de estados, onde a probabilidade do sistema estar em um certo estado futuro depende apenas do estado corrente do sistema. Esta sec¸˜ao resume os principais conceitos b´asicos e propriedades desses modelos. As provas das proposic¸˜oes e teoremas podem ser encontradas em [17, 19].
2.1. Cadeias de Markov
Um modelo de Markov onde o espac¸o de estados I ´e discreto ´e denominado de Cadeia de
Markov e ´e completamente descrito por sua matriz de transic¸˜ao de estados. Esta matriz
´e dinˆamica, pois permite que as probabilidades de transic¸˜ao se modifiquem em func¸˜ao 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 est´a no estado xi no tempo t.
Definic¸˜ao 1 Se pij ´e a probabilidade de transic¸˜ao do estado xi(t) para o estado xj(t+1), ent˜ao a matriz N × N , dada por
P = [pij],
denomina-se matriz de transic¸˜ao de estados da cadeia de Markov.
Observa-se que, na Definic¸˜ao 1, a soma das linhas da matriz P deve ser sempre igual a 1.
A matriz de transic¸˜ao tamb´em pode ser dada por um diagrama de transic¸˜oes de
estados. A Figura 1 mostra o diagrama de transic¸˜oes de estados para uma cadeia de
Markov com apenas 2 estados.
Proposic¸˜ao 1 Para t arbitr´ario, tem-se que:
(i) A probabilidade de transic¸˜ao do estado xi(t) para o estado xj(t + n) (em n passos) ´e dada por pn
i,j;
(ii) A matriz de transic¸˜ao de n passos, denotada por Pn, ´e calculada como a potˆencia n da matriz de transic¸˜ao P , isto ´e,
x
0x
1 p11p00
p
01p
10Figura 1: Diagrama da matriz de transic¸ ˜oes de estados de uma cadeia de Markov de dois estados.
Para simular um processo de Markov, considerando um estado inicial x0, pode-se
escolher um estado sucessor de acordo com as probabibilidades p0j, para j = 1, . . . , N ,
determinando um novo estado x1. Repite-se o processo para gerar o pr´oximo estado, e
assim sucessivamente. Devido `a natureza probabil´ıstica do modelo, cada ves que esta simulac¸˜ao for repetida, ´e prov´avel que uma sequˆencia diferente de estados seja obtida como resultado. Portanto, a ´unica forma de analisar o proceso ´e manter o registro das probabilidades de estar em um estado.
Definic¸˜ao 2 Seja Si(t) a probabilidade de que um processo de Markov esteja em um estado xino tempo t. Ent˜ao o vetor
s(t) = S1(t) S2(t) .. . SN(t)
´e denominado de vetor de distribuic¸˜ao de probabilidades de estado da cadeia de Markov no tempo t.
Seja sT(0) a distribuic¸˜ao inicial do processo1. A evoluc¸˜ao do vetor de distribuic¸˜ao ´e governada pela matriz de transic¸˜ao em t passos.
Proposic¸˜ao 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 distribuic¸˜ao evolui no tempo, observa-se que h´a cir-cunstˆancias em que ocorre uma distribuic¸˜ao de probabilidade de equil´ıbrio v tal que
lim
t→∞s(t) = v,
independentemente da distribuic¸˜ao inicial s(0). Isto ocorre em processos de Markov de-nominados de regulares.
Definic¸˜ao 3 Diz-se que um modelo de Markov ´e regular se sua matriz de transic¸˜ao inicial
P ´e regular, isto ´e, alguma potˆencia de P cont´em somente entradas positivas.
Segue da Definic¸˜ao 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 acess´ıvel a partir de outro, existindo um caminho de comprimento finito entre quaiquer dois estados, possibilitando a comunicac¸˜ao entre todos os estados.
Seja wT = [w1, w2, . . . , wN] um vetor de comprimento N . Diz-se que w ´e um vetor probabi´ıstico se w1, w2, . . . , wN ≥ 0 e w1+ w2+ . . . + wN = 1.
Teorema 1 Se um processo de Markov ´e regular, ent˜ao exite ´unico vetor probabil´ıstico
v, denominado de distribuic¸˜ao de equil´ıbrio, tal que:
(i) vTP = vT;
(ii) limt→∞Pt= P∗, onde P∗ ´e formada por t linhas iguais a vT. 2.3. Cadeias N˜ao-Regulares
Existem processos que podem apresentar estados que n˜ao acess´ıveis a partir de algum outro estado, isto ´e, a probabilidade de transic¸˜ao para tais estados ´e igual a zero. Al´em disso, um estado de um processo de Markov finito poder´a eventualemnte atingir um estado de comunicac¸˜ao 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 imposs´ıvel sair dele, isto ´e, pii = 1. Segue que pij = 0, para
i 6= j.
Definic¸˜ao 4 Diz-se que uma cadeia de Markov ´e absorvente se ela apresenta um estado absorvente e se de cada estado n˜ao absorvente ´e poss´ıvel ir para algum estado absor-vente em algum tempo t, isto ´e, para cada estado n˜ao absorabsor-vente 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 ser´a eventualemente um dos estados absorventes.
Dada uma cadeia de Markov com k estados absorventes, ´e poss´ıvel redistribuir as linhas da matriz de transic¸˜ao P , de modo que os estados absorventes fiquem nas k primeiras linhas. Com isso, um processo de Markon n˜ao regular pode ser sempre re-organizado em quatro submatrizes.
Definic¸˜ao 5 Seja P a matriz de transic¸˜ao de uma cadeia de Markov com k estados ab-sorventes. Ent˜ao:
(i) A matriz canˆonica da cadeia ´e dada por:
P∗ =
Ik θ
Px→a Px→x
(ii) A matriz fundamental ´e obtida por:
(iii) A matriz de probabilidade de absorc¸˜ao ´e calculada como o produto:
A = F Px→a
onde Ik ´e uma matriz diagonal unit´aria k × k que representa os k estados absorventes,
θ ´e uma matriz nula, Ps→a representa as probabilidades de transic¸˜ao de qualquer estado para todos os estados absorventes, Ps→srepresenta as probabilidades de transic¸˜ao entre todos os estados n˜ao absorventes, e aij ´e a probabilidade de que o sistema venha a estar no estado absorvente xj(t), para algum tempo t, dado que esteja inicialmente no estado n˜ao absorvente xi.
2.4. Aplicac¸˜oes de Cadeias Regulares `a Gen´etica
Nesta sec¸˜ao introduz-se uma aplicac¸˜ao trivial das cadeias de Markov em problemas de Gen´etica, atrav´es de um exemplo extra´ıdo de [19].
Certas caracter´ısticas das plantas e dos animais s˜ao determinadas por um par de genes, cada um dos quais podendo ser de dois tipos, denotados porAe a. Existem trˆes gen´otipos poss´ıveis:AA,Aaeaa(os gen´otiposAaeaAs˜ao idˆenticos).
Em alguns casos esses trˆes gen´otipos resultam em trˆes caracter´ısticas distintas e em outros o AA e o Aa exibem uma mesma forma observ´avel. Nesta ´ultima situac¸˜ao, diz-se que o geneAdomina o genea.
O indiv´ıduo chama-se dominante se tem o gen´otipo AA, heterozigoto se tem gen´otipoAae recessivo se tem o gen´otipoaa. Por conveniˆencia, denota-se um indiv´ıduo
AApor D, umAapor H e umaapor R.
No caso de cruzamento, o filho herda um gene de cada um dos pais. Admita-se que as probabilidades dos gen´otipos dos filhos de acordo com os dos pais sejam as dadas nas Tabelas 1, 2 e 3, a seguir.
Tabela 1: Probabilidades dos gen ´otipos do filho de dois indiv´ıduosH
D (AA) H (Aa) R (aa)
0.25 0.50 0.25
Tabela 2: Probabilidades dos gen ´otipos do filho de um indiv´ıduoH com outroD
D (AA) H (Aa) R (aa)
0.50 0.50 0.00
Tabela 3: Probabilidades dos gen ´otipos do filho de um indiv´ıduoH com outroR
D (AA) H (Aa) R (aa)
0.00 0.50 0.50
Exemplo 1 Suponha que no tempo 0, um indiv´ıduo ´e acasalado com outro, sendo este do tipo H. No tempo 1, o produto do acasalamento ´e novamente acasalado com um indiv´ıduo H. O processo repete-se ent˜ao da mesma maneira. Considera-se como estado do sistema no tempo t o gen´otipo do t-´esimo filho. Tem-se como resultado uma cadeia de Markov com trˆes estados (D, H, R), cuja matriz de transic¸˜ao ´e dada por:
P = 0.5 0.5 0 0.25 0.5 0.25 0 0.5 0.5 ,
sendo a matriz de transic¸˜ao de 2 passos calculada como (com precis˜ao igual a 2 no Maple): P2 = 0.38 0.50 0.13 0.25 0.50 0.25 0.13 0.50 0.38 . (1)
Observa-se que, em 1, devido a erros de arredondamento, tem-se queP3
j=1p1j 6=
1.
Pela observac¸˜ao da matriz de transic¸˜ao de dois passos P2 dada em 1, que apre-senta todas as entradas positivas, conclui-se que esta matriz aproxima uma matriz real regular que tem uma distribuic¸˜ao de equil´ıbrio v aproximada pelo vetor probabil´ıstico
V = [v1, v2, v3], tal que V P ≡ V . O sistema correpondente ´e:
5v1+ 0.25v2 = v1
5v1+ 5v2+ 5v3 = v2
0.25v2+ 0.5v3 = v3
v1+ v2+ v3 = 1
A soluc¸˜ao do sistema resulta na distribuic¸˜ao real de equil´ıbrio v = [.25, .5, .25]. 2.5. Aplicac¸˜oes de Cadeias Absorventes na Aprendizagem por Pares Associados
Nesta sec¸˜ao apresenta-se o cl´assico modelo de Bower [3] de aprendizagem por pares as-sociados. Neste modelo, uma lista de est´ımulos ´e apresentada a um paciente em ordem aleat´oria. Os est´ımulos podem ser palavras, n´umeros, s´ılabas sem nexo, figuras ou ´ıtens similares. A cada est´ımulo corresponde uma resposta correta que se sup˜oes que o paciente aprenda. Antes que a experiˆencia comece realmente, o paciente pode ser informado de algum modo sobre o conjunto das respostas ou pode tomar cinhecimento delas gradula-mente no decorrer da experiˆencia.
uma resposta incorreta. Depois de apresentada toda a lista de est´ımulos, ela ´e novamente apresentada, por´em em ordem aleat´oria diferente da anterior.
Na situac¸˜ao experimental modelada por Bower os est´ımulos consistiam em 10 pares de consoantes, enquanto as respostas eram os n´umeros 1 e 2. A cada par de con-soantes atribu´ıa-se aleatoriamente um desses n´umeros como resposta, antes do in´ıcio da experiˆencia. Os est´ımulos eram apresentados e pedia-se que o paciente para responder 1 ou 2. Ap´os dar sua resposta, o paciente era informado da resposta correta ao est´ımulo apresentado. Depois de exibidos os 10 pares de consoantes (constituindo um ensaio) os 10 cart˜oes com est´ımulos eram baralhados e novamente apresentados ao paciente. Esse processo era repetido at´e que o paciente coseguisse passar sem erros pela lista de est´ımulos, por duas vezes consecutivas. Ao acontecer isso, considerava-se que o paciente tinha aprendido as respostas corretas.
Para analisar esse tipo de experiˆencia utilizando cadeias de Markov, considera-se os seguintes axiomas:
1. Cada par est´ımulo-resposta encontra-se em um estado dentre dois poss´ıveis, em qualquer ensaio n: condicionado (C(n)) ou palpite (P (n)). O estado de
condi-cionamento do par est´ımulo-resposta corresponde ao paciente ter aprendido o par.
Caso contr´ario, o paciente estar´a simplesmente adivinhando.
2. Em qualquer ensaio n, a probabilidade de transic¸˜ao de P (n) para C(n + 1) ´e uma constante c(0 ≤ c ≤ 1); segue que a probabilidade de uma transic¸˜ao de P (n) para P (n + 1) ´e 1 − c.
3. Em qualquer ensaio n, a probabilidade de transic¸˜ao de C(n) para C(n + 1) ´e 1; segue que a probabilidade de uma transic¸˜ao 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) (res-posta correta ao est´ımulo) ´e 1/N , onde N ´o n´umero total de res(res-postas poss´ıveis. 5. Cada ´ıtem est´a no estado n˜ao 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 distribuic¸˜ao inicial ´e ent˜ao:
sT = 0.00 1.00 .
Pelos axiomas 2 e 5, a matriz de transic¸ao inicial da cadeia de Markov ´e:
P = 1.00 0.00 c 1 − c
. (2)
Fazendo c = 0.30 na equac¸˜ao 2, tem-se:
P = 1.00 0.00 0.30 0.70
.
Calcula-se algumas potˆencias da matriz P (com precis˜ao igual a 2):
Calcula-se a distribuic¸˜ao da cadeia de Markov nos diversos ensaios realizados: s(1) = s(0)P1 = 0.30 0.70 , s(5) = s(0)P5 = 0.83 0.17 ,
s(10) = s(0)P10 = 0.97 0.028 , s(15) = s(0)P15= 1.00 0.0047 , . . . .
Observa-se que os resultados obtidos indicam, por exemplo, que no tempo 10 (ou seja, logo ap´os o d´ecimo ensaio), h´a uma probabilidade de aproximadamente 97% de um paciente sob teste estar no estado condicionado. J´a no tempo 15 h´a uma probabilidade virtual (pois o valor 1 est´a sujeito h´a 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 trˆes estados: condicionado (1), palpite errado (2) e palpite certo (3). Para determinar a matriz de transic¸˜ao 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 Tno 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:
p23= P r(Sn+1∩ Gn+1|Tn) = P r(Sn+1|Gn+1∩ Tn)P r(Gn+1|Tn). (3)
Pelo axioma 2, tem-se que P r(Gn+1|Tn) = 1 − c, e, pelo axioma 4, ´e v´alido
que P r(Sn+1|Gn+1 ∩ Tn) = 1/N , onde N ´e o n´umero total de respostas poss´ıveis. Da
equac¸˜ao 3, segue que:
p23=
1
N(1 − c) .
De forma an´aloga, conclui-se que:
p22= (1 − 1 N)(1 − c), p32 = (1 − 1 N)(1 − c), p33= 1 N(1 − c). Assim, a matriz de transic¸˜ao dessa cadeia de Markov ´e
P = 1.00 0.00 0.00 c (1 −N1)(1 − c) N1(1 − c) c (1 −N1)(1 − c) N1(1 − c) , (4)
Os axiomas 4 e 5 implicam que a distribuic¸˜ao inicial dessa cadeia ´e:
s(0) = 0.00 1 −N1 N1 .
Sejam c = 0.30 e N = 4. Ent˜ao a equac¸˜ao 4 torna-se (com precis˜ao igual a 3):
P = 1.000 0.000 0.000 0.30 0.525 0.175 0.30 0.525 0.175
e a distribuic¸˜ao inicial ´e s(0) = 0.000 0.750 0.250 .
Calcula-se a distribuic¸˜ao da cadeia em v´arios tempos, obtendo-se, por exemplo:
s(2) = 0.510 0.368 0.123 , s(15) 0.995 0.356 0.119.10−2 ,
s(30) = 1.000 0.169.10−4 0.563.10−5 , . . .
Observa-se que, no trig´esimo ensaio, ´e virtualmente certo que (a incerteza ´e devido aos erros de arredondamento) que o paciente esteja no estado condicionado.
Uma importante quest˜ao ´e saber qual o n´umero de vezes em que o paciente se encontra no estado 2, ou seja, o n´umero de respostas incorretas dadas pelo paciente ao par estimulo-resposta em quest˜ao. Em [19] h´a a prova de que o n´umero de vezes que o paciente se encontra nos estados 2 ou 3 ´e finito, isto ´e, eventualmente ele estar´a no estado condicionado.
Observe que a matriz canˆonica dessa cadeia de Markov ´e:
P∗ = 1.000 0.000 0.000 0.300 0.525 0.175 0.300 0.525 0.175 onde Px→x = 0.525 0.175 0.525 0.175 , Px→a= 0.300 0.300 .
O n´umero m´edios esperado de vezes em que o paciente se encontra no estado 2 ou 3 ´e dado por
Tem-se que I − Px→x = 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, F = [I − Px→x]−1 = 2.750 0.583 1.750 1.583 .
Consequentemente, tem-se que
0.750 0.250 F = 2.500 0.833 ,
o que significa que, por exemplo, o n´umero esperado de respostas incorretas dadas pelo paciente ao ´ıtem em quest˜ao ´e 2.5. Al´em disso, tem-se que a matriz de probabilidade de absorc¸˜ao ´e dada por:
A = F Px→a =
1.000 1.000
,
significando que, desconsiderando os erros de arredondamento, h´a 100% de probabilidade de que o paciente venha a estar no estado condicionado eventualmente.
3. Modelos de Markov Ocultos
Em alguns casos existe a possibilidade de que se tenha uma descric¸˜ao incompleta do ambiente em que ocorre um processo Markoviano, onde o espac¸o de estados ´e des-conhecido. Nestes casos, ´e poss´ıvel definir um modelo de Markov considerando uma aproximac¸˜ao desse espac¸o. Modelos deste tipo s˜ao denominados Modelos de Markov
Ocultos (HMM) [15]. Esta sec¸˜ao apresenta uma discuss˜ao sobre esses modelos, 3.1. Conceitos B´asicos
Definic¸˜ao 6 Um Modelos de Markov Ocultos (HMM) ´e uma tripla M = (s, P, B), onde consideram-se:
(i) Um conjunto espec´ıfico Okde observac¸˜oes do tipo k que resultam de um experimento; (ii) Um conjunto X de estados xi, onde em cada estado xi ´e poss´ıvel realizar uma
observac¸˜ao bi(k), com i = 1, . . . , N e k ∈ Ok;
(iii) Uma distribuic¸˜ao de probabilidade para o estado inicial dada pelo vetor s = [si],
onde si = P r(xi(0));
(iv) Uma distribuic¸˜ao de probabilidade para as transic¸˜oes de estados dada pela matriz
P = [pij], onde pij = P r(xj(t + 1)|xi(t));
p22 x1 x2 p11 p 12 p21 b1(m) b1(n) b 2(n) b2(m) xend p2-end xbegin pbegin-1
Figura 2: Diagrama de transic¸ ˜oes de estados de um modelo de Markov oculto de dois estados n ˜ao terminais, onde h ´a a probabilidade de emiss ˜ao de dois s´ımbolos (m e n).
Pode-se pensar nesse tipo de modelo como um autˆomato finito (n˜ao deter-min´ıstico) com sa´ıda [9], cujas transic¸oes s˜ao vazias e probabil´ısticas, sendo que, em cada estado poder´a haver a emiss˜ao de s´ımbolos (´ıtens observ´aveis) segundo uma certa probabilidade.
Exemplo 2 Os modelos ocultos podem ser representados como diagramas de esta-dos, como, por exemplo, o modelo oculto com conjunto de estados X = {xbegin, x1,
x2, xend} da Figura 2, onde somente os estados n˜ao terminais x1e x2emitem os simbolos (´ıtens observ´aveis) m e n.
Simulando um experimento, a partir do estado x1 ´e poss´ıvel ir para o outro estado
x2ou n˜ao, de acordo com as probabilidades de transic¸˜ao p12ou P11, respectivamente. O mesmo acontece no estado x2. Segue-se assim sucessivamente, at´e atingir o estado final. Em cada estado n˜ao terminal observa-se a emiss˜ao do s´ımbolo m ou m, de acordo com as probabilidades de emiss˜ao do s´ımbolo m ou n no estado x1 (b1(m), b1(n)) e no estado x2(b2(m), b2(n)).
Como resultado, obt´em-se uma seq¨uencia oculta (que n˜ao ´e observada) de estados percorridos e um seq¨uˆencia de s´ımbolos (que ´e observada). Uma seq¨uˆencia de s´ımbolos que pode ser observada, por exemplo, ´e O = m, n, m; uma seq¨uˆencia poss´ıvel de estados ocultos ´e I = xbegin, x1, x1, x2, xend. A probabilidade do modelo percorrer os estado de
I para produzir a seq¨uˆencia de observac¸˜oes O ´e dada por:
P r(O, I|M ) = pbegin−1· b1(m) · p11· b1(n) · p12· b2(m) · p2−end.
Assim, dada uma seq¨uˆencia de observac¸˜oes, n˜ao se conhece a seq¨uˆencia de esta-dos pela qual passa o modelo, mas somente uma func¸˜ao probabil´ıstica 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 ap´os W seq¨uencias de passos deste tipo.
Considere uma configurac¸˜ao espec´ıfica de N = 2 urnas e um tempo de
Estado 1 Estado 2 .7 .3 t = 1 t = 2 t = 3 .8 .2 .1 .9
Figura 3: Esquema do experimento com o modelo de urna com 2 estados em 3 fases de tempo.
s = 0.7 0.3
.
A matriz B define as probabilidades das poss´ıveis observac¸˜oes para cada estado:
B = b1(Branco) b1(P reto) b1(Cinza) b2(Branco) b2(P reto) b2(Cinza)
= 0.1 0.4 0.5 0.6 0.2 0.2
.
A matriz das probabilidades de transic¸˜ao de estado ´e dada por:
P = 0.8 0.2 0.1 0.9
.
A Figura 3 mostra um esquema do experimento. O modelo est´a representado na Figura 4. O algoritmo dado na Tabela 4 ´e utilizado para gerar as seq¨uˆencias de observac¸˜oes. Salienta-se que a seq¨uˆencia mais prov´avel ´e O = {Cinza, Cinza, Cinza}. Isto ocorre porque o estado inicial mais prov´avel ´e o Estado 1 (urna 1), Cinza ´e a cor mais prov´avel de ser observada no Estado 1, e, a partir do Estado 1, o estado mais prov´avel ´e ainda o Estado 1. A probabilidade de ocorrer esta seq¨uˆencia dada a seq¨uˆencia
I = {Estado1, Estado1, Estado1} de estados ´e calculada ent˜ao como:
P r(O, I|M ) = s1· b1(cinza) · p11· b1(cinza) · p11· b2(cinza) = 0.056.
Exemplo 4 Considere um jogo de cara de cara (h) ou coroa (t) no qual sabe-se que o lanc¸ador pode utilizar duas moedas, uma normal e uma viciada. A moeda normal ofe-rece probabilidade de 50% tanto para cara como para coroa, enquanto a moeda viciada oferece 75% de chance para cara e apenas 25% para coroa.
Sabe-se tamb´em o lanc¸ador pode iniciar o processo escolhendo qualquer uma das moedas com igual probabilidade, entretanto, uma vez tendo utilizado uma das moedas (normal ou viciada) a probabilidade de que o lanc¸ador a troque por outra ´e de apenas
.1
.7
.3
.8 .2 .9 branco = .1 preto = .4 cinza = .5 branco = .1 preto = .4 cinza = .5 Estado 1 Estado 2Figura 4: Modelo de urna com 2 estados.
Tabela 4: Algoritmo gerador de seq ¨u ˆencias de observac¸ ˜oes.
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
O modelo est´a representado na Figura 5. Tem-se ent˜ao o conjunto de observac¸˜oes
O = {h, t}, o conjunto de estados X = {N = normal, V = viciada}, a matriz B das
poss´ıveis observac¸˜oes para cada estado:
B = bN(h) = 0.50 bN(t) = 0.50 bV(h) = 0.75 bV(t) = 0.25 a matriz de transic¸˜ao: P = 0.8 0.2 0.2 0.8 e a distribuic¸˜ao inicial: s = 0.5 0.5 .
Observe que, neste caso, ´e mais dif´ıcil descobrir qual a seq¨uˆencia mais prov´avel observada em um dado experimento. Considere ent˜ao uma dada seq¨uˆencia de observac¸˜oes O = {h, h, t, t}. Em princ´ıpio n˜ao sabe-se a seq¨uˆencia de estados que a ge-rou. Entretanto, considerando uma dada seq¨uˆencia de estados (por exemplo, a seq¨uˆencia
I = {N, N, V, N }), ´e poss´ıvel estimar qual a probabilidade da seq¨uˆencia O ter sido
gerada pelo modelo a partir desse caminho de estados:
N = .5 bN(h) = .5 bN(t) = .5 .8 V = .5 .2 0.2 bV(h) = .25 bV(h) = .75 .8
Figura 5: Modelo das moedas.
3.2. A Probabilidade de uma Seq ¨uˆencia de Observac¸˜oes
Uma discuss˜ao interessante, que pode ser feita a partir da an´alise dos exemplos 2, 3 e 4, ´e o problema relacionado `a descoberta da probabilidade de que uma dada seq¨uˆencia de observac¸˜oes O tenha sido gerada por M . Para calcular a probabilidade de que tal seq¨uˆencia venha a ser observada, deve-se considerar a soma das probabilidades da gerac¸˜ao dessa seq¨uˆencia sobre todos os poss´ıveis caminhos que a geram. Assim, seja I = x1, x2, . . . , xW uma seq¨uˆencia particular de estados poss´ıvel em W passos e
consi-dere a expans˜ao de P r(O|M ) em todos os estados, dada por:
P r(O|M ) =X
∀I
P r(O, I|M ). (5)
Para qualquer seq¨uˆencia individual de estados, pode-se usar a regra de Bayes na equac¸˜ao 5, obtendo:
P r(O, I|M ) = P r(O|I, M )P r(I, M ). (6) O primeiro termo do lado direito da equac¸˜ao 6, P r(O|I, M ), ´e a probabilidade de se ver uma dada seq¨uˆencia de observac¸˜oes, considerando um dado conjunto de estados. Para os estados conhecidos, considerando Ok, o c´alculo ´e realizado como:
P r(O|I, M ) =Y
j∈I
bj(k).
O segundo termo do lado direito da equac¸˜ao 6 ´e dado pelo produto da probabili-dade de iniciar no estado x1 e passar pelos estados x2, . . . , xW:
P r(I|M ) = s1p12p23. . . p(W −1)W.
Assim, a equac¸˜ao 5 pode ser escrita como:
P r(O, I|M ) = s1b1(k) W −1
Y
i=1
Tabela 5: Algoritmo para computarP r(O|M ).
Vers˜ao Iterativa Vers˜ao Recursiva
α1 = [sibi(1)] Definaα(W ): Paratem{1, . . . , W − 1}: seW == 1: αt+1 = P · [αt ibi(t + 1)] [sibi(1)] P r(O|M ) =PN i=1α W i sen˜ao: P · [αW −1i bi(W )] P r(O|M ) =PN i=1α W i
Considerando um modelo onde se tem os estados disting¨u´ıveis xbegine xend(como
o modelo da Figura 2), ent˜ao a equac¸˜ao 7, para W +2 passos, onde a sq¨uˆencia ´e observada nos estados n˜ao terminais, torna-se:
P r(O, I|M ) = pbegin−1 W
Y
i=1
bi(k)pi(i+1),
onde xW +1 = xend.
Uma cr´ıtica grave a esta formulac¸˜ao ´e que o custo computacional do somat´orio da equac¸˜ao 5 ´e muito alto (da ordem NW). Entretanto, ´e poss´ıvel usar resultados parciais, que s˜ao 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 αt i como a probabilidade de acontecer a observac¸˜ao Otno estado xi. Ent˜ao, se
s = 0.7 0.3 e B(Cinza) = 0.5 0.2 ,
tem-se que o vetor inicial α1 ´e dado por:
e α3 = P [αi2bi(3)] = 0.8 0.2 0.1 0.9 α2 1b1(Cinza) α2 2b2(Cinza) = 0.8 0.2 0.1 0.9 .0712 .00566 = .0581 .0122 .
Finalmente, a probabilidade de ver a seq¨uˆencia Cinza,Cinza,Cinza ´e dada por:
P r(O|M ) = N X i=1 αWi = 2 X i=1 α3i = 0.0703.
Exemplo 6 Considere o modelo das moedas apresentado no Exemplo 4. Define-se αti como a probabilidade de acontecer a observac¸˜ao Otno estado xi. Ent˜ao, se
s = 0.5 0.5 e B(h) = 0.5 0.75 ,
tem-se que o vetor inicial α1 ´e dado por:
α4 = P [α3ibi(4)] = 0.8 0.2 0.2 0.8 α3 1b1(t) α3 2b2(t) = 0.8 0.2 0.2 0.8 .0375 .0164 = .0333 .0206 .
Finalmente, a probabilidade de ver a seq¨uˆencia h,h,t,t ´e dada por:
P r(O|M ) = N X i=1 αWi = 2 X i=1 α4i = 0.0539.
3.3. Caminho Gerador ´Otimo
Outra quest˜ao fundamental ´e, dada um seq¨uˆencia de observac¸˜oes O, descobrir a seq¨uˆencia de estados I mais prov´avel, que seja capaz de gerar O. Um crit´erio simples para tratar este problema ´e considerar a seq¨uˆencia que torna cada um dos estados o mais prov´avel2.
Observa-se que, de forma an´aloga ao procedimento dado no algoritmo da Tabela 5, ´e poss´ıvel definir um procedimento “backward”, atrav´es de um vetor β(t) que registra a probabilidade de alcanc¸ar um dos estados finais, dado um determinado estado corrente. Este vetor β(t) pode ser utilizado para definir um algoritmo para prever a probabilidade de seq¨uˆencias de estados de forma an´aloga ao algoritmo da Tabela 5.
Seja γt
i a probabilidade de terminar no estado xi no tempo t, dada a seq¨uˆencia de
observac¸˜oes O, calculada como:
γit= P r(xi(t) = si|O, M ). (8)
Em 8, pode-se utilizar os vetores α(t) e β(t) para expressar γt
i, obtendo:
γt=
[αt iβit]
P r(O|M ), (9)
onde P r(O|M ) ´e um fator de normalizac¸˜ao tal quePN
i=1γit= 1.
Dado γt, os estados mais prov´aveis s˜ao expressados pelos seus ´ındices, como:
indext= ´ındice do max1≤i≤N{γit}.
Para computar a equac¸˜ao 9, pode-se utilizar o algoritmo de Viterbi, onde, para registrar os estados mais prov´aveis, define-se um vetor r(t), como mostra o algoritmo dado na Tabela 6.
2Pode acontecer que n˜ao exista um caminho entre estados sucessores, mas isto geralmente n˜ao ocorre
Tabela 6: Algoritmo para computar o caminho gerador ´otimo.
Ves˜ao Iterativa Vers˜ao Recursiva
γ1 = [sibi(1)] Definar(W):
r(1) = [index1] SeW == 1:
Paratem{1, . . . , W − 1}: γ1 = [s ibi(1)]
γt+1= P · [γitbi(t + 1)] r(1) = [index1]
r(t + 1) =anexe(indext+1, r(t)) Sen˜ao:
γW = P · [γiW −1bi(W )]
r(W ) =anexe(indexW, r(W − 1))
Exemplo 7 Considerando o modelo das urnas trabalhado nos Exemplos 3 e 5, dada a seq¨uˆencia de observac¸˜oes O = {Cinza, Cinza, Cinza}, pode-se calcular a seq¨uˆencia de estados mais prov´avel para produz´ı-la. Primeiramente, calcula-se:
γ1 = [sibi(1)] = s1b1(Cinza) s2b2(Cinza) = .35 .06 ,
onde max1≤i≤N{γi1} = .35, logo index1 = 1(x1(1)), e, portanto,
r(1) = [index1] = 1(x1(1)) .... .... . Calcula-se sucessivamente: γ2 = P [γi1bi(2)] = .8 .2 .1 .9 γ1 1b1(Cinza) γ1 2b2(Cinza) = .8 .2 .1 .9 .175 .012 = .142 .0283 , onde max1≤i≤N{γ2
i} = .142, logo index2 = 1(x1(2)), e, portanto,
r(2) = 1(x1(1)) 1(x1(2)) .... ;
= .8 .2 .1 .9 γ2 1b1(Cinza) γ22b2(Cinza) = .8 .2 .1 .9 .0712 .00566 = 0.0581 0.0122 , onde max1≤i≤N{γ3 i} = .0581, index3 = 1(x1(3)), e, portanto, r(3) = 1(x1(1)) 1(x1(2)) 1(x1(3)) .
Logo o caminho gerador ´otimo da sequˆencia cinza,cinza,cinza ´e x1, x1, x1, como era esperado.
Exemplo 8 Considerando o modelo das moedas trabalhado nos Exemplos 4 e 6, dada a seq¨uˆencia de observac¸˜oes O = {h, h, t, t}, pode-se calcular a seq¨uˆencia de estados mais prov´avel para produz´ı-la. Primeiramente, calcula-se:
γ1 = [sibi(1)] = s1b1(h) s2b2(h) = .25 .675 ,
onde max1≤i≤2{γi1} = .675, logo index1 = 2(x2(1)), e, portanto,
r(1) = [index1] = 2(x2(1)) .... .... . Calcula-se sucessivamente: γ2 = P [γi1bi(2)] = .8 .2 .2 .8 γ1 1b1(h) γ1 2b2(h) = .8 .2 .2 .8 .125 .281 = .156 .250 ,
onde max1≤i≤2{γi2} = .250, logo index2 = 2(x2(2)), e, portanto,
r(2) = 2(x2(1)) 2(x2(2)) .... ;
= .8 .2 .2 .8 γ2 1b1(t) γ22b2(t) = .8 .2 .2 .8 .0781 .0625 = 0.0750 0.0656 ,
onde max1≤i≤2{γi3} = .075, index3 = 1(x1(3)), e, portanto,
r(3) = 2(x2(1)) 2(x2(2)) 1(x1(3)) ; γ4 = P [γi3bi(4)] = .8 .2 .2 .8 γ3 1b1(t) γ3 2b2(t) = .8 .2 .2 .8 .0375 .0164 = 0.0333 0.0206 ,
onde max1≤i≤2{γi4} = .0333, index4 = 1(x1(4)), e, portanto,
r(4) = 2(x2(1)) 2(x2(2)) 1(x1(3)) 1(x1(4)) .
Logo o caminho gerador ´otimo da sequˆencia h,h,t,t ´e x2, x2, x1, x1. 3.4. Aperfeic¸oando o Modelo
O principal problema em HMM ´e descobrir o melhor modelo M , o que ´e muito dif´ıcil e n˜ao tem soluc¸˜ao anal´ıtica conhecida. Pode-se derivar uma aproximac¸˜ao que ´e melhor que a vers˜ao corrente. Este procedimento pode ser repetido at´e que nehuma melhoria possa ser verificada.
Em linhas gerais, esta estrat´egia iniciar´a com um conjunto inicial M = (s, P, B) e executar o modelo um n´umero suficiente de vezes para estimar um novo conjunto de parˆametros M0 = (s0, P0, B0). Estas estimativas s˜ao ent˜ao utilizadas como o novo modelo, e, ent˜ao, o processo ´e repetido.
As estimativas de s e B s˜ao simples de calcular:
Tabela 7: Algoritmo de Baum-Welch.
Repita os seguintes passos at´e que os
parˆametros do modelo estejam de acordo
com a tolerˆancia considerada:
Estimarsutilizando a equac¸˜ao10
EstimarButilizando a equac¸˜ao11
EstimarP utilizando a equac¸˜ao12
Para estimar pij, calcula-se ηij como:
ηij = P r(xi(t) = si, xi(t + 1) = sj|), M ) resultando em ηij = αt ipijbj(t + 1)βjt+1 P r(O|M ) ,
de tal forma que a estimativa pode ser obtida como uma m´edia ao longo do tempo:
p0ij = PW t=1ηij PW t=1γjt . (12)
A Tabela 7 apresenta o algoritmo de Baum-Welch para aperfeic¸oamento do mo-delo pelo c´alculo sucessivo de estimativas para os parˆametros.
Referˆencias
[1] J. F. F. Ara´ujo, G. P. Dimuro, M. A. Campos, “Probabilidades Intervala-res com Aplicac¸˜oes 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 Ma-chine Perception and Artificial Intelligence, Vol. 45, World Scientific, N. J., 2001. [5] M. A. Campos, “Uma Extens˜ao Intervalar para a Probabilidade Real”, Tese de Doutorado,
Centro de Inform´atica/UFPE, 1997.
[7] M. A. Campos, G. P. Dimuro, A. C. R. Costa, J. F. F. Araujo, A. M. Dias, “Probabilidade Intervalar e Cadeias de Markov Intervalares no Maple”, “Seleta do XXIV CNMAC” (E.X.L. de Andrade, J. M. Balthazar, S. M. Gomes, G. N. Silva, A. Sri Langa, eds.), TEMA, SBMAC, 2002.
[8] A. M. Dias, G. P. Dimuro, “Matem´atica Intervalar com Aplicac¸˜oes no Maple”, ESIN/UCPel, Pelotas, 2000. (http://gmc.ucpel.tche.br/mat-int) [9] J. Hopcroft and J. D. Ullman, “Introduction to Automata Theory, Languages and
Compu-tation”, Addison-Wesley, Reading, 1979).
[10] U. W. Kulisch, W. L. Miranker, “Computer Arithmetic in Theory and Practice”, Academic Press, New York, 1981.
[11] H. E. Kyburg, Jr., Interval-valued Probabilities,http://www.ensmain.rug.ac.be/ ipp. [12] M. B. Monagan, K. O. Geddes, K. M. Heal, G. Labahn, and S. M. Vorkoetter, “Maple V:
Program. Guide”, Springer, N. York, 1998.
[13] R. E. Moore,“Methods and Applications of Interval Analysis”, SIAM, Philadelphia, 1979. [14] A. Neumaier, “Interval Methods for Systems of Equations”, Cambridge University Press,
Cambridge, 1990.
[15] L. R. Rabiner and B. H. Juang, An Introduction to Hidden Markov Models, “IEEE ASSP Magazine”, 3(4):4-16, 1986.
[16] B. Tessem, Interval Probability Propagation, “International Journal of Approximate Rea-soning”, 7:95-120, 1992.
[17] K. S. Trivedi, “Probability and Statistics with Reliability, Queuing, and Computer Science Applications”, Prentice-Hall, Englewood Cliffs, NJ, 2000.
[18] K. Weichselberger, Axiomatic foundations of the theory of interval-probability, “Sympo-sia Gaus“Sympo-siana”, Conference B: Statistical Sciences, pp. 47-64, Munich, Germany, August 2-7, 1993.
[19] W. Yoselogff, “Finite Mathematics”, Worth Publishing, New York, 1975.