ES2577705T3 - Procedure and system to obtain relevant information from a voice communication - Google Patents

Procedure and system to obtain relevant information from a voice communication Download PDF

Info

Publication number
ES2577705T3
ES2577705T3 ES13382034.0 ES2577705T3 ES 2577705 T3 ES2577705 T3 ES 2577705T3 ES 2577705 T3 ES2577705 T3 ES 2577705T3
Authority
ES
Spain
Prior art keywords
voice
information
markers
marker
flows
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.)
Active
Application number
ES13382034.0
Other languages
Spanish (es)
Inventor
Diego URDIALES DELGADO
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Telefonica SA
Original Assignee
Telefonica SA
Filing date
Publication date
Application filed by Telefonica SA filed Critical Telefonica SA
Application granted granted Critical
Publication of ES2577705T3 publication Critical patent/ES2577705T3/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Description

55

1010

15fifteen

20twenty

2525

3030

3535

4040

45Four. Five

50fifty

5555

DESCRIPCIONDESCRIPTION

Procedimiento y sistema para obtener informacion relevante de una comunicacion por voz Campo tecnico de la invencionProcedure and system for obtaining relevant information of a voice communication Technical field of the invention

La presente invencion se refiere, en general, al campo del reconocimiento de voz y, mas espedficamente, se refiere al analisis de comunicaciones por voz para extraer automaticamente informacion relevante de dicha comunicacion por voz y convertirla potencialmente en texto.The present invention relates, in general, to the field of speech recognition and, more specifically, refers to the analysis of voice communications to automatically extract relevant information from said voice communication and potentially convert it into text.

Antecedentes de la invencionBackground of the invention

El “reconocimiento de voz” es la traduccion de palabras dichas en texto. Tambien se conoce como “reconocimiento de voz automatico” (ASR). En la actualidad, los sistemas de reconocimiento de voz automatico (ASR) van dirigidos principalmente al analisis de flujos de audio individuales, tales como aquellos que proceden de un dictado de voz, una orden de voz o un mensaje de buzon de voz. Ejemplos de tales sistemas incluyen aquellos que se usan en aplicaciones comerciales de transcripcion de correo de voz, en aplicaciones de asistente virtual, etc. Aunque sena util tener tambien una representacion textual del contenido de las llamadas de voz, los sistemas de ASR actuales apenas se dirigen al analisis de flujos de audio interrelacionados tales como aquellos que proceden de una llamada de voz.The "voice recognition" is the translation of words said in text. It is also known as "automatic voice recognition" (ASR). Currently, automatic speech recognition (ASR) systems are directed primarily to the analysis of individual audio streams, such as those that come from a voice dictation, a voice command or a voicemail message. Examples of such systems include those used in commercial voicemail transcription applications, in virtual assistant applications, etc. Although it would be useful to also have a textual representation of the content of the voice calls, the current ASR systems are hardly directed to the analysis of interrelated audio streams such as those coming from a voice call.

La investigacion en el reconocimiento de voz se ha caracterizado por la acumulacion constante de pequenas mejoras incrementales. Tambien ha habido una tendencia a concentrarse en tareas mas diffciles debido tanto al progreso en el rendimiento del reconocimiento de voz como a la disponibilidad de ordenadores mas rapidos. La transcripcion de voz a texto automatizada para mensajes cortos de voz, tales como aquellos que se dejan en los sistemas de buzon de voz, o para el dictado de SMS u ordenes, ha estado disponible como un servicio con altos niveles de precision durante algun tiempo. El siguiente paso natural sena extender esta funcionalidad a llamadas de voz, es decir, comunicaciones por voz mas largas en las que dos o mas partes se comunican de manera smcrona a traves de voz. Sin embargo, resulta evidente que una transcripcion completa, palabra por palabra, de una llamada de voz no es la manera optima de transmitir el significado de la conversacion de voz para un usuario.Research in speech recognition has been characterized by the constant accumulation of small incremental improvements. There has also been a tendency to focus on more difficult tasks due to both the progress in speech recognition performance and the availability of faster computers. Automated voice-to-text transcription for short voice messages, such as those left in voicemail systems, or for the dictation of SMS or orders, has been available as a service with high levels of precision for some time . The next natural step will be to extend this functionality to voice calls, that is, longer voice communications in which two or more parties communicate in a synchronous manner through voice. However, it is evident that a complete, word-for-word transcription of a voice call is not the optimal way to convey the meaning of the voice conversation for a user.

El problema de analizar el contenido de una llamada de voz a traves del reconocimiento de voz automatico tiene varias particularidades que lo diferencian de otras tareas relacionadas con el ASR:The problem of analyzing the content of a voice call through automatic voice recognition has several peculiarities that differentiate it from other tasks related to the ASR:

En primer lugar, como al menos dos partes estan incluidas en la comunicacion por voz, hay al menos dos flujos de audio para una unica comunicacion. Segun el sistema en el que se realice la comunicacion por voz y la configuracion de la arquitectura, puede alimentarse con un unico flujo de audio el sistema de ASR, que contiene el audio agregado de todas las partes de la comunicacion por voz; o pueden alimentarse flujos de audio separados, uno para cada participante individual de la comunicacion por voz. Esto difiere de otras tareas relacionadas con el ASR, en las que hay un unico flujo de audio no agregado alimentando al motor del ASR.First, since at least two parts are included in voice communication, there are at least two audio streams for a single communication. According to the system in which the voice communication and the configuration of the architecture is carried out, the ASR system can be fed with a single audio stream, which contains the added audio of all the parts of the voice communication; or separate audio streams can be fed, one for each individual participant of voice communication. This differs from other tasks related to the ASR, in which there is a single non-added audio stream feeding the ASR engine.

Acusticamente, como el audio de la llamada de voz se transmite por flujo entre las partes en la llamada a traves de una red, esta sujeto a interferencias, perdidas de paquetes y otras degradaciones. Estas degradaciones no se producen cuando el audio se graba y envfa a traves de la red, en lugar de transmitirse por flujo en tiempo real.Acoustically, as the audio of the voice call is transmitted by flow between the parties in the call through a network, it is subject to interference, packet loss and other impairments. These degradations do not occur when the audio is recorded and sent through the network, instead of being transmitted by streaming in real time.

Lingufsticamente, el audio de la llamada de voz es bastante diferente a otros tipos de audio de voz. Como dos o mas partes estan hablando en la llamada, cada canal de audio contiene habitualmente largos periodos en silencio, correspondientes a tiempos en los que ese orador esta escuchando a otra parte. Las llamadas de voz son una forma de comunicacion en lmea (la sesion es en vivo y la voz se transmite a medida que se pronuncia), es mas probable que contengan vacilaciones, frases construidas de manera inapropiada, palabras o frases incompletas, sonidos no verbales y palabras onomatopeyicas. En general, las llamadas de voz contienen una menor proporcion de palabras lingufsticamente coherentes que otras formas de comunicacion. Y, como las partes en una llamada de voz habitualmente se conocen entre sf y la naturaleza en tiempo real de una llamada de voz permite aclarar inmediatamente cualquier malentendido, las llamadas de voz incluyen elipsis, referencias a conceptos o palabras no mencionados y, en general, expresiones del lenguaje que solo conocen las partes participates, con mayor frecuencia que otros tipos de audio de voz.Linguistically, the audio of the voice call is quite different from other types of voice audio. As two or more parties are speaking on the call, each audio channel usually contains long periods of silence, corresponding to times in which that speaker is listening elsewhere. Voice calls are a form of communication in line (the session is live and the voice is transmitted as it is pronounced), it is more likely to contain hesitations, improperly constructed sentences, incomplete words or phrases, non-verbal sounds and onomatopoeic words. In general, voice calls contain a smaller proportion of words that are linguistically coherent than other forms of communication. And, as the parties to a voice call usually know each other and the real-time nature of a voice call allows any misunderstanding to be immediately clarified, voice calls include ellipses, references to concepts or words not mentioned, and in general , expressions of the language that only the participating parties know, more frequently than other types of voice audio.

La tecnica anterior incluye ejemplos tales como la solicitud de patente estadounidense US 2008/0201143, que describe un sistema y un procedimiento para extraer el contenido de conversaciones de audio, centrando su atencion en (pero sin limitarse a) la monitorizacion de llamadas realizadas por presos en instituciones correccionales. El sistema descrito en ese documento extrae determinadas caractensticas del audio de la llamada de voz. Sin embargo, esa solicitud de patente es fundamentalmente un sistema de etiquetado o control, cuyo objetivo es identificar fragmentos irregulares, sospechosos o poco habituales dentro de la conversacion de voz.The prior art includes examples such as US patent application US 2008/0201143, which describes a system and method for extracting the content of audio conversations, focusing on (but not limited to) the monitoring of calls made by prisoners in correctional institutions. The system described in this document extracts certain characteristics of the audio from the voice call. However, this patent application is fundamentally a labeling or control system, whose objective is to identify irregular, suspicious or unusual fragments within the voice conversation.

Otra solucion de la tecnica anterior se proporciona en los sistemas y procedimientos de transcripcion inteligente de llamadas divulgados en la solicitud estadounidense US2010/158213. Una transcripcion de una llamada telefonica es creada y suplementada con informacion adicional, automaticamente o a peticion. Puede anadirse informacion adicional cuando se detectan palabras clave, tal como agregar expansion de acronimos cuando se detecta unAnother solution of the prior art is provided in the intelligent call transcription systems and procedures disclosed in US application US2010 / 158213. A transcript of a telephone call is created and supplemented with additional information, automatically or upon request. Additional information can be added when keywords are detected, such as adding acronym expansion when an error is detected.

55

1010

15fifteen

20twenty

2525

3030

3535

4040

45Four. Five

50fifty

acronimo, o agregar informacion de identificacion a una tarea importante cuando se detecta la mencion de la tarea. Por lo tanto, se centra principalmente en el enriquecimiento de una transcripcion de audio incluyendo informacion adicional.Acronym, or add identification information to an important task when the mention of the task is detected. Therefore, it focuses primarily on the enrichment of an audio transcript including additional information.

La patente estadounidense US 7599475 B2 propone un procedimiento y un aparato para revelar aspectos comerciales u organizativos de una organizacion en senales de audio capturadas desde interacciones, difusiones u otros ongenes. El procedimiento y el aparato activan un proceso para detectar sucesos dentro de la senal de audio, y activan luego un proceso adicional, que consume mas recursos, alrededor de los sucesos detectados, realzando asf la eficacia del proceso. Los sucesos detectados y la salida del proceso adicional son analizados por un proceso de analisis para revelar aspectos comerciales, terminos u otros sucesos en la senal de audio.The US patent US 7599475 B2 proposes a method and an apparatus for revealing commercial or organizational aspects of an organization in audio signals captured from interactions, broadcasts or other ongenes. The procedure and the apparatus activate a process to detect events within the audio signal, and then activate an additional process, which consumes more resources, around the detected events, thus enhancing the efficiency of the process. The detected events and the output of the additional process are analyzed by an analysis process to reveal commercial aspects, terms or other events in the audio signal.

Ademas la solicitud de patente estadounidense US 2007/0071206, centrada en la monitorizacion de conversaciones en instituciones correccionales, contempla tanto la separacion de llamadas de voz en canales (diarizacion) como el aprovechamiento de la informacion de prosodia para mejorar la deteccion de sucesos poco habituales en llamadas de voz, o localizar aquellas llamadas que podnan requerir una revision manual. Sin embargo, esta limitada porque no incluye un enfoque sistematico para el uso de diferentes aspectos de la informacion de audio, y no solo prosodia y texto, de manera individual o en combinacion. De nuevo, esto sigue el objetivo de controlar o etiquetar llamadas, no de extraer la informacion relevante contenida en la llamada de voz.In addition, the US patent application US 2007/0071206, focused on the monitoring of conversations in correctional institutions, contemplates both the separation of voice calls in channels (diarization) and the use of prosody information to improve the detection of unusual events in voice calls, or locate those calls that might require a manual review. However, it is limited because it does not include a systematic approach to the use of different aspects of audio information, and not just prosody and text, individually or in combination. Again, this follows the goal of controlling or labeling calls, not extracting the relevant information contained in the voice call.

Cuando se aplican a flujos de audio interrelacionados tales como aquellos que proceden de llamadas de voz, los sistemas de ASR actuales, como los mencionados anteriormente, tienen diversas desventajas. Debido a la naturaleza lingufstica del audio de la llamada de voz, en el que muchas de las palabras no tienen un significado lingufstico, muchas de las frases estan incompletas y tambien abundan las palabras que son onomatopeyicas o estan incompletas, los sistemas que pretenden proporcionar una transcripcion completa para la llamada de voz (motores de transcripcion) proporcionan demasiada informacion que es de poca utilidad.When applied to interrelated audio streams such as those coming from voice calls, current ASR systems, such as those mentioned above, have various disadvantages. Due to the linguistic nature of the audio of the voice call, in which many of the words have no linguistic meaning, many of the sentences are incomplete and there are also many words that are onomatopoeic or incomplete, the systems that aim to provide a Full transcription for the voice call (transcription engines) provide too much information that is of little use.

Para superar esta desventaja, pueden usarse los sistemas de ASR que pretenden devolver solo palabras o frases coherentes que se dicen en la llamada de voz, tales como el sistema de ASR de localizacion de palabras clave.To overcome this disadvantage, ASR systems which intend to return only coherent words or phrases spoken in the voice call can be used, such as the keyword location ASR system.

Sumario de la invencionSummary of the invention

La presente invencion soluciona el problema, mencionado anteriormente, de analizar multiples flujos de audio de voz de una llamada de voz para obtener palabras significativas que contienen la informacion relevante de dicha llamada. Por tanto, de acuerdo a la reivindicacion 1, se presenta un procedimiento para obtener informacion relevante de una comunicacion por voz proporcionada, entre al menos dos usuarios, en el que la comunicacion por voz comprende al menos dos flujos de voz (21) pertenecientes a dichos al menos dos usuarios, comprendiendo el procedimiento las siguientes etapas:The present invention solves the problem, mentioned above, of analyzing multiple voice audio streams of a voice call to obtain meaningful words containing the relevant information of said call. Therefore, according to claim 1, there is presented a procedure for obtaining relevant information of a voice communication provided, between at least two users, in which the voice communication comprises at least two voice flows (21) belonging to said at least two users, the procedure comprising the following steps:

a) generar marcadores con sellos temporales, asociados a dichos al menos dos flujos de voz segun determinadas caractensticas extrafdas de dichos al menos dos flujos de voz (21), en donde, cuando cierta caractenstica es comun (55) para ambos flujos de voz, generar un marcador adicional con sello temporal (54) que indica una correlacion entre dichos al menos dos flujos de voz (21);a) generate markers with time stamps, associated with said at least two voice flows according to certain features extracted from said at least two voice flows (21), where, when a certain characteristic is common (55) for both voice flows, generating an additional marker with time stamp (54) indicating a correlation between said at least two voice flows (21);

b) extraer (57) determinadas piezas de informacion de dichos al menos dos flujos de voz segun cierta informacion que comprenden los marcadores;b) extracting (57) certain pieces of information from said at least two voice flows according to certain information comprising the markers;

c) transcribir (58) las determinadas piezas de informacion en texto para obtener la informacion relevante de la comunicacion por voz.c) transcribe (58) the certain pieces of information in text to obtain the relevant information of the voice communication.

Los canales pueden no estar disponibles por separado y el procedimiento puede incluir una etapa adicional para solucionarlo, que consiste en separar dichos al menos dos flujos de voz, pertenecientes a dichos al menos dos usuarios, de la comunicacion por voz.The channels may not be available separately and the method may include an additional step to solve it, which consists in separating said at least two voice flows, belonging to said at least two users, from the voice communication.

En una realizacion de la invencion, las caractensticas extrafdas de los flujos de voz se toman de la siguiente lista: entonacion, volumen, velocidad del habla y ruido. A partir de estas caractensticas se procesan los flujos de voz para generar los marcadores con sellos temporales. Dichos marcadores con sellos temporales contienen cierta informacion, que puede organizarse en una tupla que comprende elementos de la siguiente lista: un identificador para el flujo de voz, un sello temporal de inicio, un sello temporal de finalizacion, una indicacion del tipo de marcador y otros detalles del marcador.In an embodiment of the invention, the features extracted from the voice streams are taken from the following list: intonation, volume, speed of speech and noise. From these features, the voice flows are processed to generate markers with time stamps. Said markers with temporary stamps contain certain information, which can be organized in a tuple comprising elements of the following list: an identifier for the voice flow, a temporary start stamp, a temporary seal of completion, an indication of the type of marker and other details of the marker.

La invencion propuesta puede comprender la etapa adicional de comparar una caractenstica de los flujos de voz con un patron configurado previamente. Por tanto, los marcadores generados pueden comprender informacion adicional tal como un nivel de confianza, o la indicacion de cuales de los patrones configurados previamente coincidieron.The proposed invention may comprise the additional step of comparing a feature of the speech flows with a previously configured pattern. Thus, the generated markers may comprise additional information such as a confidence level, or the indication of which of the previously configured patterns matched.

Una realizacion de la invencion tambien usa la transcripcion de voz a texto y la localizacion de palabras para generar marcadores. Por tanto, los marcadores generados pueden comprender el nivel de confianza de la transcripcion o las palabras localizadas.An embodiment of the invention also uses voice-to-text transcription and word location to generate bookmarks. Therefore, the generated markers can comprise the confidence level of the transcription or the localized words.

55

1010

15fifteen

20twenty

2525

3030

3535

4040

45Four. Five

50fifty

Una realizacion de la invencion comprende extraer la pieza de informacion contenida dentro de los sellos temporales de inicio y finalizacion definidos en el marcador. Segun el tipo de marcador, la accion adoptada puede ser extraer la pieza de informacion, del mismo flujo de voz, o de otro flujo de voz distinto al indicado por el identificador de la tupla, contenida despues del sello temporal de inicio definido en el marcador para una duracion espedfica.An embodiment of the invention comprises extracting the piece of information contained within the start and end time stamps defined in the marker. Depending on the type of marker, the adopted action may be to extract the piece of information, the same voice flow, or another voice flow different to that indicated by the identifier of the tuple, contained after the time stamp of beginning defined in the marker for a specific duration.

La invencion propuesta puede comprender pasar las piezas de informacion extrafda a traves de un sistema de reconocimiento de voz automatico, basado en la gramatica, con una gramatica espedfica. Y, optativamente, las piezas de informacion extrafda pueden hacerse pasar a traves de un sistema de reconocimiento de voz automatico con un modelo de lenguaje espedfico.The proposed invention may comprise passing the pieces of information extracted through an automatic speech recognition system, based on grammar, with a specific grammar. And, optionally, the extrafda pieces of information can be passed through an automatic voice recognition system with a specific language model.

Como etapa adicional, el procedimiento puede comprender almacenar la comunicacion por voz en un dispositivo de almacenamiento de datos, aunque en algunas realizaciones todas las etapas se realizan en tiempo real.As an additional step, the method may comprise storing the voice communication in a data storage device, although in some embodiments all the steps are performed in real time.

Otro aspecto de la invencion, segun lo reivindicado en la reivindicacion 2, se refiere a un sistema para obtener informacion relevante de una comunicacion por voz proporcionada entre al menos dos usuarios, en donde la comunicacion de voz comprende al menos dos flujos de voz pertenecientes a dichos al menos dos usuarios, comprendiendo el sistema:Another aspect of the invention, as claimed in claim 2, relates to a system for obtaining relevant information of a voice communication provided between at least two users, wherein the voice communication comprises at least two voice flows belonging to said at least two users, the system comprising:

- un generador de marcadores (22) que recibe dichos al menos dos flujos de voz (21) para ser analizados y generar marcadores con sellos temporales, de acuerdo a ciertas caractensticas extrafdas de dichos al menos dos flujos de voz, en donde, cuando cierta caractenstica es comun (55) a ambos flujos de voz, generar un marcador adicional con sello temporal (54) que indica una correlacion entre dichos al menos dos flujos de voz;- a marker generator (22) that receives said at least two voice streams (21) to be analyzed and generate markers with time stamps, according to certain features extracted from said at least two voice streams, where, when certain characteristic is common (55) to both voice flows, generating an additional marker with temporary stamp (54) indicating a correlation between said at least two voice flows;

- un procesador de acciones (24) para extraer determinadas piezas de informacion de dichos al menos dos flujos de voz, de acuerdo a alguna informacion comprendida por los marcadores- a processor of actions (24) to extract certain pieces of information from said at least two voice flows, according to some information comprised by the markers

y transcribir las determinadas piezas de informacion en texto, obteniendo asf la informacion relevante de la comunicacion por voz.and transcribe the certain pieces of information in text, thus obtaining the relevant information of the voice communication.

Los flujos pueden no estar disponibles por separado y el sistema puede incluir un modulo de diarizacion de flujo para separar al menos dos flujos de voz, pertenecientes a diferentes usuarios, de la comunicacion por voz proporcionada.The flows may not be available separately and the system may include a flow diary module to separate at least two voice streams, belonging to different users, from the provided voice communication.

El sistema tambien puede comprender los siguientes modulos en el generador de marcadores:The system can also include the following modules in the marker generator:

- un analizador de senal de voz para medir niveles de ruido en un flujo de voz y variaciones en el volumen, y compararlos con patrones de ruido y volumen configurados previamente;- a voice signal analyzer for measuring noise levels in a voice flow and variations in volume, and comparing them with previously configured noise and volume patterns;

- un analizador de prosodia para detectar la entonacion del habla y compararla con patrones configurados previamente;- a prosody analyzer to detect speech intonation and compare it with previously configured patterns;

- un motor de reconocimiento de voz automatico, configurado para la localizacion de palabras, para detectar en un flujo de voz cualquiera de las palabras de una lista definida previamente;- an automatic speech recognition engine, configured for the location of words, to detect in a voice flow any of the words of a previously defined list;

- un motor de reconocimiento de voz automatico configurado para la transcripcion, para medir la velocidad del habla en palabras por unidad de tiempo;- an automatic speech recognition engine configured for transcription, to measure the speed of speech in words per unit of time;

- un analizador de segundo orden conectado a los modulos previos para detectar marcadores repetidos, marcadores que se producen simultaneamente en ambos dichos al menos dos flujos de voz y demuestran cierta correlacion comparandolos con patrones de correlacion.- a second order analyzer connected to the previous modules to detect repeated markers, markers that are produced simultaneously in both said at least two voice flows and show some correlation comparing them with correlation patterns.

Y el procesador de acciones tambien puede comprender los siguientes modulos:And the action processor can also comprise the following modules:

- un divisor de flujo de audio para extraer un segmento de un flujo de voz definido por su hora de inicio y su hora de finalizacion, o duracion;- an audio stream splitter to extract a segment of a voice stream defined by its start time and its end time, or duration;

- un reconocimiento de voz de audio configurado para la transcripcion de un flujo de voz en texto;- an audio voice recognition configured for the transcription of a text voice stream;

- un modulo de procesamiento de texto para buscar palabras, frases o patrones espedficos.- a text processing module to search for specific words, phrases or patterns.

Un ultimo aspecto de la invencion se refiere a un producto de programa de ordenador que comprende un codigo de programa de ordenador adaptado para realizar el procedimiento de la invencion, cuando dicho codigo de programa se ejecuta en un ordenador, un procesador de senales digitales, una formacion de compuertas programables en el terreno, un circuito integrado espedfico de la aplicacion, un microprocesador, un micro-controlador o cualquier otra forma de hardware programable.A final aspect of the invention relates to a computer program product comprising a computer program code adapted to perform the method of the invention, when said program code is executed in a computer, a digital signal processor, a formation of programmable gates in the field, a specific integrated circuit of the application, a microprocessor, a micro-controller or any other form of programmable hardware.

Descripcion de los dibujosDescription of the drawings

Para completar la descripcion que esta realizandose, y con el objetivo de ayudar a entender mejor las caractensticas de la invencion, segun un ejemplo preferido de una realizacion practica de la misma, acompanando a dicha descripcion como parte integrante de la misma, hay un conjunto de dibujos en los que, a modo de ilustracion y sinTo complete the description that is being made, and with the aim of helping to better understand the features of the invention, according to a preferred example of a practical embodiment thereof, accompanying said description as an integral part thereof, there is a set of drawings in which, by way of illustration and without

55

1010

15fifteen

20twenty

2525

3030

3535

4040

45Four. Five

limitacion, se ha representado lo siguiente:limitation, the following has been represented:

la figura 1 muestra una muestra de una comunicacion por voz entre 2 partes.Figure 1 shows a sample of a voice communication between 2 parts.

La figura 2 muestra un diagrama de bloques que representa una realizacion de la invencion.Figure 2 shows a block diagram representing an embodiment of the invention.

La figura 3 muestra otra realizacion que anade un modulo de diarizacion a la realizacion de la figura 2.Figure 3 shows another embodiment that adds a module of diarization to the embodiment of Figure 2.

La figura 4 muestra una realizacion del modulo generador de marcadores en detalle.Figure 4 shows an embodiment of the marker generation module in detail.

La figura 5 muestra una realizacion del modulo procesador de acciones en detalle.Figure 5 shows an embodiment of the action processor module in detail.

La figura 6 ilustra la generacion de marcadores para una realizacion particular de la invencion.Figure 6 illustrates the generation of markers for a particular embodiment of the invention.

La figura 7 ilustra el procesador de acciones para la misma realizacion particular que la figura 6.Figure 7 illustrates the action processor for the same particular embodiment as Figure 6.

Descripcion detallada de la invencionDetailed description of the invention

La invencion describe un proceso, en terminos generales, para analizar flujos de audio interrelacionados, tales como aquellos que proceden de llamadas de voz, para extraer, y convertir potencialmente en texto, la informacion relevante contenida en la comunicacion por voz. A continuacion se da a conocer en detalle un caso espedfico de comunicaciones por voz entre dos partes segun una realizacion de la invencion. Sin embargo, el procedimiento puede generalizarse para su aplicacion a una comunicacion generica por voz entre n partes, de maneras evidentes para un experto en la tecnica.The invention describes a process, in general terms, for analyzing interrelated audio streams, such as those that come from voice calls, to extract, and potentially convert into text, the relevant information contained in voice communication. In the following, a specific case of voice communications between two parts according to an embodiment of the invention is disclosed in detail. However, the method can be generalized for its application to generic voice communication between n parts, in ways evident to one skilled in the art.

El procedimiento propuesto en esta invencion identificana informacion relevante en la conversacion de voz y la presentana al usuario. Esta invencion no tiene como objetivo una transcripcion textual completa, sino que se centra en identificar la informacion relevante en la conversacion de voz.The method proposed in this invention identifies relevant information in the voice conversation and presents it to the user. This invention does not aim at a complete textual transcription, but instead focuses on identifying the relevant information in the voice conversation.

Como etapa intermedia en el procedimiento, el procesamiento identifica marcadores en cada uno de los flujos de voz individuales. Los marcadores se definen como fragmentos con sello temporal en un flujo de voz de audio, que se marcan para ayudar en el proceso de reconocimiento. Se usan algunas caractensticas extrafdas de los flujos de voz de audio para generar los marcadores, e incluso se incluyen. Es posible definir un marcador como una tupla que contiene las siguientes caractensticas, o campos, segun esta realizacion:As an intermediate step in the procedure, the processing identifies markers in each of the individual voice flows. Markers are defined as fragments with time stamp in an audio voice stream, which are marked to aid in the recognition process. Some features extracted from the audio voice streams are used to generate the markers, and are even included. It is possible to define a marker as a tuple that contains the following characteristics, or fields, according to this realization:

- Hora de inicio- Start time

- Hora de finalizacion- Ending time

- Identificador de canal (es decir, para una llamada de voz de dos partes, si esta en el canal de la parte del que llama o el canal de la parte a la que se llama, o ambos)- Channel identifier (that is, for a two-part voice call, whether it is in the channel of the calling party or the channel of the called party, or both)

- Tipo de marcador- Type of marker

- Detalles del marcador- Bookmark details

El procesamiento individual de los flujos de voz puede dar como resultado la identificacion de marcadores segun diversos criterios, dando como resultado por tanto diferentes tipos de marcador. Segun esta realizacion particular de la invencion propuesta, los marcadores generados se dan a conocer mas adelante. Una vez que se han elegido las caractensticas que van a buscarse, se comparan los flujos de voz con patrones configurados previamente, para identificar los marcadores:The individual processing of the voice streams can result in the identification of markers according to various criteria, thus resulting in different types of markers. According to this particular embodiment of the proposed invention, the generated markers are disclosed below. Once the features to be searched have been chosen, the voice flows with previously configured patterns are compared to identify the markers:

• Marcadores de localizacion de palabras: estos marcadores se identifican cuando se detecta una palabra o una frase en uno de los flujos de voz de audio. Un ejemplo es un marcador para la deteccion de la frase “Debenas tomar nota de esto”. En este caso, el campo de “detalles del marcador” de la tupla puede contener la palabra o frase que se detecto.• Word locator markers: these markers are identified when a word or phrase is detected in one of the audio voice streams. An example is a marker for the detection of the phrase "You must take note of this". In this case, the "marker details" field of the tuple can contain the word or phrase that was detected.

• Marcadores de entonacion: estos marcadores se identifican cuando se detecta un determinado patron de entonacion en uno de los flujos de audio. Un ejemplo puede ser un aumento considerable en la entonacion. En este caso, el campo “detalles del marcador” de la tupla puede contener informacion sobre el patron de entonacion que se detecto.• Intonation markers: these markers are identified when a certain intonation pattern is detected in one of the audio streams. An example can be a considerable increase in intonation. In this case, the field "details of the marker" of the tuple may contain information about the pattern of intonation that was detected.

• Marcadores de volumen: estos marcadores se identifican cuando el volumen del audio en un canal cambia de una manera espedfica. Un ejemplo puede ser un periodo sostenido de volumen de voz aumentado. En este caso, el campo “detalles del marcador” de la tupla puede contener informacion sobre el cambio en el volumen que se detecto.• Volume markers: These markers are identified when the volume of audio on a channel changes in a specific way. An example may be a sustained period of increased voice volume. In this case, the field "details of the bookmark" of the tuple can contain information about the change in the volume that was detected.

• Marcadores de velocidad del habla: estos marcadores se identifican cuando la velocidad del habla en un canal cambia de una manera espedfica. Un ejemplo puede ser la deteccion de un intervalo con una velocidad del habla mas lenta. En este caso, el campo “detalles del marcador” de la tupla puede contener informacion sobre la• Speech speed markers: These markers are identified when the speed of speech in a channel changes in a specific way. An example can be the detection of an interval with a slower speech speed. In this case, the field "details of the bookmark" of the tuple can contain information about the

55

1010

15fifteen

20twenty

2525

3030

3535

4040

45Four. Five

50fifty

manera espedfica en la que cambio la velocidad del habla.specific way in which I change the speed of speech.

• Marcadores de ruido: estos marcadores se identifican cuando se detectan determinados patrones de ruido o niveles de ruido en un canal. Un ejemplo puede ser un intervalo con musica alta. En este caso, el tipo, nivel y patron del ruido pueden estar incluidos en el campo “detalles del marcador” de la tupla.• Noise markers: these markers are identified when certain noise patterns or noise levels are detected in a channel. An example can be an interval with high music. In this case, the type, level and pattern of the noise may be included in the field "details of the marker" of the tuple.

• Marcadores de confianza de transcripcion: estos marcadores se identifican cuando una palabra, o secuencia de palabras, tienen confianzas de transcripcion por encima o por debajo de un determinado umbral, o dentro de un intervalo de confianza espedfico. Un ejemplo de esto puede ser la deteccion de una secuencia de al menos cinco palabras consecutivas con un nivel de confianza por debajo del 50%. La informacion de la palabra o las palabras, y sus confianzas respectivas, pueden incluirse en el campo “detalles del marcador” de la tupla.• Transcription confidence markers: these markers are identified when a word, or sequence of words, have transcription trusts above or below a certain threshold, or within a specific confidence interval. An example of this may be the detection of a sequence of at least five consecutive words with a confidence level below 50%. The information of the word or words, and their respective trusts, can be included in the field "details of the bookmark" of the tuple.

• Marcadores mixtos: estos marcadores se identifican cuando se produce una combinacion de otros marcadores simultaneamente, o de otro modo, en combinacion. Un ejemplo puede ser la deteccion simultanea de la velocidad del habla mas lenta y la confianza de transcripcion baja. La informacion sobre los sucesos individuales que activaron el marcador puede incluirse en el campo “detalles del marcador” de la tupla.• Mixed markers: these markers are identified when a combination of other markers occurs simultaneously, or otherwise, in combination. An example may be the simultaneous detection of slower speech speed and low transcription confidence. The information about the individual events that activated the marker can be included in the field "details of the marker" of the tuple.

Del mismo modo se realiza un procesamiento doble de los flujos de voz (es decir, un procesamiento simultaneo de ambos flujos de voz) y, de este modo, puede identificarse un segundo conjunto de marcadores segun diversos criterios. Los marcadores generados por el procesamiento doble reflejan diferentes tipos de correlacion entre los flujos de voz, dando como resultado por tanto diferentes tipos de marcador:In the same way, a double processing of the speech flows is performed (that is, a simultaneous processing of both voice flows) and, in this way, a second set of markers can be identified according to various criteria. The markers generated by the double processing reflect different types of correlation between the voice flows, thus resulting in different types of marker:

• Marcadores de correlacion: estos marcadores se identifican cuando se cumple una determinada condicion en ambos canales de audio, cuando cada flujo de voz de esta realizacion particular pertenece a un canal diferente. Un ejemplo de un marcador de correlacion en relacion con la localizacion de palabras clave puede ser “la frase <toma nota de esto> y la palabra <repetir> se dicen en diferentes canales en un intervalo de 5 segundos”. En este caso, los campos “detalles del marcador” de la tupla pueden incluir detalles sobre la condicion de correlacion que se cumplio.• Correlation markers: these markers are identified when a certain condition is met in both audio channels, when each voice flow of this particular embodiment belongs to a different channel. An example of a correlation marker in relation to the location of keywords can be "the phrase <notes this> and the word <repeat> are said in different channels in a range of 5 seconds". In this case, the "details of the bookmark" fields of the tuple can include details about the correlation condition that was fulfilled.

• Marcadores de repeticion entre canales: un subtipo espedfico de un marcador de correlacion, los marcadores de repeticion entre canales se identifican cuando se detecta la misma palabra o frase en ambos canales dentro de un determinado intervalo de tiempo. No se requiere una coincidencia exacta para identificar el marcador de repeticion entre canales (es decir, puede haber una tolerancia a ligeras discrepancias entre las palabras dichas en un canal y en el otro). Un ejemplo es el siguiente dialogo:• Repetition markers between channels: a specific subtype of a correlation marker, repetition markers between channels are identified when the same word or phrase is detected on both channels within a certain time interval. An exact match is not required to identify the repetition marker between channels (that is, there may be a tolerance for slight discrepancies between the words spoken in one channel and in the other). An example is the following dialogue:

Canal A: “Mi numero es siete cuatro seis”Channel A: "My number is seven four six"

Canal B: “Siete cuatro seis...”Channel B: "Seven four six ..."

Canal A: “Dieciseis”Channel A: "Sixteen"

Canal B: “Uno seis...”Channel B: "One six ..."

No se pretende que estas listas de tipos de marcador sean exhaustivas, sino que deben considerarse como una realizacion particular de la invencion propuesta para complementar el sumario de la invencion sin tener en cuenta ninguna limitacion derivada de esta realizacion particular. Evidentemente pueden usarse diferentes criterios y sucesos de activacion para la identificacion de marcadores, sin desviarse del esprntu de la invencion descrita.It is not intended that these lists of marker types be exhaustive, but should be considered as a particular embodiment of the invention proposed to supplement the summary of the invention without taking into account any limitations derived from this particular embodiment. Obviously different criteria and activation events can be used for the identification of markers, without deviating from the sprint of the described invention.

Despues de haber generado los marcadores, el procedimiento de la invencion realiza determinadas acciones sobre los flujos de voz, segun los marcadores, para extraer piezas de informacion potencialmente relevante de la comunicacion por voz. En esta realizacion particular, las acciones que pueden adoptarse son:After having generated the markers, the method of the invention performs certain actions on the voice flows, according to the markers, to extract pieces of potentially relevant information from the voice communication. In this particular embodiment, the actions that can be taken are:

- Extraer una pieza de informacion especificada en el marcador contenido dentro de los sellos temporales de inicio y finalizacion del marcador, y hacerla pasar a traves de un motor de transcripcion.- Extract a piece of information specified in the bookmark contained within the time stamps of beginning and end of the marker, and pass it through a transcription engine.

- Extraer la pieza de informacion, no del flujo de voz (o canal) especificado en el marcador, sino del otro canal, despues del sello temporal de finalizacion del marcador, para una duracion espedfica, y hacerla pasar a traves de un motor de transcripcion.- Extract the piece of information, not from the voice flow (or channel) specified in the marker, but from the other channel, after the temporary seal of the marker's end, for a specific duration, and pass it through a transcription engine .

Como una variacion, en otra realizacion, se extrae la pieza de informacion empezando por la primera vez que se detecta el habla, despues del sello temporal del marcador.As a variation, in another embodiment, the piece of information is extracted starting with the first time speech is detected, after the time stamp of the marker.

- Extraer la pieza de informacion del otro canal (no el especificado en el marcador) despues del sello temporal de finalizacion del marcador, para una duracion espedfica, y hacerla pasar a traves de un motor de ASR basado en la gramatica, con una gramatica espedfica.- Extract the piece of information from the other channel (not the one specified in the marker) after the temporary seal of the marker, for a specific duration, and pass it through an ASR engine based on grammar, with a specific grammar .

- Extraer la pieza de informacion del otro canal (no el especificado en el marcador) despues del sello temporal de finalizacion del marcador, para una duracion espedfica, y hacerla pasar a traves de un motor de ASR con un modelo de lenguaje (LM) espedfico.- Extract the piece of information from the other channel (not the one specified in the marker) after the temporary seal of the marker, for a specific duration, and pass it through an ASR engine with a specific language model (LM) .

55

1010

15fifteen

20twenty

2525

3030

3535

4040

45Four. Five

50fifty

5555

Las acciones anteriores dan como resultado un fragmento de texto y/o audio ex^do de la conversacion de voz, que contiene una pieza de informacion relevante. Despues de haber procesado todos los marcadores, la recopilacion de esos fragmentos constituye una representacion util de la conversacion de voz.The above actions result in a fragment of text and / or audio ex do o of the voice conversation, which contains a piece of relevant information. After having processed all the markers, the collection of those fragments is a useful representation of the voice conversation.

La figura 1 representa una muestra de una conversacion de voz de 2 partes. El canal 1 (1) ilustra graficamente un marcador identificado - espedficamente, un marcador de localizacion de palabras de un unico canal (3) para las palabras “puede repetir” - y una accion (4) asociada con el mismo. La accion en este ejemplo es: “ejecutar un fragmento de 6 segundos a traves de un motor de transcripcion”. El area de la senal de audio englobada dentro del area de marcador (5) representa el fragmento de audio comprendido entre los sellos temporales de inicio y finalizacion del marcador. La accion ejemplar ilustrada es la extraccion de la pieza de informacion del otro canal (no el especificado en el marcador), del sello temporal de finalizacion del marcador y para una duracion espedfica de seis segundos, seguida por su transcripcion. La ventana de seis segundos se representa en la figura 1 mediante el area 5 dentro de la senal del canal 2 (2).Figure 1 represents a sample of a 2-part voice conversation. The channel 1 (1) graphically illustrates an identified marker - specifically, a word location marker of a single channel (3) for the words "may repeat" - and an action (4) associated therewith. The action in this example is: "execute a 6-second fragment through a transcription engine". The area of the audio signal encompassed within the marker area (5) represents the audio fragment comprised between the time stamps of start and end of the marker. The exemplary action illustrated is the extraction of the piece of information from the other channel (not the one specified in the marker), from the time stamp of end of the marker and for a specific duration of six seconds, followed by its transcription. The six-second window is represented in figure 1 by the area 5 within the signal of channel 2 (2).

La figura 2 representa el sistema de la invencion. Los flujos de audio de voz (21) se proporcionan a un modulo generador de marcadores (22), que procesa los flujos de audio de voz de la llamada de voz y genera los marcadores correspondientes. La entrada del generador de marcadores, como ya se menciono, puede comprender varios flujos de audio de voz. Una vez generados los marcadores, dichos marcadores (23) se envfan a un procesador de acciones (24) que toma los marcadores como entrada y ejecuta determinadas acciones sobre los flujos de audio de voz segun cierta configuracion, generando informacion relevante (25) como resultado. Las siguientes figuras profundizan mas en detalle.Figure 2 represents the system of the invention. The voice audio streams (21) are provided to a marker generator module (22), which processes the voice audio streams of the voice call and generates the corresponding markers. The input of the marker generator, as already mentioned, may comprise several voice audio streams. Once the markers are generated, said markers (23) are sent to an action processor (24) that takes the markers as input and executes certain actions on the voice audio streams according to a certain configuration, generating relevant information (25) as a result . The following figures go deeper in detail.

Como elemento adicional para la realizacion del sistema representado en la figura 2, la figura 3 representa un modulo de diarizacion del orador (37). La comunicacion por voz (36) se dirige al modulo de diarizacion para solucionar los casos en los que los diferentes canales en la comunicacion por voz no estan disponibles por separado. Entonces el modulo de diarizacion del orador recibe la comunicacion por voz en un fragmento y, aplicando un analisis de voz en la comunicacion por voz, dicha comunicacion por voz se divide en varios flujos, incluyendo cada uno las partes de la comunicacion por voz de entrada en las que habla cada parte. A continuacion, los flujos de audio de voz resultantes pueden alimentar al modulo generador de marcadores, que es equivalente al del sistema ilustrado en la figura 2.As an additional element for carrying out the system represented in FIG. 2, FIG. 3 represents a speaker's diary module (37). The voice communication (36) is directed to the diary module to solve the cases in which the different channels in voice communication are not available separately. Then the speaker's diary module receives the communication by voice in a fragment and, applying a voice analysis in the voice communication, said voice communication is divided into several flows, each including the parts of the voice communication input in which each part speaks. Then, the resulting voice audio streams can feed the marker generator module, which is equivalent to the system illustrated in Figure 2.

La figura 4 representa una realizacion mas detallada del modulo generador de marcadores (22). Aunque solo se ilustra un flujo de audio de voz, debe entenderse que puede usarse el mismo ejemplo o un ejemplo diferente de cada uno de los componentes ilustrados para procesar cada uno de los flujos de audio. Por ejemplo, en el caso basico de una conversacion de voz bilateral, en un caso el modulo de duplicacion del flujo de audio puede actuar en el primer flujo, y en otro caso ese modulo puede actuar en el segundo flujo, etc.Figure 4 represents a more detailed embodiment of the marker generator module (22). Although only one voice audio stream is illustrated, it should be understood that the same example or a different example of each of the illustrated components may be used to process each of the audio streams. For example, in the basic case of a bilateral voice conversation, in one case the duplication module of the audio stream may act in the first flow, and in another case that module may act in the second flow, etc.

Un modulo de duplicacion del flujo de audio (41) duplica cada trama del flujo de voz entrante para generar N copias del flujo de voz, para su envfo a los modulos procesadores de audio. Los modulos procesadores de audio son los modulos que procesan cada flujo de voz para generar los marcadores. En la figura 4, la realizacion representada comprende cuatro modulos procesadores de audio:A duplication module of the audio stream (41) duplicates each frame of the incoming voice stream to generate N copies of the voice stream, for sending to the audio processor modules. The audio processor modules are the modules that process each voice stream to generate the markers. In Figure 4, the represented embodiment comprises four audio processor modules:

- Un analizador de senales de voz (42), que puede medir niveles de ruido en la senal de voz y variaciones en el volumen de voz, y compararlos con patrones de ruido (46) o patrones de volumen (47) configurados previamente. Este modulo genera marcadores de volumen y marcadores de ruido, tal como se describio anteriormente.- A speech signal analyzer (42), which can measure noise levels in the voice signal and variations in the voice volume, and compare them with noise patterns (46) or volume patterns (47) previously configured. This module generates volume markers and noise markers, as described above.

