2016-05-01 8 views
12

私はSystem.Speech.Recognitionの名前空間を使用して音声文を認識しています。私はレコグナイザが提供する代替の文章と、その信頼度スコアに興味があります。 [RecognitionResult.Alternates][1]プロパティのドキュメントから:System.Speech.Recognitionの代替一致と信頼値

認識のAlternates自信 プロパティの値によって順序付けられます。指定されたフレーズの信頼値は、フレーズが入力と一致する可能性があることを示します( )。 最高信頼値を持つ語句は、 入力と最もよく一致する語句です。

各信頼度の値は個別に評価する必要があり、他の代替の信頼度の値を参照しないでください。

しかし、私は認識されたテキストを自信を持って印刷し、自信を持って代替マッチを印刷すると、私は理解できない2つの特性に直面しています。最初のものは認識されたテキストと一致します)、そして私にとって大きな問題である第2のものは、認識されたテキストが最高のスコアを持つ代替物ではなく、私が上で引用したドキュメンテーションと矛盾しているようです。

マイSpeechRecognizedイベントハンドラ内からの(不完全な)コードサンプル:

Console.WriteLine("Recognized text = {0}, score = {1}", e.Result.Text, e.Result.Confidence); 
// Display the recognition alternates for the result. 
foreach (RecognizedPhrase phrase in e.Result.Alternates) 
{ 
    Console.WriteLine(" alt({0}) {1}", phrase.Confidence, phrase.Text); 
} 

と対応する出力:

Recognized text = She had said that fit and Gracie Wachtel are all year, score = 0.287724 
alt(0.287724) She had said that fit and Gracie Wachtel are all year 
alt(0.287724) she had said that fit and gracie wachtel are all year 
alt(0.2955212) she had said that faith and gracie wachtel are all year 
alt(0.287133) she had said that fit and gracie Wachtell are all year 
alt(0.1644379) she had said that fit and gracie wachtel earlier 
alt(0.3254312) jihad said that fit and gracie wachtel are all year 
alt(0.2726361) she had said that fit and gracie wachtel are only are 
alt(0.2867217) she had said that fail and gracie wachtel are all year 
alt(0.2565451) she had said that fit and gracie watchful are all year 
alt(0.2854537) she had said that fate and gracie wachtel are all year 

EDIT信頼スコアの意味を明確にし、にするには私の結果が文書と矛盾する理由を説明してください。RecognizedPhrase.Confidence Propertyの文書から次の情報を参照してください。大胆な部分は私の追加です。

信頼度スコアは、 というフレーズが正しく認識された絶対的な可能性を示していません。代わりに、信頼スコアは、与えられた入力に対して複数の認識 の代替の相対精度を比較するための メカニズムを提供します。これにより、最も正確な認識結果である が返されやすくなります。たとえば、認識されたフレーズが 信頼スコア0.8の場合、フレーズが入力に対して正しい一致である可能性が80% であることを意味するものではありません。これは、 というフレーズが、信頼スコアが0.8未満の他の の結果よりも、入力の正しい一致である可能性が高いことを意味します。

同じ 認識操作または以前の同じ入力の認識から比較すると、 の代替結果が表示されない限り、信頼性スコアは意味を持ちません。 値は、 によって返された代替候補語句のランク付けに使用されます。これは、RecognitionResultオブジェクトの代替プロパティです。

信頼値はそれぞれであり、各認識エンジンに固有です。 2つの異なる認識エンジンによって返された信頼値は、 を有意義に比較できません。

音声認識エンジンは、背景干渉、 黙音の音声、または予期しない単語や単語シーケンスを含むさまざまな理由により、 音声入力に低い信頼スコアを割り当てることがあります。 アプリケーションでSpeechRecognitionEngineインスタンスを使用している場合は、 の音声入力が受け入れられる信頼レベルを変更するか、UpdateRecognizerSettingメソッドのいずれかで が拒否されます。 SpeechRecognizerによって管理される共有認識装置の信頼度は、 であり、ユーザープロファイルに関連付けられてWindowsレジストリに格納されます。 です。 アプリケーションは、共有認識装置のプロパティーの のレジストリに変更を書き込むべきではありません。

認識結果オブジェクトの代替デバイスプロパティは、認識器への入力のため 可能一致するそれぞれがRecognizedPhraseオブジェクトの 順序付けられたコレクションを含みます。 代替番号は で、高い順に並べられています。です。

答えて

2

私はあなたに一般的な答えを与えることができます(マイクロソフトの音声認識のコードはわかりません) 認識は多くのアルゴリズムを使用して最良の解決策にアプローチします。完璧な世界では、各アルゴリズムは、変換されたセンテンスの信頼スコアを重み付けできるべきである。実際にはほとんど例外ではありません。

各アルゴリズムには欠陥があり、その変換に対する信頼に正確な影響を与えることは本当の頭痛になる可能性があります。

グローバル文信頼度は、その各部分の算術的な組み合わせです。一般的に内部信頼スキーマよりもはるかに単純です。

固有名詞の認識のように、アルゴリズムを使用しても、必ずしも明確な信頼性(特に単一の独立した文章)が変更されるとは限りません。

信頼度は多くのレベル(音声、言葉、文構造...)で測定されます。一貫性のない文章構造で完全な音声認識の信頼はどのようになりますか?

リストの一番上にある認識率を上げるソートアルゴリズムは、一般に信頼度を変更するのではなく、ソート/除外のみを変更します。

ドキュメントが正しいので、信頼性を交互に比較することはできません。

信頼の潜在的な使用法(著者が私たちに言いたい事実を除きます:非常に複雑で近似した技術を簡単に使用することができます)。ほとんどなし。信頼度がこのしきい値に達していない場合を除き、おそらく低すぎる信頼水準(特定のしきい値以下)を排除できます。

+0

これは私がドキュメントから理解するものではありません。私が理解していることは、AとBの2つの文が与えられていると、Aの信頼とBの信頼を比較することはできません。しかし、Aの信頼を自分自身で比較できなければなりません。私の質問への編集を参照してください。 –

+0

"各信頼値は個別に評価され、他の代替の信頼値を参照する必要はありません。私の英語は完璧ではありませんが、文は比較的明確です。また、ドキュメントは、更新されたレコグナイザ設定を使用して、認識の同じテキスト結果間で信頼関係を比較することができるとも述べています。 –

2

ここでの信頼性プロパティは、内部モデルの出力値 "likelihood"です(通常、言語モデリングはHidden Markov ModelsまたはMFCCなどの「人工知能数学モデル」を使用して行われます)。

しかし、音声認識SDKは、モデルの出力を確認し、その他の追加パラメータを検証することに基づいて、異なる信頼度に基づいてリストを表示します。このSDKでは、文法上の規則が整えられています。

+0

はい私は自信の背後にある意味を認識していますが、認識された出力がどのように最も高い信頼度を持つものではないかを説明していません。 –

関連する問題