• Nenhum resultado encontrado

Os problemas elementares dos HMMs

2.3 Modelos de Markov n~ao observaveis

2.3.4 Os problemas elementares dos HMMs

S~ao geralmente identi cados como tr^es os problemas elementares dos HMMs de cuja resoluc~ao depende a sua aplicabilidade. As tr^es secc~oes seguintes descrevem esses proble- mas e apresentam as respectivas soluc~oes.

A formulac~ao seguinte costuma ser apresentada na literatura para observac~oes dis- cretas. Esta tradic~ao tem na maior parte dos casos, intuitos didacticos, uma vez que a maioria dos trabalhos actuais utiliza na pratica observac~oes contnuas e consequentemente func~oes de probabilidade contnuas.

O problema da avaliac~ao

Seguidamente, descreve-se o designado problema da avaliac~ao ou do teste do mo- delo. Dada uma sequ^encia de observac~oes O = fo1o2:::oTg, pretende-se calcular a probabilidade Pr(Oj) de esta sequ^encia ter sido produzida pelo modelo . Quando se disp~oe de varios modelos, a soluc~ao deste problema permite decidir qual deles tem maior probabilidade de ter produzido determinada sequ^encia para efeitos de classi cac~ao ou reconhecimento.

Para calcular a probabilidadePr(Oj) directamente, enumeram-se todas as sequ^encias possveis de estados S com comprimento T (o numero de observac~oes). Uma sequ^encia

xa de estados S 2S tem a seguinte probabilidade Pr(Sj) = s1TY;1

t=1astst+1: (2.15)

A probabilidade da sequ^encia de observac~oes O ter sido gerada a partir dessa sequ^encia de estados e dada por

Pr(OjS) = YT

t=1bst(ot):

A probabilidade conjunta deO e S ocorrerem simultaneamente e dada por Pr(OSj) =Pr(OjS)Pr(Sj):

50 Modelos de Markov n~ao observaveis Assim, a probabilidade de O dado o modelo e dada por

Pr(Oj) =X

S

Pr(OjS):Pr(Sj) (2.16)

=X

S

s1bs1(o1):YT

t=2ast;1stbst(ot):

Para efectuar este calculo s~ao necessarias (2T;1)NT multiplicac~oes eNT ;1 adic~oes no total de 2NT ;1 operac~oes. Mesmo valores relativamente pequenos de N e de T n~ao permitem que este calculo seja praticavel. Uma forma de analisar este calculo e o de que a cada instantet existemN estados possveis de atingir. Como so existemN estados, todas as sequ^encias de estado possveis t^em de passar repetidamente nestes N estados, qualquer que seja o comprimento da sequ^encia. Esta analise permite reduzir muito o numero de operac~oes anteriores conforme se explicara de seguida.

Considere-se a probabilidade de obter a parte da sequ^encia de observac~oes gerada ate ao instante t, quando nesse instante se chegou ao estadoi com o modelo

t(i) =Pr(o1o2:::otst=ij)

