Anda di halaman 1dari 22

Modelos de Markov e Aplicaco es

Gracaliz P. Dimuro1 , Renata H. S. Reiser1 , Antonio C. R. Costa12 , Paulo L. R. Sousa3


1

Escola de Informatica Universidade Catolica de Pelotas


Rua Felix da Cunha 412 96010-140 Pelotas, RS

Programa de Pos-Graduaca o em Computaca o Universidade Federal do Rio Grande do Sul


Caixa Postal 15064 90501-970 Porto Alegre, RS
3

Mestrado em Saude e Comportamento Universidade Catolica 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 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.

Este trabalho foi parcialmente financiado pela FAPERGS e CNPq.

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

Figura 1: Diagrama da matriz de transicoes


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 proximo estado, e
assim sucessivamente. Devido a` natureza probabilstica do modelo, cada ves que esta
simulaca o for repetida, e provavel que uma sequencia diferente de estados seja obtida
como resultado. Portanto, a u nica forma de analisar o proceso e manter o registro das
probabilidades de estar em um estado.
Definica o 2 Seja Si (t) a probabilidade de que um processo de Markov esteja em um
estado xi no tempo t. Entao o vetor

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

(iii) A matriz de probabilidade de absorca o e calculada como o produto:


A = F Pxa
onde Ik e uma matriz diagonal unitaria k k que representa os k estados absorventes,
e uma matriz nula, Psa representa as probabilidades de transica o de qualquer estado
para todos os estados absorventes, Pss representa as probabilidades de transica o entre
todos os estados nao 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
nao absorvente xi .
2.4. Aplicaco es de Cadeias Regulares a` Genetica
Nesta seca o introduz-se uma aplicaca o trivial das cadeias de Markov em problemas de
Genetica, atraves de um exemplo extrado de [19].
Certas caractersticas das plantas e dos animais sao determinadas por um par de
genes, cada um dos quais podendo ser de dois tipos, denotados por A e a. Existem tres
genotipos possveis: AA, Aa e aa (os genotipos Aa e aA sao identicos).
Em alguns casos esses tres genotipos resultam em tres caractersticas distintas e
em outros o AA e o Aa exibem uma mesma forma observavel. Nesta u ltima situaca o,
diz-se que o gene A domina o gene a.
O indivduo chama-se dominante se tem o genotipo AA, heterozigoto se tem
genotipo Aa e recessivo se tem o genotipo aa. Por conveniencia, denota-se um indivduo
AA por D, um Aa por H e um aa por R.
No caso de cruzamento, o filho herda um gene de cada um dos pais. Admita-se
que as probabilidades dos genotipos dos filhos de acordo com os dos pais sejam as dadas
nas Tabelas 1, 2 e 3, a seguir.

Tabela 1: Probabilidades dos genotipos


do filho de dois indivduos H

D (AA) H (Aa) R (aa)


0.25
0.50
0.25

Tabela 2: Probabilidades dos genotipos


do filho de um indivduo H com outro D

D (AA) H (Aa) R (aa)


0.50
0.50
0.00

Tabela 3: Probabilidades dos genotipos


do filho de um indivduo H com outro R

D (AA) H (Aa) R (aa)


0.00
0.50
0.50
As cadeias de Markov intervalares podem auxiliar em calculos sobre hereditariedade, como descrito neste proximo exemplo.

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):

0.38 0.50 0.13


P2 = 0.25 0.50 0.25 .
0.13 0.50 0.38
Observa-se que, em 1, devido a erros de arredondamento, tem-se que

