Personnaliser un modèle de reconnaissance vocale

Important

En raison de l’annonce de mise hors service d’Azure Media Services, Azure AI Video Indexer annonce les ajustements des fonctionnalités d’Azure AI Video Indexer. Consultez les modifications relatives à la mise hors service Azure Media Service (AMS) pour comprendre ce que cela signifie pour votre compte Azure AI Video Indexer. Consultez le guide de préparation de la mise hors service AMS : Mise à jour et migration vi.

Remarque

La personnalisation du modèle speech, y compris la formation de prononciation, est prise en charge uniquement dans les comptes d’évaluation Azure Video Indexer et les comptes Resource Manager. Il n’est pas pris en charge dans les comptes classiques. Pour obtenir des conseils sur la façon de mettre à jour votre type de compte sans frais, consultez le compte Mettre à jour votre compte Azure AI Video Indexer. Pour obtenir des conseils sur l’utilisation de l’expérience de langue personnalisée, consultez Personnaliser un modèle de langue.

Grâce à l’intégration d’Azure AI Video Indexer aux services Azure AI Speech, un modèle de langage universel est utilisé comme modèle de base formé avec des données appartenant à Microsoft et reflète la langue parlée couramment utilisée. Le modèle de base est préentraîné avec les dialectes et la phonétique représentant divers domaines communs. Le modèle de base fonctionne bien dans la plupart des scénarios de reconnaissance vocale.

Toutefois, parfois, la transcription du modèle de base ne gère pas avec précision du contenu. Dans ces situations, un modèle vocal personnalisé peut être utilisé pour améliorer la reconnaissance du vocabulaire ou de la prononciation spécifique à un domaine spécifique à votre contenu en fournissant des données de texte pour entraîner le modèle. Grâce au processus de création et d’adaptation des modèles de personnalisation vocale, votre contenu peut être correctement transcrit. Il n’existe aucun frais supplémentaire pour l’utilisation de la personnalisation vocale de Video Indexers.

Quand utiliser un modèle de reconnaissance vocale personnalisé ?

Si votre contenu contient une terminologie spécifique au secteur ou lorsque vous passez en revue les résultats de transcription Video Indexer, vous pouvez créer et entraîner un modèle de reconnaissance vocale personnalisé pour reconnaître les termes et améliorer la qualité de la transcription. Il peut être utile de créer un modèle personnalisé uniquement si les mots et noms pertinents sont censés apparaître à plusieurs reprises dans le contenu que vous envisagez d’indexer. L’entraînement d’un modèle est parfois un processus itératif et vous pouvez constater qu’après l’entraînement initial, les résultats pourraient toujours utiliser l’amélioration et bénéficieraient d’une formation supplémentaire, voir Comment améliorer votre section de modèle personnalisé pour obtenir des conseils.

Toutefois, si vous remarquez que quelques mots ou noms transcrits de manière incorrecte dans la transcription, un modèle de reconnaissance vocale personnalisé peut ne pas être nécessaire, en particulier si les mots ou noms ne sont pas censés être couramment utilisés dans le contenu que vous prévoyez d’indexer à l’avenir. Vous pouvez simplement modifier et corriger la transcription dans le site web Video Indexer (voir Afficher et mettre à jour les transcriptions dans le site web Azure AI Video Indexer) et ne pas avoir à l’adresser via un modèle de reconnaissance vocale personnalisé.

Pour obtenir la liste des langues qui prennent en charge les modèles personnalisés et la prononciation, consultez les colonnes Personnalisation et prononciation de la table de prise en charge linguistique dans la prise en charge linguistique dans Azure AI Video Indexer.

Entraîner des jeux de données

Lors de l’indexation d’une vidéo, vous pouvez utiliser un modèle vocal personnalisé pour améliorer la transcription. Les modèles sont entraînés en les chargeant avec des jeux de données qui peuvent inclure des données de texte brut et des données de prononciation.

Le texte utilisé pour tester et entraîner un modèle personnalisé doit inclure des exemples à partir d’un ensemble diversifié de contenu et de scénarios que vous souhaitez que votre modèle reconnaisse. Tenez compte des facteurs suivants lors de la création et de l’apprentissage de vos jeux de données :

  • Incluez du texte qui couvre les types d’instructions verbales que vos utilisateurs effectuent lorsqu’ils interagissent avec votre modèle. Par exemple, si votre contenu est principalement lié à un sport, entraînez le modèle avec du contenu contenant la terminologie et les sujets liés au sport.
  • Incluez toutes les variations de message que vous voulez que votre modèle reconnaisse. De nombreux facteurs peuvent varier en termes de parole, y compris les accents, les dialectes et le mélange linguistique.
  • Incluez uniquement les données pertinentes pour le contenu que vous envisagez de transcrire. L’inclusion d’autres données peut nuire à la qualité de la reconnaissance globale.