em que a probabilidade t(i) e designada por progressiva (\forward"). Estas probabilida- des podem ser calculadas por induc~ao pelas seguintes express~oes:

1(i) =ibi(o1) 1 i N

t(j) = bj(ot)XN

i=1 t;1(i)aij 2 t T 1 j N: (2.17) Por m, obtem-se a pretendida probabilidade da sequ^encia de observac~oes

Pr(Oj) =XN

i=1 T(i):

Esta forma de calculo de Pr(Oj) e designada por algoritmo progressivo. O numero de operac~oes necessarias e agora deN(N+1)(T;1)+N multiplicac~oes e deN(N;1)(T;1) adic~oes no total de 2N2(T;1)+N operac~oes. Tendo em conta queN e em geral inferior a 10 e que T e muito superior a 2, em geral na casa das centenas, veri ca-se que a economia de calculo e aproximadamente da ordem deN(T;2) vezes menos operac~oes com o algoritmo progressivo quando comparado com o calculo directo (ex: para os valores tpicos de N=5 e T=100 obtem-se aproximadamente 31068). De forma semelhante, pode-se considerar

Aplicac~ao dos HMMs no reconhecimento de fala 51 a probabilidade de obter as T;t ultimas observac~oes ate ao nal da sequ^encia no instante T, a partir da observac~ao ot produzida no instantet pelo estado i:

t(i) =Pr(ot+1ot+2:::oTst=ij):

A probabilidadet(i), designada por regressiva, (\backward") pode ser calculada por induc~ao com as seguintes express~oes:

T(i) = 1 1 i N e t(i) =XN

j=1aijbj(ot+1)t+1(j) 1 t T ;11 i N: (2.18) Obtem-se de novo a probabilidade da sequ^encia de observac~oes

Pr(Oj) =XN

i=1ibi(o1)1(i)

designando-se este procedimento por algoritmo regressivo. Os algoritmos progressivo e regressivo podem ser utilizados na resoluc~ao dos outros dois problemas elementares segui- damente apresentados.

O problema da descodicac~ao

O problema da descodi cac~ao e habitualmente enunciado como o segundo problema dos modelos HMM. Dada uma sequ^encia de observac~oes O=o1o2:::oT e um modelo , pretende-se determinar a sequ^encia de estados S = s1s2:::sT subjacente. Trata- se portanto de recuperar a informac~ao escondida pelo modelo. Excluindo-se os modelos degenerados, n~ao existe uma soluc~ao correcta para este problema. Existem contudo varios criterios razoaveis que podem ser seleccionados de acordo com o m em vista. A utilizac~ao tpica destas soluc~oes prende-se com o estudo da estrutura do modelo, segmentac~ao do sinal, obtenc~ao de estatsticas para cada estado, etc. O criterio mais utilizado consiste em escolher a sequ^encia mais provavel de estados. Ou seja, maximizarPr(SjO) o que e equivalente a maximizar Pr(SOj). Determina-se a probabilidade mais alta de, ao m das primeiras t observac~oes, ter ocorrido uma sequ^encia de estados que terminou no estado i:

t(i) = maxs

1s2:::st;1Prs1s2:::st;1st=io1o2:::otj]: Por induc~ao obtem-se

t(j) = max1

iN t;1(i)aij]:bj(ot) 2 t T1 j N: (2.19)

52 Modelos de Markov n~ao observaveis Para se obter a melhor sequ^encia de estados, e necessario tomar nota dos argumentos que maximizam a express~ao anterior num vector que se representa por

t(j) = arg max1

iN t;1(i)aij] 2 t T 1 j N:

Desta forma estabelece-se um algoritmo que e iniciado com 1(i) =ibi(o1) 1(i) = 0: No nal determinam-se os valores optimizados:

Pr(SOj) = max1

iN T(i)]

sT = arg max1

iN T(i)]

st =t+1(st+1) t =T ;1T ;2:::1:

As ultimas duas express~oes permitem determinar a melhor sequ^encia de estados, a que determina a melhor probabilidadePr(SOj). Este algoritmo e conhecido pelo nome de algoritmo de Viterbi.

Como se viu, o algoritmo progressivo, ou o regressivo, pode ser utilizado para o calculo da probabilidade Pr(Oj) que e igual a soma de Pr(SOj) (equac~ao 2.16) para todas as sequ^encias possveis de estados S 2 S. No reconhecimento de fala substitui-se ha- bitualmente Pr(Oj) pelo valor de maxS2S Pr(OSj)], determinado pelo algoritmo de Viterbi. A experi^encia mostra que os resultados obtidos podem n~ao ser iguais, espe- cialmente nos procedimentos de estimac~ao dos par^ametros dos HMMs. Nesses casos, o algoritmo progressivo, ou o regressivo, pode ser mais robusto do que o de Viterbi. Con- tudo, os resultados obtidos s~ao em geral muito semelhantes e o algoritmo de Viterbi e mais e ciente em termos computacionais, em particular se se tomarem os logaritmos das express~oes anteriores (convers~ao dos produtos em adic~oes). Ao mesmo tempo, determina a sequ^encia mais provavel dos estados, a qual pode ser necessaria se se pretender uma segmentac~ao explcita do sinal. Estas vantagens fazem do algoritmo de Viterbi um dos mais usados nos sistemas de reconhecimento de fala.