- Un analizador de prosodia (43), que puede detectar la entonacion del habla, y compararla con patrones de entonacion configurados previamente (48). El analizador de prosodia y el analizador de senales de voz son, en realizaciones alternativas de la invencion, modulos separados, o solo instancias de un detector de actividad de voz (VAD) disponible en el estado de la tecnica.- A prosody analyzer (43), which can detect speech intonation, and compare it with previously configured intonation patterns (48). The prosody analyzer and the speech signal analyzer are, in alternate embodiments of the invention, separate modules, or only instances of a speech activity detector (VAD) available in the state of the art.

- Un motor de ASR configurado para la localizacion de palabras (44), que toma una lista de palabras configuradas (49) y puede detectarlas en el flujo de audio de voz, si estan presentes.- An ASR engine configured for the location of words (44), which takes a list of configured words (49) and can detect them in the voice audio stream, if present.

- Un motor de ASR configurado para la transcripcion (45), que produce una transcripcion del flujo de audio de voz y puede medir la velocidad del habla comparandola con patrones de velocidad del habla configurados previamente (50) (es decir, palabras por unidad de tiempo); calcular una confianza de la transcripcion, comparandola con patrones de confianza de transcripcion, configurados previamente (51), de cada palabra o frase; buscar construcciones espedficas en el habla, mas alla de frases fijas (tales como expresiones de fecha o numeros de telefono). El motor de ASR configurado para la localizacion de palabras y el motor de ASR configurado para la transcripcion son, en realizaciones alternativas de la invencion, modulos separados, o solo instancias de un motor de reconocimiento de voz (ASR), estando configurada cada instancia con diferentes modelos y/o modalidades de operacion.- An ASR engine configured for transcription (45), which produces a transcription of the voice audio stream and can measure speech speed by comparing it with previously configured speech speed patterns (50) (ie words per unit of speech) weather); calculate a transcription confidence, comparing it with previously configured transcription confidence patterns (51), of each word or phrase; look for specific constructions in speech, beyond fixed phrases (such as date expressions or telephone numbers). The ASR engine configured for the location of words and the ASR engine configured for transcription are, in alternative embodiments of the invention, separate modules, or only instances of a speech recognition engine (ASR), each instance being configured with different models and / or operating modalities.

- Analizador de segundo orden (53). Siempre que se genere un marcador por cualquiera de los modulos de procesador de audio (42, 43, 44, 45), un analizador de segundo orden evalua el conjunto de todos los marcadores generados (54). Este analisis puede dar como resultado la generacion de uno o mas marcadores de segundo orden, tales como marcadores de correlacion si la comparacion de los marcadores generados con patrones de correlacion- Second order analyzer (53). Whenever a marker is generated by any of the audio processor modules (42, 43, 44, 45), a second order analyzer evaluates the set of all generated markers (54). This analysis can result in the generation of one or more second order markers, such as correlation markers if the comparison of markers generated with correlation patterns

55

1010

15fifteen

20twenty

2525

3030

3535

4040

45Four. Five

50fifty

5555

configurados previamente (55) es satisfactoria, o marcadores de patron mixtos si la comparacion de los marcadores generados con patrones mixtos configurados previamente (56) es satisfactoria. Estos nuevos marcadores pueden activar de nuevo el procesado del analizador de segundo orden y, a su vez, dar como resultado la generacion de marcadores adicionales. Aunque la configuracion de los patrones mixtos y los patrones de correlacion evita que este proceso caiga en bucles infinitos o tiempos de procesamiento prolongados, pueden fijarse restricciones adicionales para garantizar esto. Ejemplos de tales restricciones son: no tener en cuenta marcadores con una antiguedad de mas de N segundos; tener en cuenta unicamente los M marcadores generados en ultimo lugar.previously configured (55) is satisfactory, or mixed pattern markers if the comparison of the markers generated with mixed patterns previously configured (56) is satisfactory. These new markers can activate the processing of the second order analyzer again and, in turn, result in the generation of additional markers. Although the configuration of the mixed patterns and the correlation patterns prevents this process from falling into infinite loops or long processing times, additional restrictions can be set to guarantee this. Examples of such restrictions are: do not take into account markers older than N seconds; take into account only the M markers generated last.

Ademas, segun una realizacion de la invencion, el analisis de segundo orden tambien puede dar como resultado la eliminacion de uno o mas marcadores, segun reglas configuradas. Un ejemplo de esto es evitar marcadores duplicados (por ejemplo dos marcadores de “volumen de voz alto” que aparezcan demasiado cerca en el tiempo entre sf), o cuando un nuevo marcador generado en el analisis de segundo orden hace que los marcadores de primer orden que lo activaron sean innecesarios (por ejemplo, un determinado marcador de patron de entonacion y un marcador de localizacion de palabras para el nombre del otro participante en la conversacion [“Juan!”] pueden activar un marcador de segundo orden de “llamada de atencion”, que transmite el significado compuesto de ambos marcadores de primer orden, haciendo que sean innecesarios).Furthermore, according to an embodiment of the invention, the second order analysis may also result in the elimination of one or more markers, according to configured rules. An example of this is to avoid duplicate markers (for example two "loud voice volume" markers that appear too close in time between each other), or when a new marker generated in the second order analysis causes the first order markers that activated it are unnecessary (for example, a certain intonation pattern marker and a word location marker for the name of the other participant in the conversation ["Juan!"] can activate a second order "attention" marker ", Which transmits the composite meaning of both first order markers, making them unnecessary).

La figura 5 ilustra una realizacion mas detallada del modulo procesador de acciones (24). Los marcadores generados por el modulo generador de marcadores (22) son la entrada para el modulo procesador de acciones, que realiza acciones en los flujos de audio de voz segun la informacion contenida en los marcadores y extrae la informacion relevante contenida en la comunicacion por voz.Figure 5 illustrates a more detailed embodiment of the action processor module (24). The markers generated by the marker generator module (22) are the input for the action processor module, which performs actions on the voice audio streams according to the information contained in the markers and extracts the relevant information contained in the voice communication .

El modulo procesador de acciones esta configurado para decidir que accion corresponde a cada marcador. El modulo procesador de acciones toma cada marcador generado, calcula la accion a realizar segun la configuracion de accion (60), a continuacion la ejecuta por medio de un proceso de ejecucion de acciones. La realizacion particular de la figura 5 ilustra tres procesos diferentes de ejecucion de acciones a modo de ejemplo:The action processor module is configured to decide which action corresponds to each marker. The action processor module takes each generated marker, calculates the action to be performed according to the action configuration (60), then executes it through a process of executing actions. The particular embodiment of Figure 5 illustrates three different processes for executing actions by way of example:

- Un divisor de flujo de audio (57) para extraer un segmento de un flujo de audio definido por su sello- An audio stream splitter (57) to extract a segment of an audio stream defined by its stamp

temporal de inicio y su sello temporal de finalizacion (o duracion).temporary start and its temporary seal of completion (or duration).

- Un motor de ASR configurado para la transcripcion (58), para transcribir la voz contenida en un flujo de audio de voz, o un segmento de audio, a texto.- An ASR engine configured for transcription (58), to transcribe the voice contained in a voice audio stream, or an audio segment, to text.

- Un procesador de texto (59), para buscar palabras, frases o patrones (gramatica) en un texto de entrada.- A word processor (59), to search for words, phrases or patterns (grammar) in an input text.

El procesamiento de un marcador puede dar como resultado una o mas acciones; la ejecucion de una accion puede implicar uno o mas procesos de ejecucion de acciones (por ejemplo, puede implicar la extraccion de un segmento de 5 segundos de un flujo de audio, hacer pasar ese segmento a traves del motor de ASR para su transcripcion, a continuacion hacer pasar la transcripcion a traves del procesamiento de texto para identificar un patron de fecha). La ejecucion de una accion puede dar como resultado cero o mas fragmentos de informacion relevante.The processing of a marker can result in one or more actions; the execution of an action may involve one or more processes of execution of actions (for example, it may involve the extraction of a segment of 5 seconds from an audio stream, passing that segment through the ASR engine for its transcription, to continue to pass the transcript through text processing to identify a date pattern). The execution of an action can result in zero or more fragments of relevant information.

Las figuras 6 y 7 presentan una realizacion particular de la invencion propuesta. Para proporcionar algo de claridad, esta implfcita una definicion simplificada de informacion relevante, concretamente, la informacion relevante solo comprende lo que dicen las partes despues de una frase introductoria tal como “por favor anote ...”, “escriba ...” o “puede tomar nota de ...”. Ademas, esta realizacion particular considera una llamada normal, entre 2 partes, en la que ambos canales estan disponibles por separado para el procesamiento.Figures 6 and 7 present a particular embodiment of the proposed invention. To provide some clarity, this implied a simplified definition of relevant information, namely, the relevant information only includes what the parties say after an introductory phrase such as "please write ...", "write ..." or "You can take note of ..." Furthermore, this particular embodiment considers a normal call, between 2 parts, in which both channels are available separately for processing.

Espedficamente, la figura 6 ilustra la generacion de marcadores para esta realizacion particular. Hay un modulo procesador de audio, concretamente, un motor de ASR para la localizacion de palabras (70). En la figura 6, estan activas dos instancias del modulo y se encargan de procesar cada uno de los flujos de audio en la llamada de voz. El motor de ASR para la localizacion de palabras esta configurado para etiquetar cada incidencia de las frases de una lista de localizacion de palabras (71): “anote”, “escriba”, “tome nota”. En la figura 6, se supone que la persona que llama produce el flujo de voz 74 y dice una de estas frases en dos momentos diferentes de la conversacion de voz, por tanto, se generan los marcadores 1 y 3 (72). La persona a la que se llama produce el flujo de voz 75 y dice una de esas frases una vez durante la conversacion de voz (por tanto, se genera el marcador 2 (73))Specifically, Figure 6 illustrates the generation of markers for this particular embodiment. There is an audio processor module, namely, an ASR engine for the location of words (70). In figure 6, two instances of the module are active and are responsible for processing each of the audio streams in the voice call. The ASR engine for word location is configured to label each occurrence of the phrases in a word location list (71): "write down", "write", "take note". In Figure 6, it is assumed that the caller produces voice flow 74 and says one of these phrases at two different times of the voice conversation, therefore, markers 1 and 3 (72) are generated. The called person produces voice flow 75 and says one of those phrases once during the voice conversation (therefore, marker 2 is generated (73))

La figura 6 tambien muestra la definicion espedfica del marcador 1 (76), como una tupla que contiene la hora de inicio y la hora de finalizacion, el canal al que se refiere (en este caso, el canal 1, que es la identificacion dada a la persona que llama), el tipo de marcador (localizacion de palabras) y los detalles espedficos del marcador. Para un marcador de localizacion de palabras, se supone que se incluyen tanto la frase espedfica que activo el marcador (en este caso, “tome nota”) como la confianza de la deteccion.Figure 6 also shows the specific definition of marker 1 (76), as a tuple containing the start time and the end time, the channel it refers to (in this case, channel 1, which is the given identification) to the caller), the type of marker (location of words) and the specific details of the marker. For a word location marker, it is assumed that both the specific phrase that activates the marker (in this case, "take note") and the confidence of the detection are included.

