Utilisation de grammaires avec des modèles de langue personnalisés
Le service IBM Watson® Speech to Text prend en charge l'utilisation de grammaires avec des modèles de langue personnalisés. Vous pouvez ajouter des grammaires à un modèle de langue personnalisé et les utiliser pour la reconnaissance vocale. Les grammaires limitent l'ensemble d'expressions reconnaissables par le service dans les données audio.
Une grammaire utilise une spécification linguistique formelle pour définir un ensemble de règles de production pour transcrire les chaînes. Ces règles spécifient comment former des chaînes valides à partir de l'alphabet de la langue concernée. Lorsque vous appliquez une grammaire à la reconnaissance vocale, le service ne peut renvoyer qu'une ou plusieurs expressions générées par la grammaire.
Par exemple, lorsque vous devez reconnaître des mots ou des expressions spécifiques, par exemple yes ou no, des lettres ou des nombres individuels, ou encore une liste de noms, l'utilisation de grammaires peut être plus efficace qu'examiner des transcriptions ou d'autres propositions de mots. De plus, en limitant l'espace de recherche aux chaînes valides, le service peut délivrer des résultats plus rapides et plus précis.
Lorsque vous utilisez un modèle de langue personnalisé et une grammaire pour la reconnaissance vocale, le service peut renvoyer une expression valide de la grammaire ou un résultat vide. Si le résultat n'est pas vide, le service inclut une cote de confiance avec la transcription finale, comme pour toutes les demandes de reconnaissance. Pour les grammaires, cette cote indique la probabilité de correspondance de la réponse par rapport à la grammaire. La possibilité de résultats positifs erronés est toujours possible, notamment pour les grammaires simples, par conséquent vous devez toujours considérer le niveau de confiance des résultats du service lorsque vous évaluez sa réponse.
Pour plus d'informations sur les langues et les modèles qui prennent en charge les grammaires et leur niveau de prise en charge (généralement disponible ou bêta), voir Prise en charge de langue pour la personnalisation.
Formats de grammaire pris en charge
Le service Speech to Text prend en charge les grammaires définies aux formats standard suivants :
- Augmented Backus-Naur Form (ABNF) - ce format utilise une représentation plain-text similaire à la grammaire BNF classique. Le type de média correspondant à ce format est
application/srgs
. - Format XML - ce format utilise des éléments XML pour représenter la grammaire. Le type de média correspondant à ce format est
application/srgs+xml
.
Ces deux formats de grammaire ont la puissance expressive d'une grammaire hors-contexte (CFG). Cependant, le service ne peut décoder que des grammaires régulières de Type 3 dans la hiérarchie de Chomsky. Les grammaires de ce type représentent des automates finis.
Pour obtenir des informations générales sur les grammaires, voir les pages Wikipedia suivantes :
Spécification SRGS (Speech Recognition Grammar Specification)
Le service Speech to Text prend en charge les grammaires définies par la version 1.0 de la spécification de la grammaire de reconnaissance vocale du W3C. Cette spécification fournit des informations détaillées sur les formats pris en charge et indique comment définir une grammaire. Pour plus d'informations sur les types de supports pris en charge, voir l'annexe G. Types de supports et suffixes de fichiers de la spécification.
Actuellement, le service ne prend pas en charge toutes les fonctions de la spécification SRGS. Plus précisément, il ne prend pas en charge les fonctions décrites dans les sections suivantes de la spécification :
- Section 1.4 Interprétation sémantique. IBM travaille à la prise en charge de cette fonctionnalité dans une prochaine version du service.
- Section 1.5 Grammaires intégrées. IBM travaille à la prise en charge de cette fonctionnalité dans une prochaine version du service.
- Section 2.2.2 Référence externe par URI. Le service ne prend en charge que les références locales, comme décrit dans la section 2.2.1 Références locales. En d'autres termes, une grammaire doit être autonome.
- Section 2.2.3 Règles spéciales.
- Section 2.2.4 Référencement des documents N-gram(Informative).
- Section 2.7 Langue. Le service ne prend pas en charge le changement de langue. Il ne prend en charge qu'une langue globale par grammaire.
Les mots de la grammaire doivent être codés en UTF-8 (ASCII est un sous-ensemble du codage UTF-8). L'utilisation d'un autre codage peut provoquer des erreurs lors de la compilation de la grammaire ou des résultats imprévisibles lors du décodage. Le service ignore le codage spécifié dans l'en-tête de la grammaire.