O problema da estimac~ao ou do treino do modelo

O mais difcil dos problemas basicos dos HMMs e o do ajuste dos par^ametros destes modelos de forma a satisfazer determinado criterio. Dada uma sequ^encia de observa- c~oes O = o1o2:::oT, pretende-se estimar os par^ametros de = (AB() de forma a

Aplicac~ao dos HMMs no reconhecimento de fala 53 maximizar a probabilidadePr(Oj). Esta forma de optimizac~ao e conhecida pela designa- c~ao de criterio da maxima verosimilhanca (MV)5:

MV = argmax Pr(Oj):

N~ao existe um procedimento conhecido para determinar analiticamente os par^ametros do modelo que conduzem ao maximo global MV. Pode-se, no entanto, escolher AB e ( por forma a que Pr(Oj), seja localmente maximizada. Para tal s~ao utilizados procedimentos iterativos, tal como o metodo do gradiente ou o algoritmo de Baum-Welch, tambem designado de reestimac~ao. Este ultimo foi utilizado no presente trabalho para a estimac~ao dos par^ametros dos HMMs.

A formulac~ao do algoritmo de reestimac~ao seguidamente apresentada refere-se ao caso dos HMMs contnuos, ou seja, em que as probabilidades de observac~ao s~ao func~oes de probabilidade contnuas. Utiliza-se tambem a designac~ao CHMMs, (\continuous hidden Markov models"). Neste caso, as express~oes de probabilidades de observac~ao condicionais ou conjuntas, Pr(O:::) devem ser substitudas por func~oes densidade de probabilidade na forma f(O:::). Para que estas func~oes possam ser estimadas de forma consistente e necessario considerar algumas restric~oes. A forma mais geral de representac~ao de uma func~ao densidade de probabilidade, para a qual o algoritmo de reestimac~ao tem sido formulado, e a de uma mistura (subsecc~ao 2.2.7) nita de M componentes da forma

bj(ot) = XM

k=1cjkN(otjk&jk) 1 j N (2.20) em quecjke o coe ciente ou peso dak-esima componente no estadoj eN e qualquer fun- c~ao densidade log-c^oncava ou elptica (gaussiana por exemplo). Pode demonstrar-se que um estado com uma mistura de densidades de probabilidade de observac~ao e equivalente a um conjunto deM estados, cada um deles com apenas uma destas densidades (Rabiner e Juang, 1993).

Sem perda de generalidade, assume-se que N e gaussiana com vector de medias jk e matriz de covari^ancia &jk para ak-esima componente no estado j. Os pesos das compo- nentes satisfazem a seguinte restric~ao estocastica

M

X

k=1cjk= 1 cjk01 j N1 k M

5Deve-se referir o facto de existirem outros criterios possveis (Franco e Serralheiro, 1991). Contudo, o criterio MV tem sido o mais utilizado no reconhecimento de fala, dispondo dos metodos mais robustos em termos numericos.

54 Modelos de Markov n~ao observaveis de forma a que a func~ao densidade de probabilidade seja normalizada adequadamente,

isto e Z 1

;1

bj(o)do= 1 1 j N:

Considere-se as0s1 = s1 para maior simplicidade. A densidade de probabilidade de se observar O para uma sequ^encia de estadosS no modelo vem expressa por

f(OSj) = YT

t=1ast;1stbst(ot)

= XM

k1=1 M

X

k2=1

M

X

kT=1 T

Y

t=1ast;1stbstkt(ot)]cs1k1cs2k2csTkT:

Considera-se: )T como o produto cartesiano de ordem T de ) =f12:::Mg K 2 )T um conjunto de ndices kt das gaussianas N(otstkt) e dos respectivos pesos cstkt

