Brevet FR2510794A1 — publié le 19830204

DISPOSITIF D'INTRODUCTION DE MOTS A COMMANDE PAR LA PAROLE La présente invention a pour objet un dispositif d'introduc- tion de mots à commande par la parole. De façon plus précise la présente invention se rapporte à un tel dispositif dans lequel l'apprentissage se fait par l'utilisa- teur lui-même au fur et à mesure qu'il se sert de l'appareil asso- cié au dispositif d'introduction de mots Les expressions "mots" et "apprentissage" seront explicitées ultérieurement. Compte tenu de la facilité d'utilisation que cela entraîne, il est de plus en plus envisagé de commander directement par la parole un certain nombre d'appareils Un tel appareil doit bien sûr comporter à son entrée un dispositif permettant l'introduction de mots et qui serviront effectivement à commander l'appareil. Quel que soit le type d'appareil à commander, il faut disposer pour sa commande d'un vocabulaire qui consiste essentiellement en des instructions et en des données Les instructions se présentent le plus souvent sous la forme de mots ou de groupes d'un nombre limité de mots et les données sous forme de chiffres ou de nom- bres Dans le présent texte, l'expression "mot" sera utilisée pour recouvrir l'ensemble des instructions et des données à introduire dans la machine Un "mot" recouvrira donc, d'une part des mots stricto-sensu ou des groupes de mots comportant un nombre réduit de mots et d'autre part des nombres. Les appareils à commande par la parole fonctionnent tous sensiblement selon le même processus général L'appareil comporté des mémoires dans lesquelles sont enregistrées des informations représentant sous une forme codée les différents mots du vocabu- laire nécessaires pour commander l'appareil et qui seront appelés ultérieurement références Lorsque l'utilisateur veut commander effectivement cet appareil il prononce un mot de ce vocabulaire. Le dispositif d'entrée convertit ce mot en un signal électrique qui cst à son tour codé selon le mêmẻ code que celui qui a servi à introduire les informations mémorisées constituant le vocabulaire de l'appareil Le dispositif d'introduction de mots compare le mot codé avec les différentes références contenues dans sa mémoire et il retient la référence mémorisée qui est la plus proche du mot prononcé C'est le mot associé à cette référence qui sera utilisé pour commander l'appareil. La phase qui consiste à introduire dans la mémoire les réfé- rences correspondant à l'ensemble des mots formant le vocabulaire de l'appareil sera appelé apprentissage Il est clair que la qualité de cet apprentissage constitue un élément déterminant de la qualité et de la fiabilité de la commande par la parole de l'appareil. Deux types d'apprentissage sont généralement envisagés Selon le premier type qui pourrait être appelé apprentissage pré-pro- grammé, les références sont initialement introduites -en usine par un locuteur type Ces références peuvent également consister en des références types définies par une analyse statistique des différentes façons de prononcer un mot Les informations corres- %pondant aux différents mots du vocabulaire sont donc mémorisées une fois pour toute et de manière définitive Ce type d'appren- tissage présente l'avantage que l'utilisateur de l'appareil peut se servir immédiatement de celui-ci sans avoir à procéder lui-même à l'apprentissage de l'appareil Cependant l'inconvénient majeur d'un tel processus d'apprentissage est dû au fait que les mots du vocabulaire mémorisés ont été prononcés par un locuteur type alors que les mots introduits dans la machine pour commander celle-ci sont prononcés par l'utilisateur Il est extrêmement probable qu'un même mot sera prononcé différemment par le locuteur type et par l'utilisateur Pour que l'appareil fonctionne convenablement c'est-à-dire que le mot prononcé par l'utilisateur soit effecti- vement reconnu par l'appareil, il est nécessaire de prévoir un codage des mots assez élaboré et un algorithme de comparaison très évolué pour s'affranchir des problèmes de différence de prononcia- tion d'un même mot L'utilisation d'un algorithme de comparaison très élaboré et d'un processus de codage très précis entraîne une complication sensible des circuits de codage et de mémorisation c'est-à-dire que cela augmente le prix de ces circuits et la surface de silicium nécessaire pour réaliser ces circuits Or, dans certaines applications, il n'est pas possible d'avoir un coût élevé pour la fabrication du dispositif d'introduction de mots ni d'utiliser une place importante dans l'ensemble de l'appareil pour réaliser ce circuit d'introduction. L'autre type d'apprentissage peut être appelé apprentissage initial A la sortie d'usine le dispositif d'introduction de mots ne comporte en mémoire aucune information sur les mots du vocabu- laire de l'appareil L'apprentissage du dispositif est fait ini- tialement par l'utilisateur lui-même Ce processus d'apprentissage permet une bonne qualité d'identification entre les mots de réfé- rence et le mot prononcé puisque c'est l'utilisateur lui-même qui a introduit les mots de référence L'inconvénient majeur de ce procédé d'apprentissage réside dans le fait que l'utilisateur doit lui-même introduire dans l'appareil le vocabulaire de référence et que la qualité de cette phase conditionne le bon fonctionnement ultérieur de l'appareil De plus, cette phase d'apprentissage, qui constitue la première prise de contact de l'utilisateur avec l'ap- pareil, a un effet disuasif et rebutant sur l'utilisateur Cela rend plus difficile la commercialisation d'un dispositif utilisant un tel mode d'apprentissage En outre, ce processus d'apprentissa- ge comporte deux limitations D'une part, il n'est réellement efficace que si l'appareil n'a qu'un seul utilisateur D'autre part, il est aisé de constater qu'un même locuteur prononcera un même mot de façon différente à des moments différents pour un grand nombre de raisons Il s'en suit que l'avantage de l'appren- tissage par l'utilisateur lui-même risque de disparaître. Il est possible d'envisager de commander directement par la parole à l'aide d'un vocabulaire donné un certain nombre d'appa- reils Un tel type de commande peut s'appliquer en particulier mais de façon non exclusive dans un dispositif de commande à distance pour un appareil, pour le programmateur d'une machine- outil ou d'un appareil electro-ménager tel d'une machine à laver le linge ou la vaisselle, etc. Il est aisé de concevoir que la commande par la parole permet de supprimer ou de réduire de façon très importante le nombre d'organe de commande et d'utiliser un processus de commande beau- coup plus proche du processus naturel qui consiste à dire ce qui doit être fait. Pour remédier aux inconvénients mentionnés précédemment un premier objet de l'invention est de fournir un dispositif d'intro- duction de mots à commande par la parole qui combine les avantages d'un apprentissage pré-programmé avec ceux d'un apprentissage ini- tial par le locuteur sans présenter les inconvénients de ces deux processus. Un deuxième objet de l'invention est de fournir un tel dispo- sitif qui soit aisément utilisable pour la commande d'une montre électronique à affichage numérique c'est-à-dire qui n'utilise pas une surface importante de composants et qui ne consomme pas une quantité importante d'énergie électrique. Un troisième objet de l'invention est de fournir un tel dispositif qui assure une bonne qualité d'identification entre le mot prononcé et les mots mémorisés du vocabulaire. Un quatrième objet de l'invention est de fournir un tel dispositif qui puisse être utilisé aisément par plusieurs locu- teurs sans introduire de servitudes importantes de manipulation. Pour atteindre ces buts l'invention a pour objet un disposi- tif d'introduction de mots à commande par la parole utilisant un processus d'apprentissage dit "adaptatif" Pour cela le dispositif d'introduction comprend des moyens d'entrée pour coder un mot prononcé par le locuteur en une information représentative du mot prononcé, des moyens d'affichage d'un des N mots constituant le vocabulaire de l'appareil, des moyens pour mémoriser N références, chaque référence représentant sous forme codée un des N mots du vocabulaire, et au moins l'information représentative du mot pro- noncé et un circuit de commande relié aux moyens pour mémoriser et aux moyens d'affichage Le circuit de commande comprend des moyens de comparaison pour comparer -chaque mot prononcé par le locuteur sous forme codée aux références mémorisées et pour placer par rang de ressemblance décroissante avec le mot prononcé codé les N réfé- rences mémorisées en fonction d'un algorithme prédéterminé; des moyens de détection de répétition comparant un mot prononcé codé au mot prononcé codé précédent s'il existe, en fonction d'un autre algorithme prédéterminé pour détecter si une répétition a lieu ou non, des moyens sensibles aux moyens de détection pour commander l'affichage du mot correspondant à la référence ayant le premier rang de ressemblance si une répétition n'a pas été détectée -et pour commander l'affichage du mot correspondant à la référence ayant le rang de ressemblance qui suit immédiatement le rang de ressemblance de l'information correspondant au mot qui a été précédemment affiché et des moyens pour remplacer dans ladite mémoire la référence correspondant au mot affiché en dernier par l'information correspondant au mot répété lorsque l'utilisateur a constaté que le mot affiché sur les moyens d'affichage est le mot qu'il a effectivement répété. Il découle de la définition précédente de l'invention que, comme dans le cas de l'apprentissage pré-programmé, le dispositif comprend dans ses mémoires les références correspondant aux N mots du vocabulaire de l'appareil à commander, r'es références ayant par exemple été enregistrées en usine par un locuteur type Lorsque l'utilisateur se sert pour la première fois du dispositif il pro- nonce un mot correspondant à une instruction qu'il souhaite donner à la machine Si, après que le locuteur ait prononcé ce mot, le dispositif d'affichage affiche effectivement ce mot, cela prouve que le locuteur type et l'utilisateur ont la même façon de pronon- cer ce mot et aucune phase d'apprentissage n'est nécessaire Si au contraire après avoir prononcé un mot l'utilisateur constate que le mot affiché est différent il devra répéter ce mot jusqu'à ce que le dispositif d'affichage affiche effectivement le mot pronon- cé A ce moment, l'information codée correspondant au mot répété par l'utilisateur se substitue à la référence codée initialement introduite par le locuteur type Il y a donc eu apprentissage pour ce mot Il est cependant important d'observer que le nombre de répétitions nécessaires pour cet apprentissage est optimisé grâce au classement initial par ordre de ressemblance entre le mot prononcé et les références. Par ailleurs il est clair qu'il n'y a pas, comme dans le cas de l'apprentissage initial, une phase d'apprentissage puis une phase d'utilisation normale du dispositif d'introduction de mots. L'apprentissage peut se faire en permanence Il intervient, sans procédure particulière dès que l'utilisateur constate que le mot visualisé ne correspond pas au mot qu'il a prononcé. L'invention concerne encore des variantes de réalisation du dispositif défini ci-dessus qui permettent, d'une part d'éviter des erreurs opératoires faites par l'utilisateur du dispositif, et d'autre part, d'optimiser le fonctionnement du dispositif objet de l'invention. D'autres avantages et caractéristiques de l'invention appa- raîtront plus clairement à la lecture de la description qui suit de plusieurs modes de réalisation-de l'invention donnés à titre d'exemples non limitatifs La description se réfère aux dessins annexés dans lesquels la figure 1 est une représentation simplifiée du dispositif objet de l'invention; la figure 2 est un diagramme illustrant le fonctionnement de ce mode de réalisation simplifié du dispositif; les figures 2 a et 2 b sont des tableaux illustrant deux procédures possible d'apprentissage; la figure 3 est un algorithme complet sous une forme sim- plifiée illustrant le fonctionnement du dispositif objet de l'in- vention; la figure 4 est un organigramme détaillé du fonctionnement complet du circuit de commande du dispositif selon l'invention;- les figures 5 a et 5 b sont des diagrammes illustrant le codage d'un mot et la comparaison entre un mot et une référence mémorisée; et la figure 6 montre l'organigramme d'un sous-programme du fonctionnement complet illustré par la figure 4. La figure 1 représente de façon simplifiée la réalisation du dispositif d'introduction de mots selon l'invention Ce dispositif comprend un transducteur 2 qui convertit des informations vocales en un signal électrique et qui est de préférence un microphone Le signal électrique délivré par ce microphone 2 est codé par un cir- cuit 4 qui délivre à sa sortie des informations numériques de préférence sous forme binaire Le codage d'un signal électrique représentatif de la parole en des informations numériques binaires est un problème connu Il existe de nombreux procédés de codage et dispositifs de mise en oeuvre de ces procédés L'invention est applicable quel que soit le procédé et le dispositif de codage utilisé Bien entendu, l'information que l'on veut introduire dans le dispositif et les informations codées mémorisées initialement, c'est-à-dire les références, sont codées par le même processus Le dispositif comprend également un circuit de commande portant la référence générale 6 Ce circuit sera explicité ultérieurement Le dispositif d'introduction de mots comporte en outre des moyens de mémorisation 8 dans lesquels sont initialement mémorisées les références, de préférence sous forme binaire, qui correspondent au codage de N mots constituant le vocabulaire nécessaire pour com- mander l'appareil associé au dispositif d'introduction de mots. Le dispositif comprend enfin un dispositif d'affichage ou de visualisation 10 permettant de faire apparaître un parmi les n mots du vocabulaire Cela signifie que ce dispositif d'affichage peut être constitué d'une part par une cellule à cristaux liquides permettant d'afficher des informations numériques, d'autre part, par des informations imprimées sur ce dispositif associées à des points lumineux d'affichage En d'autres termes, lorsqu'on con- sidère l'affichage d'un mot sur le dispositif, il peut s'agir de l'affichage effectif d'un nombre ou bien de l'excitation d'un point lumineux disposé en regard d'une mention écrite sur de la face de la cellule Ces ment-tons écrites peuvent par exemple constituer des symbolisations des différentes fonctions que rem- plit l'appareil commandé Il est clair que la notion de dispositif d'affichage doit être comprise dans un sens très général Dans le cadre du dispositif d'introduction de données, il faut que ce dispositif d'affichage 10 permette à l'utilisateur de l'appareil symbolisé par la référence 12 d'avoir un retour du mot effecti- vement reconnu par le dispositif d'introduction de données Il pourrait également s'agir pour d'autres applications d'un écran de visualisation sur lequel le mot introduit serait effectivement écrit Il pourrait encore s'agir d'une imprimante sur laquelle un utilisateur pourrait contrôler l'information effectivement affi- chée. Le dispositif 10 pourrait encore être un dispositif sonore capable d'émettre autant de signaux sonores qu'il y a de mots Ce dispositif peut être un synthétiseur de la parole humaine qui "dit" le mot reconnu par le dispositif d'introduction de mots Il peut s'agir encore d'un émetteur sonore délivrant autant de bruits distincts qu'il y a de mots. En d'autres termes, le dispositif 10 a simplement pour fonc- tion de restituer le mot reconnu pour constituer un élément de I contrôle interactif pour l'utilisateur 12 de l'information entrée dans le dispositif On peut encore dire que le dispositif 10 est un élément de restitution du mot reconnu sous forme visuelle ou sonore C'est dans ce sens qu'il faut comprendre les expressions "dispositif d'affichage" et "dispositif de visualisation". Il faut également comprendre que ce dispositif d'affichage a simplement pour but d'établir une relation univoque entre le mot reconnu et le mot restitué Par exemple, si les "mots" sont impri- més dans une première langue sur le moyen d'affichage avec un point lumineux en regard de chaque mot pour identifier le mot reconnu, il est parfaitement possible, grâce au dispositif selon l'ivention, d'introduire des mots correspondants dans une deuxième langue Bien entendu, pour le contrôle, l'utilisateur devra faire lui-même la correspondance entre les mots imprimés dans la premiè- re langue et les mots introduits dans la deuxième langue. Les moyens de mémorisation 8 peuvent être décomposés en une mémoire morte 8 a dans laquelle sont effectivement stockées les références codées représentant les mots du vocabulaire mémorisés en usine; une mémoire vive 8 b dans laquelle il est possible d'in- troduire les références relatives aux mots du vocabulaire; une mémoire 8 c pour mémoriser le mot qui vient d'être prononcé et qui a été codé par le circuit 4; et une mémoire 8 d pour mémoriser le mot précédemment prononcé Bien entendu les mémoires 8 c et 8 d sont en fait des positions de mémoire particulières de la mémoire vive 8 b. Le circuit de commande 6 comporte tout d'abord un circuit 14 de classement des N références contenues dans la mémoire 8 b en fonction de leur ressemblance avec le-mot prononcé par l'utilisa- teur 12 dans le microphone 2, codé par je circuit 4, et contenu dans la mémoire 8 c Ce classement résulte de l'application d'un algorithme qui permet de mesurer la distance entre l'information codée associée au mot prononcé et les références codées mémorisées dans la mémoire 8 correspondant aux N mots du vocabulaire Un grand nombre d'algorithmes peuvent être envisagés Un de ces algorithmes sera décrit ultérieurement à titre d'exemple Le circuit de commande 6 comprend également des moyens 16 pour dé- tecter une éventuelle répétition entre deux mots successifs pro- noncés par l'utilisateur 12 Ce circuit 16 délivre deux signaux selon qu'une répétition a été détectée ou pas La détection d'une répétition consiste dans la mise en oeuvre d'un deuxième algorith- me de comparaison des deux mots successivement prononcés De nombreux algorithmes peuvent être utilisés et un algorithme pos- sible sera décrit ultérieurement Ce circuit compare donc l'in- formation contenue dans la mémoire 8 c avec l'information contenue dans la mémoire 8 d, s'il y en a une Le circuit de commande 6 comprend également des moyens 18 de commande de l'affichage 10 Le circuit 18 qui est relié à la mémoire 8 b permet d'afficher sur les moyens d'affichage 10 celui des N mots mémorisés dans la mémoire 8 qui occupe le premier rang de ressemblance avec le mot prononcé si aucune répétition n'a été détectée par le circuit 16 et le mot présentant le rang de répétition qui suit immédiatement le mot précédemment affiché lorsqu'une répétition a été détectée par le circuit 16 Enfin, le circuit de commande 6 comprend un dispositif pour modifier les références contenues dans les mémoires 8 b et 8 a Ce circuit 20 substitue pour une position mémoire donnée l'information contenue dans cette mémoire et associée au mot effectivement répété et donc affichée sur le dispositif 10, l'in- formation codée correspondant au mot prononcé par l'utilisateur 12 contenue dans la mémoire 8 d Cette substitution est commandée par l'utilisateur 12 par des moyens symbolisés par la référence 21. Ces moyens peuvent être constitués par un bouton-poussoir Com Lme cela sera expliqué ultérieurement, ces moyens peuvent consister également en des moyens de temporisation Si un certain délai s'écoule après qu'un mot ait été prononcé sans qu'un mot soit à nouveau prononcé, le circuit de commande 6 interprète ce silence comme un accord de l'utilisateur avec le mot qui vient d'être affiché On comprend que dans ce cas, il y a effectivement un apprentissage pour ce mot puisqu'il y a modification de l'infor- mation mémorisée associée à ce mot. La figure 2 illustre le fonctionnement du dispositif repré- senté sur la figure 1 Au début d'un cycle les informations conte- nues dans la mémoire morte 8 a sont transférées dans la mémoire vive 8 b Le mot prononcé par le locuteur symbolisé par la référen- ce 4 ' qui est introduit dans la mémoire 8 c est traité pour établir un classement du rang de ressemblance des références contenues dans la mémoire 8 b Cette opération porte la référence 14 ' Dans la description qui suit on appelera candidat les différentes références classées relatives aux N mots mémorisés, le premier candidat étant la référence la plus proche du mot prononcé, le deuxième candidat la référence qui la suit immédiatement dans l'ordre de ressemblance, etc On détecte ensuite en 16 ' si le-mot qui vient d'être prononcé est une répétition du mot prononcé précédemment, par comparaison entre l'information contenue dans la mémoire 8 c et celle qui est contenue dans la mémoire 8 d s'il y en a une S'il ne s'agit pas d'une répétition, il est considéré que le mot reconnu est le premier candidat au sens défini précédem- ment Cette opération est référencée 22 ' Si au contraire il y a eu répétition le mot reconnu est identifié avec le candidat qui suit le candidat qui a été affiché en liaison avec le mot prononcé précédemment Cette opération est référencée 24 ' Quelle que soit l'opération précédente, le mot reconnu est affiché dans l'opéra- tion 18 ', c'est-à-dire que le système réagit toujours à l'intro- duction d'un mot En d'autres termes, même si le mot prononcé est très différent de l'ensemble des références contenues en mémoire, le dispositif d'affichage affichera un mot, celui dont la référen- ce est la plus proche du mot prononcé Il n'y a pas seuil de rejection lors de la définition des candidats Si le mot reconnu est conforme au mot effectivement prononcé, ce qui est déterminé par l'opérateur 12 ' qui symbolise évidemment l'utilisateur 12, et si de plus il n'y a pas eu répétition (ce qui est détecté dans l'opération 12 ") le cycle opératoire est terminé (rectangle 24 '). Si le mot affiché est exact mais qu'une répétition a été détectée en 16 ", on substitue en 20 ' l'information relative au mot reconnu par l'information relative au mot effectivement prononcé lorsque l'utilisateur le commande par les moyens 21 et le cycle est égale- ment te-miné Si au contraire on a détecté en 12 ' que le mot reconnu affiché n'est pas le mot prononcé, l'utilisateur 12 répète le même mot, ce qui est symbolisé par la référence 26 ' Le mot répété est réintroduit dans le processus opératoire et se substi- tue au mot prononcé 4 '. Il apparaît ainsi clairement que, dans un premier cas, la première fois qu'un mot est prononcé, ce même mot est affiché sur le dispositif d'affichage 10 Dans ce cas, il n'y a pas lieu d'ef- fectuer un apprentissage et l'instruction correspondant à ce mot peut être directement appliquée à l'appareil qui est muni du dispositif d'introduction En clair, cela signifie que la pronon- ciation de ce mot par le locuteur type et la prononciation de ce même mot par l'utilisateur sont très proches. Dans le deuxième cas, la première fois qu'un mot est pronon- cé, le mot affiché est différent du mot prononcé Le locuteur 12 répète ce mot Lors de la répétition on détecte en 16 ' cette répé- tition et le mot affiché sera donc le deuxième candidat dans l'or- dre de ressemblance Si ce deuxième candidat est effectivement le mot prononcé, le dispositif substitue en 20 ' dans la mémoire 8 b une information correspondant au mot effectivement prononcé à la référence initialement contenue dans la mémoire Si lors de cette première répétition, le mot affiché est différent du mot prononcé, le locuteur 12 répète une deuxième fois le mot, ce qui va entraî- ner l'affichage du troisième candidat par ordre de ressemblance. Le processus est répété jusqu'à ce que le mot affiché c'est-à-dire le mot reconnu soit identique au mot prononcé, auquel cas il y a substitution dans la mémoire de l'information codée correspondant au mot prononcé à la référence initialement contenue Il apparaît ainsi que la fonction d'apprentissage n'intervient que dans les cas o cela est nécessaire et que de plus, il y a optimisation du processus d'apprentissage, c'est-àdire minimisation du nombre de répétitions nécessaires grâce au classement des candidats selon leur rang de ressemblance. Le tableau 2 a illustre un premier processus opératoire d'ap- prentissage Dans l'exemple considéré, le vocabulaire comporte au moins les mots "ON", "OFF", "UP", "DOWN" et "FAST" Le locuteur prononce une première fois le mot "ON" Le premier mot affiché est "OFF" Cette différence est due bien sûr au fait que l'intro- duction préalable des références a été faite par un autre locu- teur Le locuteur répète le mot "ON" et le deuxième candidat dans l'ordre de ressemblance avec le mot "ON" est "UP" qui est donc affiché par les moyens d'affichage 10 Le locuteur répète une deuxième fois le mot "ON" et les moyens d'affichage affichent effectivement le mot "ON" Alors le circuit 20 substitue le mot codé "ON" prononcé par le locuteur à la référence initialement introduite correspondant au mot "ON". Le tableau 2 b correspond à un deuxième processus opératoire. Le locuteur prononce pour la première fois le mot "ON" Le dis- positif d'affichage affiche "OFF" Le locuteur devrait donc répété le mot "ON" Par inadvertance, celui-ci prononce le mot "DOWN" Le circuit 16 détecte qu'il n'y a pas répétition et le circuit 14 définit alors un autre rangement des candidats Le premier can- didat et le mot "UP" qui est donc affiché Le locuteur constatant qu'il y a erreur répète "DOWN" et dans l'exemple considéré "DOWM" est le deuxième candidat Il est donc affiché par les moyens d'affichage 10 et le circuit 20 substitue dans la mémoire 8 b, 8 a Le codage du mot "DOWN" tel qu'il a été répété par le locuteur à la référence "DOWN" mémorisée initialement. La figure 3 expose de façon plus détaillée le fonctionnement d'un mode de réalisation perfectionné du dispositif d'introduction de mots selon l'invention En particulier selon ce mode de réali- sation, le dispositif tient compte d'erreurs de procédure que peut faire le locuteur lors de la phase initiale, c'est-à-dire lors- qu'il se sert pour la première fois du dispositif Il apparaît en particulier à travers la description précédente que l'appareil utilise un certain nombre de moyens de comparaison entre un mot prononcé codé et des mots codés mémorisés Cela se trouve par exemple lorsqu'il y a à détecter une éventuelle répétition ou lorsqu'il y a à dresser la liste des candidats Quelle que soit la précision des algorithmes utilisés, il est clair qu'il peut se produire des erreurs qui risqueraient de perturber le fonction- nement du dispositif. Le fonctionnement du dispositif peut être décomposé en quatre parties: une partie A 1 qui correspond à un fonctionnement normal, c'est-à-dire que le mot prononcé par le locuteur est effectivement reconnu et affiché immédiatement par les moyens d'affichage; une partie A 2 correspondant à une procédure d'erreur, cette procédure d'erreur étant introduite lorsque le mot affiché est différent du mot prononcé par le locuteur; une partie A 3 correspondant à l'ap- prentissage adaptatif proprement dit, cette phase intervenant lorsque le mot affiché est rendu identique au mot prononcé après au moins une répétition, et ayant pour but de substituer à la référence initiale la nouvelle information dans les mémoires 8 a,8 b; enfin, une partie A 4 qui permet de détecter d'éventuelles erreurs commises par le locuteur lorsqu'une procédure d'erreur est enclenchée. Le mot prononcé codé par le locuteur est introduit en 30 En 32, on élabore un délai dl d'attente d'un mot En 34, on contrôle que le temps s'écoulant entre deux mots prononcés successivement est inférieur ou non au délai dl Si le temps est supérieur à dl, on passe dans la partie A 3 d'apprentissage adaptatif Si au con- traire ce délai est inférieur à dl, on passe à l'étape 36 o on vérifie si le mot prononcé codé est valide Cette étape a pour but d'éliminer à priori l'entrée d'informations qui ne correspon- draient pas effectivement à des mots, par exemple, des bruits parasites etc Cette étape 36 sera explicitée ultérieurement Si le mot prononcé n'est pas valide, on retourne au début du proces- sus d'entrée de mots Si au contraire ce mot est valide, on passe à l'étape 38 dans laquelle on détecte si une procédure d'erreur (PE) est en cours Si la réponse est positive, on passe dans la partie A 2 correspondant à la procédure d'erreur Si la réponse est négative on passe à l'étape 40 dans laquelle, on dresse la liste des candidats (Cdd) c'est- à-dire la liste par rang décroissant de ressemblance avec le mot prononcé des différentes références contenues dans la mémoire correspondant aux mots nécessaires à la commande de l'appareil Puis dans l'étape 42, on vérifie que le temps écoulé entre le mot actuel et le mot précédent est inférieur au délai dl Si la réponse est positive, on passe à l'étape 44 dans laquelle on détecte si le mot prononcé est une répétition (REP) du mot prononcé précédemment (Mt prec) On utilise pour cela un algorithme de comparaison qui sera explicité ultérieu- rement S'il y a effectivement répétition (REP), on passe dans la partie A 2 S'il n'y a pas eu répétition, on passe à l'étape 46 dans laquelle on affiche le premier candidat (ler Cdd), c'est-à- dire que les moyens d'affichage affichent le mot qui à l'étape 40 a été détecté comme étant associé à la référence la plus proche du mot prononcé C'est la procédure normale et celle qui est utilisée après la phase initiale d'apprentissage Il faut observer que si à l'étape 42 le temps s'écoulant entre le mot précédent et le mot prononcé est supérieur à dl, on affiche directement le premier candidat en 46 puisqu'on est sûr qu'il n'y a pas eu répétition. On va maintenant expliciter la partie A 2 correspondant à la procédure d'erreur (PE) Comme on l'a déjà indiqué, on peut entrer dans la procédure d'erreur A 2 à deux niveaux: soit au niveau de l'étape 38; soit au niveau de l'étape 44 On entre dans la procé- dure d'erreur A 2 au niveau 44 si on a détecté que le mot qui vient d'être prononcé (Nt pron) est une répétition du mot prononcé précédemment (Nt prec) Dans ce cas, on déclenche en 48 une procédure d'erreur (PE) et en 50 on affiche le candidat suivant c'est-à-dire, dans ce cas d'initialisation de la procédure d'er- treur, le deuxième candidat Bien entendu, dans ce cas, si le deu- xième candidat affiché est le mot effectivement prononcé par le locuteur, on passe à l'étape d'apprentissage adaptatif A 3 On peut également entrer dans la procédure d'erreur A 2 au niveau 38 dans le cas o on détecte en 38 que la procédure d'erreur est déjà déclenchée Dans le cas d'une réponse positive, on vérifie en 52, que le mot prononcé est bien une répétition du mot ayant entraîné le déclenchement de la procédure d'erreur Si la réponse à cette question est oui, on vérifie en 54 qu'il existe bien un candidat suivant, c'est-à-dire que le candidat primitivement affiché n'est pas le dernier dans la liste des candidats classés Si en 52 la réponse est négative, on entre dans le processus A 4 de détection d'erreur dans la procédure d'erreur Si en 54 on a détecté qu'il existe un candidat suivant, on affiche en 50 le candidat suivant. On entre dans la procédure d'apprentissage adaptatif A 3 au niveau de l'étape 34 Si le temps écoulé sans mot prononcé est supérieur au délai dl, on contrôle en 56 qu'il s'agit du premier délai d 1 après la procédure d'erreur Si la réponse est positive, en 58 on contrôle que le dernier mot prononcé est bien une répéti- tion Si la réponse est à nouveau positive, on remplace en 60 la référence contenue dans la mémoire du mot prononcé par l'informa- tion codée correspondant au mot qui a déclenché la procédure d'er- reur, et en 62 on arrête la procédure d'erreur Si en 56 la répon- se est négative, on retourne à l'entrée, la procédure d'erreur ayant été déclenché précédemment Si au contraire la réponse est négative à l'étape 58, on passe directement en 62 pour interrompre la procédure d'erreur et le processus est ainsi remis à zéro. On entre dans le processus A 4 de détection d'une erreur dans la procédure d'erreur au niveau de l'étape 52 Si le mot prononcé n'est pas une répétition du mot ayant déclenché la procédure d'er- reur, on vérifie en 64 que le prochain candidat est le troisième candidat Si la réponse est positive, on vérifie en 66 que c'est la deuxième fois après une procédure d'erreur qu'il n'y a pas répétition Si la réponse est négative, on retourne à l'entrée du dispositif Si la réponse est positive, on interrompt en 62 la procédure d'erreur et le cycle est remis à zéro. Il faut observer que les étapes 32 et 34 faisant intervenir le délai d 1 constituent un mode préféré de mise en oeuvre des moyens 21 par lesquels l'utilisateur met en route la procédure d'apprentissage c'est-à-dire le remplacement d'une référence par une autre information codée correspondant au même mot Il faut également observer que l'étape 52 a pour but de détecter s'il y a une erreur dans la procédure d'erreur ou non Dans la description précédente cette détection se fait automatiquement par comparaison du mot prononcé avec le mot répété ayant entraîné la procédure d'erreur Cette comparaison peut être elle-même source d'erreurs. Il serait donc possible de remplacer l'étape 52 par un commutateur actionné par l'utilisateur lui-même qui enclencherait par lui-même la procédure d'erreur lorsqu'il a constaté qu'il a, par exemple, omis de répéter un mot. Le circuit de commande 6, dont le fonctionnement vient d'être expliqué, est réalisé de préférence par un microprocesseur La figure 4 représente l'algorithme détaillé mis en oeuvre par ce microprocesseur Cet algorithme utilise un certain nombre de variables que l'on explicite ci-après La première variable S est un paramètre de SUBROUTINE Si il n'y a pas eu de mot prononcé pendant le délai di, S vaut zéro Si le mot prononcé n'est pas valide, S vaut 1 Si le mot est valide, S prend une autre valeur. La variable C est un compteur de candidats au sens o on l'a expliqué précédemment La variable D 2 est un paramètre de délai qui peut prendre les valeurs zéro ou un Le paramètre ERR 1 est un paramètre binaire définissant si une procédure d'erreur est en- clenchée Le paramètre ERR 1 vaut zéro s'il n'y a pas de procédure d'erreur, et un dans le cas contraire Enfin le paramètre ERR 2 est un paramètre d'erreur dans la procédure d'erreur. Après le début de programme 100, celui-ci comporte des ins- tructions 102 d'initialisation de certaines variables Les para- mètres ERRE 1 ERR 2 et D 2 sont initialisés à zéro alors que le para- * mètre C de comptage des candidats est initialisé à un Le rec- tangle 104 symbolise un sous-programme d'entrée de mots Ce sous- programme comprend d'une part le codage des mots successivement prononcés d'autre part un premier traitement de ce codage pour vérifier la validité du mot En outre ce sous-programme inclut l'équivalent des éléments de retard c'est-à-dire qu'il détecte si le temps écoulé entre un mot prononcé et le mot prononcé précédent est supérieur à dé Enfin ce sous- programme enclenche le début du fonctionnement du dispositif C'est également ce sous-programme qui introduit le mot prononcé codé dans la mémoire 8 c et qui, pour chaque mot codé, lui affecte une valeur de la variable S comme indiqué précédemment Le comparateur 106 compare la valeur du paramètre S à zéro Si S est différent de zéro, le comparateur 108 compare S à un Si S est différent de un le comparateur 110 com- pare C à un Si le détecteur 108 détecte que S vaut un, le pro- gramme retourne en position d'attente pour l'introduction d'un nouveau mot Si le comparateur 110 détecte que C est égal à un, c'est-à-dire qu'il n'y a pas eu de procédure d'erreur, le sous- programme 112 définit le classement des candidats par un algo- rithme qui sera explicité ultérieurement Puis le comparateur 114 compare la valeur de la variable D 2 à zéro Si cette valeur est différente de zéro, le programme 116 détecte s'il y a eu ou s'il n'y a pas eu répétition par un sous-programme qui sera explicié ultérieurement S'il n'y a pas eu répétition, l'instruction 118 transtère dans la mémoire de mots précédents 8 d le mot qui vient d'être prononcé et la variable D 2 est affectée de la valeur un Le sous-programme 120 provoque l'affichage sur les moyens d'affichage 10 du mot correspondant à la valeur du compteur C de candidats, c'est-à-dire que ce programme délivre comme résultat l'affichage du mot considéré comme le plus proche Après le sous- programme , le programme retourne en position d'attente pour l'entrée d'un nouveau mot Si le détecteur 110 a détecté que C est diffé- rent de un, on entre dans le sous-programme 122 qui compare le mot prononcé avec le mot répété ayant entraîné la procédure d'erreur. Si la réponse à cette question est oui, l'instruction 124 donne à la variable ERR 1 la valeur zéro et l'instruction 125 effectue l'opération C C + 1, c'est-à-dire qu'elle incrémente d'une unité le compteur de candidats Le comparateur 126 compare la valeur de C avec le nombre total de mots, c'est-à-dire de références, conte- nues dans la mémoire, ce nombre étant appelé VOC Si C est effec- tivement supérieur à VOC, ce qui indique qu'une erreur s'est produite, les instructions 128 remettent, le paramètre D 2 à zéro, la variable ERR 1 à zéro et le compteur de candidats C à la valeur un Le programme retourne en position d'attente d'un nouveau mot. Si au contraire, le comparateur 126 a détecté que le rang du candidat n'était pas supérieur au nombre total de références, on entre dans le sous-programme 120 d'affichage du candidat retenu. Dans le cas o le comparateur 114 a détecté que Dz était bien égal à zéro, on va directement à l'instruction 118 puisqu'on est sûr dans ce cas qu'il n'y a pas eu répétition Si le sous-programme 116 a détecté qu'il y a effectivement répétition, on va directe- ment vers l'opérateur 125 qui comme on l'a déjà indiqué incrémente le compteur de candidats C d'une unité, ce qui correspond à l'en- clenchement de la procédure d'erreur. Si le comparateur 106 détecte que S vaut zéro c'est-à-dire que le délai a été dépassé, l'instruction 130 donne à la variable D 2 la valeur zéro puis le comparateur 132 compare la valeur de C à un Si C est égal à un, le programme retourne à l'entrée en atten- te d'un nouveau mot, si C est différent de un -'est-à-dire s'il y a eu une procédure d'erreur, le comparateur 134 compare la valeur de la variable ERR à zéro Si cette valeur est égale à zéro, le sous-programme 136 commande le remplacement dans la mémoire 8 b de la référence antérieurement mémorisée par le codage du candidat ayant le rang C Dans l'instruction suivante 138, la variable ERR 1 est remise à zéro et la variable C est réinitialisée à un Le programme retourne en position d'attente pour l'introduction éven- tuelle d'un nouveau mot Si le comparateur 134 détecte que la 251079-4 variable ERR 1 est différente de zéro, le programme va directement à l'instruction 138. Si l'on revient maintenant au sous-programme 122, on voit que, dans le cas o la réponse est négative, l'instruction 140 affecte à la variable ERR 1 la valeur de un Le comparateur 142 compare la valeur de C à 2 Si C est différent de 2, le programme retourne à sa position d'attente d'introduction d'un nouveau mot. Si la comparaison dans le comparateur 142 est positive, l'instruc- tion 143 incrémente la variable ERR 2 d'une unité en effectuant l'opération ERR 2 = ERR 2 + 1 La valeur de la variable ERR 2 est ensuite comparée à deux dans le comparateur 146 Si la réponse est non, le programme retourne directement dans sa position d'attente pour l'introduction d'un nouveau mot Si la réponse est positive, l'instruction 148 réinitialise la variable ERR 2 à zéro et le pro- gramme va à l'instruction 128. Il est aisé de voir que la suite des instructions et sous- programmes 106 à 120 correspond au fonctionnement normal c'est-à- dire à la partie A, que les instructions 122 à 128 correspondent à la procédure d'erreur, que les instructions et sous-programmes 130 à 138 correspondent à l'apprentissage adaptatif et qu'enfin les instructions 140 à 148 correspondent à la détection d'erreur dans la procédure d'erreur. La figure Sa illustre l'information codée par un procédé particulier de codage associé à un mot prononcé Selon ce procédé de codage, le signal électrique correspondant au mot et délivré par le microphone 2 est traité par le circuit 4 On obtient par exemple, une information constituée par des zéros et des uns distribués selon des lignes et selon des colonnes correspondant à différents instants d'échantillonnage retenus Dans l'exemple particulier, il y a sept lignes et seize colonnes ou échantillons. Cet ensemble d'informations constitue un mot Sur la figure 5 a on a hachuré les points de la matrice présentant la valeur binaire un On peut également considérer que l'ensemble des points de la matrice ayant la valeur un est constitué par des blocs, chaque bloc étant défini comme étant une suite continue de points présen- tant la valeur binaire un et appartenant à une même ligne Dans le cas de la figure 5 a, on trouve les blocs B 1, B 2, B 3 et B 4 A titre d'exemple, le test de validité d'un mot prononcé mis en oeuvre à l'étape 36 de la figure 3 peut être le suivant Un mot est défini alors par la formule générale Mot = {B 1, b 2,, Bi, BM dans laquelle, chaque bloc B est défini de la manière suivante: Bi = {CANA Li, STAR Ti, STO Pi} START et STOP constituant les instants de début et de fin d'un bloc Un mot sera considéré comme valide si, par exemple, il est formé d'au moins trois blocs provenant de rois lignes différents. Le programme permettant de vérifier cette condition à partir de l'information codée correspondant au mot est à la portée de l'homme de l'art et il n'est donc pas nécessaire de le définir d'avantage. Ce programme est mis en oeuvre dans le sous-programme réfé- rencé 104 à la figure 4. On va maintenant donner un moyen en soi connu pour mesurer la distance entre deux mots codés ou entre un mot codé et une referez ce en vue de réaliser le sous-programme 112 de classement des candidats ou les détections de répétition des sous-programmes 116 et 122 La distance entre un mot et une référence peut être définie de la manière suivante Un mot est défini de la manière suivante Mot = {Motij; i = 1, 2 I; j = 1, 2 J} avec Mot E ( 0 1) o par exemple, dans le cas de la figure 5 a le mot Mot 3,13 vaut zéro et le Mot 7,15 vaut un De la même manière, la mémoire 8 a des références peut être définie comme un ensemble d'informations codées de mots de référence défini par: Ref = (Refk, k = 1, 2 n) dans laquelle N est le nombre de références dans la mémoire, c'est-à-dire le nombre de mots du vocabulaire Chaque mot de la mémoire est désigné par Refk avec Refk = (Ref,; i = 1, 2 J) "J La distance entre un -mot codé "Mot" et une référence de la mémoire Refk est donnée par l'expression i =I j= J I I (Mot * Ref k i=I j= 1 È(Mot,Refk) = ( 1) i 1 j J I I (Mot (m + Ref k) i = I j 1 = 1 dans laquelle, le signe * représente la fonction logique OU EXCLU- SIF, I le nombre de canaux, et J le nombre d'échantillons. Il est clair que cette distance peut être définie de manière concrète de la -manière suivante On part du tableau semblable à celui de la figure 5 a correspondant respectivement au mot "lot" et à la référence Ref k, et on superpose ces deux tableaux Le numéra- teur du membre de droite de l'équation ( 1) est égal au nombre de points des deux tableaux affectés de la valeur binaire 1 qui ne-se superposent pas, alors que le dénominateur est égal à la somme des points des deux tableaux ayant la valeur binaire 1 Sur la figure 5 b, on a représenté respectivement un tableau correspondant à un mot et un tableau correspondant à une référence Ref 2 On voit immédiatement qu'en superposant tel quel ces deux tableaux, les points affectés de la valeur binaire un qui ne se superposent pas sont en grand nombre En d'autres termes, la distance entre ces deux mots est importante Cependant, on voit qu'en décalant d'un pas vers la gauche le contour du tableau du Mot sans modifier la position des points affectés de la valeur binaire un, la ressem- blance entre les deux tableaux ainsi modifiés est très importante. On comprend aisément qufen fait le mot et la référence correspon- dent à un même mot prononcé et que la différence apparente résulte en grande partie d'un décalage global lors de la détection et du codage du mot Pour que la mesure de distance entre deux mots soit véritablement efficace, il est donc souhaitable d'envisager en outre des possibilités de décalage entre les mots à comparer ou entre le mot et la référence à comparer C'est ce qui va être expliqué ci-après en appelant 1 le décalage qui, dans le cas de la figure 5 b, vaudrait -1. 2510794 ' 24. En introduisant le décalage 2 la distance 62 entre le mot "Mot" et la référence Refk est définie de la manière suivante: j =J+ 2 i = I k 1 I (Mot ij G_ Refi) *, j = 1 2 i = 1 6 a (Mot,Ref') = Avec Motij = j=J i = I k I I (Mot + Ref) j = 1 i = 1 1,3 lj 0 pour j Y e { 1, 2, J} et Ref = O pour j { 1, 2, J 1,3 Pour comparer un mot et une référence, ou deux eux, on calcule les distances 62 pour des décalages à I = - 1 par pas de un Par exemple 21 = 2. Le classement des candidats peut se faire de suivante: On note A* = ô = MIN l 6 (Mot, Refk)l k On calcule la table des distances T définie par: T ={ k = 1, 2,, n} k' Pour obtenir le classement des candidats on trie 1 pour obtenir l'ensemble ordonné Cdd défini par: Cdd = {Cddi; k = 1, n avec Cddk g { 1, n mots entre de Y = + 21 la manière les éléments tel que Cdg Cddk+ Le premier candidat est donc la référence d'indice Cddl, et ième le ime candidat est donc la référence d'indice Cdd A partir de ce mode de calcul de la distance entre deux mots, il est possible d'expliciter davantage les sous-programmes 116 et 122 de la figure 4 Le sous-programme 116 est celui qui permet de détecter s'il y a répétition du mot prononcé ou non pour déclencher ou ne pas déclencher la procédure d'erreur Pour savoir s'il y a répétition ou non, on utilise les conditions suivantes: ô A = 1 ô 1 Best 5 52 ≤> B = 1 ( 2) 8 + Best 6 ô D = 1 1 A U (B rl D) # 0. Dans ces expressions Si, 52 et 53 représentent des seuils, l représentant la distance entre le mot qui vient d'être prononcé et le mot précédent et BEST représente la distance entre le mot qui vient d'être prononcé et la référence la plus proche contenue dans les mémoires 51 est toujours inférieur à S A titre d'exemple, le seuil Si vaut 0,2, le seuil 52 vaut 0,08 et le seuil 53 vaut 0,5. On voit donc que cet algorithme de décision fait intervenir soit une distance absolue (A) soit une double condition portant sur un seuil absolu et sur un seuil relatif comparé à la plus petite distance entre le mot prononcé et les mots contenus dans le vocabu- laire Bien entendu 61 et BEST sont calculés comme cela a été indiqué précédemment pour déterminer la distance entre deux mots. Le sous-programme 122 a pour but de déterminer si le mot pro- noncé est le premier mot qui a déclenché la procédure d'erreur. L'algorithme mis en oeuvre est le suivant a BEST 2 BST 54 62 + BEST dans lequel est la distance entre le mot prononcé et le premier mot ayant déclenché la procédure d'erreur, BEST est identique à la variable utilisée dans l'algorithme précédemment défini et 54 représente un autre seuil qui vaut par exemple 0,1. Il faut préciser que les conditions A, B et D qui entrent dans le test 116 correspondent chacune à une condition de fonction- nement particulière. La condition B = 1 est la condition normale de détection de répétition d'un mot prononcé Il impose simplement que a soit inférieur à BEST, c'est-à-dire que la distance entre le mot pronon- cé précédemment soit inférieur à la distance entre le mot qui vient d'être prononcé et le premier candidat Dans le cas de faibles bruits les deux distances 61 et BEST augmentent toutes les deux, et le critère reste valable Cependant en cas de superposition d'un fort bruit au mot prononcé il se peut que la condition B = 1 soit remplie bien qu'il n'y ait pas répétition Le seuil absolu 53 pour ô 1 a pour but d'éliminer une détection erronée de répétition au seul vu de la condition B = 1. La troisième conditon A = 1 a pour but d'éviter un risque de blocage du système après une phase préalable d'apprentissage erro- née qui aurait conduit à l'introduction d'une référence correspon- dant à un mot dans la position mémoire correspondant à un autre mot Ceci peut se produire avec la séquence suivante. L'utilisateur prononce-"ON" et le dispositif affiche "OFF". L'utilisateur répète alors "ON" ce qui enclenche la procédure d'erreur (P E) et le mot "FAST" est affiché L'utilisateur répète à nouveau "ON" et le mot "DOWN" est affiché De plus l'utilisateur laisse passer le délai d 1 La procédure d'apprentissage autoadap- tatif introduit la référence "ON" dans la position de mémoire cor-D respondant au mot "DOWN" Lorsque le locuteur prononce a nouveau le mot "ON", la valeur BEST, (distance entre ON prononcé et le ON se trouvant dans la position DWWN) peut souvent être plus petit que ô 1 (distance entre ON prononcé et ON prononcé précédemment). Cela rend la détection de la répétition aléatoire alors que, dans ce cas, elle doit être sûre au vu de l'erreur décrite précédem- ment C'est alors la condition A = 1 qui, étant iérifiée, perm Pet de détecter la répétition. La figure 6 est un algorithme du sous-programme 104 d'intro- duction des mots codés Ce sous-programme a essentiellment pour but de fixer la valeur du paramètre S qui peut valoir 0,1 ou 2 Ce sous-programme fait appel aux variables supplémentaires t de lon- gueur de mot et X qui représente un nombre binaire a sept bits constituant un échantillon du mot Il s'agit donc d'une colonne des matrices représentées sur les figures 5 a et 5 b. Le programme a un point d'entrée 200, le instructions 202 initialisent le paramètre S à SO et le paramètre L à zéro L'hor- loge du micro-processeur délivre les impulsions d'horloge CK a une fréquence de 100 Hz SO correspond au délai d 1 de la figure 3 Si donc de délai d est choisi égal à 5 secondes, S vaudra 500 Les instructions 204 et 205 qui comparent les impulsions CK aux ni- veaux logiques O et 1 avec leur rebouclage ont simplement pour but de synchroniser le programme avec la fréquence d'horloge à 100 Hz. En 208 les échantillons X provenant du circuit de codage sont suc- cessivement introduits à la fréquence de 100 Hz L'instruction 210 compare X à zéro La réponse est positive (X = O) si les sept bits 24 _ ont effectivement la valeur zéro La réponse est négative si au moins un des bits est différent de zéro Si la réponse est négati- ve, l'intruction 212 affecte la valeur S au paramètre S 51 vaut par exemple 20 Puis l'instruction 214 incrémente d'une unité le paramètre L et l'instruction 216 charge dans la mémoire 8 c sous forme codée ou non l'échantillon de sept bits X Le programme re- tourne à l'instruction 204 pour l'introduction de l'échantillon suivant. Si l'échantillon X est égal à zéro (instruction 210) le paramètre S est décrémenté d'une unité par l'instruction 218 En 220 le paramètre S est comparé à zéro Si la réponse est positive (S = 0) le paramètre L est comparé à zéro en 222 Si la réponse est positive (L = 0) on va vers la sortie du sous-programine, t'est-à-dire qu'on passe à l'instruction 106 de la figure 4 Le paramètre S vaut O Si l'opérateur 220 délivre une réponse néga- tive (S # 0), l'instruction 224 compare le paramètre L à zéro Si le résultat de la comparaison est positif (L = È) on va directe- ment vers l'instruction 216 qui introduit dans la mémoire 8 c l'échantillon testé Si la réponse est négative (L # 0) on va vers l'instruction 214. Si la réponse à la comparaison mise en oeuvre à l'instruction 222 est négative (L 9 E 0) on va vers l'instruction 224 qui est en fait un sousprogramme de détection de la validité du mot Ce test a déjà été explicité Dans ce mode de réalisation une condition supplémentaire peut être ajoutée, à savoir, par exemple, que le paramètre L est supérieur ou égal à dix Si le mot n'est pas valide, l'instruction 226 affecte la valeur 1 au paramètre S et si le mot est valide, l'instruction 228 affecte la valeur 2 au para- mètre S. Le fonctionnement de sous-programme découle clairement de la description précédente Tant qu'aucun échantillon n'est différent de zéro le paramètre L reste nul et le paramètre S est décrémenté d'uneunité à chaque -boucle Si 500 boucles successives sont effectuées alors que X reste constamment nul, le paramètre S atteint la valeur zéro avec une valeur de L nulle Cela signifie qu'aucun mot n'a été prononcé pendant le délai d 1 égal à 5 se- condes Le paramètre S vaut zéro Dès qu'un échantillon X diffé- rent de zéro apparaît, le paramètre L vaut 1 et le paramètre S vaut 51 c'est-à-dire 20 Cette incrémentation à 51 signifie que dans ce cas, si pendant 20 boucles successives X reste nul, le mot est considéré comme terminé puisque l'instruction 218 aura ramené le paramètre S à zéro Dans cette situation, si l'instruction 224 détecte que le mot constitué par les échantillons X successifs est valide la valeur 2 est affectée au paramètre S; dans le cas con- traire, c'est la valeur 1 qui lui est affectée. Dans la description précédente il a été envisagé l'introduc- tion d'un seul mot Ce mode de commande correspond concrètement au cas o les instructions à donner à l'appareil se composent d'un seul mot Il est cependant clair que certaines instructions peu- vent comporter plusieurs mots isolés Il est donc nécessaire que le dispositif d'introduction comprenne que les mots successifs prononcés qui font partie d'une même instruction tout en séparant bien les mots de l'instruction Pour cela l'utilisateur doit respecter le délai d 1 entre la fin de l'introduction d'un mot de l'instruction et le premier énoncé du mot suivant Ce délai peut être indiqué à l'utilisateur par exemple en faisant clignoter une partie des moyens d'affichage ou en utilisant un avertisseur sonore Ce délai dl a été fixé à 5 secondes dans l'exemple décrit. Dans le cas o le premier candidat est beaucoup plus proche du mot prononcé que le deuxième candidat, il est quasiment sûr que ce premier candidat est effectivement le bon mot En d'autres termes il est quasiment sûr que l'utilisateur ne répétera pas de mot Il est donc intéressant dans ce cas de diminuer la valeur de dl Pour cela on calcule Y défini de la manière suivante Cdd Cdd 2 i V Cdd + Cdd 1 2 6 Cdd représente la distance entre le mot prononcé et le premier 1 ô* candidat et Cdd 2 la distance entre ce même mot et le deuxième candidat Y est compris entre 0 et 1 Plus Y est grand, plus la reconnaissance du ler candidat est sûre Il est donc possible de diminuer d 1 dès que Y est supérieur à une valeur a, la valeur de t 510794 dl peut être définie comme une fonction décroissante f de Y Par exemple, on peut choisir a = 0,3 et d= d ( 1 Y) avec d = 5 secondes. 1 max 2 Max La condition Y 1, Cdd 1 cd 2 0,7 1 dy Le deuxième candidat doit donc être au moins sensiblement deux fois plus "éloigné" du mot prononcé que le premier candidat. 1 i Dans l'algorithme de la figure 6 cela signifie que 50 est variable Dans l'algorithme de la figure 4 il faut donc ajouter un sous-programme 150 qui calcule Y qui compare Y à a et qui calcu- le SO = S f(Y) si Y > a. Plus généralement le calcul de Y peut être remplacé par le calcul d'une fonction f 1 ( Cddl, ô*Cdd 2) qui compare les valeurs de Cddl et de Cdd 2 Cette fonction doit être nulle pour Cddl Cdd 2 et valoir 1 pour Cdd O et Cdd 2 1. Si f Cddl, Cdd 2) est supérieure à a, on calcule alors dl = dmax f 2 (f 1) f 2 est une fonction décroissante de fi, à valeurs numériques strictement comprises entre 0 et 1. L'intérêt principal du dispositif d'introduction de mots selon l'invention découle clairement de la description précédente. L'utilisation normale du dispositif c'est-à-dire l'introduction de mots pour commander l'appareil associé au dispositif et l'appren- tissage sont étroitement mêlés et peuvent, en fait, se faire simultanément On évite ainsi par rapport à la technique d'appren- tissage initial une phase longue et fastidieuse strictement réser- vée à l'apprentissage et on autorise un changement d'utilisateur sans que la totalité de l'introduction des références soit à reprendre En effet, seuls les mots dont la prononciation aura _ 24 _ changé devront être à nouveau mémorisés En outre la phase d'ap- prentissage ne concerne que les mots que l'on veut utiliser effec- tivement et le dispositif indique successivement à l'utilisateur les mots qu'il faut réapprendre au dispositif d'entrée de mots. Les essais qui ont été faits montrent que ce dispositif permet une beaucoup plus grande souplesse et une bien meilleure facilité d'utilisation Ce résultat est probablement dû au fait que, lorsque l'utilisateur répète plusieurs fois de suite un même mot, la prononciation ne change guère et on peut donc aisément détecter la répétition Avec le dispositif selon l'invention, cette répétition entraîne non seulement un nouvel apprentissage mais également l'introduction du mot et donc la commande de la fonction souhaitée Dans le cas de l'introduction des références en usine, l'utilisateur doit répéter le mot jusqu'à ce que sa propre prononciation de ce mot coïncide avec celle du locuteur type ayant introduit ce mot en usine Dans le cas de l'apprentissage initial par l'utilisateur lui-même, il s'écoule un certain temps entre la phase d'apprentissage et la phase effective d'introduction du mot Il y a un fort risque que la prononciation de ce mot ne soit plus la même L'introduction du mot risque donc d'être impossible et il faudra répéter la totalité de la phase d'apprentissage. Il apparaît que la souplesse d'utilisation du dispositif selon l'invention est due essentiellement au fait qu'à chaque répétition d'un mot ou plus précisément à chaque fois que le dispositif a détecté une répétition, les moyens d'affichage af- fichent le candidat suivant par ordre de ressemblance décroissan- te, sans qu'il y ait modification dans le classement des candi- dats Au contraire dans le cas de l'apprentissage initial c'est toujours le premier candidat qui est affiché Il n'y a donc aucune progression dans l'affichage des candidats. Il faut noter que le bruit ambiant n'empêche pas le fonction- nement du dispositif d'introduction de mots Dans le cas de bruits de niveau élevé, les répétitions de deux mots successifs s'altè- rent de la même manière que les résultats de la corrélation avec les références Cependant au-delà du seuil S, le dispositif ne détecte pas de répétition et on n'entre pas dans la procédure d'erreur Cela interdit toutes modifications des références dans ces mauvaises conditions sonores, et assure donc en même-temps une bonne immunité au bruit, sans que pour autant le système s'arrête de fonctionner On peut dire que dans une ambiance de fort bruit les répétitions successives d'un même mot ne sont pas détectées comme telles Le système fournit donc à chaque fois le premier candidat comme réponse Ce premier candidat change pratiquement à chaque fois, et l'utilisateur a donc statistiquement de bonnes chances d'afficher le bon mot après un nombre limité d'essais De plus le bruit, tel que le bruit dû à des conversations, comporte des moments de silence qui permettent au système de recevoir un mot non perturbé. En outre dans la description précédente on a écrit que le classement des candidats portait sur la totalité des N mots du vocabulaire servant à la commande de l'appareil associé au dis- positif d'introduction de mots Il va cependant de soi que le vocabulaire peut être fractionné en plusieurs groupes Le clas- sement des candidats ne se fera alors que parmi les mots de ce groupe c'est-à-dire parmi N 1 mots (n 1 > n) Cependant bien entendu la mémoire morte 8 a contient l'ensemble du vocabulaire Le dispo- sitif comporte dans ce cas un sous-programme permettant de définir les mots du groupe concerné On comprend qu'en diminuant le nombre de références à prendre en compte, il est possible de simplifier le codage et de rendre les algorithmes de comparaison moins sévè- res Cela permet un allégement du nombre de positions de mémoire dans la mémoire vive et du nombre de positions binaires nécessai- res pour coder un mot. REVENDICATIONS 1 Dispositif d'introduction de mots a commande par la parole dans lequel un mot prononcé par un locuteur est codé et comparé à des informations mémorisées correspondant chacune au codage d'un O 5 parmi N mots préalablement introduits dans le dispositif, carac- térisé en ce qu'il comprend: des moyens ( 2,4) pour coder chaque mot prononcé par ledit locuteur selon un premier algorithme prédéterminé, ce qui donne un mot codé; des moyens ( 8) pour mémoriser N références (Ref) correspon- dant chacune au codage d'un des N mots sulon ledit premier algo- rithme et au moins un mot prononcé par ledit locuteur sous forme codée; des moyens ( 10) pour afficher un desdits N mots; des moyens ( 21) de commande de changement de références; et un circuit de commande relié aux moyens ( 8) de mémorisation et aux moyens ( 10) d'affichage ( 1) comportant; a) des moyens ( 16) de détection de répétition comparant un mot codé au mot codé précédemment prononcé, s'il existe, en fonction d'un deuxième algorithme prédéterminé, pour détecter si une répétition (REP) a lieu ou non; b) des moyens ( 14) sensibles aux moyens de détection pour comparer un mot codé prononcé lorsqu'il n'y a pas répétition, avec les N références et affecter à chaque référence un rang de ressemblance avec ledit mot codé prononcé en fonction d'un troi- sième algorithme prédéterminé; c) des moyens ( 18) pour commander l'affichage de la référence mémorisée ayant le premier rang de ressemblance lorsqu'aucune répétition n'a été détectée, et pour commander, si un répétition a été détectée, l'affichage du mot associé à la référence occupant le rang de ressemblance qui suit immédiatement celui de la référence associée au mot affiché immé- diatement précédemment; et d) des moyens ( 20) pour remplacer dans ladite mémoire ( 8) la référence-associée au mot affiché en dernier par l'information correspondant au codage du mot répété en réponse à l'activation par le locuteur des moyens ( 21) de commande de changement de références lorsque le locuteur a constaté que le mot viualisé est le mot qu'il a effectivement prononcé, ce qui donne une nouvelle référence (Ref) de ce mot. 2 Dispositif selon la revendication 1, caractérisé en ce que les moyens ( 21) de commande de changement de références compren- nent de moyens pour élaborer une durée d 1, des moyens ( 32,34) pour comparer le temps s'écoulant entre un mot prononcé et le mot prononcé précédemment avec une durée d 1 de référence, lesdits moyens de commande ( 21) étant activés lorsque ledit temps est supérieur ou égal à d 1. 3 Dispositif selon la revendication 2, caractérisé en ce que les moyens ( 14) de comparaison comprennent des moyens pour mesurer la distance entre un mot prononcé codé et lesdites références; et des moyens pour classer lesdites références selon l'ordre croissant desdites distarnces. 4 Dispositif selon la revendication 3, caractérisé en ce que les moyens pour élaborer ladite durée d 1 comprennent: des moyens ( 150) pour élaborer une fonction f 1 ( 6 Cdd 2, Cdd 1) dans laquelle Cdd 2 représente la distance entre un mot prononcé et la référence occupant le deuxième rang de ressemblan- ce, et 6 Cdd la distance entre ledit mot prononcé et la référence occupant le premier rang de ressemblance, ladite fonction étant nulle pour Cdd 2 = Cdd 1 et valant 1 pour ô Cdd 1 = O et È Cdd 2 = 1; des moyens pour comparer la valeur de la fonction f 1 avec un nombre a strictement compris entre O et 1; et des moyens pour donner à la durée d 1 la valeur dmax lorsque f 1 est inférieure à a et la valeur dmax f 2 (f 1) dans le cas contraire, f 2 étant une fonction décroissante de f à valeurs numé- riques strictement comprises entre O et 1. Dispositif selon la revendication 3, caractérisé en ce que les moyens dedétection de répétition comprennent: des moyens pour élaborer la distance 6 entre un mot prononcé et le mot prononcé précédemment; des moyens pour élaborer l'écart Best entre ledit mot pro- noncé et la référence occupant le premier rang de ressemblance; 3 - des moyens pour élaborer le rapport 61 Best Z =- 61 + Best des moyens pour comparer la valeur Z à un seuil 52 avec 52 > 1; des moyens pour comparer la valeur de 61 à un premier seuil 51 et à un deuxième seuil 53 positifs inférieurs à 1 avec 51 53; et des moyens ( 116) pour constater qu'il y a répétition si 6 est inférieur à 51 ou si simultanément Z est inférieur à S 2 et 61 inférieur à S.