reconhecimento de fala e processamento da linguagem natural

21
1 RECONHECIMENTO DE FALA E PROCESSAMENTO DA LINGUAGEM NATURAL Ademar Evandro Rosa [email protected] Jorge Busatto Casagrande [email protected] UNED/SJ Praia Comprida 88103-310 São José/SC Fone (048)247-3646 Consuelo Sielski Santos [email protected] Maria Clara K. Schneider [email protected] Maurício Gariba Júnior [email protected] ETF-SC Av. Mauro Ramos, 950 88020-300 Florianópolis/SC Fone (048)224-1500 RESUMO O presente artigo trata do reconhecimento da voz, visando identificar os níveis lingüísticos de processamento da linguagem natural, de modo a entender o processo da comunicação humana com vistas à interação homem e computador. Analisa os diferentes componentes do processo de compreensão da linguagem natural, percebendo de que maneira esses componentes agem no entendimento da voz pela máquina. Serão abordadas as fases do reconhecimento da fala, interfaces e metas, suas modelagens e classificações, referenciando a teoria com aplicações práticas bem como alguns softwares de reconhecimento da voz pela máquina. Com os avanços científicos e tecnológicos tão evidentes, torna-se emergente o desenvolvimento de uma interface homem e computador, voltada para o reconhecimento da fala agregando valores até então descartados pelo impedimento tecnológico. Assim, a popularização deste tema nos permite conhecer e desenvolver novas frentes de pesquisa. PRÓLOGO Temos consciência de que num espaço de tempo relativamente pequeno, as transformações provocadas pelas novas tecnologias atingiram as várias dimensões do desenvolvimento humano, quais sejam: culturais, econômicas, educacionais e políticas. Essas transformações iniciaram no séc. XVIII com o advento de Revolução Industrial, quando surgiram as primeiras máquinas. A Revolução Industrial provocou alterações significativas no setor produtivo, pela mudança de paradigma em relação ao papel do homem na sociedade.

Upload: marcia-fontes

Post on 06-Aug-2015

104 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Reconhecimento de Fala e Processamento Da Linguagem Natural

1

RECONHECIMENTO DE FALA E PROCESSAMENTO DA LINGUAGEM NATURAL

Ademar Evandro Rosa

[email protected]

Jorge Busatto Casagrande [email protected]

UNED/SJ

Praia Comprida 88103-310 São José/SC

Fone (048)247-3646

Consuelo Sielski Santos [email protected]

Maria Clara K. Schneider [email protected]

Maurício Gariba Júnior [email protected]

ETF-SC

Av. Mauro Ramos, 950 88020-300 Florianópolis/SC

Fone (048)224-1500

RESUMO O presente artigo trata do reconhecimento da voz, visando identificar os níveis lingüísticos de processamento da linguagem natural, de modo a entender o processo da comunicação humana com vistas à interação homem e computador. Analisa os diferentes componentes do processo de compreensão da linguagem natural, percebendo de que maneira esses componentes agem no entendimento da voz pela máquina. Serão abordadas as fases do reconhecimento da fala, interfaces e metas, suas modelagens e classificações, referenciando a teoria com aplicações práticas bem como alguns softwares de reconhecimento da voz pela máquina. Com os avanços científicos e tecnológicos tão evidentes, torna-se emergente o desenvolvimento de uma interface homem e computador, voltada para o reconhecimento da fala agregando valores até então descartados pelo impedimento tecnológico. Assim, a popularização deste tema nos permite conhecer e desenvolver novas frentes de pesquisa. PRÓLOGO Temos consciência de que num espaço de tempo relativamente pequeno, as transformações provocadas pelas novas tecnologias atingiram as várias dimensões do desenvolvimento humano, quais sejam: culturais, econômicas, educacionais e políticas. Essas transformações iniciaram no séc. XVIII com o advento de Revolução Industrial, quando surgiram as primeiras máquinas. A Revolução Industrial provocou alterações significativas no setor produtivo, pela mudança de paradigma em relação ao papel do homem na sociedade.

Page 2: Reconhecimento de Fala e Processamento Da Linguagem Natural

2

De modo semelhante, nosso século está sendo marcado por transformações tecnológicas que estão mudando o enfoque das relações pessoais, comerciais, políticas, etc. Novas tecnologias foram desenvolvidas após a 1a e 2a guerras mundiais, em conseqüência do crescimento industrial, encaminhando grandes investimentos para a área tecnológica com vistas a melhorar o processo de produção. O crescimento inicial da informática foi provocado pela guerra fria, com a necessidade de armazenamento bélico e com a absurda corrida espacial em que americanos e russos disputavam uma competição pelos avanços tecnológicos. Esses avanços ocasionaram uma mudança nas questões ligadas à educação, no tocante ao currículo. Convém salientar que a informática na educação é conseqüência do desenvolvimento pós industrial.

Enfoca Almeida (1987:27) “A origem do pensamento e dos aparelhos computacionais está ligada visceralmente ao desenvolvimento de um modo de produção voltado para o rendimento industrial e bélico de modelo concentrador. De modo algum, pode-se imaginar que a origem do computador tenha vinculação com as necessidades de camadas carentes ou com a solução dos problemas de distribuição de renda. No entanto, crer na impossibili dade de que esta conquista tecnológica possa ir recebendo um sinal que lhe imprimia sentido oposto é crer numa história mecânica e fatalista.”

Como resultado do processo de industrialização e com o progresso tecnológico, a

informática tomou conta de nossas vidas num caminho sem retorno. Desse modo, profundas alterações tem se percebido na busca da compreensão do

raciocínio, gerenciando novos comportamentos, indo ao encontro de novos entendimentos e percepções acerca do desenvolvimento de pesquisas em Inteligência Artificial.

Uma das áreas com que a Inteligência Artificial tem se preocupado é o

processamento da Linguagem Natural, que consiste em compreender como se efetua a comunicação entre as pessoas e criar sistemas computacionais a partir dessas combinações com fatos lingüísticos.

O grande desafio vislumbrado para o futuro é que, além da linguagem escrita, o

