350 likes | 599 Vues
DESARROLLO DE UN SEGMENTADOR FONÉTICO AUTOMÁTICO PARA HABLA EXPRESIVA BASADO EN MODELOS OCULTOS DE MARKOV. Proyecto Fin de Carrera Autor: Juan Carmona Mariscal Tutor: Juan Manuel Montero Martínez. Índice. Objetivos Anteriores trabajos relacionados Estructura del sistema
E N D
DESARROLLO DE UN SEGMENTADOR FONÉTICO AUTOMÁTICO PARA HABLA EXPRESIVA BASADO EN MODELOS OCULTOS DE MARKOV Proyecto Fin de Carrera Autor: Juan Carmona Mariscal Tutor: Juan Manuel Montero Martínez
Índice Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal Objetivos Anteriores trabajos relacionados Estructura del sistema Las bases de datos Resultados de los experimentos Conclusiones y líneas futuras
Objetivos (I) Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal Segmentación automática a partir de ficheros de audio (.wav o .pcm) y su transcripción fonética (.lab) Empleado para segmentar archivos de habla expresiva en castellano Conjunto de experimentos más amplio y exhaustivo sobre una BD ya empleada, SES Experimentos sobre BDs nuevas: SEV y UPC Open Source
Objetivos (II) Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal • Restricciones de diseño Automatización y configurabilidad: • Variables: • algoritmo de parametrización • número de estados de los modelos • número de gaussianas por estado • número de iteraciones a realizar (reestimaciones) • coeficientes extra (deltas, aceleraciones, de energía) • inclusión o no de normalización cepstral
Anteriores trabajos relacionados Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal • Segmentación fonética automática de Doroteo Torres (2003). Segmentación en dos etapas: • Esquema básico de segmentación (comparable al nuestro) error del 20,73% para tolerancia de 20 ms • Procedimiento adicional de corrección estadística de las marcas automáticas reduce el error al 4% • Experimentos con SES de Gallardo et al. (Interspeech 2007): • Errores entre el 8,70% y el 14,45% entrenando con toda la base de datos
Herramientas empleadas Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal • HTK (Hidden Markov Model Toolkit) • Lenguaje de scripts (archivos de procesos por lotes .bat) • Lenguaje PERL • Ej: perl -e "while ($_=<stdin>){$v=uc \"%1_%6\";s/TARGETKIND[\s\t]+=[\s\t]+[a-zA-z_0-9]+/TARGETKIND = $v/i;print;}" < %LIB_DIR%\tmp.tmp >%CONFIG_FILE_HCOPY%
Estructura del sistema (I) • Lanzamiento del sistema • Definición de las variables del experimento • Permite barrido de una batería de experimentos de manera desatendida Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal
Estructura del sistema (II) • Define la estructura de las distintas etapas del proceso • Llamada secuencial de cada uno de los scripts Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal
Estructura del sistema (III) • Configuración del sistema y acondicionamiento de ficheros • Definición de la BD • Definición de conjuntos de entrenamiento y segmentación y evaluación de manera separada • Permite definir dos conjuntos diferentes de evaluación • Generación automática de ficheros de configuración Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal
Estructura del sistema (IV) • Parametrización de los ficheros de entrada Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal
Estructura del sistema (V) • Entrenamiento de los modelos • Generación automática: • Lista y diccionario de fonemas • Gramática empleada • Generación automática de los modelos semilla y actualización • Genera automáticamente un script para tareas dependientes de las variables definidas Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal
Estructura del sistema (VI) • Reconocimiento automático (a modo de comprobación del funcionamiento del sistema) • Generación automática de la red de fonemas • Genera automáticamente un script para tareas dependientes de las variables definidas Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal
Estructura del sistema (VII) • Segmentación automática • Genera automáticamente un script para tareas dependientes de las variables definidas Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal
Estructura del sistema (VIII) • Evaluación de la segmentación realizada • Genera automáticamente un script para tareas dependientes de las variables definidas Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal
La base de datos SES Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal • Grabaciones de actor varón simulando voz neutra y 4 emociones (alegría, enfado, sorpresa, tristeza) • Contenido semántico y sintáctico neutro • Corpus empleado: • 15 frases cortas en 3 sesiones, segmentadas manualmente • 4 párrafos completos en 3 sesiones • los tres primeros párrafos divididos y etiquetados manualmente (1 sesión, a excepción del enfado)
La base de datos SEV Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal • Grabaciones de locutora (Rosa) simulando voz neutra y 6 emociones (alegría, enfado, sorpresa, tristeza, asco, miedo) • Corpus empleado (todo menos Logatomos): • Corpus de frases largas provenientes de párrafos de SES; 3 frases por emoción (21 en total) segmentadas manualmente • Corpus de frases largas del Quijote; 2 frases por emoción (14) s.m. • Corpus de Prosodia, unas frases cortas y otras largas, incluyendo interrogativas; 10 frases por emoción (70) s.m. • Grabaciones de actor varón (Joaquín): ídem, pero sin etiquetar manualmente
Resultados de los experimentos Resultados del cambio de versión • Elección de la versión de HTK • Idénticos resultados para las versiones 3.3 y 3.4 Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal El entrenamiento con frases produce peores resultados que con párrafos (pocos datos)
Resultados de la optimización del número de estados, iteraciones y gaussianas (I) Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal • SES Estados: 6(4) Iteraciones: 6 Gaussianas: 5 (MFCC) Estados: 6(4) Iteraciones: 6 Gaussianas: 2-5 (PLP) • Error mínimo: 8,01% (MFCC) 7,60% (PLP)
Resultados de la optimización del número de estados, iteraciones y gaussianas (II) Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal • SEV Estados: 6(4) Iteraciones: 5/6 Gaussianas: 5 (MFCC) Estados: 6(4) Iteraciones: 4 Gaussianas: 10 (PLP) • Error mínimo: 18,06% (MFCC) 18,17% (PLP) • Posibles factores de que depende la diferencia: • Revisión del marcaje manual • Características de la voz del locutor
Resultados de la combinación de coeficientes Mejor que Mejor que Mejor que Mejor que Peor que Según caso Según caso Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal • _0_E _0 _E • _D_A _D _0_E • _D_A_T _D_A • _0_D_A _E_D_A _D_A
Resultados de la combinación de frases y párrafos (I) Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal Combinaciones de frases y párrafos (SES) como grupos de entrenamiento y evaluación
Resultados de la combinación de frases y párrafos (II) Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal Combinaciones de frases y párrafos (SES) como grupos de entrenamiento y evaluación
Resultados de la segmentación interemociones Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal • Para segmentar frases con emoción es mejor entrenar con frases con emoción que con voz neutra. • Voz mejor segmentada: Neutra (5% en MFCC, SES) • Voz peor segmentada: Tristeza (11,18% en MFCC, SES) • Mejor voz para entrenar en solitario: • SES: 1.Tristeza (9,15% en media, MFCC), 2.Alegría (9,98) • SEV: Alegría (21,08% en media, MFCC), Neutra (21,74) • Peor voz para entrenar en solitario: • SES: Neutra (22,67% en media, MFCC) • SEV: Tristeza (29,48% en media, MFCC), Miedo (26,56) • Diferencias entre la mejor y la peor voz son significativas
Resultados de la segmentación con normalización cepstral Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal • Mejora en general, más con MFCC que con PLP
Resultados de la variación del número de canales Variación del número de canales
Resultados de la variación del desplazamiento de tramas (I) Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal • Variación del desplazamiento de tramas y del tamaño de la ventana de análisis • Valores usuales (10 y 25 ms) son óptimos
Resultados de la variación del desplazamiento de tramas (II) Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal • Variación del desplazamiento de tramas y del tamaño de la ventana de análisis • Disminuirlas mejora la desviación media (mejor resolución) pero aumenta el número de errores
Resultados de la inclusión de filtrado Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal En general los mejores resultados se dan sin filtrado (buenas condiciones de ruido en SES) Sólo mejora un poco con filtro paso bajo a 7800 Hz Canal telefónico (300-3400 Hz): empeora entre 2,65 y 4,8 puntos porcentuales absolutos Hay más información a menos de 300 Hz que de 3400 Hz para arriba
Resultados de la segmentación de UPC Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal Errores mínimos: 11,17% (MFCC) y 11,48% (PLP)
BD para Albayzín 2012 Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal • Segmentación de la base de datos SEV, locutor masculino • Realizada para proporcionar datos a los desarrolladores de síntesis de voz para la competición Albayzín 2012 • Evaluación cualitativa e informal, considerando los resultados bastante aceptables • Algunos errores concretos: • Transición entre dos vocales en un diptongo • Transición entre silencios y principios o finales de palabra • Consonantes oclusivas • Pausas no transcritas
Conclusiones (I) Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal • Obtención de un segmentador automático que cumple los objetivos iniciales: • Automatización y configurabilidad • Trabajo con diferentes bases de datos • Open Source • Ha sido necesaria una cierta complejidad (HTK, scripts, perl, C…)
Conclusiones (II) Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal • Mejores tasas de error: • SES: en torno al 7-8% • UPC: en torno al 11% • SEV: en torno al 17-18% • Posibles factores de que dependen: • Corrección del marcaje manual • Características de la voz del locutor
Conclusiones (III) Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal • Sugerencia de parametrización para el uso del segmentador: • algoritmo de parametrización: PLP • número de estados de los modelos: 6 (4) • número de iteraciones a realizar (reestimaciones): 6 • número de gaussianas por estado: 5 • coeficientes extra: _E_D_A (de energía, derivados y aceleraciones) • inclusión de normalización cepstral: sí • número de canales: 20 • desplazamiento de tramas: 10 ms • tamaño de la ventana de análisis: 25 ms • filtrado de altas frecuencias para reducir ruido (+7800 Hz) • emoción: si se puede entrenar con todas las emociones, con todas; si se debe elegir una para entrenar, alegría (para segmentar frases con emoción es mejor entrenar con frases con emoción que con voz neutra)
Líneas futuras de investigación Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal • Mejorar graf2fon efecto de coarticulación entre palabras • Medida estándar de error: fronteras a más de 20 ms de las marcadas manualmente Puede penalizar a las emociones con ritmo lento. Experimentar teniendo esto en cuenta • Segmentar otras bases de datos (diferentes estilos…) • Modelos independientes de locutor • Realizar adaptación y comprobar el impacto en resultados de segmentación automática
¿Preguntas? Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal