Académique Documents
Professionnel Documents
Culture Documents
RECIFE, AGOSTO/2010
Universidade Federal de Pernambuco
Centro de Informtica
Ps-graduao em Cincia da Computao
RECIFE, AGOSTO/2010
Catalogao na fonte
Bibliotecria Jane Souto Maior, CRB4 -571
Primeiramente meus pais e irm, Sobrinho, Lcia e Ana Paula, que foram e sempre
sero os responsveis por minha base familiar, que sempre me faz acreditar que posso
conseguir os objetivos mais desafiadores.
Em seguida, mas no menos importante, a meu orientador e amigo, professor Edson
Carvalho, pela orientao e suporte necessrios para a concluso deste trabalho.
A minha irm, fonoaudiloga Ana Paula, que alm do suporte familiar, me ajudou
bastante nos aspectos fonticos e fonolgicos deste trabalho, e na gravao das bases de
dados, juntamente com seu esposo, meu grande amigo, Marcos Aurlio.
Ao grande amigo Carlos Pina, pela amizade e assistncia fundamental ao desenvolvi-
mento deste trabalho.
A minha prima Carla Virgnia e seu esposo Wagner Cunha, pelo apoio constante em
Recife.
Ao amigo e parceiro de trabalho na Vocal Lab, Alexandre Maciel, pelo apoio e
orientaes necessrias. Adicionalmente, ao amigo Daniel Brito, tambm membro da
empresa.
Ao Ranniery Maia, pela prestatividade no esclarecimento de questes relacionadas ao
desenvolvimento deste trabalho.
A todos os meus familiares e parentes aqui representados por: Ceclia Soares, Carlos
e Maria Soares, Silvio e Nilza Lobato, Fbio Rolim, Josu Rolim, Eduardo Motta, Lcia
Rolim, Izabel Rolim, Maria Rolim, Luis e Mercedes Motta e Aviz e Daniel Rolim.
A todos os meus amigos aqui representados por Alexandre Conceio e Jeane
Anselmo, Fabrcio Lima e Ana Tereza, Luana Paula Arajo, Fabrcio Tuma, Katarine
Costa, Nercy Virgnia, Ismael Nazareno, Ana Paola Pedrosa e Lidiane Jaime.
A todos os meus familiares e amigos que acreditaram em meu potencial e, direta ou
indiretamente, ajudaram no desenvolvimento deste trabalho, e que por razes conhecidas
esto aqui representados pelas pessoas acima citadas.
iv
"A preocupao com o prprio homem e seu destino deve constituir
sempre o interesse principal de todos os esforos tcnicos."
ALBERT EINSTEIN
Resumo
O avano da tecnologia nos conduz a uma relao cada vez mais prxima a computadores
e outros dispositivos eletrnicos. Juntos a este avano dos equipamentos est a evoluo
das interfaces humano-maquina que auxiliam nesta relao nem sempre agradvel. Assim
sendo, o desenvolvimento de sistemas que tm como objetivo tornar esta comunicao
mais natural e agradvel tem estado em foco, e dentre estes, os sistemas de processamento
de fala so excelentes opes, pois permitem esta interao com equipamentos atravs da
fala, como na comunicao humana tradicional. Atualmente, tanto o reconhecimento de
fala quanto a sntese j se fazem presentes no dia-a-dia, como reconhecedores de palavras
no pr-atendimento de call centers de empresas, ou fala sinttica para se comunicar com
o usurio em equipamentos de navegao GPS, leitores de mensagens de celular e e-mail,
dentre outros. O uso de modelos ocultos de Markov em processamento de fala tem
alcanado excelentes resultados, primeiramente em reconhecimento, onde foram suas
primeiras aplicaes e as que obtiveram maior destaque, e atualmente tambm em sntese,
superando inclusive aspectos negativos de outras abordagens, como a necessidade de uma
extensa base de dados de unidades fonticas para obter bons resultados. Esta dissertao
apresenta o desenvolvimento de um sintetizador de fala para o idioma portugus falado
no Brasil, baseado em modelos ocultos de Markov. Este trabalho aborda a construo de
um algoritmo de determinao da slaba tnica de palavras, um algoritmo de converso
de grafemas em fonemas, e um algoritmo de separao silbica de palavras transcritas
foneticamente. Por conseguinte, apresenta a tcnica e suas caractersticas aplicadas
sntese de fala.
vi
Abstract
vii
Sumrio
Lista de Figuras x
Lista de Tabelas xi
1 Introduo 1
1.1 Motivao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2 Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.3 Estrutura . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2 Converso Texto-Fala 5
2.1 Analise Textual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.2 Analise Fontica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.3 Anlise Prosdica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.3.1 Parmetros Prosdicos . . . . . . . . . . . . . . . . . . . . . . 9
viii
4 Sintetizador de Fala para Portugus do Brasil baseado em HMM 31
4.1 Informaes da Locuo . . . . . . . . . . . . . . . . . . . . . . . . . 31
4.1.1 Pr-processamento Textual . . . . . . . . . . . . . . . . . . . . 31
4.1.2 Converso Grafema-Fonema e Determinao da Vogal Tnica
em Palavras . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
4.1.3 Diviso Silbica . . . . . . . . . . . . . . . . . . . . . . . . . 36
4.1.4 Classificao . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
4.2 Informao Contextual . . . . . . . . . . . . . . . . . . . . . . . . . . 37
4.3 Agrupamento de Contexto baseado em rvores de Deciso . . . . . . . 39
4.4 Treinamento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
4.4.1 Base de Dados de Fala . . . . . . . . . . . . . . . . . . . . . . 41
4.4.2 Preparao . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
4.4.3 Parmetros de Treinamento . . . . . . . . . . . . . . . . . . . 42
4.5 Avaliao dos Resultados . . . . . . . . . . . . . . . . . . . . . . . . . 43
5 Concluses 47
5.1 Propostas Futuras . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
Referncias Bibliogrficas 49
Appendices 59
ix
Lista de Figuras
x
Lista de Tabelas
xi
D.27 Regras de converso de grafema para fonema para letra Z . . . . . . . . 77
xii
Lista de Siglas
F0 Fundamental Frequency
xiii
Introduo
1
A comunicao o grande instrumento de troca de informaes entre seres humanos, que
integrada tecnologia, faz com que esteja em constante evoluo. Sua importncia no
est apenas na relao entre seres humanos, mas tambm com as ferramentas advindas
do avano tecnolgico.
Os primeiros sistemas operacionais, por exemplo, eram controlados apenas por linhas
de comandos, limitando seu uso a quem detivesse o conhecimento. Com o passar do
tempo, surgiram as interfaces grficas, cheias de botes, cones, menus e outros recursos
que os tornavam mais intuitivos, principalmente quando manipulados por um dos grandes
inventos da poca, o mouse, que possibilitava a realizao de aes atravs de simples
cliques.
A tecnologia evoluiu em diversos aspectos muito alm da melhoria de interfaces,
seu poder computacional aumentou, tornou-se portvel, e acessvel a grande parte da
populao. Computadores, antes mquinas caras, que apenas grandes empresas com
alto poder aquisitivo podiam ter, hoje so facilmente encontrados em todos os tipos de
empresas e at mesmo em residncias, para uso domstico. Esta evoluo possibilita
que sistemas computacionais estejam presentes em praticamente todos os equipamentos
eletrnicos atuais, de vdeo-games geladeiras, do simples uso domstico ao auxlio para
o desvendamento do genoma humano e busca para a cura do cncer.
Atualmente possvel ver computadores falando, entendendo e aprendendo, no
apenas auxiliando pessoas em tarefas, mas tambm as substituindo. J possvel ligar
para call centers de empresas, e ao invs de falar com um atendente humano, interagir
com um atendente virtual atravs da fala, que identifica o assunto a ser tratado e direciona
ao setor especfico ou at mesmo resolve sem a necessidade de um atendente humano.
A ideia de fazer com que mquinas fossem capazes de gerar sinais de fala, como
humanos, existe h mais de setenta anos. Um dos primeiros registros de aplicaes desta
1
1.1. MOTIVAO
1.1 Motivao
Um sintetizador de fala pode ser definido como um sistema que produza sinais de fala
artificialmente a partir de textos digitados, e pode ser desenvolvido atravs de software
ou hardware.
A converso de texto-escrito em texto-falado no um procedimento trivial, uma
vez que, por mais simples que seja o idioma que est sendo trabalhado, ele possui
particularidades, como palavras com mesma grafia e com sons diferentes dependentes do
contexto, dentre outras. Adicionalmente, deve ser capaz de lidar com siglas, nmeros,
abreviaes e, alm do mais, para obter naturalidade prxima da voz humana, necessrio
desenvolver um bom modelo prosdico, que o principal instrumento para expressar
emoes e sentimentos em falas. A prosdia quem gera a entonao que determinadas
palavras ou slabas devem ter de acordo com o que o usurio deseja expressar; o grande
diferencial que a linguagem falada tem sobre a escrita, que neste sentido bastante
limitada.
2
1.2. OBJETIVOS
1.2 Objetivos
Dentre diversas abordagens utilizadas para o desenvolvimento de sistemas sintetizadores
de fala, a baseada em modelos ocultos de Markov tem mostrado bons resultados, como
em Yoshimura (2002), Tokuda et al. (2002), Zen and Toda (2005).
da Silva Maia (2008) aplicou o conhecimento alcanado pela literatura anterior para
dar incio ao desenvolvimento de um sintetizador para o portugus falado no Brasil. Ele
detalha o uso de HMM para sntese de fala, assim como reune informaes a respeito do
idioma para a realizao do agrupamento baseado em contexto.
Assim, define-se como objetivo deste trabalho o desenvolvimento de um sintetizador
3
1.3. ESTRUTURA
de fala baseado em modelos ocultos de Markov, detalhando a construo das etapas que
levam a este objetivo, como:
1.3 Estrutura
Este trabalho est organizado da seguinte forma:
O Captulo 2 descreve as macro etapas de um sistema de converso de texto em fala:
Seo 2.1, Seo 2.2 e Seo 2.3.
O Capitulo 3 apresenta os fundamentos necessrios a certa dos Modelos Ocultos de
Markov, e descreve, de forma geral, o funcionamento de um sintetizador baseado em
modelos ocultos de Markov.
O Capitulo 4 descreve os detalhes da implementao realizada, assim como os
resultados obtidos atravs de testes subjetivos realizados.
O Capitulo 5 conclui as ideias do trabalho e ressalta alguns aspectos importantes
e relevantes percebidos durante o desenvolvimento do trabalho, alm de apresentar
possveis evolues.
4
Converso Texto-Fala
2
Ao analisar a comunicao humana, possvel identificar dois componentes: verbal e
prosdico. A parte verbal a comunicao simblica, feita atravs de palavras, que
organizadas em sequncia, formam uma sentena. Em contra partida, o componente
prosdico no um composto por smbolos, e sim por entonaes, que so responsveis
por expressar algum sentimentos, emoes, surpresa, ou at mesmo enfatizar uma palavra
em uma sentena.
A prosdia no um componente discreto, uma vez que no possui unidades que
possam ser combinadas em sequncia para expressar algum significado. Uma frase
de elogio, quando falada com entonao indicando discordncia, pode muito bem ser
interpretada como sarcasmo. Quando estes dois componentes no entram em acordo, a
informao prosdica quem prevalece.
Em linhas gerais, o processo de comunicao humana , de certa forma, simples.
Considerando um dilogo entre dois indivduos, um assumindo o papel de locutor e
o outro de ouvidor. Quando o primeiro pensa em uma mensagem para passar para o
segundo, ele codifica esta mensagem em voz e transmite o sinal falado. Ao receber o sinal,
ouvindo, o indivduo descodifica-o, para poder entender seu significado. Claramente se
pode identificar neste processo quatro fases distintas: gerao, codificao, descodificao
e entendimento.
Nota-se que um texto escrito quase que exclusivamente codifica apenas o componente
verbal da mensagem, ignorando o prosdico. Diferente da fala, que, por sua vez, possi-
bilita a codificao de emoes como parte da mensagem, o que no necessrio para a
grande maioria dos documentos, como jornais, revistas, manuais de instrues, dentre
outros.
Sob um ponto de vista tcnico, o mecanismo de sntese de fala pode observado de
forma a compreender quatro macro partes, ilustradas na Figura 2.1 e explicadas a seguir.
5
2.1. ANALISE TEXTUAL
6
2.2. ANALISE FONTICA
7
2.3. ANLISE PROSDICA
Transcries fonticas das vrias formas que uma palavra pode ter, assim como as
informaes de slaba tnica e diviso silbica;
8
2.3. ANLISE PROSDICA
Dentre estes, o Pitch o mais expressivo, uma vez que quando se fala, varia-se a
frequncia fundamental para expressar sentimentos e emoes relacionadas ao que est
sendo falado, ou at mesmo apenas para chamar ateno para determinados aspectos.
Uma mensagem falada de um modo constante, com pitch uniforme e sem pausas, ou com
pausas uniformes entre palavras, soa completamente no natural.
A Figura 2.2 ilustra os elementos formadores da prosdia em um sistema de converso
texto-fala, onde a entrada o texto aps anlise textual junto com a sequncia de fonemas
a ser gerada, e a sada a sequncia de fonemas com suas respectivas duraes e contorno
do pitch.
O estilo da fala presente tambm na Figura 2.2 nico e pessoal, e pode dar um
tom a fala. um estilo prprio que cada pessoa possui, que muitas vezes varia de acordo
com regio e cultura, e estado emocional no momento da fala.
A estrutura prosdica simblica o elo entre a multiplicidade infinita das caractersti-
cas pragmticas, semnticas e sintticas de uma locuo e sua frequncia fundamental
relativamente limitada, duraes de fonemas, energia e qualidade de fala. Nela so
inseridas pausas entre frases, informaes de contexto, tonicidade, dentre outras. Morais
and Violaro (2005)
9
2.3. ANLISE PROSDICA
10
Modelos Ocultos de Markov no
3
Processamento de Fala
Processos do mundo real produzem resultados que podem ser caracterizados por sinais
de natureza discreta, como caracteres em um alfabeto finito; ou contnua, como amostras
de fala, medies de temperatura, msicas. A fonte do sinal pode ser estacionria ou
no, isto , com propriedades estatsticas que variam ou no com o tempo. Os sinais, por
sua vez, podem ser puros, procedentes de uma nica fonte, ou corrompidos por sinais
de outra fonte, como rudos, ou distores de transmisso, reverberao e etc Rabiner
(1989).
Dentre as motivaes para modelagens baseadas em sinais, Rabiner (1989) cita
que um modelo de sinais pode fornecer a base para a descrio terica de um sistema
de processamento de sinais, por exemplo, para a amplificao de um sinal de udio
corrompido por rudos e distores de transmisso, pode-se utilizar o modelo de sinais
para projetar um sistema que remova o rudo e elimine a distoro da transmisso.
Modelos de sinais tambm so capazes de fornecer informaes importantes sobre o
processo que gerou o sinal, sem a necessidade que este esteja disponvel. Neste caso,
com um bom modelo de sinais, possvel simular a fonte e aprender o mximo sobre ela
com simulaes.
Em geral, modelos ocultos de Markov (HMM, do ingls Hidden Markov Model) so
utilizados para modelar processos que so geridos por um processo Markoviano embutido,
cuja dinmica no pode ser diretamente observada. Esse processo Markoviano evolui no
tempo por meio de transies entre seus estados, as quais so responsveis pela emisso
de sinais observveis.
11
3.1. PROCESSOS DE MARKOV
Pr(Ct+1 |Ct , . . . ,C1 ) = Pr(Ct+1 |Ct ) 3.1
Pr(Ct+1 |Ct ) = Pr(Ct+1 |Ct ) 3.2
1. estado 1: chuvoso
2. estado 2: nublado
3. estado 3: ensolarado
12
3.1. PROCESSOS DE MARKOV
13
3.2. ELEMENTOS DE UM MODELO OCULTO DE MARKOV
onde,
i = P(X0 = Si ), 1 i N 3.3
14
3.2. ELEMENTOS DE UM MODELO OCULTO DE MARKOV
Figura 3.3 Exemplo do modelo de urnas e bolas com N estados, ilustrando um modelo oculto de
Markov discreto. Rabiner (1989)
ai j = P(qt+1 = S j |qt = Si j ), 1 i, j N.
15
3.3. OS TRS PROBLEMAS BSICOS
= (A, B, ).
T
P(O|Q, ) = t=1 P(Ot |qt , ) = bq1 (o1 )bq2 (o2 ) . . . bqT (oT ), 3.4
16
3.3. OS TRS PROBLEMAS BSICOS
P(Q| ) = a1 aq1 q2 aq2 q3 . . . aqT 1 qT 3.5
P(O, Q| ) = P(O|Q, )P(Q| ) 3.6
P(O| ) = P(O, Q| )P(Q| ) 3.7
todos os Q
= q1 bq1 (O1 ) aq1 q2 bq2 (O2 ) . . . aqT 1 qT bqT (OT ). 3.8
q1 ,q1 ,...,qT
O clculo da probabilidade, P(O| ), atravs da equao equao
3.7
muito
T T
custoso, envolvendo um nmero (2T 1)N multiplicaes e N adies. Mesmo para
uma quantidade pequena, por exemplo, 5 estados e 100 observaes por estado, este valor
da ordem de 2 100 5100 ' 1072 computaes. Assim sendo, Baum and Petrie (1966)
props um processo recursivo para o clculo desta probabilidade de uma forma mais
eficiente, o Algoritmo Forward-Backward.
Considerando a varivel progressiva, forward, t (i), definida como a probabilidade
de observao parcial da sequncia O1 , O2 , . . . , Ot at ao instante t, junto ocorrncia do
estado, Si , no instante, t, dado o modelo , tem-se:
t (i) = P(O1 , O2 , . . . , Ot , qt = Si | ) 3.9
1. Inicializao:
t (i) = i bi (Oi ), 1 i N 3.10
17
3.3. OS TRS PROBLEMAS BSICOS
2. Induo:
" #
N
t+1 ( j) = t (i)ai j b j (Ot+1), 1 t T 1, 1 j N. 3.11
i=1
3. Terminao:
N
P(O| ) = T (i) 3.12
i=1
t (i) = P(Ot+1 , Ot+2 , . . . OT |qt = Si , ) 3.13
1. Inicializao:
t (i) = 1, 1 i N. 3.14
2. Induo:
N
t (i) = ai j b j (Ot+1 )t+1 ( j), t = T 1, T 2, . . . , 1., 1 j N. 3.15
i=1
N
P(O| ) = 1 (i)bi (O1 )i 3.16
i=1
18
3.3. OS TRS PROBLEMAS BSICOS
represente cada fonema. Para uma sequncia de observaes, dado como reconhecido o
fonema correspondente ao modelo com maior probabilidade.
qt = argmax [(t (i))] , 1 i N, 1 t T. 3.18
1. Inicializao:
1 (i) = i bi (O1 ), 1 i N 3.19
1 (i) = 0. 3.20
19
3.3. OS TRS PROBLEMAS BSICOS
2. Recurso:
t ( j) = max t1 (i)ai j b j (Ot ), 1 i N, 2 t T, 1 j N 3.21
t ( j) = argmax t1 (i)ai j , 1 i N, 2 t T, 1 j N. 3.22
3. Terminao:
P = max [T (i)] , 1 i N. 3.23
qT = argmax [T (i)] , 1 i N 3.24
t (i, j) = P(qt = Si , qt+1 = S j |O, ) 3.26
que pode ser expressa em termos das variveis forward-backward de acordo com:
20
3.3. OS TRS PROBLEMAS BSICOS
N
t (i) = t (i, j). 3.28
j=1
T 1
t (i) = nmero esperado de transies a partir de Si 3.29
t=1
T 1
t (i, j) = nmero esperado de transies de Si para S j 3.30
t=1
21
3.4. ANLISE MEL-CEPSTRAL
t=1 t ( j)
2. Ou mais provvel que , pois P(O| ) > P(O| ), o que significa que um
novo modelo ( ) foi encontrado, de onde mais provvel que a sequncia de
observaes O tenha sido gerada.
22
3.5. RECONHECENDO COM HMM
Fourier de um espectrum decibel. A escala mel uma escala perceptual de pitch, que
a percepo da frequncia fundamental do som. O nome mel se originou da palavra
melodia para indicar que a escala baseada em comparao de pitch. de Queiroz et al.
(2006)
A tcnica de extrao de parmetros MFCC baseia-se no uso do espectro da voz
alterado segundo a escala Mel, uma escala perceptual amplamente utilizada em reconhec-
imento de fala, que procura se aproximar das caractersticas de sensitividade do ouvido
humano. Na escala Mel para cada tom com uma determinada frequncia, medida em Hz,
associa-se um valor medido em mel, que a unidade de frequncia dessa escala.
3. Obter, para cada classe, um conjunto com dimenso razovel de dados de treino.
P(O| j ) = max P(O|i ), 1 i L. 3.34
23
3.6. HMM COMO UM GERADOR DE OBSERVAES
24
3.6. HMM COMO UM GERADOR DE OBSERVAES
1 (o)2
(o; , ) = e 2 2 3.35
2
onde a mdia dos valores, 2 a varincia, e o desvio padro.
A Gaussiana tem muitas propriedades matemticas interessantes e por causa disso e
pelo fato de grande parte dos fenomenos naturais pertencerem a este tipo de distribuio,
muitas vezes visto como a distribuio de probabilidade mais comum.
Quando se lida com vetores de dados, como neste caso as observaes so frames
acsticos, se faz necessrio o uso de uma Gaussiana Multivariada, que uma extenso da
univariada. importante notar que enquanto se tem um valor mdio para cada componente
no vetor, se tem uma matriz de covarincia, , no um vetor de varincias. Isto acontece
porque se quer modelar no a varincia de cada componente, mas a covarincia entre
cada componente. Assim sendo, a PDF de uma Gaussiana N-dimensional definida por:
1 1 T 1 (o)
(o; , ) = p e 2 (o) 3.36
M
(2) | |
onde M a dimensionalidade da observao, o vetor de mdias e a matriz
covarincia.
Com isso, pode-se construir um sistema com um modelo para cada fonema, descrito
por uma Gaussiana Multivariada. Por exemplo, para uma locuo desconhecida, se for
conhecida a fronteira de cada fonema, testa-se cada modelo at encontrar o com maior
probabilidade dentre os frames observados da fala. A partir da, encontra-se a sequncia
de fonemas que mais se parece com a observao da locuo em questo.
De acordo com da Silva Maia (2008) e Taylor (2009), buscando melhorar a acurcia
do modelo, para se obter a probabilidade de se ter o, no estado s j , no tempo t, utiliza-se
uma multi-mistura de Gaussianas, b(ot ), definida por:
" #k
K Lk
b(ot ) = ws j kl (otk ; s j kl , ) 3.37
k=1 l=1 s j kl
25
3.7. VISO GERAL DE UM SINTETIZADOR DE FALA BASEADO EM HMM
(ct + 1 ct 1)
dt =
3.38
2
Adicionalmente, para calcular a taxa de mudana ao longo de vrios frames, usa-se:
Ll=1 l(ct + 1 ct 1)
dt = 3.39
2 Ll=1 l 2
onde dt o coeficiente delta, ct o coeficiente cepstral e L o tamanho da janela em
que a taxa de mudana calculada.
26
3.7. VISO GERAL DE UM SINTETIZADOR DE FALA BASEADO EM HMM
27
3.7. VISO GERAL DE UM SINTETIZADOR DE FALA BASEADO EM HMM
Em seguida, cada
h Tvetor deT observaes
i de sada oi para o i simo frame consiste em
cinco fluxos, oi = oi1 , . . . , oi5 , ilustrados na Figura 3.6, onde:
Fluxo 1 (oi1 ): vetor composto por coeficientes mel-cepstrais, ci0 , . . . , cM 0 , seus re-
i M 2 i 2 M
spectivos componentes delta c0 , . . . , c0 e delta-delta c0 , . . . , c0 .
Fluxo 5 (oi5 ): vetor composto por coeficientes de aperiodicidade, bi1 , . . . , bi5 , e seu
correspondente delta bi1 , . . . , bi5 e delta-delta 2 bi1 , . . . , 2 bi5 .
28
3.7. VISO GERAL DE UM SINTETIZADOR DE FALA BASEADO EM HMM
29
3.7. VISO GERAL DE UM SINTETIZADOR DE FALA BASEADO EM HMM
30
Sintetizador de Fala para Portugus do
4
Brasil baseado em HMM
31
4.1. INFORMAES DA LOCUO
sntese de fala, pois necessitam destas informaes da forma mais precisa possvel.
Para o desenvolvimento de um sistema de converso de grafemas em fonemas, deve
ser levado em considerao aspectos particulares de ambos, assim como o conhecimento
dos Processos Fonolgicos, que o ramo da Lingustica que estuda os sistemas sonoros
das lnguas do ponto de vista da sua funo no sistema de comunicao lingustica, a
seguir descrito.
Segundo o The International Phonetic Association IPA (2005), os sons da fala
podem ser classificados da seguinte forma:
Vogais: sons produzidos pelas cordas vocais, que passam livremente pela boca e
pelas fossas nasais, sem aperto ou modificao do aparelho fonador. Podem ser
classificadas:
32
4.1. INFORMAES DA LOCUO
33
4.1. INFORMAES DA LOCUO
34
4.1. INFORMAES DA LOCUO
35
4.1. INFORMAES DA LOCUO
36
4.2. INFORMAO CONTEXTUAL
4.1.4 Classificao
Somada s outras informaes obtidas at agora, a classificao do grupo que a palavra
pertence tambm ser utilizada na criao do arquivo de informaes contextuais que
ser um dos recursos utilizados no treinamento, e que ser detalhado no prximo tpico.
Essa classificao feita basicamente verificando se cada palavra de uma locuo
faz parte de um grupo contedo ou funo, baseada em sua classificao gramatical.
Se a palavra em questo for uma preposio, conjuno, artigo, pronome, conectivo,
interjeio ou contrao preposies-artigos, ela classificada como funo. Caso faa
parte de outras classes gramaticais, tida como contedo.
da S. Maia et al. (2003) da S. Maia et al. (2004) Barbosa et al. (2004) mostraram que
utilizao da classificao gramatical ao invs de simples grupos no apresenta diferena
significativa na qualidade dos resultados do sintetizador. Com isso, o presente trabalho
utilizou a abordagens de grupos, como em da Silva Maia (2008)
Identificador Caracterstica
Fonema
m1 Fonema antes do anterior
m2 Fonema anterior
m3 Fonema atual
m4 Fonema posterior
m5 Fonema depois do posterior
m6 ndice do fonema atual na slaba, do incio para o fim
continua na prxima pgina.
37
4.2. INFORMAO CONTEXTUAL
38
4.2. INFORMAO CONTEXTUAL
39
4.3. AGRUPAMENTO DE CONTEXTO BASEADO EM RVORES DE DECISO
Figura 4.1 Ilustrao do texto de uma locuo a ser convertida em Informao Contextual.
da Silva Maia (2008)
40
4.4. TREINAMENTO
escolhido o com maior semelhana dados os estados, que se dividir em dois novos
clusters, e assim sucessivamente at que um critrio de parada seja alcanado, um limiar
definido empiricamente, que pode ser um nmero mnimo de modelos. A Figura 4.2
ilustra este processo de agrupamento.
Figura 4.2 Exemplo de rvore de deciso para agrupamento de contexto. Taylor (2009)
Uma vez que cada HMM formado por trs fluxos de dados, sendo os coeficientes
mel-cepstrais, o logaritmo da frequncia fundamental e os parmetros de aperiodici-
dade, o agrupamento baseado em contexto realizado separadamente para cada uma
destas caractersticas, assim como a durao dos estados para cada modelo, que depois
de ser modelada por uma distribuio Gaussiana, agrupada de forma independente.
da Silva Maia (2008)
Assim como as informaes contextuais, o processo de agrupamento de dados muito
importante e determinante para a qualidade final do sintetizador, por isso as perguntas
devem ser muito bem elaboradas, de acordo com as caractersticas do idioma, seus
processos fonolgicos e etc.
4.4 Treinamento
Sexo: feminino.
41
4.4. TREINAMENTO
Idade: 28 anos.
Naturalidade: paraense.
Sexo: masculino.
Idade: 30 anos.
Naturalidade: paraense.
4.4.2 Preparao
De posse das gravaes e seus respectivos textos, foi realizado um alinhamento temporal,
para estimar o tempo de realizao de cada fonema no audio correspondente.
Para realizao desta tarefa, utilizou-se o framework HTK (2009), de Young et al.
(2006), que uma das ferramentas referncia para trabalhar com processamento de fala e
HMM.
O algoritmo utilizado para tal claramente descrito no captulo 3 de Young et al.
(2006).
Junto com as informaes dos intervalos de tempo de realizao dos fonemas, foram
obtidas as informaes contextuais, descritas no Seo 4.2 do Captulo 4.
42
4.5. AVALIAO DOS RESULTADOS
(xi+1 xi1 )
xi = 4.1
2
Adaptado de equao
3.38
, e o parmetro delta-delta calculado de acordo com:
2 xi = xi+1 + xi1 2xi 4.2
43
4.5. AVALIAO DOS RESULTADOS
6. Ela sofreu um infarto quando preenchia a cdula amarela das eleies majoritrias.
7. Dos duzentos imveis novos oferecidos no ms, apenas quinze foram comercializa-
dos.
10. A Infraero ainda no sabe em qual dos dois aeroportos Alexandre embarcou.
11. Almeida informou que a empresa demitiu quarenta funcionrios nos ltimos vinte
dias.
12. O momento econmico e poltico deflagrado pelo real instigante desta reflexo.
15. O rastreamento deve comear pelas instituies cadastradas e que recebem sub-
venes pblicas.
16. Caractersticas rendimento dirio, mas nem todos bancos oferecem resgate au-
tomtico.
44
4.5. AVALIAO DOS RESULTADOS
20. Algumas oficinas de Parceiros da Mata Atlntica esto sendo chamadas de estaes.
23. Prefiro ser essa metamorfose ambulante, do que ter aquela velha opinio formada
sobre tudo.
25. Debaixo dos caracis dos seus cabelos, tanta histria pra contar, dum mundo to
distante, e o sorriso e a vontade de ficar mais um instante.
45
4.5. AVALIAO DOS RESULTADOS
46
4.5. AVALIAO DOS RESULTADOS
47
Concluses
5
Este trabalho apresentou aspectos do desenvolvimento de um sintetizador de fala para
o portugus brasileiro utilizando modelos ocultos de Markov, que atualmente umas
das tcnicas que mais tem se destacado em processamento de fala, em geral, tanto para
reconhecimento quanto para sntese.
Alm da teoria Markoviana, foram detalhadas as macro fases de um aplicao desta
natureza, que so as anlises Fontica, Textual e Prosdica, e tambm foram abordados
os processos intermedirios necessrios ao funcionamento um sintetizador, que so
totalmente relevantes para sua qualidade, que so a converso de grafemas em fonemas e
a separao silbica.
A realizao prtica do projeto foi bem sucedida, o desenvolvimento se deu de forma
modular, onde cada mdulo foi desenvolvido individualmente, e posteriormente foram
integrados em uma aplicao.
O prottipo foi desenvolvido utilizando a linguagem Java, com uma nica dependncia
referente ao uso do HTS (2009), que uma verso adaptada do HTK (2009) para se
trabalhar com modelos ocultos de Markov com sntese de fala.
O mecanismo integrado de determinao de slaba tnica de palavras, converso de
grafemas para fonemas e diviso silbica da palavra transcrita foneticamente, foi testado
em um texto composto por 2530 (duas mil quinhentas e trinta) palavras diferentes, e obteve
taxa de acerto de 99% quando no levado em considerao homnimos homgrafos,
como emprego, governo, jogo, almoo, que tem pronncias diferentes de acordo
com sua classificao gramatical na frase em questo. Isto acontece devido a opo
de ter utilizado um conversor de grafemas em fonemas baseado em regras, que leva
em considerao apenas a escrita da palavra, e no sua classificao gramatical, ou
seja, que unifica as duas primeiras etapas, Anlise Textual e Anlise Fontica, de um
modelo ideal de sntese. Palavras como impresso, tiveram problemas devido sua
48
5.1. PROPOSTAS FUTURAS
49
Referncias Bibliogrficas
(2010). Furbspeech.
A. Teixeira, C. O. and Moutinho, L. (2006). On the use of machine learning and syllable
information in european portuguese graphemephone conversion. 7th Workshop on
Computational Processing of Written and Spoken Portuguese.
Allen, J., Hunnicutt, M. S., Klatt, D. H., Armstrong, R. C., and Pisoni, D. B. (1987).
From text to speech: the MITalk system. Cambridge University Press, New York, NY,
USA.
Barbosa, F., da S. Maia, R., and Resende Jr., F. G. V. (2004). Anlise comparativa do
impacto da classe gramatical em sistemas tts baseados em hmms. Anais do Simpsio
Brasileiro de Telecomunicaes SBrT 2004.
Barros, M. J., Braga, D., Coelho, L., Freitas, D., and Moura, A. (2003). Synthetic speech
evaluation: The sus approach and implementation for portuguese. IASTED Interna-
tional Conference on Signal Processing and Pattern Recognition and Applications.
Baum, L. E. and Petrie, T. (1966). Statistical inference for probabilistic functions of finite
state markov chains. Annals of Mathematical Statistics, 37(6), 15541563.
Black, A. W., Zen, H., and Tokuda, K. (2007). Statistical parametric speech synthesis.
32nd IEEE International Conference on Acoustics, Speech and Signal Processing
ICASSP.
50
REFERNCIAS BIBLIOGRFICAS
Bohlenius, J. (2005). A Speech Synthesis for Classical Latin. Masters thesis, Gteborg
University.
Braga, D., Freitas, D., and Barros, M. J. (2002). A drt approach for subjective evaluation
of intelligibility in european portuguese synthetic speech. International Conference on
SYSTEMS SCIENCE ICOSYS 2002.
Braga, D., Freitas, D., and Ferreira, H. (2003). Processamento lingustico aplicado
sntese da fala. 3 Congresso LusoMoambicano de Engenharia.
Braga, D., Coelho, L., and Freitas, D. (2005). Transcribing prosody using syntax and
pragmatics. III Congreso de Fontica Experimental 2005.
Braga, D., Coelho, L., and Resende Jr., F. G. V. (2006). A rulebased graphemetophone
converter for tts systems in european portuguese. IEEE Workshop on Spoken Language
Technology SLT 2006.
Braga, D., Silva, P., Ribeiro, M., Henriques, M., and Dia, M. S. (2008). Hmmbased
brazilian portuguese tts. Propor 2008 Special Session: Applications of Portuguese
Speech and Language Technologies.
51
REFERNCIAS BIBLIOGRFICAS
Chen, G. and Han, K.-S. (2004). Letter-to-sound for small-footprint multilingual tts
engine. Interspeech 2004.
Clark, R. A. J., Richmond, K., and King, S. (2007). Multisyn: Opendomain unit
selection for the festival speech synthesis system. Speech Communication 49.
Coelho, L. and Braga, D. (2008). Adaptive filtering for high quality hmm based speech
synthesis. IEEE Workshop on Spoken Language Technology SLT 2008.
da S. Maia, R., Zen, H., Tokuda, K., Kitamura, T., and Resende Jr., F. G. V. (2003).
Towards the development of a brazilian portuguese texttospeech system based on
hmm. Eurospeech 2003.
da S. Maia, R., Zen, H., Tokuda, K., Kitamura, T., and Resende Jr., F. G. V. (2004).
Influence of part-of-speech tagging, syllabication, and stress on hmm-based brazilian
portuguese speech synthesis. Proc. of Spring Meeting of the Acoustical Society Japan.
da Silva Maia, R. (2008). Speech Synthesis and Phonetic Vocoding for Brazilian Por-
tuguese Based on Parameter Generation from Hidden Markov Models. Ph.D. thesis,
Nagoya Institute of Technology.
52
REFERNCIAS BIBLIOGRFICAS
Damper, R. I., Marchand, Y., Marsters, J., and Bazin, A. (2005). Can syllabification
improve pronunciation by analogy of english? Natural Language Engineering, pages
125.
de Queiroz, R. A. B., Marar, J. F., and Okida, C. M. (2006). Investigao dos coeficientes
cepstrais da frequncia mel para extrao de caractersticas de gneros musicais.
de S. Silva, S., Resende Jr., F. G. V., and Netto, S. L. (2001). A texttospeech system
for the brazilian portuguese based on syllabic units. Proceedings of the IEEE 2nd.
SouthAmerican Workshop on Circuits and Systems.
Demuynck, K., Laureys, T., Wambacq, P., and van Compernolle, D. (2004). Automatic
phonemic labeling and segmentation of spoken dutch. 4th International Conference on
Language Resources and Evaluation.
53
REFERNCIAS BIBLIOGRFICAS
Farrugia, P.-J. (2005). Text to Speech Technologies for Mobile Telephony Services.
Masters thesis, University of Malta.
Fellbaum, K. and Freitas, D. (2007). Towards an inclusive future: Impact and wider poten-
tial of information and communication technologies, chapter 2.2.2 Speech processing.
COST Brussels.
Freitas, D. and Braga, D. (2002). Towards an intonation module for a portuguese tts
system. ICSLP2002 7th International Conference on Spoken Language Processing.
Gonzalvo, X., Iriondo, I., Socor, J. C., Alas, F., and Monzo, C. (2007). Hmm-based
spanish speech synthesis using cbr as f0 estimator. In NOLISP.
Gouveia, P. D. F., Teixeira, J. P. R., and da Silva Freitas, D. R. (2000). Diviso silbica
automtica do texto escrito e falado. International Conference on Computational
Processing of Portuguese Language (PROPOR2000).
Hosn, C., Baptista, L. A., Imbiriba, T., and Klautau, A. (2006). New resources for
brazilian portuguese: Results for graphemetophoneme and phone classification.
International Telecommunications Symposium 2006.
Huang, X., Acero, A., and Hon, H.-W. (2001). Spoken Language Processing: A Guide to
Theory, Algorithm and System Development. Prentice Hall PTR.
54
REFERNCIAS BIBLIOGRFICAS
Jarifi, S., Pastor, D., and Rosec, O. (2008). A fusion approach for automatic speech
segmentation of large corpora with application to speech synthesis. Speech Communi-
cation 50.
Jelinek, F. (1998). Statistical Methods for Speech Recognition. The MIT Press.
Kim, S.-J., Kim, J.-J., and Hahn, M. (2006). Hmmbased korean speech synthesis system
for handheld devices. IEEE Transactions on Consumer Electronics.
Lin, C.-Y., Jang, J.-S. R., and Chen, K.-T. (2005). Automatic segmentation and labeling
for mandarin chinese speech corpora for concatenationbased tts. Computational
Linguistics and Chinese Language Processing.
Maia, R., Zen, H., Tokuda, K., Kitamura, T., and Resende Jr., F. (2006). An hmm
based brazilian portuguese speech synthesizer and its characteristics. Journal of
Communication and Information Systems.
Masuko, T. (2002). HMMBased Speech Synthesis and Its Applications. Ph.D. thesis,
Tokyo Institute of Technology.
55
REFERNCIAS BIBLIOGRFICAS
Oliveira, C., Moutinho, L. C., and Teixeira, A. (2005). On european portuguese automatic
syllabification. INTERSPEECH 2005.
Petry, A., Zanuz, A., and Barone, D. A. C. (1999). Utilizao de tcnicas de processa-
mento digital de sinais para a identificao automtica de pessoas pela voz. Simpsio
sobre Segurana em Informtica.
Silva, D. C., de Lima, A. A., Maia, R., Braga, D., de Moraes, J. F., de Moraes, J. A.,
and Resende Jr., F. G. V. (2006). A rulebased graphemephone converter and stress
determination for brazilian portuguese natural language processing. VI International
Telecommunications Symposium ITS2006.
56
REFERNCIAS BIBLIOGRFICAS
Styger, T. and Keller, E. (1994). Fundamentals of Speech Synthesis and Speech Recog-
nition: Basic Concepts, State of the Art, and Future Challenges, chapter 6 Formant
synthesis, pages 109128. John Wiley.
Tatham, M. and Morton, K. (2005). Developments in Speech Synthesis. John Wiley &
Sons Ltd.
Teixeira, J. P., Freitas, D., Braga, D., Barros, M. J., and Latsch, V. (2001). Phonetic events
from the labeling the european portuguese database for speech synthesis. Eurospeech
2001 Scandinavia.
The International Phonetic Association IPA (2005). The International Phonetic Alphabet
IPA. Acessado em http://www.langsci.ucl.ac.uk/ipa/IPA_chart_(C)2005.pdf, em 31
de novembro de 2009.
Tokuda, K., Zen, H., and Black, A. W. (2002). An hmmbased speech synthesis system
applied to english. Proceedings of IEEE Speech Synthesis Workshop SSW 2002.
57
REFERNCIAS BIBLIOGRFICAS
Trancoso, I., Viana, M., and Silva, F. (1994a). On the pronunciation of common lexica
and proper names in european portuguese. 2nd Onomastica Res. Colloq.
Trancoso, I., Viana, M., Silva, F., Marques, G., and Oliveira, L. (1994b). Rule-based
vs. neural network based approaches to letter-to-phone conversion for portuguese
common and proper names. International Conference on Spoken Language Processing
ICSLP94.
Vepa, J. and King, S. (2004). Join Cost for Unit Selection Speech Synthesis. Ph.D.
thesis, The University of Edinburgh. College of Science and Engineering. School of
Informatics.
Young, S., Evermann, G., Gales, M., Hain, T., Kershaw, D., Liu, X. A., Moore, G., Odell,
J., Ollason, D., Povey, D., Valtchev, V., and Woodland, P. (19952006). The HTK book.
E P F L Press.
Zen, H. and Toda, T. (2005). An overview of nitech hmmbased speech synthesis system
for blizzard challenge 2005. Proceedings of Interspeech2005 (Eurospeech).
58
REFERNCIAS BIBLIOGRFICAS
Zen, H., Tokuda, K., Masuko, T., Kobayashi, T., and Kitamura, T. (2007a). Hidden
semimarkov model based speech synthesis. IEICE Transactions on Information
and Systems.
Zen, H., Nose, T., Yamagishi, J., Sako, S., Masuko, T., Black, A. W., and Tokuda,
K. (2007b). The hmmbased speech synthesis system (hts) version 2.0. 6th ISCA
Workshop on Speech Synthesis.
Zen, H., Oura, K., Nose, T., Yamagishi, J., Sako, S., Toda, T., Masuko, T., Black,
A. W., and Tokuda, K. (2009). Recent development of the HMM-based speech
synthesis system (HTS). In Proc. 2009 Asia-Pacific Signal and Information Processing
Association (APSIPA), Sapporo, Japan.
Zucchini, W. and MacDonald, I. L. (2009). Hidden Markov Models for Time Series - An
Introduction Using R. CRC Press.
59
Appendices
60
A
Speech Assessment Methods Phonetic
Alphabet SAMPA
61
Figura A.1 Speech Assessment Methods Phonetic Alphabet SAMPA International Group of
Phoneticians (2009)
62
B
The International Phonetic Alphabet
IPA
63
Figura B.1 The International Phonetic Alphabet IPA The International Phonetic Association
IPA (2005)
64
Regras para determinao de vogal tnica
C
em palavras
Tabela de regras para determinao da vogal tnica em palavras. As que por ventura se
encaixarem em mais de uma regra, a primeira a que vai ser utilizada, pois a tabela est
em ordem de prioridade.
65
continuao d pgina anterior.
N Regra Exemplos de aplicao
5 Palavras formadas por vogal, seguida por uma uma, urso, elo.
ou duas consoantes, seguidas por uma outra vo-
gal, independente de singular ou plugal, a vogal
tnica a primeira.
6 Palavras terminadas pela vogal a, seguida ou traiu, caiu, faliu.
no por uma consoante, seguidas por i e u,
a vogal tnica o i.
7 Palavras terminadas em uma consoante, seguida javali, caju, caqui.
pela vogal i ou u, independente de singu-
lar ou plugal, a vogal tnica a que suceder a
consoante.
8 Palavras terminadas em uma consoante, seguida tributo, pluto, bruto.
por vogal, seguidas por uma, duas ou trs outras
consoantes e mais uma vogal, independente de
singular ou plural, a vogal tnica ser a primeira
vogal da expresso.
9 Palavras terminadas por vogal i ou u, coisa, roupa, repouso.
seguida por uma ou duas consoantes, seguidos
por uma outra vogal qualquer, independente de
singular ou plural, a vogal tnica a anterior
expresso.
10 Palavras terminadas com uma ou duas con- nua, suas, tua.
soantes, seguidas de o ou u, seguido de uma
vogal, independente de singular ou plural, a vo-
gal tnica ser a primeira vogal o ou u.
11 Palavras terminadas na vogal u, sem q ou zagueiro, mangueiras,
c como antecedente, seguido de uma ou duas cegueira.
outras vogais, seguidos por uma ou duas outras
letras quaisquer, independente de singular ou
plural, a vogal tnica ser a posterior a primeira
letra u.
continua na prxima pgina.
66
continuao d pgina anterior.
N Regra Exemplos de aplicao
12 Palavras terminadas em eem ou em, e oo creem, vos, enjoo.
ou o independente de singular ou plural, a
vogal tnica a primeira letra desta expresso.
13 Palavras terminadas em vogal que no seja u, ensaio, saias, balaio.
seguida por uma ou duas outras vogais que tam-
bm no sejam u, seguidas ou no por s ou
m, a vogal tnica a primeira
14 Palavras terminadas em uma vogal que no seja canja, dentes, porta.
i ou u, seguida por uma ou duas consoantes,
seguida por uma outra vogal qualquer, indepen-
dente de singular ou plugal, a vogal tnica a
que anteceder a consoante.
15 Palavras terminadas em vogal que no seja u, freira, azeite, auge.
seguida por vogal i ou u, seguida por uma
ou duas consoantes que no sejam n, seguida
por uma outra vogal qualquer, independente de
singular ou plugal, a vogal tnica a primeira
da expresso.
16 Palavras terminadas em vogal que no seja u, ainda, caindo, fluindo.
seguida por vogal i ou u, seguida por uma
ou duas consoantes, seguida por uma outra vogal
qualquer, independente de singular ou plugal, a
vogal tnica a primeira da expresso.
17 Palavras terminadas por vogal i, o ou u, bombom, pudins, comum.
seguida pelas consoante m ou n, seguidos
ou no pela consoante s, a vogal tnica a
primeira da expresso.
18 Palavras terminadas em r, l, z ou x, a propor, rapaz, durex.
vogal tnica a que anteceder esta letra.
continua na prxima pgina.
67
continuao d pgina anterior.
N Regra Exemplos de aplicao
19 Palavras terminadas com uma consoante, pneu, grau, graus.
seguida por uma vogal que no seja u, seguida
por uma vogal que no seja e, independente de
singular ou plural, a vogal tnica a que seguir
a consoante.
20 Palavras terminadas com uma vogal, seguida henrique, destaque, choques.
pela expresso que, independente de singular
ou plural, a vogal tnica a inicial da expresso.
21 Palavras terminadas com uma consoante, tanque, palanques, bosque.
seguida pela expresso que, independente de
singular ou plural, a vogal tnica a que ante-
ceder a consoante inicial da expresso.
22 Palavras que no se encaixarem em nenhuma das regras anteriores, verificase
se a primeira vogal da esquerda possui uma outra vogal como vizinha direta.
Em caso positivo, se esta vizinha for a, e ou o, fica sendo esta a vogal
tnica. Caso contrrio, a primeira vogal fica sendo a tnica.
Tabela C.1: Tabela de regras para a determinao da vogal
tnica em palavras
68
Regras para Converso de Grafemas em
D
Fonemas
Smbolo Significado
[a] ou (a) Ocorrncia do caractere a.
C* Ocorrncia de uma consoante, que so: b, d(dZ),
g, v, z, s, x, z, j(Z), r(R) l, lh(L), m, n, nh(J) p,
t(tS), k, c, q, qu, f, s, , x, ch(S)
CSO* Ocorrncia de uma consoante sonora, que so:
b, d, g, v, z, s, x, j(Z), r(R), l, lh(L), m, n, nh(J)
CSU* Ocorrncia de uma consoante, que so: p, t(tS),
k, c, q, qu, f, s, , x, ch(S)
V* Ocorrncia de uma vogal, que so: a, , , ,
(a), e, , (E), i, , i, o, , (O), , o, u, , ,
u, y, w, w.
A* Ocorrncia de uma vogal ou uma consoante.
(a) Ocorrncia da vogal a.
(a) Ocorrncia da vogal a como vogal tnica.
(.)(a) Ocorrncia de qualquer letra antes da vogal a.
(abc) Ocorrncia dos caracteres abc nesta dis-
posio.
(ab)(cd) Ocorrncia dos caracteres ab seguidos por
cd.
continua na prxima pgina.
69
continuao d pgina anterior.
Smbolo Significado
(ab)[cd] Ocorrncia dos caracteres ab seguidos por c
ou d.
[abc] ou (a|b|c) Ocorrncia de um dos caracteres a, b ou c.
(ALL-{a,b,c}) Ocorrncia de qualquer caractere que no seja
a, b ou c
[VOG&&[a]] Ocorrncia de uma vogal que no seja a.
[(VOG|CONS)]{1,2} Ocorrncia de no mnimo uma e no mximo
duas vogais ou consoantes.
(s)? Ocorrncia opcional da consoante s.
VOG Ocorrncia de uma vogal no incio da palavra.
CON$ Ocorrncia de uma consoante no final da
palavra.
Tabela D.1: Tabela de smbolos utilizados para explicar as
regras de converso de grafema para fonema
70
N Procurar Trocar Por Exemplo
1 (c)(|e||i) (c) s centro.
2 () () s cachaa.
3 (ch) (ch) S chuva.
4 (c) (c) k casa.
71
N Procurar Trocar Por Exemplo
1 (CON-{m,f})?(e)(s|z)$ (e) E dez.
2 (i)(e)$ (i)(e) (e) superficie.
3 (e)(l)(CON-{h})(e|i)(s)? (e) E rebelde.
4 (e)(l)$ (e) E papel.
5 (|)(e)(s)?$ (e) j me.
6 (a)(e) (e) E aeroporto.
7 (d|t|p|l|s|rr|lm|qu)(e)(i)(a)(s)?$ (e) E plateia.
8 (e)(x)(o|u)(s)?$ (e) E complexo.
9 (e)(m|n)(CON-{h}) (e)(m|n) e embalo.
10 (e)(m|n)(VOG) (e) e tema.
11 (ALL-{qu})(e|)(s)? (e) i canivete.
12 (CON)(e)(CONS-{m,n})(e|i)(s)?$ (e) E mestre.
13 (r|R|s|S|v|m|p|t|d)(e)(CONS+{qu}- (e) E regra.
{m,s,f,d,k,z,j,q,f}){1,2} (VOG)
14 (m|n|l|p|t|b)(e)(k|l|t|v|f) (e) E neto.
15 (CON-{r})(e)(z)(i|a||e)(nh|o|t) (e) E cafezinho.
16 (e)(l)(a|o|u)(s)?$ (e) E martelo.
excees: pel(o|a)(s)?, cabelo(s)?,
modelo(s)?, pesadelo(s)?
17 (e) de pronomes masculinos (e) e aquele.
18 (e) de pronomes femininos (e) E aquela.
19 () () E picol.
20 (e|) (e) e caneta.
72
N Procurar Trocar Por Exemplo
1 (u)(i)(t) (i) j muito.
2 (V*)(i) (i) j apoio.
3 (i)(V*-{i}) (i) j abstinncia.
4 (i)(m|n)(C*-{h}) (i)(m|n) i timbre.
5 (i)(m|n) (i)(m|n) i time.
6 (i|) (i|) i amigo.
73
N Procurar Trocar Por Exemplo
1 (o|) (o|) o ovo.
2 () () O acessrio.
3 () () o organizaes.
4 ()(o) () w mo.
5 (V*-{o})(o)(s)? (o) w inicio.
6 ()(o) ()(o) ow vo.
7 (o)(o) (o)(o) o coordenao.
8 o o.
9 (o)(l)$ (o) O sol.
10 ((o)(sa)(s)?|(o)(sos)) (o) O gostosa.
11 (o)(m|n)(C*-{h}) (o)(m|n) o ombro.
12 (o)(m|n) (o) o omelete.
13 (o)(s)?$ (o) u tempo.
14 o.
15 (o)(r)(g|m|d||s)(V*) o O costa.
(o)(r)(t)(V*-{u})
(o)(r)(n)(V*-{e})
(o)(s)(t)(V*-{e,o,u})
(o)(l)(t)(V*)
(o)(b|g)(r)(V*-{i,o,u})
(o)(c)(r)(V*)
(o)(g)(r)(i)(n)(h)(a)
excees: fora(s)?, acordo(s)?
74
N Procurar Trocar Por Exemplo
1 (n|r)(r) (r)(r) R carro.
2 (n)(r) (r) R honra.
3 (r) (r) R rato.
4 (r)$ (r) R calor.
5 (r)(V*) (r) r pratico.
6 (r)(C*) (r) R barba.
75
N Procurar Trocar Por Exemplo
1 (t)(r)(a|)(n)(s)(V*) s z trnsito.
2 (b)(s)(V*) (s) z obsquio.
3 (V*-{i})(s) (s) js gs.
4 (s)(h) (s) S show.
5 (V*)(s)(V*-{,}) (s) z casa.
6 (s)(c)(e|i) (s)(c) s crescer.
7 (V*)(s)(C*-{h,s,}) (s) S escola.
8 (s)(s|)? (s)(s|)? s sapo.
76
N Procurar Trocar Por Exemplo
1 (g|q)(|u)(a) (|u) w guaran.
2 (V*-{u})(u) (u) w aula.
3 (g|q)(|u)(e|i|o) (|u) quem.
4 (u)(nh) (u) u unha.
5 (u)(m|n)(C*-{h}) (u)(m|n) u chumbo.
6 (u)(m|n) (u) u espuma.
7 (u|) (u|) u urbano.
77
N Procurar Trocar Por Exemplo
1 (V*-{i})(z)$ (z) jS rapaz.
2 (z)$ (z) S giz.
3 (z) (z) z zeca.
78
Algoritmo de Separao Silbica
E
Algoritmo DivisoSilbica
Entrada f onemas[]: vetor de fonemas da palavra transcrita
Sada f onemasSeparados: palavra transcrita foneticamente dividida em slabas
VOGAIS a,a,e,e,E,i,i,o,o ,O,u,u
SEMIVOGAIS j,j,w,w
VOGAIS_E_SEMI a,a,e,e,E,i,i,o,o,O,u,u,j,j,w,w
VOGAIS_E_SEMI_COM_T IL a,e,i,o,u,j,w
VOGAIS_E_SEMI_SEM_T IL a,e,E,i,o,O,u,j,w
NAOSEPARAV EIS bk,bd,bZ,bs,bS,bt,km,kn,kt,ks,dm,dk,ds,fn,ft,gd,gm,gn,mn,ps,pn,pt,tm,tn
para i de 0 para Tamanho( f onemas[]) faa
se i == 0 ento
letraAnterior ;
letra f onemas[i];
letraSeguinte f onemas[i+1];
seno se i == Tamanho( f onemas)1 ento
letraAnterior f onemas[i-1];
letra f onemas[i];
letraSeguinte ;
seno
letraAnterior f onemas[i-1];
letra f onemas[i];
letraSeguinte f onemas[i+1];
se VOGAIS_E_SEMI_COM_TIL(letra) ento
se VOGAIS_E_SEMI_SEM_TIL(letraAnterior) ento
f onemasSeparados f onemasSeparados + + letra
79
seno
f onemasSeparados f onemasSeparados + letra
seno se VOGAIS(letra) ento
se VOGAIS(letraAnterior) ento
f onemasSeparados f onemasSeparados + + letra
seno
f onemasSeparados f onemasSeparados + letra
seno se SEMIVOGAIS(letra) ento
se SEMIVOGAIS(letraAnterior) ento
f onemasSeparados f onemasSeparados + + letra
seno
f onemasSeparados f onemasSeparados + letra
seno
se NAOSEPARAVEIS(letra+letraSeguinte) ento
f onemasSeparados f onemasSeparados + letra + letraSeguinte +
i++
seno
se VOGAIS_E_SEMI(letraAnterior) ento
se VOGAIS_E_SEMI(letraSeguinte) ento
f onemasSeparados f onemasSeparados + letra
seno
f onemasSeparados f onemasSeparados + letra +
seno
f onemasSeparados f onemasSeparados + letra
80