La figura 7 ilustra el modulo procesador de acciones para esta realizacion particular. Como continuacion de la figura 6, que ilustra el generador de marcadores de la realizacion, la salida (76) es la entrada del procesador de acciones. El procesador de acciones comprende dos procesos de ejecucion de acciones: un divisor de flujo de audio (77) y un motor de ASR para la transcripcion (78). Tambien se muestra una configuracion de accion de muestra, que contiene una regla (79). Esta regla especifica las acciones que van a realizarse en un marcador de localizacion de palabras como, por ejemplo, el “marcador 1” (76), concretamente:Figure 7 illustrates the action processor module for this particular embodiment. As a continuation of Figure 6, which illustrates the marker generator of the embodiment, the output (76) is the input of the action processor. The action processor comprises two actions execution processes: an audio stream splitter (77) and an ASR engine for transcription (78). A sample action configuration is also shown, which contains a rule (79). This rule specifies the actions to be performed in a word location marker such as, for example, "marker 1" (76), specifically:

55

1010

15fifteen

20twenty

2525

• Extraer un segmento del canal al que se refiere el marcador, comenzando 3 segundos despues de la hora de finalizacion del marcador, y con una duracion de 15 segundos.• Extract a segment of the channel that the marker refers to, starting 3 seconds after the end time of the marker, and with a duration of 15 seconds.

• Transcribir ese segmento.• Transcribe that segment.

Esta regla pretende recuperar la informacion espedfica que el orador pretendfa destacar cuando dijo la frase de activacion, que habitualmente viene un poco despues de decir “anote que”, “escriba”, etc.This rule seeks to recover the specific information that the speaker intended to highlight when he said the activation phrase, which usually comes a bit after saying "write down", "write", etc.

Despues de haber aplicado la accion, se obtiene un texto resultante, que contiene la informacion relevante identificada (80).After having applied the action, a resulting text is obtained, which contains the relevant information identified (80).

Un ejemplo de un caso para ello puede ser:An example of a case for this can be:

Para la regla:For the rule:

“Regla de configuracion de accion n° 1:"Rule of configuration of action n ° 1:

Si tipo _ marcador = “localizacion de palabras”:If type _ marker = "word location":

Segmento=divid(id_flujo,hora_fin +3s, 15s)Segment = divide (flow_id, end_time + 3s, 15s)

Transcribir (segmento)”Transcribe (segment) "

Y para la informacion relevante:And for the relevant information:

“detalles mi numero de telefono es uno ocho tres cuatro nueve dos seises nueve tres cuatro cinco. Lo repetire”"Details my phone number is one eight three four nine two six nine three four five. I will repeat it "

Como puede observarse, el sistema proporciona informacion util, aunque la calidad de la informacion identificada puede mejorarse en este caso anadiendo, segun otra realizacion de la invencion, un modulo de procesamiento de texto como un proceso de ejecucion de acciones, configurado para buscar numeros de telefono en un texto de entrada.As can be seen, the system provides useful information, although the quality of the identified information can be improved in this case by adding, according to another embodiment of the invention, a text processing module as a process of executing actions, configured to search for numbers of telephone in an entry text.

El procedimiento de la invencion, segun una realizacion particular, comprende procesar cada uno de los flujos de voz en la comunicacion por voz de manera consecutiva o, segun otra realizacion, en paralelo. Puede realizarse en tiempo real (es decir, mientras se produce la comunicacion por voz), otras su finalizacion.The method of the invention, according to a particular embodiment, comprises processing each of the voice flows in voice communication consecutively or, according to another embodiment, in parallel. It can be done in real time (that is, while voice communication occurs), others its completion.

A lo largo de todo este documento, se usan los terminos llamada de voz, conversacion de voz y comunicacion por voz de manera intercambiable para significar la comunicacion smcrona entre dos o mas partes por voz. Todo lo que se indica sobre llamadas de voz puede aplicarse a comunicaciones de video, considerando solo la parte de voz de la comunicacion de video.Throughout this document, the terms "voice", "voice conversation" and "voice communication" are used interchangeably to signify the synchronous communication between two or more parts by voice. All that is said about voice calls can be applied to video communications, considering only the voice part of the video communication.

Claims (16)

