Reconhecimento de fala¶
O Reconhecimento Automático de Fala (Automatic Speech Recognition - ASR) é uma tecnologia que permite a uma máquina transformar em texto o que uma pessoa está falando. Um sistema de ASR é normalmente constituído pelos seguintes elementos principais (Fig. 1):
- Motor de reconhecimento
- Software que implementa algoritmos específicos para executar todas as fases do reconhecimento de fala. Ele é responsável pelo processamento do áudio antes que ele seja reconhecido. Técnicas de remoção de ruído, detecção de início e fim de fala, e extração de features geralmente estão presentes nesse bloco do sistema.
- Modelo acústico
- Conjunto de dados que representa matematicamente os sons que formam as palavras do idioma (denominados fones). Modelos acústicos são criados a partir de grandes bases de fala, gravadas com vários locutores.
- Modelo da língua
- Conjunto de dados que define como as palavras podem ser combinadas para formar as frases do idioma. O modelo da língua pode ser constituído por uma gramática composta por regras escritas por uma pessoa, ou por um modelo estatístico gerado a partir de uma grande quantidade de texto e aplicado no reconhecimento de fala espontânea.
A dinâmica geral do reconhecimento de fala é representada em Fig. 2. O reconhecimento de fala inicia com o usuário falando uma frase ao sistema. A frase corresponde a um sinal de áudio. O sinal de áudio é processado pelo motor de reconhecimento que realiza a detecção do segmento de fala (destacado na figura). O segmento de fala é então reconhecido e a frase correspondente é retornada pelo sistema.
Quando o reconhecimento tem como fonte um streaming de áudio, este áudio é geralmente enviado em blocos curtos e o reconhecimento é executado à medida que esses blocos são recebidos.
Algumas informações importantes são retornadas pelo sistema:
- Texto reconhecido
- O reconhecimento de fala retorna a frase mais provável encontrada a partir do segmento de fala recebido. Além da frase mais provável, o sistema pode retornar também a lista das N frases mais prováveis (n-best list).
- Índice de confiança
- O índice de confiança é um valor numérico que ajuda a avaliar a certeza no resultado obtido. No CPqD ASR, ele é um valor inteiro que varia de 0 (menor confiança) a 100 (maior confiança). Há atualmente três tipos disponíveis: confiança do texto, confiança semântica e confiança por palavra.
- Interpretação semântica
- A interpretação semântica permite associar uma variedade de frases reconhecidas a um significado único (Fig. 3), facilitando a integração entre a aplicação e o sistema de reconhecimento de fala, pois ao invés de usar diretamente o texto retornado, a aplicação pode usar um valor padronizado. A interpretação pode ser um valor textual simples ou um valor estruturado (ex. JSON).