(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

A soluca o do sistema resulta na distribuica o real de equilbrio v = [.25, .5, .25].


2.5. Aplicaco es de Cadeias Absorventes na Aprendizagem por Pares Associados
Nesta seca o apresenta-se o classico modelo de Bower [3] de aprendizagem por pares associados. Neste modelo, uma lista de estmulos e apresentada a um paciente em ordem
aleatoria. Os estmulos podem ser palavras, numeros, slabas sem nexo, figuras ou tens
similares. A cada estmulo corresponde uma resposta correta que se supoes que o paciente
aprenda. Antes que a experiencia comece realmente, o paciente pode ser informado de
algum modo sobre o conjunto das respostas ou pode tomar cinhecimento delas gradulamente no decorrer da experiencia.
A experiencia consiste em apresentar ao paciente um estmulo de cada vez, durante um breve perodo de tempo, durante o qual solicita-se ao paciente tentar indicar a
resposta correta. Apos o paciente ter dado sua resposta, mostra-se a ele a resposta correta. Isso serve como uma confirmaca o de uma resposta correta ou como uma correca o de

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

Pelos axiomas 2 e 5, a matriz de transicao inicial da cadeia de Markov e :



P =

1.00 0.00
c 1c


.

(2)

Fazendo c = 0.30 na equaca o 2, tem-se:



P =

1.00 0.00
0.30 0.70


.

Calcula-se algumas potencias da matriz P (com precisao igual a 2):


5

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


.

Calcula-se a distribuica o da cadeia de Markov nos diversos ensaios realizados:


s(1) = s(0)P1 =

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:

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 valido


que P r(Sn+1 |Gn+1 Tn ) = 1/N , onde N e o numero total de respostas possveis. Da
equaca o 3, segue que:
p23 =

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

Assim, a matriz de transica o dessa cadeia de Markov e

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.

Os axiomas 4 e 5 implicam que a distribuica o inicial dessa cadeia e :


0.00 1

s(0) =

1
N

1
N

Sejam c = 0.30 e N = 4. Entao a equaca o 4 torna-se (com precisao igual a 3):

1.000 0.000 0.000


P = 0.30 0.525 0.175
0.30 0.525 0.175

0.000 0.750 0.250 .

e a distribuica o inicial e s(0) =

Calcula-se a distribuica o da cadeia em varios tempos, obtendo-se, por exemplo:


s(2) =

0.510 0.368 0.123


s(30) =

, s(15)

1.000 0.169.104

0.995 0.356 0.119.102



0.563.105 , . . .

Observa-se que, no trigesimo ensaio, e virtualmente certo que (a incerteza e devido


aos erros de arredondamento) que o paciente esteja no estado condicionado.
Uma importante questao e saber qual o numero de vezes em que o paciente se
encontra no estado 2, ou seja, o numero de respostas incorretas dadas pelo paciente ao
par estimulo-resposta em questao. Em [19] ha a prova de que o numero de vezes que o
paciente se encontra nos estados 2 ou 3 e finito, isto e , eventualmente ele estara no estado
condicionado.
Observe que a matriz canonica dessa cadeia de Markov e :

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


,


.

O numero medios esperado de vezes em que o paciente se encontra no estado 2


ou 3 e dado por
0.750 0.250

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 ]

Consequentemente, tem-se que


0.750 0.250

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


,

significando que, desconsiderando os erros de arredondamento, ha 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 descrica o incompleta do
ambiente em que ocorre um processo Markoviano, onde o espaco de estados e desconhecido. Nestes casos, e possvel definir um modelo de Markov considerando uma
aproximaca o desse espaco. Modelos deste tipo sao denominados Modelos de Markov
Ocultos (HMM) [15]. Esta seca o apresenta uma discussao sobre esses modelos,
3.1. Conceitos Basicos
Definica o 6 Um Modelos de Markov Ocultos (HMM) e uma tripla M = (s, P, B), onde
consideram-se:
(i) Um conjunto especfico Ok de observaco es do tipo k que resultam de um experimento;
(ii) Um conjunto X de estados xi , onde em cada estado xi e possvel realizar uma
observaca o bi (k), com i = 1, . . . , N e k Ok ;
(iii) Uma distribuica o de probabilidade para o estado inicial dada pelo vetor s = [si ],
onde si = P r(xi (0));
(iv) Uma distribuica o de probabilidade para as transico es de estados dada pela matriz
P = [pij ], onde pij = P r(xj (t + 1)|xi (t));
(v) Uma distribuica o de probabilidade para as observaco es em cada estado dada pela
matriz B = [bj (k)], onde bj (k) = P r(Ok |xj ).

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)

Figura 2: Diagrama de transicoes


