Skip to content
anecho.ai

A supressão de ruído realmente ajuda o speech-to-text? Nós medimos.

A Krisp divulga uma redução de 46% na WER. Rodamos dez engines de aprimoramento em dezoito condições contra um controle bruto. Nenhuma venceu não fazer nada na taxa de erro de palavras agregada, embora pelo menos uma engine tenha vencido o bruto em 11 das 18 condições individuais — e as inserções subiram, em vez de descer.

Anecho Engineering18 de nov. de 202512 min de leitura
speech-to-textnoise-suppressionbenchmarkswer

Atualizado em 14 de agosto de 2026. A versão original deste post argumentava que a área era sub-medida e descrevia o harness que estávamos construindo. O harness desde então rodou duas vezes: o exemplo ilustrativo que ficava no meio foi substituído por números reais, e esses números agora foram regenerados em dezoito condições, em vez de treze. Os valores absolutos se moveram, a ordenação não, e cada número aqui é citado do benchmark.json publicado.

Dois fornecedores comercializam aprimoramento de fala (speech enhancement) como uma forma de cortar as taxas de erro de speech-to-text aproximadamente pela metade. Um grande provedor de STT diz aos seus clientes para desligá-lo. Se você está colocando um agente de voz em produção, um desses campos está te custando acurácia ou dinheiro, e, quando escrevemos isto pela primeira vez, ninguém tinha publicado a evidência que resolve a questão.

Então construímos o harness e o rodamos. A resposta curta, nos nossos dados: nenhuma engine de aprimoramento que testamos venceu o áudio bruto na taxa de erro de palavras (WER) agregada, os erros que ela adicionou foram majoritariamente o reconhecedor inventando palavras que nunca foram ditas, e existe uma faixa substancial de condições em que a alegação dos fornecedores se sustenta de forma limpa — 11 das nossas 18 tiveram uma engine que venceu o bruto. As três coisas merecem mais do que uma manchete, e a terceira é a que some quando este post é citado.

As alegações que não podem ser todas verdadeiras

FonteAlegação como publicadaComo lemos o que ela mede
Krispredução de aproximadamente 46% na WER com o seu cancelamento de ruídoavaliação conduzida pelo fornecedor; condições, corpus e engine de STT não reproduzíveis de forma independente
ai-cousticsredução de aproximadamente 43% na WERmesmo formato de alegação, outra família de modelo e outro corpus
Chondhekar et al., arXiv:2512.17562"Original noisy audio achieves lower semWER than enhanced audio in all 40 tested configurations", com degradações de 1.1%–46.6% absolutostrabalho acadêmico independente — mas note o escopo: somente MetricGAN+, um modelo de pesquisa de 2021, não-streaming, em fala médica, pontuado em WER semântica. Não é um aprimorador de produção em tempo real.
AssemblyAIcitou o estudo acima e, separadamente, relatou que o cancelamento de ruído da Krisp cortou os disparos falsos de detecção de atividade de voz (VAD) em ~3.5x, enquanto aproximadamente dobrava a WER quando a saída dele era alimentada no STTum fornecedor de STT avaliando aprimoramento como etapa de pré-processamento na frente dos próprios modelos
Deepgrampublicou a posição de que o aprimoramento prejudica a acurácia do STTuma posição declarada; não encontramos dados que a acompanhem

Leia essas linhas com cuidado e o desacordo é menor do que parece. Ninguém está rodando o mesmo corpus, as mesmas condições acústicas, a mesma configuração de aprimoramento ou o mesmo reconhecedor. Não há controle compartilhado. Cada número naquela tabela é defensável dentro do seu próprio experimento e inútil para comparar entre eles.

Isso não é um escândalo. É a cara que uma área tem antes de ter um benchmark.

Cinco variáveis ocultas que invertem o sinal

Cada uma delas é suficiente, sozinha, para transformar uma melhora de 40% em uma regressão de 40%.

1. O objetivo do aprimoramento não é o objetivo do STT. Modelos de supressão são treinados contra alvos de nível de sinal ou perceptuais: SI-SDR, PESQ, STOI. Esses alvos recompensam uma forma de onda próxima de uma referência limpa e agradável ao ouvido humano. Nenhum deles recompensa preservar as pistas específicas que um modelo acústico usa para discriminar fonemas. Um modelo pode melhorar o PESQ em meio ponto enquanto borra exatamente a energia de fricativa que separa "six" de "fix". A função de perda nunca foi consultada sobre isso.

