IBM Cloud Docs
Utilisation des corpus et des mots personnalisés pour les modèles vocaux de grande taille et les modèles de nouvelle génération

Utilisation des corpus et des mots personnalisés pour les modèles vocaux de grande taille et les modèles de nouvelle génération

Ces informations sont spécifiques aux modèles personnalisés qui sont basés sur des modèles de parole volumineux et des modèles de nouvelle génération. Pour plus d'informations sur les corpus et les mots personnalisés pour les modèles personnalisés basés sur les modèles de génération antérieure, voir Utilisation de corpus et de mots personnalisés pour les modèles de génération antérieure.

On remplit un modèle de langue personnalisé avec des mots en ajoutant des corpsus au modèle ou en ajoutant des mots personnalisés directement au modèle. Vous utilisez les mêmes méthodes et opérations pour les grands modèles de langage, les modèles de la génération précédente et ceux de la génération suivante. Pour plus d'informations sur l'ajout de corpus et de mots personnalisés à un modèle, voir Utilisation de corpus pour les modèles de parole de grande taille et les modèles de nouvelle génération et Utilisation de mots personnalisés pour les modèles de parole de grande taille et les modèles de nouvelle génération.

Bien que la personnalisation des modèles de langage soit similaire en termes d'utilisation et d'intention pour les grands modèles de parole, les modèles de la génération précédente et de la génération suivante, il existe des différences entre les trois types de modèles au niveau de la mise en œuvre. Pour comprendre comment fonctionne la personnalisation des modèles de langage pour les grands modèles de parole et les modèles de nouvelle génération, et comment vous pouvez tirer le meilleur parti de la personnalisation, vous devez avoir une compréhension approfondie des différences.

  • Lorsque vous créez et utilisez un modèle linguistique personnalisé basé sur un modèle de discours volumineux ou un modèle de génération précédente, le service s'appuie sur les mots du modèle personnalisé pour créer des transcriptions contenant des termes spécifiques à un domaine. En combinaison avec des mots de son vocabulaire de base, le service utilise ces mots issus du modèle personnalisé pour prédire et transcrire le discours de l'audio. Vous fournissez les informations pour un modèle de langue personnalisé sous la forme de corpus, de mots personnalisés et de grammaires. Le service stocke ces informations dans les ressources de mots du modèle personnalisé.

  • Lorsque vous créez un modèle de langue personnalisé basé sur un modèle de nouvelle génération, les services s'appuient sur des séquences de caractères du modèle personnalisé pour créer des transcriptions qui reflètent des termes spécifiques à un domaine. En combinaison avec les séquences de caractères du modèle de base, le service utilise ces séries de caractères du modèle personnalisé pour prédire et transcrire la parole à partir de l'audio.

    Vous fournissez les informations pour un modèle de langue personnalisé sous la forme de corpus, de mots personnalisés et de grammaires. Cependant, plutôt que de s'en remettre à une ressource de mots contenant ces mots, le service extrait et stocke les séquences de caractères des corpus et des mots personnalisés. Le service n'extrait pas et ne calcule pas les mots hors vocabulaire (OOV) provenant des corpus et des mots personnalisés. La ressource de mots est simplement l'endroit où elle stocke les mots personnalisés que vous ajoutez directement au modèle.

Lorsque vous développez un modèle linguistique personnalisé basé sur un modèle vocal de grande taille ou un modèle de nouvelle génération, vous devez toujours fournir des corpus et des mots personnalisés pour entraîner le modèle sur la terminologie spécifique au domaine. Ainsi, le processus de création et de formation d'un modèle personnalisé est en grande partie le même pour les grands modèles de parole, les modèles de nouvelle génération et ceux de génération précédente.

Les sujets suivants décrivent les règles à suivre pour fournir des corpus et des mots personnalisés pour un modèle de langage personnalisé basé sur de grands modèles de parole et des modèles de nouvelle génération. Les règles sont similaires à celles de l'utilisation d'un modèle personnalisé basé sur un modèle de génération précédente, mais certaines différences importantes existent.

Ressource de mots

La ressource de mots inclut des mots personnalisés que vous ajoutez directement au modèle personnalisé. La ressource de mots contient les informations suivantes sur chaque mot personnalisé :

  • word -L'orthographe du mot ajouté par vous.

    N'utilisez pas de caractères devant être codés dans l'URL. Par exemple, n'utilisez pas d'espaces, de barres obliques, de barres obliques inversées, de deux-points, deespera, de guillemets, de signes plus, de signes égal, de points d'interrogation, etc. dans le nom. URL Le service n'empêche pas l'utilisation de ces caractères, mais comme ils doivent être encodés en UTF-8 partout où ils sont utilisés, il est fortement déconseillé de le faire.

  • sounds_like - Prononciation du mot. Vous pouvez utiliser la zone sounds_like pour ajouter une ou plusieurs prononciations pour le mot. Pour plus d'informations, voir Utilisation de la zone sounds_like.

  • display_as - Orthographe du mot utilisée par le service dans les retranscriptions. Sauf si vous spécifiez une représentation alternative, l'orthographe correspond à la valeur de la zone word. Pour plus d'informations, voir Utilisation de la zone display_as.

  • source - Indique comment le mot a été ajouté à la ressource de mots. La zone contient toujours la chaîne user pour indiquer qu'elle a été ajoutée directement comme mot personnalisé.

