Pergunta

Estou tendo problemas para determinar de Este artigo de pesquisa Exatamente como posso reproduzir o algoritmo de quantização de vetores padrão para determinar o idioma de uma entrada de fala não identificada, com base em um conjunto de dados de treinamento. Aqui estão algumas informações básicas:

Informações abstratasO reconhecimento de idiomas (por exemplo, japonês, inglês, alemão etc.) usando recursos acústicos é um problema importante e difícil para a tecnologia atual da fala. ... A base de dados de fala usada neste artigo contém 20 idiomas: 16 frases proferidas duas vezes por 4 homens e 4 fêmeas. A duração de cada frase é de cerca de 8 segundos. O primeiro algoritmo é baseado na técnica de quantização de vetores padrão (VQ). Cada idioma é caracterizado por seu próprio livro de código VQ, alt text.

Algoritmos de reconhecimentoO primeiro algoritmo é baseado na técnica de quantização de vetores padrão (VQ). Cada idioma, k, é caracterizado por seu próprio livro de código VQ, alt text. Na fase de reconhecimento, o discurso de entrada é quantizado por alt text e a distorção de quantização acumulada, D_K, é calculada. A linguagem que como a distorção mínima é reconhecida. CALCULANDO DISTORÇÃO VQ, várias medidas de distorção espectral de LPC são aplicadas ... Nesse caso, o WLR - menor proporção ponderada - Distância: http://tinyurl.com/yc52gcl.

Algoritmo VQ padrão:Um livro de código, ALT TEXTO http://tinyurl.com/y8csx6e, para cada idioma é gerado usando frases de treinamento. A distância acumulada para o vetor de entrada na frase, alt text, é definido como: TEXTO ALT HTTP://tinyurl.com/ybynjc2

A distancia d pode ser qualquer distância que corresponda aos recursos acústicos e deve ser a mesma usada para a geração do livro de códigos. Cada idioma é caracterizado por seu livro de código VQ, alt text.

Minha pergunta é: como exatamente eu faço isso? Eu tenho um conjunto de 50 frases em inglês. No MATLAB, posso calcular facilmente o WLR para qualquer sinal. Mas, como faço para formular um livro de códigos, já que devo usar o WLR para "geração do livro de códigos" para o inglês. Também estou curioso sobre como comparar um livro de código VQ do tamanho 16 (que foi considerado o melhor tamanho), com um determinado sinal de entrada. Se alguém pudesse ajudar a destilar este artigo para mim, eu agradeceria muito.

Obrigado!

Foi útil?

Solução

A segunda pergunta (compare o código de código com o sinal indicado) é mais fácil: para cada entrada de código de código v_k_j, você deve calcular a distância d com o sinal de entrada. O 'J' com menor distância 'd' será reportável à melhor entrada de livro de códigos. Como uma função de distância, você pode usar WLR

O Building Codebook (Trainig) é um pouco mais complicado. Você deve dividir suas frases aos vetores com lenght n (16) e depois usar algum algoritmo de cluster (como K-means) para agrupar esses vetores. Em seguida, encontre médio em cada cluster. Isso significa e será a entrada do livro de códigos. É uma coisa que vem à mente.

Outro algoritmo (acredito, será melhor) pode ser encontrado aqui. Além disso, dois algoritmos de treinamento simples são descritos em Wikipedia

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top