computador seja capaz de reconhecer a linguagem falada. As interfaces que estão sendo disseminadas e utili zadas estão voltadas para a Linguagem Natural, permitindo o diálogo falado entre o homem e a máquina.

O presente trabalho visa analisar de que maneira o processamento da linguagem

natural pode servir de parâmetros para a compreensão da fala pelo computador e suas possíveis conseqüências num mundo em grandes mudanças.

Page 3: Reconhecimento de Fala e Processamento Da Linguagem Natural

3

Todas essas transformações decorrentes da evolução tecnológica remete-nos ao reencantamento necessário para nos tornarmos pessoas realizadas e plenas, usando-a em benefício de uma mudança de paradigmas em prol do desenvolvimento cultural e social.

COMPONENTES DA LINGUAGEM

I . Níveis L ingüísticos da Linguagem Estudiosos ligados às áreas da psicologia, lingüística e psico-lingüística, mesmo defendendo teses e idéias não convergentes, concordam que o ser humano necessita de uma língua para pensar, raciocinar e se comunicar. Esse contexto envolve toda uma estrutura sintática e semântica de reconhecimento de uma língua. Assim duas partes são relevantes para proceder a linguagem natural: a compreensão e a produção. A compreensão abrange reconhecimento com precisão da linguagem natural, é a transformação de uma representação em outra, a qual se efetua através de uma ação apropriada. A noção de compreensão não é absoluta entre as pessoas, essa ocorre através de todos os sentidos. Nos computadores ela vem sendo empregada mais intensamente em linguagem escrita, mas também relacionada em imagens e fala. Assim, a compreensão pode ser entendida como recognição e processamento de palavras, não precisando de sua reconstrução. Não existe uma definição ampla que aborde todo o entendimento do que significa uma frase e o que é compreensão da linguagem. Quanto à produção, destaca-se uma estrutura de dicionário mais densa e ordenada, sendo necessária para o acompanhamento no processo de análise e geração de linguagem natural. II . Aspectos de cada parte da linguagem Análise Léxico-morfológica Numa sentença, as palavras ou expressões elementares da língua são identificadas, obtendo diferentes significados, com as diversas informações que se encontram disponibili zadas através do dicionário. No entanto, deparamo-nos com palavras que apresentam diferentes significados e, muitas vezes, torna-se difícil escolher o mais apropriado quando a mesma encontra-se fora do contexto de uma frase. Por exemplo, podemos citar: manga, banco, casa, entre outros. Se

Page 4: Reconhecimento de Fala e Processamento Da Linguagem Natural

4

formos abordar a compreensão da língua como um mapeamento de palavras, iremos verificar que palavras ambígüas são mais complexas descontextualizadas. Resolver os casos de ambigüidade morfológica é um problema difícil, precisam estar interrelacionados com os demais níveis, como por exemplo, o sintático. Uma técnica bem organizada para representar conjuntos de palavras é a utili zação de autômatos. Na construção de compiladores esses autômatos podem ser usados na modelagem e implementação de analisadores léxicos. Pesquisas acerca de analisadores léxicos, com base em autômatos propicia várias maneiras de executar a mesma tarefa. Existem várias formas usadas para desenvolver processadores de linguagem natural. Como essa é complexa, na sua forma e regras, é difícil a implementação de um autômato que tenha êxito nessa atividade. Análise Sintática A análise sintática é um dos componentes de uma linguagem. É o modo como a língua está organizada, não é uma novidade, nada mais é do que a pesquisa gramatical. A gramática de qualquer língua não deve estar atrelada a regras rígidas, uma vez que nenhum conjunto simples de regras pode discorrer todas as maneiras em que se dá a comunicação entre as palavras. A sintaxe trata da relação lógica das palavras numa sentença. Analisar sintaticamente uma sentença significa decompô-la em seus elementos constituintes (sujeito, predicado, objeto, adjunto e outros), verificando assim a relação lógica existente entre esses elementos. O analisador sintático usa gramaticalmente a linguagem a ser analisada em conjunto com uma seqüência de informações, advindas da análise léxico-morfológica, no que se refere às palavras, procurando construir árvores de derivação para cada frase, enfocando a coerência gramatical ou não desta frase. É relevante uma sintaxe delinear uma maneira de narrar os modos de conectar as palavras. A preocupação é fornecer regras sobre a ordem em que as palavras devem estar dispostas na sentença de modo que essa tenha um sentido, sendo importante apropriá-las a fim de que direcionem a maneira de construir as frases. Sabe-se das dificuldades encontradas para elaborar um grupo de regras que seja completo para descrever a língua. Mesmo com essas dificuldades, existem algumas formas de encaminhar esse processo. Em geral, as sentenças se estruturam a partir de um sujeito e o predicado, por essa razão dois termos são considerados essenciais:

Page 5: Reconhecimento de Fala e Processamento Da Linguagem Natural

5

Ex1: Mário correu sujeito predicado Entretanto, podemos ter o sujeito e o predicado constituídos de mais do que uma palavra. Ex2: O grande Camões escreveu Os Lusíadas Sujeito predicado O que é preciso, é garantir regras que determinem a maneira de construir sentença, garantindo que se uma sentença for concebida com seus elementos na ordem correta, ela estará certa, como mostram os exemplos 1 e 2. Uma forma de verificar as estruturas da sentença e as regras por ela seguidas, é o uso do diagrama em árvore. Sentença Sujeito Predicado artigo adjetivo substantivo Verbo O belo homem fugiu Análise Semântica

Page 6: Reconhecimento de Fala e Processamento Da Linguagem Natural

6

