Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Importante
Traduções não em inglês são fornecidas apenas para conveniência. Consulte a versão EN-US
deste documento para saber a versão de associação.
Nesta seção, examinaremos o que significa desempenho para o Reconhecimento do Locutor, as práticas recomendadas para melhorar o desempenho, as limitações e a imparcialidade no que diz respeito ao recurso reconhecimento do locutor.
Diretrizes gerais de desempenho
Como o Reconhecimento do Locutor atende a vários usos, não há uma estimativa universal de precisão aplicável para cada sistema. Em alguns casos, como a transcrição da reunião, o Reconhecimento do Locutor é um bloco de construção que você pode combinar com outros componentes para criar uma solução de ponta a ponta. O desempenho do Reconhecimento do Locutor é, portanto, afetado por esses outros componentes.
Exatidão
A precisão da verificação do locutor e da identificação do locutor pode ser medida pela FRR (Taxa de Rejeição Falsa) e pela Taxa de Aceitação Falsa (FAR). Os desenvolvedores devem equilibrar a compensação entre as taxas de FRR e FAR em cada cenário específico.
Vamos usar a verificação de locutor independente de texto como exemplo. A tabela a seguir mostra os possíveis resultados em que dois indivíduos solicitam acesso a um prédio ou sistema que usa o Reconhecimento do Locutor. Esses dois indivíduos são o Orador A que está registrado, e um impostor que alega ser o Orador A. O Reconhecimento do Locutor testa o áudio da entrada de fala na assinatura de voz salva do Locutor A.
Resultado | Detalhes |
---|---|
Aceitação correta ou verdadeiro positivo | O sistema aceita corretamente uma tentativa de acesso pelo Locutor A. |
Rejeição correta ou verdadeiro negativo | O sistema rejeita corretamente uma tentativa de acesso do impostor. |
Falso aceitação ou falso positivo | O sistema aceita incorretamente uma tentativa de acesso pelo impostor. |
Falsa rejeição ou falso negativo | O sistema rejeita incorretamente uma tentativa de acesso do Locutor A. |
A medida da API de Identificação do Locutor é semelhante, exceto que uma entrada de fala é testada em relação a um dos vários alto-falantes conhecidos.
As consequências de um falso positivo ou falso negativo variarão dependendo do uso pretendido do sistema de reconhecimento do locutor. Os exemplos a seguir ilustram essa variação e como as escolhas que você faz ao projetar o sistema afetam as pessoas que estão sujeitas a ela. O design de todo o sistema, incluindo mecanismos de fallback, determina as consequências para as pessoas quando ocorrem erros.
Entrando em um aplicativo bancário: O Reconhecimento do Locutor pode fornecer uma camada adicional de segurança além de um PIN. Um falso positivo para esse aplicativo compromete a segurança do cliente porque resulta em uma confirmação incorreta, enquanto um falso negativo pode impedir que o cliente acesse sua conta. Como a finalidade do sistema bancário é a segurança, os proprietários do sistema provavelmente vão querer garantir que falsos positivos sejam minimizados exigindo limites de nível de confiança mais altos. No entanto, isso também pode resultar na maioria dos erros que estão sendo cometidos como falsos negativos (o acesso à conta falha). Para resolver essa limitação, os proprietários do sistema devem fornecer um mecanismo alternativo para permitir que seus usuários acessem seu aplicativo, por exemplo, oferecendo entrada alternativa por meio de uma notificação de código de acesso para o telefone do cliente. A experiência do cliente pode ser menos conveniente nesse caso, mas o acesso à conta não é bloqueado enquanto a segurança ainda é priorizada.
Recebendo conteúdo personalizado em um dispositivo inteligente: Dispositivos pessoais podem usar o Reconhecimento do Locutor para responder ao comando de voz do proprietário do dispositivo para conteúdo personalizado. Um falso positivo aumenta a ativação desnecessária, enquanto um falso negativo pode resultar em nenhuma resposta ao comando do usuário. Aqui, se a finalidade do sistema for conveniência e eficiência e não segurança, alguns falsos positivos poderão ser aceitáveis para o provedor do sistema. Nesse caso, os falsos negativos geralmente são minimizados, enquanto a maioria dos erros será resultado de falsos positivos. A realização de vários registros da voz do proprietário do dispositivo pode ajudar o Reconhecimento do Locutor a ter um desempenho mais preciso para essa voz ao longo do tempo.
Pontuações de correspondência, limites de correspondência e condições correspondentes
A configuração do sistema influencia a precisão do sistema. Comparando o perfil do locutor pré-registrado e o áudio de entrada, o Reconhecimento do Locutor produz uma pontuação de similaridade para indicar a similaridade do resultado da comparação e usa um limite para decidir se aceita ou rejeita a entrada como correspondente. É importante compreender o equilíbrio entre as taxas de falsos positivos e falsos negativos. A tabela a seguir fornece uma descrição mais detalhada.
Prazo | Definição |
---|---|
Pontuação de correspondência ou pontuação de similaridade | As pontuações de correspondência variam de 0 a 1. As pontuações de correspondência altas indicam que é mais provável que a entrada de fala seja proveniente da mesma pessoa com a assinatura de voz registrada. |
Limite de correspondência | Um limite de correspondência é um valor configurável entre 0 e 1 que determina a pontuação de correspondência necessária para ser considerada uma correspondência positiva. Se o limite de correspondência for definido como 0, o sistema aceitará qualquer pontuação de correspondência e a taxa de aceitação falsa será alta; se o limite de correspondência for definido como 1, ele só aceitará uma entrada de voz com uma pontuação de correspondência de 1 (100%) e a taxa de rejeição falsa será alta. A API de Reconhecimento do Locutor tem um limite de correspondência padrão que você pode alterar para se adequar ao aplicativo. |
Como o limite ideal varia muito com casos de uso ou cenários, a API de Verificação do Locutor decide se aceita ou rejeita com base em um limite padrão de 0,5. O limite é um comprometimento entre os requisitos de aplicativos de alta segurança e aplicativos de alta conveniência. Ajuste o limite para cada cenário e valide os resultados testando com seus dados.
Resultado | Detalhes |
---|---|
Aceitação correta ou verdadeiro positivo | Quando o Locutor A real solicita acesso como Locutor A, o sistema retorna uma pontuação de correspondência de 0,8, que está acima do limite padrão de 0,5. O sistema aceita corretamente a tentativa de acesso. |
Rejeição correta ou verdadeiro negativo | Quando um impostor solicita acesso como Palestrante A, o sistema retorna 0,2, que está abaixo do limite padrão de 0,5. O sistema rejeita corretamente a tentativa de acesso. |
Falso aceitação ou falso positivo | Quando um impostor solicita acesso como Orador A, o sistema retorna 0,6, que está acima do limite de 0,5. O sistema aceita incorretamente a tentativa de acesso. |
Falsa rejeição ou falso negativo | Quando o Palestrante A real solicita acesso como Palestrante A, o sistema retorna 0,4, que está abaixo do limite de 0,5. O sistema rejeita incorretamente a tentativa de acesso. |
Como um limite de correspondência deve ser selecionado?
O limite ideal varia muito de acordo com cenários diferentes. Se a precisão dos resultados não for ideal para um cenário específico, você poderá ajustar o limite padrão e ajustá-lo com base nos resultados do teste em seus próprios dados. Você pode coletar dados reais para avaliar se os exemplos de áudio são rotulados com as identidades corretas do locutor. Esse tipo de conjunto de dados é conhecido como um conjunto de dados de avaliação de verdade básica.
Em seguida, você pode alimentar os dados de avaliação na API de Verificação do Locutor e manter as pontuações de correspondência retornadas. Compare os rótulos de verdade fundamental com a saída do sistema. Com essa avaliação do desempenho do sistema, você pode estabelecer o FRR geral e o FAR no limite de interesse e a distribuição de erros entre falsos positivos e falsos negativos. Os dados de avaliação da verdade básica devem incluir uma amostragem adequada de pessoas diversas que estarão sujeitas ao reconhecimento, para que você possa entender as diferenças de desempenho entre grupos de pessoas e tomar medidas corretivas.
Com os resultados da avaliação, você pode ajustar o limite para se adequar melhor ao cenário. Por exemplo, como o cenário de verificação de identidade do cliente geralmente prefere alta segurança em vez de conveniência, você pode definir o limite maior que o limite padrão para reduzir erros de aceitação falsa. Por outro lado, como o cenário de personalização pode preferir alta conveniência em vez de segurança, você pode definir o limite menor que o padrão para reduzir os erros de rejeição falsa. Com base em cada resultado de avaliação, você pode ajustar de maneira iterativa o limite de correspondência até que a troca entre falsos positivos e falsos negativos atenda aos seus objetivos.
Práticas recomendadas para melhorar a precisão
Aqui estão algumas ações específicas que você pode executar para garantir os melhores resultados do sistema de reconhecimento do locutor.
Planejar variações no assunto e no ambiente
Você pode melhorar a precisão do sistema garantindo que as condições entre o áudio de inscrição e o áudio de reconhecimento sejam correspondentes. Condições de correspondência significa usar o mesmo dispositivo ou microfone, ou ter um ambiente acústico consistente ou um estilo de fala consistente do locutor (por exemplo, um estilo de leitura comparado a um estilo de conversa).
Alcançar condições correspondentes pode ser difícil. Embora o Reconhecimento do Locutor tenha sido treinado com os dados de várias condições acústicas, ainda é melhor dar suporte a vários registros para acomodar condições variadas. As APIs dão suporte a vários registros, para que você possa registrar o locutor ao longo do tempo sob o intervalo de condições em que espera que o sistema seja usado. O Reconhecimento do Locutor pode criar uma assinatura de áudio mais robusta com vários registros.
Para verificação ou identificação independente do texto, a duração da entrada de áudio de cadastro ou reconhecimento também afeta a precisão. O comprimento efetivo da fala mede o comprimento total da fala, excluindo segmentos de silêncio e não fala. Usamos um módulo de detecção de fala para contar a quantidade total utilizável de áudio. Por exemplo, um usuário pode enviar 30 segundos de áudio para registro independente de texto, mas o comprimento efetivo da fala pode ser de apenas 15 segundos. Nos casos em que o conteúdo de fala do registro e do reconhecimento é diferente (sistemas independentes de texto), quanto maior a fala efetiva, melhor o desempenho. Quando o registro ativo é habilitado, o comprimento da frase de ativação no início do registro é incluído na contagem do comprimento total da fala do registro.
Atender às especificações
As seguintes especificações são importantes para estar ciente de:
- Formato de áudio: O sistema atual só dá suporte a WAV codificado em PCM de 16 bits e 16 kHz. Todos os dados na taxa de amostragem de 8 kHz devem ser convertidos para 16 kHz antes de serem enviados para o serviço.
- Número máximo de vozes registradas a serem comparadas: Na API de Identificação do Locutor, a entrada de fala é comparada a uma lista especificada de vozes registradas. Quanto menos candidatos houver para comparar, mais preciso será o resultado. Na API de Identificação do Locutor atual, o limite é de 50 vozes registradas a serem comparadas.
Projetar o sistema para apoiar o julgamento humano
É recomendável usar as funcionalidades de Reconhecimento do Locutor para dar suporte a pessoas que fazem julgamentos precisos e eficientes, em vez de automatizar totalmente um processo. Uma revisão humana significativa é importante para:
- Detectar e resolver casos de identificação incorreta ou outras falhas.
- Dê suporte às pessoas que acreditam que seus resultados estavam incorretos.
Por exemplo, em cenários de call center, um cliente legítimo pode ser rejeitado devido a uma dor de garganta. Nesse caso, um agente humano pode intervir e ajudar o cliente a verificar sua identidade fazendo perguntas de segurança.
Usar vários fatores para autenticação
É sempre recomendável criar autenticação multifator para cenários que exigem alta segurança. O uso de outro fator de segurança pode ajudar a reduzir os ataques de falsificação.
Reduzir o risco de ataques de reprodução (ou falsificação)
O Reconhecimento do Locutor não se destina a determinar se o áudio é de uma pessoa ao vivo falando ou se é uma gravação de áudio de um alto-falante registrado. Para cenários de verificação que exigem alta segurança, além de usar a fala como um fator de autenticação secundário, considere mitigações como a geração de frases aleatórias para o locutor ler em runtime. Isso pode reduzir o risco de ataques ou ataques de reprodução que usam uma voz sintetizada não baseada em parâmetros.
Seu aplicativo pode enviar solicitações separadas para a API de Verificação do Locutor independente de texto e a API de fala em texto. Ao combiná-las, o aplicativo pode ajudar a confirmar a identidade do locutor.
Imparcialidade
Na Microsoft, nos esforçamos para capacitar cada pessoa do planeta a conseguir mais. Uma parte essencial desse objetivo é trabalhar para criar tecnologias e produtos que sejam justos e inclusivos. A imparcialidade é um tópico sociotécnico multidimensional e afeta muitos aspectos diferentes do nosso desenvolvimento de produtos. Você pode aprender mais sobre nossa abordagem para a justiça aqui.
Uma dimensão dessa meta é considerar o desempenho do sistema para diferentes grupos de pessoas. Pesquisas mostraram que, sem esforço consciente focado na melhoria do desempenho de todos os grupos, muitas vezes é possível que o desempenho de um sistema varie entre grupos com base em fatores como raça, etnia, região, gênero e idade.
Testamos nossos sistemas em vários fatores, incluindo fatores demográficos, como gênero, etnia e idade. Cada aplicativo é diferente e nossos testes podem não corresponder perfeitamente ao seu contexto ou abranger todos os cenários necessários para seu caso de uso. Incentivamos os desenvolvedores a avaliar completamente as taxas de erro do serviço com dados do mundo real que refletem seu caso de uso. Isso deve incluir testes com usuários de diferentes grupos demográficos e com diferentes características de fala.
Para o Reconhecimento do Locutor, há algumas diferenças observáveis no desempenho entre idiomas em alguns conjuntos de dados específicos. Ajustamos e avaliamos em oito idiomas (inglês, francês, espanhol, chinês, alemão, italiano, japonês e português) para APIs de verificação e identificação independentes de texto. Você pode ver mais detalhes sobre o idioma e o suporte à localidade do Reconhecimento do Locutor aqui. O Reconhecimento do Locutor não foi testado com dados que representam menores de 18 anos ou pessoas com transtornos de fala.
Avaliando e integrando o Reconhecimento do Locutor para seu uso
Antes de uma implantação ou distribuição em larga escala de qualquer sistema de reconhecimento de alto-falante, os proprietários do sistema devem realizar uma fase de avaliação. Faça essa avaliação no contexto em que você usará o sistema e com pessoas que interagirão com o sistema. Trabalhe com suas equipes de análise e pesquisa para coletar dados de avaliação da verdade fundamental para:
- Estabeleça a precisão da linha de base, as taxas falsas positivas e falsas negativas.
- Escolha um limite de correspondência apropriado para seu cenário.
- Determine se a distribuição de erros é distorcida para grupos específicos de pessoas.
É provável que a avaliação seja um processo iterativo. Por exemplo, você pode começar com 50 alto-falantes e 20 avaliações para cada alto-falante. Uma avaliação deve refletir seu ambiente de implantação e quaisquer variações nesse ambiente, como canal de microfone e nível de ruído. Use dados de avaliação de verdade fundamental que representam uma diversidade de pessoas e estilos de locutor.
Além de analisar dados de precisão, você também pode analisar comentários das pessoas que fazem julgamentos com base na saída do sistema. Além disso, você pode analisar os dados de satisfação das pessoas que estão sujeitas ao reconhecimento e comentários dos canais de voz do cliente existentes, para ajudar a ajustar o sistema e garantir um envolvimento bem-sucedido.