de estados de um modelo de Markov oculto
terminais, onde ha a probabilidade de emissao
de
de dois estados nao
dois smbolos (m e 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

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 possveis observaco es para cada estado:



 

b1 (Branco) b1 (P reto) b1 (Cinza)
0.1 0.4 0.5
B=
=
.
b2 (Branco) b2 (P reto) b2 (Cinza)
0.6 0.2 0.2
A matriz das probabilidades de transica o de estado e dada por:

P =

0.8 0.2
0.1 0.9


.

A Figura 3 mostra um esquema do experimento. O modelo esta representado


na Figura 4. O algoritmo dado na Tabela 4 e utilizado para gerar as seque ncias de
observaco es. Salienta-se que a seque ncia mais provavel e O = {Cinza, Cinza, Cinza}.
Isto ocorre porque o estado inicial mais provavel e o Estado 1 (urna 1), Cinza e a cor
mais provavel de ser observada no Estado 1, e, a partir do Estado 1, o estado mais
provavel e ainda o Estado 1. A probabilidade de ocorrer esta seque ncia dada a seque ncia
I = {Estado1, Estado1, Estado1} de estados e calculada entao 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
lancador pode utilizar duas moedas, uma normal e uma viciada. A moeda normal oferece 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 tambem o lancador 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 lancador a troque por outra e de apenas
20%.

.8

.1

.2

.3

.7
.9

branco = .1
preto = .4
cinza = .5

branco = .1
preto = .4
cinza = .5

Estado 1

Estado 2

Figura 4: Modelo de urna com 2 estados.

Tabela 4: Algoritmo gerador de sequ encias


de observacoes.

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 esta representado na Figura 5. Tem-se entao o conjunto de observaco es


O = {h, t}, o conjunto de estados X = {N = normal, V = viciada}, a matriz B das
possveis observaco es para cada estado:

B=

bN (h) = 0.50 bN (t) = 0.50


bV (h) = 0.75 bV (t) = 0.25

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

Figura 5: Modelo das moedas.

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)

O primeiro termo do lado direito da equaca o 6, P r(O|I, M ), e a probabilidade de


se ver uma dada seque ncia de observaco es, considerando um dado conjunto de estados.
Para os estados conhecidos, considerando Ok , o calculo e realizado como:
P r(O|I, M ) =

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:

P r(O, I|M ) = s1 b1 (k)

W
1
Y
i=1

bi+1 (k)pi(i+1) .

(7)

Tabela 5: Algoritmo para computar P r(O|M ).

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

Considerando um modelo onde se tem os estados distinguveis xbegin e xend (como


o modelo da Figura 2), entao a equaca o 7, para W +2 passos, onde a sque ncia e observada
nos estados nao terminais, torna-se:
P r(O, I|M ) = pbegin1

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

Finalmente, a probabilidade de ver a seque ncia Cinza,Cinza,Cinza e dada por:


P r(O|M ) =

N
X
i=1

iW

2
X

i3 = 0.0703.

i=1

Exemplo 6 Considere o modelo das moedas apresentado no Exemplo 4. Define-se it


como a probabilidade de acontecer a observaca o Ot no estado xi . Entao, se




0.5
0.5
s=
e B(h) =
,
0.5
0.75
tem-se que o vetor inicial 1 e dado por:

 

s1 b1 (h)
0.25
1
= [si bi (1)] =
=
.
s2 b2 (h)
0.375
Sucessivamente, calcula-se:
2 = P [i1 bi (2)]


 1
0.8 0.2
1 b1 (h)
=
1 b2 (h)
0.1 0.9

 2

0.8 0.2
0.125
=
0.2 0.8
0.281


0.156
=
0.250
e
3 = P [i2 bi (3)]


0.8 0.2
=
0.2 0.8


0.8 0.2
=
0.2 0.8


.0750
=
,
.0656


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

Finalmente, a probabilidade de ver a seque ncia h,h,t,t e dada por:


P r(O|M ) =

N
X
i=1

iW

2
X

i4 = 0.0539.

i=1

3.3. Caminho Gerador Otimo


