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
Links
- 239000013598 vector Substances 0.000 claims abstract description 134
- 238000000034 method Methods 0.000 claims abstract description 39
- 230000015654 memory Effects 0.000 claims description 21
- 230000009466 transformation Effects 0.000 claims description 18
- 230000007704 transition Effects 0.000 claims description 11
- 238000012935 Averaging Methods 0.000 claims description 6
- 238000001514 detection method Methods 0.000 claims description 2
- 238000002864 sequence alignment Methods 0.000 claims 1
- 230000001419 dependent effect Effects 0.000 abstract description 24
- 230000001755 vocal effect Effects 0.000 abstract description 2
- 239000011159 matrix material Substances 0.000 description 17
- 230000000875 corresponding effect Effects 0.000 description 16
- 230000006870 function Effects 0.000 description 14
- 230000003595 spectral effect Effects 0.000 description 8
- 238000012545 processing Methods 0.000 description 7
- 230000002123 temporal effect Effects 0.000 description 6
- 238000012795 verification Methods 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 5
- 230000002596 correlated effect Effects 0.000 description 5
- 230000000694 effects Effects 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 239000000872 buffer Substances 0.000 description 2
- 230000004069 differentiation Effects 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 238000001228 spectrum Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- LFYJSSARVMHQJB-QIXNEVBVSA-N bakuchiol Chemical compound CC(C)=CCC[C@@](C)(C=C)\C=C\C1=CC=C(O)C=C1 LFYJSSARVMHQJB-QIXNEVBVSA-N 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000003071 parasitic effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L17/00—Speaker identification or verification techniques
- G10L17/02—Preprocessing operations, e.g. segment selection; Pattern representation or modelling, e.g. based on linear discriminant analysis [LDA] or principal components; Feature selection or extraction
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L17/00—Speaker identification or verification techniques
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L17/00—Speaker identification or verification techniques
- G10L17/04—Training, enrolment or model building
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/06—Creation 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:
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.5cmpara la que
\hskip0.5cm
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
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,5cmPr(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.
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)
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)
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 |
-
2000
- 2000-02-25 AU AU26841/00A patent/AU2684100A/en not_active Abandoned
- 2000-02-25 EP EP00905216A patent/EP1159737B9/en not_active Expired - Lifetime
- 2000-02-25 ES ES00905216T patent/ES2204516T3/es not_active Expired - Lifetime
- 2000-02-25 DE DE60004331T patent/DE60004331T2/de not_active Expired - Lifetime
- 2000-02-25 CA CA002366892A patent/CA2366892C/en not_active Expired - Fee Related
- 2000-02-25 CN CNB008048932A patent/CN1148720C/zh not_active Expired - Lifetime
- 2000-02-25 US US09/913,295 patent/US6922668B1/en not_active Expired - Lifetime
- 2000-02-25 KR KR1020017011470A patent/KR20010102549A/ko not_active Application Discontinuation
- 2000-02-25 IL IL14528500A patent/IL145285A0/xx unknown
- 2000-02-25 WO PCT/GB2000/000660 patent/WO2000054257A1/en not_active Application Discontinuation
- 2000-02-25 AT AT00905216T patent/ATE246835T1/de not_active IP Right Cessation
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 |