A diarização de locutores separa as vozes, localizando a fala, extraindo características dos locutores, agrupando segmentos semelhantes e atribuindo novamente etiquetas de locutor à linha temporal do áudio.
Um arquivo privado pode conter entrevistas, reuniões, vídeos caseiros e notas de voz em que as palavras, por si só, não são suficientes. A diarização acrescenta a estrutura de quem falou e quando, sem enviar a gravação para fora do servidor doméstico.
A diarização começa por encontrar onde existe fala
A diarização de locutores começa normalmente por separar a fala do silêncio e do áudio sem fala. Isso impede que música, ruído ambiente e pausas longas se tornem falsos indícios da identidade do locutor.
A NVIDIA descreve um pipeline de diarização em cascata que começa pela deteção de atividade vocal, antes dos embeddings de locutor e do agrupamento. A etapa VAD produz marcas temporais para as regiões de fala. O NeMo separa a diarização em etapas de deteção da fala, representação do locutor e agrupamento, o que ilustra por que razão o pipeline precisa primeiro de uma linha temporal da fala antes de atribuir locutores através do pipeline de diarização do NVIDIA NeMo.
Num servidor doméstico, isto reduz o trabalho desnecessário e cria também um limite de falha inicial. Se a fala baixa for cortada nesta fase, o agrupamento posterior de locutores não consegue recuperar o segmento de voz em falta.
Os embeddings de locutor tornam os segmentos de voz comparáveis
Cada região de fala detetada é convertida num embedding de locutor: um vetor compacto que preserva características úteis para distinguir vozes.
O NeMo documenta um pipeline em que os embeddings de locutor são extraídos antes do agrupamento. Estes vetores representam a semelhança entre locutores, e não o nome literal de um membro da família. A Google Research descreve as representações de locutor como uma parte essencial dos sistemas modernos de diarização, apoiando a utilização de embeddings para comparar quem está a falar entre segmentos na investigação da Google sobre diarização de locutores.
Isso significa que um arquivo privado pode produzir Locutor 1 e Locutor 2 sem manter uma base de dados de identidades.
A associação de um agrupamento a uma pessoa real é uma etapa separada de registo ou identificação.
O agrupamento transforma embeddings semelhantes em etiquetas de locutor
Depois de criados os embeddings, o sistema agrupa vetores semelhantes em clusters. Cada cluster torna-se uma identidade provisória de locutor para a gravação.
A NVIDIA identifica o agrupamento como o módulo que reúne os embeddings de locutor. O agrupamento depende da semelhança acústica, e não das palavras transcritas. A Microsoft Research tem tratado os embeddings de locutor aprendidos e o agrupamento como problemas de diarização interligados, o que apoia a etapa de agrupamento descrita na investigação da Microsoft Research sobre agrupamento de locutores.
É por isso que a diarização e o reconhecimento da fala são distintos. A transcrição pode conter uma palavra errada, enquanto o áudio circundante continua atribuído ao cluster de locutor correto.
Os limites dos turnos determinam quando o locutor muda
Uma gravação é contínua, pelo que o pipeline tem de decidir não só qual o cluster mais adequado, mas também onde termina o turno de um locutor e começa o de outro.
O NeMo suporta diarização multiescala com embeddings de segmentos de diferentes comprimentos. Janelas mais longas estabilizam a identidade, enquanto janelas mais curtas ajudam a localizar mudanças rápidas. Os sistemas modernos de diarização modelam explicitamente os turnos dos locutores e os limites de segmentação, em vez de atribuírem uma única etiqueta de locutor a toda a gravação, como demonstrado na investigação da pyannote sobre diarização de locutores.
As conversas domésticas rápidas evidenciam este compromisso. Janelas demasiado longas podem diluir uma troca rápida;
janelas demasiado curtas podem conter pouca informação de voz para um agrupamento estável.
As etiquetas de locutor são alinhadas com transcrições pesquisáveis
Quando os turnos dos locutores existem, as respetivas marcas temporais podem ser alinhadas com o resultado do ASR, permitindo que o arquivo armazene tanto o que foi dito como quem provavelmente o disse.
A NVIDIA define a diarização como a resposta a quem falou e quando, em conjunto com o reconhecimento da fala. Por isso, as duas camadas podem ser executadas novamente de forma independente. A investigação sobre diarização no dispositivo mostra que a separação de locutores pode ser realizada localmente, tornando a diarização útil para arquivos de áudio privados sem exigir processamento na cloud; consulte a investigação sobre diarização de locutores no dispositivo.
Este mecanismo complementa a análise da ZimaSpace sobre trocas de identidade de locutor em transcrições longas, que se centra na deriva dos clusters depois de o pipeline normal de diarização já ter sido estabelecido.
A sobreposição e as alterações acústicas definem o limite prático
Duas pessoas a falar em simultâneo violam o pressuposto simples de um locutor por segmento.
Um segmento misto pode produzir um embedding que não pertence claramente a nenhuma das vozes.
O NeMo distingue os pipelines de agrupamento das abordagens neuronais, como a VAD do locutor-alvo, para estimar etiquetas de locutor. Estes métodos ajudam com a sobreposição, mas não eliminam as dificuldades acústicas. A IBM Research também destaca a dificuldade da sobreposição e das condições acústicas variáveis, reforçando que a qualidade da diarização tem limites práticos descritos na investigação da IBM sobre diarização de locutores.
A distância e a reverberação também podem distorcer as características de identidade. A análise da ZimaSpace sobre reconhecimento de voz em campo distante explica as alterações acústicas a montante que podem afetar tanto o reconhecimento como a diarização.
Centro de Tecnologia e IA
Mais para Ler

Estado em tempo de execução vs. estado persistente no Home Assistant: o que tem de sobreviver ao reinício?
O Home Assistant não persiste todos os valores em tempo real; a configuração, os registos, os estados restaurados selecionados, o histórico e os dados...

Como é que o Home Assistant autentica sessões locais e remotas?
As sessões locais e remotas do Home Assistant utilizam o mesmo modelo de identidade do lado do servidor; o acesso remoto altera a rota...

Porque é que as consultas ao histórico do Home Assistant podem ficar mais lentas à medida que os dados do Recorder aumentam?
O crescimento do gravador pode aumentar o custo das consultas do Histórico quando o intervalo solicitado abrange mais linhas, as falhas de cache aumentam...

