FR3026542A1 - RECOGNIZED VOICE RECOGNITION - Google Patents
RECOGNIZED VOICE RECOGNITION Download PDFInfo
- Publication number
- FR3026542A1 FR3026542A1 FR1459325A FR1459325A FR3026542A1 FR 3026542 A1 FR3026542 A1 FR 3026542A1 FR 1459325 A FR1459325 A FR 1459325A FR 1459325 A FR1459325 A FR 1459325A FR 3026542 A1 FR3026542 A1 FR 3026542A1
- Authority
- FR
- France
- Prior art keywords
- processing unit
- user
- score
- command
- voice command
- 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.)
- Granted
Links
- 238000012545 processing Methods 0.000 claims abstract description 56
- 238000005352 clarification Methods 0.000 claims abstract description 17
- 238000000034 method Methods 0.000 claims description 21
- 238000004590 computer program Methods 0.000 claims description 2
- 238000012360 testing method Methods 0.000 description 23
- 230000000295 complement effect Effects 0.000 description 3
- 230000006872 improvement Effects 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000002123 temporal effect Effects 0.000 description 2
- 101000712600 Homo sapiens Thyroid hormone receptor beta Proteins 0.000 description 1
- 101150049692 THR4 gene Proteins 0.000 description 1
- 102100033451 Thyroid hormone receptor beta Human genes 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000001427 coherent effect Effects 0.000 description 1
- 238000004883 computer application Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000015654 memory Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
- 230000001755 vocal effect Effects 0.000 description 1
- 230000003936 working memory 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/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
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)
- User Interface Of Digital Computer (AREA)
Abstract
L'invention concerne une reconnaissance vocale, dans laquelle une unité de traitement (PROC, MEM) détermine un niveau d'intelligibilité d'un commande vocale prononcée par un utilisateur et, en cas d'inintelligibilité de la commande, transmet à une interface homme/machine (SCR, HP) un signal de demande de clarification par l'utilisateur d'une partie au moins de la commande vocale. En particulier, on prévoit les étapes dans lesquelles: - l'unité de traitement évalue un score d'intelligibilité de la commande vocale, et - l'unité de traitement transmet à l'interface homme/machine un signal de demande de clarification en fonction du score d'intelligibilité.The invention relates to voice recognition, in which a processing unit (PROC, MEM) determines a speech intelligibility level pronounced by a user and, in case of unintelligibility of the command, transmits to a human interface. / machine (SCR, HP) a user clarification request signal of at least a part of the voice command. In particular, the steps are envisaged in which: the processing unit evaluates an intelligibility score of the voice command, and the processing unit transmits to the man / machine interface a clarification request signal based on intelligibility score.
Description
Reconnaissance vocale perfectionnée La présente invention concerne le domaine de la reconnaissance vocale.The present invention relates to the field of speech recognition.
L'invention trouve une application avantageuse mais non limitée à la conception d'assistants personnels intelligents, notamment dans le cadre de la commande par instructions vocales d'ordinateurs de bord de véhicules automobiles, par exemple pour des applications de navigation par GPS, ou encore pour des applications de lancement d'appels téléphoniques en mains libres ou de messageries, ou encore de consultation de documents.The invention finds an advantageous but not limited application to the design of intelligent personal assistants, particularly in the context of the voice command control of on-board computers of motor vehicles, for example for GPS navigation applications, or even for hands-free phone calling or messaging applications, or document consultation.
Dans ce qui suit, les instructions vocales sont appelées « commandes vocales », le terme « instructions » étant réservé aux instructions de l'application informatique qui interprète les commandes vocales et qui pilote l'exécution des applications correspondantes (assister la navigation jusqu'à un point précis, lancer un appel téléphonique vers un contact précis, etc.).In the following, the voice instructions are called "voice commands", the term "instructions" being reserved for the instructions of the computer application that interprets the voice commands and which controls the execution of the corresponding applications (assist navigation up to a specific point, make a phone call to a specific contact, etc.).
On connait des assistants personnels intelligents qui comprennent les commandes vocales prononcées par des utilisateurs et qui répondent à leurs requêtes. Leur fonctionnement se base sur une reconnaissance vocale avancée, avec un traitement du langage oral naturel, en procédant à une synthèse vocale. Dans ce type de procédé, les mots prononcés par l'utilisateur sont comparés à une base et la succession des mots la plus probable par rapport à la comparaison de chaque mot est retenue comme étant la commande vocale de l'utilisateur. Or souvent, cette commande vocale, une fois ainsi construite, doit être interprétée d'un bloc. Dans le cas où elle ne correspond à aucune instruction d'une application à lancer. L'assistant personnel indique simplement qu'il n'a pas compris la commande et demande de répéter. Les mots répétés ne conduisent pas à une amélioration de la compréhension par l'assistant, ce qui bloque définitivement l'interactivité et procure à l'utilisateur un mauvais ressenti de l'interface.Intelligent Personal Assistants are known to understand voice commands spoken by users and responding to their requests. Their operation is based on an advanced speech recognition, with a natural oral language processing, by performing a speech synthesis. In this type of method, the words spoken by the user are compared to a base and the succession of the most probable words with respect to the comparison of each word is selected as being the voice command of the user. But often this voice command, once so constructed, must be interpreted in one block. In case it does not correspond to any instruction of an application to launch. The personal assistant simply indicates that he did not understand the command and asks to repeat. Repeated words do not lead to improved understanding by the wizard, which permanently blocks interactivity and gives the user a bad feeling of the interface.
La présente invention vient améliorer la situation.The present invention improves the situation.
Elle propose en particulier d'améliorer le traitement de reconnaissance vocale pour qu'une interface homme/machine puisse guider l'utilisateur dans l'énoncé d'une commande vocale correctement interprétable par l'assistant personnel.In particular, it proposes to improve speech recognition processing so that a man / machine interface can guide the user in the utterance of a voice command correctly interpretable by the personal assistant.
L'invention vise un procédé mis en oeuvre par des moyens informatiques, de reconnaissance vocale, dans lequel une unité de traitement détermine un niveau d'intelligibilité d'un commande vocale prononcée par un utilisateur et, en cas d'inintelligibilité de la commande, transmet à une interface homme/machine un signal de demande de clarification par l'utilisateur d'une partie au moins de la commande vocale. Plus particulièrement, le procédé comporte alors les étapes dans lesquelles: - l'unité de traitement évalue un score d'intelligibilité de la commande vocale, et - l'unité de traitement transmet à l'interface homme/machine un signal de demande de clarification en fonction de ce score d'intelligibilité.The invention relates to a method implemented by computer means, voice recognition, in which a processing unit determines a level of intelligibility of a voice command pronounced by a user and, in case of unintelligibility of the command, transmits to a human / machine interface a user clarification request signal of at least a part of the voice command. More particularly, the method then comprises the steps in which: the processing unit evaluates an intelligibility score of the voice command, and the processing unit transmits a clarification request signal to the man / machine interface; according to this intelligibility score.
Ainsi, selon le score précité, si la commande vocale ne correspond pas à une instruction complète pouvant être exécutée, il est laissé à l'utilisateur la possibilité de clarifier ou compléter la commande vocale. L'utilisateur est alors guidé dans cette clarification en fonction du score qui a été attribué à la compréhension de ce que l'utilisateur a prononcé. L'invention va alors au-delà d'une simple compréhension de chaque mot de la commande Ici, l'unité de traitement vérifie la cohérence de l'ensemble de la commande et sa complétude. Par exemple, si la commande prononcée n'est pas complète, l'unité de traitement guide l'utilisateur pour la rendre plus complète. Ainsi, dans une forme de réalisation, l'unité de traitement exécute une application comportant un menu à rubriques arborescentes. Cette application peut être une application d'interprétation de commande, capable de piloter d'autres applications telles que : - la consultation d'un document multimédia (comportant des rubriques par chapitres), ou - le lancement d'appels téléphoniques, ou - l'envoi de messages, ou - une programmation d'assistance à la navigation, ou autres. En particulier, l'unité de traitement peut affecter des scores respectifs à une pluralité d'interprétations possible de la commande vocale prononcée pour : - identifier au moins une interprétation de score le plus élevé, - déterminer une rubrique du menu arborescent correspondant à cette interprétation, et - proposer dans un signal de clarification des options à choisir et correspondant à des rubriques immédiatement en aval dans l'arborescence du menu.Thus, according to the aforementioned score, if the voice command does not correspond to a complete instruction that can be executed, it is left to the user the possibility to clarify or complete the voice command. The user is then guided in this clarification according to the score that has been attributed to the understanding of what the user has said. The invention then goes beyond a simple understanding of each word of the command. Here, the processing unit checks the coherence of the whole command and its completeness. For example, if the spoken command is not complete, the processing unit guides the user to make it more complete. Thus, in one embodiment, the processing unit executes an application comprising a menu with tree headings. This application can be a command interpreting application, capable of controlling other applications such as: - the consultation of a multimedia document (with sections by chapters), or - the launching of telephone calls, or - sending messages, or - a navigation assistance program, or others. In particular, the processing unit may assign respective scores to a plurality of possible interpretations of the voice command uttered to: - identify at least one highest score interpretation, - determine a tree menu item corresponding to this interpretation , and - propose in a clarification signal options to choose and corresponding to items immediately downstream in the menu tree.
A titre d'exemple purement illustratif, si l'utilisateur prononce « envoie un message », l'unité de traitement demande une clarification pour savoir s'il convient d'envoyer le message par courriel ou par messagerie SMS. Dans un autre exemple, si l'utilisateur prononce « appelle Monsieur Martin », l'unité de traitement demande une clarification pour savoir si l'appel doit être passé sur la ligne fixe ou sur le téléphone mobile du contact. L'invention peut aller encore plus loin et dans une forme de réalisation complémentaire ou variante, l'unité de traitement peut affecter des scores respectifs à une pluralité d'interprétations de la commande vocale pour : - identifier une ou plusieurs interprétations de scores plus élevés qu'un seuil choisi, et dans le cas d'une pluralité d'interprétations de la commande dépassant ledit seuil et correspondant à des rubriques de menu sur des branches séparées de l'arborescence, - proposer dans un signal de clarification des options à choisir et correspondant auxdites rubriques.As a purely illustrative example, if the user pronounces "sends a message", the processing unit asks for clarification as to whether to send the message by email or SMS. In another example, if the user says "call Mr. Martin", the processing unit asks for clarification as to whether the call should be made on the fixed line or on the mobile phone of the contact. The invention may go further and in a further or alternative embodiment, the processing unit may assign respective scores to a plurality of voice command interpretations to: - identify one or more higher score interpretations a chosen threshold, and in the case of a plurality of interpretations of the command exceeding said threshold and corresponding to menu items on separate branches of the tree, - proposing in a clarification signal options to choose and corresponding to said items.
Les branches séparées peuvent correspondre par exemple à des applications distinctes à lancer, mais néanmoins avec suffisamment d'informations dans la commande prononcée pour pouvoir exécuter effectivement chaque application.The separate branches can correspond for example to separate applications to launch, but nevertheless with enough information in the command pronounced to be able to effectively execute each application.
Ainsi, par exemple si l'utilisateur prononce « je veux la maison », l'unité de traitement demande une clarification pour savoir si l'utilisateur souhaite passer un appel vers la maison (auquel cas il s'agit d'exécuter une application d' appel téléphonique vers le numéro du domicile utilisateur) ou s'il souhaite lancer l'application d'assistance à la navigation pour afficher le trajet vers son domicile.So, for example, if the user says "I want the house", the processing unit asks for clarification as to whether the user wants to make a call to the house (in which case it is a question of running a home application). phone call to the home user's number) or if he wants to launch the navigation assistance application to display the trip to his home.
Bien entendu, d'autres exemples sont possibles. Ainsi, les branches séparées peuvent correspondre par exemple à des chapitres séparés d'une même application, comme par exemple la consultation d'un document multimédia (par exemple un catalogue de matériel automobile), chaque chapitre comportant lui-même des sous-chapitres. Dans cet exemple, chaque chapitre du catalogue référence tous les matériels d'une même marque automobile, et chaque sous-chapitre référence un type de matériel particulier de cette même marque (le système d'embrayage dans un sous-chapitre, le système de freins dans un autre sous-chapitre, etc.). Ainsi, dans ce cas, si l'utilisateur prononce « montre-moi les nouveaux systèmes d'embrayage pour boites automatiques, sortis en 2014 », l'unité de traitement note que la commande vocale est incomplète et demande des précisions, par exemple, sur la marque du constructeur (par exemple sous la forme de plusieurs choix possibles de constructeurs référencés par des numéros de 1 à N). Néanmoins, l'unité de traitement, après obtention de l'information quant à la marque souhaitée, oriente directement l'utilisateur vers le sous-chapitre des systèmes d'embrayage de cette marque. Ainsi, on comprendra que cette forme de réalisation permet de croiser les différentes rubriques du menu arborescent avec les différentes interprétations possibles de la commande Ici, les scores respectifs des interprétations possibles peuvent être des scores de pertinence de la commande prononcée par rapport aux rubriques du menu arborescent, ou une pondération entre la pertinence et l'intelligibilité des mots prononcés (dans le cas où un doute subsiste quant aux mots effectivement prononcés).Of course, other examples are possible. Thus, the separate branches can correspond for example to separate chapters of the same application, such as for example the consultation of a multimedia document (for example a catalog of automotive equipment), each chapter itself having sub-chapters. In this example, each chapter of the catalog references all the equipment of the same car make, and each sub-chapter refers to a particular type of equipment of the same make (the clutch system in a subchapter, the brake system in another subchapter, etc.). Thus, in this case, if the user says "show me the new clutch systems for automatic boxes, released in 2014", the processing unit notes that the voice command is incomplete and requests clarification, for example, on the manufacturer's mark (for example in the form of several possible choices of constructors referenced by numbers from 1 to N). Nevertheless, the processing unit, after obtaining the information as to the desired brand, directs the user directly to the sub-chapter of the clutch systems of this brand. Thus, it will be understood that this embodiment makes it possible to cross the different items of the tree menu with the different possible interpretations of the command. Here, the respective scores of the possible interpretations can be relevance scores of the command pronounced with respect to the items of the menu. arborescent, or a weighting between the relevance and the intelligibility of the words spoken (in the case where a doubt remains as to the words actually spoken).
Ainsi, par exemple, si l'utilisateur prononce « appelle chez ma mère » et que la qualité de l'acquisition sonore est médiocre pour la reconnaissance vocale, l'unité de traitement affecte des scores respectifs aux interprétations « Appelle Monsieur Mamère » (un contact existant de l'utilisateur) et « Appelle Maman » (autre contact existant de l'utilisateur). Dans ce cas, la demande de clarification consiste à solliciter l'utilisateur pour déterminer quel contact appeler parmi « Monsieur Mamère » et « Maman » Bien entendu, cette réalisation n'exclue pas d'affecter un score à chaque mot de la commande prononcée.So, for example, if the user says "call at my mother's house" and the quality of the sound acquisition is poor for voice recognition, the processing unit assigns respective scores to the "Call Mr. Mamère" interpretations (a existing contact of the user) and "Call Mom" (other existing contact of the user). In this case, the request for clarification consists in asking the user to determine which contact to call among "Mr. Mamère" and "Mom" Of course, this realization does not exclude assigning a score to each word of the command pronounced.
Ainsi, dans une réalisation complémentaire ou alternative, l'unité de traitement peut affecter des scores respectifs à une pluralité de mots de la commande vocale pour : - identifier un ou plusieurs mots de scores plus élevés qu'un seuil choisi, et dans le cas d'une pluralité de mots dans la commande dépassant ledit seuil et correspondant à des rubriques de menu sur une même branche de l'arborescence, - exécuter l'application jusqu'à la rubrique correspondante la plus avale de ladite même branche. Il s'agit alors notamment du cas positif d'une commande éventuellement complète et, en tout cas bien interprétée en une fois par l'unité de traitement, sans nécessité de guider l'utilisateur jusqu'à la rubrique la plus avale précitée.Thus, in a complementary or alternative embodiment, the processing unit may assign respective scores to a plurality of words of the voice command to: - identify one or more score words higher than a chosen threshold, and in the case a plurality of words in the command exceeding said threshold and corresponding to menu items on the same branch of the tree, - execute the application to the corresponding most downstream of said same branch. It is then in particular the positive case of a possibly complete order and, in any case well interpreted in one go by the processing unit, without the need to guide the user to the most downstream heading above.
Dans une forme de réalisation complémentaire ou alternative, le score précité peut être fonction d'un contexte d'utilisation, en comparaison d'un historique d'interprétations validées (et/ou non-valides) de commandes précédentes en correspondance de contextes respectifs.In a complementary or alternative embodiment, the aforementioned score may be a function of a context of use, compared to a history of validated (and / or invalid) interpretations of previous commands in correspondence with respective contexts.
Ainsi, dans le même exemple précédent où l'utilisateur prononce « appelle chez ma mère » et que la qualité de l'acquisition sonore est médiocre, l'unité de traitement affecte des scores respectifs aux interprétations « Appelle Monsieur Mamère » (un contact existant de l'utilisateur) et « Appelle Maman » (autre contact existant de l'utilisateur). Dans ce cas par exemple, si l'utilisateur n'est plus en contact avec Monsieur Mamère et qu'il a l'habitude d'appeler sa mère toutes les semaines à une heure précise qui correspond à l'heure courante, l'unité de traitement identifie que le contact demandé est maman et lance l'appel vers ce contact sans nécessiter alors de clarification supplémentaire. On comprendra ainsi que cette forme de réalisation permet un apprentissage de l'intention-même de l'utilisateur.Thus, in the same previous example where the user pronounces "calls at my mother's" and that the quality of the sound acquisition is mediocre, the processing unit assigns respective scores to the interpretations "Call Mr Mamère" (an existing contact of the user) and "Call Mom" (other existing contact of the user). In this case for example, if the user is no longer in contact with Mr. Mamère and he is in the habit of calling his mother every week at a specific time that corresponds to the current time, the unit processing identifies that the requested contact is mom and initiates the call to that contact without further clarification. It will thus be understood that this embodiment makes it possible to learn the intention of the user himself.
L'invention propose alors une guidance efficace de l'utilisateur par rapport plusieurs choix possibles lorsque sa commande vocale est incomplète ou imprécise. Elle propose des scenarii de contournements adaptatifs pour obtenir de l'utilisateur les informations manquantes par des questions ou des options adaptées. Le critère « d' adaptivité » se base sur les scores précités d'intelligibilité de la commande Typiquement, plus un score de commande est faible, plus le nombre d'options pour compléter la commande correspondante devrait être élevé.The invention thus proposes an effective guidance of the user with respect to several possible choices when his voice command is incomplete or inaccurate. It offers adaptive workaround scenarios to get the missing information from the user with the right questions or options. The "adaptive" criterion is based on the aforementioned intelligibility scores of the command. Typically, the lower the command score, the greater the number of options to complete the corresponding command.
Le principe de cette guidance peut s'appliquer aussi, dans une forme de réalisation alternative ou complémentaire, à l'acquisition-même du signal acoustique qu'émet l'utilisateur lorsqu'il prononce sa commande Dans cette forme de réalisation, au moins un microphone capte un signal de commande vocale d'un utilisateur. L'unité de traitement détermine un niveau d'intelligibilité du signal en particulier pour interpréter la commande vocale et, en cas d'inintelligibilité du signal lui-même, transmet à une interface homme/machine un signal de demande de répétition pour faire répéter par l'utilisateur une partie au moins de la commande vocale. Dans cette forme de réalisation, le procédé comporte en particulier les étapes dans lesquelles: - on prévoit un jeu de paramètres du signal de demande de répétition, propre à au moins un élément parmi une forme, une temporalité et une vitesse de prononciation de la commande vocale par l'utilisateur, - l'unité de traitement évalue un score d'intelligibilité d'un signal de parole couramment prononcé, et - l'unité de traitement affecte des valeurs à ces paramètres en fonction du score d'intelligibilité précité pour construire le signal de demande de répétition. Par exemple, le signal de demande de répétition peut comporter au moins une demande de répétition parmi : - une répétition par l'utilisateur à un instant paramétré, choisi en fonction dudit score, - une répétition à une distance paramétrée du microphone, choisie en fonction dudit score, et - une répétition par l'utilisateur avec une prononciation plus lente.The principle of this guidance can also be applied, in an alternative or complementary embodiment, to the actual acquisition of the acoustic signal emitted by the user when he pronounces his command. In this embodiment, at least one microphone picks up a voice command signal from a user. The processing unit determines a particular intelligibility level of the signal for interpreting the voice command and, in case of unintelligibility of the signal itself, transmits to a man / machine interface a repetition request signal for repetition by the user at least part of the voice command. In this embodiment, the method comprises in particular the steps in which: a set of parameters of the repetition request signal specific to at least one of a form, a temporality and a speed of pronunciation of the command is provided; voice by the user, - the processing unit evaluates an intelligibility score of a currently pronounced speech signal, and - the processing unit assigns values to these parameters according to the aforementioned intelligibility score to build the repetition request signal. For example, the repetition request signal may comprise at least one repetition request among: a repetition by the user at a set instant, chosen according to said score, a repetition at a parametric distance from the microphone, chosen according to said score, and - a repetition by the user with a slower pronunciation.
Le score d'intelligibilité du signal peut être évalué au moins en fonction d'un élément parmi un bruit ambiant (ou une variation de bruit ambiant) et un historique d'échecs d'interprétation de commandes vocales précédentes. Ainsi, dans cette forme de réalisation, le principe de guidance de l'utilisateur est mis en oeuvre dans le cadre d'une application d'acquisition du signal de commande vocale. Les améliorations apportées se sont révélées significatives. Ce mode de réalisation, particulièrement avantageux, peut faire l'objet d'une protection en soi (séparément d'une guidance dans l'interprétation de la commande après son acquisition sonore).The intelligibility score of the signal can be evaluated based at least on one of ambient noise (or ambient noise variation) and history of previous voice command interpretation failures. Thus, in this embodiment, the user guidance principle is implemented as part of an acquisition application of the voice command signal. The improvements made were significant. This particularly advantageous embodiment can be protected in itself (separately from a guidance in the interpretation of the command after its sound acquisition).
La présente invention vise aussi un programme informatique comportant des instructions pour la mise en oeuvre du procédé ci-avant, lorsque ce programme est exécuté par un processeur.The present invention also relates to a computer program comprising instructions for implementing the above method, when this program is executed by a processor.
Un exemple d'ordinogramme de l'algorithme général d'un tel programme est illustré sur la figure 2 commentée plus loin. En outre, la présente invention vise aussi un dispositif informatique de reconnaissance vocale, comportant une unité de traitement pour la mise en oeuvre du procédé ci-avant.An example of a flowchart of the general algorithm of such a program is illustrated in Figure 2 discussed below. In addition, the present invention also relates to a computer device for voice recognition, comprising a processing unit for implementing the method above.
D'autres caractéristiques et avantages de l'invention apparaîtront à l'examen de la description détaillée ci-après, et des dessins annexés sur lesquels : - la figure 1 illustre un exemple de réalisation d'un dispositif au sens de l'invention ; - la figure 2 illustre les principales étapes d'un procédé selon un exemple de réalisation de l' invention ; - la figure 3 détaille à titre d'exemple les principales étapes d'une attribution de score d'interprétation d'une commande selon l'étape S3 de la figure 2, dans un mode de réalisation particulier ; - la figure 4 détaille à titre d'exemple les principales étapes d'une amélioration de l'acquisition sonore selon l'étape S2 de la figure 2, dans un mode de réalisation particulier ; - la figure 5 illustre un exemple d'arborescence d'un menu d' application d'interprétation, dans une forme de réalisation d'un programme au sens de l'invention. On se réfere à la figure 1 sur laquelle on a représenté un dispositif DIS selon l'invention comportant une interface d'entrée INE pour être connecté à au moins un microphone MIC (directement ou via un réseau local RES, par exemple au sein d'un véhicule automobile). Le dispositif DIS comprend en outre une unité de traitement incluant un processeur PROC et une mémoire de travail MEM (ou tout autre module informatique à processeur intégré, tel qu'un ASIC ou autre). Le dispositif comporte en outre une interface de sortie INS pour transmettre des instructions d'affichage à un écran SCR et/ou des haut-parleurs HP d'une interface homme/machine proposant à un utilisateur des options à choisir. Le dispositif DIS peut en outre piloter le lancement d'applications spécifiques APP comme le lancement d'un appel téléphonique, d'une assistance à la navigation vers un lieu précisé (NAV), ou encore d'un message à communiquer à un contact (MES). Ainsi, le dispositif DIS peut piloter d'autres équipements tels qu'un téléphone de type Smartphone par exemple, ou encore un appareil de navigation, ou autres, ou encore piloter l'écran SCR lui-même pour afficher un contenu multimédia (un catalogue, des informations d'actualité, etc.).Other features and advantages of the invention will appear on examining the detailed description below, and the accompanying drawings in which: - Figure 1 illustrates an embodiment of a device within the meaning of the invention; - Figure 2 illustrates the main steps of a method according to an exemplary embodiment of the invention; FIG. 3 details, by way of example, the main steps of an interpretation score assignment of a command according to step S3 of FIG. 2, in a particular embodiment; - Figure 4 details by way of example the main steps of an improvement of the sound acquisition according to step S2 of Figure 2, in a particular embodiment; FIG. 5 illustrates an exemplary tree structure of an interpretation application menu, in one embodiment of a program within the meaning of the invention. Referring to Figure 1 which shows a DIS device according to the invention having an input interface INE to be connected to at least one MIC microphone (directly or via a local network RES, for example within a motor vehicle). The device DIS further comprises a processing unit including a processor PROC and a working memory MEM (or any other computer module with an integrated processor, such as an ASIC or other). The device further includes an INS output interface for transmitting display instructions to an SCR display and / or HP speakers of a man / machine interface providing a user with options to choose from. The DIS device can also control the launching of APP specific applications such as the launching of a telephone call, navigation assistance to a specific location (NAV), or a message to be communicated to a contact ( MY). Thus, the DIS device can control other equipment such as a Smartphone-type phone, for example, or a navigation device, or others, or even control the SCR screen itself to display multimedia content (a catalog , news, etc.).
Ainsi, un utilisateur parle dans le microphone MIC et le dispositif DIS interprète la phrase prononcée comme une commande vocale afin de lancer une application APP correspondante. Pour aider le dispositif dans la reconnaissance vocale de la phrase prononcée, une base de données DB d'un historique des commandes vocales validées précédemment est stockée dans une mémoire durable connectée au dispositif DIS afin qu'il puisse s'y référer. En référence maintenant à la figure 2, un utilisateur prononce une phrase à l'étape 51. À l'étape S2, une estimation de vraisemblance des mots prononcés est effectuée et, si cette estimation dépasse un seuil par exemple, une estimation des différentes interprétations possibles de la phrase est ensuite menée à l'étape S3. Des détails de ces étapes S2 et S3 sont présentés plus loin en référence aux figures respectives 4 et 3. À l'étape subséquente S4, l'unité de traitement détermine s'il existe une unique interprétation possible INT dont l'estimation de vraisemblance dépasse un seuil THR prédéterminé Ce seuil peut être fonction de plusieurs critères, et notamment de la qualité de l'acquisition sonore d'après le score calculé à l'étape S2. L'estimation de la vraisemblance d'une interprétation INT s'effectue en déterminant s'il existe dans la phrase prononcée un ou plusieurs mots d'estimation élevée à l'étape S2 et qui correspondent tous à une même rubrique dans un menu arborescent présenté plus loin en référence à la figure 5. Par ailleurs, l'unité de traitement peut se référer à un historique des commandes vocales validées dans la base de données DB pour augmenter le score de cette interprétation si le nombre d'occurrences d'une commande similaire est élevé dans des conditions similaires d'utilisation (par exemple en fonction de l'horodate courante, de la localisation de l'utilisateur, etc.).Thus, a user speaks in the MIC microphone and the DIS device interprets the spoken sentence as a voice command in order to launch a corresponding APP application. To assist the device in voice recognition of the spoken sentence, a previously validated voice command history DB database is stored in a durable memory connected to the DIS device for reference. Referring now to FIG. 2, a user pronounces a sentence in step 51. In step S2, a likelihood estimate of the pronounced words is made and, if this estimate exceeds a threshold, for example, an estimate of the different interpretations. possible of the sentence is then conducted at step S3. Details of these steps S2 and S3 are presented below with reference to respective figures 4 and 3. In the subsequent step S4, the processing unit determines whether there is a single possible interpretation INT whose likelihood estimate exceeds a threshold THR predetermined This threshold may be a function of several criteria, including the quality of the sound acquisition from the score calculated in step S2. The estimation of the likelihood of an interpretation INT is carried out by determining whether there exists in the pronounced sentence one or more words of high estimation in step S2 and which all correspond to the same item in a tree menu presented Further, the processing unit can refer to a history of voice commands validated in the database DB to increase the score of this interpretation if the number of occurrences of an order. similar is high under similar conditions of use (for example depending on the current time stamp, the location of the user, etc.).
S'il existe une unique interprétation dont l'estimation dépasse un seuil (flèche OK en sortie du test S4), à l'étape suivante S5, l'unité de traitement vérifie si cette interprétation correspond à une commande vocale complète permettant de lancer directement une application : par exemple « appelle Gérard Dupont sur son téléphone mobile » (flèche OK en sortie du test S5), auquel cas, à l'étape S6, l'application APP correspondante peut être directement exécutée. Le procédé de reconnaissance vocale s'arrête à l'étape S7 et à l'étape suivante S8, des informations supplémentaires peuvent être archivées dans la base DB, telles que la phrase prononcée PRON, l'interprétation INT qui en est faite (éventuellement validée par l'utilisateur comme on le verra plus loin), l'horodate courante HRD, la localisation courante LOC de l'utilisateur, et autres. À l'étape S9, dans le cas où la phrase prononcée ne correspond pas à une commande vocale complète (flèche KO en sortie du test S5), l'unité de traitement consulte la ou les rubriques manquantes dans la commande vocale pour qu'elle soit complète. A l'étape suivante S10, l'unité de traitement anime l'interface homme-machine IHM (constituée de l'écran SCR et des haut-parleurs HP) pour proposer des options OPT11, OPT12 à l'utilisateur permettant de renseigner la ou les rubriques manquantes (par exemple par affichage de ces options sur l'écran, en attendant une sélection de l'utilisateur par commande tactile ou via le microphone). Par exemple : « appelle Gérard Dupont » peut être une commande incomplète et l'unité de traitement peut proposer les options : « sur son mobile » et « ou sur sa ligne fixe ». A l'étape suivante S11, l'utilisateur rentre l'une des options proposées OPT11 et le traitement peut reprendre à l'étape S5 pour vérifier que la commande vocale est maintenant complète.If there is a single interpretation whose estimate exceeds a threshold (OK arrow at the output of the test S4), at the next step S5, the processing unit verifies whether this interpretation corresponds to a complete voice command to directly launch an application: for example "calls Gerard Dupont on his mobile phone" (OK arrow at the output of the test S5), in which case, in step S6, the corresponding APP application can be directly executed. The speech recognition method stops at step S7 and at the next step S8, additional information can be archived in the DB database, such as the pronounced sentence PRON, the INT interpretation that is made (possibly validated by the user as discussed below), the current time stamp HRD, the current location LOC of the user, and others. In step S9, in the case where the sentence spoken does not correspond to a complete voice command (KO arrow at the output of the test S5), the processing unit consults the missing item or fields in the voice command so that it be complete. In the next step S10, the processing unit animates the HMI human-machine interface (consisting of the SCR screen and the HP loudspeakers) to propose options OPT11, OPT12 to the user making it possible to inform the missing items (for example by displaying these options on the screen, waiting for a user selection by touch control or via the microphone). For example: "calls Gerard Dupont" can be an incomplete order and the processing unit can offer the options: "on his mobile" and "or on his fixed line". In the next step S11, the user enters one of the proposed options OPT11 and the processing can resume in step S5 to verify that the voice command is now complete.
En réalité, les étapes S9 à Sll sont optionnelles car elles correspondent à des situations où, du fait de l'incomplétude de la commande, plusieurs interprétations sont possibles comme - « appelle Gérard Dupont sur son mobile » ou « appelle Gérard Dupont sur sa ligne fixe ». Ces étapes S9 à Sll peuvent être mises en oeuvre à des fins d'apprentissage à l'étape S8, une fois la commande complète et bien interprétée à l'étape S6. Toutefois, cette réalisation sollicite l'intervention de l'utilisateur et, dans une variante illustrée aussi sur la figure 2, on vérifie avant de solliciter l'utilisateur que plusieurs interprétations possibles d'une commande dépassent toutes un seuil de vraisemblance THR (flèche KO en sortie du test S4). Par exemple si l'utilisateur a dans son carnet d'adresse « Gérard Dupont » (contact appelé fréquemment) et « Michel Dupont » (non contacté depuis plusieurs années), et que la phrase prononcée est « appelle Dupont sur son téléphone mobile », l'interrogation de la base de données DB peut donner : - un faible score pour l'interprétation « appelle Michel Dupont sur son téléphone mobile », inférieur au seuil THR ; et - un grand score pour l'interprétation « appelle Gérard Dupont sur son téléphone mobile », supérieur au seuil THR.In reality, the steps S9 to S11 are optional because they correspond to situations where, because of the incompleteness of the command, several interpretations are possible as - "calls Gerard Dupont on his mobile" or "calls Gerard Dupont on his line fixed ". These steps S9 to S11 can be implemented for learning purposes in step S8, once the command is complete and well interpreted in step S6. However, this embodiment requires the intervention of the user and, in a variant also illustrated in Figure 2, it is verified before soliciting the user that several possible interpretations of a command all exceed a likelihood threshold THR (KO arrow at the output of the test S4). For example if the user has in his address book "Gérard Dupont" (contact frequently called) and "Michel Dupont" (not contacted for several years), and that the sentence is "calls Dupont on his mobile phone", the interrogation of the database DB can give: - a low score for the interpretation "calls Michel Dupont on his mobile phone", below the threshold THR; and - a big score for the interpretation "calls Gérard Dupont on his mobile phone", higher than the threshold THR.
Dans ce cas, l'application de lancement d'appel est exécutée vers le téléphone mobile de Gérard Dupont, sans solliciter l'intervention de l'utilisateur. Sinon (dans le cas où les scores sont supérieurs au seuil THR), l'unité de traitement peut animer l'interface IHM à l'étape S12 pour afficher les options OPT1, OPT2, ... afin que l'utilisateur choisisse la bonne option (par exemple Michel ou Gérard Dupont). Bien entendu, si aucune des options ne correspond à un choix souhaité par l'utilisateur, l'interface IHM offre une possibilité RET de retourner à d'autres options amont à choisir (par exemple : « souhaitez-vous bien appeler Dupont ? », et, si la réponse est non : « qui souhaitez-vous appeler ? »), ou dans le pire cas à une nouvelle acquisition sonore. Si l'une des options proposées (par exemple OPT2) est retenue par l'utilisateur à l'étape S13, l'unité de traitement vérifie à nouveau s'il n'existe plus qu'une interprétation possible à l'étape S4 et, le cas échéant, vérifie encore la complétude de la commande vocale à l'étape S5. Éventuellement, le seuil THR peut être augmenté après chaque itération de l'étape S13 car, en principe, une fois qu'une option a été renseignée, la vraisemblance d'une interprétation particulière de la commande devrait augmenter significativement et d'autres interprétations devraient être de scores plus faibles. Il apparaît d'après l'exemple ci-avant du lancement d'un appel téléphonique que l'interprétation d'une commande suit la logique d'une arborescence visant : - le type d'application à lancer (appel téléphonique, ou envoi de message par exemple), - puis le contact du carnet d'adresse à appeler, - puis l'appareil de destination (ligne fixe ou téléphone mobile). Ici, l'application peut interroger le carnet électronique de contacts de l'utilisateur et déterminer si la ligne fixe et le téléphone mobile sont bien des données renseignées dans le carnet de contacts, avant de proposer un choix entre les deux options. On comprendra ainsi que l' application se réfere à un contexte informatique (notamment de données stockées en relation avec diverses autres applications) avant de proposer des options.In this case, the call launching application is executed to the mobile phone of Gérard Dupont, without requesting the intervention of the user. Otherwise (in the case where the scores are greater than the THR threshold), the processing unit can animate the HMI interface in step S12 to display the options OPT1, OPT2, ... so that the user chooses the right one. option (eg Michel or Gerard Dupont). Of course, if none of the options corresponds to a choice desired by the user, the HMI interface offers a possibility RET to return to other upstream options to choose (for example: "do you want to call Dupont?", and, if the answer is no, "who do you want to call?"), or in the worst case to a new sound acquisition. If one of the proposed options (eg OPT2) is retained by the user in step S13, the processing unit checks again if there is more than one possible interpretation in step S4 and if necessary, still checks the completeness of the voice command in step S5. Optionally, the threshold THR can be increased after each iteration of step S13 because, in principle, once an option has been entered, the likelihood of a particular interpretation of the command should increase significantly and other interpretations should be made. to be of lower scores. It appears from the above example of the launching of a telephone call that the interpretation of a command follows the logic of a tree structure aimed at: - the type of application to be launched (telephone call, or sending of message, for example), - then the contact of the address book to call, - then the destination device (fixed line or mobile phone). Here, the application can query the user's electronic contact book and determine if the fixed line and the mobile phone are data entered in the contact book, before offering a choice between the two options. It will be understood that the application refers to a computer context (including data stored in relation to various other applications) before proposing options.
On a illustré un exemple d'une telle arborescence sur la figure 5. Ainsi, le noeud racine d'une interprétation de commande INTC peut se décomposer en plusieurs branches correspondant à des applications différentes, telles que : - le lancement d'un appel téléphonique TEL, - la consultation d'un document multimédia MM, - le lancement d'une application de messagerie MES, et dans ce cas, de type SMS sur un sous-branche ou de type messagerie instantanée (ou « chat ») sur un autre sous-branche WAP, - ou encore une application d'assistance à la navigation (non représentée), ou autres.An example of such a tree structure has been illustrated in FIG. 5. Thus, the root node of an INTC command interpreting can be broken down into several branches corresponding to different applications, such as: the launching of a telephone call TEL, - the consultation of a MM multimedia document, - the launching of a MES messaging application, and in this case, of SMS type on a sub-branch or of instant messaging (or "chat") type on another sub-branch WAP, - or a navigation assistance application (not shown), or others.
Chacune de ces branches ou sous-branches se décompose encore en sous-branches liées à différents contacts CTC d'un carnet d'adresse, et encore ensuite en deux sous-branches dans le cas d'un contact renseigné par son numéro de mobile MOB et son numéro de fixe FIX. Les feuilles de cette arborescence correspondent à la commande vocale complète permettant d'exécuter une application sans nécessiter d'intervention supplémentaire de l'utilisateur, comme par exemple : « appeler Michel Dupont sur son terminal mobile » (feuille AMM de l'arborescence). Ainsi, on comprendra que l'application interactive d'interprétation de commande vocale permet de croiser les interprétations d'une phrase prononcée avec différentes branches de cette arborescence. L'utilisateur est alors guidé pour éliminer progressivement les branches non pertinentes, puis éventuellement, dans une même branche, guidé encore pour préciser la commande pour qu'elle soit complète. Par exemple, si l'utilisateur prononce la phrase : « laisse un message sur le mobile de Dupont », des interprétations possibles sont : - appelle le téléphone mobile de Dupont : CR1 (de sorte que l'utilisateur laisse un message vocal), - ouvre l'application de messagerie SMS vers le téléphone mobile de Dupont pour entrer un message : CR2 ; - ouvre l'application de messagerie instantanée vers le téléphone mobile de Dupont pour entrer un message : CR3. Dans ce cas, l'unité de traitement élimine progressivement les branches non pertinentes et anime l'interface homme-machine pour proposer à l'utilisateur de sélectionner l'émission d'un appel téléphonique ou d'un message. Si l'émission d'un message est choisie, l'interface homme-machine demande s'il s'agit d'un message SMS ou d'un message instantané. Ensuite, il peut être demandé à l'utilisateur de préciser le contact dans la branche de l'application de messagerie SMS (« Michel ou Gérard Dupont ?»). Bien entendu, alternativement, cette précision peut être apportée avant de déterminer le type d'application à lancer, sans perte de généralité. Par ailleurs, comme indiqué plus haut, la possibilité d'envoyer un message de type courriel par exemple est exclue d'emblée si le carnet de contacts de l'utilisateur n'a aucune donnée renseignée sur une éventuelle adresse email On a illustré aussi sur la figure 5 l'exemple la consultation d'un document multimédia MM (par exemple un catalogue de matériel automobile), comportant plusieurs chapitres Ml, M2,..., MN et chaque chapitre M1 comportant lui-même des sous-chapitres SE1, ..., SF1. Dans cet exemple, chaque chapitre CH du catalogue référence tous les matériels d'une même marque automobile Ml, M2, ..., MN, et chaque sous-chapitre SCH référence un type de matériel particulier de cette même marque (le système d'embrayage 5E2 dans un sous- chapitre, le système de freins SF2 dans un autre sous-chapitre, etc., pour la marque M2 par exemple). Ainsi, dans ce cas, si l'utilisateur prononce « montre-moi les systèmes d'embrayage pour boites automatiques » sans préciser la marque du constructeur, l'unité de traitement note que la commande vocale est incomplète car elle mène à plusieurs choix Cl (sur la sous- branche SE1), C2 (sur la sous-branche 5E2), etc., correspondant à des systèmes d'embrayage pour boite automatique proposés par différentes marques. L'interface IHM demande alors des précisions, par exemple, sur la marque du constructeur (par exemple sous la forme de plusieurs choix possibles de constructeurs référencés par des numéros de 1 à N sur l'écran de l'interface IHM). Néanmoins, l'unité de traitement, après obtention de l'information quant à la marque souhaitée (M2), oriente directement l'utilisateur vers le sous-chapitre 5E2 des systèmes d'embrayage de cette marque. On se réfère maintenant à la figure 3 pour décrire une réalisation d'affectation de scores de vraisemblance à des interprétations d'une phrase prononcée. Le traitement commence après la phrase prononcée à l'étape 51 de la figure 2, et après une évaluation des scores acoustiques des mots identifiés à l'étape S2 de la figure 2 qui sera commentée en détails plus loin en référence à la figure 4. Les scores acoustiques SCMi associés à chaque mot Mi étant estimés, le traitement se poursuit à l'étape S31 de la figure 3 par une comparaison de chaque score à un seuil prédéterminé THR' (bien entendu, différent du seuil THR d'interprétation, précité). Si aucun des scores ne dépasse ce seuil (flèche KO en sortie du test S31), alors la phrase prononcée est simplement inintelligible et l'interface IHM invite l'utilisateur à la prononcer à nouveau, en modifiant par exemple les paramètres d'acquisition sonore comme on le verra plus loin en référence à la figure 4. S'il existe au moins un mot Mi dont le score est supérieur au seuil THR' (flèches OK en sortie des tests S31 et S32), on détermine à l'étape S33 s'il existe au moins une rubrique R du menu arborescent, associée à ce mot Mi (se présentant typiquement comme un mot-clé pour une application (comme « Appelle » ou « Message») ou pour un sous-branche d'une application (« Dupont » identifié comme un contact mais sans précision de l'application correspondante à lancer). Si aucune rubrique ne peut être associée à ce mot Mi (flèche KO en sortie du test S33), il peut être prévu d'inviter l'utilisateur à prononcer à nouveau sa commande, comme indiqué précédemment. En revanche, s'il existe bien une rubrique associée au mot Mi (flèche OK en sortie du test S33), alors il convient de déterminer un degré de pertinence de cette rubrique par rapport à un contexte courant, à l'étape S36. Par exemple, si le mot Mi identifié est « Athènes », alors que l'utilisateur ne s'y est jamais rendu et qu'il est localisé actuellement, ainsi que de façon générale (d'après l'historique de la base BD), en région parisienne, alors le score de pertinence de la seule rubrique associée à ce mot et correspondant à l'interprétation de la commande vocale : « assiste ma navigation jusqu'à Athènes », est plus faible que le seuil de vraisemblance d'interprétation THR. Dans ce cas, il n'existe pas d'interprétation possible d'une commande associée à ce mot (flèche OK en sortie du test S36) et l'utilisateur est invité à reformuler sa commande En revanche, s'il existe au moins une interprétation dont la vraisemblance dépasse le seuil THR, comme par exemple « assiste ma navigation jusqu'à la rue d'Athènes » (flèche KO en sortie du test S36), alors le procédé se poursuit par l'étape S4 de la figure 2, dans laquelle il est déterminé en outre s'il existe plusieurs interprétations vraisemblables (comme par exemple : « assiste ma navigation jusqu'à la rue d'Athènes à Paris », ou « assiste ma navigation jusqu'à la rue d'Athènes à Lyon », etc., auquel cas l'interface IHM peut être animée pour demander à l'utilisateur de compléter sa commande, comme présenté ci-avant).Each of these branches or sub-branches is still broken down into sub-branches linked to different CTC contacts of an address book, and then again into two sub-branches in the case of a contact filled in by his mobile number MOB. and his fixed number FIX. The sheets in this tree correspond to the complete voice command to run an application without requiring additional intervention from the user, such as: "call Michel Dupont on his mobile terminal" (AMM leaf of the tree). Thus, it will be understood that the interactive voice interpretation interpretation application makes it possible to cross the interpretations of a pronounced sentence with different branches of this tree. The user is then guided to gradually eliminate the irrelevant branches, then possibly, in the same branch, guided again to specify the order so that it is complete. For example, if the user pronounces the sentence: "leave a message on Dupont's mobile", possible interpretations are: - calls Dupont's mobile phone: CR1 (so that the user leaves a voice message), - opens the SMS messaging application to the Dupont mobile phone to enter a message: CR2; - open the instant messaging application to the Dupont mobile phone to enter a message: CR3. In this case, the processing unit progressively eliminates the irrelevant branches and animates the human-machine interface to propose to the user to select the transmission of a telephone call or a message. If the transmission of a message is chosen, the human-machine interface asks whether it is an SMS message or an instant message. Then, the user can be asked to specify the contact in the branch of the SMS messaging application ("Michel or Gérard Dupont?"). Of course, alternatively, this precision can be made before determining the type of application to launch, without loss of generality. Moreover, as indicated above, the possibility of sending an e-mail message for example is excluded immediately if the user's contact book has no data entered on a possible e-mail address. FIG. 5 the example of the consultation of a multimedia document MM (for example a catalog of automotive equipment), comprising several chapters M1, M2,..., MN and each chapter M1 itself comprising sub-chapters SE1, ..., SF1. In this example, each chapter CH of the catalog references all the materials of the same car brand Ml, M2, ..., MN, and each sub-chapter SCH refers to a particular type of material of the same brand (the system of clutch 5E2 in a subchapter, the SF2 brake system in another subchapter, etc., for the M2 mark for example). Thus, in this case, if the user says "show me clutch systems for automatic boxes" without specifying the make of the manufacturer, the processing unit notes that the voice command is incomplete because it leads to several choices Cl (on sub-branch SE1), C2 (on sub-branch 5E2), etc., corresponding to clutch systems for automatic gearboxes offered by different brands. The HMI interface then requests clarification, for example, on the manufacturer's mark (for example in the form of several possible choices of manufacturers referenced by numbers from 1 to N on the screen of the HMI interface). Nevertheless, the processing unit, after obtaining the information as to the desired mark (M2), directs the user directly to the sub-chapter 5E2 of the clutch systems of this brand. Reference is now made to FIG. 3 to describe an embodiment of allocation of likelihood scores to interpretations of a pronounced sentence. The treatment begins after the sentence pronounced in step 51 of FIG. 2, and after an evaluation of the acoustic scores of the words identified in step S2 of FIG. 2 which will be commented in detail later with reference to FIG. 4. As the acoustic scores SCMi associated with each word Mi are estimated, the processing continues in step S31 of FIG. 3 by comparing each score with a predetermined threshold THR '(of course, different from the threshold THR of interpretation, cited above). ). If none of the scores exceeds this threshold (KO arrow at the output of the test S31), then the sentence pronounced is simply unintelligible and the interface GUI invites the user to pronounce it again, for example by modifying the sound acquisition parameters as will be seen later with reference to FIG. 4. If there exists at least one word Mi whose score is greater than threshold THR '(OK arrows at the output of tests S31 and S32), it is determined at step S33 if there is at least one R item of the tree menu, associated with this word Mi (typically presenting as a keyword for an application (such as "Call" or "Message") or for a sub-branch of an application ("Dupont" identified as a contact but without any precision of the corresponding application to be launched.) If no entry can be associated with this word Mi (KO arrow at the output of test S33), it can be expected to invite the user to re-order, as indicated before However, if there is indeed a field associated with the word Mi (OK arrow at the output of the test S33), then it is necessary to determine a degree of relevance of this item with respect to a current context, at step S36. . For example, if the word Mi identified is "Athens", then the user has never visited it and is currently located, as well as in a general way (according to the history of the base BD) , in the Paris region, then the relevance score of the only heading associated with this word and corresponding to the interpretation of the voice command: "assists my navigation to Athens", is lower than the interpretation threshold of likelihood THR. In this case, there is no possible interpretation of a command associated with this word (OK arrow at the exit of the test S36) and the user is asked to reformulate his command On the other hand, if there exists at least one interpretation whose likelihood exceeds the threshold THR, such as for example "assists my navigation to the rue d'Athènes" (KO arrow at the exit of the test S36), then the process continues with the step S4 of FIG. 2, in which it is furthermore determined whether there are several probable interpretations (such as for example: "assist my navigation to the rue d'Athènes in Paris", or "assist my navigation to the rue d'Athènes in Lyon". , Etc., in which case the HMI interface can be animated to ask the user to complete his order, as presented above).
S'il existe plusieurs mots M1 ...Mj dont les scores acoustiques sont tous supérieurs au seuil THR' (flèche KO en sortie du test S32) et que tous ces mots concernent une rubrique unique (« Affiche » « catalogue » « automobile ») (flèche OK en sortie du test S34), cette situation correspond au cas favorable où la phrase prononcée est cohérente et, au test S36, son estimation de vraisemblance devrait dépasser le seuil THR. Si tel est le cas (flèche KO en sortie du test S36), alors la commande est complète ou ne nécessite qu'un nombre limité d'interactions avec l'utilisateur pour être complétée après le test S5.If there are several words M1 ... Mj whose acoustic scores are all greater than the threshold THR '(KO arrow at the output of the test S32) and that all these words concern a single heading ("Poster" "catalog" "automobile" ) (OK arrow at the exit of the test S34), this situation corresponds to the favorable case where the pronounced sentence is coherent and, with the test S36, its estimate of likelihood should exceed the threshold THR. If this is the case (KO arrow at the output of test S36), then the command is complete or requires only a limited number of interactions with the user to be completed after the S5 test.
En revanche, si plusieurs rubriques R1, R2, ... peuvent être associées à l'ensemble de mots M1 ... Mj de scores acoustiques supérieurs au seuil THR' (flèche KO en sortie du test S34), alors on évalue à l'étape S35 des scores respectifs de vraisemblance d'interprétation de chaque rubrique R1, R2, ... Ainsi, il est possible, à cette étape, de se référer à la base de données DB pour déterminer une cohérence de l'interprétation (« assiste ma navigation jusqu'à Athènes ») par rapport à un contexte courant (localisation en région parisienne), en comparaison d'un historique (aucun voyage à Athènes déjà identifié) et attribuer un score correspondant (faible dans cet exemple). Néanmoins, les scores acoustiques des mots peuvent intervenir encore à l'étape S35, pour l'estimation des vraisemblances. Par exemple, si les mots dont les scores dépassent le seuil THR' sont : « Appelle » ; « chez » , « Michel » ; « ma mère » , « Mamère », alors les interprétations possibles sont : « appelle chez ma mère » et « appelle Michel Mamère ».On the other hand, if several items R1, R2, ... can be associated with the set of words M1 ... Mj of acoustic scores greater than the threshold THR '(KO arrow at the output of the test S34), then it is estimated that step S35 of the respective interpretability scores of each item R1, R2, ... Thus, it is possible, at this stage, to refer to the database DB to determine a coherence of the interpretation (" assist my navigation to Athens ") compared to a current context (location in the Paris region), in comparison with a history (no trip to Athens already identified) and assign a corresponding score (low in this example). Nevertheless, the acoustic scores of the words can still intervene in step S35, for the estimation of the likelihoods. For example, if the words whose scores exceed the THR 'threshold are:' Call '; "Chez", "Michel"; "My mother", "Mamère", then the possible interpretations are: "call at my mother" and "call Michel Mamère".
Le typiquement ici, si le score acoustiques de « Michel », bien que supérieure au seuil THR', est inférieur à celui des autres mots, l'interprétation « appelle chez ma mère » aura un meilleur score. Ainsi, on comprendra que les scores de vraisemblance des interprétations peuvent résulter d'une pondération entre le score acoustique des mots, le nombre de mots significatifs associés à une même rubrique, la comparaison d'un contexte courant à un historique après consultation de la base DB. Dans ce cas, après l'étape S35, on détermine s'il existe au moins une interprétation dont le score de vraisemblance dépasse le seuil THR à l'étape S36. Si tel n'est pas le cas (flèche KO en sortie du test S36), aucune interprétation de l'ensemble des mots prononcés n'est plausible et il est demandé à l'utilisateur de prononcer sa commande à nouveau. Sinon, on détermine au test S4 de la figure 2 si plusieurs interprétations ont un score de vraisemblance supérieur au seuil THR (flèche KO en sortie du test S4) et ainsi, comme indiqué ci-avant, à l'étape 512, l'utilisateur est guidé pour déterminer la commande qu'il entendait prononcer (appeler : « Maman » ou « Michel Mamère » ?). Dans cet exemple, alors que la commande initialement prononcée était particulièrement équivoque, l'utilisateur a simplement ici à entrer un choix parmi deux options, alors que les assistants personnels intelligents existants auraient demandé une reformulation complète de la phrase pour discriminer entre les prononciations de « Michel » et de « chez ». On comprendra ainsi que cette guidance intelligente est un atout fort de la présente invention. Le principe de cette guidance peut être appliqué aussi à l'acquisition-même du signal vocal que prononce utilisateur. Ainsi, en référence à la figure 2, si les scores acoustiques estimés à l'étape S2 ne révèlent pas de mots significatifs (de score supérieur à THR'), l'utilisateur est guidé dans une nouvelle prononciation de sa commande, en référence à la figure 4. La première étape S41 de ce traitement consiste, dans un exemple de réalisation, à mémoriser le nombre N d'échecs précédents Ech. À l'étape S42, le traitement calcule un rapport signal à bruit RSB du signal acoustique prononcé par l'utilisateur.The typical here, if the acoustic score of "Michel", although greater than the threshold THR ', is lower than that of the other words, the interpretation "calls at my mother" will have a better score. Thus, it will be understood that the likelihood scores of the interpretations can result from a weighting between the acoustic score of the words, the number of significant words associated with the same heading, the comparison of a current context with a history after consultation of the base. DB. In this case, after step S35, it is determined whether there is at least one interpretation whose likelihood score exceeds the THR threshold in step S36. If this is not the case (KO arrow output test S36), no interpretation of all words spoken is plausible and the user is asked to pronounce his command again. Otherwise, the test S4 of FIG. 2 is determined if several interpretations have a likelihood score greater than the threshold THR (KO arrow at the output of the test S4) and thus, as indicated above, at the step 512, the user is guided to determine the command he intended to pronounce (call: "Mom" or "Michel Mamère"?). In this example, while the command initially pronounced was particularly ambiguous, the user simply has to enter a choice from two options here, whereas the existing intelligent personal assistants would have asked for a complete reformulation of the sentence to discriminate between the pronunciations of Michel "and" at home ". It will thus be understood that this intelligent guidance is a strong asset of the present invention. The principle of this guidance can be applied also to the acquisition-even of the vocal signal that pronounces user. Thus, with reference to FIG. 2, if the acoustic scores estimated at step S2 do not reveal significant words (with a score greater than THR '), the user is guided in a new pronunciation of his command, with reference to FIG. 4. The first step S41 of this processing consists, in an exemplary embodiment, of storing the number N of previous failures Ech. In step S42, the processing calculates a signal-to-noise ratio RSB of the acoustic signal pronounced by the user.
Par exemple, si le nombre d'échecs N est supérieur à un seuil THR1 alors que le rapport signal à bruit reste supérieur à un deuxième seuil THR2, une telle situation signifie que l'utilisateur, malgré de bonnes conditions d'acquisition sonore, ne prononce pas de façon intelligible sa commande (flèche OK en sortie du test S43), et il lui est demandé, dans une étape ultérieure S44 de prononcer plus lentement sa commande Hormis cette situation, il est possible que le rapport signal à bruit RSB, en moyenne, soit faible et, dans ce cas, il est procédé à une analyse de la variation dans le temps du rapport signal à bruit à l'étape S45. Si cette variation est supérieure à un seuil THR3 (flèche OK en sortie du test S45), cette situation signifie que des bruits sont présents par intermittence et il est procédé à l'étape S47 à une temporisation pendant laquelle l'utilisateur n'est pas invité à prononcer sa commande, et ce jusqu'à ce que le bruit ambiant soit inférieur à un seuil THR4 (flèche OK en sortie du test S48). À cet instant alors, l'interface IHM est animée pour inviter l'utilisateur à prononcer à nouveau sa commande à l'étape S49.For example, if the number of failures N is greater than a threshold THR1 while the signal-to-noise ratio remains greater than a second threshold THR2, such a situation means that the user, despite good sound acquisition conditions, not intelligibly pronouncing his command (OK arrow at the output of the test S43), and he is asked, in a later step S44 to pronounce his command more slowly Except this situation, it is possible that the signal-to-noise ratio RSB, in average, or low, and in this case, an analysis of the time variation of the signal-to-noise ratio in step S45 is carried out. If this variation is greater than a threshold THR3 (OK arrow at the exit of the test S45), this situation means that noises are present intermittently and it is proceeded to the step S47 at a time delay during which the user is not invited to say its command, and until the ambient noise is below a threshold THR4 (OK arrow at the output of the test S48). At this time then, the HMI interface is animated to prompt the user to pronounce his command again in step S49.
Si la variation temporelle du rapport signal à bruit reste inférieure au seuil THR3 (flèche KO en sortie du test S45), cette situation signifie qu'il n'y a pas d'amélioration du rapport signal à bruit à espérer et, dans ce cas, il est demandé à l'utilisateur de s'approcher du microphone pour prononcer à nouveau sa commande, à l'étape S46. Cette précaution contribue à améliorer le rapport signal à bruit.If the temporal variation of the signal-to-noise ratio remains below the threshold THR3 (KO arrow at the output of the test S45), this situation means that there is no improvement in the signal-to-noise ratio to be hoped for and, in this case , the user is asked to approach the microphone to pronounce his command again, in step S46. This precaution helps to improve the signal-to-noise ratio.
Bien entendu, la présente invention ne se limite pas aux formes de réalisation décrites ci-avant à titre d'exemple ; elle s'étend à d'autres variantes. Typiquement, les comparaisons à des seuils, présentées ci-avant, correspondent à des exemples de réalisation pratique, mais leur description ne limite en rien l'interprétation générale des principales étapes de l'invention, consistant en particulier à guider l'utilisateur par des choix d'options judicieuses. De même, la présentation du rapport signal à bruit en référence à la figure 4 pour le critère de la qualité de l'acquisition sonore à évaluer est un exemple de réalisation. D'autres critères d'évaluation sont possibles (par exemple, le niveau de captation (mesuré en décibels), et/ou son évolution temporelle).Of course, the present invention is not limited to the embodiments described above by way of example; it extends to other variants. Typically, the comparisons at thresholds, presented above, correspond to examples of practical realization, but their description in no way limits the general interpretation of the main stages of the invention, consisting in particular of guiding the user through choice of sensible options. Similarly, the presentation of the signal-to-noise ratio with reference to FIG. 4 for the criterion of the quality of the sound acquisition to be evaluated is an exemplary embodiment. Other evaluation criteria are possible (for example, the level of capture (measured in decibels), and / or its temporal evolution).
Claims (10)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR1459325A FR3026542B1 (en) | 2014-09-30 | 2014-09-30 | RECOGNIZED VOICE RECOGNITION |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR1459325A FR3026542B1 (en) | 2014-09-30 | 2014-09-30 | RECOGNIZED VOICE RECOGNITION |
Publications (2)
Publication Number | Publication Date |
---|---|
FR3026542A1 true FR3026542A1 (en) | 2016-04-01 |
FR3026542B1 FR3026542B1 (en) | 2017-12-29 |
Family
ID=51987356
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FR1459325A Active FR3026542B1 (en) | 2014-09-30 | 2014-09-30 | RECOGNIZED VOICE RECOGNITION |
Country Status (1)
Country | Link |
---|---|
FR (1) | FR3026542B1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200034683A1 (en) * | 2016-06-24 | 2020-01-30 | Microsoft Technology Licensing, Llc | Situation aware personal assistant |
CN111083065A (en) * | 2019-12-23 | 2020-04-28 | 珠海格力电器股份有限公司 | Method for preventing input command from being blocked, storage medium and computer equipment |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6044347A (en) * | 1997-08-05 | 2000-03-28 | Lucent Technologies Inc. | Methods and apparatus object-oriented rule-based dialogue management |
EP1679694A1 (en) * | 2005-01-05 | 2006-07-12 | AT&T Corp. | Improving error prediction in spoken dialog systems |
US20110282669A1 (en) * | 2010-05-17 | 2011-11-17 | Avaya Inc. | Estimating a Listener's Ability To Understand a Speaker, Based on Comparisons of Their Styles of Speech |
US20120053945A1 (en) * | 2010-08-30 | 2012-03-01 | Honda Motor Co., Ltd. | Belief tracking and action selection in spoken dialog systems |
-
2014
- 2014-09-30 FR FR1459325A patent/FR3026542B1/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6044347A (en) * | 1997-08-05 | 2000-03-28 | Lucent Technologies Inc. | Methods and apparatus object-oriented rule-based dialogue management |
EP1679694A1 (en) * | 2005-01-05 | 2006-07-12 | AT&T Corp. | Improving error prediction in spoken dialog systems |
US20110282669A1 (en) * | 2010-05-17 | 2011-11-17 | Avaya Inc. | Estimating a Listener's Ability To Understand a Speaker, Based on Comparisons of Their Styles of Speech |
US20120053945A1 (en) * | 2010-08-30 | 2012-03-01 | Honda Motor Co., Ltd. | Belief tracking and action selection in spoken dialog systems |
Non-Patent Citations (1)
Title |
---|
MALTE GABSDIL ET AL: "Combining Acoustic Confidence Scores with Deep Semantic Analysis for Clarification Dialogues", PROCEDING OF THE 5TH INTERNATIONAL WORKSHOP ON COMPUTATIONAL SEMANTICS, 1 January 2003 (2003-01-01), XP055188800, Retrieved from the Internet <URL:https://www.let.rug.nl/bos/pubs/GabsdilBos2003IWCS.pdf> [retrieved on 20150512] * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200034683A1 (en) * | 2016-06-24 | 2020-01-30 | Microsoft Technology Licensing, Llc | Situation aware personal assistant |
US11636305B2 (en) * | 2016-06-24 | 2023-04-25 | Microsoft Technology Licensing, Llc | Situation aware personal assistant |
CN111083065A (en) * | 2019-12-23 | 2020-04-28 | 珠海格力电器股份有限公司 | Method for preventing input command from being blocked, storage medium and computer equipment |
CN111083065B (en) * | 2019-12-23 | 2022-05-20 | 珠海格力电器股份有限公司 | Method for preventing input command from being blocked, storage medium and computer equipment |
Also Published As
Publication number | Publication date |
---|---|
FR3026542B1 (en) | 2017-12-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6852006B2 (en) | Voice-enabled system with domain disambiguation | |
US20230206940A1 (en) | Method of and system for real time feedback in an incremental speech input interface | |
US10331784B2 (en) | System and method of disambiguating natural language processing requests | |
US20210304759A1 (en) | Automatic speech recognition with filler model processing | |
KR102100389B1 (en) | Personalized entity pronunciation learning | |
US10614799B2 (en) | System and method of providing intent predictions for an utterance prior to a system detection of an end of the utterance | |
KR101798828B1 (en) | System and method for hybrid processing in a natural language voice services environment | |
US20150039316A1 (en) | Systems and methods for managing dialog context in speech systems | |
KR102414456B1 (en) | Dialogue processing apparatus, vehicle having the same and accident information processing method | |
US11295735B1 (en) | Customizing voice-control for developer devices | |
EP2587478A2 (en) | Speech recognition repair using contextual information | |
CN107808665B (en) | Method, system and storage medium for processing spoken utterance streams | |
US20240203400A1 (en) | Speaker awareness using speaker dependent speech model(s) | |
US20150310853A1 (en) | Systems and methods for speech artifact compensation in speech recognition systems | |
JP7347217B2 (en) | Information processing device, information processing system, information processing method, and program | |
US9715878B2 (en) | Systems and methods for result arbitration in spoken dialog systems | |
CN111301312B (en) | Session guiding method for speech recognition system | |
FR3026542A1 (en) | RECOGNIZED VOICE RECOGNITION | |
CN112863496B (en) | Voice endpoint detection method and device | |
CN107195298B (en) | Root cause analysis and correction system and method | |
WO2024054271A1 (en) | System(s) and method(s) for causing contextually relevant emoji(s) to be visually rendered for presentation to user(s) in smart dictation | |
EP4356372A1 (en) | System(s) and method(s) for causing contextually relevant emoji(s) to be visually rendered for presentation to user(s) in smart dictation | |
CN116884397A (en) | Voice processing method and device, electronic equipment and storage medium | |
KR20200123495A (en) | Dialogue processing apparatus, vehicle having the same and dialogue processing method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PLFP | Fee payment |
Year of fee payment: 2 |
|
PLSC | Publication of the preliminary search report |
Effective date: 20160401 |
|
PLFP | Fee payment |
Year of fee payment: 3 |
|
PLFP | Fee payment |
Year of fee payment: 4 |
|
PLFP | Fee payment |
Year of fee payment: 5 |
|
PLFP | Fee payment |
Year of fee payment: 6 |
|
PLFP | Fee payment |
Year of fee payment: 7 |
|
PLFP | Fee payment |
Year of fee payment: 8 |
|
PLFP | Fee payment |
Year of fee payment: 9 |
|
PLFP | Fee payment |
Year of fee payment: 10 |