A análise semântica consiste em trabalhar com os significados das frases tais quais são ordenados pelos significados de suas partes, incorporando o léxico e o gramatical. Um analisador semântico deve obedecer aos parâmetros de tal forma que a frase tenha sentido, pois nem tudo o que obedece às mais regras simples da gramática tem significado. Como exemplo podemos citar: A rua atropela curiosamente. É uma sentença formada corretamente, sendo composta por artigo, substantivo, verbo e advérbio, no entanto não tem sentido. Rua é um substantivo, mas não pode vir acompanhada do verbo atropelar, pois ela não atropela. Atropelar é um verbo, ao qual não se pode aplicar o advérbio curiosamente. Resumindo, é uma sentença correta do ponto de vista da sintaxe, mas, analisando semanticamente, vemos que não tem sentido. Para a semântica existir, é necessário que anteriormente tenha sido feita a análise sintática. Podemos concluir então, que o analisador semântico necessita do analisador sintático. Análise Pragmática A análise pragmática refere-se às inferências que se devem fazer às análises léxicas, sintática e semântica, principalmente no que consiste o sentido integrado de um texto, tendo um valor prático e objetivo. Reforça-se que a compreensão de um texto não ocorre de forma parcelada. Conforme avançamos, constrói-se a interpretação do todo, interligando léxico, gramatical e pragmático. Devem-se enfocar duas partes relevantes para melhorar a compreensão através do conhecimento: - destacar a parte fundamental da base de conhecimento disponível; - fazer uso desse conhecimento para encontrar soluções para as ambigüidades e fazer

ligações com as coisas que foram descritas ou pronunciadas. Esses aspectos são fundamentais para criar um analisador pragmático, devendo-se

também levar em consideração a quantidade de conhecimento disponível, as propriedades lingüísticas de um discurso coerente, bem como o uso da base de conhecimento para facili tar a compreensão.

Todas as colocações aqui apresentadas são importantes no sentido de trabalhar em

um programa de reconhecimento de voz, para o qual é necessário ter o conhecimento do

Page 7: Reconhecimento de Fala e Processamento Da Linguagem Natural

7

processamento da linguagem natural, seus componentes, níveis lingüísticos e do que diz respeito à análise léxica, gramatical e pragmática, bem como seus analisadores.

RECONHECIMENTO DE VOZ Há alguns anos atrás, “conversar” com um computador era considerado pura ficção, muito distante de ser concretizado. Mas, o desejo do homem em comandar processos, interagir com a máquina de forma mais amigável possível, evitando o uso exagerado de comandos, via um teclado ou mouse, tornou-se algo necessário como uma evolução natural da convivência tecnologia x homem. O intuito não é somente adicionar novas interfaces de entrada de dados, mas também criar novas opções de saídas de dados, como substituir o terminal de vídeo na apresentação dos resultados, por respostas de voz sintetizada ou ações diretas no controle de algum processo. A simples edição de um texto pode ser “ditada” para o computador como se este fosse um redator obediente reconhecendo todos as tarefas faladas pelo locutor.

Para que essa idéia se concretize são necessárias muitas horas de trabalho, principalmente em um software que reconheça a voz e a ação da fala sendo executadas por um processamento natural da linguagem, como se o computador inteligentemente tomasse a ação correta. È claro que um processo como esse precisa de muitas variáveis a serem consideradas. Uma delas é que se pode iniciar com a digitalização da voz para que esta possa ser inserida no mundo digital dentro do computador, esta é a parte mais fácil... a partir daí, a próxima etapa é reconhecer a voz. Isso deve ser efetuado com bases técnicas de inteligência artificial, especialmente em redes neurais artificiais.

Existe também um outro aspecto que devemos distinguir para essa primeira etapa

neste processo: a diferença entre reconhecer e compreender a fala. Reconhecer a fala consiste em reconhecer fonemas, sílabas e palavras para formar a mensagem original, como foi pronunciada. Como exemplo disto têm-se os editores de texto através da fala.. Já, compreender a fala, consiste em entender consensualmente o significado da mensagem, visando fazer com que o sistema execute algo. Para tal, são aceitos eventuais erros. Um exemplo disto seria como, num determinado comando por voz fosse ordenado: por favor inicie ...rueh... exell. O comando é reconhecido como inicie aplicativo exell, ignorando algumas palavras (por favor) e subentendendo outras (aplicativo), pois o entendimento se dá por certas palavras-chave (inicie, exell). Esta distinção é importante pois notar a habili dade de um sistema responder inteligentemente à fala, é um critério muito significativo para avaliação dos sistemas de fala. Histórico

Page 8: Reconhecimento de Fala e Processamento Da Linguagem Natural

8

Os primeiros trabalhos realizados em reconhecimento de voz datam do século XVII , foi preciso esperar o meio deste século para que aparecessem as primeiras experiências em reconhecimento. Em uma cronologia podemos resumir os seguintes trabalhos:

• 1930 - O americano R. J. Wensley construiu o Televox, primeiro autômato capaz de

receber ordens por telefone e executar alguns movimentos correspondentes. • 1952 - Daves apresenta um sistema inteiramente de cabos capaz de reconhecer os dez

números pronunciados por um locutor. Sistema este aperfeiçoado em 1958 para uma versão que aceita diversos locutores;

• 1956 - Olson e Belar propuseram um sistema ambiciosamente chamado de máquina de escrever fonética, capaz também de reconhecer uma dezena de palavras.

• 1958 - Denes, define um sistema em duas etapas no qual a primeira realiza um reconhecimento puramente acústico que, na segunda, será refinado pela utili zação de conhecimentos lingüísticos.

• 1960 - A aparição dos métodos numéricos e a utili zação do computador dão uma nova dimensão a estas pesquisas.

• 1966 - Sistemas em laboratório conseguem identificar corretamente 30 a 50 palavras ditas por diferentes pessoas. Essas experiências eram baseadas na comparação das formas das palavras.

• 1968 - Alter e Reddy verificam a utili dade das informações lingüísticas no reconhecimento da fala. Vicens em 1969 e Tubach em 1970 concretizam trabalhos neste enfoque.

• 1971 a 1976 - Projeto americano financiado pela ARPA (Advanced Research Projects Agency) - Tratamento da fala contínua fortemente influenciado pela inteligência artificial. Propunha também aceitar um grande número de locutores cooperativos, compreender um vocabulário de mil palavras, utili zar uma sintaxe artificial no escopo de uma tarefa precisa, respondendo em tempo próximo ao real.