2. O reconhecedor é uma variável oculta. Modelos modernos de STT são treinados com quantidades enormes de áudio do mundo real, boa parte dele ruidoso. Ruído está dentro da distribuição para eles. Os artefatos de um supressor neural — buracos espectrais, ruído musical, borrão de transientes, um piso de ruído anormalmente silencioso entre as palavras — não estão. Um reconhecedor treinado em áudio real e bagunçado pode ser mais robusto ao ruído original do que à limpeza.

3. A condição é uma variável oculta. Em áudio já limpo, o aprimoramento só pode remover informação; o melhor desfecho possível é um empate. O caso a favor do aprimoramento vive em SNR baixo, onde o ruído está genuinamente destruindo pistas fonéticas. Um benchmark com peso em gravações limpas vai concluir que o aprimoramento é nocivo; um com peso em burburinho de café a 0 dB vai concluir que ele é essencial. Os dois estão "medindo WER".

4. Processamento duplo. Quando o áudio chega ao seu agente, ele muitas vezes já passou por um supressor de ruído do aparelho, um codec e um cancelador no nível da plataforma. Adicionar outro supressor por cima não é um passe de aprimoramento, é uma cascata que ninguém caracterizou. Isso é especialmente verdadeiro em caminhos de telefonia, cobertos em 8 kHz é onde a IA de voz realmente quebra.

5. Agregação. A WER de um corpus é dominada pelos seus arquivos mais difíceis. Um único escalar, tirado como média entre condições, pode ficar estável enquanto esconde uma vitória grande em uma condição e uma derrota igualmente grande em outra.

A WER agregada esconde o mecanismo

A WER é (S + D + I) / N — substituições mais deleções mais inserções, sobre os tokens de referência. É um número carregando três mecanismos de falha diferentes, e para um agente de voz esses mecanismos não são igualmente ruins.

A supressão agressiva demais tem uma assinatura característica. Ela tende a deletar em vez de substituir, e o que ela deleta primeiro são palavras funcionais curtas e átonas — "a", "the", "of", "to", "not" — porque carregam pouca energia e duração curta, e porque decisões de gating construídas em torno de uma probabilidade de presença de fala as tratam como ruído.

O ruído não tratado tem outra assinatura: substituições onde um fonema é mascarado, e inserções onde fala de fundo ou ruído transiente é decodificado como palavras. Modelos baseados em atenção são particularmente dispostos a alucinar texto fluente a partir de burburinho.

Então dois sistemas podem registrar WER idêntica e estar em apuros completamente diferentes. Um pipeline cujos erros são inserções de conversa de fundo é irritante, mas em geral sobrevivível, porque um LLM mais adiante descarta o fragmento incoerente. Um pipeline cujos erros são deleções de palavras funcionais é perigoso, porque derrubar o "not" de "I do not want to renew" produz uma frase fluente, confiante e invertida, sobre a qual o LLM vai agir. É por isso que registramos inserções, deleções e substituições separadamente em cada célula, e é por isso que uma alegação só de WER — de quem quer que seja, inclusive nossa — não é informação suficiente para agir.

O que medimos

Procedência primeiro, porque esses números valem exatamente o que vale o método. Um único reconhecedor, faster-whisper base.en (CTranslate2 int8 CPU, greedy), Silero VAD, 10 locutores / 180 clipes / aproximadamente 1406 segundos de áudio, cerca de 190 palavras de referência por condição e 3420 no total, 18 condições acústicas, 12 backends, Apple M1 Max, onnxruntime 1.28.0 fixado em uma única thread intra-op. Agregado pelas 18 condições:

BackendWERInserçõesDeleçõesRTFLatência
Bruto (sem processamento)14.77%10160—0 ms
ai-coustics Quail L15.56%126570.12430 ms
ai-coustics Quail VF 2.2 L18.10%161750.07630 ms
GTCRN (MIT)20.26%210400.05016 ms
FastEnhancer-L (MIT)20.44%1591070.37625.8 ms
FastEnhancer-M (MIT)22.40%217830.11022 ms
FastEnhancer-T (MIT)22.46%1451090.01316 ms
DeepFilterNet335.18%3801970.133100 ms

Nenhum aprimorador venceu o bruto na WER agregada. O melhor resultado que qualquer engine registrou foi o ai-coustics Quail L a 15.6% contra os 14.8% do bruto — ainda pior, por oito décimos de ponto, o que neste tamanho de amostra é um empate. Todo o resto foi pior por cinco pontos ou mais, e esses não são empates.

