RecognizedPhrase.Confidence Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene un valor, asignado por el reconocedor, que representa la probabilidad de coincidencia de RecognizedPhrase con una entrada determinada.
public:
property float Confidence { float get(); };
public float Confidence { get; }
member this.Confidence : single
Public ReadOnly Property Confidence As Single
Valor de propiedad
Una medida relativa de la certeza de reconocimiento correcto de una frase. El valor está entre 0,0 y 1,0, de poca a mucha confianza, respectivamente.
Ejemplos
En el ejemplo siguiente se muestra un controlador para un SpeechRecognitionEngine.SpeechRecognizedevento , SpeechRecognizer.SpeechRecognizedo Grammar.SpeechRecognized . En el ejemplo se muestra información asociada al RecognitionResult objeto , algunas de las cuales se derivan de RecognizedPhrase. El controlador muestra las puntuaciones de confianza de una frase reconocida, así como para las alternativas de reconocimiento.
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);
}
}
Comentarios
Las puntuaciones de confianza no indican la probabilidad absoluta de que una frase se haya reconocido correctamente. En su lugar, las puntuaciones de confianza proporcionan un mecanismo para comparar la precisión relativa de varias alternativas de reconocimiento para una entrada determinada. Esto facilita la devolución del resultado de reconocimiento más preciso. Por ejemplo, si una frase reconocida tiene una puntuación de confianza de 0,8, esto no significa que la frase tenga una probabilidad del 80 % de ser la coincidencia correcta para la entrada. Significa que la frase es más probable que sea la coincidencia correcta para la entrada que otros resultados que tienen puntuaciones de confianza inferiores a 0,8.
Una puntuación de confianza por sí sola no es significativa a menos que tenga resultados alternativos con los que comparar, ya sea desde la misma operación de reconocimiento o desde reconocimientos anteriores de la misma entrada. Los valores se usan para clasificar frases candidatas alternativas devueltas por la Alternates propiedad en RecognitionResult objetos.
Los valores de confianza son relativos y únicos para cada motor de reconocimiento. Los valores de confianza devueltos por dos motores de reconocimiento diferentes no se pueden comparar significativamente.
Un motor de reconocimiento de voz puede asignar una puntuación de confianza baja a la entrada hablada por diversos motivos, como interferencias en segundo plano, voz inarticulada o palabras o secuencias de palabras imprevistas. Si la aplicación usa una SpeechRecognitionEngine instancia, puede modificar el nivel de confianza en el que se acepta o rechaza la entrada de voz con uno de los UpdateRecognizerSetting métodos. Los umbrales de confianza para el reconocedor compartido, administrado por SpeechRecognizer, están asociados a un perfil de usuario y se almacenan en el Registro de Windows. Las aplicaciones no deben escribir cambios en el Registro para las propiedades del reconocedor compartido.
La Alternates propiedad del RecognitionResult objeto contiene una colección ordenada de RecognizedPhrase objetos, cada uno de los cuales es una posible coincidencia para la entrada al reconocedor. Las alternativas se ordenan de mayor a menor confianza.