[tcc] O processo de produção e reconhecimento de fala

O processo de fala representa um papel de grande importância na comunicação entre seres humanos. Esse processo pode ser representado claramente por um ciclo, ciclo este que pode ser resumidamente descrito da seguinte forma: o processo de fala começa nos pensamentos do emissor da mensagem, onde a informação a ser transmitida é formulada. A partir dessa mensagem, o processo de fonação (movimentos musculares para produção de sons) se inicia para permitir a geração dos sons que serão ouvidos, e potencialmente entendidos, por outras pessoas.

Um ouvinte recebe essas ondas sonoras através do seu sistema auditivo. Essas ondas são convertidas em sinais neurológicos de forma com que o cérebro possa fazer o entendimento da mensagem recebida.

O processo completo de geração de fala até o seu entendimento final pode ser entendido com mais detalhes, conforme descrito anteriormente por [1], observando-se a figura abaixo:

Figura 1. Produção e reconhecimento de fala

Inicialmente temos o processo de geração da fala: a etapa de formulação da mensagem consiste na elaboração da ideia que será expressada, após isso o sistema de expressão linguística é acionado para converter a ideia gerada num conjunto de palavras e fonemas que será transmitido posteriormente. Com as palavras e fonemas já definidos, o mapeamento neuromuscular se inicia para que o trato vocal possa trabalhar corretamente e emitir os sons relativos à mensagem original.

Após essas etapas concluídas temos o processo de entendimento da fala por parte do ouvinte: o processo de entendimento funciona de forma similar, porém inversa. As ondas sonoras emitidas pelo locutor chegam até o aparelho auditivo do ouvinte onde farão o estímulo da cóclea, desse estímulo a transdução neural vai permitir uma conversão das informações contidas nas ondas sonoras em sinais neurais que serão usados nos processos subsequentes. Com os sinais convertidos, o sistema de expressão linguística e a compreensão da mensagem são atingidos e o ouvinte entende a mensagem emitida pelo locutor. Porém, segundo [2], atualmente ainda não é claro como os dois processos que ocorrem após a transdução neural funcionam exatamente.

No campo computacional, há processos equivalentes para cada uma das etapas do processo de produção e entendimento da fala humana. O processo computacional para o reconhecimento de fala pode ser visto na figura abaixo, conforme também descrito por [3]:

Figura 2. Reconhecimento computacional de fala

Nele é possível notar que para cada uma das quatro etapas do processo humano existe uma contraparte no processo de reconhecimento computacional.

Nota importante: este texto ainda está sujeito a uma ampla revisão, ou seja, é uma versão beta. =)

Referências
[1] HUANG, Xuedong; ACERO, Alex; HON, Hsiao-Wuen. Spoken Language Processing (...), Prentice Hall, 2001, páginas 19 e 20
[2] HUANG, Xuedong; ACERO, Alex; HON, Hsiao-Wuen. Spoken Language Processing (...), Prentice Hall, 2001, página 20
[3] HUANG, Xuedong; ACERO, Alex; HON, Hsiao-Wuen. Spoken Language Processing (...), Prentice Hall, 2001, página 20

Nota: Os textos publicados com a identificação [tcc] no título são textos relativos aos assuntos que estou pesquisando para o meu TCC. Como eu estou na etapa de pesquisa e formulação das ideias, nem tudo o que for apresentado aqui deve ser encarado como verdade absoluta, além de estar sujeito a erros, como qualquer outro trabalho. Utilize seu senso crítico ao ler estes textos e, se você desejar, deixe seus comentários no formulário abaixo. :D

comentários (2)

[tcc] Sensação de continuidade

Durante as minhas leituras das referências para o TCC me deparei com um conceito que é amplamente empregado em páginas web: é a sensação de continuidade que um site, página ou sistema pode, ou deveria, ter.

Para explicar melhor esse conceito primeiro vou exemplificar como ele se aplica no contexto de páginas web em geral.

Imagine que você vai consultar o site da Receita Federal para saber o andamento da sua restituição do imposto de renda. Você acessa a respectiva página e insere seu CPF mas esquece de algum dos dígitos, você clica no botão "Consultar" e a página retorna com o campo do CPF vazio e nenhuma informação adicional.  O que você pensa? (Só pra deixar claro... não é isso que acontece no site, é apenas um exemplo...)

"Ué, o que aconteceu?", "Será que enviou?", "Será que o site tá funcionando?", "Será que eles não receberam minha declaração?", "Será que meu CPF está bloqueado?", além de mais outros N possíveis questionamentos.

Só que todos esses questionamentos somem de uma só vez se a tela que é mostrada após o envio trouxer uma mensagem de erro, além de outras informações contextuais que sejam revelantes. Em outras palavras, a tela exibe uma continuidade em relação ao que foi feito anteriormente.