associados a uma sequ^encia de estados S. Assim, e possvel considerar a densidade de probabilidade (Huang et al., 1990):

f(OSKj) =YT

t=1ast;1stcstktN(otstkt&stkt)

e a partir desta express~ao determinar a densidade de probabilidade conjunta de observac~ao de O

f(Oj) = X

S2S

X

K2Tf(OSKj):

Considere-se agora a func~ao auxiliar de Baum (Kullback e Leiber, 1951 Baum et al., 1970)

Q() = 1f(Oj):X

S2S

X

K2T f(OSKj):logf(OSKj) com

logf(OSKj) =XT

t=1log ast;1st +XT

t=1log cstkt +XT

t=1logN(otstkt&stkt):

Prova-se que a maximizac~ao desta func~ao em ordem a , com xo, implica o aumento da verosimilhanca (Baum, 1972):

Q()Q())f(Oj)f(Oj):

O designado algoritmo de Baum-Welch, efectua esta maximizac~ao de forma iterativa subs- tituindo pelos par^ametros determinados apos maximizac~ao de Q() na iterac~ao

Aplicac~ao dos HMMs no reconhecimento de fala 55 anterior. A func~ao Q e maximizada atraves de tecnicas conhecidas de optimizac~ao com restric~oes (Huang et al., 1990).

Os modelos HMM utilizados no reconhecimento de fala devem representar conveniente- mente as variac~oes acusticas referentes a diversas locuc~oes (repetic~oes) da mesma palavra ou elemento subpalavra. Estas repetic~oes podem ser do mesmo orador ou de oradores diferentes no caso de se pretender um reconhecedor independente do orador (subsecc~ao 1.1.3). O material de fala para o treino de cada modelo deve incluir um conjunto re- presentativo destas repetic~oes, ou seja, em termos da formulac~ao dos HMMs, devem ser utilizadas simultaneamente multiplas sequ^encias de observac~oes OR=fO1:::Org. As- sumindo que estas sequ^encias de observac~oes s~ao independentes entre si, a estimac~ao dos par^ametros baseia-se na maximizac~ao de

logf(ORj) = Xr

n=1f(Onj):

Para tal, a func~ao Qpode ser rede nida (QR) como a soma de func~oes parcelaresQn refe- rentes a cada sequ^encia de observac~oes On. Considerem-se as seguintes func~oes densidade de probabilidade:

nt(ij) =f(st=ist+1 =jjOn) (2.21)

= nt(i)aijnt+1(j)PMk=1cjkN(ont+1jk&jk)

Pi nTn(i)

nt(i) =f(st=ijOn) (2.22)

= nt(i)nt(i)

Pi nTn(i)

nt(jk) =f(st=jkt =kjOn) (2.23)

= nt(j)cjkN(ontjk&jk)Pi nt;1(i)aij

Pi nTn(i) :

Como resultado da maximizac~ao deQobt^em-se as seguintes equac~oes de reestimac~ao:

aij =

Prn=1PTt=1n;1 nt(ij)

Prn=1PTt=1n;1 nt(i) (2.24) cjk =

Prn=1PTt=1n nt(jk)

Prn=1PTt=1n nt(j) (2.25)

56 Modelos de Markov n~ao observaveis

jk= Prn=1PTt=1n nt(jk)ont

Prn=1PTt=1n nt(jk) (2.26)

&jk=

Prn=1PTt=1n nt(jk)(ont;jk)(ont;jk)t

Prn=1PTt=1n nt(jk) : (2.27)