Sé que se utiliza un modelo oculto de Markov (HMM) en el reconocimiento de voz y lo entiendo hasta cierto punto. Sin embargo, lo que no sé es cómo la entrada (voz) se "transforma" en un vector que luego se usa en HMM.
¿Cómo se obtiene un vector de una entrada de sonido? ¿Es este vector legible por un humano?
speech-recognition
Estúpido
fuente
fuente
Respuestas:
La forma en que se realiza el reconocimiento de voz con HTK (o cualquier otra herramienta) es similar a la forma en que se realiza el reconocimiento de voz en el cerebro. Cuando escuche una palabra, que al instante se descomponen en sus constituyentes celulares y luego comparar los teléfonos con un "modelo" mentales interna de los teléfonos . Estos "modelos" se construyen a lo largo de años de escuchar el habla y le brindan la capacidad de distinguir entre oraciones de sonido similar como "Cómo destruir una bonita playa" y "Cómo reconocer el habla". El reconocimiento de voz con HTK o cualquier otro esquema basado en modelos funciona de manera similar. Aquí, en unos pocos pasos, así es como lo haces:
Todos los pasos anteriores son críticos para completar con éxito cualquier tarea de reconocimiento de voz. Al descomponer un sonido en su vector de características, lo está llevando a un espacio modelo, dándole una representación que lo hace más adecuado para hacer un modelo fuera de otras representaciones (digamos la representación de amplitud de tiempo). La mayoría de estas representaciones se encuentran en la frecuencia o en el dominio de la frecuencia del tiempo. Una de las representaciones más populares es el MFCC (coeficiente cepstral de frecuencia de mel). En cierto modo, esta técnica imita la respuesta auditiva humana con un conjunto de filtros. Una señal de entrada se descompone con este conjunto de filtros que tienen un espaciado logarítmico de sus frecuencias centrales. Los coeficientes MFCC de cualquier oración (por ejemplo) se utilizan para modelar cada uno de los teléfonos de los que está hecha la oración. Como ejemplo, considere,
Oración: Hola. Descripción fonética: hh aa ey
Cuando introduce los coeficientes MFCC en HTK, asociará los coeficientes MFCC de una parte de la oración con hh, otra con aa y así sucesivamente. Cuando esto se repite muchas veces, los modelos para los teléfonos comienzan a formarse.
HTK usa la herramienta
HCopy
para convertir una oración de entrada en su representación vectorial de características. También hay muchos "sabores" en los MFCC (representaciones E_D_A o E_D_A_Z). Sería una buena idea leer la documentaciónHCopy
dentro del htkbook..mfc
HTK escribe los coeficientes MFCC en un archivo con extensión . No es posible leer ese archivo usando ninguno de los editores de texto porque (creo) los coeficientes están escritos en binario. SinC
embargo, puede intentar leer los archivos .HTH.
fuente
edit
botón de la respuesta, o mejor aún, proporciónenos su propia respuesta. Y sí, si la pregunta en sí es inexacta, la respuesta también carecerá de precisión. Eso se ha discutido en la sección de comentarios.Cada ola se puede descomponer en la adición de muchas otras olas. Usando una transformada de Fourier, puede analizar una onda en sus componentes de frecuencia. La amplitud de estos componentes de frecuencia se puede usar como un vector. Aquí está la documentación sobre la clase Sphinx que hace esto y aquí hay una buena explicación visual de la transformación de Fourier.
fuente