• 1975 surge o DRAGON e em 1976 o HARPY que trabalhavam com um discurso contínuo de um único usuário com um vocabulário de até 1000 palavras, obtendo acertos entre 84 e 97%.

• 1985 - TANGORA da IBM uma versão que sacrifica a fala contínua para um acerto de 97% e vocabulário de 20.000 palavras.

• 1987 - Laboratórios Bell reconhecem, com uma precisão de 97%, os dígitos de um telefone.

• 1988 - SPHINX precisão de 96% em fala contínua independente do locutor e em tempo real com um vocabulário de 1000 palavras.

• final da década de 80 - Teuvo Kohonen, da Universidade de Tecnilogia de Helsinki, desenvolve uma máquina de escrever por voz utilizando uma combinação de DSP com sistemas baseados em regras e redes neuronais. Obteve taxas de 92 a 97% utili zando casos extremo de conversações fala-texto, contínua, com vários locutores e grande vocabulário com ¼ de segundo de resposta. Permitiu a visualização de um futuro promissor.

• 1994 - Muitos artigos proclamam a chegada do reconhecimento de voz no mercado. Um mercado promissor que deve atingir US$ 1 bilhão até 1999. Desenvolvimento dos Sistemas como o Personal Ditaction System da IBM e Dragon Dictate da Dragon Systems.

Page 9: Reconhecimento de Fala e Processamento Da Linguagem Natural

9

MODELAMENTO DE UM SISTEMA DE RECONHECIMENTO DA FALA Antes de se conhecer um sistema computadorizado de reconhecimento de fala, deve-se verificar como isso ocorre naturalmente. Para que haja comunicação é necessário que se possuam dois personagens: o locutor e seu interlocutor, ou ainda, o emissor e o receptor da mensagem.

O emissor produzirá uma mensagem fazendo com que determinada idéia que possua seja transformada em sons, através do comando de nervos motores do aparelho fonador, ou seja, o emissor tem uma idéia e a codifica em símbolos que são transmitidos ao receptor. O receptor decodifica estes símbolos em um código interno (idéia), ou seja, o receptor perceberá a mensagem, através de nervos sensoriais do seu aparelho auditivo, procurando transformar os sons recebidos na idéia original. A comunicação pode ser considerada boa, caso haja um isomorfismo entre os estados internos de idéia tanto do emissor quanto do receptor.

Um reconhecedor da fala será sempre o receptor da mensagem. Uma configuração

típica de um reconhecedor pode ser constituído por um microfone (fazendo as funções de nervos sensoriais do aparelho auditivo) conectado a um sistema ou dispositivo (hardware+software) ligado ao computador. Esse dispositivo consiste basicamente em executar a tarefa ao qual se destina nas seguintes fases: 1. transformar através de hardware, as ondas sonoras (sinal analógico) em números (sinal

digital) para algum processamento pelo software; 2. através de um software é feita a captação da massa de dados numéricos vindos do

hardware, reconhecendo alguma palavra. No desenvolvimento e aprimoramento desse software é que se concentra o esforço de milhares de pesquisadores em todo o mundo. Esse é o coração do dispositivo;

3. análise do sinal e extração de parâmetros: a quantidade de bit´s por segundo gira na faixa dos 50.000 nos sistemas com boa qualidade de recepção. Esta é uma massa muito grande de dados para ser tratada. Logo, devem ser aplicados meios de redução ou extração dessa informação, sem perder as características do sinal representativo da mensagem. Para tal, são utili zadas várias técnicas, entre elas: transformada discreta de Fourier, banco de filtros, densidade de passagem por zero, etc;

4. determinação do ponto final da fala: determinar quando os dados recebidos não significam mais a fala propriamente dita, mas apenas ruído do ambiente, ou mesmo o silêncio.

5. normalização em freqüência e tempo: a necessidade de normalização em freqüência origina-se do fato que cada usuario-locutor possui timbre e entonação diferentes, fazendo com que as freqüências para um mesmo fonema sejam diferentes. A normalização em tempo advém das diferentes velocidades com que se pode ser dita uma palavra.

Page 10: Reconhecimento de Fala e Processamento Da Linguagem Natural

10

6. reconhecimento: após terem sido efetuados os passos anteriores (na ordem apresentada ou não), algum modo de identificação deve ser aplicado. Várias técnicas são utili zadas como: comparações com dicionários, regras de produção, programação dinâmica, modelo escondido de Markov (hidden Markov model é a mais recente das redes neuronais)

Em síntese, um diagrama de blocos básico de um reconhecedor de voz pode ser assim estruturado: REPRESENTAÇÃO: neste bloco são extraídas as características do sinal da fala e colocadas em um padrão de sinal computacional. Esse bloco é um determinante na qualidade do sistema. Aqui é que o sinal de fala, passa para a linguagem do computador, e suas características devem portar informações que identifiquem o locutor como por exemplo a medida de energia, intensidade, coeficientes de predição linear, coeficientes cepstrais e outros. Os softwares utili zados nesse processo são geralmente a Transformada Rápida de Fourier (FFT) e Codificação Preditiva Linear (LPC). Essas técnicas são peças chave para identificar o locutor e suas características. CLASSIFICAÇÃO: nesta etapa se realiza o reconhecimento do locutor dentre vários a serem identificados. Aqui parâmetros como taxa da fala, tamanho do vocabulário e estado emocional/físco do locutor são representativos. Cadeias de Markov (HMM) e distância Euclidiana (Calcula-se a distância das características da fala e do banco de amostras) são métodos utili zados para modelagem. Devido a manipulação neste estágio de grande massa de dados, utili zam-se os conceitos de Redes Neurais (RNA) porque baseiam-se no comportamento biológico do Cérebro Humano, onde são processadas as informações do corpo humano, em especial do aparelho auditivo neste caso. BANCO DE DADOS INTELIGENTE: além do vocabulário, uma grande dose de inteligência artificial deve ser empregada aqui para que se habili te todo o sistema a fazer decisões inteligentes e que “para fazer com que ele aprenda” com a experiência. O vocabulário é projetado de modo a conter as palavras de um grupo de usuários específicos

BANCO DE DADOS INTELIGENTE

