Поделиться через


RecognizedPhrase.Confidence Свойство

Определение

Возвращает присвоенное распознавателем значение, которое представляет вероятность того, что RecognizedPhrase соответствует заданным входным данным.

public:
 property float Confidence { float get(); };
public float Confidence { get; }
member this.Confidence : single
Public ReadOnly Property Confidence As Single

Значение свойства

Относительная мера достоверности правильного распознания фразы. Значение находится в диапазоне от 0,0 до 1,0 (низкая и высокая достоверность соответственно).

Примеры

В следующем примере показан обработчик для SpeechRecognitionEngine.SpeechRecognizedсобытия , SpeechRecognizer.SpeechRecognizedили Grammar.SpeechRecognized . В примере показаны сведения, связанные с RecognitionResult объектом , некоторые из которых являются производными от RecognizedPhrase. Обработчик отображает оценки достоверности для распознанной фразы, а также для альтернативных вариантов распознавания.

void SpeechRecognizedHandler(object sender, SpeechRecognizedEventArgs e)  
{  
  if (e.Result == null) return;  

  // Add event handler code here.  

  // The following code illustrates some of the information available  
  // in the recognition result.  
  Console.WriteLine("Recognition result summary:");  
  Console.WriteLine(  
    "  Recognized phrase: {0}\n" +   
    "  Confidence score {1}\n" +   
    "  Grammar used: {2}\n",   
    e.Result.Text, e.Result.Confidence, e.Result.Grammar.Name);  

  // Display the semantic values in the recognition result.  
  Console.WriteLine("  Semantic results:");  
  foreach (KeyValuePair<String, SemanticValue> child in e.Result.Semantics)  
  {  
    Console.WriteLine("    The {0} city is {1}",  
      child.Key, child.Value.Value ?? "null");  
  }  
  Console.WriteLine();  

  // Display information about the words in the recognition result.  
  Console.WriteLine("  Word summary: ");  
  foreach (RecognizedWordUnit word in e.Result.Words)  
  {  
    Console.WriteLine(  
      "    Lexical form ({1})" +  
      " Pronunciation ({0})" +  
      " Display form ({2})",  
      word.Pronunciation, word.LexicalForm, word.DisplayAttributes);  
  }  

  // Display information about the audio in the recognition result.  
  Console.WriteLine("  Input audio summary:\n" +  
    "    Candidate Phrase at:       {0} mSec\n" +  
    "    Phrase Length:             {1} mSec\n" +  
    "    Input State Time:          {2}\n" +  
    "    Input Format:              {3}\n",  
    e.Result.Audio.AudioPosition,  
    e.Result.Audio.Duration,  
    e.Result.Audio.StartTime,  
    e.Result.Audio.Format.EncodingFormat);  

  // Display information about the alternate recognitions in the recognition result.  
  Console.WriteLine("  Alternate phrase collection:");  
  foreach (RecognizedPhrase phrase in e.Result.Alternates)  
  {  
    Console.WriteLine("    Phrase: " + phrase.Text);  
    Console.WriteLine("    Confidence score: " + phrase.Confidence);  
  }  
}  

Комментарии

Оценки достоверности не указывают на абсолютную вероятность правильного распознавания фразы. Вместо этого оценки достоверности предоставляют механизм для сравнения относительной точности нескольких альтернативных вариантов распознавания для заданных входных данных. Это упрощает возврат наиболее точного результата распознавания. Например, если распознаваемая фраза имеет оценку достоверности 0,8, это не означает, что она имеет 80 % шансов на правильное совпадение для входных данных. Это означает, что фраза, скорее всего, будет правильным совпадением для входных данных, чем другие результаты с оценкой достоверности менее 0,8.

Оценка достоверности сама по себе не имеет смысла, если у вас нет альтернативных результатов для сравнения либо из той же операции распознавания, либо из предыдущих распознаваний тех же входных данных. Значения используются для ранжирования альтернативных фраз-кандидатов, возвращаемых свойством AlternatesRecognitionResult объектов .

Значения достоверности являются относительными и уникальными для каждого модуля распознавания. Достоверность значений, возвращаемых двумя разными модулями распознавания, не может быть осмысленным сравнением.

Модуль распознавания речи может назначать низкую оценку достоверности для голосового ввода по различным причинам, включая фоновые помехи, нечленообразную речь или непредвиденные слова или последовательности слов. Если приложение использует SpeechRecognitionEngine экземпляр , вы можете изменить уровень достоверности, при котором речевой ввод принимается или отклоняется, с помощью одного из UpdateRecognizerSetting методов. Пороговые значения доверия для общего распознавателя, управляемого SpeechRecognizer, связаны с профилем пользователя и хранятся в реестре Windows. Приложения не должны записывать изменения в реестр для свойств общего распознавателя.

Свойство AlternatesRecognitionResult объекта содержит упорядоченную коллекцию RecognizedPhrase объектов , каждый из которых является возможным совпадением для входных данных распознавателя. Альтернативные варианты упорядочены от самой высокой к самой низкой достоверности.

Применяется к

См. также раздел