55 1010 15fifteen 20twenty 2525 3030 3535 4040 45Four. Five 50fifty REIVINDICACIONES 1. Procedimiento para obtener informacion relevante de una comunicacion por voz proporcionada entre al menos dos usuarios, en el que la comunicacion por voz comprende al menos dos flujos de voz (21) pertenecientes a dichos al menos dos usuarios, comprendiendo el procedimiento las siguientes etapas:A method for obtaining relevant information of a voice communication provided between at least two users, wherein the voice communication comprises at least two voice flows (21) belonging to said at least two users, the procedure comprising the following steps : a) generar marcadores con sellos temporales (23), asociados a dichos al menos dos flujos de voz, segun determinadas caractensticas extrafdas de dichos al menos dos flujos de voz, en el que, cuando cierta caractenstica es comun (55) a ambos flujos de voz, generar un marcador con sello temporal (54) adicional, que indica una correlacion entre dichos al menos dos flujos de voz (21);a) generate markers with time stamps (23), associated to said at least two voice flows, according to certain characteristics extracted from said at least two voice flows, in which, when a certain characteristic is common (55) to both flows of voice, generating a marker with additional time stamp (54), indicating a correlation between said at least two voice streams (21); b) extraer (57) determinadas piezas de informacion de dichos al menos dos flujos de voz, segun cierta informacion que comprenden los marcadores;b) extracting (57) certain pieces of information from said at least two voice flows, according to certain information comprising the markers; c) transcribir (58) las determinadas piezas de informacion en texto para obtener la informacion relevante (25) de la comunicacion por voz.c) transcribing (58) the certain pieces of information in text to obtain the relevant information (25) of the voice communication. 2. El procedimiento segun la reivindicacion 1, que comprende ademas separar dichos al menos dos flujos de voz, pertenecientes a dichos al menos dos usuarios, de la comunicacion por voz.The method according to claim 1, further comprising separating said at least two voice streams, belonging to said at least two users, from voice communication. 3. El procedimiento segun una cualquiera de las reivindicaciones anteriores, en el que las determinadas caractensticas de la etapa a) comprenden al menos una de las siguientes caractensticas: entonacion, volumen, velocidad del habla, ruido.The method according to any one of the preceding claims, wherein the certain features of step a) comprise at least one of the following characteristics: intonation, volume, speech speed, noise. 4. El procedimiento segun una cualquiera de las reivindicaciones anteriores, en el que la cierta informacion que comprenden los marcadores esta contenida en una tupla que, a su vez, comprende elementos de la siguiente lista: un identificador para el flujo de voz perteneciente a cada usuario, un sello temporal de inicio, un sello temporal de finalizacion, una indicacion del tipo de marcador, otros detalles del marcador.The method according to any one of the preceding claims, wherein the certain information comprising the markers is contained in a tuple which, in turn, comprises elements of the following list: an identifier for the voice flow belonging to each user, a temporary stamp of beginning, a temporary seal of completion, an indication of the type of marker, other details of the marker. 5. El procedimiento segun una cualquiera de las reivindicaciones anteriores, que comprende ademas comparar una caractenstica de dichos al menos dos flujos de voz con un patron configurado previamente.The method according to any one of the preceding claims, further comprising comparing a feature of said at least two speech flows with a previously configured pattern. 6. El procedimiento segun la reivindicacion 4, en el que la etapa b) de extraer una pieza de informacion comprende ademas extraer la pieza de informacion contenida dentro de los sellos temporales de inicio y finalizacion definidos en el marcador.6. The method according to claim 4, wherein step b) of extracting a piece of information further comprises extracting the piece of information contained within the start and end time stamps defined in the marker. 7. El procedimiento segun la reivindicacion 4, en el que la etapa b) de extraer una pieza de informacion comprende ademas extraer la pieza de informacion, del otro flujo de voz distinto al indicado por el identificador de la tupla, contenida despues del sello temporal de inicio definido en el marcador para una duracion espedfica.The method according to claim 4, wherein step b) of extracting a piece of information further comprises extracting the piece of information from the other voice stream other than that indicated by the identifier of the tuple, contained after the time stamp Start defined in the marker for a specific duration. 8. El procedimiento segun una cualquiera de las reivindicaciones anteriores, que comprende ademas pasar las piezas de informacion extrafdas a traves de un sistema de reconocimiento de voz automatico, basado en la gramatica, con una gramatica espedfica.The method according to any one of the preceding claims, further comprising passing the pieces of information extracted through an automatic speech recognition system, based on grammar, with a specific grammar. 9. El procedimiento segun una cualquiera de las reivindicaciones anteriores, que comprende ademas pasar las piezas de informacion extrafdas a traves de un sistema de reconocimiento de voz automatico con un modelo de lenguaje espedfico.The method according to any one of the preceding claims, further comprising passing the pieces of information extracted through an automatic voice recognition system with a specific language model. 10. El procedimiento segun cualquiera de las reivindicaciones anteriores, en el que las etapas se realizan en tiempo real.The method according to any of the preceding claims, wherein the steps are performed in real time. 11. El procedimiento segun cualquiera de las reivindicaciones 1 a 9, que comprende ademas almacenar la comunicacion por voz en un dispositivo de almacenamiento de datos.The method according to any of claims 1 to 9, further comprising storing the voice communication in a data storage device. 12. Sistema para obtener informacion relevante de una comunicacion por voz proporcionada entre al menos dos usuarios, en el que la comunicacion por voz comprende al menos dos flujos de voz, pertenecientes a dichos al menos dos usuarios, comprendiendo el sistema:12. System for obtaining relevant information of a voice communication provided between at least two users, in which the voice communication comprises at least two voice flows, belonging to said at least two users, the system comprising: - un generador de marcadores (22) que esta adaptado para recibir dichos al menos dos flujos de voz (21) que van a analizarse, y esta adaptado para generar marcadores con sellos temporales, segun ciertas caractensticas extrafdas desde dichos al menos dos flujos de voz, en el que, cuando cierta caractenstica es comun (55) a ambos flujos de voz, esta adaptado para generar un marcador con sello temporal (54) adicional, que indica una correlacion entre dichos al menos dos flujos de voz;- a marker generator (22) that is adapted to receive said at least two voice streams (21) to be analyzed, and is adapted to generate markers with time stamps, according to certain features extracted from said at least two voice streams , wherein, when a certain feature is common (55) to both voice streams, it is adapted to generate a marker with additional time stamp (54), which indicates a correlation between said at least two voice streams; - un procesador de acciones (24) adaptado para extraer determinadas piezas de informacion de dichos al menos dos flujos de voz, segun alguna informacion comprendida por los marcadores, y adaptado para transcribir las determinadas piezas de informacion, en texto, estando por tanto adaptado para obtener la informacion relevante (25) de la comunicacion por voz.- a processor of actions (24) adapted to extract certain pieces of information from said at least two voice flows, according to some information comprised by the markers, and adapted to transcribe the determined pieces of information, in text, being therefore adapted for obtain the relevant information (25) of the voice communication. 55 1010 15fifteen 20twenty 2525 13. Sistema segun la reivindicacion 12, que comprende ademas un modulo de diarizacion de flujo, adaptado para separar al menos dos flujos de voz, pertenecientes a diferentes usuarios, de la comunicacion por voz proporcionada.The system according to claim 12, further comprising a flow diary module, adapted to separate at least two voice streams, belonging to different users, from the provided voice communication. 14. Sistema segun la reivindicacion anterior, en el que el generador de marcadores comprende ademas al menos uno de los siguientes modulos:System according to the previous claim, wherein the marker generator also comprises at least one of the following modules: - un analizador de senal de voz, adaptado para medir niveles de ruido en un flujo de voz y variaciones en el volumen, y adaptado para compararlos con patrones de ruido y volumen configurados previamente;- a voice signal analyzer, adapted to measure noise levels in a voice flow and variations in volume, and adapted to be compared with previously configured noise and volume patterns; - un analizador de prosodia adaptado para detectar la entonacion del habla y compararla con patrones configurados previamente;- a prosody analyzer adapted to detect speech intonation and compare it with previously configured patterns; - un motor de reconocimiento de voz automatico, configurado para la localizacion de palabras, adaptado para detectar en un flujo de voz cualquiera de las palabras o frases de una lista definida previamente;- an automatic speech recognition engine, configured for the location of words, adapted to detect in a voice flow any of the words or phrases of a previously defined list; - un motor de reconocimiento de voz automatico, configurado para la transcripcion, para medir una velocidad del habla en palabras por unidad de tiempo;- an automatic speech recognition engine, configured for transcription, to measure a speech speed in words per unit of time; - un analizador de segundo orden conectado a los modulos previos, adaptado para detectar marcadores repetidos, marcadores que se producen simultaneamente en ambos de dichos al menos dos flujos de voz y demuestran cierta correlacion comparandolos con patrones de correlacion.- a second-order analyzer connected to the previous modules, adapted to detect repeated markers, markers that are produced simultaneously in both of said at least two voice flows and demonstrate certain correlation by comparing them with correlation patterns. 15. Sistema segun la reivindicacion 12, en el que el procesador de acciones comprende ademas los siguientes modulos:15. System according to claim 12, wherein the action processor further comprises the following modules: - un divisor de flujo de audio, adaptado para extraer un segmento de un flujo de voz definido por su hora de inicio y su hora de finalizacion, o su duracion;- an audio stream splitter, adapted to extract a segment of a voice stream defined by its start time and its end time, or its duration; - un modulo de reconocimiento de voz de audio, configurado para la transcripcion de un flujo de voz en texto;- an audio voice recognition module, configured for the transcription of a voice flow in text; - un modulo procesador de texto, adaptado para buscar palabras, frases o patrones espedficos.- a text processor module, adapted to search for specific words, phrases or patterns. 16. Un producto de programa de ordenador que comprende un codigo de programa de ordenador adaptado para realizar el procedimiento segun cualquiera de las reivindicaciones 1a 11 cuando dicho codigo de programa se ejecuta en un ordenador, un procesador de senales digitales, una formacion de compuertas programables en el terreno, un circuito integrado espedfico de la aplicacion, un microprocesador, un micro-controlador o cualquier otra forma de hardware programable.16. A computer program product comprising a computer program code adapted to perform the method according to any of claims 1 to 11 when said program code is executed in a computer, a digital signal processor, a programmable gate array in the field, a specific integrated circuit of the application, a microprocessor, a micro-controller or any other form of programmable hardware.
ES13382034.0 2013-02-04 Procedure and system to obtain relevant information from a voice communication Active ES2577705T3 (en)

Publications (1)

Publication Number Publication Date
ES2577705T3 true ES2577705T3 (en) 2016-07-18

Family

ID=

Similar Documents

Publication Publication Date Title
US10902856B2 (en) System and method of diarization and labeling of audio data
US10522151B2 (en) Conference segmentation based on conversational dynamics
US10516782B2 (en) Conference searching and playback of search results
US20200127865A1 (en) Post-conference playback system having higher perceived quality than originally heard in the conference
US10057707B2 (en) Optimized virtual scene layout for spatial meeting playback
EP2609588B1 (en) Speech recognition using language modelling
US11076052B2 (en) Selective conference digest
CN111797632B (en) Information processing method and device and electronic equipment
US20180190266A1 (en) Conference word cloud
WO2014118420A1 (en) Method and system for obtaining relevant information from a voice communication
CN103514882B (en) A kind of audio recognition method and system
JP5387416B2 (en) Utterance division system, utterance division method, and utterance division program
CN107886940B (en) Voice translation processing method and device
CN117043856A (en) End-to-end model on high-efficiency streaming non-recursive devices
ES2577705T3 (en) Procedure and system to obtain relevant information from a voice communication
CN113724690B (en) PPG feature output method, target audio output method and device
Zhang et al. A computer-assist algorithm to detect repetitive stuttering automatically
US11979360B2 (en) Multi-phrase responding in full duplex voice conversation
CN112397053A (en) Voice recognition method and device, electronic equipment and readable storage medium
KR20220040813A (en) Computing Detection Device for AI Voice