BUSCA CLASSIFICAÇÃO REPRESENTAÇÃO

Modelos de Linguagem

Modelos de Léxica

Modelos de precisão

SINAL DE FALA PALAVRAS RECONHECIDAS

Page 11: Reconhecimento de Fala e Processamento Da Linguagem Natural

11

como advogados, radiologistas, etc... O tipo de pronúncia dos fonemas para cada locutor também deve ser previsto e aprendido. Metas do Reconhecimento da Fala

Para o reconhecimento da voz, observa-se que o que se dispõe hoje é fator limitante. Essas limitações podem assim ser elencadas:

a) qualidade do microfone - o espectro do sinal convertido deste componente pode trazer

erros na cadeia do processo de reconhecimento; b) modo da fala: isolada ou contínua. Isto está relacionado à capacidade de processamento

e da qualidade do software na separação das palavras reconhecidas; c) estilo da fala: leitura ou fala espontânea. Uma leitura certamente gera maiores

probabili dades de que se tenha uma eficiência melhor no reconhecimento da fala. Já a espontânea representa uma dificuldade maior principalmente com relação à sua velocidade e aos vícios de linguagem que apresenta;

d) independência ou não do usuário que fala: “treinar” o computador de modo que este reconheça um ou mais usuários, diferenciando o sexo ou idade deste. Ainda pode-se considerar o estado físico do usuário como stress, nervosismo, ansiedade, etc.;

e) tamanho do vocabulário: a quantidade de palavras é também relativa à capacidade de processamento e armazenamento do computador. Pode-se aplicar conceitos de inteligência artificial para que o computador adicione ao seu vocabulário, palavras que não tenham sido reconhecidas anteriormente;

f) modelo de linguagem no sentido de quanta sofisticação deve existir nas regras de gramática. Isso varia para cada língua. Em especial na língua Portuguesa isso é mais complicado;

g) perplexidade, no sentido de quantos significados poderá existir para uma palavra em particular. Por exemplo a palavra "banco" , pode significar um lugar para sentar ou uma instituição bancária. Resta ao computador analisar o sentido das frases para determinar o seu sentido. Palavras cognatas também são constantemente encaradas como um erro no reconhecimento;

h) ruído no ambiente: isso está intimamente ligado ao processamento do sinal (DSP), no qual deveria distinguir a voz do usuário (sinal) de conversas ou ruídos no ambiente (ruído=lixo)

Estas barreiras são as que devem estar na lista dos pesquisadores de modo que,

quando vencidas, irão trazer o real significado para inúmeras aplicações futuras. Atualmente o que temos são tecnologias mais voltadas para transcrever do que para reconhecer fala. Isto não ajuda muito já que após a transcrição ainda temos que interagir para corrigir erros manualmente. O que se espera mesmo, é que o computador se comporte como um humano nesta tarefa. Um exemplo disto é a solicitação de troca de canal de um televisor que se encontra na sala, por uma dona de casa que está na cozinha, longe do alcance visual e sua filha escuta, próximo à sala, o último CD de seu grupo favorito. Se uma pessoa, mesmo com um pequeno grau de inteligência, estivesse na sala, distinguiria a ordem e executaria a tarefa, apesar de não estar vendo a pessoa que está ordenando e ouvindo outros sons, entenderia naturalmente o pedido. Outras situações como por exemplo

Page 12: Reconhecimento de Fala e Processamento Da Linguagem Natural

12

estar executando ordens através de um telefone, seria muito interessante poder ouvir do computador, ao atender uma chamada telefônica um sinal que o mesmo está entendendo a fala do locutor com um típico “arrã” ou “como?” o que o mesmo fala.

Ainda temos outras características que vão além do analítico reconhecimento da fala. Nós humanos, nem sempre usamos a fala como único meio de nos comunicar. Gestos, olhares, expressões faciais ou movimento com corpo e mãos também fazem parte da comunicação. Para o reconhecimento da fala, observar estas outras características, apesar de muitas vezes serem redundantes à fala, intensifica sua compreensão. Mas essa abordagem já vai além do processo aqui exposto. È claro não deve ser esquecido nas pesquisas.

Assim se traduzem as metas que devem ser buscadas. Os limites, certamente, estão concentrados no tratamento da informação binária entregue ao computador. A capacidade de armazenamento e processamento do hardware está dia a dia aumentando. A idéia é aperfeiçoar as aplicações de inteligência artificial aos softwares que tratarão os dados. INTERFACES HOMEM X COMPUTADOR Interface é um dispositivo que serve de limite comum a várias entidades comunicantes, as quais se exprimem em uma linguagem especificada a cada uma. Para que a comunicação seja possível, o dispositivo deve assegurar a conexão física entre as entidades e efetuar as operações de tradução entre os formalismos existentes em cada linguagem. Uma vez que a comunicação esteja estabelecida, a interação pode ocorrer entre as entidades. Uma interface é um local para encontro ou interação. Vários profissionais de informática estimam que a utili zação da linguagem natural é o que melhor pode se oferecer ao usuário em termos de interface. A utili zação de linguagem natural não garante que a interface seja natural. Isto é, fazer com que o usuário possa digitar seus comandos de acordo com seu vocabulário coloquial facili ta seu acesso ao computador, porém oferecer-lhe uma interface, através da qual ele consiga dar entrada a esta mesma linguagem por voz ou escrita manual, seria mais próximo ao modo comum dele se comunicar. O computador de próxima geração será integrado com interfaces tipo caneta, mouse, teclado e voz, mas nenhuma opção de entrada dominará. O usuário é que selecionará seu dispositivo de entrada baseado na aplicação e nas suas preferências pessoais. Outros modos de interação como telas sensíveis ao toque, luvas (datagloves), sistemas de câmaras que captam gestos, sistemas que controlam o movimento dos olhos, são formas de interfaces de que podem ser providos os computadores. O objetivo é tornar o computador com interfaces mais naturais possíveis de modo a fazer com que o usuário nem perceba a utili zação de uma delas.

Page 13: Reconhecimento de Fala e Processamento Da Linguagem Natural

13