Après avoir ajouté ou modifié un mot personnalisé, il est important de vérifier l'exactitude de la définition du mot; pour plus d'informations, voir Validation d'une ressource de mots pour les grands modèles de synthèse vocale et les modèles de nouvelle génération. Vous devez également former le modèle pour que les modifications prennent effet pendant la transcription ; pour plus d'informations, voir Formation du modèle de langue personnalisé.

Vous pouvez ajouter des mots personnalisés qui existent déjà, par exemple, pour ajouter d'autres prononciations possibles pour les mots communs. Dans le cas contraire, il n'y a aucune raison de dupliquer des mots communs. Ces mots restent dans la ressource de mots du modèle mais sont anodins et inutiles.

  • mapping_only-Paramètre pour les mots personnalisés. Vous pouvez utiliser la clé'mapping_only'dans des mots personnalisés comme forme de post-traitement. Ce paramètre clé a une valeur booléenne pour déterminer si'sounds_like'(pour les modèles non japonais) ou mot (pour le japonais) n'est pas utilisé pour l'ajustement du modèle, mais pour le remplacement de'display_as'. Cette fonction vous aide lorsque vous utilisez des mots personnalisés exclusivement pour mapper'sounds_like'(ou word) à la valeur'display_as'. Lorsque vous utilisez des mots personnalisés uniquement à des fins de post-traitement qui ne nécessitent pas d'optimisation.

Exemples de cas d'utilisation,

Avant d'utiliser'mapping_only': La sortie de la machine Speech to Text est'hilton honors'comme sa transcription ASR. Toutefois, vous souhaitez qu'il soit affiché en tant que'HHonors'comme sortie finale. Ainsi, vous pouvez utiliser le mot personnalisé suivant pour mapper'hilton honors'à'HHonors'.

{"word": "HHonors", "sounds_like": ["hilton honors"], "display_as": "HHonors"}

Bien que cela mappe n'importe quel mot "hilton honors" dans la transcription ASR à "HHonors", il ajuste le modèle avec "sounds_like" (hilton honors) par défaut, même si le modèle n'a aucun problème avec la reconnaissance du mot "hilton honors". Il s'agit de l'exemple de mots qui n'ont pas besoin d'être affinés mais qui doivent être mappés à'display_as'.

Après utilisation de'mapping_only': Etant donné que le modèle Speech to Text reconnaît très bien le mot'hilton honors', il n'a pas besoin d'être affiné sur ce mot. Par conséquent, vous pouvez utiliser les mots personnalisés suivants pour ignorer l'apprentissage et mapper'sounds_like'à'display_as'.

{"word": "HHonors", "sounds_like": ["hilton honors"], "display_as": "HHonors", "mapping_only": true}

Ce paramètre est applicable aux modèles de nouvelle génération qui prennent en charge la personnalisation améliorée (modèles anglais, modèles ja-Jp, etc.). Voir la liste des modèles pris en charge.

De quelle quantité de données ai-je besoin ?

De nombreux facteurs contribuent à déterminer la quantité de données dont vous avez besoin pour un modèle de langue personnalisé efficace. Il n'est pas possible d'indiquer la quantité exacte de données que vous devez ajouter pour un modèle ou une application personnalisé. En fonction du cas d'utilisation, même l'ajout direct de quelques mots à un modèle personnalisé suffit à améliorer la qualité du modèle. Cependant, l'ajout de corpus montrant les mots dans le contexte dans lequel ils sont utilisés peut grandement améliorer l'exactitude de la transcription.

Vous pouvez ajouter un total de 10 millions maximum à un modèle personnalisé à partir de toutes les sources. Cette figure tous les mots qui sont inclus dans les corpus et que vous ajoutez directement. Le service utilise tous les mots d'un corpus pour apprendre le contexte dans lequel des séquences de caractères peuvent apparaître, c'est pourquoi les corpus sont un moyen plus efficace d'améliorer la précision de la reconnaissance.

L'ajout d'un grand nombre de corpus et de mots peut augmenter le temps d'attente de la reconnaissance vocale, mais l'effet exact est difficile à quantifier ou à prévoir. À l'instar de la quantité de données nécessaire pour produire un modèle personnalisé efficace, l'impact sur la performance d'une grande quantité de données dépend de nombreux facteurs. Testez votre modèle personnalisé avec des quantités de données différentes pour déterminer les performances de vos modèles.

Instructions pour l'ajout de mots à des modèles personnalisés basés sur des modèles de nouvelle génération améliorés

Pour les modèles personnalisés basés sur des modèles de langue de nouvelle génération qui utilisent une personnalisation améliorée, limitez le nombre de mots personnalisés que vous ajoutez directement au modèle à l'aide des méthodes suivantes:

  • POST /v1/customizations/{customization_id}/words
  • PUT /v1/customizations/{customization_id}/words/{word_name}

L'utilisation de ces méthodes pour ajouter des mots personnalisés à un modèle personnalisé peut augmenter considérablement le temps d'apprentissage du modèle. Le temps d'apprentissage augmente de façon linéaire avec le nombre total de mots que vous ajoutez. Toutefois, le temps d'entraînement augmente uniquement lorsque le modèle est entraîné pour la première fois sur les nouveaux mots personnalisés. Le temps requis pour les demandes d'entraînement suivantes, sans nouveaux mots personnalisés, revient à la normale.

