Escolar Documentos
Profissional Documentos
Cultura Documentos
A metodologia de reconhecimento de fala baseada nos modelos de Markov no-observveis (HMM - Hidden Markov Models) uma das mais utilizadas. A teoria dos HMM foi publicada por Baum em 1966 [Baum (66)], sendo a primeira aplicao em reconhecimento de fala proposta por Jelinek logo em 1969 [Jelinek (69)]. No entanto, s a partir de 1975 estas aplicaes comearam a ser reportadas com regularidade [Baker (75)], [Jelinek (75)], [Bahl (75)] e s na dcada de 80 apareceram na literatura um conjunto de artigos explicitando a teoria popular. bsica [Levinson (83)], [Juang (84)], [Rabiner (89)], [Rabiner (93)], que permitiu que esta metodologia se tornasse to
190
Neste captulo faremos uma breve introduo aos fundamentos dos HMM discretos e apresentaremos o princpio da sua aplicao no reconhecimento de sinais de fala.
P (q t = S j | q t1 = S i , q t2 = S k ,......)
1i,j,kN.
(10.1)
Num processo de Markov de primeira ordem a descrio probabilstica condicionada apenas ao estado no instante anterior, podendo ser representado atravs de uma matriz de transio entre estados A={aij}, independente do instante de tempo, em que cada elemento definido por:
aij = P (qt = S j qt1 = Si )
1i,jN.
(10.2)
a
j =1
=1
(10.3)
191
Como exemplo, considere-se o modelo de Markov com 3 estados, para descrever de um modo simplificado o estado do tempo [Rabiner(89)]. Neste modelo, cada estado corresponde observao, uma vez por dia, das seguintes condies atmosfricas: Estado 1: Dia chuvoso; Estado 2: Dia nublado; Estado 3: Dia com sol; Assumindo que o estado do tempo num dia apenas depende do estado do tempo no dia anterior e que a matriz de transio de estados dada por:
0.4 0.3 0.3 A = {aij } = 0.2 0.6 0.2 , 0.1 0.1 0.8
(10.4)
Admitindo que o tempo num determinado dia de sol (estado 3), pode perguntar-se, por exemplo, qual a probabilidade de os 7 dias seguintes serem dias de sol-sol-chuva-chuva-sol-nublado-sol. Se definirmos a sequncia de observaes O correspondente sequncia de estados {S3, S3, S3, S1, S1, S3, S2, S3}, a probabilidade da sequncia O dado o modelo dada por:
192
P (O | Modelo) = P (S 3 | S 3 )P (S 3 | S 3 )P (S1 | S 3 ) P (S1 | S1 )P (S 3 | S1 )P (S 2 | S 3 )P (S 3 | S 2 ) . = a33 a33 a31a11a13 a32 a23 = 0.8 0.8 0.1 0.4 0.3 0.1 0.2 = 1.536 10 4
(10.5)
O processo descrito denominado de modelo de Markov observvel, uma vez que a cada observao corresponde um estado. Este modelo no entanto bastante restritivo e incapaz de ser utilizado em muitos problemas reais. Para tornar o modelo mais flexvel, associa-se a cada estado uma funo distribuio de probabilidade de observaes. Assim, cada estado pode gerar uma observao, de entre um conjunto, de acordo com esta distribuio. A mesma sequncia de observaes pode assim ser gerada, com probabilidades diferentes, atravs de sequncias diferentes de estados. A sequncia de estados que gera uma sequncia de observaes no conhecida, pelo que este modelo se denomina de no-observvel. Estes modelos encontram aplicaes na soluo de uma grande variedade de problemas. Para ilustrar melhor este duplo processo estocstico, considere-se um conjunto de N urnas, cada uma com M bolas de cores diferentes. Estas urnas esto colocadas por detrs de uma cortina, apenas visvel a um indivduo que as manuseia. Este indivduo, de acordo com determinado processo aleatrio, escolhe uma urna inicial e retira dela uma bola mostrando-a atravs da cortina. A cor da bola a nica observao para quem est na sala. Seguidamente, a bola colocada na urna de onde foi retirada e escolhida outra urna atravs de um processo aleatrio que depende apenas da ltima urna escolhida. Para este caso, os estados correspondem s urnas escolhidas e as cores das bolas s observaes, sendo a probabilidade de cada cor definida diferentemente para cada urna.
Elementos de um HMM
193
1iN.
(10.6)
3) A distribuio de probabilidades de transio entre estados definida pela matriz A={aij} em que aij = P (q t+1 = S j | q t = S i ) 1i,jN. (10.7)
4) O nmero M de smbolos distintos observveis por estado. Estes smbolos denotam-se de V={V1,V2,....,VM}. Dado que neste caso existe um nmero finito de smbolos, o modelo representado denomina-se de modelo discreto. 5) A distribuio de probabilidade dos smbolos observveis para cada estado Sj , B={bj(k)} em que: b j (k) = P (vk no instante t | q t = S j ) 1jN,1kM. (10.8)
A especificao do modelo pode ser descrita atravs da notao abreviada, =(A,B,). (10.9)
194
probabilidades de smbolos do estado Si, isto ot=Vk, com probabilidade bi(k) definida pela matriz B; 3) Transita-se para novo estado qt=Sj de acordo com a distribuio de probabilidades de transio entre estados definida pela matriz A; 4) Se t > T a sequncia est gerada. Caso contrrio incrementa-se t e retorna-se ao ponto 2;
195
3) Estimao de parmetros: Dada uma sequncia (ou conjunto de sequncias) de observaes O={o1 o2, ....oT}, de que forma se ajusta os parmetros do modelo =(A,B,) de modo a maximizar a
e por outro lado, a probabilidade da sequncia de estados O dado o modelo : . P (Q | ) = q1aq q 2 aq q .....aq 1 23 T 1qT (10.11)
A probabilidade conjunta da sequncia de observaes e da sequncia de estados dado o modelo resulta do produto dos dois termos anteriores,
P (O, Q | ) = P (O | Q, )P (Q | ) .
(10.12)
196
Finalmente, a probabilidade da sequncia de observaes dado o modelo resulta da soma, para todas as sequncias de estados possveis, desta probabilidade conjunta:
P (O | ) =
P (O, Q | ) .
todos os Q
(10.13)
O clculo de P(O|) atravs da equao 10.13 extremamente pesada computacionalmente, envolvendo um nmero (2T-1)NT multiplicaes e NT-1 adies. Mesmo para apenas trs estados e 10 observaes por estado, este valor de 1180979. Felizmente possvel calcular esta probabilidade de um modo eficiente, atravs de um processo recursivo [Baum(66)], a que se d o nome de algoritmo progressivo-regressivo (forward-backward procedure). Considerando a varivel progressiva t(i) definida como a probabilidade de observao parcial da sequncia {o1, o2, ... ot} at ao instante t, conjuntamente com a ocorrncia do estado Si no instante t, dado o modelo,
(10.14)
1(i) = i bi (o1 )
2) Recurso:
N
1 i N.
(10.15)
t + 1(j) = bj (o t + 1 ) t (i)a ij
i =1
1 t T 1,1 j N .
(10.16)
A probabilidade da sequncia de observaes dada pela soma da varivel progressiva para todos os estados Si no instante final T,
P (O | ) = T (i) .
i =1 N
(10.17)
197
O clculo de P(O|) utilizando este mtodo recursivo necessita apenas de N(N+1)(T-1)+N multiplicaes e N(N-1)(T-1) adies, o que para N=3 e T=10 perfaz 165 operaes, contra as 1180979 necessrias para o clculo atravs da equao 10.13. Pode-se tambm considerar uma varivel regressiva (backward)
(10.18)
T (i) = 1
2) Recurso
1 i N.
(10.19)
t (i) = t +1(j)a ij b j (o t +1 )
i =1
t = T - 1, T 2....1, 1 j N . (10.20)
(10.21)
Repare-se que, a probabilidade P(O|) em qualquer instante t, pode ser tambm calculada com ambas as variveis progressiva e regressiva, atravs de:
P (O | ) = t (i) t (i) .
i =1 N
(10.22)
198
t ( i) =
(10.23)
1tT.
(10.24)
Embora este mtodo maximize o nmero de estados com maior probabilidade em cada instante, pode gerar uma sequncia de estados no vlida, bastando para isso que a probabilidade de transio entre dois estados seja zero. Uma outra soluo escolher a sequncia de estados que gera a sequncia de observaes em causa com maior probabilidade, P(Q|O,), que equivalente a maximizar P(Q,O|). Esta maximizao realizada de forma eficiente pelo algoritmo de Viterbi: 1) Inicializao:
Estimao de parmetros
199
1( i) = ibi( O1 )
1 i N,
(10.25a) (10.25b)
1( i) = 0.
2) Recurso:
1 i N.
t( j ) = max(bj ( ot ) t 1(i)aij )
1 i N
2 t T ,1 j N
, (10.26a)
2 t T,1 j N
(10.26b)
3) Terminao:
P * = max( t(i))
1 i N
(10.27a)
(10.27b)
t = T-1,T- 2,......,1 .
(10.28)
200
i =
(10.29a)
ij =
(10.29b)
i( k ) =
(10.29c)
sendo os valores do lado direito destas equaes calculadas a partir do modelo presente . Foi provado por Baum que este procedimento melhora a probabilidade de observao da sequncia, ou seja:
P (O | ) P (O | ) .
(10.30)
A reestimao efectuada at ser atingido um determinado critrio de paragem, e.g., no existam melhorias considerveis entre duas iteraes. De forma a concretizar as equaes 10.29(a-c), define-se a varivel intermdia t(i,j), como a probabilidade conjunta de ocupar o estado Si no instante t e ocupar o estado Sj no instante t+1:
t( i, j ) = = t( i)aijbj( ot +1 ) t +1( j ) P( O | ) t( i)aijbj( ot +1 ) t +1( j ) i=1 j =1
(10.31)
A probabilidade de ocupar o estado Si no instante t dado pela equao 10.23 pode ser calculada utilizando 10.31, somando t(i,j) para todos os j:
t( i ) =
N
t( i, j )
j =1
(10.32)
201
As equaes de reestimao podem ento ser rescritas utilizando estas variveis auxiliares:
i = 1( i) ,
(10.33a)
t( i, j )
aij =
t =1 T 1 t =1
T 1
t( i )
T
(10.33b)
bj( k) =
t =1 Ot = vk T t =1
t( j )
. (10.33c)
t( j )
reconhecimento efectuado determinando a probabilidade da entidade a reconhecer sido gerada por cada um dos modelos. Para a construo de um reconhecedor de sinais de fala utilizando HMM, deve-se inicialmente construir um conjunto de modelos, um para cada classe de sons (fonemas, palavras, etc.) a reconhecer, atravs dos seguintes passos que constituem a fase de treino: 1) definir o conjunto de classes de sons a reconhecer que corresponder ao nmero L de modelos a treinar; 2) escolher uma topologia (o tipo de modelo, o nmero de estados e o nmero de observaes por estado);
202
3) obter, para cada classe, um conjunto com dimenso razovel de dados de treino; 4) treinar os modelos utilizando, por exemplo, a reestimao de Baum-Welch; Para o reconhecimento de um som, comea-se por extrair a sequncia de observaes correspondente ao sinal de fala. Seguidamente calculada a probabilidade da sequncia de observaes, dado cada um dos modelos. Atribu-se sequncia de observaes a som (classe) associado ao modelo que obteve a mxima probabilidade.
P (O | j ) = max P (O | i )
1 i L.
(10.34)
Som Reconhecido
As caractersticas do sinal de entrada que servem como observaes, obtidos trama-a-trama, so normalmente parmetros espectrais derivados de LPC tais como os cepstrum, a energia, e as respectivas variaes em relao trama anterior (delta cepstrum e delta energia). Sendo estes valores contnuos, necessrio proceder sua quantificao vectorial, tornando-os um conjunto finito de
203
smbolos,
resultando
numa
degradao
da
percentagem
de
reconhecimento, a menos que se utilize um livro de cdigo bastante grande. Outra soluo para este problema a utilizao de modelos contnuos, onde as distribuies associadas s observaes so caracterizadas por uma mistura de funes densidade de probabilidade, normalmente com distribuio gaussiana:
bj( O ) =
m =1
cjm( O, jm, U jm )
1 j N,
(10.35)
bj(k) dada pela equao 10.33c desdobra-se nas equaes para reestimar cjm, jm e Ujm [Rabiner (85)].
Nas aplicaes dos HMM para o reconhecimento de fala, no se usa normalmente modelos ergdicos (completamente ligados) mas sim modelos esquerda-direita, ou seja, modelos em que de um estado Si s possvel transitar para o estado Si+1, ou permanecer no mesmo estado, como mostra a figura 10.3.
Figura 10.3 Modelo Esquerda-Direita normalmente utilizado nas aplicaes de reconhecimento de fala
204
Esta topologia traz algumas simplificaes na estrutura dos parmetros do modelo, que se explicitam seguidamente. 1) A distribuio de estados inicial tem apenas um valor no nulo (igual a 1), correspondente ao estado S1 2) A matriz de distribuio das probabilidades de transio entre estados, tem, por cada linha, apenas dois valores no nulos. Os valores correspondentes a aii e a ai(i+1)
a11 0 0 0
a12 a 22
0 0
0 a 23 a33 0
0 0 , a34 1
(10.35)