INTERFACES DE VOZ A predominância da fala como linguagem natural se dá historicamente pelo fato de o homem utili zar a audição para comunicação, deixando os outros sentidos livres para exercerem outras atividades. A utili zação da fala como interface homem máquina facili ta a utili zação de um sistema uma vez que eles têm se tornado cada vez mais complexos. “Reconhecimento de fala é um dos pontos chave do cliente de negócios” diz Bob McBreen, gerente de produto para a Microsoft Windows Sound System. Ele acredita que o reconhecimento da fala será parte integrante da computação no futuro. A imaginação é o limite para definir aplicações para este novo tipo de interface. Porém existem restrições atualmente. A primeira restrição é a capacidade de memória e de processamento. As técnicas atualmente utili zadas não podem evoluir muito mais em razão das restrições de capacidade, já que acarretará em soluções como a diminuição do vocabulário. Outra restrição é tornar o ditado mais pausado, possibili tando o sistema compreender cada palavra, demandando menor tecnologia de processamento. APLICAÇÕES

Os sistemas de reconhecimento de voz e o processamento de linguagem natural têm garantido, nesses últimos anos, avanços no campo tecnológico, principalmente com o desenvolvimento de interfaces que poderão se comunicar através da voz.

Na área comercial, por exemplo, o ano de 1997 foi marcado pela incrementação de quase todos os produtos com facili dade de interação com a Internet e, em 1998, segundo vários analistas da área, o reconhecimento de voz estará embutido em alguns aplicativos. Para definirmos algumas aplicações é importante que se verifiquem as características dos usuários juntamente com o ambiente em que se irá atuar, como: hardware, software, tipo de aplicação, etc. Neste sentido, descreveremos a seguir exemplos de aplicações práticas: Em Telecomunicações:

Consórcio:

• INESC (Instituto de Engenharia e Computadores, Lisboa) • IT (Instituto de Telecomunicações – Pólo Coimbra) • FEUP (Faculdade de Engenharia da Universidade do Porto)

Page 14: Reconhecimento de Fala e Processamento Da Linguagem Natural

14

O presente projeto reúne estas três instituições com o objetivo de investigar a área de reconhecimento de voz para o português, com aplicações no domínio das telecomunicações. Este trabalho esta baseado em 7 tópicos principais:

1. pré-processamento espectral baseado em modelos de audição; 2. reconhecimento de fonemas com independência do locutor; 3. reconhecimento de dígitos com detecção de palavras-chaves; 4. segmentação automática e etiquetagem de locuções de dígitos; 5. reconhecimento de vocabulários de grande dimensão; 6. reconhecimento do locutor; 7. identificação automática da língua em fala contínua. Pretende ainda, com este projeto, trabalhar na construção de sistemas de

reconhecimento de voz robustos e confiáveis, para serem utili zados em várias aplicações de telecomunicações, bem como discutir mais amplamente as várias técnicas, sua difusão junto a operadoras e outras prestadoras de serviços.

Na Educação: No mercado existem algumas aplicações educativas que permitem avaliar a pronúncia dos locutores, recorrendo as técnicas de reconhecimento de voz. Isso é feito comparando uma determinada palavra ou frase com padrões preestabelecidos, sendo posteriormente avaliada e classificada por um sistema computacional. Por exemplo, os alunos podem gravar a sua própria voz e passar em seguida a gravação para verificarem a pronúncia e testar a sua compreensão. Dentro desse aspecto, o sistema computacional baseia-se no estudo de diversas variáveis, das quais podemos relacionar:

a) tipo de discurso (palavras isoladas, frases); b) número de locutores no discurso; c) tipo de locutores no discurso (homem, mulher, criança); d) tamanho do vocabulário (pequeno, médio, grande); e) sistema de transmissão (microfone, telefone).

Para Deficientes Físicos: A introdução da informática na educação é relativamente recente. A criação de software e hardware específico para deficientes físicos supriu uma carência existente, possibili tando que essa clientela superasse suas desvantagens físicas. Para os deficientes visuais, os sistemas de reconhecimento de voz permitem evitar a utili zação do teclado e podem ser treinados para reconhecer centenas de comandos de um usuário em particular, mas geralmente falham, se necessitam receber comandos de mais

Page 15: Reconhecimento de Fala e Processamento Da Linguagem Natural

15

de um usuário. Quando são ajustados para reconhecer múltiplos usuários, o número de comandos que passa a “entender” com segurança é uma fração daqueles disponíveis para o reconhecimento de um usuário específico. O reconhecimento de voz, como forma eficaz de comandos de entrada para computadores, ainda é economicamente viável, porém os trabalhos adicionais nesta área de pesquisa certamente irão abrir maiores possibili dades de auxílio adaptativo para os deficientes visuais. A Escola Técnica Federal de Santa Catarina (ETF-SC), em parceria com a Fundação Catarinense de Educação Especial (FCCE), desenvolveu através de seu Núcleo de Eletrônica uma cadeira de rodas microcontrolada comandada por voz. Utili zando o software “Voice Manager” que reconhece palavras em inglês para a sua utili zação em substituição ao mouse ou teclado. Os dados são transmitidos via comunicação serial, utili zando o protocolo de comunicação RS-232, a uma interface que permitirá que o microcontrolador interprete-os corretamente, enviando códigos de acionamento. Sistema de Reconhecimento de Locutor utilizando Redes Neurais: Mestrando: André Gustavo Adami Orientador: Prof°. Dr. Dante Augusto Couto Barone Instituição: Universidade Federal do Rio Grande do Sul O processo de reconhecimento de locutor necessita de uma certa precisão pois a aplicação do mesmo será em atividades determinísticas que obrigam a certeza do resultado. Em vista disso, a busca de melhores algoritmos visam sanar este problema encontrado neste tipo de aplicação. Com o advento das Redes Neurais como classificadores ou até extratores de características de sinais, pode-se prever o aparecimento de uma solução viável e ótima para tais aplicações. Isso deve-se ao fato de que as Redes Neurais baseiam-se no biológico do cérebro humano, onde é realizado o processamento das informações do corpo humano, em especial, do aparelho auditivo. Um caminho que pode ser utili zado na solução da complexidade do problema, baseado no aparelho auditivo humano, é a divisão de tarefas através do uso de modelos específicos em cada tarefa, pelo fato de que o aparelho auditivo humano é composto por vários tipos de neurônios com diferentes graus de conexões. Por isso, pode-se pensar em uma solução de separar os locutores em função de um determinado critério que diferencie os locutores para facili tar a classificação, como por exemplo, pelo sexo. Como o processamento de voz envolve grande quantidade de dados, para a melhor solução do problema será necessário implementar o dispositivo que, por ser específico, proporciona um grande desempenho na aplicação descrita.