Outra questao fundamental e , dada um seque ncia de observaco es O, descobrir a seque ncia
de estados I mais provavel, que seja capaz de gerar O. Um criterio simples para tratar
este problema e considerar a seque ncia que torna cada um dos estados o mais provavel2 .
Observa-se que, de forma analoga ao procedimento dado no algoritmo da Tabela 5,
e possvel definir um procedimento backward, atraves de um vetor (t) que registra a
probabilidade de alcancar um dos estados finais, dado um determinado estado corrente.
Este vetor (t) pode ser utilizado para definir um algoritmo para prever a probabilidade
de seque ncias de estados de forma analoga ao algoritmo da Tabela 5.
Seja it a probabilidade de terminar no estado xi no tempo t, dada a seque ncia de
observaco es O, calculada como:
it = P r(xi (t) = si |O, M ).

(8)

Em 8, pode-se utilizar os vetores (t) e (t) para expressar it , obtendo:


[it it ]
,
P r(O|M )
P
t
onde P r(O|M ) e um fator de normalizaca o tal que N
i=1 i = 1.
t =

(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))

Exemplo 7 Considerando o modelo das urnas trabalhado nos Exemplos 3 e 5, dada a


seque ncia de observaco es O = {Cinza, Cinza, Cinza}, pode-se calcular a seque ncia
de estados mais provavel para produz-la. Primeiramente, calcula-se:


= [si bi (1)] =

s1 b1 (Cinza)
s2 b2 (Cinza)

.35
.06

onde max1iN {i1 } = .35, logo index1 = 1(x1 (1)), e, portanto,


r(1) = [index1 ] =

1(x1 (1)) .... ....

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

onde max1iN {i2 } = .142, logo index2 = 1(x1 (2)), e, portanto,


r(2) =

1(x1 (1)) 1(x1 (2)) ....

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

onde max1iN {i3 } = .0581, index3 = 1(x1 (3)), e, portanto,


r(3) =

1(x1 (1)) 1(x1 (2)) 1(x1 (3))

Logo o caminho gerador o timo da sequencia 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
seque ncia de observaco es O = {h, h, t, t}, pode-se calcular a seque ncia de estados mais
provavel para produz-la. Primeiramente, calcula-se:


= [si bi (1)] =

s1 b1 (h)
s2 b2 (h)


=

.25
.675


,

onde max1i2 {i1 } = .675, logo index1 = 2(x2 (1)), e, portanto,


r(1) = [index1 ] =

2(x2 (1)) .... ....

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

onde max1i2 {i2 } = .250, logo index2 = 2(x2 (2)), e, portanto,


r(2) =

2(x2 (1)) 2(x2 (2)) ....

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



onde max1i2 {i3 } = .075, index3 = 1(x1 (3)), e, portanto,


r(3) =

2(x2 (1)) 2(x2 (2)) 1(x1 (3))

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

onde max1i2 {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 o timo da sequencia h,h,t,t e x2 , x2 , x1 , x1 .


3.4. Aperfeicoando o Modelo
O principal problema em HMM e descobrir o melhor modelo M , o que e muito difcil e
nao tem soluca o analtica conhecida. Pode-se derivar uma aproximaca o que e melhor que
a versao corrente. Este procedimento pode ser repetido ate que nehuma melhoria possa
ser verificada.
Em linhas gerais, esta estrategia iniciara com um conjunto inicial M = (s, P, B)
e executar o modelo um numero suficiente de vezes para estimar um novo conjunto de
parametros M 0 = (s0 , P 0 , B 0 ). Estas estimativas sao entao utilizadas como o novo modelo,
e, entao, o processo e repetido.
As estimativas de s e B sao simples de calcular:
s0 = t

(10)

e
PW
0

bj (k) =

t
t=1,Ot =k j
PW t .
t=1 j

(11)

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:
Estimar s utilizando a equac

ao 10
Estimar B utilizando a equac

ao 11
Estimar P utilizando a equac

ao 12

Para estimar pij , calcula-se ij como:


ij = P r(xi (t) = si , xi (t + 1) = sj |), M )
resultando em
ij =

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.

[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, Matematica Intervalar com Aplicaco es 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 Computation, 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 Reasoning, 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, Symposia Gaussiana, Conference B: Statistical Sciences, pp. 47-64, Munich, Germany,
August 2-7, 1993.
[19] W. Yoselogff, Finite Mathematics, Worth Publishing, New York, 1975.
[20] I. O. Kozine and L. V. Utkin, Interval-Valued Finite Markov Chains, Reliable Computing, 8(2): 97-113, 2002.

Anda mungkin juga menyukai