RecognizedPhrase.Confidence Propriedade
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Obtém um valor, atribuído pelo identificador, que representa a probabilidade de que um RecognizedPhrase corresponda a uma determinada entrada.
public:
property float Confidence { float get(); };
public float Confidence { get; }
member this.Confidence : single
Public ReadOnly Property Confidence As Single
Valor da propriedade
Uma medida relativa de certeza do reconhecimento correto de uma frase. O valor é de 0,0 a 1,0 para confiança baixa a alta, respectivamente.
Exemplos
O exemplo a seguir mostra um manipulador para um SpeechRecognitionEngine.SpeechRecognizedevento , SpeechRecognizer.SpeechRecognizedou Grammar.SpeechRecognized . O exemplo mostra informações associadas ao RecognitionResult objeto , algumas das quais são derivadas de RecognizedPhrase. O manipulador exibe pontuações de confiança para uma frase reconhecida, bem como para alternativas de reconhecimento.
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);
}
}
Comentários
As pontuações de confiança não indicam a probabilidade absoluta de que uma frase tenha sido reconhecida corretamente. Em vez disso, as pontuações de confiança fornecem um mecanismo para comparar a precisão relativa de várias alternativas de reconhecimento para uma determinada entrada. Isso facilita o retorno do resultado de reconhecimento mais preciso. Por exemplo, se uma frase reconhecida tiver uma pontuação de confiança de 0,8, isso não significa que a frase tenha 80% de chance de ser a correspondência correta para a entrada. Isso significa que é mais provável que a frase seja a correspondência correta para a entrada do que outros resultados que tenham pontuações de confiança inferiores a 0,8.
Uma pontuação de confiança por si só não é significativa, a menos que você tenha resultados alternativos para comparar, seja da mesma operação de reconhecimento ou de reconhecimentos anteriores da mesma entrada. Os valores são usados para classificar frases candidatas alternativas retornadas pela Alternates propriedade em RecognitionResult objetos .
Os valores de confiança são relativos e exclusivos para cada mecanismo de reconhecimento. Os valores de confiança retornados por dois mecanismos de reconhecimento diferentes não podem ser comparados significativamente.
Um mecanismo de reconhecimento de fala pode atribuir uma pontuação de baixa confiança à entrada falada por vários motivos, incluindo interferência em segundo plano, fala inarticulada ou palavras ou sequências de palavras inesperadas. Se o aplicativo estiver usando uma SpeechRecognitionEngine instância, você poderá modificar o nível de confiança no qual a entrada de fala é aceita ou rejeitada com um dos UpdateRecognizerSetting métodos. Os limites de confiança para o reconhecedor compartilhado, gerenciados pelo SpeechRecognizer, são associados a um perfil de usuário e armazenados no Registro do Windows. Os aplicativos não devem gravar alterações no registro para as propriedades do reconhecedor compartilhado.
A Alternates propriedade do RecognitionResult objeto contém uma coleção ordenada de RecognizedPhrase objetos , cada um deles é uma possível correspondência para a entrada para o reconhecedor. As alternativas são ordenadas da confiança mais alta para a mais baixa.