ES2204516T3 - Reconocimiento de hablantes. - Google Patents

Reconocimiento de hablantes.

Info

Publication number
ES2204516T3
ES2204516T3 ES00905216T ES00905216T ES2204516T3 ES 2204516 T3 ES2204516 T3 ES 2204516T3 ES 00905216 T ES00905216 T ES 00905216T ES 00905216 T ES00905216 T ES 00905216T ES 2204516 T3 ES2204516 T3 ES 2204516T3
Authority
ES
Spain
Prior art keywords
speaker
sequence
vectors
characteristic
model
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
ES00905216T
Other languages
English (en)
Inventor
Simon Nicholas Downey
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
British Telecommunications PLC
Original Assignee
British Telecommunications PLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from GBGB9905627.7A external-priority patent/GB9905627D0/en
Application filed by British Telecommunications PLC filed Critical British Telecommunications PLC
Application granted granted Critical
Publication of ES2204516T3 publication Critical patent/ES2204516T3/es
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L17/00Speaker identification or verification techniques
    • G10L17/02Preprocessing operations, e.g. segment selection; Pattern representation or modelling, e.g. based on linear discriminant analysis [LDA] or principal components; Feature selection or extraction
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L17/00Speaker identification or verification techniques
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L17/00Speaker identification or verification techniques
    • G10L17/04Training, enrolment or model building
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/06Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice

Landscapes

  • Engineering & Computer Science (AREA)
  • Acoustics & Sound (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Image Analysis (AREA)
  • Complex Calculations (AREA)
  • Telephonic Communication Services (AREA)
  • Measuring Fluid Pressure (AREA)
  • Magnetic Resonance Imaging Apparatus (AREA)
  • Measuring Pulse, Heart Rate, Blood Pressure Or Blood Flow (AREA)
  • Character Discrimination (AREA)

Abstract

Procedimiento de reconocimiento de hablantes, que comprende las etapas siguientes: recepción (40) de una señal de voz de un hablante desconocido; almacenamiento de una pluralidad de transformadas de hablantes, estando asociada cada transformada a un hablante respectivo de una pluralidad; almacenamiento de una pluralidad de modelos de hablantes, estando asociado cada modelo de hablante a un respectivo usuario de dicha pluralidad; transformación (42 y 43) de la señal de voz recibida según una transformación seleccionada de las transiciones almacenadas, estando asociada la transformada seleccionada a un hablante particular; comparación (44) de la señal de voz transformada con un modelo seleccionado de los modelos almacenados, representando el modelo seleccionado dicho hablante particular, y provisión (47), como salida, de un parámetro que depende de la probabilidad de que el hablante desconocido sea dicho hablante particular.

Description

Reconocimiento de hablantes.
La presente invención se refiere al reconocimiento de hablantes. En los sistemas de reconocimiento de hablantes, se identifica o verifica la identidad de los hablantes. En los sistemas de identificación de hablantes, el hablante es aceptado si forma parte de un grupo de hablantes conocidos, o rechazado si es un hablante desconocido. En los sistemas de verificación de hablantes, el hablante es aceptado si tiene la identidad que ha indicado o es rechazado en caso contrario. El hablante puede indicar su identidad mediante, por ejemplo, una contraseña, un número de identificación personal o una tarjeta magnética de acceso.
En general, en los sistemas de reconocimiento de hablantes, el procesamiento de la voz tiene como objetivo incrementar los efectos sobre la palabra pronunciada por los diferentes hablantes, mientras que, para los sistemas de reconocimiento de voz, en los que lo que se reconoce es una palabra particular (o a veces una frase, un fonema u otro elemento del habla), el procesamiento de la voz tiene como objetivo reducir los efectos sobre la palabra pronunciada por los diferentes hablantes.
Los datos de voz suelen introducirse en formato digital dentro de un procesador frontal, que obtiene del flujo de datos de voz de entrada, datos más compactos y de más importancia perceptiva que se denominan vectores de característica de entrada (o a veces, vectores de característica frontales). Cuando el hablante pronuncia una palabra predeterminada conocida de antemano por el aparato de reconocimiento y el hablante (p.ej., un número de identificación personal en actividades bancarias), se dice que la técnica es dependiente del texto. En algunas aplicaciones de reconocimiento de hablantes, se utiliza una técnica en la que no es necesario predeterminar el contenido pronunciado. Este tipo de técnicas se denominan técnicas independientes del texto.
En las técnicas dependientes del texto, se obtiene de antemano una representación almacenada de la palabra, que se denomina modelo o plantilla, de un hablante del que se conoce su identidad auténtica. Los vectores de característica de entrada obtenidos del hablante que se desea reconocer son comparados con la plantilla, y la medida de similitud entre los dos se compara con un umbral para decidir si se acepta o no. La comparación puede llevarse a cabo mediante la técnica de alineamiento dinámico temporal, descrita en el documento "On the evaluation of Speech Recognisers and Data Bases using a Reference system", Chollet y Gagnoulet, 1982, IEEE, International Conference on Acoustics, Speech and Signal Processing, pp. 2026-2029. El procesamiento basado en el modelo de Markov oculto y las redes neuronales son otros medios de comparación. Estas técnicas se describen en los documentos de British Telecom Technology Journal, vol. 6, nº 2, abril de 1988, "Hidden Markov Models for Automatic Speech Recognition: Theory and Application", S.J. Cox, páginas 105-115, "Multi-layer perceptrons applied to speech technology", McCullogh et al., páginas 131-139 y "Neural arrays for speech recognition", Tattershall et al., páginas 140-163.
Se han utilizado o propuesto diversos tipos de características para el procesamiento de voz. En general, puesto que los tipos de características utilizadas para el reconocimiento de voz están destinados a diferenciar unas palabras de otras con independencia del hablante, mientras que las utilizadas para el reconocimiento de hablantes están destinadas a diferenciar entre hablantes para una palabra o más conocidas, un tipo de característica adecuada para un tipo de reconocimiento puede ser adecuado para los otros. En el documento "Automatic Recognition of Speakers from their voices", Atal, Proc. IEEE, vol. 64, pp. 460-475, abril de 1976, se describen algunos tipos de características adecuadas para el reconocimiento de hablantes.
En el documento EP-A-0 501 631, se da a conocer un sistema y un procedimiento para la decorrelación temporal automatizada de la verificación de voz del hablante que incluye un recopilador para recibir entradas de voz de un hablante desconocido que proporciona una identidad concreta, un calculador de características de voz a nivel de palabra para generar una memoria de características de voz a nivel de palabra y almacenar vectores de característica de voz a nivel de palabra que se sabe que son del hablante que tiene la identidad indicada, un calificador de vectores a nivel de palabra para calcular una puntuación de similitud entre los vectores de característica de voz a nivel de palabra del hablante desconocido recibidos y los recibidos desde la memoria de características de voz a nivel de palabra, y circuitos de decisión de verificación de hablante para determinar, basándose en la puntuación de similitud, si la identidad del hablante desconocido es la que éste indicó. El calificador de vectores a nivel de palabra incluye además circuitos de concatenación, así como un transformador lineal de ortogonalización basado en palabras.
Según la presente invención, se proporciona un procedimiento de reconocimiento de hablantes que comprende las etapas siguientes: recepción de una señal de voz de un hablante desconocido; almacenamiento de una pluralidad de transformadas de hablantes, estando asociada cada transformada a un hablante respectivo de una pluralidad; almacenamiento de una pluralidad de modelos de hablantes, estando asociado cada modelo de hablante a un respectivo usuario de dicha pluralidad; transformación de la señal de voz recibida según una transformación seleccionada de las transiciones almacenadas, estando asociada la transformada seleccionada a un hablante particular; comparación de la señal de voz transformada con un modelo seleccionado de los modelos almacenados, representando el modelo seleccionado dicho hablante particular y provisión como salida de un parámetro que depende de la probabilidad de que el hablante desconocido sea dicho hablante particular.
Preferentemente, la transformación comprende las subetapas siguientes: detección de un punto inicial de voz y un punto final de voz dentro de la señal de voz recibida; generación de una secuencia de vectores de característica obtenidos a partir de la señal de voz recibida y alineamiento de la secuencia de vectores de característica correspondientes a la señal de voz, entre el punto inicial detectado y el punto final detectado, con una secuencia representativa de vectores de característica para dicho hablante particular, de tal forma que cada vector de característica de la secuencia alineada de vectores de característica corresponda a un vector de característica de la secuencia representativa de vectores de característica.
De forma ventajosa, la etapa de transformación comprende además la subetapa de promediación de cada vector de característica de la secuencia alineada de vectores de característica con el correspondiente vector de característica de la secuencia representativa de vectores de característica.
Preferentemente, se utiliza un modelo de Markov oculto, que puede ser un modelo de Markov oculto de izquierda a derecha.
De forma ventajosa, la secuencia representativa de vectores de característica comprende el mismo número de vectores de característica que el número de estados del modelo de Markov oculto.
Según otro aspecto de la presente invención, se proporciona un aparato para el reconocimiento de hablantes que comprende: medios de recepción para recibir una señal de voz de un hablante desconocido, una memoria de transformadas de hablantes para almacenar una pluralidad de transformadas de hablantes, estando asociada cada transformada a un respectivo hablante de una pluralidad de hablantes; una memoria de modelos de hablantes para almacenar una pluralidad de modelos de hablantes, estando asociado cada modelo de hablante a un respectivo hablante de dicha pluralidad de hablantes; medios de transformación acoplados a los medios de recepción y la memoria de transformadas de hablantes y destinados a transformar la señal de voz recibida según una transformada de hablante seleccionada; medios de comparación acoplados a los medios de transformación y la memoria de modelos de hablantes y destinados a comparar la señal de voz transformada con el correspondiente modelo de hablante y medios de salida para proporcionar una señal que indica la probabilidad de que el hablante desconocido sea el hablante asociado a la transformada de hablante seleccionada.
Preferentemente, los medios de transformación comprenden un detector de punto inicial y punto final para detectar el punto inicial y el punto final de la voz dentro de la señal de voz recibida, un generador de vectores de característica para generar una secuencia de vectores de característica obtenidos a partir de la voz de entrada, y medios de alineamiento para alinear la secuencia de vectores de característica correspondientes a la señal de voz, entre el punto inicial detectado y el punto final detectado, con una secuencia representativa de vectores de característica, de tal forma que cada vector de característica de la secuencia alineada de vectores de característica resultante corresponda a una característica de la secuencia representativa de vectores de característica.
De forma ventajosa, los medios de transformación comprenden además medios de promediación para promediar cada vector de característica de la secuencia alineada de vectores de característica con el correspondiente vector de característica de la secuencia representativa de vectores de característica. Preferentemente, la memoria de modelos de hablantes está destinada a almacenar el modelo de hablante en forma de modelo de Markov oculto y puede estar destinada a almacenar el modelo de hablante en forma de modelo de Markov oculto de izquierda a derecha.
De forma ventajosa la secuencia representativa almacenada de vectores de característica comprende el mismo número de vectores que el número de estados del correspondiente modelo de Markov oculto almacenado.
Como es bien sabido, se puede modelar el tracto vocal de un hablante durante la emisión de voz como un filtro de variación temporal. En la presente invención, antes de comparar los vectores de características obtenidos a partir de la voz con un modelo de referencia almacenado, los vectores de característica se procesan aplicando una transformada dependiente del hablante que se corresponde con las características del tracto vocal de un hablante particular. Las características procedentes de voz que tiene características muy diferentes a las del hablante del cual depende la transformada pueden ser muy distorsionadas por la transformada, mientras que las características procedentes de voz que tiene características similares a las del hablante del cual depende la transformada serán mucho menos distorsionadas. Dicha transformada dependiente del hablante puede considerarse como un procedimiento similar al del filtrado adaptado convencional, en el que la señal filtrada mediante un filtro adaptado no experimenta ninguna distorsión. Las características que se han transformado de este modo permiten, pues, una mejor diferenciación entre los hablantes. Dichas características transformadas se utilizan después en un procedimiento de comparación de reconocimiento de hablantes convencional.
A continuación, se describirá la presente invención únicamente a título de ejemplo, en relación con los dibujos adjuntos, en los que:
la Figura 1 muestra un sistema de telecomunicaciones que incluye un procesador de reconocimiento;
la Figura 2 muestra parte del procesador de reconocimiento de la Figura 1 que incluye un extractor de señales espectrales;
la Figura 3 muestra el extractor de señales espectrales de la Figura 2;
la Figura 4a es un diagrama de flujo que muestra el funcionamiento del procesador de reconocimiento de la Figura 1 durante la verificación del hablante;
la Figura 4b es un diagrama de flujo que muestra el funcionamiento del procesador de reconocimiento de la Figura 1 durante la identificación del hablante;
la Figura 5 muestra un ejemplo de una función de alineamiento entre dos vectores de característica M y R;
la Figura 6 muestra un ejemplo de función de ponderación que puede aplicarse durante el alineamiento;
la Figura 7 es un diagrama de flujo que muestra el cálculo de la distancia normalizada por el tiempo entre dos vectores de característica;
la Figura 8 es un ejemplo de modelo de Markov;
la Figura 9 muestra la matriz de transición y un ejemplo de vector de inicialización para el modelo de Markov de la Figura 8;
la Figura 10 ilustra el cálculo de las probabilidades directas para un modelo de Markov oculto de seis estados y
la Figura 11 ilustra una secuencia de estados posibles calculada mediante el algoritmo de Viterbi.
En la Figura 1 se muestra un sistema de telecomunicaciones que incluye un aparato de reconocimiento de hablantes que comprende un micrófono 1, que habitualmente forma parte de un microteléfono, una red de telecomunicaciones 2 (por ejemplo, una red de telecomunicaciones pública conmutada, PSTN, o una red de telecomunicaciones digitales), un procesador de reconocimiento 3 conectado para recibir una señal de voz desde la red 2 y un aparato de utilización 4 conectado al procesador de reconocimiento 3, destinado a recibir desde éste una señal de reconocimiento de voz que indica el reconocimiento o no de un hablante particular, y a emprender una acción en respuesta a dicha señal. Por ejemplo, el aparato de utilización 4 puede ser un terminal bancario accionado a distancia para efectuar transacciones bancarias. En muchos casos, el aparato de utilización 4 generará una respuesta audible para el usuario, transmitida por medio de la red 2 hasta un altavoz 5 que suele formar parte de un microteléfono.
Cuando una persona habla por el micrófono 1, se transmite una señal de voz analógica a través de la red 2, desde el micrófono 1 hasta el procesador de reconocimiento 3, donde la señal de voz se analiza, y se genera una señal que indica el reconocimiento o no del hablante particular que se transmite al aparato de utilización 4, que entonces emprende la acción adecuada para el reconocimiento o no del hablante particular. Si el procesador de reconocimiento lleva a cabo la identificación de hablantes, la señal indica el hablante identificado o indica que el hablante ha sido rechazado. Si el procesador de reconocimiento lleva a cabo la verificación de hablantes, la señal indica si el hablante es o no el hablante pretendido.
El procesador de reconocimiento necesita obtener datos relativos a la identidad de los hablantes para compararlos con la señal de voz. Esta adquisición de datos puede ser efectuada por el procesador de reconocimiento en una segunda modalidad de funcionamiento, en la que el procesador de reconocimiento 3 no está conectado al aparato de utilización 4, sino que recibe una señal de voz desde el micrófono 1 para generar los datos de reconocimiento para dicho hablante. No obstante, también son posibles otros procedimientos para obtener los datos de reconocimiento del hablante: por ejemplo, el hablante puede poseer una tarjeta que contiene los datos de reconocimiento del hablante y que puede introducir en un lector de tarjetas, a través del cual los datos se leen y transmiten por la red hasta el procesador de reconocimiento, antes de la transmisión de la señal de voz.
Habitualmente, el procesador de reconocimiento 3 desconoce la trayectoria emprendida por la señal desde el micrófono 1 hasta la red 2. El micrófono 1 puede, por ejemplo, estar conectado a través de un enlace de radio móvil analógico o digital a la red 2 o puede hallarse en otro país. El micrófono puede formar parte de uno de los microteléfonos receptores de la gran variedad de tipos y calidades existentes. Del mismo modo, dentro de la red 2, puede emprenderse cualquiera de las trayectorias de transmisión de la gran diversidad existente, incluidos los enlaces de radio, las trayectorias analógicas y digitales, etc.
La Figura 2 muestra parte del procesador de reconocimiento 3. Un extractor de señales espectrales 20 recibe voz digital, por ejemplo, desde una red telefónica digital o desde un convertidor analógico-digital. A partir de la voz digital, se obtiene un grupo de vectores de característica, cada uno de los cuales representa un grupo de muestras digitales contiguas. Por ejemplo, pueden recibirse muestras de voz a una velocidad de muestreo de 8 kHz, y un vector de característica puede representar una trama de 256 muestras contiguas, es decir, 32 ms de voz.
El extractor de señales espectrales 20 proporciona vectores de característica a un detector de punto final 24 que proporciona, como salidas, señales que indican el punto inicial y el punto final de la voz recibida. Los vectores de característica también se almacenan en memorias tampón de tramas 25 antes del procesamiento por el procesador de reconocimiento de hablantes 21.
\newpage
Los puntos iniciales y finales de voz se proporcionan utilizando un indicador de punto final convencional basado en la energía. En una técnica perfeccionada, pueden utilizarse señales de un reconocedor de voz configurado para reconocer una palabra concreta.
El procesador de reconocimiento de hablantes 21 recibe una pluralidad de vectores de característica y, a continuación, lee una matriz de transformadas dependientes del hablante asociada a un hablante particular de la memoria de transformadas de hablantes 22 y un modelo de referencia asociado al hablante particular de una memoria de modelos de hablantes 23. Entonces, el procesador de reconocimiento de hablantes procesa los vectores de característica recibidos dependiendo de la matriz de transformadas y el modelo de hablante recuperados y genera una señal de salida que indica la probabilidad de que el hablante representado por el modelo y la transformada dependiente del hablante recuperados haya emitido la voz representada por los vectores de característica recibidos. El funcionamiento del procesador de reconocimiento de hablantes se describirá con mayor detalle más adelante, en relación con la Figura 4a y la Figura 4b. El procesador de reconocimiento de hablantes 21 está integrado por los medios de transformación, los medios de comparación y los medios de salida de la presente invención.
En relación con la Figura 3, se describirá con mayor detalle el funcionamiento del extractor de señales espectrales 20. Un filtro de gran realce 10 recibe la forma de onda de voz digitalizada, por ejemplo, a una velocidad de muestreo de 8 kHz, como una secuencia de números de 8 bits y lleva a cabo un procedimiento de filtrado de gran realce (por ejemplo, ejecutando un filtro 1 - 0,95.z^{-1}), para incrementar la amplitud de las frecuencias altas.
Un procesador de ventana 11 lleva a cabo la inclusión en una ventana de una trama de muestras contiguas de la señal filtrada (es decir, multiplica las muestras por constantes de ponderación predeterminadas) mediante, por ejemplo, una ventana de Hamming, para reducir los artefactos parásitos generados por los bordes de las tramas. En una forma de realización preferida, las tramas se solapan, por ejemplo, en un 50%, para proporcionar una trama cada 16 ms.
A continuación, cada trama de 256 muestras incluidas en una ventana es procesada por un generador de coeficientes cepstrales en la escala Mel (MFCC) 12 para extraer un vector de característica MFCC que comprende un grupo de coeficientes MFCC (por ejemplo, 8).
El vector de característica MFCC se obtiene efectuando una transformada espectral, por ejemplo, una transformada rápida de Fourier (FTT) en cada trama de una señal de voz para obtener un espectro de la señal; integrando los términos del espectro en una serie de bandas anchas, que se distribuyen en una escala de "frecuencias Mel" a lo largo del eje de las frecuencias; calculando los logaritmos de la magnitud de cada banda y, finalmente, efectuando otra transformada (p.ej., una transformada discreta de coseno (DCT)) para generar el grupo de coeficientes MFCC para la trama. Se ha comprobado que la información útil en general está confinada a los coeficientes de orden inferior. La escala de frecuencias Mel son bandas de frecuencias espaciadas uniformemente en una escala de frecuencias lineal entre 0 y 1 kHz, y espaciadas uniformemente en una escala de frecuencias logarítmica por encima de 1 kHz.
El filtro de gran realce 10, el procesador de ventana 11, el generador de MFCC 12, el detector de punto final 24 y el procesador de reconocimiento de hablantes 21 pueden ser proporcionados por uno o más dispositivos o microprocesadores de tipo procesador de señales digitales (DSP) adecuadamente programados. Las memorias tampón de tramas 25, la memoria de transformadas de hablantes 22 y la memoria de modelos de hablantes 23 pueden ser proporcionadas dentro de dispositivos de memoria de lectura/escritura conectados a dichos dispositivos del procesador.
La Figura 4a muestra de forma esquemática el funcionamiento del procesador de reconocimiento de hablantes 21 durante la verificación de un hablante. El procesador de reconocimiento de hablantes recibe una secuencia de vectores de característica en la etapa 40, y un punto inicial detectado y un punto final detectado desde el detector de punto final 11. En la etapa 41, el procesador de reconocimiento de hablantes selecciona una matriz de transformadas dependientes de hablante de la memoria de transformadas de hablantes 22 para el hablante que el usuario dice ser y lee un correspondiente modelo que representa el mismo hablante que la matriz de características representativas de la memoria de modelos de hablantes 23.
La matriz de transformadas dependientes del hablante representa una palabra particular para un hablante particular. Comprende una secuencia representativa de vectores de característica de la palabra representada cuando es pronunciada por el hablante particular. La matriz de transformadas dependientes del hablante también se denomina aquí "secuencia de vectores de característica representativos". La secuencia de vectores de característica recibida correspondiente a la señal de voz entre el punto inicial detectado y el punto final detectado se alinea temporalmente con la matriz de transformadas dependientes del hablante utilizando el procedimiento de alineamiento dinámico temporal (DTW) en la etapa 42.
A continuación, se describirá con mayor detalle el alineamiento temporal efectuado en la etapa 42, en relación con las Figuras 5, 6 y 7.
La matriz de transformadas dependientes del hablante comprende una secuencia representativa de vectores de característica para una palabra particular:
M = m_{1}, m_{2}, ..., m_{i}, ..., m_{j}
Se recibe una secuencia de vectores de característica R = r_{1}, r_{2}, ...r_{j}...r_{J}. La secuencia de vectores de característica recibida se alinea temporalmente con la secuencia representativa de vectores de característica de la forma que se describirá a continuación.
En relación con la Figura 5, la secuencia representativa se muestra a lo largo del eje de las I y la secuencia recibida se muestra a lo largo del eje de las J.
La secuencia de puntos C = (i, j) representa una función de "alineamiento temporal" F que en líneas generales establece la equivalencia entre el eje del tiempo de la secuencia de vectores de características recibida y el de la secuencia representativa de vectores de característica:
F c(1), c(2), ..., c(k), ..., c(K), siendo c(k) = (r(k), m(k)).
Como medida de la diferencia entre dos vectores de característica M y R, se utiliza la distancia d(c)=d(i, j)= ||m_{i}, r_{j}||. La suma de las distancias de la función de alineamiento temporal es:
\sum\limits_{k=1}^{K}d(c(k))
que proporciona una medida de la corrección de la equivalencia establecida por la función de alineamiento temporal F entre un grupo de vectores de característica y otro. Esta medida llega a un valor mínimo cuando se determina que F ajusta de la mejor forma posible las diferencias de tiempo entre las dos secuencias de vectores de característica. Como alternativa, puede emplearse una función de ponderación y, por consiguiente, la suma ponderada:
\sum\limits_{k=1}^{K}d(c(k)) \cdot \omega (k)
Se utiliza \omega(k) para ponderar las medidas de distancia. Un ejemplo de función de ponderación es:
\omega(K)= (i(K) - i(K-1) + (j(K) - j (K-1)), mostrada de forma de diagrama en la Figura 6.
La distancia normalizada por el tiempo entre dos secuencias de vectores se define como:
D(M,R) = \forall
\uelm{F}{\hskip-0.2cm _{Min} }
\left[ \frac{\sum\limits_{k=1}^{K}d(c(k))\cdot \omega (k)}{\sum\limits_{k=1}^{K} \omega (k)}\right]
Pueden imponerse diversas restricciones sobre la función de alineamiento temporal F, como las descritas en el documento "Dynamic Programming Algorithm Optimisation for Spoken Word Recognition", Sakoe y Chiba, IEEE Transactions on Acoustics Speech and Signal Processing, vol. 26, nº 1, febrero de 1978. Las ecuaciones necesarias para calcular la distancia normalizada por el tiempo junto con la función de alineamiento temporal F que proporciona el valor mínimo son las siguientes:
g_{1}(c(1))=d(c(1) \cdot \omega (1))
g_{k}(c(k))= _{\forall c(k-1)}^{Min} [g_{k-1}(c(k-1))+d(c(k))\cdot \omega (k)]
que se conoce como ecuación de "programación dinámica" y:
D(M,R)= \frac{1}{\sum\limits_{k=1}^{K} \omega (k)}gK(c(k))
que es la distancia normalizada por el tiempo.
\newpage
Si se utiliza la función de ponderación mostrada anteriormente, entonces la ecuación de programación dinámica (DP) se convierte en:
1
y
\sum\limits_{K=1}^{K} \omega (K)=I+J
En la Figura 7, se proporciona un diagrama de flujo que muestra el cálculo de la distancia normalizada por el tiempo mediante la función de ponderación de la Figura 6.
En la etapa 74, los valores i y j se establecen inicialmente en 1. En la etapa 76, el valor inicial de g(1, 1) se establece en m_{1}-r_{1} (d(1, 1)) multiplicado por 2 (según la función de ponderación w). A continuación, i se incrementa en 1 en la etapa 78 y, a menos que i sea mayor que 1 en la etapa 80, se calcula la ecuación de programación dinámica en la etapa 86. Si i es mayor que 1, entonces j se incrementa en la etapa 88 e i se restablece en 1 en la etapa 96. A continuación, se repiten las etapas 78 y 86 hasta que al final se habrá calculado la ecuación de programación dinámica para todos los valores de I y J. Por último, la distancia normalizada por el tiempo se calcula en la etapa 92.
En un algoritmo más eficaz, sólo se calcula la ecuación de programación dinámica para valores de una ventana restrictiva de tamaño r, de tal forma que:
j-r \leq i \leq j +r
Entonces, la función de alineamiento temporal F puede determinarse efectuando "búsqueda con retroceso" mediante la ecuación siguiente:
C(K) = (I, J)
C(k-1)= i, j,
\hskip0.5cm
para la que
\hskip0.5cm
2 es un valor mínimo.
Una vez que se conoce la función de alineamiento temporal F
= C(1), C(2), C(3), ..., C(k), ..., C(K),
en la que C(k) = (r(k), m(k)), es posible determinar la secuencia de vectores de característica recibidos "alineados temporalmente":
\omega = \omega _{1}, \omega _{2}, ..., \omega _{1}
En el ejemplo mostrado en la Figura 5
C(1) = (1,1)
C(2) = (1,2)
C(3) = (2,2)
C(4) = (3,3)
C(5) = (4,3)
es decir, r_{1} está correlacionado con m_{1}, r_{1} está correlacionado con m_{2}, r_{2} está correlacionado con m_{2}, r_{3} está correlacionado con m_{3}, etc.
Como puede observarse, tanto r_{1} como r_{2} se han correlacionado con m_{2} y, por ello, deberá decidirse cuál de los vectores de característica recibidos se utiliza para el vector de característica alineado temporalmente en este caso. Como alternativa para elegir uno de los vectores de característica recibidos, puede calcularse un promedio de los vectores de característica recibidos que se correlaciona con un solo vector de característica representativo.
Si se utiliza el primero de dichos vectores de característica recibidos, entonces \omega_{p} = r_{q}, siendo:
q =
\delm{Min}{\hskip0.2cm ^{j(k)} }
\forall i(k)=p
Si se utiliza el último de dichos vectores de característica recibidos, entonces \omega_{p} =r_{s}, siendo:
s =
\delm{Max}{\hskip0.2cm ^{j(k)} }
\forall i(k)=p
Si se utiliza un promedio, entonces
\omega _{p}=Ave(r_{j(k)}) \forall i(k)=p
Por lo tanto, en el ejemplo de la Figura 5, suponiendo que se utiliza el primero de dichos vectores recibidos:
\omega_{1} = r_{1}
\omega_{2} = r_{2}
\omega_{3} = r_{3}
\omega_{4} = r_{4}
etc.
Como se apreciará, dicho procedimiento de alineamiento da por resultado una secuencia alineada de vectores de característica, en la que cada vector de característica de la secuencia alineada corresponde a un vector de característica de la secuencia representativa de vectores de característica.
En relación nuevamente con la Figura 4a, en una versión mejorada del procedimiento de transformación, se calcula también el promedio de cada uno de los vectores de característica alineados temporalmente recibidos con el correspondiente vector de característica de la matriz de transformadas dependientes del hablante en la etapa opcional 43. Si los vectores de característica alineados temporalmente recibidos se diferencian bastante de los correspondientes vectores de característica de la matriz de transformadas dependientes del hablante, entonces dicha etapa de promediación distorsionará mucho los vectores de característica alineados temporalmente recibidos, mientras que si los vectores de característica alineados temporalmente recibidos son parecidos a los correspondientes vectores de característica de la matriz de transformadas dependientes del hablante, entonces el procedimiento de promediación distorsionará muy poco la matriz de características recibidas. Dichas características transformadas deberán incrementar la diferenciación de todo posterior procedimiento de comparación.
Las características transformadas se utilizan, a continuación, en un procedimiento de comparación de reconocimiento de hablantes convencional en la etapa 44. En esta forma de realización de la presente invención, el modelo de hablante es proporcionado por un modelo de Markov oculto, y la comparación se efectúa utilizando el algoritmo de Viterbi, como se describirá seguidamente en relación con las Figuras 8 a 11. Se genera una medida de distancia que indica la probabilidad de que el hablante representado haya emitido la voz representada por los vectores de característica recibidos, y ésta se compara posteriormente con un umbral en la etapa 45. Si la diferencia es inferior al umbral, en la etapa 47, se acepta que el hablante corresponde a la plantilla almacenada y, en caso contrario, el hablante se rechaza en la etapa 46.
A continuación, se describirán los principios del modelado de voz mediante reconocimiento con modelos de Markov ocultos y algoritmos de Viterbi, en relación con las Figuras 8 a 11.
La Figura 8 muestra un ejemplo de HMM. Los cinco círculos 100, 102, 104, 106 y 108 representan los estados del HMM y, en un instante de tiempo concreto t, se considera que el modelo está en uno de los estados y que emite una observación O_{t}. En reconocimiento de voz o de hablantes, cada observación corresponde por lo general a un vector de característica.
En el instante t + 1, el modelo cambia a un nuevo estado o permanece en el mismo estado y, en cualquier caso, emite otra observación, y así sucesivamente. La observación emitida depende sólo del estado actual del modelo. El estado del momento t +1 sólo depende del estado del momento t (esta propiedad se conoce como propiedad de Markov). Las probabilidades de transición de un estado a otro pueden representarse en forma de matriz de transición de N x N estados (A - [a_{i, j}]) como se muestra en la Figura 9. La entrada de la i-ésima fila y la j-ésima columna de la matriz es la probabilidad de transición del estado s_{i} en el momento t al estado s_{j} en el momento t + 1. Puesto que la probabilidad de transición desde un estado es 1,0 (cuando el modelo permanece en el mismo estado, se considera una autotransición), cada fila de la matriz suma 1,0. En el ejemplo mostrado, la matriz de transición de estados sólo tiene entradas en el triángulo superior, puesto que este ejemplo es un modelo de izquierda a derecha, que no permite ninguna transición de "retroceso". En un HMM más general, se pueden producir transiciones de un estado cualquiera a otro estado cualquiera. Asimismo, se muestra un vector de inicialización (\sum) cuyo i-ésimo componente es la probabilidad de estar en el estado S_{i} en el momento t - 1.
Suponiendo que existan W de dichos modelos M_{1}, ..., M_{W}, representando cada uno de ellos un hablante particular, y que la señal de voz de un hablante desconocido se represente mediante una secuencia de T observaciones O_{1}, O_{2},
O_{3}, ..., O_{T}, el problema que se plantea entonces es el de determinar qué modelo tiene más probabilidades de haber emitido esta secuencia de observaciones, es decir, determinar k cuando
P_{k}= \underbrace{max}\limits_{i=1,2,3,...,W}Pr(O|M_{i})
Pr(O|M) se calcula de forma recursiva como se indica a continuación.
La probabilidad directa \alpha_{t}(j) se define como la probabilidad de que un modelo emita la secuencia de observaciones parciales O_{1}, O_{2}, ...,O_{t} que se halle en el estado S_{j} en el momento t.
Por consiguiente,
\hskip3,5cm
Pr(O|M)= \sum\limits_{j=1}^{N} \alpha _{T}(j)
La probabilidad de que el modelo esté en el estado S_{j} en el momento t+1 y de que emita la observación O_{t+1} puede calcularse a partir de las probabilidades directas en el tiempo t, las probabilidades de transición de estado (a_{i,j}) y la probabilidad b_{t}(O_{t+1}) de que el estado S_{j} emita la observación O_{t+1}, de la siguiente forma:
\alpha _{t+1}(j)=\left( \sum\limits_{i=1}^{N} \alpha _{t}(i)a_{t,j} \right)b_{j}(O_{t+1})
La Figura 10 ilustra el cálculo de \alpha_{t+1}(4) para un HMM de seis estados.
La recursión se inicializa efectuando \alpha_{t} (j) = \pi(j)b_{j}(O_{1}).
El denominado algoritmo de Viterbi es una variante del algoritmo anterior mucho más eficaz desde el punto de vista del cálculo. En el algoritmo de Viterbi, en vez de sumarse las probabilidades directas como se ha descrito, se utiliza el valor máximo de las probabilidades directas, o sea:
\phi_{t+1}(j)=\left(_{i=1,2,...,N}^{Max} \phi (i)a_{i,j} \right)b_{j}(O_{t+1})
Si se necesita recuperar la secuencia de estados más probables, entonces cada vez que se calcula \phi_{t}, se registra \psi_{t}(j), siendo \psi_{t}(j) el estado más probable en el tiempo t-1 y s_{j} el estado en el tiempo t1, es decir, el estado que aumenta al máximo el lado derecho de la ecuación anterior. El estado más probable en el tiempo T es el estado s_{k} para el cual \phi_{T}(j) es un valor máximo y \Delta_{t}(k) proporciona el estado más probable en el tiempo T-1, y así sucesivamente.
La Figura 11 ilustra una secuencia de estados posibles calculada mediante el algoritmo de Viterbi para una secuencia de observaciones (o de vectores de característica) de dieciséis tramas y un modelo de Markov oculto de izquierda a derecha de cinco estados.
La Figura 4b muestra el correspondiente funcionamiento del procesador de reconocimiento de hablantes 21 cuando lleva a cabo la identificación de hablantes. En este caso, se utiliza una pluralidad de transformadas de hablantes y los correspondientes modelos de hablantes. Las transformadas dependientes de hablante se seleccionan de una en una y se utilizan para alinear temporalmente los vectores de característica recibidos en la etapa 42. La secuencia de vectores de característica alineados temporalmente recibida se compara luego con el correspondiente modelo de hablante en la etapa 48. Como se ha descrito anteriormente en relación con la Figura 4a, puede efectuarse el promedio de cada uno de los vectores de característica alineados temporalmente recibidos con el correspondiente vector de característica de la matriz de transformadas dependientes del hablante en la etapa opcional 43. El hablante se identifica como el hablante conocido, indicando la medida de distancia la probabilidad más alta de que el hablante conocido corresponda al hablante desconocido. No obstante, si la medida de distancia más pequeña es superior a un umbral de la etapa 53, lo que indica que ninguno de los hablantes tiene una probabilidad especialmente alta de ser el hablante desconocido, el hablante se rechaza en la etapa 54, puesto que es desconocido para el sistema.
Históricamente, los procedimientos de comparación DTW han funcionado mejor para el reconocimiento de hablantes que los procedimientos de comparación HMM. Una de las diferencias entre comparar una secuencia de vectores de característica con un modelo de Markov oculto y comparar la misma secuencia de vectores de característica con una plantilla representativa utilizando un algoritmo de alineamiento dinámico temporal se halla en la etapa de comparación de patrones. En un procedimiento DTW, puede correlacionarse un vector de característica recibido con dos o más vectores de característica representativos, correspondientes a una trayectoria horizontal de la Figura 5. Sin embargo, en un procedimiento HMM, cada vector de característica recibido sólo puede correlacionarse con un estado y, entonces, no es posible ninguna trayectoria horizontal en la Figura 11. El alineamiento de la secuencia de vectores de característica recibida con la matriz de transformadas dependientes del hablante proporciona más posibilidades de correlación entre los vectores de características recibidos y los estados HMM y, por consiguiente, puede mejorar el rendimiento de un reconocedor de hablantes basado en HMM.
Otra diferencia entre un reconocedor de hablantes basado en HMM y un reconocedor de hablantes basado en DTW es que las plantillas DTW se basan por completo en la voz de una sola persona, mientras que las topologías HMM individuales se suelen definir antes de probar un grupo de modelos con la voz de una sola persona. En una forma de realización mejorada de la presente invención, los modelos de hablantes son proporcionados por HMM que tienen diferentes números de estados dependiendo de la voz de prueba de cada persona. Por ejemplo, puede utilizarse el número mínimo de vectores de característica de un grupo de pruebas de pronunciación de una palabra particular efectuadas por una persona particular para seleccionar el número de estados utilizados por el HMM para esa palabra particular y esa persona particular. El número de características de la matriz de transformadas dependientes del hablante puede definirse de forma parecida, en cuyo caso el número de características de la secuencia de vectores de característica representativos será igual al número de estados del modelo de Markov oculto.
Aunque, la presente invención se ha descrito en relación con los coeficientes MFCC, se sobrentenderá que es posible utilizar cualquier tipo de representación espectral adecuado como, por ejemplo, los coeficientes cepstrales de predicción lineal (LPC), los coeficientes cepstrales de transformada rápida de Fourier (FFT), los coeficientes de pares de líneas espectrales (LSP), etc.
Aunque se ha descrito un procedimiento de comparación en el que se utilizan modelos de Markov ocultos, la presente invención es igualmente aplicable al reconocimiento de hablantes en el que se emplean otros tipos de procedimientos de comparación como, por ejemplo, técnicas de alineamiento dinámico temporal o técnicas de redes neuronales.
La presente invención emplea una transformada dependiente del hablante para el hablante o los hablantes que se desea identificar. En la forma de realización de la presente invención descrita, las matrices de transformadas dependientes del hablante se proporcionan por medio de una secuencia representativa de vectores de característica para cada palabra.
Puesto que los procedimientos para obtener secuencias representativas de vectores de característica son muy conocidos, para comprender la presente invención, bastará con indicar que cada secuencia representativa de vectores de característica puede generarse mediante un procedimiento de recepción de una pluralidad de pronunciaciones de la misma palabra efectuadas por un hablante, y de obtención de un grupo de vectores de característica de la forma descrita anteriormente para cada una de las pronunciaciones. A continuación, las secuencias se alinean temporalmente como se ha indicado anteriormente (por ejemplo) y, por último, se efectúa el promedio de las secuencias de vectores de característica alineadas temporalmente de la pluralidad de pronunciaciones para obtener una secuencia promediada de vectores de característica que proporciona la matriz de transformadas dependientes del hablante.

Claims (12)

1. Procedimiento de reconocimiento de hablantes, que comprende las etapas siguientes:
recepción (40) de una señal de voz de un hablante desconocido;
almacenamiento de una pluralidad de transformadas de hablantes, estando asociada cada transformada a un hablante respectivo de una pluralidad;
almacenamiento de una pluralidad de modelos de hablantes, estando asociado cada modelo de hablante a un respectivo usuario de dicha pluralidad;
transformación (42 y 43) de la señal de voz recibida según una transformación seleccionada de las transiciones almacenadas, estando asociada la transformada seleccionada a un hablante particular;
comparación (44) de la señal de voz transformada con un modelo seleccionado de los modelos almacenados, representando el modelo seleccionado dicho hablante particular, y
provisión (47), como salida, de un parámetro que depende de la probabilidad de que el hablante desconocido sea dicho hablante particular.
2. Procedimiento según la reivindicación 1, en el que la etapa de transformación comprende las subetapas siguientes:
detección de un punto inicial de voz y un punto final de voz dentro de la señal de voz recibida;
generación de una secuencia de vectores de característica obtenidos a partir de la señal de voz recibida, y
alineamiento de la secuencia de vectores de característica correspondientes a la señal de voz, entre el punto inicial detectado y el punto final detectado, con una secuencia representativa de vectores de característica para dicho hablante particular, de tal forma que cada vector de característica de la secuencia alineada de vectores de característica corresponda a un vector de característica de la secuencia representativa de vectores de característica.
3. Procedimiento según la reivindicación 2, en el que la etapa de transformación comprende además la subetapa de promediación de cada vector de característica de la secuencia alineada de vectores de característica con el correspondiente vector de característica de la secuencia representativa de vectores de característica.
4. Procedimiento según cualquiera de las reivindicaciones anteriores, en el que el modelo es un modelo de Markov oculto.
5. Procedimiento según la reivindicación 4, en el que el modelo es un modelo de Markov oculto de izquierda a derecha.
6. Procedimiento según la reivindicación 5, cuando la reivindicación 4 está subordinada a la reivindicación 2 ó 3, en el que la secuencia representativa de vectores de característica comprende el mismo número de vectores de característica que el número de estados del modelo de Markov oculto.
7. Aparato para el reconocimiento de hablantes, que comprende:
medios de recepción (1) para recibir una señal de voz de un hablante desconocido,
una memoria de transformadas de hablantes (22) para almacenar una pluralidad de transformadas de hablantes, estando asociada cada transformada a un respectivo hablante de una pluralidad de hablantes;
una memoria de modelos de hablantes (23) para almacenar una pluralidad de modelos de hablantes, estando asociado cada modelo de hablante a un respectivo hablante de dicha pluralidad de hablantes;
medios de transformación (21) acoplados a los medios de recepción y la memoria de transformadas de hablantes y destinados a transformar la señal de voz recibida según una transformada de hablante seleccionada;
medios de comparación (21) acoplados a los medios de transformación y la memoria de modelos de hablantes y destinados a comparar la señal de voz transformada con el correspondiente modelo de hablante, y
medios de salida para proporcionar una señal que indica la probabilidad de que el hablante desconocido sea el hablante asociado a la transformada de hablante seleccionada.
\newpage
8. Aparato según la reivindicación 7, en el que la memoria de transformadas almacena cada una de dichas transformadas como una secuencia representativa de vectores de característica, y en el que los medios de transformación comprenden:
un detector de punto inicial y punto final para detectar el punto inicial y el punto final de la voz dentro de la señal de voz recibida,
un generador de vectores de característica para generar una secuencia de vectores de característica obtenida a partir de la voz de entrada, y
medios de alineamiento para alinear la secuencia de vectores de característica correspondientes a la señal de voz, entre el punto inicial detectado y el punto final detectado, con una secuencia representativa de vectores de característica, de tal forma que cada vector de característica de la secuencia alineada de vectores de característica resultante corresponda a un vector de característica de la secuencia representativa de vectores de característica.
9. Aparato según la reivindicación 8, en el que los medios de transformación comprenden además medios para promediar cada vector de característica de la secuencia alineada de vectores de característica con el correspondiente vector de característica de la secuencia representativa de vectores de característica.
10. Aparato según cualquiera de las reivindicaciones 7 a 9, en el que la memoria de modelos de hablantes está destinada a almacenar el modelo de hablante en forma de modelo de Markov oculto.
11. Aparato según la reivindicación 10, en el que la memoria de modelos de hablantes está destinada a almacenar el modelo del hablante en forma de modelo de Markov oculto de izquierda a derecha.
12. Aparato según la reivindicación 11, cuando la reivindicación 10 está subordinada a la reivindicación 8 ó la reivindicación 9, en el que la secuencia representativa de vectores de característica almacenada comprende el mismo número de vectores que el número de estados del correspondiente modelo de Markov oculto almacenado.
ES00905216T 1999-03-11 2000-02-25 Reconocimiento de hablantes. Expired - Lifetime ES2204516T3 (es)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
GB9905627 1999-03-11
GBGB9905627.7A GB9905627D0 (en) 1999-03-11 1999-03-11 Speaker recognition
EP99305278 1999-07-02
EP99305278 1999-07-02

Publications (1)

Publication Number Publication Date
ES2204516T3 true ES2204516T3 (es) 2004-05-01

Family

ID=26153521

Family Applications (1)

Application Number Title Priority Date Filing Date
ES00905216T Expired - Lifetime ES2204516T3 (es) 1999-03-11 2000-02-25 Reconocimiento de hablantes.

Country Status (11)

Country Link
US (1) US6922668B1 (es)
EP (1) EP1159737B9 (es)
KR (1) KR20010102549A (es)
CN (1) CN1148720C (es)
AT (1) ATE246835T1 (es)
AU (1) AU2684100A (es)
CA (1) CA2366892C (es)
DE (1) DE60004331T2 (es)
ES (1) ES2204516T3 (es)
IL (1) IL145285A0 (es)
WO (1) WO2000054257A1 (es)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002052546A1 (en) * 2000-12-27 2002-07-04 Intel Corporation Voice barge-in in telephony speech recognition
AU2003222132A1 (en) * 2002-03-28 2003-10-13 Martin Dunsmuir Closed-loop command and response system for automatic communications between interacting computer systems over an audio communications channel
GB2388947A (en) * 2002-05-22 2003-11-26 Domain Dynamics Ltd Method of voice authentication
US20060129399A1 (en) * 2004-11-10 2006-06-15 Voxonic, Inc. Speech conversion system and method
WO2006087799A1 (ja) * 2005-02-18 2006-08-24 Fujitsu Limited 音声認証システム
US7769583B2 (en) * 2006-05-13 2010-08-03 International Business Machines Corporation Quantizing feature vectors in decision-making applications
KR100826875B1 (ko) * 2006-09-08 2008-05-06 한국전자통신연구원 온라인 방식에 의한 화자 인식 방법 및 이를 위한 장치
CN101154380B (zh) * 2006-09-29 2011-01-26 株式会社东芝 说话人认证的注册及验证的方法和装置
JP5396044B2 (ja) * 2008-08-20 2014-01-22 株式会社コナミデジタルエンタテインメント ゲーム装置、ゲーム装置の制御方法、及びプログラム
US9959870B2 (en) * 2008-12-11 2018-05-01 Apple Inc. Speech recognition involving a mobile device
US8719019B2 (en) * 2011-04-25 2014-05-06 Microsoft Corporation Speaker identification
ES2605779T3 (es) * 2012-09-28 2017-03-16 Agnitio S.L. Reconocimiento de orador
US10013996B2 (en) * 2015-09-18 2018-07-03 Qualcomm Incorporated Collaborative audio processing
US10141009B2 (en) 2016-06-28 2018-11-27 Pindrop Security, Inc. System and method for cluster-based audio event detection
US9824692B1 (en) 2016-09-12 2017-11-21 Pindrop Security, Inc. End-to-end speaker recognition using deep neural network
CA3179080A1 (en) 2016-09-19 2018-03-22 Pindrop Security, Inc. Channel-compensated low-level features for speaker recognition
US10325601B2 (en) 2016-09-19 2019-06-18 Pindrop Security, Inc. Speaker recognition in the call center
US10553218B2 (en) * 2016-09-19 2020-02-04 Pindrop Security, Inc. Dimensionality reduction of baum-welch statistics for speaker recognition
WO2018106971A1 (en) * 2016-12-07 2018-06-14 Interactive Intelligence Group, Inc. System and method for neural network based speaker classification
US10397398B2 (en) 2017-01-17 2019-08-27 Pindrop Security, Inc. Authentication using DTMF tones
US11475113B2 (en) * 2017-07-11 2022-10-18 Hewlett-Packard Development Company, L.P. Voice modulation based voice authentication
US11114103B2 (en) 2018-12-28 2021-09-07 Alibaba Group Holding Limited Systems, methods, and computer-readable storage media for audio signal processing
US11355103B2 (en) 2019-01-28 2022-06-07 Pindrop Security, Inc. Unsupervised keyword spotting and word discovery for fraud analytics
US11019201B2 (en) 2019-02-06 2021-05-25 Pindrop Security, Inc. Systems and methods of gateway detection in a telephone network
US11646018B2 (en) 2019-03-25 2023-05-09 Pindrop Security, Inc. Detection of calls from voice assistants
US12015637B2 (en) 2019-04-08 2024-06-18 Pindrop Security, Inc. Systems and methods for end-to-end architectures for voice spoofing detection

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1989000240A1 (en) * 1987-07-03 1989-01-12 Holden, James Vaporiser nozzle
US5129002A (en) * 1987-12-16 1992-07-07 Matsushita Electric Industrial Co., Ltd. Pattern recognition apparatus
JP2733955B2 (ja) 1988-05-18 1998-03-30 日本電気株式会社 適応型音声認識装置
US6236964B1 (en) * 1990-02-01 2001-05-22 Canon Kabushiki Kaisha Speech recognition apparatus and method for matching inputted speech and a word generated from stored referenced phoneme data
US5167004A (en) * 1991-02-28 1992-11-24 Texas Instruments Incorporated Temporal decorrelation method for robust speaker verification
JP2795058B2 (ja) * 1992-06-03 1998-09-10 松下電器産業株式会社 時系列信号処理装置
US5528728A (en) * 1993-07-12 1996-06-18 Kabushiki Kaisha Meidensha Speaker independent speech recognition system and method using neural network and DTW matching technique
JP2797949B2 (ja) * 1994-01-31 1998-09-17 日本電気株式会社 音声認識装置
US5522012A (en) * 1994-02-28 1996-05-28 Rutgers University Speaker identification and verification system
US5864810A (en) * 1995-01-20 1999-01-26 Sri International Method and apparatus for speech recognition adapted to an individual speaker
US5706397A (en) 1995-10-05 1998-01-06 Apple Computer, Inc. Speech recognition system with multi-level pruning for acoustic matching
US5778341A (en) * 1996-01-26 1998-07-07 Lucent Technologies Inc. Method of speech recognition using decoded state sequences having constrained state likelihoods
US5995927A (en) * 1997-03-14 1999-11-30 Lucent Technologies Inc. Method for performing stochastic matching for use in speaker verification
US5893059A (en) * 1997-04-17 1999-04-06 Nynex Science And Technology, Inc. Speech recoginition methods and apparatus
US6076055A (en) * 1997-05-27 2000-06-13 Ameritech Speaker verification method
AU744678B2 (en) * 1997-10-15 2002-02-28 British Telecommunications Public Limited Company Pattern recognition using multiple reference models

Also Published As

Publication number Publication date
US6922668B1 (en) 2005-07-26
CA2366892C (en) 2009-09-08
DE60004331T2 (de) 2005-05-25
CA2366892A1 (en) 2000-09-14
WO2000054257A1 (en) 2000-09-14
IL145285A0 (en) 2002-06-30
CN1148720C (zh) 2004-05-05
DE60004331D1 (de) 2003-09-11
CN1343352A (zh) 2002-04-03
EP1159737B1 (en) 2003-08-06
EP1159737A1 (en) 2001-12-05
ATE246835T1 (de) 2003-08-15
EP1159737B9 (en) 2004-11-03
KR20010102549A (ko) 2001-11-15
AU2684100A (en) 2000-09-28

Similar Documents

Publication Publication Date Title
ES2204516T3 (es) Reconocimiento de hablantes.
EP0501631B1 (en) Temporal decorrelation method for robust speaker verification
JP4672003B2 (ja) 音声認証システム
Reynolds An overview of automatic speaker recognition technology
US6760701B2 (en) Subword-based speaker verification using multiple-classifier fusion, with channel, fusion, model and threshold adaptation
US8099288B2 (en) Text-dependent speaker verification
US5613037A (en) Rejection of non-digit strings for connected digit speech recognition
US6571210B2 (en) Confidence measure system using a near-miss pattern
US6401063B1 (en) Method and apparatus for use in speaker verification
ES2275700T3 (es) Procedimiento y aparato para crear plantillas de voz para un sistema de reconocimiento de voz independiente.
US20090076817A1 (en) Method and apparatus for recognizing speech
Kinnunen et al. Utterance verification for text-dependent speaker recognition: a comparative assessment using the RedDots corpus
US20040015357A1 (en) Method and apparatus for rejection of speech recognition results in accordance with confidence level
Wildermoth Text-independent speaker recognition using source based features
Pandey et al. Multilingual speaker recognition using ANFIS
EP1189202A1 (en) Duration models for speech recognition
Olsson Text dependent speaker verification with a hybrid HMM/ANN system
KR100673834B1 (ko) 문맥 요구형 화자 독립 인증 시스템 및 방법
JP2001350494A (ja) 照合装置及び照合方法
JP3456444B2 (ja) 音声判定装置及び方法並びに記録媒体
Wu et al. Application of simultaneous decoding algorithms to automatic transcription of known and unknown words
Casar et al. Analysis of HMM temporal evolution for automatic speech recognition and utterance verification.
Nedic et al. Recent developments in speaker verification at IDIAP
KR100349341B1 (ko) 유사단어 및 문장 인식시의 인식율 개선 방법
Thakur et al. Speaker Authentication Using GMM-UBM