MFCCLos Mel Frequency Cepstral Coefficients (Coeficientes Cepstrales en las Frecuencias de Mel) o MFCCs son coeficientes para la representación del habla basados en la percepción auditiva humana. Estos surgen de la necesidad, en el área del reconocimiento de audio automático, de extraer características de las componentes de una señal de audio que sean adecuadas para la identificación de contenido relevante, así como obviar todas aquellas que posean información poco valiosa como el ruido de fondo, emociones, volumen, tono, etc. y que no aportan nada al proceso de reconocimiento, al contrario, lo empobrecen. Los MFCCs son una característica ampliamente usada en el reconocimiento automático del discurso o el locutor y fueron introducidos por Davis y Mermelstein en los años 80 y han sido el estado del arte desde entonces. MFCCs se calculan comúnmente de la siguiente forma:[1]
Estos valores obtenidos son los coeficientes que buscamos. Aunque opcionalmente se le pueden añadir otros valores como los deltas y/o los delta-deltas. ExplicaciónEl primer paso es consecuencia de que toda señal de audio, grabada en condiciones normales, cambia constantemente en el tiempo, lo cual dificulta enormemente la extracción de características que la puedan diferenciar de otras señales o la identifiquen como similar a aquellas que claramente lo son para un ser humano. Debido a esto y con el objetivo de simplificar su tratamiento se asume que en pequeños períodos de tiempo sus características no cambian “mucho” y, por tanto, se le pueden realizar todo un conjunto de procesamientos con el objetivo de extraer características “estáticas” para cada pequeño tramo de la señal. Las cuales, en su conjunto, representarían a la señal completa. Los pasos que siguen a continuación pueden tener dos interpretaciones diferentes, pero ambas válidas: mediante la técnica de deconvolución y como una aplicación de filtros adaptados a las especificidades del discurso. Veamos cada una de ellas. Técnica de deconvoluciónPara entender esta aproximación es necesario conocer un poco de las bases del modelo de producción de sonido en los humanos y en gran parte del reino animal. A dicho modelo se le denomina con frecuencia como: source-filter (fuente-filtrado).
Dicho esto, es fácil notar que el trabajo que debemos realizar sobre la señal debe ir encaminado a hacer desaparecer la influencia de la fuente. No obstante, esto es más complicado de lo que parece, pues ambas señales (la de la fuente y el filtrado) se encuentran en Convolución y forman la señal que escuchamos. Afortunadamente, el Teorema de convolución plantea que si:
Donde la operación significa convolución; es la señal de audio que escuchamos; es la señal de la fuente y es la del filtrado. Entonces se cumple:
Donde y son las Transformadas de Fourier de las funciones correspondientes. Se le puede aplicar la escala de Mel a (por las mismas razones que veremos durante la segunda interpretación) y a continuación se lleva a logaritmo la función anterior para obtener una relación entre la fuente y el filtrado más fácil de deshacer:
Si en este punto filtrásemos las bajas frecuencias correspondientes a la fuente y seguidamente aplicamos la transformada de coseno discreta (DCT, por sus siglas en inglés) o lo que es lo mismo, aplicamos directamente la DCT y descartamos sus términos de alta frecuencia. Obtendríamos la señal (aunque debemos recordar que no es exactamente ) del filtrado. Filtros adaptados al discursoEsta segunda interpretación es mucho más intuitiva y antropomórfica que la anterior, ya que la razón por la que primeramente aplicamos la Transformada de Fourier y luego llevamos el espectro a la escala de Mel es para concordar con el órgano humano responsable de determinar la frecuencia de un sonido: la Cóclea. No obstante, este órgano no es lo suficientemente sensible como para notar un crecimiento lineal en las frecuencias, sino que más bien detecta regiones de frecuencia, las cuales a su vez se van haciendo más grandes a medida que la frecuencia aumenta. O sea que poseemos más sensibilidad al determinar sonidos graves que agudos. Al aplicar los filtros de Mel se obtienen las energías de cada una de estas regiones en la señal actual y, por tanto, el espectro de frecuencias con el que el sistema está trabajando es similar al de los humanos al escuchar el mismo sonido. Dado que los humanos tampoco escuchamos la intensidad de un sonido con un crecimiento lineal, sino logarítmico (en Decibel), entonces se hace necesario aplicarle el logaritmo a las energías antes obtenidas, pues estas son los valores de la intensidad de los componentes de la señal con frecuencias en esa región. Por último, debe observarse que al aplicar la DCT sobre esta función, que dicho sea de paso se encuentra en el dominio de la frecuencia, se realiza el proceso inverso al aplicado durante la transformación inicial, y se obtendría la señal original de no ser por los cambios que se le han hecho a esta para que se parezca a lo que escuchamos los humanos. Así que al aplicar la DCT se puede pensar que los valores que se obtienen serían los valores de la misma señal, pero escuchados por un humano. Solo queda una incógnita y es por qué aplicar la DCT en vez de la Inversa de la Transformada Discreta de Fourier. En este caso, para ambas interpretaciones la razón es enteramente matemática, ya que la DCT posee características de compresión y decorrelación muy útiles (véase la transformada de coseno discreta). Delta y Delta-deltasAunque los MFCCs describen adecuadamente las características estáticas de cada uno de los pequeños tramos en que dividimos la señal. Es indiscutible que esta también posee características dinámicas de vital importancia para la detección correcta del sonido. Como, por ejemplo, el uso de una secuencia específica de fonemas que sirven para especificar una palabra dada. O incluso dentro de un mismo fonema hay cambios típicos que de ser tenidos en cuenta pueden mejorar enormemente la detección del sistema. Es por esto que a los vectores de coeficiente MFCCs se les añade la velocidad a la que estos cambian entre los tramos en que se dividió la señal, así como su aceleración. O sea, que si se tiene un vector de 12 MFCCs se terminaría con uno de longitud 36, ya que se adicionan 12 para la velocidad y 12 más para la aceleración. AplicacionesLos MFCCs suelen emplearse características en sistemas de Reconocimiento del habla, como los empleados en el reconocimiento de números dictados por voz. También se aplican en sistemas de Reconocimiento de locutores, cuya función es el reconocimiento de personas por medio de la voz. Cada vez más, se empiezan a descubrir otras aplicaciones en el campo de la Recuperación de información musical (music information retrieval) como por ejemplo la clasificación de géneros, medidas de similitud de audio, etc.[2] Sensibilidad al ruidoLos valores del MFCCs no son muy robustos ante la presencia de ruido aditivo, por ello es común la normalización de los valores en los sistemas de reconocimiento de locutor para reducir la influencia de dicho ruido. Algunos investigadores proponen modificar el algoritmo básico para hacerlo más robusto, por ejemplo, aumentando las amplitudes de los logaritmos en la Escala Mel a un valor apropiado (en torno a 2 o 3) antes de aplicar la DCT, reduciendo así la influencia de las componentes de baja potencia.[3] Referencias
Enlaces externos
|