O que é ASR?
O reconhecimento automático de fala (ASR, na sigla em inglês) é a tecnologia que converte a linguagem falada em texto escrito. Um sistema de ASR recebe um sinal de áudio, analisa os sons que ele contém e prevê a sequência de palavras mais provável. É ele que está por trás dos softwares de transcrição, dos assistentes de voz, das legendas ao vivo, das ferramentas de ditado e da busca por voz.
ASR é a sigla de automatic speech recognition, e alguns fornecedores a expandem como automated speech recognition; as duas formas significam a mesma coisa. Se você quer a versão de dois minutos, leia nossa visão geral do ASR. Este guia vai mais fundo, do motor aos 70 anos de pesquisa por trás dele.
O termo costuma ser confundido com três vizinhos, e cada um responde a uma pergunta diferente:
- ASR (reconhecimento automático de fala) converte o áudio da fala em texto e responde à pergunta "o que foi dito?"
- Conversão de fala em texto é a mesma tecnologia com seu nome de produto; também responde "o que foi dito?"
- Reconhecimento de voz (reconhecimento de locutor) identifica ou confirma quem está falando e responde "quem disse isso?"
- PLN (processamento de linguagem natural) interpreta o significado do texto e responde "o que isso quer dizer?"
Na prática, ASR e conversão de fala em texto são sinônimos: ASR é o termo de engenharia, e fala em texto é o nome comercial. O reconhecimento de voz é a confusão mais comum. Ele reconhece um locutor, como o celular que só desbloqueia para o dono, enquanto o ASR transcreve as palavras de qualquer pessoa sem se importar com quem as disse. O PLN vem depois: primeiro o áudio vira texto, e então o PLN o resume, responde a uma pergunta sobre ele ou age a partir dele.
Como o ASR funciona?
O ASR moderno é uma única rede neural que leva o áudio direto ao texto, mas durante quase toda a sua história ele foi uma cadeia de cinco modelos separados.
A cadeia clássica, que a história abaixo monta peça por peça, funciona assim:
- Captura e pré-processamento. O áudio é digitalizado, limpo e dividido em quadros curtos, normalmente de algumas dezenas de milissegundos.
- Extração de características. Cada quadro vira uma descrição numérica compacta da sua energia em diferentes frequências.
- Modelo acústico. Esse modelo relaciona essas características aos fonemas, as unidades sonoras básicas de um idioma, e estima quais sons provavelmente foram produzidos.
- Modelo de linguagem. Esse modelo sabe quais sequências de palavras são prováveis. É por isso que um motor escreve "conserto do carro" e não "concerto do carro": as duas cabem no áudio, mas só uma faz sentido na língua.
- Decodificador. O decodificador percorre as probabilidades combinadas dos modelos acústico e de linguagem e entrega a frase mais provável.
A virada para o ponta a ponta
Desde meados da década de 2010, modelos de aprendizado profundo ponta a ponta, hoje quase todos baseados na arquitetura Transformer, aprendem diretamente a passar do áudio bruto ao texto, treinados com centenas de milhares de horas de fala. Não há dicionário de pronúncia montado à mão nem modelo acústico separado; a rede aprende tudo de uma vez. Essa mudança é o principal motivo de a precisão da transcrição ter melhorado mais nos anos 2010 do que nas quatro décadas anteriores.
Como aprendem com áudio em escala enorme, esses modelos lidam com sotaques, ruído de fundo e conversa natural muito melhor do que os sistemas em cadeia, e preveem pontuação e letras maiúsculas na mesma passada. Por isso, uma transcrição moderna já se lê como um documento.
Como a precisão do ASR é medida
A métrica padrão é a taxa de erro de palavras (WER): a transcrição da máquina é comparada a uma transcrição humana cuidadosa, e cada palavra trocada, omitida ou inserida conta como erro. Uma WER de 5% significa cerca de um erro a cada 20 palavras, ou 95% de precisão. A WER depende inteiramente do áudio de teste, e é por isso que os números de precisão de dois fornecedores raramente são comparáveis; nosso guia explica a fórmula e traz uma calculadora.
Reconhecimento de fala em resumo
- Invenção
- O reconhecimento de fala foi inventado em 1952, quando o sistema Audrey, da Bell Labs, reconheceu os dígitos de 0 a 9 ditos por uma única voz.
- Primeiro software comercial
- O Dragon Dictate, lançado em 1990 por cerca de US$ 9.000, foi o primeiro produto de reconhecimento de fala vendido ao público, e exigia uma pausa depois de cada palavra.
- Primeiras 1.000 palavras
- Em 1976, o Harpy, da Carnegie Mellon, entendia 1.011 palavras, a meta que a DARPA havia fixado para os cinco anos do seu programa Speech Understanding Research.
- Paridade humana
- Em 2017, a Microsoft mediu uma taxa de erro de palavras de 5,1% no benchmark telefônico Switchboard, igualando os transcritores profissionais que trabalharam nas mesmas ligações.
- Modelos abertos
- O Whisper, da OpenAI, lançado em setembro de 2022, foi treinado com 680.000 horas de áudio e transcreve quase 100 idiomas, com os pesos publicados.
- Hoje
- O Sonix, fundado em 2017, transcreve 54+ idiomas com 99% de precisão e devolve uma gravação de uma hora em cerca de 5 a 6 minutos.
A história do reconhecimento de fala começa na Bell Labs, em 1952
O primeiro reconhecedor de fala foi construído na Bell Labs em 1952 e entendia exatamente dez palavras: os dígitos de zero a nove.
Audrey, o reconhecedor automático de dígitos
K. H. Davis, R. Biddulph e S. Balashek construíram a Audrey com circuitos analógicos que ocupavam um rack de relés de quase dois metros. Uma pessoa dizia um dígito ao fone de um telefone, a máquina media os formantes das vogais e uma lâmpada acendia ao lado do dígito ouvido. Ajustada às vozes dos próprios projetistas, acertava de 97 a 99 por cento; com estranhos, desmoronava. A Audrey nunca saiu do laboratório, porque um operador humano discando números saía mais barato, mas encerrou a dúvida sobre se uma máquina era sequer capaz de ouvir.
O Shoebox da IBM e os anos 1960
Em 1962, a IBM apresentou o Shoebox na Feira Mundial de Seattle. Ele reconhecia 16 palavras faladas, os dez dígitos e seis comandos aritméticos, e com elas operava uma máquina de somar. Laboratórios nos Estados Unidos, no Reino Unido, no Japão e na União Soviética construíram reconhecedores de vogais e de pequenas listas de palavras, e em 1968 Taras Vintsyuk descreveu o alinhamento temporal dinâmico (dynamic time warping), que permitia a uma máquina comparar falas ditas em velocidades diferentes. Em 1969, a área tinha ambição mas nenhuma teoria, e John Pierce, da Bell Labs, a comparou a projetos para transformar água em gasolina.
O programa Speech Understanding Research da DARPA levou os vocabulários além de 1.000 palavras
Entre 1971 e 1976, a DARPA financiou o maior esforço de reconhecimento de fala até então, e o Harpy, da Carnegie Mellon, alcançou a meta de 1.000 palavras.
A meta de cinco anos
O programa Speech Understanding Research pedia um sistema capaz de entender fala contínua de vários locutores, com um vocabulário de 1.000 palavras e menos de 10 por cento de erro, e financiou a Carnegie Mellon, a BBN, o SRI e outros para competir. O Harpy, concluído na Carnegie Mellon em 1976, entendia 1.011 palavras, mais ou menos o vocabulário de uma criança de três anos, e foi o único sistema a atingir a meta. O segredo era uma busca que descartava cedo as sequências de palavras improváveis em vez de pesar todas as possibilidades, uma ideia que continua no centro de todo decodificador.
A virada estatística
Os mesmos anos produziram a ideia que venceu todas as outras pelos 40 anos seguintes. Na Carnegie Mellon, a tese de James Baker, de 1975, descrevia o sistema DRAGON, que tratava a fala como um modelo oculto de Markov e deixava que as probabilidades, e não regras escritas à mão, decidissem quais palavras haviam sido ditas. Na IBM, o grupo de Fred Jelinek incorporou a mesma abordagem a um sistema de ditado experimental e acrescentou modelos de linguagem n-gram, para que o reconhecedor pudesse adivinhar a próxima palavra a partir das duas anteriores. A Bell Labs, enquanto isso, passou de uma voz para muitas e construiu reconhecedores que funcionavam com vários locutores, exigência das aplicações telefônicas.
Os modelos ocultos de Markov tornaram o reconhecimento de fala estatístico nos anos 1980
Os anos 1980 trocaram a comparação de padrões pela probabilidade, e os vocabulários passaram de algumas centenas de palavras para 20.000 em uma década.
Como um modelo oculto de Markov ouve
Um modelo oculto de Markov não tenta encaixar um som em um molde. Ele pergunta qual sequência de sons da fala mais provavelmente produziu o áudio recebido e, depois, qual sequência de palavras mais provavelmente produziu esses sons. O treinamento com fala gravada define as probabilidades, então mais dados significam um reconhecedor melhor, uma propriedade que passaria a importar enormemente quando a internet chegasse. Combinado com modelos de linguagem n-gram, o HMM virou a arquitetura padrão de todo laboratório de pesquisa e ali ficou até o aprendizado profundo o destronar em 2012.
Tangora, Sphinx e os primeiros produtos
O Tangora, da IBM, reconhecia um vocabulário de 20.000 palavras em meados dos anos 1980, embora exigisse pausa entre as palavras e treinamento para cada locutor. Em 1988, o sistema Sphinx, de Kai-Fu Lee, na Carnegie Mellon, foi o primeiro a reunir vocabulário grande, fala contínua e independência de locutor em um só reconhecedor. A Dragon Systems, fundada por James e Janet Baker em 1982, começou a vender software de reconhecimento para computadores pessoais. O reconhecimento de voz também chegou ao consumidor pela primeira vez: a boneca Julie, da Worlds of Wonder, respondia a um punhado de frases faladas em 1987, e as companhias telefônicas testaram a discagem por voz. Os brinquedos eram toscos, mas levaram a expressão "reconhecimento de voz" para dentro das casas comuns.
Os anos 1990 levaram o reconhecimento de fala aos computadores pessoais
Processadores mais rápidos transformaram o ditado de demonstração de laboratório em software de prateleira, e um benchmark compartilhado tornou o progresso fácil de medir.
Do Dragon Dictate ao NaturallySpeaking
O Dragon Dictate chegou às lojas em 1990 por cerca de US$ 9.000. Foi o primeiro produto de reconhecimento de fala que uma pessoa comum podia comprar, e exigia uma pausa depois de cada palavra. Em 1997, o Dragon NaturallySpeaking eliminou a pausa: reconhecia fala contínua a cerca de 100 palavras por minuto em um PC doméstico, e a IBM respondeu com o ViaVoice no mesmo ano. Pela primeira vez um advogado, um médico ou um escritor podia falar com o computador e obter um texto utilizável, desde que treinasse o programa e corrigisse o resultado.
Atendimento eletrônico e os primeiros benchmarks
Em 1996, a BellSouth lançou o VAL, um portal de voz por discagem que respondia a perguntas faladas, e todo atendimento eletrônico com o qual você já brigou desde então descende dele. Nos bastidores, a DARPA e o NIST, o instituto de padrões dos Estados Unidos, conduziam avaliações anuais com gravações compartilhadas, como o corpus telefônico Switchboard, e a taxa de erro de palavras virou o número que todo laboratório reportava. Daí em diante, a história do reconhecimento de fala é, em grande parte, a história desse número caindo.
Os anos 2000 levaram o reconhecimento de fala para a nuvem
A precisão ficou estagnada perto de 80 por cento durante a maior parte da década, até o Google tirar o reconhecimento do aparelho e levá-lo para seus servidores.
O platô
Em 2001, os melhores sistemas transcreviam fala ditada com cerca de 80 por cento de precisão, e os anos seguintes trouxeram refinamentos, não saltos. O ditado no desktop continuou um nicho, o atendimento eletrônico continuou irritante e o financiamento de pesquisa minguou. O modelo oculto de Markov estava perto do teto, e os modelos que o substituiriam ainda não tinham o poder computacional nem os dados de que precisavam.
Google Voice Search
O serviço de informações telefônicas GOOG-411, do Google, lançado em 2007, reuniu milhões de consultas faladas. Em novembro de 2008, o Google Voice Search chegou como aplicativo para iPhone, e o reconhecimento mudou de forma: o celular só gravava, e o reconhecimento rodava nos data centers do Google, em modelos muito maiores do que qualquer aparelho comportaria, treinados com 230 bilhões de palavras de consultas de busca. O reconhecimento deixou de ser um programa e virou um serviço, a forma que tem até hoje.
