Grammar.Weight Eigenschap
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Hiermee wordt de gewichtswaarde van een Grammar object opgehaald of ingesteld.
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
Waarde van eigenschap
De Weight eigenschap retourneert een drijvende-kommawaarde die aangeeft welk relatieve gewicht een instantie van de herkenningsengine moet toewijzen aan de grammatica bij het verwerken van spraakinvoer. Het bereik is van 0,0 tot 1,0 inclusief. De standaardwaarde is 1.0.
Voorbeelden
In het volgende voorbeeld worden twee Grammar objecten gemaakt, één voor cijfers en één voor breuken. De Grammar objecten worden toegewezen namen en relatieve gewichten en prioriteiten, en geladen door een in-process spraakherkenning. De CreateDigitsGrammar, CreateFractionsGrammaren recognizer_SpeechRecognized methoden worden hier niet weergegeven.
// 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);
Opmerkingen
Vanwege de complexiteit van het gebruik van gewicht van een herkenningsengine , is het effect ervan op de prestaties van een bepaalde grammatica niet zo voorspelbaar als die van Priority.
Spraakherkenning is een gewogen systeem. Het evalueert alle mogelijke herkenningspaden op basis van een combinatie van het gewicht van de grammatica, de gewichten die zijn gedefinieerd voor alternatieven binnen de grammatica en de waarschijnlijkheden die zijn gedefinieerd door spraakmodellen. De spraakherkenningsengine maakt gebruik van de combinatie van deze gewichten en waarschijnlijkheden om mogelijke alternatieve herkenning te rangschikken. Grammatica's met een hoger gewicht dragen meer bij aan de rangschikking van alternatieven voor herkenning dan grammatica met lagere gewichten.
Het effect van de Weight eigenschap op een spraakherkenning is afhankelijk van de implementatie van de recognizer. Hoewel de Weight eigenschap kan worden gebruikt om de nauwkeurigheid van spraakherkenning voor een toepassing af te stemmen, moet deze pas worden gebruikt na gecontroleerde diagnostische studie van een bepaalde herkenningsomgeving en met volledige informatie over de herkenningsengine die wordt gebruikt.