Types de jeux de données

Il existe deux types de jeux de données que vous pouvez utiliser pour la personnalisation. Pour déterminer le jeu de données à utiliser pour résoudre vos problèmes, reportez-vous au tableau suivant :

Cas d’utilisation Type de données
Améliorez la précision de la reconnaissance du vocabulaire ou de la grammaire spécifiques d’un secteur, par exemple, la terminologie médicale ou le jargon informatique. Texte brut
Définissez la forme phonétique et affichée d’un mot ou d’un terme dont la prononciation n’est pas standard, par exemple, les noms de produits ou les acronymes. Données de prononciation

Données de texte brut pour la formation

Un jeu de données incluant des phrases de texte brut de texte associé peut être utilisé pour améliorer la reconnaissance des mots et expressions spécifiques au domaine. L’ajout de phrases de texte associées permet de réduire les erreurs de substitution liées à la reconnaissance erronée des mots courants et des mots spécifiques à un domaine en les présentant en contexte. Les mots spécifiques à un domaine peuvent être des mots rares ou inventés, mais leur prononciation doit être facile à reconnaître.

Meilleures pratiques pour les jeux de données de texte brut

  • Fournissez des phrases liées au domaine dans un fichier texte unique. Au lieu d’utiliser des phrases complètes, vous pouvez charger une liste de mots. Toutefois, bien que cela les ajoute au vocabulaire, il n’apprend pas au système comment les mots sont généralement utilisés. En fournissant des énoncés complets ou partiels (phrases ou expressions que les utilisateurs sont susceptibles de dire), le modèle de langage peut apprendre les mots nouveaux ainsi que la façon dont ils sont utilisés. Le modèle linguistique personnalisé convient, non seulement pour l’ajout de mots au système, mais aussi pour l’ajustement de la probabilité d’occurrence de mots connus pour votre application. Fournir des énoncés complets permet au système de mieux apprendre.
  • Utilisez des données de texte proches des énoncés parlés attendus. Ces énoncés ne doivent pas nécessairement être des phrases complètes ni être grammaticalement corrects. En revanche, elles doivent refléter précisément l’entrée orale auquel votre modèle doit s’attendre.
  • Essayez d’avoir chaque phrase ou mot clé sur une ligne distincte.
  • Pour augmenter la pondération d’un terme, comme des noms de produits, ajoutez plusieurs phrases qui incluent le terme.
  • Pour les expressions courantes utilisées dans votre contenu, il est utile de fournir de nombreux exemples, car il indique au système d’écouter ces termes. 
  • Évitez d’inclure des symboles rares (~, # @ % &) comme obtenir dis carte ed. Les phrases dans lesquelles elles apparaissent se désapparaîtnt également carte ed.
  • Évitez de placer des entrées trop volumineuses, telles que des centaines de milliers de phrases, car cela dilue l’effet de l’amélioration.

Utilisez ce tableau pour vérifier que votre fichier de données en texte brut est mis en forme correctement :

Propriété Valeur
Encodage de texte UTF-8 BOM
Nombre d’énoncés par ligne 1
Taille maximale du fichier 200 Mo

Essayez de suivre ces instructions dans vos fichiers texte brut :

  • Évitez de répéter des caractères, des mots ou des groupes de mots plus de trois fois, tels que « oui oui oui oui » car le service peut supprimer des lignes avec trop de répétitions.
  • N’utilisez pas de caractères spéciaux ou de caractères UTF-8 au-dessus de U+00A1.
  • Les URI sont rejetés.
  • Pour certaines langues comme le japonais ou le coréen, l’importation de grandes quantités de données texte peut prendre beaucoup de temps ou entraîner l’expiration du délai d’attente. Essayez de fractionner le jeu de données en plusieurs fichiers texte de 20 000 lignes maximum chacun.

Données de prononciation pour la formation

Vous pouvez ajouter à votre modèle de reconnaissance vocale personnalisée un jeu de données de prononciation personnalisé pour améliorer la reconnaissance des mots, expressions ou noms mal dénoncés.

Les jeux de données de prononciation doivent inclure la forme parlée d’un mot ou d’une expression, ainsi que le formulaire affiché reconnu. La forme parlée est la séquence phonétique orthographiée, telle que « Triple A ». Il peut être composé de lettres, de mots, de syllabes ou d’une combinaison des trois. Le formulaire affiché reconnu est la façon dont vous souhaitez que le mot ou l’expression apparaisse dans la transcription. Ce tableau contient quelques exemples :

Forme affichée reconnue Forme orale (en anglais)
3CPO trois c p o
CNTK (Computational Network Toolkit de Microsoft Research) c n t k
AAA Triple A

Vous fournissez des jeux de données de prononciation dans un seul fichier texte. Incluez l’énoncé oral et une prononciation personnalisée pour chacun d’entre eux. Chaque ligne du fichier doit commencer par la forme reconnue, inclure un caractère de tabulation, puis la séquence phonétique délimitée par des espaces.

3CPO    three c p o 
CNTK    c n t k 
IEEE    i triple e 

Tenez compte des éléments suivants lors de la création et de l’apprentissage des jeux de données de prononciation :

Il n’est pas recommandé d’utiliser des fichiers de prononciation personnalisés pour modifier la prononciation des mots courants.

S’il existe quelques variantes de la façon dont un mot ou un nom est transcrit de manière incorrecte, envisagez d’utiliser certains ou tous d’entre eux lors de l’apprentissage du jeu de données de prononciation. Par exemple, si Robert est mentionné cinq fois dans la vidéo et transcrit comme Robort, Ropert et voleurs. Vous pouvez essayer d’inclure toutes les variantes du fichier comme dans l’exemple suivant, mais soyez prudent lorsque vous entraînez des mots réels comme des voleurs comme si des voleurs sont mentionnés dans la vidéo, il est transcrit en tant que Robert.

Robert Roport
Robert Ropert
Robert Robbers

Le modèle de prononciation n’est pas destiné à traiter les acronymes. Par exemple, si vous souhaitez que Doctor soit transcrit en tant que Dr., cela ne peut pas être obtenu par le biais d’un modèle de prononciation.

Reportez-vous au tableau suivant pour vous assurer que vos fichiers de jeu de données de prononciation sont valides et correctement mis en forme.

Propriété Valeur
Encodage de texte UTF-8 BOM (ANSI est également pris en charge pour l’anglais)
Nombre de prononciations par ligne 1
Taille maximale du fichier 1 Mo (1 Ko pour le niveau gratuit)

Comment améliorer vos modèles personnalisés

L’apprentissage d’un modèle de prononciation peut être un processus itératif, car vous pouvez acquérir plus de connaissances sur la prononciation du sujet après la formation initiale et l’évaluation des résultats de votre modèle. Étant donné que les modèles existants ne peuvent pas être modifiés ou modifiés, l’entraînement d’un modèle nécessite de manière itérative la création et le chargement de jeux de données avec des informations supplémentaires, ainsi que l’apprentissage de nouveaux modèles personnalisés basés sur les nouveaux jeux de données. Vous réindexez ensuite les fichiers multimédias avec le nouveau modèle de reconnaissance vocale personnalisée.

Exemple :

Supposons que vous prévoyiez d’indexer le contenu sportif et d’anticiper les problèmes de précision des transcriptions avec une terminologie sportive spécifique, ainsi que dans les noms des joueurs et des entraîneurs. Avant l’indexation, vous avez créé un modèle vocal avec un jeu de données de texte brut avec du contenu contenant la terminologie sportive pertinente et un jeu de données de prononciation avec certains des noms des joueurs et des entraîneurs. Vous indexez quelques vidéos à l’aide du modèle de reconnaissance vocale personnalisée et, lors de l’examen de la transcription générée, recherchez que bien que la terminologie soit transcrite correctement, de nombreux noms ne le sont pas. Vous pouvez effectuer les étapes suivantes pour améliorer les performances à l’avenir :

  1. Passez en revue la transcription et notez tous les noms transcrits de manière incorrecte. Ils pourraient se trouver dans deux groupes :

    • Noms non dans le fichier de prononciation.
    • Noms dans le fichier de prononciation, mais ils sont toujours transcrits de manière incorrecte.
  2. Créez un fichier de jeu de données. Téléchargez le fichier de jeu de données de prononciation ou modifiez votre fichier d’origine enregistré localement. Pour le groupe A, ajoutez les nouveaux noms au fichier avec la façon dont ils ont été transcrits de manière incorrecte (Michael Mikel). Pour le groupe B, ajoutez des lignes supplémentaires avec chaque ligne ayant le nom correct et un exemple unique de la façon dont elle a été transcrite de manière incorrecte. Par exemple :

    Stephen Steven
    Stephen Steafan
    Stephen Steevan

  3. Chargez ce fichier en tant que nouveau fichier de jeu de données.

  4. Créez un modèle de reconnaissance vocale et ajoutez le jeu de données de texte brut d’origine et le nouveau fichier de jeu de données de prononciation.

  5. Réindexez la vidéo avec le nouveau modèle de reconnaissance vocale.

  6. Si nécessaire, répétez les étapes 1 à 5 jusqu’à ce que les résultats soient satisfaisants.