L'entraînement d'un modèle personnalisé avec des mots ajoutés uniquement via des corpus avec la méthode suivante est généralement rapide:

  • POST /v1/customizations/{customization_id}/corpora/{corpus_name}

Pour plus d'informations sur l'amélioration de la personnalisation des modèles de nouvelle génération, voir Amélioration de la personnalisation des modèles de langue pour les modèles de nouvelle génération.

Les modèles non japonais utilisent'sounds_like'pour le mappage ('sounds_like'->'display_as').

Instructions pour l'ajout de mots à des modèles japonais basés sur des modèles de nouvelle génération améliorés

N'ajoutez pas de mots personnalisés pour des mots connus, des mots qui sont communément reconnus et qui ont une correspondance générale entre le mot et la façon dont il est prononcé. Utilisez des mots personnalisés pour créer un mappage entre la façon dont les mots les moins courants sont orthographiés et la façon dont ils sont prononcés. Utilisez également des mots personnalisés pour ajouter des mots inconnus, ceux qui n'ont pas de correspondance entre le mot et sa prononciation ou qui ne sont pas communément reconnus comme des mots. L'ajout de tels mots à un corpus est tout aussi efficace.

Le service impose une limite maximale de 25 caractères au total, à l'exclusion des espaces de début et de fin, pour les mots personnalisés et les sonorités. Si vous ajoutez un mot personnalisé ou un son similaire qui dépasse cette limite, le service traite automatiquement le mot comme s'il avait été ajouté par un corpus. Le mot n'apparaît pas comme un mot personnalisé pour le modèle. Pour l'entraînement le plus efficace, il est recommandé que les mots personnalisés japonais et les sonorités ne contiennent pas plus de 20 caractères. Ajoutez des mots longs tels que IBMクラウド音声認識サービス à un corpus.

Par exemple, la prononciation アイビーエム du mot IBM est reconnue sans personnalisation, il n'est donc pas nécessaire de l'ajouter en tant que mot personnalisé. Etant donné que IBM, クラウド, 音声認識et サービス sont des mots communs, leur ajout en tant que mots personnalisés n'a aucun effet.

Pour un mot personnalisé, entrez une notation couramment utilisée qui reflète l'utilisation et la prononciation du mot. Cela permet une personnalisation plus efficace. Par exemple, l'exemple suivant ne génère pas de manière fiable la chaîne Artificial_Intelligence en réponse à l'énoncé エーアイ car Artificial_Intelligence et 人工知能 ne sont généralement pas énoncés en tant que AI:

{\"word\": \"Artificial_Intelligence\", \"sounds_like\": [\"エーアイ\"], \"display_as\": \"Artificial_Intelligence\"},
{\"word\": \"人工知能\", \"sounds_like\": [\"エーアイ\"], \"display_as\": \"Artificial_Intelligence\"}

Dans la mesure où le contexte est généralement similaire à これからAIはますます発展してきます, AI est la notation la plus appropriée pour les sons エーアイ. L'exemple suivant est donc susceptible de donner de meilleurs résultats:

{\"word\": \"AI\", \"sounds_like\": [\"エーアイ\"], \"display_as\": \"Artificial_Intelligence\"}

Enfin, dans les mots personnalisés, les caractères alphabétiques demi-largeur sont convertis en caractères pleine largeur. Les majuscules et les minuscules anglaises sont traitées comme des caractères différents.

Les modèles japonais utilisent le mot pour le mappage ('word'->'display_as').

Utilisation des corpus pour les grands modèles vocaux et les modèles de nouvelle génération

Vous utilisez la méthode POST /v1/customizations/{customization_id}/corpora/{corpus_name} pour ajouter un corpus à un modèle personnalisé. Un corpus est un fichier en texte brut qui contient des exemples de phrases tirés de votre domaine. L'exemple suivant présente un corpus abrégé dans le domaine de la santé. Un fichier de corpus est en principe beaucoup plus long.

Am I at risk for health problems during travel?
Some people are more likely to have health problems when traveling outside the United States.
How Is Coronary Microvascular Disease Treated?
If you're diagnosed with coronary MVD and also have anemia, you may benefit from treatment for that condition.
Anemia is thought to slow the growth of cells needed to repair damaged blood vessels.
What causes autoimmune hepatitis?
A combination of autoimmunity, environmental triggers, and a genetic predisposition can lead to autoimmune hepatitis.
What research is being done for Spinal Cord Injury?
The National Institute of Neurological Disorders and Stroke NINDS conducts spinal cord research in its laboratories at the National Institutes of Health NIH.
NINDS also supports additional research through grants to major research institutions across the country.
Some of the more promising rehabilitation techniques are helping spinal cord injury patients become more mobile.
What is Osteogenesis imperfecta OI?
. . .

Les séquences de caractères dans les mots d'un modèle personnalisé sont en compétition avec les séquences de caractères du modèle de base, ainsi que les séquences d'autres mots du modèle. (Des facteurs, tels que des bruits audio et les accents des locuteurs peuvent aussi affecter la qualité de transcription.)

La précision de la transcription peut dépendre en grande partie des données que vous ajoutez à un modèle et de la façon dont les locuteurs prononcent les mots. Pour améliorer la précision du service, utilisez le corpus pour fournir autant d'exemples que possible de la façon dont les mots sont utilisés dans un domaine. La répétition des mots dans le corpus peut améliorer la qualité d'un modèle de langue personnalisé. Votre manière de dupliquer les mots dans les corpus dépend de comment les utilisateurs sont censés les prononcer dans l'audio qui doit faire l'objet d'une reconnaissance. Plus vous ajoutez de phrases qui représentent le contexte d'utilisation des mots du domaine par les locuteurs, plus précise sera la reconnaissance du service.

Par exemple, aux Etats-Unis, les comptables adhèrent à un ensemble de normes et de procédures dénommé Generally Accepted Accounting Principles (GAAP). Lorsque vous créez un modèle personnalisé dans le domaine financier, fournissez les phrases utilisant le terme GAAP en contexte. Ces phrases aident le service à faire la distinction entre des expressions générales de type "the gap between them is small" et des expressions propres au domaine, telles que "GAAP provides guidelines for measuring and disclosing financial information".

En général, il est préférable pour les corpus d'utiliser des mots dans différents contextes, ce qui peut améliorer la façon dont le service apprend les phrases. Toutefois, si les utilisateurs prononcent les mots seulement dans deux ou trois contextes, présenter ces mots dans d'autres contextes n'améliore pas la qualité du modèle personnalisé : les locuteurs n'utilisent jamais les mots dans ces contextes. Si les intervenants sont susceptibles d'utiliser fréquemment la même expression, la répétition de cette expression dans les corpus peut améliorer la qualité du modèle. Dans certains cas, le simple ajout de quelques mots personnalisés directement à un modèle personnalisé peut faire une différence positive.

Préparation d'un fichier texte de corpus

Suivez ces instructions pour préparer un fichier texte de corpus :

  • Fournissez un fichier de texte brut codé en UTF-8 s'il contient des caractères non ASCII. Le service adopte le codage UTF-8 s'il rencontre des caractères de ce type.

    Vérifiez que vous connaissez le codage de caractères de vos fichiers texte de corpus. Le service conserve le codage qu'il trouve dans les fichiers texte. Vous devez utiliser ce même codage lorsque vous utilisez des mots personnalisés dans le modèle personnalisé. Pour plus d'informations, voir Codage de caractères pour les mots personnalisés.

  • Utilisez les majuscules à bon escient pour les mots du corpus. Utilisez une combinaison de majuscules et de minuscules ou la capitalisation uniquement si c'est prévu.

  • Incluez chaque phrase du corpus sur une même ligne et terminez chaque ligne par un retour chariot. Mettre plusieurs phrases sur la même ligne peut nuire à la précision.

  • Ajoutez des noms personnels sous forme d'unités distinctes sur des lignes séparées. N'ajoutez pas les éléments individuels d'un nom sur des lignes séparées ou en tant que mots personnalisés individuels et n'incluez pas plusieurs noms sur la même ligne d'un corpus. L'exemple suivant présente le bon moyen d'améliorer la précision de la reconnaissance pour trois noms :

    Gakuto Kutara
    Sebastian Leifson
    Malcolm Ingersol
    

    Insérez des informations contextuelles supplémentaires, le cas échéant, par exemple, Doctor Sebastian Leifson ou President Malcolm Ingersol. Comme pour tous les mots, la duplication des noms à plusieurs reprises peut améliorer la précision de la reconnaissance.

  • Faites attention aux erreurs typographiques. Le service considère ces erreurs comme des mots nouveaux. N'oubliez pas l'adage GIGO (Garbage in, garbage out!) que l'on peut traduire par "à données inexactes, résultats erronés".

  • Plus il y a de phrases, plus on obtient un résultat précis. Cependant, le service limite un modèle à un maximum de 10 millions de mots provenant de toutes les sources combinées.

Que se passe-t-il lorsque j'ajoute un fichier de corpus ?

Lorsque vous ajoutez un fichier de corpus, le service analyse le contenu du fichier. Pour distiller le plus de signification à partir de ce contenu, le service tokénise et analyse les données qu'il lit dans un fichier de corpus. Les rubriques suivantes décrivent comment le service analyse un fichier corpus pour chaque langue prise en charge.

Les informations pour les langues suivantes ne sont pas encore disponibles : arabe, chinois, tchèque, hindi et suédois. Si vous avez besoin de ces informations pour votre modèle de langue personnalisé, contactez votre technicien de support IBM.

Analyse syntaxique du néerlandais, de l'anglais, du français, de l'allemand, de l'italien, du portugais et de l'espagnol

Les informations suivantes s'appliquent à tous les dialectes reconnus du néerlandais, de l'anglais, du français, de l'allemand, de l'italien, du portugais et de l'espagnol :

  • Conversion des nombres en mots équivalents.

    Exemples de conversion de nombres
    Langue Nombre entier nombre décimal
    Néerlandais 500 devient vijfhonderd 0,15 devient nul komma vijftien
    Anglais 500 devient five hundred 0.15 devient zero point fifteen
    Français 500 devient cinq cents 0,15 devient zéro virgule quinze
    Allemand 500 devient fünfhundert 0,15 devient null punkt fünfzehn
    Italien 500 devient cinquecento 0,15 devient zero virgola quindici
    Portugais 500 devient quinhentos 0,15 devient zero ponto quinze
    Espagnol 500 devient quinientos 0,15 devient cero coma quince
  • Conversion des sèmes incluant certains symboles en représentations de chaîne significatives. Il en existe d'autres. Le service effectue des ajustements similaires pour d'autres caractères selon les besoins.

    Exemples de conversion de symboles
    Langue Un symbole de dollar et un nombre Un symbole d'euro et un nombre Un symbole de pourcentage et un nombre
    Néerlandais $100 devient honderd dollar €100 devient honderd euro 100% devient honderd procent
    Anglais $100 devient one hundred dollars €100 devient one hundred euros 100% devient one hundred percent
    Français $100 devient cent dollars €100 devient cent euros 100% devient cent pour cent
    Allemand $100 et 100$ devient einhundert dollar €100 et 100€ devient einhundert euro 100% devient einhundert prozent
    Italien $100 devient cento dollari €100 devient cento euro 100% devient cento per cento
    Portugais $100 et 100$ devient cem dólares €100 et 100€ devient cem euros 100% devient cem por cento
    Espagnol $100 et 100$ devient cien dólares €100 et 100€ devient cien euros 100% devient cien por ciento
  • Traitement des caractères non alphanumériques, de la ponctuation et des caractères spéciaux en fonction de leur contexte. Par exemple, le service supprime un $ (symbole de dollar) ou (symbole d'euro) à moins qu'il ne soit suivi d'un numéro. Le traitement est cohérent et dépend du contexte pour toutes les langues prises en charge.

  • Ignore les expressions qui sont entre ( ) (parenthèses), < > (crochets), [ ] (crochets) ou { } (accolades).

Analyse du japonais

Les informations suivantes s'appliquent aux Japonais :

  • Conversion de tous les caractères en caractères à pleine chasse.
  • Convertit les nombres en leur équivalent en lettres, par exemple, 500 devient 五百, et 0.15 devient 〇・一五.
  • Ne convertit pas les jetons qui incluent des symboles en chaînes équivalentes, par exemple, 100% devient 百%.
  • Ne supprime pas automatiquement la ponctuation. IBM recommande fortement de supprimer la ponctuation si votre application est basée sur la transcription et non sur la dictée.

Analyse du coréen

Les informations suivantes s'appliquent à la langue coréenne :

  • Convertit les nombres en leur équivalent en mots, par exemple, 10 devient .

  • Supprime la ponctuation et les caractères spéciaux suivants : - ( ) * : . , ' ". Cependant, toute la ponctuation et les caractères spéciaux supprimés pour d'autres langues ne le sont pas forcément pour le coréen, par exemple :

    • Le point (.) est supprimé uniquement lorsqu'il se trouve à la fin d'une ligne d'entrée.
    • Le tilde (~) n'est pas supprimé.
    • Ne supprime pas ni ne traite les symboles Unicode à caractères larges, par exemple, « » (triple point ou ellipse).

    En général, IBM vous recommande de supprimer la ponctuation, les caractères spéciaux et les caractères larges (Unicode) avant de traiter un fichier de corpus.

  • Ne supprime pas ou n'ignore pas les expressions entre ( ) (parenthèses), < > (crochets), [ ] (crochets) ou { } (accolades).

  • Conversion des sèmes incluant certains symboles en représentations de chaîne significatives, par exemple :

    • 24% devient 이십사퍼센트.
    • $10 devient 십달러.

    Cette liste n'est pas exhaustive. Le service effectue des ajustements similaires pour d'autres caractères selon les besoins.

  • En ce qui concerne les expressions qui sont composées de caractères latins (anglais) ou d'un mélange de Hangul et de caractères latins, le service utilise les expressions exactement telles qu'elles apparaissent dans le fichier corpus.

Utilisation de mots personnalisés pour les grands modèles de parole et les modèles de nouvelle génération

Vous pouvez utiliser les méthodes POST /v1/customizations/{customization_id}/words et PUT /v1/customizations/{customization_id}/words/{word_name} pour ajouter de nouveaux mots à un modèle personnalisé. Vous pouvez également utiliser les méthodes pour modifier ou étendre un mot personnalisé.

Vous pouvez, par exemple, utiliser les méthodes pour corriger une erreur typographique ou une autre erreur qui s'est produite lors de l'ajout d'un mot à un modèle personnalisé. Si vous modifiez un mot existant, les nouvelles données que vous fournissez remplacent la définition existante du mot dans la ressource de mots. Les règles utilisées pour ajouter un mot s'appliquent également à la modification d'un mot existant.

Vous serez sans doute amené à ajouter la plupart des mots personnalisés à partir de corpus. Vérifiez que vous connaissez le codage de caractères de vos fichiers texte de corpus. Le service conserve le codage qu'il trouve dans les fichiers texte. Vous devez utiliser ce même codage lorsque vous utilisez des mots personnalisés dans le modèle personnalisé. Pour plus d'informations, voir Codage de caractères pour les mots personnalisés.

Utilisation de la zone sounds_like

La zone sounds_like indique comment un mot est prononcé par les locuteurs dans l'audio. Par défaut, le service ne tente pas de générer automatiquement une prononciation pour un mot pour lequel vous n'en fournissez pas. Vous pouvez ajouter des types de son pour tous les mots qui n'en ont pas. Après avoir ajouté ou modifié des mots, vous devez valider la ressource de mots pour vous assurer que la définition de chaque mot est complète et valide. Pour plus d'informations, voir Validation d'une ressource de mots pour les modèles vocaux de grande taille et les modèles de nouvelle génération.

Vous pouvez fournir jusqu'à cinq prononciations différentes pour un mot difficile à prononcer ou qui peut se prononcer de différentes manières. Voici quelques utilisations possibles de cette zone :

  • fournir différentes prononciations pour les acronymes. Par exemple, l'acronyme NCAA peut être prononcé tel qu'il est orthographié (épelé) ou plus communément N C double A. L'exemple suivant ajoute ces deux prononciations pour le mot NCAA :

    IBM Cloud

    curl -X PUT -u "apikey:{apikey}" \
    --header "Content-Type: application/json" \
    --data "{\"sounds_like\": [\"N C A A\", \"N C double A\"]}" \
    "{url}/v1/customizations/{customization_id}/words/NCAA"
    

    IBM Cloud Pak for Data IBM Software Hub

    curl -X PUT \
    --header "Authorization: Bearer {token}" \
    --header "Content-Type: application/json" \
    --data "{\"sounds_like\": [\"N C A A\", \"N C double A\"]}" \
    "{url}/v1/customizations/{customization_id}/words/NCAA"
    

    Pour plus d'informations sur la façon dont le service reconnaît les acronymes, voir Efforts de transcription supplémentaires.

  • traiter les mots étrangers. Par exemple, le mot français garçon contient un caractère qui n'existe pas en anglais. Vous pouvez spécifier un son gaarson, en remplaçant ç par s, pour indiquer au service comment les anglophones prononcerait le mot.

Les sujets suivants fournissent des directives pour spécifier une prononciation phonétique. La reconnaissance vocale utilise des algorithmes statistiques pour l'analyse audio, par conséquent l'ajout d'un mot ne garantit pas que le service le transcode avec une parfaite exactitude. Lorsque vous ajoutez un mot, tenez compte de ses différentes prononciations possibles. Utilisez la zone sounds_like pour fournir différentes prononciations indiquant comment un mot peut être énoncé.

Les informations pour les langues suivantes ne sont pas encore disponibles : arabe, chinois, tchèque, hindi et suédois. Si vous avez besoin de ces informations pour votre modèle de langue personnalisé, contactez votre technicien de support IBM.

Les modèles non japonais utilisent'sounds_like'pour le mappage ('sounds_like'->'display_as'). Les modèles japonais utilisent le mot pour le mappage ('word'->'display_as').

Instructions d'ordre général pour toutes les langues

Suivez ces instructions lors de la spécification de types de son pour une langue :

  • N'utilisez pas de caractères de ponctuation dans les types de son. Par exemple, n'utilisez pas de points, de tirets, de traits de soulignement, de virgules, de caractères de fin de phrase ou de caractères spéciaux comme les signes dollar et euro, les parenthèses, les crochets ou les accolades.
  • Utilisez des caractères alphabétiques valides pour votre langue. Pour l'anglais, cela inclut a-z et A-Z. Pour les autres langues, les caractères valides peuvent inclure des lettres accentuées ou des caractères spécifiques à la langue.
  • En anglais, substituez les lettres anglaises équivalentes aux lettres non anglophones ou accentuées. Par exemple, s pour ç, ny pour ñ ou e pour è.
  • Utilisez des mots réels ou fabriqués qui sont prononçables pour les mots difficiles à prononcer. En anglais, vous pouvez, par exemple, utiliser le type de son shuchesnie pour le mot Sczcesny.
  • Utilisez l'orthographe des nombres sans faire figurer les tirets. Par exemple, pour le nombre 75, utilisez seventy five en anglais, setenta y cinco en espagnol et soixante quinze en français.
  • Pour prononcer une seule lettre, utilisez cette lettre suivie d'un espace. Par exemple, utilisez N C A A, et non pas N. C. A. A., N.C.A.A. ou NCAA.
  • Vous pouvez inclure plusieurs mots séparés par des espaces.
    • Pour la plupart des langues, le service impose un maximum de 40 caractères au total, à l'exclusion des espaces de début et de fin.
    • Pour le japonais, le service impose une limite maximale de 25 caractères au total, à l'exclusion des espaces de début et de fin. Si vous ajoutez un mot personnalisé ou un son similaire qui dépasse cette limite, le service traite automatiquement le mot comme s'il avait été ajouté par un corpus. Le mot n'apparaît pas comme un mot personnalisé pour le modèle. Pour l'entraînement le plus efficace, il est recommandé que les mots personnalisés japonais et les sonorités ne contiennent pas plus de 20 caractères.

Instructions pour le japonais

Suivez ces directives lorsque vous spécifiez un sounds-like pour le japonais :

  • chou-onN'utilisez que des caractères katakana pleine largeur en utilisant le symbole d'allongement ( , ou 長音, en japonais). N'utilisez pas des caractères à demi-chasse. (Pour la zone display_as, si vous entrez un caractère de demi-largeur, il est affiché sous la forme d'un caractère de demi-largeur dans les résultats de transcription.)

  • N'utilisez les sons contractés (yoh-on, ou 拗音, en japonais) que dans les contextes syllabiques suivants :

    イェ, ウィ, ウェ, ウォ, キィ, キャ, キュ, キョ, ギャ, ギュ, ギョ, クァ, クィ, クェ, クォ

    グァ, グォ, シィ, シェ, シャ, シュ, ショ, ジィ, ジェ, ジャ, ジュ, ジョ, スィ, ズィ, チェ

    チャ, チュ, チョ, ヂェ, ヂャ, ヂュ, ヂョ, ツァ, ツィ, ツェ, ツォ, ティ, テュ, ディ, デャ

    デュ, デョ, トゥ, ドゥ, ニェ, ニャ, ニュ, ニョ, ヒャ, ヒュ, ヒョ, ビャ, ビュ, ビョ, ピィ

    ピャ, ピュ, ピョ, ファ, フィ, フェ, フォ, フュ, ミャ, ミュ, ミョ, リィ, リェ, リャ, リュ

    リョ, ヴァ, ヴィ, ヴェ, ヴォ, ヴュ

  • N'utilisez que les syllabes suivantes après un son assimilé (soku-on, ou 促音, en japonais):

    , , , , , , チェ, チャ, チュ, チョ, , , ディ, , ドゥ,

    ファ, フィ, フェ, フォ, , , , , , , , , , , ジェ, ジャ

    ジュ, ジョ, , , , , , キャ, キュ, キョ, , , , , , ピャ

    ピュ, ピョ, , , , , , シェ, シャ, シュ, ショ, , , , ,

    , ,

  • N'utilisez pas comme premier caractère d'un mot. Par exemple, utilisez ウーント au lieu de ンート, cette dernière étant invalide.

  • La séquence de caractères ウー est ambiguë dans certains contextes de gauche. N'utilisez pas de caractères (syllabes) qui se terminent par le phonème /o/, tel que et . Dans ce cas, utilisez ウウ ou uniquement à la place de ウー. Par exemple, utilisez ロウウマン ou ロウマン à la place de ロウーマン.

  • De nombreux mots composés sont constitués d'une combinaison préfixe+nom ou nom+suffixe. Les séquences de caractères du modèle de base couvrent la plupart des mots composés qui se produisent fréquemment (par exemple, 長電話 et 古新聞), mais pas les mots composés qui se produisent rarement. Si votre corpus contient souvent des mots composés, ajoutez-les comme un seul mot dans la première étape de votre personnalisation. Par exemple, « 古鉛筆 » n'est pas courant dans les textes japonais généraux; si vous l'utilisez souvent, ajoutez-le à votre modèle personnalisé pour améliorer la précision de la transcription.

  • N'utilisez pas de son assimilé en fin de mot.

Instructions pour le coréen

Suivez ces directives lorsque vous spécifiez un sounds-like pour le coréen :

  • Utilisez des symboles, des syllabes et des caractères Hangul coréens.
  • Vous pouvez également utiliser des caractères alphabétiques latins (anglais) : a-z et A-Z.
  • N'utilisez aucun caractère ou symbole qui n'appartient pas aux jeux de caractères précédents.

Utilisation de la zone display_as

La zone display_as spécifie comment s'affiche un mot dans une transcription. Par défaut, le service définit la zone pour qu'elle corresponde à l'orthographe du mot personnalisé. La zone sert pour les cas de figure où vous souhaitez que le service affiche une chaîne différente de l'orthographe du mot. Par exemple, vous pouvez indiquer que le mot hhonors doit être affiché sous la forme HHonors.

IBM Cloud

curl -X PUT -u "apikey:{apikey}" \
--header "Content-Type: application/json" \
--data "{\"display_as\": \"HHonors\"}" \
"{url}/v1/customizations/{customization_id}/words/hhonors"

IBM Cloud Pak for Data IBM Software Hub

curl -X PUT \
--header "Authorization: Bearer {token}" \
--header "Content-Type: application/json" \
--data "{\"display_as\": \"HHonors\"}" \
"{url}/v1/customizations/{customization_id}/words/hhonors"

Par exemple, vous pouvez indiquer que le mot IBM doit être affiché sous la forme IBM™.

IBM Cloud

curl -X PUT -u "apikey:{apikey}" \
--header "Content-Type: application/json" \
--data "{\"display_as\":\"IBM™\"}" \
"{url}/v1/customizations/{customization_id}/words/IBM"

IBM Cloud Pak for Data IBM Software Hub

curl -X PUT \
--header "Authorization: Bearer {token}" \
--header "Content-Type: application/json" \
--data "{\"display_as\":\"IBM™\"}" \
"{url}/v1/customizations/{customization_id}/words/IBM"

Les modèles non japonais utilisent'sounds_like'pour le mappage ('sounds_like'->'display_as'). Les modèles japonais utilisent le mot pour le mappage ('word'->'display_as').

Interaction avec le formatage intelligent et l'occultation numérique

Si vous utilisez les paramètres smart_formatting ou redaction avec une demande de reconnaissance, n'oubliez pas que le service applique le formatage intelligent et l'occultation à un mot avant de prendre en compte la zone display_as correspondant au mot. Vous devrez peut-être expérimenter les résultats pour vous assurer que les fonctions n'interfèrent pas avec le mode d'affichage de vos mots personnalisés. Vous devrez peut-être également ajouter des mots personnalisés pour permettre l'adaptation à ces contraintes.

Par exemple, supposons que vous ajoutez le mot personnalisé one avec une zone display_as définie avec one. Le formatage intelligent remplace le mot one par le nombre 1, et la valeur de la zone display-as n'est pas appliquée. Pour contourner le problème, vous pouvez ajouter un mot personnalisé pour le nombre 1 et appliquer à ce mot la même valeur dans la zone display_as.

Pour plus d'informations sur l'utilisation de ces fonctions, voir Formatage intelligent et Occultation numérique.

Que se passe-t-il lorsque j'ajoute ou modifie un mot personnalisé ?

Le mode de réponse du service à une demande d'ajout ou de modification d'un mot personnalisé dépend des zones et des valeurs que vous spécifiez. Cela dépend également si les séquences de caractères du mot existent dans les séquences de caractères du modèle de base.

  • Omettre les zones sounds_like et display_as :

    • Le service définit la zone display_as avec la valeur de la zone word. Le service ne tente pas de définir la zone sounds_like sur une prononciation du mot.
  • Spécifier uniquement la zone sounds_like :

    • Si la zone sounds_like est valide, le service définit la valeur de la zone sounds_like sur la valeur spécifiée. Le service définit également la zone display_as sur la valeur de la zone word.
    • Si la zone sounds_like n'est pas valide :
      • La méthode POST /v1/customizations/{customization_id}/words ajoute une zone error pour ce mot dans la dans la ressource de mots du modèle.
      • La méthode PUT /v1/customizations/{customization_id}/words/{word_name} échoue avec le code de réponse 400 et un message d'erreur. Le service n'ajoute pas le mot dans la ressource de mots.
  • Spécifier uniquement la zone display_as :

    • Le service définit la zone display_as sur la valeur spécifiée. Le service ne tente pas de définir la zone sounds_like sur une prononciation du mot.
  • Spécifier les zones sounds_like et display_as :

    • Si la zone sounds_like est valide, le service définit les zones sounds_like et display_as avec les valeurs spécifiées.
    • Si la zone sounds_like n'est pas valide, le service répond de la même manière que dans le cas où la zone sounds_like est spécifiée mais que la zone display_as ne l'est pas.

Efforts de transcription supplémentaires

Pour les modèles de langage personnalisés basés sur des modèles vocaux volumineux et des modèles de nouvelle génération, le service déploie des efforts supplémentaires pour garantir la transcription la plus efficace :

  • Pour la prononciation des mots personnalisés, le service utilise l'inversion des sons, ainsi que leur définition dans un mot personnalisé. Par exemple, pour une zone sounds_like donnée de I triple E pour le mot IEEE, le service utilise également un son inverse de IEEE pour le mot "I triple E". Cela améliore l'application de prononciations pour la reconnaissance vocale. (Notez qu'il n'est pas possible pour les utilisateurs de créer des mots personnalisés contenant des espaces.)

  • Pour les acronymes analysés à partir de corpus ou définis comme des mots personnalisés, le service effectue des efforts supplémentaires de reconnaissance vocale. Un acronyme est un mot qui se compose de deux lettres majuscules ou plus consécutives. Si l'acronyme contient une ou plusieurs voyelles, le service tente de reconnaître l'acronyme comme une série de caractères individuels et comme un mot prononcé.

    Par exemple, l'acronyme NASA peut être lu comme quatre lettres individuelles ou être prononcé comme un mot qui ressemble à nassa. Le service recherche les deux lors de la reconnaissance vocale. Cela accroît sa capacité à représenter correctement les acronymes dans une transcription.

Validation d'une ressource de mots pour des modèles vocaux de grande taille et des modèles de nouvelle génération

En particulier lorsque vous ajoutez un corpus à un modèle de langue personnalisé ou que vous ajoutez plusieurs mots personnalisés à la fois, assurez-vous d'effectuer la validation suivante :

  • Recherchez les erreurs typographiques et les autres types d'erreur dans les corpus. En particulier lorsque vous ajoutez des corpus, qui peuvent être volumineux, il est facile de faire des fautes. Assurez-vous d'examiner le corpus de près avant de l'ajouter au modèle.
  • Recherchez les erreurs typographiques et les autres types d'erreur dans les mots personnalisés. Assurez-vous de passer en revue les mots personnalisés que vous ajoutez directement à un modèle.
  • Vérifiez les prononciations possibles. Le service tente de générer des prononciations pour des mots personnalisés pour lesquels aucune prononciation n'est spécifiée. Dans la plupart des cas, ces prononciations sont suffisantes. Mais le service ne peut pas générer une prononciation pour tous les mots, par conséquent, vous devez passer en revue la définition du mot pour vous assurer qu'elle est complète et valide. Il est également recommandé de réviser les prononciations des mots avec des orthographes particulières ou difficiles à prononcer, ainsi que pour les acronymes et les termes techniques.

Les erreurs typographiques ont pour conséquence involontaire de modifier un modèle personnalisé en des mots inexistants, tout comme les balises HTML mal formées qui sont laissées dans un fichier de corpus.

Pour valider et, si nécessaire, corriger un mot personnalisé pour un modèle personnalisé, utilisez les méthodes suivantes :