Page 16: Reconhecimento de Fala e Processamento Da Linguagem Natural

16

Uso de Sistemas Multi-Agentes no Processamento da Linguagem Natural: Projeto: NALAMAS Através de um projeto cooperativo desenvolvido em conjunto por pesquisadores de 06 instituições, no Brasil: PUCRS, UFRGS, UFSC, UNICAMP e USP e, em Portugal, a Universidade Nova de Lisboa.

O objetivo dessa equipe centrou-se em estudar algumas questões relacionadas as arquiteturas multi-agentes no processamento da linguagem natural como: “quem são os agentes lingüísticos? serão eles os agentes associados a sintagmas ou palavras? ou será mais adequada uma abordagem associada aos domínios de processamento lingüístico? como estes agentes se organizam em sociedade, para a compreensão da linguagem natural? é possível imaginar sociedades (ou subsociedades) de agentes adaptadas para o processamento de fenômenos complexos requeridos no processamento da linguagem natural? ou serão fenômenos resolvidos por agentes específicos? E, conseqüentemente, chegar à especificação de uma arquitetura na área.

Computador Falante: Empresa: British Telecom Os laboratórios de pesquisa e desenvolvimento da British Telecom, em Suffolk, no Reino Unido, trabalham com cabeças falantes há cerca de 10 anos. Cada uma delas é baseada em uma armação tridimensional de arame, que é modificada para se adequar aos traços do rosto de uma pessoa específica. Sobre a armação é superposta a imagem digital do rosto de uma pessoa, criando ilusão de uma cabeça tridimensional. Cada modelo incorpora lábios, dentes, maxilar e língua. Por meio de um teclado, o usuário registra texto que é convertido em palavras faladas pelos software Laureate, da BT, um sofisticado programa de conversão que converte o texto em discurso falado realista, com vários diferentes sotaques possíveis. Algumas aplicações futuras da tecnologia podem incluir secretárias pessoais eletrônicas que leiam as mensagens de e-mail que o usuário recebe e atendam a seus pedidos, além de guias virtuais que sairiam à caça de informações e depois as apresentariam ao usuário sob forma oral. Eliza: Programa desenvolvido durante as primeiras experiências com linguagem e Inteligência Artificial e que podia manter uma boa conversação com uma pessoa humana sobre uma certa variedade de tópicos. O princípio de funcionamento era baseado na detecção de algumas palavras-chaves e, alterando os tempos verbais e extraindo cláusulas das mensagens dos usuários, podia responder ao interlocutor. Por exemplo, se o usuário

Page 17: Reconhecimento de Fala e Processamento Da Linguagem Natural

17

digitasse “Odeio sorvete”, o programa detectaria a palavra-chave “odeio” e responderia “Não é bom odiar” . Estas duas técnicas – reposta a palavras-chaves e alteração de tempos verbais – acompanhadas de alguns outros truques especializados, podem produzir um programa que mantenha uma conversação razoável com o usuário. Existem a disposição programas Eliza em Basic que têm somente algumas páginas. Reconhecimento de Voz no Sistema de Reservas da United Airlines: Empresa: Applied Language Technologies, Inc A Applied Language Technologies, Inc. (AL Tech) desenvolveu um software de reconhecimento de voz para aplicações telefônicas. Este software faz parte da primeira fase do desenvolvimento de um sistema empregado na United Airlines para reservas de vôos. Com este sistema, os empregados da United podem reservar viagens rapidamente e, facilmente, a toda hora e em qualquer lugar – sem precisar falar com um agente de reservas. Os empregados com este software interagem com o sistema, como por exemplo: “Chicago to Denver tomorrow at three in the afternoon” ou “Miami to São Paulo on October 14th on flight 983” . Os empregados da United podem checar e fazer reservas dos 2.300 vôos diários e marcar viagens dentro dos 136 destinos que a United oferece. O software de reconhecimento de voz conecta a United com todo o sistema de informação em tempo real. O software da AL Tech provê um número de características chaves, como linguagem natural, vocabulários dinâmicos, de que necessitamos para uma aplicação bem sucedida. SOFTWARES DE RECONHECIMENTO DE VOZ Com o avanço da Inteligência Artificial, a área de reconhecimento de voz tem passado por uma série de obstáculos, obtendo bons resultados ultimamente. Hoje, qualquer computador pessoal (PC ou Mac) pode estar equipado para reconhecer e reagir a voz humana. A seguir, estão descritos alguns softwares encontrados comercialmente:

1. IBM Via Voice Gold

Características: • pode abrir arquivos e e-mail, formatar textos ou surfar pela Internet com a voz natural; • ordena documentos e e-mail em ambiente Windows 95 e NT; • aplica-se para usuários profissionais, em negócios, em casa, na escola; • reconhece as línguas: francesa, alemã, espanhola, italiana e inglesa; • pode-se falar naturalmente sem pausa entre as palavras; • apresenta vocabulário base com 22.000 palavras e pode ser expandido para 64.000

palavras; • tem 260.000 dicionário de palavras de backup;

Page 18: Reconhecimento de Fala e Processamento Da Linguagem Natural

18

• permite correção de voz; • é compatível com sistemas operacionais Windows 95 e Windows NT 4.0; • recomenda-se processador equivalente ou superior a Intel Pentium 150 MHz MMX; • possui memória RAM de 32 MB para Windows 95 e 48 MB para Windows NT 4.0; • apresenta espaço em disco rígido de 125 MB.