As inserções subiram, não desceram. O bruto produziu 101. O GTCRN produziu 210. O DeepFilterNet3 produziu 380. Vale se demorar nisso, porque é o oposto preciso da alegação de marketing. Uma inserção não é uma palavra mutilada; é o reconhecedor emitindo uma palavra que ninguém disse. A história da indústria é que o aprimoramento remove o ruído que causa texto alucinado. Nos nossos dados, o aprimoramento produziu texto alucinado — aproximadamente o dobro para o GTCRN, perto de quatro vezes para o DFN3, contra um controle sem processamento. A nossa leitura é que o resíduo do supressor, o ruído musical e os silêncios abruptos do gating, é mais decodificável-como-fala do que o ruído que ele removeu.

Note a linha do GTCRN em particular: 210 inserções, mas só 40 deleções, contra 101 e 60 do bruto. Ele não está deletando as suas palavras funcionais. Está adicionando palavras. Esses são modos de falha opostos, e um número único de WER esconde qual deles você comprou.

Onde a alegação dos fornecedores se sustenta

Estaríamos fazendo exatamente o que acusamos os fornecedores de fazer se parássemos no número agregado. Em 11 das nossas 18 condições, pelo menos uma engine venceu o bruto. As margens são reais e consideráveis, e caem onde você preveria: onde ruído ou uma voz concorrente está genuinamente destruindo pistas fonéticas, e não onde o reconhecedor estava se virando bem sozinho.

O caso mais claro é o isolamento de locutor (speaker isolation). O ai-coustics Quail VF é um modelo Voice Focus — o trabalho dele é isolar o locutor primário e rejeitar as outras vozes. Em locutor concorrente a 5 dB, ele cortou as inserções de 19 para 10 e a WER de 26.3% para 20.5%. Em burburinho a 5 dB, cortou a WER de 24.7% para 20.5%, com as inserções caindo de 10 para 7. Esses são os resultados mais fortes que qualquer aprimorador registrou na nossa matriz, e eles vindicam um uso estreito e bem direcionado. Se o seu modo de falha é uma segunda voz humana na sala, um modelo Voice Focus é a ferramenta certa, e os nossos dados dizem isso.

Ruído de banda larga em SNR baixo mostra o mesmo formato: a 0 dB, oito das dez engines venceram o bruto, a melhor por 4.7 pontos. O padrão geral, e a única frase a levar deste post: o aprimoramento paga onde o áudio está genuinamente ruim e te custa onde não está.

As sete condições sem vencedor são a imagem espelhada, e igualmente legíveis: as duas reverberantes, onde toda engine piorou as coisas, e as cinco condições de operadora de telefonia, onde em quatro de cinco o melhor que uma engine atinge é um empate exato com não fazer nada.

O que nada disso vindica é a alegação geral. O Quail VF, agregado pelas dezoito condições, fica em 18.1%, mais de três pontos pior do que não fazer nada, porque ele também roda em áudio limpo, reverberante e de banda estreita, onde só pode remover informação. Um modelo que vence as suas condições de projeto por cinco ou seis pontos e perde o resto não é um default de pré-processamento. É uma decisão de roteamento, que é o argumento inteiro de O pipeline dividido.

Ressalvas, por inteiro

Estas pertencem anexadas a cada número acima.

  • Um único reconhecedor. faster-whisper base.en. Um reconhecedor diferente dá números absolutos diferentes. O harness suporta Deepgram e AssemblyAI, então a ordenação pode ser rechecada em outra engine, e gostaríamos que alguém fizesse isso.
  • Cerca de 190 palavras de referência por condição, 3420 agregadas. O suficiente para separar efeitos grandes, não o suficiente para resolver um ou dois pontos de WER: uma palavra vale aproximadamente 0.5 ponto por condição, 0.03 no agregado. Trate a diferença entre o bruto e o Quail L como um empate; as diferenças de cinco a vinte pontos abaixo dela não são empates.
  • O DeepFilterNet3 é medido através de um adaptador block-online, porque nenhum export ONNX público carrega os tensores de estado recorrente, tornando streaming por frame impossível com os pesos publicados. Os 35.2% dele são um limite inferior de qualidade e um limite superior de custo, não uma leitura justa do modelo. Não cite esse número sem esta frase.
  • As linhas da ai-coustics são uma baseline proprietária rodada através do SDK licenciado. Um ponto de referência, nunca um caminho de código que nós colocamos em produção.
  • Licenciamento. O ruído do ESC-50 é CC-BY-NC-3.0, então essas condições são somente para avaliação. O LibriSpeech é CC-BY-4.0, e as condições de burburinho e de locutor concorrente são construídas apenas a partir do LibriSpeech, então não carregam restrição NC.
  • onnxruntime fixado em uma única thread intra-op. A coluna de RTF é um stream em um núcleo, não uma distribuição pela máquina inteira.

