Grammar.Weight プロパティ
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
Grammar オブジェクトの重さの値を取得または設定します。
public:
property float Weight { float get(); void set(float value); };
public float Weight { get; set; }
member this.Weight : single with get, set
Public Property Weight As Single
プロパティ値
Weight
プロパティは浮動小数点値を返し、認識エンジンのインスタンスが音声入力を処理するときに文法に割り当てる相対的な重みを示します。 範囲は 0.0 から 1.0 までです。 既定値は 1.0 です。
例
次の例では、2 つの Grammar オブジェクト (1 つは数字、1 つは分数) を作成します。 オブジェクトには Grammar 、名前と相対的な重みと優先順位が割り当てられ、インプロセス音声認識エンジンによって読み込まれます。 CreateFractionsGrammar
メソッドCreateDigitsGrammar
、およびrecognizer_SpeechRecognized
メソッドはここには示されていません。
// Create a Grammar for recognizing numeric digits.
Grammar digitsGrammar = CreateDigitsGrammar();
digitsGrammar.Name = "Digits Grammar";
digitsGrammar.Priority = 2;
digitsGrammar.Weight = 0.6f;
// Create a Grammar for recognizing fractions.
Grammar fractionsGrammar = CreateFractionsGrammar();
fractionsGrammar.Name = "Fractions Grammar";
fractionsGrammar.Priority = 1;
fractionsGrammar.Weight = 1f;
// Create an in-process speech recognizer.
SpeechRecognitionEngine recognizer = new SpeechRecognitionEngine();
recognizer.SpeechRecognized +=
new EventHandler<SpeechRecognizedEventArgs>(
recognizer_SpeechRecognized);
// Load the digits and fractions Grammar objects.
recognizer.LoadGrammar(digitsGrammar);
recognizer.LoadGrammar(fractionsGrammar);
// Start recognition.
recognizer.SetInputToDefaultAudioDevice();
recognizer.RecognizeAsync(RecognizeMode.Multiple);
注釈
認識エンジンによる Weight の使用の複雑さのため、特定の文法のパフォーマンスへの影響は Priority、 .
音声認識は重み付けされたシステムです。 文法の重み、文法内の代替候補に定義された重み、および音声モデルによって定義される確率の組み合わせに基づいて、可能なすべての認識パスが評価されます。 音声認識エンジンでは、これらの重みと確率の組み合わせを使用して、潜在的な代替認識をランク付けします。 重みが高い文法は、重みが低い文法よりも認識代替のランク付けに貢献します。
音声認識エンジンに対する Weight プロパティの影響は、認識エンジンの実装によって異なります。 このプロパティは Weight 、アプリケーションの音声認識の精度を調整するために使用できますが、特定の認識環境の診断調査を制御した後、および使用中の認識エンジンに関する完全な情報を使用した場合にのみ使用する必要があります。