2. Conversa Web (Conversa Conversation Computing)

Características:

• permite navegar pela Internet, qualquer link pode ser ditado para o computador; • possibili ta a realização no borwser dos comandos Reload, Back ou Forward; • é compatível com Internet Explorer 4.0; • reconhece apenas a língua inglesa.

3. Dragon Naturally Speaking (Dragon Systems, Inc.)

Características: • suporta aplicações do Microsoft Office 97; • apresenta a versão Classic Edition com capacidade para 30.000 palavras e Power

Edition de 60.000; • reconhece as seguintes línguas: inglês americano; inglês britânico; francês, alemão,

italiano, espanhol; • requer no mínimo processador 486/66 MHz, 16 MB RAM para o Classic Edition e 20

MB para Power Edition (com adição de 4 MB para NT); • é compatível com Windows 3.x, Windows 95, com limite para o Windows NT; • suporta uma variedade de placas de som padrão 16 bit; • tem espaço em disco rígido necessário: 36 MB para o Classic e 54 MB para o Power

Edition.

4. Phili ps Speech Processing (Philips):

Características: • pode-se falar naturalmente sem pausa entre as palavras; • utili zado principalmente em reconhecimento de voz na telefonia;

5. Watson Speech Recognition (AT & T):

Características: • usado para Netscape Navigator 3.x ou superior e Microsoft Internet Explorer 3.x ou

superior; • é compatível com Windows 95 ou Windows NT 4.0;

Page 19: Reconhecimento de Fala e Processamento Da Linguagem Natural

19

• requer no mínimo processador Pentium 90 MHz, 16 MB RAM; • necessita de espaço em disco rígido de 25 MB; • suporta placa de som e microfone.

6. Naturally Speaking: Características:

• é compatível com Windows 95 ou Windows NT 4.0; • possui 30.000 vocabulários ativos; • requer no mínimo processador Pentium 133, 32 MB RAM ou 48 MB para NT 4.0.

7. VoiceType (IBM):

Características: • apresenta 25.000 a 40.000 palavras de uso corrente; • não é capaz de reconhecer fala contínua, sem pausas entre as palavras.

8. VoicePad (Kurzweil):

Características: • Apresenta 25.000 a 40.000 palavras de uso corrente; • não é capaz de reconhecer fala contínua, sem pausas entre as palavras; • requer no mínimo processador Pentium 100, 16 MB RAM.

CONSIDERAÇÕES FINAIS

Apesar do evidente interesse na pesquisa, ainda existem algumas barreiras sobre a tecnologia e o futuro do reconhecimentos de fala. O fundador da Creative Labs e criador da multimídia, Sim Wong Hoo por exemplo, defende a idéia de que desenvolvimentos nesta área só irão atender deficientes físicos incapazes de utili zar mouse ou teclado.

Discorda-se completamente, pois apesar do que existe disponível, o reconhecimento

de voz, ainda mostra muitas limitações, compartilha-se com a visão da Microsoft, que julga a voz como o futuro da computação e atualmente possui cerca de 80 cientistas trabalhando para disponibili zar num futuro próximo, chips e/ou softwares eficientes com preços acessíveis, de modo a ser incorporados a eletrodomésticos que reconhecerão os comandos do usuário.

Como o processamento de voz é um sistema complexo que necessita de um elevado

número de dados, requerendo precisão, confiabili dade e segurança, ... etc.......linguiça.....

Page 20: Reconhecimento de Fala e Processamento Da Linguagem Natural

20

REFERÊNCIAS BIBLIOGRÁFICAS:

1. ALLEN, James. Natural Language Understading. Benjamin/Cummings Pub. Co., 1994.

2. MAGNI, A..Redes Neurais Artificiais e Informações de excitação no Reconhecimento Automático do Locutor. In: Congresso Brasileiro de Redes Neurais, II . Curitiba, Outubro 1995. Anais. 1995.

3. MORGAN, D. P. e SCOFIELD, C. L. Neural Networks and Speech Processing. Morwell, Kluwer, 1991.

4. KRULEE, G. K. Computer processing of natural language. Prentice-Hall, 1991.

5. RICH, Elaine. Inteligência Artificial. Mc Graw-Hill ,. 1988

6. BENNANNI, Y. e GALINNARI, P. A. Modular Connectionist Architecture for Text-Independente Talker Identification. In: IEEE International Joint Conferende on Neural Network. Seattle, Vol. 3, Julho 1991

LINKS:

1. http://www.dragonsys.com/news/pressrelease/pworld617.html – Dragon NaturallySpeaking Selected for two 1998 PC World Class Awards.

2. http://www.talk2me.com/dragon-dictate.html – Dragon Systems Announces Major to DragonDictate for Windows.

3. http://www.voice-recognition.com/NaturallySpeaking.html – What speech recognition program is right for my needs?

4. http://www.altech.com/united.htm – Altech Speech Recognition Software used by United Airlines in employee reservation system.

5. http://www.speech.inesc.pt/rec/rec_pt.hmtl – Reconhecimento de Fala e suas Aplicações em Telecomunicações.

6. http://www.att.com/aspg – Advanced Speech Products Group. 7. http://www.v2tech.com/software/default.html – Voice Recognition Software. 8. http://www.smfa.edu/students/lewis/Sprec.htm – Speech Recognition Software is

here. 9. http://www.inf.ufgrs.br/~adami/semianda.html – Sistema de Reconhecimento de

Locutor Utili zando Redes Neurais. 10. http://www.software.ibm.com/is/voicetype/product98_main.html – ViaVoice 98

Highlights.

Page 21: Reconhecimento de Fala e Processamento Da Linguagem Natural

21

11. http://www.dds-corp.com/speech/intro.htm - An Introduction to Speech Recognition.

12. http://www.nibgw.unicamp.br/~sabbatini - Fale devagar, por favor. 13. http://www.cognitiosite.com/jorn2.html - Ciências Cognitivas 14. http://www.eps.ufsc.br/disserta/hugo - Redes Neurais e Reconhecimento de

Palavras Faladas (Marcel Hugo).