Proyecto Fin de Carrera
Autor: Juan Carmona Mariscal
Tutor: Juan Manuel Montero Martínez
Índice
 Objetivos
 Anteriores trabajos relacionados
 Estructura del sistema
 Las bases de datos
 Resultados de los experimentos
 Conclusiones y líneas futuras
Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal
2
Objetivos (I)
 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
Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal
3
Objetivos (II)
 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
Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal
4
Anteriores trabajos relacionados
 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
Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal
5
Herramientas empleadas
 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_09]+/TARGETKIND = $v/i;print;}" < %LIB_DIR%\tmp.tmp >%CONFIG_FILE_HCOPY%
Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal
6
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
7
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
8
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
9
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
10
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
11
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
12
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
13
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
14
La base de datos SES
 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)
Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal
15
La base de datos SEV
 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
Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal
16
Resultados de los experimentos
 El entrenamiento con frases produce peores resultados
que con párrafos (pocos datos)
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
17
Resultados de la optimización del número de
estados, iteraciones y gaussianas (I)
 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)
Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal
18
Resultados de la optimización del número de
estados, iteraciones y gaussianas (II)
 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
Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal
19
Resultados de la combinación de
coeficientes
 _0_E
Mejor que
_0
Mejor que
_E
 _D_A
Mejor que
_D
Mejor que
_0_E
 _D_A_T
Peor que
 _0_D_A
Según caso
_D_A
_E_D_A
Según caso
_D_A
Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal
20
Resultados de la combinación de
frases y párrafos (I)
 Combinaciones de frases y párrafos (SES) como grupos
de entrenamiento y evaluación
Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal
21
Resultados de la combinación de
frases y párrafos (II)
 Combinaciones de frases y párrafos (SES) como grupos
de entrenamiento y evaluación
Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal
22
Resultados de la segmentación
interemociones
 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
Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal
23
Resultados de la segmentación con
normalización cepstral
 Mejora en general, más con MFCC que con PLP
Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal
24
Resultados de la variación del
número de canales
 Variación del número de canales
25
Resultados de la variación del
desplazamiento de tramas (I)
 Variación del desplazamiento de tramas y del tamaño
de la ventana de análisis
 Valores usuales (10 y 25 ms) son óptimos
Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal
26
Resultados de la variación del
desplazamiento de tramas (II)
 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
Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal
27
Resultados de la inclusión de filtrado
 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
Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal
28
Resultados de la segmentación de
UPC
 Errores mínimos: 11,17% (MFCC) y 11,48% (PLP)
Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal
29
BD para Albayzín 2012
 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
Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal
30
Conclusiones (I)
 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…)
Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal
31
Conclusiones (II)
 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
Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal
32
Conclusiones (III)
 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)
Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal
33
Líneas futuras de investigación
 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
Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal
34
¿Preguntas?
Desarrollo de un segmentador fonético automático para habla expresiva basado en modelos ocultos de Markov - Juan Carmona Mariscal
35
Descargar

Presentaci n PFC Juan Carmona_vFINAL