Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Qu’est-ce qu’une note de transparence ?
Un système d’IA comprend non seulement la technologie, mais également les personnes qui l’utiliseront, les personnes qui seront affectées par elle et l’environnement dans lequel il est déployé. La création d’un système adapté à son objectif nécessite une compréhension du fonctionnement de la technologie, de ses capacités et de ses limites, et de la façon d’obtenir les meilleures performances. Les notes de transparence de Microsoft sont destinées à vous aider à comprendre le fonctionnement de notre technologie IA, les choix que les propriétaires de système peuvent faire qui influencent les performances et le comportement du système, et l’importance de penser à l’ensemble du système, y compris la technologie, les personnes et l’environnement. Vous pouvez utiliser les notes de transparence lors du développement ou du déploiement de votre propre système, ou les partager avec les personnes qui utiliseront ou seront affectées par votre système.
Les notes de transparence de Microsoft font partie d’un effort plus large de Microsoft pour mettre en pratique nos principes d’IA. En savoir plus sur les principes de l’IA Microsoft.
Principes de base de la reconnaissance vocale contrainte
Présentation
La reconnaissance vocale est une fonction essentielle pour s’engager avec des systèmes d’IA compatibles avec la voix. Ces systèmes (souvent appelés moteurs de reconnaissance vocale) convertissent les mots parlés d’un utilisateur en texte, produisant souvent un score de confiance indiquant la probabilité de correction de la sortie. La reconnaissance vocale contrainte est une modalité spécifique qui limite spécifiquement l’ensemble de mots ou d’expressions possibles à reconnaître par le moteur lui-même. Cette contrainte est effectuée par le biais d’une grammaire. Les grammaires sont, par définition, la liste basée sur des règles de mots ou d’expressions attendus pour que le moteur reconnaisse.
Les moteurs de reconnaissance vocale contrainte sont particulièrement utiles pour :
Reconnaissance des entrées alphanumériques telles que les numéros de compte et les numéros de suivi.
Listes volumineuses spécifiques au domaine (stocks, adresses, noms).
Applications à portée limitée conçues pour des interactions avec un nombre limité de mots et d’expressions à reconnaître.
Boîte de dialogue dirigée pour faciliter la navigation dans une arborescence de menus d’éléments, utilisée pour la première interaction d’un appelant ou comme base de la conception conversationnelle du système.
Termes clés
| Terme | Definition |
|---|---|
| Grammaire | Une grammaire est une description des mots et expressions qu’un module de reconnaissance vocale comprend et interprète. Le module de reconnaissance charge les grammaires au moment de l’exécution pour convertir les réponses et commandes parlées de l’utilisateur en informations que l’application vocale peut utiliser. |
| GrXML | Format dans lequel les grammaires sont composées. |
| Spécification de grammaire de reconnaissance vocale (SRGS) | Norme W3C pour la définition des grammaires. |
| Énoncé | Mots ou expressions parlés d’un utilisateur à un système d’INTELLIGENCE vocale interprété par le système de reconnaissance vocale. |
Capacités
Comportement du système
Chaque fois que le module de reconnaissance interprète un énoncé utilisateur, il compile une liste des correspondances les plus proches possibles pour revenir à l’application vocale. Cette liste est appelée comme n-best l ist, car elle est constituée d’un nombre préspecifié n d’interprétations qui correspondent le mieux à ce que l’utilisateur semble avoir dit. Lorsque l’utilisateur parle, le module de reconnaissance recherche les meilleures correspondances entre les éléments définis dans les grammaires. Le système de reconnaissance ajoute chaque interprétation correspondante aux candidats pris en compte pour établir la liste des n meilleures hypothèses. Lors de la recherche, le module de reconnaissance utilise des modèles acoustiques pour analyser l’entrée audio, les modèles lexicals pour déterminer les phrases les plus probables dans les grammaires et les modèles sémantiques pour déterminer les significations les plus probables de ce que l’appelant a dit. Le module de reconnaissance recherche jusqu’à ce qu’il trouve les interprétations possibles les plus élevées, ou jusqu’à ce que les éléments restants ne correspondent pas à ce qui a été entendu.
Le module de reconnaissance attribue un score de confiance à chaque élément de la liste des candidats et les classe de confiance la plus élevée au plus bas. Le module de reconnaissance réévalue et ajuste ces scores à mesure que de nouvelles interprétations sont trouvées. Si les grammaires autorisent les homonymes (mots qui se prononcent de la même façon mais ont des significations différentes), et si l’un d’eux est prononcé, le système de reconnaissance attribue les homonymes à des interprétations distinctes avec des scores de confiance identiques. Le module de reconnaissance affine la liste candidate en traitant les listes de contraintes et/ou les scripts d’interprétation sémantique (ECMAScript) spécifiés dans les grammaires. Le module de reconnaissance supprime toutes les interprétations qui ne répondent pas aux niveaux de confiance cibles configurés pour la reconnaissance. Le module de reconnaissance renvoie à l’application les n meilleurs résultats finaux. Cette liste n-best contient le texte correspondant (pour l’énoncé complet et pour chaque slot), les scores de confiance, ainsi que toutes les clés et valeurs définies pour les énoncés.
Cas d’utilisation
Utilisations prévues
La reconnaissance vocale contrainte peut être utilisée dans plusieurs scénarios. Les utilisations prévues du système sont les suivantes :
Reconnaître les mots prononcés : pour traduire la parole en texte limité par la liste définitive fournie au système par le biais d’une « grammaire ». Par exemple, les plaques d’immatriculation alphanumériques, les numéros de sécurité sociale, ainsi que les annuaires d’entreprise fondés sur des listes, les symboles boursiers et les adresses saisis.
Valider l’entrée : pour vérifier que ce qui a été parlé est destiné à être accepté par le système. Par exemple, vérifier qu’un numéro de carte de crédit est correct (mathématiquement).
Supprimer les candidats de résultat : supprimez des mots ou des expressions des résultats de reconnaissance lors de tentatives répétées de reconnaissance.
Considérations relatives au choix d’autres cas d’usage
Nous encourageons les clients à utiliser la reconnaissance vocale contrainte dans leurs solutions ou applications innovantes. Toutefois, voici quelques points à prendre en considération lors du choix d’un cas d’utilisation :
Transparence : comme pour toute création d’agent IA, indiquez toujours à l’appelant que le système avec lequel il interagit fonctionne grâce à l’IA.
Utilisations non prises en charge :
Transcription par lots : transcrire complètement les mots parlés d’une personne en transcription textuelle complète.
Interprétation de l’intention : mapper les mots prononcés par la personne dans une intention interprétée, par opposition à une transcription.
Considérations juridiques et réglementaires : les organisations doivent évaluer des obligations légales et réglementaires spécifiques potentielles lors de l’utilisation de services et de solutions IA, ce qui peut ne pas convenir à une utilisation dans chaque secteur ou scénario. Les restrictions peuvent varier en fonction des exigences réglementaires régionales ou locales. En outre, les services ou solutions IA ne sont pas conçus pour et peuvent ne pas être utilisés de manière interdite dans les conditions de service applicables et les codes de conduite pertinents.
Limites
Comme indiqué précédemment, la reconnaissance vocale contrainte s’effectue exceptionnellement bien sur des cas d’usage spécifiques tels que des tâches de reconnaissance alphanumérique et basée sur la liste où les informations sont explicites, précises et limitées par l’utilisateur. En revanche, les systèmes traditionnels de reconnaissance vocale qui utilisent des modèles fondés sur la sémantique ou sur la compréhension du langage naturel sont les plus adaptés à la reconnaissance d’un large éventail de sujets abordés à l’oral, ainsi qu’à l’interprétation d’énoncés relevant du modèle ou proches de son domaine. En d’autres termes, toute entrée vocale qui ne correspond pas à la définition de la grammaire n’est pas reconnue. Par conséquent, les développeurs qui créent des applications vocales sont encouragés à réfléchir aux cas où il est approprié d’utiliser une parole contrainte plutôt que des méthodes alternatives.
Limitations techniques, facteurs opérationnels et plages
Pour que la reconnaissance vocale contrainte fonctionne précisément, une grammaire bien conçue doit être en mesure d’accepter de nombreuses réponses utilisateur différentes et de les interpréter rapidement, avec précision et efficacement. Cela signifie qu’un développeur doit être en mesure de prédire les réponses que chaque invite d’application produit et de les encoder dans une grammaire aussi efficacement que possible. Cela signifie à son tour que les grammaires doivent être conçues en parallèle avec l’application vocale.
Une bonne grammaire équilibre ces objectifs :
Couverture complète : la grammaire accepte et interprète toute réponse raisonnable des utilisateurs à l’invite d’application précédente.
Précision : la grammaire reconnaît correctement les réponses afin que les utilisateurs ne soient pas invités à répéter, et les grammaires ne transmettent pas de valeurs incorrectes à l’application principale.
Vitesse : la grammaire reconnaît rapidement les réponses sans retard qui frustrent les utilisateurs.
Utilisation des ressources : la grammaire fonctionne efficacement.
L’écriture grammaticale est un processus itératif. Vous créez une grammaire initiale basée sur ce que vous attendez des appelants à dire, collectez des données réelles, affinez la grammaire, rassemblez d’autres données, réaffinez la grammaire, etc. Lorsque vous affinez la grammaire en ajoutant et en supprimant des expressions, il est plus proche de la façon dont les appelants parlent à l’application. Dans la pratique, aucune grammaire ne peut inclure toutes les réponses qui peuvent se produire dans votre application, car vous ne pouvez pas contrôler la façon dont les personnes parlent.
Le processus de développement d’un ensemble de grammaires implique généralement les étapes suivantes :
Identifiez les éléments d’informations et définissez les emplacements : quelles informations l’utilisateur doit-il fournir à l’application et existe-t-il un ordre particulier dans lequel il doit être fourni ?
Concevez la boîte de dialogue : déterminez le flux de dialogue le plus efficace entre l’utilisateur et l’application.
Concevez les invites : créez des invites qui suscitent les informations requises.
Anticipez les réponses de l’appelant aux invites vocales : tenez compte des mots que la grammaire devra reconnaître à l’oral.
Identifiez les parties principales et de remplissage de vos grammaires : identifiez les mots clés à rechercher dans les réponses.
Planifiez votre stratégie de grammaire : déterminez la meilleure façon de répondre aux exigences de chaque grammaire et choisissez une approche ou une combinaison appropriée d’approches pour les traiter.
Ajustez et affinez les grammaires : résolvez les problèmes et optimisez les performances de grammaire,
Performances du système
Le moteur de reconnaissance vocale contrainte s’effectue mieux par rapport aux autres modalités de reconnaissance vocale, en utilisant une mémoire limitée lors du traitement des demandes. Les facteurs au sein du contrôle des développeurs ont plus d’impact sur les performances que le système lui-même. L’objectif principal du développement de grammaire est de concevoir une précision de reconnaissance optimale. L’objectif suivant est d’écrire pour la clarté, la facilité de maintenance et l’extensibilité. Le troisième objectif est de créer des contextes de reconnaissance efficaces.
Meilleures pratiques pour améliorer les performances du système
Voici les caractéristiques grammaticales qui affectent l’utilisation des ressources :
Couverture : la grammaire couvre (inclut) les expressions que vous attendez de l’appelant à utiliser. Une couverture insuffisante entraîne une augmentation des énoncés contenant des mots hors vocabulaire, des confirmations et des nouvelles tentatives, ce qui accroît l’utilisation du processeur et la durée des appels, tout en réduisant la satisfaction de l’appelant.
Surgénération : il est important que la grammaire ne surgénère pas en autorisant des expressions dénuées de sens, car cela réduit la précision. Par exemple, une grammaire qui reconnaît une ville et un état doit limiter les énoncés à des combinaisons valides de villes et d’états.
Analyse multiple : Dans l’idéal, chaque phrase possible dans la grammaire a une analyse unique. Parfois, une grammaire peut autoriser plusieurs analyses d’une seule phrase. En règle générale, plusieurs analyses syntaxiques indiquent une erreur dans la conception de la grammaire qui doit être corrigée.
Clés transmises à l’application : vous devez vous assurer que les paires clé/valeur sont correctement définies.
Lorsqu’un appelant dit un mot ou une expression qui ne peut pas être analysé par la grammaire, le mot ou l’expression est dit hors grammaire. En règle générale, un taux de sorties hors grammaire de 5 % est considéré comme acceptable. Il arrive que même des taux hors grammaire de 10 à 20 % ne soient pas inhabituels pour certains types de tâches de reconnaissance. Envisagez d’utiliser d’autres formes de reconnaissance vocale à ce dernier taux.
La latence est définie comme le temps écoulé après que l’appelant cesse de parler (y compris le délai d’expiration de fin de la reconnaissance vocale configuré) jusqu’à ce qu’un résultat de reconnaissance soit retourné à l’application. Lorsque la latence est trop élevée, l’expérience utilisateur se dégrade ; le système semble sluggish, ce qui peut être frustrant pour l’utilisateur et conduit à d’autres complications de l’interface utilisateur.
Dans des circonstances extrêmes, l’excès de latence entraîne des transactions d’application infructueuses si l’utilisateur cesse de parler sans atteindre l’objectif de sa conversation. Les temps de réponse de reconnaissance médiocre peuvent avoir de nombreux facteurs de contribution :
Utilisation de grammaires très volumineuses contenant des centaines de milliers d’éléments.
Longueurs d’énoncés moyennes extrêmement longues.
Quantités élevées de traitement ECMAScript dans la grammaire.
Retards réseau lors de l’extraction de grammaires.
Veillez à tester correctement les grammaires avant de les déployer dans un système en cours d’exécution, comme l’exécution de scénarios de test avec différentes expressions à prononcer.
Évaluation de la reconnaissance vocale contrainte
Méthodes d’évaluation
Voici quelques métriques couramment utilisées pour évaluer la reconnaissance vocale contrainte :
Taux d’erreur word (WER) : ce paramètre mesure le pourcentage de mots qui sont mal reconnus. Elle est calculée comme la somme des substitutions, suppressions et insertions divisées par le nombre total de mots dans la référence.
Précision de la liste des N meilleures hypothèses : elle évalue la précision des N meilleures hypothèses générées par le système de reconnaissance. Il est utile de comprendre la fréquence à laquelle l’interprétation correcte figure parmi les principales suggestions.
Couverture : cette métrique évalue si la grammaire inclut toutes les expressions et variantes nécessaires que les utilisateurs peuvent dire. Une grammaire avec une bonne couverture garantit que le système peut gérer un large éventail d’entrées.
Latence : cela mesure le temps nécessaire au système pour traiter l’entrée parlée et produire un résultat de reconnaissance. Une latence inférieure est cruciale pour les applications en temps réel.
Taux d’acceptation/rejet faux : cela mesure les faux positifs et les négatifs que le système rencontre. Cela affecte directement le taux de confinement des appelants et le taux de réussite de l’application dans les scénarios de centre de contact.
Considérations relatives à l’équité
Chez Microsoft, nous nous efforçons de permettre à chaque personne sur la planète de faire plus. Une partie essentielle de cet objectif est de créer des technologies et des produits équitables et inclusifs. L’équité est un sujet socio-technique multidimensionnel et a un impact sur de nombreux aspects différents de notre développement de produits. Vous pouvez en savoir plus sur l’approche de Microsoft en matière d’équité.
Une dimension importante à prendre en compte lors de l’utilisation de systèmes IA, y compris la reconnaissance vocale contrainte, est la façon dont le système s’exécute pour différents groupes de personnes. La recherche a montré que sans effort conscient axé sur l’amélioration des performances pour tous les groupes, les systèmes d’IA peuvent présenter différents niveaux de performance dans différents facteurs démographiques tels que la race, l’ethnicité, le sexe et l’âge.
Dans certains cas, il peut y avoir des disparités de performances restantes. Il est important de noter que ces disparités peuvent dépasser la cible, et que nous travaillons activement à résoudre et réduire les préjugés potentiels ou les lacunes en matière de performances, examinez soigneusement le choix du groupe démographique de l’acteur et recherchez diverses perspectives à partir d’un large éventail de contextes.
En ce qui concerne les préjudices de représentation, tels que la stéréotypage, la démeanation ou l’effacement des sorties, nous reconnaissons les risques associés à ces problèmes. Bien que notre processus d’évaluation vise à atténuer ces risques, nous encourageons les utilisateurs à prendre en compte leurs cas d’usage spécifiques avec soin et à implémenter des atténuations supplémentaires selon les besoins. Le fait d’avoir un humain dans la boucle peut fournir une couche supplémentaire de surveillance pour traiter les préjugés potentiels ou les conséquences involontaires.
Nous nous engageons à améliorer continuellement nos évaluations d’équité pour mieux comprendre les performances du système dans différents groupes démographiques et les préoccupations potentielles en matière d’équité. Le processus d’évaluation est en cours et nous travaillons activement à améliorer l’équité et l’inclusivité, et à atténuer les disparités identifiées. Nous comprenons l’importance de prendre en compte l’équité et nous nous efforçons de veiller à ce que la reconnaissance vocale contrainte fournisse des sorties de reconnaissance vocale fiables et équitables.
Note
Ces informations représentent ce que nous savons jusqu’à présent sur les évaluations d’équité, et nous sommes toujours dédiés à affiner nos méthodologies d’évaluation et à résoudre les préoccupations d’équité qui peuvent survenir.
En savoir plus sur l’IA responsable
Les principes de l’IA de Microsoft.
Ressources d’IA responsable Microsoft
Cours Microsoft Azure Learning sur l’IA responsable