O que ainda não sabemos

  • Se algum fornecedor de STT treina com áudio aprimorado. Se um reconhecedor viu artefatos de supressor no treinamento, a sensibilidade dele a esses artefatos é completamente diferente, e nenhum de nós consegue ver dentro desses conjuntos de treinamento.
  • Como foram configurados os modelos de aprimoramento das alegações publicadas pelos fornecedores. A agressividade geralmente é ajustável, e o mesmo modelo em duas configurações pode cair em lados opostos do zero.
  • Quanto disso transfere para STT de streaming. O nosso aprimoramento é alimentado bloco a bloco, com estado carregado entre blocos, mas o reconhecedor é pontuado em enunciados completos. Estabilidade dos parciais e latência-até-final são uma medição separada.
  • Se isso se mantém fora do inglês, ou em um corpus maior. Não necessariamente. O manifesto e o harness são públicos para que isso seja uma pergunta que alguém possa responder, em vez de debater.

O que fazemos com o resultado

Duas coisas se seguem, e nenhuma delas é "aprimoramento é inútil".

A primeira é arquitetural. A mesma rodada mediu VAD, e ali o quadro se inverte: o aprimoramento mal move o F1 do VAD, mas corta substancialmente a taxa de alarmes falsos exatamente nas condições que causam barge-ins espúrios. Essa é uma razão real e medida para enviar áudio aprimorado ao seu detector de turnos e áudio bruto ao seu reconhecedor, que é o que o nosso SDK faz por padrão — os números e o raciocínio estão em O pipeline dividido.

A segunda é para onde o nosso produto foi. Nas condições de banda estreita, nenhum aprimorador produziu melhora significativa e vários degradaram feio — o FastEnhancer-T em 6.8 pontos e o DeepFilterNet3 em 9.5 — e é lá que está o volume de chamadas. Isso é o Clearline, e é a coisa que vendemos. Duas notas de honestidade anexadas: as nossas condições de telefonia são uma ida e volta G.711 sobre fala limpa, sem eco, perda de pacotes ou acústica de aparelho, e nenhuma engine nativamente de 8 kHz foi colocada no benchmark ainda, incluindo a nossa. Portanto este é um resultado negativo sobre o campo existente, não um resultado positivo sobre nós. O benchmark não é o produto — um benchmark não tem comprador nem retenção. Ele é como sabemos o que construir e como você confere se estamos mentindo.

Cada célula, incluindo as que perdemos, está em /benchmark. O harness, o manifesto do dataset e as configurações estão em github.com/anecho, e o método está descrito em O que lançamos: um benchmark aberto para aprimoramento de fala. Se você quer uma condição, uma engine ou um reconhecedor adicionados, abra uma issue.

A seguir
  • 24 de out. de 2026

    Alternativas à ai-coustics para agentes de voz e call centers (2026)

    Por que equipes olham além do ai-coustics Quail Voice Focus, e uma lista curta com fontes conforme listado em outubro de 2026: Krisp VIVA, AssemblyAI Voice Focus, isolamento de voz do LiveKit Cloud, NVIDIA Speaker Focus, Anecho e referências de código aberto. Comparamos a ai-coustics com o nosso próprio modelo em conversas ao vivo: empate com o faster-whisper, vantagem do v8_2 com o Gemini Live, menos barge-ins falsos para a ai-coustics, e a condição decide quem lidera.

  • 22 de out. de 2026

    Alternativas à Krisp para agentes de voz e call centers (2026)

    Por que equipes olham além do Krisp VIVA, e uma lista curta com fontes conforme listado em outubro de 2026: ai-coustics Quail Voice Focus, AssemblyAI Voice Focus, isolamento de voz do LiveKit Cloud, NVIDIA Speaker Focus, Anecho e referências de código aberto, com onde cada um roda, seu preço público e se o medimos. Não medimos a Krisp.

  • 20 de out. de 2026

    SDKs de isolamento de locutor comparados (2026): Krisp, ai-coustics, AssemblyAI, LiveKit e Anecho

    Uma comparação com fontes do isolamento de locutor para agentes de voz e call centers conforme listado em outubro de 2026: onde cada produto roda, latência declarada, taxas de amostragem, integração, preço público e licenciamento. Krisp VIVA e Anecho declaram 15 ms em CPU; a ai-coustics lista menos de 30 ms; AssemblyAI e LiveKit vendem isolamento dentro de um serviço em nuvem. Números de qualidade apenas do nosso próprio benchmark.