Verificación Automática del Locutor Juan Arturo Nolazco Flores Departamento de Ciencias Computacionales Tecnológico de Monterrey, Campus Monterrey. Juan Arturo Nolazco Flores.
RAH Agenda Introducción IAL (ASV) VAL (ASV) JFK MVE AUC (Area Under the Curve) AUC JFK AUC MVE Resultados
Introducción Tareas relacionadas Reconocimiento Automática del Locutor: Identificación del Locutor Verificación del Locutor
Introducción: Identificación de Usuario Identificación de usuario: es un problema de clasificación. La única entrada: la señal de voz La salida puede ser expresada como: El usuario pertence a Z, donde Z es un conjunto de usuarios predeterminado. Entre más grande sea la Z mayor complejidad tendrá la tarea.
Arquitectura: Identificación del Locutor (SI) Señal de voz Preprocesamiento MFCC de Locutores MAP Entrenamiento GMM MAP de Locutores Señal de voz Preprocesamiento Probabilidad de que sea el Locutor i Probabilidad máxima Locutor Identificado Evaluación
Pre-procesamiento
Ejemplo: continuación
Modelación Sea X un vector de características, el modelo de un hablante se representa como: ( ) = w k N( X;m k,s k ) P X,l Ejemplos de vectores de 3 dimensiones. k ( ) å, l = w k,m k S k La GMM caracteriza la configuracion mecánica del tracto vocal de una persona.
RAH Agenda Introducción IAL (ASV) VAL (ASV) JFK MVE AUC (Area Under the Curve) AUC JFK AUC MVE Resultados
Introducción: Verificación del Locutor Verificación del Locutor: es un problema de detección. Dos entradas: voz e identidad Dos salidas: aceptado/rechazado y su medida de confianza
Tipos de Verificación de Locutor Escenarios de aplicación: Dependiente del texto: se le pide al usuario que articule una frase específica (el usuario es altamente cooperativo) Independiente del texto: El usuario es libre de articular cualquier frase (el usuario no siempre es cooperativo). La verificación del hablante independiente del texto es por ende más compleja.
Verificación del Locutor: Prueba de Hipótesis La prueba de hipótesis se utiliza para problemas de detección. Las dos hipótesis son: H0, la hipótesis nula, la cual acepta la identidad reclamada como legítima. H1 la hipótesis alternativa, la cual rechaza la indentidad reclamada impostor. La prueba del ratio de verosimilitud, brinda un resultado score para realizar una decisión estadística. f( X,i) = ( ) P( H1 X,i) P H0 X,i aceptar ³ rechazar t i
Verificación del Locutor: La función de puntaje es: f X,i ( ) = P( H0 X,i) P( H1 X,i) = P X l i ( )P(H0) P( X l i )P(H1) Y la decisión en el dominio logarítmico se reduce a: aceptar f ( X,i ) = log P( X l ) i - P( X l ) i ³ rechazar t i
Verificación del Locutor: Cada hablante tiene un modelo objetivo (target model) l Y su correspondiente i antimodelo El modelo objetivo es el prototipo de cada hablante en el entrenamiento. El antimodelo es el prototipo del impostor. Cuando todos los impostores comparten el mismo conjunto de parámetros se le denomina: Modelo Universal (UBM Universal Background Model) l i
Verificación del Locutor: Método Convencional Señal de voz Preprocesamiento Targets MFCC MAP Señal de voz Preprocesamiento UBM s MFCC EM GMM EM UBM GMM MAP de Targets Entrenamiento Señal de voz Evaluación Preprocesamiento Cálculo de puntuaciòn UBM p A = ( z H ) 1 Cálculo de puntuación p = ( z H ) del Target A 0 Normalización y decisión Aceptado rechazado
Verificación del Locutor (simplificado) Señal de voz Preprocesamiento Targets MFCC MAP Entrenamiento GMM EM de UBM GMM MAP de Targets Señal de voz Preprocesamiento Cálculo de scores Normalización y decisión Aceptado rechazado Evaluación
Verificación de Locutor: Modelado Sea X un vector de características, el modelo de un hablante se representa como: ( ) = w k N( X;m k,s k ) P X,l Ejemplos de vectores de 3 dimensiones. k ( ) å, l = w k,m k S k La GMM caracteriza la configuracion mecánica del tracto vocal de una persona.
Verificación del Locutor: Etapas Entrenamiento (off-line) Entrenar un modelo de usuario y el UBM Evaluación (on-line y depende de frases intento): Consta de dos partes: Indentidad reclamada y señal de voz.
Verificación del Locutor: Errores Estadísticos Existen dos fuentes de error: Tipo I: rechaza H0 cuando H0 es verdadero (rechaza a un usuario legítimo) TipoII: falla al rechazar H0, cuando H0 es falso (acepta a un impostor). La meta de la verificación del hablante es minimizar el costo de esos errores y depende de la aplicación.
Errores Estadísticos: Un vistazo gráfico
RAH Agenda Introducción IAL (ASV) VAL (ASV) JFK (Joint Factor Analysis) MVE AUC (Area Under the Curve) AUC JFK AUC MVE Resultados
Análisis de factores conjuntos, Joint Factor Analysis (JFA) El supervector M={μ1 μ2 μ3 } representa el GMM para la distribución de datos sobre cada tipo de canal Ch para el locutor S: M = m+vy+ux+ Dz donde m es una media global de todos los locutores, V es un conjunto de voces características (eigenvoices). U es un conjunto de canales característicos (eigenchannels). D es una matriz diagonal y y es un vector con distribución Normal que representa los factores específicos del locutor S. x vector con distribución Normal que representa los factores específicos del locutor S sobre el canal Ch. z es un vector con distribución Normal que representa un error residual;
JFA (Joint Factor Analysis) Señal de voz Preprocesamiento MAP EW Baum and Welch y S, z S y x S,H EM Expectation Maximization Crea Supervector M S,H V,U, D Entrenamiento GMM EM de UBM GMM MAP de Usuarios GMM JFK de Usuarios Señal de voz Preprocesamiento Cálculo de scores Normalización y decisión Aceptado rechazado Evaluación
RAH Agenda Introducción IAL (ASV) VAL (ASV) JFK MVE (Minimum Verification Error) AUC (Area Under the Curve) AUC JFK AUC MVE Resultados
Modelado discriminativo: Error mínimo de verificación, Minimum Verification Error (MVE) Objetivo: Encontrar los parámetros del modelo que minimizan el error empírico de los datos de entrenamiento. Considere la log-verosimilitud del modelo objetivo y el anti-modelo para el usuario i-ésimo. Podemos definir la medida de mal verificación como di, donde a mayor valor, mayor mal verificación: Donde Ci es el conjunto de tokens" (observaciones) que realmente pertenecen al usuario i-ésimo.
Modelado discriminativo: Error mínimo de verificación, Minimum Verification Error (MVE) La función de pérdida se puede definir como una función sigmoide: Este es un tipo con frontera de decisión suave centrada en. Ahora el objetivo es minimizar esta pérdida usando el algoritmo Generalized Probabilistic Descent (GPD):
MVE (Minimum Verification Error) Señal de voz Preprocesamiento MAP MVE Entrenamiento GMM EM de UBM GMM MAP de Usuarios GMM MV E de Usuarios Señal de voz Preprocesamiento Cálculo de scores Normalización y decisión Aceptado rechazado Evaluación
MVE (Minimum Verification Error) GMM M AP GMM n <- GMM MAP Calcula Corrección Actualización de parámetros GMM n+1 EE n+1 min(ee n +1 ) Sí No GMM MVE <-GMM n+1 GMM M VE
RAH Agenda Introducción IAL (ASV) VAL (ASV) JFK MVE (Minimum Verification Error) AUC (Area Under the Curve) AUC JFK AUC MVE Resultados
Modelado discriminativo: (MVE) con Minimizacion del Area Bajo la Curva (AUC) Cómo son los resultados de un Sistema de Verificación? Propuesta: Minimizar el área bajo la curva y no únicamente un punto (EER)
AUC (Area Under the Curve Objetivo de Métodos Convencionales: aprender los parámetros de las distribuciones que mejor se ajustan a los datos de entrenamiento utilizando un criterio de Máxima Verosimilitud (ML) sin explícitamente considerar la minimización de un punto de operación deseado. Objetivo paradigmas discriminativos para GMM y para JFA: optimizar el rendimiento utilizando un punto de operación específico, no necesariamente es el punto EER ni un punto de operación específico que deseemos optimizar. Nuestra propuesta es minimizar el área bajo la curva (AUC- Area Under the Curve) optimiza cada punto en la curva.
AUC (Area Under the Curve Con algunas manipulaciones matemáticas llegamos a la siguiente expresión que actualiza los parámetros:
AUC MVE Señal de voz Preprocesamiento MAP AUC MVE Entrenamiento GMM EM de UBM GMM MAP de Usuarios GMMA AUC MVE de Usuarios Señal de voz Preprocesamiento Cálculo de scores Normalización y decisión Aceptado rechazado Evaluación
AUC JFK Señal de voz Preprocesamiento MAP Local parameter optimization y S, z S y x S,H Global parameter optimization Crea Supervector M S,H V,U, D Entrenamiento GMM EM de UBM GMM MAP de Usuarios GMM JFK de Usuarios Señal de voz Preprocesamiento Cálculo de scores Normalización y decisión Aceptado rechazado Evaluación
Verificación de Locutores: datos NIST (2004, 2008 y 2010) Datos obtenidos de evaluaciones NIST: Problemas: Los datos provienen de teléfonos celulares y micrófono. Diferencia en condiciones de entrenamiento y prueba (Ruido aditivo). Los usuarios no siempre son cooperativos. Las frases son pequeñas Infraestrucutra: Linux de 32 bits, 64 núcleos
Verificación de Locutor (NIST) Se trata de una competencia realizada cada dos años, donde más de 50 laboratorios de investigación se reúnen para competir en una prueba ciega de verificación de usuario. El Tec de Monterrey ha sido la primera universidad de Latinoamérica en participar en 2008, 2010 y 2012. Nuestros sistemas han obtenido resultados competitivos en comparación con otras universidades. A diferencia de otros equipos, la implementación desde cero nos ha brindado el aprendizaje necesario para hacer mejoras.
Resultados: Señal Libre de Ruido
Resultados: Señal Libre de Ruido
Infraestructura (características del cluster): 650 núcleos, Linux 64bits
Colaboración con otras universidades Carnegie Mellon University Georgia Tech Universidad de Zaragoza, España
Gracias por su atención!!