Quando mudamos o contexto para uma aplicação com reconhecimento de fala a situação é similar. Imagine o seguinte o diálogo entre o sistema (máquina) e um ser humano.

Sistema: Para qual cidade o senhor deseja viajar?
Pessoa: Indaiatuba
Sistema: Para qual cidade o senhor deseja viajar?
Pessoa: Eu já disse, Indaiatuba!!!

E assim vai... Já deu pra perceber que este exemplo está com problemas, né? Quando o sistema reproduz pela segunda vez exatamente a mesma pergunta, o ouvinte não tem condições de saber o que aconteceu para a pergunta anterior ser repetida. Novamente, na cabeça do ouvinte, surgem uma série de questões e impressões:

"Eu acabei de falar Indaiatuba, será que ele não ouviu?", "Será que eu não posso viajar para Indaiatuba?", "Será que esse sistema entende mesmo o que eu falo?", "Será que esse sistema funciona?", entre outros.

O problema nesse contexto também se resolve da mesma forma, mantendo a conversa de forma contínua, similar ao que fazemos naturalmente ao conversar com outra pessoa. O exemplo acima poderia ser melhorado desta forma:

Sistema: Para qual cidade o senhor deseja viajar?
Pessoa: Indaiatuba
Sistema: Desculpe, não entendi... O senhor poderia repetir para qual cidade deseja viajar?
Pessoa: Indaiatuba

Perceba neste segundo exemplo que quando o sistema emite sua segunda mensagem ele repete a pergunta do destino da viagem mas, antes da pergunta há uma contextualização com a informação dizendo que "ele" não entendeu o que a pessoa havia dito.

Diante desses exemplos acredito que fica bem claro o quão é importante demonstrar para o usuário a continuidade nas possíveis interações que seu sistema permite. Um sistema que transmite essa sensação de continuidade não gera dúvidas nas ações de seus usuários e torna o sistema uma ferramenta melhor usável.

Curiosamente, este texto se relaciona muito com um texto que eu publiquei anteriormente sobre a importância do feedback positivo.

Nota: Os textos publicados com a identificação [tcc] no título são textos relativos aos assuntos que estou pesquisando para o meu TCC. Como eu estou na etapa de pesquisa e formulação das ideias, nem tudo o que for apresentado aqui deve ser encarado como verdade absoluta, além de estar sujeito a erros, como qualquer outro trabalho. Utilize seu senso crítico ao ler estes textos e, se você desejar, deixe seus comentários no formulário abaixo. :D

comentários (3)

TCC

É, já faz mais de um mês desde o meu último texto. Confesso que eu não esperava essa correria logo no começo do ano. Aqui no trabalho precisei dar uma ajuda num projeto com o prazo apertado e, por conta disso e de alguns outros fatores menores, o desenvolvimento do meu TCC, cujo qual ainda não comentei nada por aqui, acabou sofrendo algum impacto.

O bom é que parece que as coisas voltaram a se normalizar. :D Vou aproveitar e comentar aqui um pouco sobre meu TCC, até porque ele vai me acompanhar até o final do ano.

Sobre meu TCC

Até parece que foi ontem que comecei minha graduação mas o fato é que já estou no último ano. =) Sendo assim chegou a hora de elaborar o "temido e famigerado" TCC.

Acho que as dúvidas que povoaram minhas ideias para a escolha do tema devem povoar as ideias de muitas outras pessoas também: devo procurar algo numa área que já conheço e/ou trabalho? Procuro algo numa área desconhecida para que eu possa aprender coisas novas?

Momento de indecisão
Momento de indecisão =)

Diante dessa indecisão qual foi minha escolha? Optei pela segunda alternativa, elaborar o trabalho focado em uma área em que eu não tenho grandes conhecimentos mas que certamente vai me permitir um grande aprendizado.

E o tema que escolhemos (sim, é em dupla) para o TCC foi: "usabilidade em sistemas com reconhecimento de fala".

Confesso que o tema "usabilidade" já faz parte do meu conjunto de áreas de interesse mas, aplicado a sistemas com reconhecimento de fala é uma área totalmente nova para mim.

E qual a consequência de escolher uma tema assim "desconhecido"? Simples! Estou lendo muitas, mas muitas mesmo, coisas sobre o assunto ultimamente. Entre as várias coisas que li ou estou lendo, está o livro "Voice User Interface Design". Esse livro é muito bem escrito e está sendo meu "norte" na pesquisa.

Por fim, vou passar a escrever aqui no blog ideias relativas ao TCC, inclusive detalhar os objetivos da pesquisa, até para obter uma melhor fixação e reflexão sobre o assunto. Mas claro, não vou deixar de falar sobre desenvolvimento web em geral. :D

comentários (7)

Textos mais recentes »