ES2242452T3 - Atenuacion de errores en un proceso distribuido de reconocimiento de voz. - Google Patents
Atenuacion de errores en un proceso distribuido de reconocimiento de voz.Info
- Publication number
- ES2242452T3 ES2242452T3 ES99972348T ES99972348T ES2242452T3 ES 2242452 T3 ES2242452 T3 ES 2242452T3 ES 99972348 T ES99972348 T ES 99972348T ES 99972348 T ES99972348 T ES 99972348T ES 2242452 T3 ES2242452 T3 ES 2242452T3
- Authority
- ES
- Spain
- Prior art keywords
- vectors
- parameters
- vector
- voice recognition
- replaced
- 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
- 238000000034 method Methods 0.000 title claims abstract description 99
- 230000008569 process Effects 0.000 title claims abstract description 49
- 239000013598 vector Substances 0.000 claims abstract description 260
- 230000005540 biological transmission Effects 0.000 claims abstract description 28
- 238000004891 communication Methods 0.000 claims description 21
- 238000005070 sampling Methods 0.000 claims description 18
- 238000001514 detection method Methods 0.000 claims description 10
- 230000004044 response Effects 0.000 claims description 6
- 230000000116 mitigating effect Effects 0.000 abstract description 6
- 125000004122 cyclic group Chemical group 0.000 description 10
- 238000012545 processing Methods 0.000 description 5
- 238000011002 quantification Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 2
- 230000010267 cellular communication Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 230000001373 regressive effect Effects 0.000 description 2
- 241000699670 Mus sp. Species 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000002238 attenuated effect Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000007704 transition 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
- G10L15/00—Speech recognition
- G10L15/28—Constructional details of speech recognition systems
- G10L15/30—Distributed recognition, e.g. in client-server systems, for mobile phones or network applications
-
- 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
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/005—Correction of errors induced by the transmission channel, if related to the coding algorithm
Landscapes
- Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Mobile Radio Communication Systems (AREA)
- Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)
- Use Of Switch Circuits For Exchanges And Methods Of Control Of Multiplex Exchanges (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Time-Division Multiplex Systems (AREA)
- Machine Translation (AREA)
- Telephonic Communication Services (AREA)
- Debugging And Monitoring (AREA)
- Multi Processors (AREA)
- Error Detection And Correction (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
Abstract
Un método para atenuar los errores en un proceso distribuido de reconocimiento de voz, proceso distribuido de reconocimiento de voz según el cual los parámetros de reconocimiento de voz están ordenados, en vectores que corresponden a ventanas de tiempo de muestreo, y los mencionados parámetros de reconocimiento de voz se reciben en una segunda localización, habiendo sido transmitidos desde una primera localización; método que comprende las etapas de: identificar un grupo que comprende uno, o más, de los mencionados vectores que han sufrido un error de transmisión, y determinar que parámetro o parámetros de reconocimiento de voz, han de ser reemplazados prediciendo para ello, desde los vectores recibidos sin error, un valor previsto para cada parámetro de reconocimiento de voz, dentro del mencionado grupo de vectores identificado, y reemplazar uno o más parámetros de reconocimiento de voz, dentro del grupo de vectores identificado, que están fuera de un umbral predeterminado, en relación consu respectivo valor previsto.
Description
Atenuación de errores en un proceso distribuido
de reconocimiento de voz.
La presente invención se refiere a un método para
la atenuación de errores en un sistema distribuido de
reconocimiento de voz. La presente invención también se refiere a un
aparato para atenuar los errores, en un sistema distribuido de
reconocimiento de voz. La presente invención es adecuada para, si
bien no se limita a, atenuar la transmisión de errores que afectan a
los parámetros de reconocimiento de voz, cuando estos se transmiten
sobre un enlace de comunicación de radio.
El reconocimiento de la voz es un proceso para
reconocer automáticamente sonidos, partes de palabras, palabras, o
frases de un discurso. Un proceso semejante puede emplearse como
interfaz entre el hombre y una máquina además, o en lugar de, usar
herramientas empleadas de forma más común tales como interruptores,
teclados, ratones, etc. Un proceso de reconocimiento de la voz
también se puede usar para recibir información automáticamente desde
alguna comunicación, o mensaje, hablados.
Se ha visto involucrados diversos métodos, y
continúan siendo mejorados, para proporcionar un reconocimiento de
la voz automático. Algunos métodos se basan en conocimientos
avanzados con estrategias heurísticas correspondientes, otros usan
métodos estadísticos.
En un típico proceso de reconocimiento de voz, la
voz a ser procesada se muestrea una serie de veces, en el curso de
una ventana de tiempo del muestreo, por ejemplo de 50 a 100 veces
por segundo. Los valores muestreados son procesados usando
algoritmos, para proporcionar parámetros de reconocimiento de voz.
Por ejemplo, un tipo de parámetro de reconocimiento de voz consiste
en un coeficiente conocido como coeficiente Mel Cepstral. Tales
parámetros de reconocimiento de voz, se ordenan en forma de
vectores, también conocidos como series, que pueden considerarse
como grupos o conjuntos de parámetros, organizados con cierto grado
de orden. Un formato típico, es que se produzca un vector para cada
ventana temporal del muestreo.
Las anteriores parametrización y disposición en
vectores, constituyen lo que puede llamarse la operación inicial de
un proceso de reconocimiento de voz. Los parámetros de
reconocimiento de voz ordenados en vectores, descritos arriba, se
analizan después, de acuerdo con técnicas de reconocimiento de voz,
en lo que podemos llamar la operación final
del proceso de reconocimiento de voz. En un proceso de reconocimiento de la voz, donde el proceso inicial y el proceso final se llevan a cabo en la misma localización, o en el mismo dispositivo, la probabilidad de errores introducidos en los parámetros de reconocimiento de voz, al ser pasados desde la parte inicial a la parte final, es mínima.
del proceso de reconocimiento de voz. En un proceso de reconocimiento de la voz, donde el proceso inicial y el proceso final se llevan a cabo en la misma localización, o en el mismo dispositivo, la probabilidad de errores introducidos en los parámetros de reconocimiento de voz, al ser pasados desde la parte inicial a la parte final, es mínima.
Sin embargo, en un proceso conocido como un
proceso de reconocimiento de voz distribuido, la parte inicial del
proceso de reconocimiento de voz se lleva a cabo remotamente,
respecto de la parte final. La voz es muestreada, parametrizada, y
los parámetros de reconocimiento de voz son cuantificados, y
después transmitidos a una segunda localización, por ejemplo sobre
un enlace de comunicaciones de un sistema de comunicaciones
establecido. A menudo la primera localización será un terminal
remoto, y la segunda localización será una estación central de
proceso. Los parámetros recibidos de reconocimiento de voz, son
analizados después, según técnicas de reconocimiento de voz, en la
segunda localización.
Para el uso en un proceso distribuido de
reconocimiento de voz, se puede considerar muchos tipos de enlaces
de comunicaciones, en muchos tipos de sistemas de comunicaciones. Un
ejemplo es un sistema convencional de comunicaciones de telefonía
fija, por ejemplo una red telefónica pública conmutada. Otro
ejemplo es un sistema de comunicaciones por radio, por ejemplo
TETRA. Otro ejemplo es un sistema de comunicaciones celular, por
radio. Un ejemplo de un sistema de comunicaciones celular, es un
sistema global para comunicaciones móviles (GSM), otro ejemplo son
sistemas tales como el Sistema de Telecomunicaciones Universales
Móviles (UMTS), actualmente bajo estandarización.
El uso de cualquier enlace de comunicaciones, en
cualquier sistema de comunicaciones, provoca la posibilidad de que
se introduzca errores en los parámetros de reconocimiento de voz,
cuando son transmitidos desde la primera localización a la segunda
localización, sobre el enlace de comunicaciones.
Es conocido el proporcionar técnicas de detección
de error, en sistemas de comunicaciones tales que pueda detectarse
la presencia de un error, en una parte dada de la información
transmitida. Una técnica bien conocida es la codificación de
redundancia cíclica.
Cuando la presencia de un error es detectada, se
emplea diferentes técnicas de atenuación, según la naturaleza de la
información transmitida. Las técnicas de atenuación de error,
aplicadas a otras formas de información, no son particularmente
adecuadas para atenuar los errores en parámetros de reconocimiento
de voz, debido a que las técnicas especializadas de reconocimiento
de voz especializadas a las que están sujetos los parámetros, y por
tanto es deseable proporcionar medios para atenuar los errores en
un proceso distribuido de reconocimiento de voz.
En el arte previo, un método de atenuación de
error aplicado a la codificación de la voz, en el que las tramas
dañadas son corregidas por interpolación, se revela en la Aplicación
de Patente Europea EP 0 459 358, pero en el arte previo no se
revela ni se sugiere un funcionamiento como el de la invención aquí
descrita.
La presente invención proporciona un medio para
atenuar el efecto de la transmisión de errores tales como los
descritos más arriba.
De acuerdo con la presente invención, se
proporciona un método de atenuación de errores en un sistema
distribuido de reconocimiento de voz, como el reivindicado en la
reivindicación 1.
De acuerdo con otro aspecto de la invención, se
proporciona un aparato para atenuar los errores en un sistema
distribuido de reconocimiento de voz, como el reivindicado en la
reivindicación 12.
Aspectos adicionales de la invención, son tal
como se reivindican en la reivindicaciones dependientes.
La presente invención se ocupa de proporcionar
medios para atenuar los errores que son particularmente apropiados
para la naturaleza de un proceso distribuido de reconocimiento de
voz, para las propiedades de los parámetros de reconocimiento de la
voz empleados en este, y para los vectores en los que estos están
ordenados.
Más en particular, la posibilidad de permitir
latencia en el proceso de reconocimiento de voz, es explotada
ventajosamente cuando, de acuerdo con un aspecto de la presente
invención, uno o más parámetros de reconocimiento de voz, en un
grupo de vectores identificado, son reemplazados por parámetros de
remplazamiento respectivos, determinados en referencia a uno, o más,
parámetros de reconocimiento de voz, desde un vector recibido
después del grupo de vectores identificado.
Además, cuando de acuerdo con otro aspecto de la
presente invención, la determinación del cuyo parámetro, o
parámetros, de reconocimiento de voz a ser reemplazados, se lleva a
cabo prediciendo, desde los vectores recibidos sin error, un valor
previsto para cada parámetro de reconocimiento de voz dentro del
mencionado grupo de vectores identificado, y reemplazando aquellos
parámetros de reconocimiento de voz, dentro del grupo identificado
de vectores que están fuera de un valor umbral predeterminado,
relativo a su valor previsto respectivo, entonces el efecto es
explotar ventajosamente la relación independiente en los errores
entre diferentes parámetros, dentro de un vector de reconocimiento
de voz.
A partir la descripción y dibujos siguientes, son
evidentes ventajas adicionales específicas.
La figura 1 es una ilustración esquemática de los
parámetros de reconocimiento de voz, dispuestos en vectores
correspondientes a ventanas de tiempo de muestreo, en una
realización de la presente invención;
la figura 2 es un diagrama de flujo de proceso,
de una realización de la presente invención; y
la figura 3 es una ilustración esquemática de
vectores recibidos consecutivamente, de una realización de la
presente invención.
En las realizaciones de ejemplo descritas más
abajo, los parámetros de reconocimiento de voz están ordenados en
vectores que corresponden a ventanas de tiempo de muestreo, como se
muestra esquemáticamente en la figura 1.
Una parte de la señal de voz 110 a ser procesada,
se muestra en la figura 1. Se muestra una señal de voz 100, en una
forma muy simplificada, puesto que en la práctica consistirá en una
secuencia de valores mucho más complicada.
Las ventanas de tiempo de muestreo, de las cuales
en la figura 1 se muestra una primera ventana de tiempo de muestreo
121, una segunda ventana de tiempo de muestreo 122, una tercera
ventana de tiempo de muestreo 123, y una cuarta ventana de tiempo
de muestreo 124, se imponen sobre la señal de voz, como se muestra
en la figura 1. En la realización descrita más abajo hay 100
ventanas de tiempo de muestreo por segundo. La señal de voz se
muestrea repetidamente, en el curso de cada ventana de tiempo de
muestreo.
En las realizaciones descritas a continuación, en
el proceso de reconocimiento de voz, se emplea catorce parámetros
de reconocimiento de voz. Los primeros doce de estos, son los
primeros doce coeficientes Mel Cepstral estáticos, es decir
c(m) =
[c_{1}(m), c_{2}(m),...,
c_{12}(m)]^{T},
donde m denota el número de ventana
de tiempo de muestreo. El decimotercer parámetro de reconocimiento
de voz empleado, es el coeficiente cepstral cero, es decir
c_{0}(m). El decimocuarto parámetro de reconocimiento de
voz empleado es un término logarítmico de la energía, es decir
log[E(m)]. En el arte se conoce bien los detalles
relacionados con estos coeficientes, y sus usos en procesos de
reconocimiento de voz, y no requieren aquí mayor descripción.
Además, se hace notar que la invención se puede llevar a cabo sin
otras combinaciones de coeficientes cepstral que constituyan los
parámetros de reconocimiento de voz, igual que con otras elecciones
de esquemas de parámetros de reconocimiento de voz, diferentes a
los coeficientes
cepstral.
Los catorce parámetros para cada ventana de
tiempo son ordenados, o formateados, en un vector correspondiente,
también conocido como una serie, como se muestra en la figura 1. El
vector 131 corresponde a una ventana de tiempo de muestreo 121, el
vector 132 corresponde a una ventana de tiempo de muestreo 122, el
vector 133 corresponde a una ventana de tiempo de muestreo 123, y
el vector 134 corresponde a una ventana de tiempo de muestreo 124.
Un vector semejante puede, en general, representarse como
Los parámetros de reconocimiento de voz son,
después, procesados previamente a su transmisión desde una primera
localización a una segunda localización. En la realización descrita
más abajo, esto se lleva a cabo como sigue. Los parámetros del
vector 131 se cuantifican. Esto se lleva a cabo cuantificando para
ello, directamente, el vector con un cuantificador de vector de
separadores. Los coeficientes se agrupan en pares, y cada par se
cuantifica usando un código de cuantificación de vector (VQ)
predeterminado, para cada par respectivo. El conjunto resultante de
valores índice, se usa para representar la trama de voz. Los
emparejamientos de coeficientes, mediante el parámetro inicial, son
tal como se muestran en la Tabla 1, junto con el tamaño del código
usado para cada par.
Emparejamientos de la Característica de Cuantificación de Vector de Separadores | ||||
Código | Tamaño | Matriz Peso (W^{i,i+1}) | Elemento 1 | Elemento 2 |
Q^{0,1} | 64 | I | c_{1} | c_{2} |
Q^{2,3} | 64 | I | c_{3} | c_{4} |
Q^{4,5} | 64 | I | c_{5} | c_{6} |
Q^{6,7} | 64 | I | c_{7} | c_{8} |
Q^{8,9} | 64 | I | c_{9} | c_{10} |
Q^{10,11} | 64 | I | c_{11} | c_{12} |
Q^{12,13} | 256 | no - identidad | c_{0} | log[E] |
El centroide VQ más próximo, se encuentra usando
una distancia euclidiana pesada para determinar el índice,
donde q_{j}^{i,i+1} denota el
vector de código j-ésimo en el código Q^{i,i+1}, N^{i,i+1} es
el tamaño del código, W^{i,i+1} la matriz peso (posiblemente la
identidad) a ser aplicada para el código Q^{i,i+1}, e
idx^{i,i+1}(m) denota el índice de código elegido para
representar el vector [y_{i}(m),
y_{i+1}(m)]^{T}.
Los índices que se producen son después
representados en forma de 44 bits. Estos 44 bits se sitúan en las
primeras 44 ranuras, como se muestra mediante el número de
referencia 141 en la figura 1, de una trama 150 del flujo de bits.
Los correspondientes 44 bits producidos por el siguiente vector, a
saber el vector 132, se sitúan en las siguientes 44 ranuras, como se
muestra mediante el número de referencia 142 en la figura 1, de la
trama 150 del flujo de bits. Los restantes bits de la trama del
flujo de bits 150, consisten en 4 bits de código de redundancia
cíclica, como se muestra mediante el número de referencia 146 en la
figura 1 estando, el valor de los bits, determinado de forma que
proporcione detección de error, de una forma conocida, para la
totalidad de los 88 bits precedentes de la trama del flujo de bits
150. De forma similar, los 44 bits proporcionados a partir del
vector 133 se sitúan en las primeras 44 ranuras, como se muestra
mediante el número de referencia 143 en la figura 1, de una segunda
trama del flujo de bits 155. Además, los correspondientes 44 bits
producidos para el siguiente vector, a saber el vector 134, se
sitúan en las siguientes 44 ranuras, como se muestra mediante el
número de referencia 144 en la figura 1, de la trama del flujo de
bits 155. Los restantes bits de la trama del flujo de bits 155,
consisten en 4 bits de código de redundancia cíclica, como se
muestra mediante el número de referencia 148 en la figura 1. Esta
disposición se repite para los siguientes vectores. El formato
descrito arriba de las tramas del flujo de bits, en el que los
datos de bits de dos vectores está ordenado en una sola trama de
flujo de bits combinada, es meramente a modo de ejemplo. Por
ejemplo los datos de cada vector podrían, en cambio, estar ordenados
en una sola trama de flujo de bits, que contiene sus propios bits
de detección de error. De forma similar, el número de ranuras por
trama de flujo de bits se da meramente a modo de ejemplo.
Con el objetivo de evitar confusión alguna, se
hace notar que las tramas del flujo de bits descritas arriba, no
deberían confundirse con las tramas de transmisión que se usa
después en la transmisión de los datos del flujo de bits, sobre en
enlace de comunicaciones del sistema de comunicaciones, en el que
se transmite los datos desde una primera localización a una segunda
localización, por ejemplo las tramas temporales de acceso múltiple
por división de tiempo (TDMA), de un sistema de comunicaciones de
radio celular GSM, que es el sistema de comunicaciones empleado en
la realizaciones que se describe aquí. En el actual ejemplo, la
primera localización consiste en una estación de usuario remoto, y
la segunda, es decir la localización receptora, consiste en una
estación de procesamiento centralizada, que puede estar localizada,
por ejemplo, en una estación base de un sistema de comunicaciones
celular. Por lo tanto, en las realizaciones que se describe aquí,
los parámetros de reconocimiento de voz se transmiten desde la
primera localización a la segunda localización, sobre en enlaces de
comunicaciones. Sin embargo, debe apreciarse que la naturaleza de
la primera localización y de la segunda localización, dependerá del
tipo del sistema de comunicaciones en consideración, y de la
disposición del proceso distribuido de reconocimiento de voz en
este.
Las tramas del flujo de bits son reconstruidas, a
partir del formato de transmisión, en la segunda localización,
después de que esta las reciba.
Así, se ha descrito más arriba un proceso
distribuido de reconocimiento de voz, en el que los parámetros de
reconocimiento de voz están ordenados en vectores, que corresponden
a ventanas de tiempo del muestreo, y los mencionados parámetros de
reconocimiento de voz, se reciben en una segunda localización,
habiendo sido transmitidos desde una primera localización. El método
de atenuar los errores en un proceso de reconocimiento de voz
semejante, acorde con una primera realización, se muestra en el
diagrama de flujo del proceso 200 de la figura 2. Con referencia a
la figura 2, la caja de función 210 muestra el paso de identificar
un grupo que comprende uno, o más, de los mencionados vectores que
han padecido un error de transmisión. En la realización actual, la
detección de error se lleva a cabo mediante comparar los 4 bits de
codificación de redundancia cíclica, como son 146, 148, con los
contenidos de las tramas de flujo de bits respectivas 150, 155,
usando métodos conocidos de código de redundancia cíclica. Esto
identificará, en el ejemplo actual, cualquier trama aislada del
flujo de bits, que ha sufrido un error de transmisión. Así, en el
ejemplo actual, el grupo identificado de vectores consiste en dos
vectores, que es el par de vectores desde una trama del flujo de
bits. Si, en otro ejemplo, cada trama del flujo de bits con medios
de detección de error contiene solo un vector, el grupo
identificado de vectores sería un solo vector. Debe apreciarse que
la forma exacta, y la razón técnica, que determinan cuantos vectores
hay en un grupo semejante identificado, dependerá de las diferentes
formas en las que han sido dispuestos los vectores en flujos de bits
y, además, de como se ha impuesto un método de detección de error
sobre lo anterior. En particular, otros métodos de detección de
error, aparte de la codificación de redundancia cíclica empleada en
la realización actual, pueden proporcionar otros números de
vectores en un grupo identificado. Además, para cualquier
disposición de flujo de bits dada, las decisiones secundarias sobre
como procesar la información de error, pueden también jugar un
papel en la determinación del número de vectores en un grupo
identificado. Por ejemplo, con referencia a la realización actual,
podría decidirse, en aras de conservar la energía del proceso,
considerar solo si contienen un error lotes de tramas del flujo de
datos, incluso si el medio de detección de error fuera físicamente
capaz de detectar el error con más definición.
Los parámetros de reconocimiento de voz, se
reciben desde las tramas del flujo de datos, llevando a cabo para
ello una versión inversa del procedimiento de cuantificación de
vector, descrito más arriba. Más en concreto, se extrae los índices
del flujo de datos y, usando estos índices, se reconstruye los
vectores de la forma
La caja de función 220 muestra el siguiente paso
de la realización actual, a saber la etapa de reemplazar uno, o más
parámetros de reconocimiento de voz, en el grupo de vectores
identificado. En la realización actual, el orden de las diferentes
etapas de procesamiento, se lleva a cabo de forma que todos los
parámetros de reconocimiento de voz se reciben desde las tramas del
flujo de bits, y son almacenados temporalmente, antes del
remplazamiento de uno o más parámetros de reconocimiento de voz. Sin
embargo, se hace notar que el, o los parámetros de reconocimiento
de voz, podrían alternativamente ser reemplazados, alterando para
ello la información del flujo de bits, de una forma correspondiente,
antes de recibir realmente físicamente los parámetros de
reconocimiento de voz, incluyendo los de remplazamiento nuevamente
introducidos, desde el formato de flujo de bits.
En la siguiente descripción de como se determina
los parámetros de reconocimiento de voz, de remplazamiento, se hace
referencia a la figura 3, que muestra los vectores
131-134, como los ya descritos con referencia a la
figura 1, más 6 vectores adicionales 135-140,
recibidos consecutivamente a continuación. En la realización
actual, uno o más parámetros de reconocimiento de voz, en el
mencionado grupo identificado de vectores, son reemplazados por los
respectivos parámetros de remplazamiento, determinados con
referencia a uno más parámetros de reconocimiento de voz, desde un
vector recibido después del mencionado grupo identificado de
vectores. Así, en la realización actual, cuando se detecta un error
para la trama de flujo de bits 155, y es así identificado el grupo
que consiste en vectores 133 y 134, entonces uno o más de los
parámetros de reconocimiento de voz en los vectores 133 y 134, es
reemplazado por respectivos parámetros de remplazamiento,
determinados con referencia a uno o más parámetros de
reconocimiento de voz, desde uno de los vectores
135-140 de un vector recibido después del vector
140, y no mostrado en la figura 3. Se hace notar que la
determinación con referencia a tales vectores seguidos, no excluye
la posibilidad de que también se incluya, en el proceso de
determinación, referencia a vectores precedentes, tal como en 131,
132, u otros no
mostrados.
mostrados.
Tales vectores de referencia recibidos después
del grupo identificado de vectores, proporcionan un método que
puede llevarse a cabo de forma particularmente eficaz, con respecto
a reconocimiento de la voz, debido a que la latencia puede
explotarse ventajosamente para proporcionar un mejor rendimiento
desde el dispositivo final de reconocimiento de la voz. Aplicar
tales métodos, supone el almacenamiento temporal de vectores
recibidos en una memoria intermedia, antes de la salida a la parte
final. Los vectores recibidos después del grupo identificado de
vectores, se usan para computar los valores de remplazamiento. Por
lo tanto, habrá un incremento de la latencia antes de que los
vectores de error atenuado puedan hacerse disponibles para la parte
final. Esta latencia no será, usualmente, un problema para el
dispositivo de reconocimiento final que, especialmente si es parte
de un servidor centralizado, tendrá los suficientes recursos de
computación como para superar fluctuaciones temporales de latencia,
causadas por tales métodos de atenuación de error.
Más en concreto, en la actual realización todos
los parámetros de reconocimiento de voz de cada vector del
mencionado grupo, son reemplazados mediante reemplazar los vectores
completos, y cada respectivo vector entero reemplazado, es
reemplazado por una copia de aquel, de entre el vector precedente o
el siguiente sin error, que sea más cercano, en el orden de
recepción, al vector que está siendo reemplazado. Puesto que para
los actualmente descritos, modo de transmisión y modo de detección
de error, el grupo de vectores identificados consisten en un par de
vectores consecutivos, entonces el primer vector del mencionado
par, es reemplazado por el segundo vector de un vector precedente
sin error, y el segundo vector del mencionado par, es reemplazado
por el primer vector de un vector siguiente sin error. En el caso
actual, si por ejemplo se identifica los vectores 135 y 136 como un
par de vectores que tienen un error, todo el vector 135 es
reemplazado por una copia de un vector 134, y todo el vector 136 es
reemplazado por una copia del vector 137, toda vez que los vectores
134 y 137 no son ellos mismos partes de pares que han sido
identificadas como habiendo sufrido un error de transmisión. Si,
digamos, el par de vectores 133 y 134 son, de hecho, ellos mismos
también un par de vectores con un error, entonces ambos vectores
135 y 136 serán reemplazados por una copia del vector 137, el primer
vector correcto conocido que los sigue, debido a que es más cercano
en el orden de recepción, a cada uno, que el vector 132, que es el
vector correcto conocido más cercano que le precede. En este último
escenario, los vectores 133 y 134 serán, ambos, reemplazados por
copias del vector de 132, siendo este el vector más cercano, en el
orden de recepción, de entre aquellos vectores que se sabe son
correctos.
En una versión alternativa de la realización
actual, en la que los vectores enteros son reemplazados, en lugar
de simplemente usar copias del siguiente, o el precedente, de los
vectores recibidos que se sabe son correctos, cada vector completo
respectivo reemplazado, es reemplazado por un vector determinado,
por medio de una técnica de interpolación. La persona cualificada
elegirá una técnica de interpolación apropiada, acorde con los
requerimientos del proceso de reconocimiento de voz particular en
consideración. Ejemplos de métodos de interpolación que pueden ser
empleados, son los siguientes:
(i) interpolación lineal - bajo este método, para
cada parámetro se usa los valores tomados desde uno, o más,
vectores antes, y después, de los vectores que se sabe que contienen
errores, para determinar una constante y un gradiente que definen
la ecuación de una línea recta entre estos. Los valores
interpolados que se usa para reemplazar cada parámetro en los
vectores con errores, son calculados después usando la ecuación
para las rectas.
(ii) predicción regresiva - este método involucra
tomar uno o más vectores sin error, después de vectores que se sabe
tienen errores. Para cada parámetro se genera el valor de
remplazamiento, desde una suma pesada de estos elementos de vector
en la secuencia de vectores, siendo este método conocido como
predicción. Los pesos son predeterminados trabajando sobre los
parámetros de vectores de voz que no tienen errores.
(iii) ajuste a curva - este método involucra
tomar uno, o más vectores antes, y después, de vectores que se sabe
contienen errores. Este método es similar a la interpretación
lineal, pero en lugar de ajustarse a una línea recta, el ajuste se
lleva a cabo usando una curva, en base a los parámetros buenos, y
usando la ecuación de la curva para crear los valores de
remplazamiento para cada parámetro.
En las anteriores realizaciones, los parámetros
de reconocimiento de voz fueron reemplazados, mediante de
reemplazar vectores completos. Sin embargo, en una realización
adicional de la presente invención, que se describe más abajo, no
todos los parámetros del reconocimiento de voz dentro de un vector
son necesariamente reemplazados.
En la realización descrita a continuación, la
determinación de qué parámetro o parámetros han de ser
reemplazados, se lleva a cabo prediciendo para ello, desde vectores
recibidos sin error, un valor previsto para cada parámetro de
reconocimiento de voz, dentro del mencionado grupo identificado de
vectores, y reemplazar esos parámetros de reconocimiento de voz,
dentro del grupo identificado de vectores, que están fuera de un
umbral predeterminado relativo a su valor previsto respectivo.
Considérese el caso en el que los vectores 133 y
134 se identifican como un par de vectores que tienen error. Se
determina un valor previsto para cada uno de los parámetros de
reconocimiento de voz c_{1}(3),
c_{2}(3),...,c_{12}(3), c_{0}(3),
y
log[E(3)] del vector 133, y para cada uno de los parámetros de reconocimiento de voz c_{1}(4), c_{2}(4),...,c_{12}(4), c_{0}(4), y log[E(4)] del vector 134. El valor previsto se determina por cualquier método de predicción adecuado. Por ejemplo, técnicas de predicción descritas más arriba con respecto a los vectores completos, tales como interpretación lineal, predicción regresiva, y ajuste a curva, pueden ser aplicadas a parámetros de reconocimiento de voz individuales. Cuando se aplica a parámetros de reconocimiento de voz individuales, se usa los parámetros correspondientemente posicionados dentro de los otros vectores, por ejemplo en el caso de calcular un valor previsto para c_{1}(3), se usa los valores de los parámetros de reconocimiento de voz de la posición correspondiente c_{1}(1), c_{1}(2),...,c_{1}(5), c_{1}(6), y sucesivos.
log[E(3)] del vector 133, y para cada uno de los parámetros de reconocimiento de voz c_{1}(4), c_{2}(4),...,c_{12}(4), c_{0}(4), y log[E(4)] del vector 134. El valor previsto se determina por cualquier método de predicción adecuado. Por ejemplo, técnicas de predicción descritas más arriba con respecto a los vectores completos, tales como interpretación lineal, predicción regresiva, y ajuste a curva, pueden ser aplicadas a parámetros de reconocimiento de voz individuales. Cuando se aplica a parámetros de reconocimiento de voz individuales, se usa los parámetros correspondientemente posicionados dentro de los otros vectores, por ejemplo en el caso de calcular un valor previsto para c_{1}(3), se usa los valores de los parámetros de reconocimiento de voz de la posición correspondiente c_{1}(1), c_{1}(2),...,c_{1}(5), c_{1}(6), y sucesivos.
Así, en la realización actual, la relación
independiente entre diferentes parámetros, dentro de un vector de
reconocimiento de voz, se explota de forma ventajosa.
Se emplea un valor umbral predeterminado,
relativo al valor previsto. El valor umbral se ajusta de acuerdo
con los requerimientos del proceso concreto en consideración. Puede
ser alterado en el tiempo, en base a la experiencia ganada dentro
del proceso en consideración, o en otros procesos, o en pruebas, o
simulaciones o similares. El valor umbral puede también variarse
automáticamente, en base a una retroalimentación en curso. Por
ejemplo, puede ser variado según el nivel de errores que se está
encontrando. El valor umbral puede también ser una función del valor
previsto. El valor umbral puede también variarse en función del
parámetro de reconocimiento de voz, es decir de si es el parámetro
de c_{1}(m) o c_{2}(m) o c_{3}(m) y así
sucesivamente, lo que es especialmente ventajoso cuando la invención
se aplica a procesos de reconocimiento de voz en los que ciertos
parámetros de reconocimiento de voz son más importantes para el
éxito del proceso de reconocimiento de voz que otros. Este es, sin
duda, el caso en el ejemplo actual, donde el proceso de
reconocimiento de voz es más sensible a los coeficientes Mel
Cepstral de orden medio, tales como c_{3}(m),
c_{4}(m) y c_{5}(m), que a los órdenes mayores
tales como c_{10}(m), c_{11}(m) y
c_{12}(m).
En una versión de la realización actual, si más
de un número especificado de parámetros de reconocimiento de voz,
dentro del mencionado grupo identificado de vectores, está fuera de
sus respectivos valores umbral predeterminados, entonces todos los
parámetros de reconocimiento de voz del mencionado grupo
identificado de vectores, son reemplazados. En el caso actual, si
más de 4 parámetros de reconocimiento de voz, desde cualquiera de
los 28 parámetros de reconocimiento de voz contenidos dentro de los
vectores 133 y 134, está fuera de sus respectivos umbrales
predeterminados, entonces la totalidad de los parámetros de
reconocimiento de voz de los vectores 133 y 134, son reemplazados.
La elección del número especificado se hace de acuerdo con los
requisitos del proceso de reconocimiento de voz concreto, en
consideración. Al reemplazar los vectores enteros de este modo, hay
una tendencia ventajosa a eliminar parámetros de reconocimiento de
voz que es probable sean erróneos, incluso aunque estos hayan caído
dentro del nivel de los umbrales anteriormente descritos.
En la realización actual, los parámetros de
reconocimiento de voz son reemplazados por los respectivos valores
previstos, usados en la etapa de determinar que parámetros de
reconocimiento de voz han de ser reemplazados. Esto es eficaz, por
cuanto que estos valores ya han sido determinados.
En otra versión de la realización actual,
aquellos parámetros de reconocimiento de voz que están dentro de un
umbral predeterminado en relación con su valor previsto, se comparan
con un conjunto de vectores de referencia, para encontrar el vector
de mejor ajuste a partir del mencionado conjunto de vectores de
referencia, y aquellos parámetros de reconocimiento de voz que están
fuera de un umbral predeterminado, relativo a su respectivo valor
previsto, son reemplazados por parámetros de reconocimiento de voz
respectivos, a partir del mencionado valor de mejor ajuste.
Considérese de nuevo el caso en el que se
identifica vectores 133 y 34, como un par de vectores que tienen
error. Considérese, además, que el único parámetro de reconocimiento
de voz desde los dos vectores, a ser determinado fuera de un rango
umbral es c_{1}(3) del vector 133. Después, usando una
técnica de correlación, se determina el ajuste más cercano entre lo
que queda del vector 133 y un conjunto de vectores de
referencia.
\newpage
Dentro del conjunto de vectores de referencia, el
número de vectores de referencia y los contenidos de estos son
elegidos de acuerdo con los requisitos del proceso de reconocimiento
de voz concreto, en consideración. Estas elecciones involucrarán un
equilibrio, entre la precisión y la sensibilidad de la corrección
de error, comparado con los niveles de procesamiento requeridos. Los
criterios para determinar qué vector de referencia representa el
mejor ajuste, para las restantes partes de un vector, después de
que son descontados los parámetros fuera del umbral, también se
implementan de acuerdo con los requisitos del proceso de
reconocimiento de voz concreto, en consideración. Se emplea técnicas
de correlación conocidas, tales como computar la distancia
euclídea. La forma en que estas se adaptan al método actual, es que
solo los elementos de vector que están dentro del umbral, se
incluyen en el cálculo de la distancia.
En otra versión de la actual realización, los
parámetros de reconocimiento de voz desde uno, o más, vectores
vecinos, también se comparan con el conjunto de vectores de
referencia, y se elige el que concuerde mejor, con respecto a una
pluralidad de vectores de referencia consecutivos. Considérese de
nuevo el caso en el que los vectores 133 y 134 son identificados
como un par de vectores que tienen un error, y además que el único
parámetro de entre los dos vectores, a ser determinado fuera del
rango umbral, es c_{1}(3) del vector 133. El resto del
vector 133 (es decir los parámetros de reconocimiento de voz
c_{2}(3), c_{3}(3),..., c_{12}(3),
c_{0}(3), y log[E(3)]), más la totalidad de
los vectores adyacentes 132 y 134, se comparan en bloque con
respecto a los grupos de referencia de 3 vectores de referencia
consecutivos.
En las realizaciones descritas más arriba, la
etapa de identificar un grupo que comprende uno o más de los
mencionados vectores, que hayan sufrido un error de transición,
consiste en comparar los 4 bits de codificación de redundancia
cíclica, como son 146, 148, con los contenidos de las respectivas
tramas de flujo de bits 150, 155, usando métodos de código de
redundancia cíclica conocidos. Sin embargo, en realizaciones
adicionales de la presente invención, la etapa de identificar un
grupo que comprende uno o más de los mencionados vectores que han
padecido un error de transmisión, puede incluir la valoración de
los propios parámetros de reconocimiento de voz. Esto puede ser como
un enfoque adicional, tipo red de seguridad, llevado a cabo, así
como un método convencional tal como codificación de redundancia
cíclica, o alternativamente puede ser usado en lugar de métodos
convencionales, tales como codificación de redundancia cíclica, en
el que es el único modo de identificar grupos de vectores con
error.
En la primera de tales realizaciones, se
determina los respectivos valores previstos para los parámetros de
reconocimiento de voz. Esto se hace de cualquiera de entre las
mismas formas que han sido descritas antes, con respecto a las
realizaciones que determinan qué parámetros de reconocimiento de
voz iban a ser reemplazados, aunque cuando se está llevando a cabo
este, como el único medio para identificar errores, entonces desde
luego no es posible incluir los detalles incluidos más arriba,
sobre que solo se usa los vectores recibidos sin error, en el
cálculo de la predicción, en otro sentido que la entrada de
funciones de interpolación. Se determina uno o más niveles umbral,
relativos a los valores previstos. Esto también se lleva a cabo de
cualquiera de las mismas formas que han sido descritas más arriba,
con respecto a las realizaciones que determinan que parámetros de
reconocimiento de voz iban a ser reemplazados. Sin embargo,
típicamente los umbrales empleados aquí, serán mayores que los
usados en la situación ya descrita. Además, se hace notar que se
determina uno o más niveles umbral. Por ejemplo, en el caso de
determinar dos niveles umbral, uno puede corresponder a un error
altamente probable, mientras que el otro puede corresponder a una
probabilidad externa de un error. Después, los grupos de vectores
que se considera que han padecido un error de transmisión, se
identifican en respuesta a un análisis pesado de cuantos parámetros
de reconocimiento, en un grupo de vectores, están fuera de cada uno
de los mencionados uno, o más, niveles umbral. Por ejemplo, en el
caso actual, el análisis pesado podría ser de forma que si el
umbral de error altamente probable se excede, entonces se asigna una
puntuación 5, y si una probabilidad fuera de un umbral de error se
excede, entonces se asigna una puntuación de 1, y el grupo de
vectores pueden ser identificados como que tienen un error de
transmisión, si la puntuación es de 6 o más. Esto es solo un ejemplo
de un esquema de análisis pesado, que puede ser empleado, y la
elección del esquema concreto, incluidos otros mucho más
complicados que el que se acaba de describir, se puede adoptar de
acuerdo con las necesidades del proceso concreto descrito de
reconocimiento de voz, en consideración.
La segunda de tales realizaciones adicionales,
incluye una etapa de determinar una diferencia entre parámetros de
reconocimiento de voz correspondientes, desde diferentes vectores
dentro de un grupo de vectores. Con referencia a los vectores 133 y
134 por ejemplo, se calcula la diferencia entre c_{1}(3) y
c_{1}(4), se calcula la diferencia entre c_{2}(3)
y c_{2}(4), se calcula la diferencia entre
c_{3}(3) y c_{3}(4), y así sucesivamente. Los
grupos de vectores que se considera que han sufrido un error de
transmisión, se identifican en respuesta a un análisis de cuantos,
de las mencionadas diferencias, están fuera de un nivel umbral
predeterminado. Se fija un nivel umbral predeterminado apropiado, y
puede ser alterado en el tiempo, haciendo uso de cualquiera de las
mismas formas para hacerlo que se ha descrito más arriba, con
respecto a las realizaciones que determinan que parámetros de
reconocimiento de voz han de ser reemplazados. En el caso actual,
se identifica que el grupo de vectores que ha sufrido un error de
transmisión, si dos o más de las mencionadas diferencias calculadas
están fuera del nivel umbral. Esta elección de cuantas se necesita
que estén fuera del nivel umbral, es solo a título de ejemplo, y en
general se elegirá de acuerdo con las necesidades del proceso
concreto distribuido de reconocimiento de voz, en consideración. Se
puede aplicar un aspecto adicional a las realizaciones, en el que
una parte de los parámetros de reconocimiento de voz, del proceso
de cuantificación del vector, se agrupan en pares, como se ha
descrito más arriba con referencia a la tabla 1. En este caso, si
la diferencia para cada uno de los parámetros de reconocimiento de
voz, en un índice de código dado, está más allá del umbral,
entonces el índice de código se etiqueta como que ha recibido un
error, es decir, en referencia a la tabla 1, si sea la diferencia
c_{3} o la diferencia c_{4} están más allá que el umbral,
entonces el índice de código Q^{2,3} se etiqueta como que ha
recibido un error. Después, si más de un número dado, por ejemplo
2, de índices de código, de entre los 7 en un grupo de vectores,
está etiquetado como que ha recibido un error, el grupo de vectores
se identifica como que ha sufrido un error de transmisión.
Claramente, cuando se elige los niveles umbral y se elige cuantas
diferencias debe haber fuera de los niveles umbral, se valorará
consideraciones de equilibrio, de acuerdo con las necesidades del
proceso concreto distribuido de reconocimiento de voz, en
consideración.
En el caso de las realizaciones descritas más
arriba, las etapas de procesamiento de datos descritas son llevadas
a cabo por un dispositivo de procesamiento de señal digital
programable, tal como uno seleccionado entre la familia DSP56xxx
(marca registrada) de dispositivos de Motorola. Alternativamente,
se puede emplear un circuito integrado de aplicación específica
(ASIC, application specific integrated circuit). También existe
otras posibilidades. Por ejemplo, se puede usar una unidad de
interfaz, entre un receptor de radio y un sistema informático, que
forme parte de un procesador final de reconocimiento de voz.
Claims (24)
1. Un método para atenuar los errores en un
proceso distribuido de reconocimiento de voz, proceso distribuido
de reconocimiento de voz según el cual los parámetros de
reconocimiento de voz están ordenados, en vectores que corresponden
a ventanas de tiempo de muestreo, y los mencionados parámetros de
reconocimiento de voz se reciben en una segunda localización,
habiendo sido transmitidos desde una primera localización;
método que comprende las etapas de:
identificar un grupo que comprende uno, o más, de
los mencionados vectores que han sufrido un error de transmisión, y
determinar que parámetro o parámetros de reconocimiento de voz, han
de ser reemplazados prediciendo para ello, desde los vectores
recibidos sin error, un valor previsto para cada parámetro de
reconocimiento de voz, dentro del mencionado grupo de vectores
identificado, y reemplazar uno o más parámetros de reconocimiento
de voz, dentro del grupo de vectores identificado, que están fuera
de un umbral predeterminado, en relación con su respectivo valor
previsto.
2. Un método acorde con la reivindicación 1, en
el que uno o más parámetros de reconocimiento de voz, en el
mencionado grupo de vectores identificado, son reemplazados por
parámetros de remplazamiento respectivos, determinados con
referencia a uno o más parámetros de reconocimiento de voz, de un
vector recibido después del mencionado grupo de vectores
identificado.
3. Un método acorde con la reivindicación 1 o la
2, en el que la totalidad de los parámetros de reconocimiento de
voz de cada vector del mencionado grupo, son reemplazados, mediante
reemplazar los vectores completos, y cada vector completo
reemplazado respectivo, es reemplazado por una copia de aquel, de
entre los vectores sin error precedente o siguiente, que sea el más
cercano, en el orden de recepción, al vector que está siendo
reemplazado.
4. Un método acorde con la reivindicación 3, en
el que un modo de transmisión y un modo de detección de error, son
de tal forma que el mencionado grupo identificado comprende un par
de vectores consecutivos, de modo que el primer vector del
mencionado par, se reemplaza con el segundo vector de un vector
precedente sin error, y el segundo vector del mencionado par, se
reemplaza con el primer vector de un vector siguiente sin
error.
5. Un método acorde con la reivindicación 1 o la
2, en el que la totalidad de los parámetros de reconocimiento de
voz de cada vector del mencionado grupo se reemplazan mediante el
remplazamiento de los vectores enteros, y cada vector entero
reemplazado respectivo se reemplaza por un vector determinado
mediante una técnica de interpolación.
6. Un método acorde con la reivindicación 1, en
el que, si más de un número especificado de parámetros de
reconocimiento de voz, dentro del mencionado grupo identificado de
vectores, está fuera de sus respectivos umbrales predeterminados,
entonces se reemplaza la totalidad de los parámetros de
reconocimiento de voz, del mencionado grupo identificado de
vectores.
7. Un método acorde con la reivindicación 1 o la
6, en el que los parámetros de reconocimiento de voz, son
reemplazados por los respectivos valores previstos, usados en la
etapa en que se determina qué parámetros de reconocimiento de voz
han de ser reemplazados.
8. Un método acorde con la reivindicación 1 o la
6, en el que aquellos parámetros de reconocimiento de voz que están
dentro de un umbral predeterminado, en relación con su valor
previsto respectivo, son comparados con un conjunto de vectores de
referencia, para encontrar el vector que ajusta mejor del
mencionado conjunto de vectores de referencia, y aquellos parámetros
de reconocimiento de voz que están fuera de un umbral
predeterminado en relación con su respectivo valor previsto, son
reemplazados por parámetros de reconocimiento de voz
correspondientes, del mencionado vector que ajusta mejor.
9. Un método acorde con la reivindicación 8, en
el que los parámetros de reconocimiento de voz, de uno o más
vectores vecinos, son también comparados con el conjunto de vectores
de referencia, y se elige el que mejor se ajusta, en relación con
una pluralidad de vectores de referencia consecutivos.
10. Un método acorde con cualquier reivindicación
precedente, en el que la mencionada etapa de identificar un grupo
que comprende uno, o más, de los mencionados vectores que han
sufrido un error de transmisión, incluye la etapa de predecir
respectivos valores previstos para los mencionados parámetros de
reconocimiento de voz, determinar uno o más niveles umbral en
relación con los valores previstos, e identificar grupos de
vectores que han sufrido un error de transmisión, en respuesta a un
análisis pesado, de cuantos parámetros de reconocimiento de voz en
un grupo de vectores, están fuera de cada uno de los mencionados
uno, o más, niveles umbral.
11. Un método acorde con cualquier reivindicación
precedente, en el que la mencionada etapa de identificación,
incluye una etapa de determinar una diferencia entre parámetros de
reconocimiento de voz correspondientes, desde diferentes vectores
dentro de un grupo de vectores, e identificar un grupo de vectores
que ha sufrido un error de transmisión, en respuesta a un análisis
de cuantas, entre las mencionadas diferencias, están fuera de un
nivel umbral predeterminado.
12. Un aparato para atenuar los errores en un
proceso distribuido de reconocimiento de voz, proceso distribuido
de reconocimiento de voz según el cual los parámetros de
reconocimiento de voz, están ordenados en vectores que corresponden
a ventanas de tiempo de muestreo, y los mencionados parámetros de
reconocimiento de voz se reciben en una segunda localización,
habiendo sido transmitidos desde una primera localización;
aparato que comprende:
medios para identificar un grupo que comprende
uno, o más, de los mencionados vectores que ha sufrido un error de
transmisión, donde el mencionado medio para identificar, está
adaptado para determinar qué parámetro, o parámetros, de
reconocimiento de voz han de ser reemplazados, prediciendo para
ello, a partir de los vectores recibidos sin error, un valor
previsto para cada parámetro de reconocimiento de voz, dentro del
mencionado grupo identificado de vectores; y
medios para el remplazamiento, en los que el
mencionado medio para el remplazamiento está adaptado para
reemplazar uno, o más, parámetros de reconocimiento, dentro del
grupo identificado de vectores que están fuera de un umbral
predeterminado, en relación con su respectivo valor previsto.
13. Un aparato acorde con la reivindicación 12,
en el que los mencionados uno, o más, parámetros de reconocimiento,
en el mencionado grupo de vectores identificado, es reemplazado por
parámetros de remplazamiento respectivos, determinados en referencia
a uno, o más, parámetros de reconocimiento de voz, de un vector
recibido después del mencionado grupo de vectores identificado.
14. Un aparato acorde con la reivindicación 12 o
la 13, en el que la totalidad de los parámetros de reconocimiento
de voz de cada vector del mencionado grupo, son reemplazados
mediante reemplazar los vectores completos, y cada respectivo vector
completo reemplazado, es reemplazado por una copia de aquel, de
entre los vectores sin error precedente o siguiente, que sea más
cercano en el orden de recepción al vector que está siendo
reemplazado.
15. Un aparato acorde con la reivindicación 14,
en el que un modo de transmisión y un modo de detección de error,
son tales que el grupo identificado comprende un par de vectores
consecutivos, de modo que el primer vector del mencionando par es
reemplazado por el segundo vector de un vector precedente sin
error, y el segundo vector del mencionado par es reemplazado por el
primer vector de un vector siguiente sin error.
16. Un aparato acorde con la reivindicación 12 o
la 13, en el que la totalidad de los parámetros de reconocimiento
de voz de cada vector del mencionado grupo, son reemplazados,
mediante reemplazar los vectores completos, y cada respectivo vector
completo reemplazado, es reemplazado por un vector determinado,
mediante de una técnica de interpolación.
17. Un aparato acorde con la reivindicación 12,
en el que, si más de un número especificado de parámetros de
reconocimiento de voz, dentro de un grupo identificado de vectores,
está fuera de sus respectivos umbrales predeterminados, entonces se
reemplaza la totalidad de los parámetros de reconocimiento de voz
del mencionado grupo identificado de vectores.
18. Un aparato acorde con la reivindicación 12 o
la 17, en el que los parámetros de reconocimiento de voz, son
reemplazados por los respectivos valores previstos, usados en la
etapa en que se determina qué parámetros de reconocimiento de voz
han de ser reemplazados.
19. Un aparato acorde con la reivindicación 12 o
la 17, en el que aquellos parámetros de reconocimiento de voz que
están dentro de un umbral predeterminado, en relación con su
respectivo valor previsto, se comparan con un conjunto de vectores
de referencia, para encontrar el vector que ajusta mejor del
mencionado conjunto de vectores de referencia, y aquellos parámetros
de reconocimiento de voz que están fuera de un umbral
predeterminado, en relación con su respectivo valor previsto, son
reemplazados por parámetros de reconocimiento de voz
correspondientes del mencionado vector que ajusta mejor.
20. Un aparato acorde con la reivindicación 19,
en el que los parámetros de reconocimiento de voz de uno, o más,
vectores vecinos, se comparan también con el conjunto de vectores de
referencia, y se elige el que ajusta mejor con respecto a una
pluralidad de vectores de referencia consecutivos.
21. Un aparato acorde con cualquiera de las
reivindicaciones 12-20, en el que los mencionados
medios para identificar un grupo comprenden uno, o más, de los
mencionados vectores que han sufrido un error de transmisión,
incluyen medios para predecir respectivos valores previstos para
los mencionados parámetros de reconocimiento de voz, medios para
determinar uno, o más, niveles umbral relativos a los valores
previstos, y medios para identificar grupos de vectores que han
sufrido un error de transmisión, en respuesta a un análisis pesado,
de cuantos parámetros de reconocimiento de voz, en un grupo de
vectores, están fuera de cada uno de los mencionados uno, o más,
niveles umbral.
22. Un aparato acorde con cualquiera de las
reivindicaciones 12-20, en el que los mencionados
medios para identificar un grupo que comprende uno, o más, de los
mencionados vectores que ha sufrido un error de transmisión,
incluyen medios para determinar una diferencia entre parámetros de
reconocimiento de voz correspondientes, a partir de diferentes
vectores dentro de un grupo de vectores, y medios para identificar
un grupo de vectores que ha sufrido un error de transmisión, en
respuesta a un análisis de cuantas, de las mencionadas diferencias,
están fuera de un nivel umbral predeterminado.
23. Un aparato acorde con cualquiera de las
reivindicaciones 12-22, en el que los mencionados
parámetros de reconocimiento de voz, se transmiten desde la
mencionada primera localización a la mencionada segunda
localización, sobre un enlace de comunicaciones de radio.
24. Un método acorde con cualquiera de las
reivindicaciones 1-11, en el que los mencionados
parámetros de reconocimiento de voz, se transmiten desde la
mencionada primera localización a la mencionada segunda
localización, sobre un enlace de comunicaciones de radio.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB9824894A GB2343777B (en) | 1998-11-13 | 1998-11-13 | Mitigating errors in a distributed speech recognition process |
GB9824894 | 1998-11-13 |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2242452T3 true ES2242452T3 (es) | 2005-11-01 |
Family
ID=10842390
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES99972348T Expired - Lifetime ES2242452T3 (es) | 1998-11-13 | 1999-11-12 | Atenuacion de errores en un proceso distribuido de reconocimiento de voz. |
Country Status (12)
Country | Link |
---|---|
US (1) | US8050912B1 (es) |
EP (1) | EP1131814B1 (es) |
JP (3) | JP4510293B2 (es) |
CN (1) | CN1162841C (es) |
AT (1) | ATE290249T1 (es) |
AU (1) | AU1385600A (es) |
CA (1) | CA2350751C (es) |
DE (1) | DE69923997T2 (es) |
ES (1) | ES2242452T3 (es) |
GB (1) | GB2343777B (es) |
WO (1) | WO2000030072A1 (es) |
ZA (1) | ZA200103387B (es) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2343777B (en) * | 1998-11-13 | 2003-07-02 | Motorola Ltd | Mitigating errors in a distributed speech recognition process |
DE19910236A1 (de) * | 1999-03-09 | 2000-09-21 | Philips Corp Intellectual Pty | Verfahren zur Spracherkennung |
EP1098297A1 (en) * | 1999-11-02 | 2001-05-09 | BRITISH TELECOMMUNICATIONS public limited company | Speech recognition |
US9076448B2 (en) | 1999-11-12 | 2015-07-07 | Nuance Communications, Inc. | Distributed real time speech recognition system |
US6665640B1 (en) | 1999-11-12 | 2003-12-16 | Phoenix Solutions, Inc. | Interactive speech based learning/training system formulating search queries based on natural language parsing of recognized user queries |
US6633846B1 (en) | 1999-11-12 | 2003-10-14 | Phoenix Solutions, Inc. | Distributed realtime speech recognition system |
GB2363236B (en) | 2000-06-05 | 2002-06-12 | Motorola Inc | Method and apparatus for mitigating the effect of transmission errors in a distributed speech recognition process and system |
FR2830970B1 (fr) * | 2001-10-12 | 2004-01-30 | France Telecom | Procede et dispositif de synthese de trames de substitution, dans une succession de trames representant un signal de parole |
CN104966513B (zh) * | 2014-06-09 | 2018-09-04 | 腾讯科技(深圳)有限公司 | 语言命令处理方法和装置 |
US20160111090A1 (en) * | 2014-10-16 | 2016-04-21 | General Motors Llc | Hybridized automatic speech recognition |
US10453460B1 (en) * | 2016-02-02 | 2019-10-22 | Amazon Technologies, Inc. | Post-speech recognition request surplus detection and prevention |
US11361769B2 (en) | 2019-11-05 | 2022-06-14 | International Business Machines Corporation | Assessing accuracy of an input or request received by an artificial intelligence system |
Family Cites Families (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5073940A (en) * | 1989-11-24 | 1991-12-17 | General Electric Company | Method for protecting multi-pulse coders from fading and random pattern bit errors |
JP3102015B2 (ja) * | 1990-05-28 | 2000-10-23 | 日本電気株式会社 | 音声復号化方法 |
DE4202140A1 (de) * | 1992-01-27 | 1993-07-29 | Thomson Brandt Gmbh | Verfahren zur uebertragung digitaler audio-signale |
DE69326431T2 (de) | 1992-12-28 | 2000-02-03 | Toshiba Kawasaki Kk | Spracherkennungs-Schnittstellensystem, das als Fenstersystem und Sprach-Postsystem verwendbar ist |
JP3725566B2 (ja) | 1992-12-28 | 2005-12-14 | 株式会社東芝 | 音声認識インターフェース |
US5903867A (en) | 1993-11-30 | 1999-05-11 | Sony Corporation | Information access system and recording system |
ZA948426B (en) * | 1993-12-22 | 1995-06-30 | Qualcomm Inc | Distributed voice recognition system |
JPH07152787A (ja) | 1994-01-13 | 1995-06-16 | Sony Corp | 情報アクセスシステムおよび記録媒体 |
US5884261A (en) * | 1994-07-07 | 1999-03-16 | Apple Computer, Inc. | Method and apparatus for tone-sensitive acoustic modeling |
FI944345A (fi) * | 1994-09-19 | 1996-03-20 | Nokia Telecommunications Oy | Menetelmä virheellisten puhekehysten tunnistamiseksi puhetta välittävän tietoliikennejärjestelmän vastaanottimessa, sekä tietoliikennejärjestelmän vastaanotin |
KR970011728B1 (ko) * | 1994-12-21 | 1997-07-14 | 김광호 | 음향신호의 에러은닉방법 및 그 장치 |
FI950917A (fi) * | 1995-02-28 | 1996-08-29 | Nokia Telecommunications Oy | Puhekoodausparametrien käsittely tietoliikennejärjestelmässä |
US5991725A (en) * | 1995-03-07 | 1999-11-23 | Advanced Micro Devices, Inc. | System and method for enhanced speech quality in voice storage and retrieval systems |
US5699478A (en) * | 1995-03-10 | 1997-12-16 | Lucent Technologies Inc. | Frame erasure compensation technique |
US5636231A (en) * | 1995-09-05 | 1997-06-03 | Motorola, Inc. | Method and apparatus for minimal redundancy error detection and correction of voice spectrum parameters |
US5774837A (en) * | 1995-09-13 | 1998-06-30 | Voxware, Inc. | Speech coding system and method using voicing probability determination |
US5917835A (en) * | 1996-04-12 | 1999-06-29 | Progressive Networks, Inc. | Error mitigation and correction in the delivery of on demand audio |
JPH10177468A (ja) | 1996-12-16 | 1998-06-30 | Casio Comput Co Ltd | 移動端末音声認識/データベース検索通信システム |
US6157830A (en) * | 1997-05-22 | 2000-12-05 | Telefonaktiebolaget Lm Ericsson | Speech quality measurement in mobile telecommunication networks based on radio link parameters |
US5897616A (en) * | 1997-06-11 | 1999-04-27 | International Business Machines Corporation | Apparatus and methods for speaker verification/identification/classification employing non-acoustic and/or acoustic models and databases |
US6092039A (en) * | 1997-10-31 | 2000-07-18 | International Business Machines Corporation | Symbiotic automatic speech recognition and vocoder |
US6775652B1 (en) * | 1998-06-30 | 2004-08-10 | At&T Corp. | Speech recognition over lossy transmission systems |
GB2343777B (en) | 1998-11-13 | 2003-07-02 | Motorola Ltd | Mitigating errors in a distributed speech recognition process |
-
1998
- 1998-11-13 GB GB9824894A patent/GB2343777B/en not_active Revoked
-
1999
- 1999-11-12 WO PCT/EP1999/009028 patent/WO2000030072A1/en active IP Right Grant
- 1999-11-12 CN CNB998131830A patent/CN1162841C/zh not_active Expired - Lifetime
- 1999-11-12 ES ES99972348T patent/ES2242452T3/es not_active Expired - Lifetime
- 1999-11-12 EP EP99972348A patent/EP1131814B1/en not_active Expired - Lifetime
- 1999-11-12 AT AT99972348T patent/ATE290249T1/de not_active IP Right Cessation
- 1999-11-12 JP JP2000583001A patent/JP4510293B2/ja not_active Expired - Lifetime
- 1999-11-12 DE DE69923997T patent/DE69923997T2/de not_active Expired - Lifetime
- 1999-11-12 AU AU13856/00A patent/AU1385600A/en not_active Abandoned
- 1999-11-12 CA CA002350751A patent/CA2350751C/en not_active Expired - Lifetime
- 1999-11-12 US US09/830,306 patent/US8050912B1/en not_active Expired - Fee Related
-
2001
- 2001-04-25 ZA ZA2001/03387A patent/ZA200103387B/en unknown
-
2010
- 2010-03-01 JP JP2010043960A patent/JP2010160507A/ja active Pending
- 2010-03-01 JP JP2010043952A patent/JP2010160506A/ja active Pending
Also Published As
Publication number | Publication date |
---|---|
EP1131814B1 (en) | 2005-03-02 |
GB2343777A (en) | 2000-05-17 |
US8050912B1 (en) | 2011-11-01 |
WO2000030072A1 (en) | 2000-05-25 |
GB9824894D0 (en) | 1999-01-06 |
JP2002530704A (ja) | 2002-09-17 |
JP4510293B2 (ja) | 2010-07-21 |
AU1385600A (en) | 2000-06-05 |
EP1131814A1 (en) | 2001-09-12 |
CN1326583A (zh) | 2001-12-12 |
JP2010160507A (ja) | 2010-07-22 |
DE69923997T2 (de) | 2006-04-06 |
DE69923997D1 (de) | 2005-04-07 |
CA2350751C (en) | 2008-12-16 |
CN1162841C (zh) | 2004-08-18 |
GB2343777B (en) | 2003-07-02 |
ZA200103387B (en) | 2002-06-26 |
CA2350751A1 (en) | 2000-05-25 |
ATE290249T1 (de) | 2005-03-15 |
JP2010160506A (ja) | 2010-07-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2242452T3 (es) | Atenuacion de errores en un proceso distribuido de reconocimiento de voz. | |
ES2198615T3 (es) | Codificacion de señales de voz. | |
ES2621417T3 (es) | Sistema, procedimientos, aparato y medios legibles por ordenador para la asignación de bits para la transmisión redundante de datos de audio | |
CN109995566B (zh) | 网络故障定位方法、装置、设备及介质 | |
EP1374512A1 (en) | Method and apparatus for is-95b reverse link supplemental code channel (scch) frame validation and fundamental code channel (fcch) rate decision improvement | |
FI84866B (fi) | Foerbaettring av en viterbi-algoritm. | |
CN111800501A (zh) | 处理业务请求的方法及装置、存储介质、电子设备 | |
US6567949B2 (en) | Method and configuration for error masking | |
EP1129537B1 (en) | Processing received data in a distributed speech recognition process | |
Shen et al. | Low-latency segmented list-pruning software polar list decoder | |
Sun et al. | Efficient blind detection scheme based on simplified decoding of polar codes | |
Özkan et al. | Data transmission via GSM voice channel for end to end security | |
ES2269443T3 (es) | Metodo y aparato para mitigar el efecto de los errores de transmision en un proceso y un sistema de reconocimiento de voz distribuido. | |
US20120226950A1 (en) | Data classification based on cyclic redundancy check and decoder metric | |
KR100611838B1 (ko) | 무선 통신 장치 | |
US20120239386A1 (en) | Method and device for determining a decoding mode of in-band signaling | |
AU2001283839A1 (en) | Method and apparatus for mitigating the effect of transmission errors in a distributed speech recognition process and system | |
CN105634668B (zh) | 一种dci0信号的虚检筛查方法及装置 | |
CN113779400B (zh) | 一种消息推送方法、装置、设备及计算机可读存储介质 | |
CN106549891A (zh) | 在无线通信***中盲检测干扰秩信息的设备和方法 | |
EP3779736B1 (en) | Authentication device, individual identification device, and information processing device | |
CN115149966A (zh) | 极化码译码方法及装置、电子设备及存储介质 | |
CN116723532A (zh) | 覆盖质差根因定位方法、装置、设备和存储介质 | |
Jain | Prioritized handover requests in cellular mobile system with subrating for integrated voice/data traffic |