简体   繁体   中英

Does System.Speech.Recognition make use of “speech training”?

I have some simple code from the System.Speech.Recognition that works fine:

using (var recognizer = new SpeechRecognitionEngine(new CultureInfo("en-US")))
{
    recognizer.LoadGrammar(new DictationGrammar());
    recognizer.SpeechRecognized += recognizer_SpeechRecognized;
    recognizer.SetInputToDefaultAudioDevice();
    recognizer.RecognizeAsync(RecognizeMode.Multiple);
}

private void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e)
{
    textBox1.Text = "Recognized text: " + e.Result.Text;
}

When using Windows 7, and I do the speech training at "Control Panel" -> "Speech Recognition" -> "Train your computer to better understand you" .

Does my program automatically utilize any training that has been done? Are the training benefits based by user or by machine? Can these speech "profiles" be moved (easily)?

Yes, training (particularly for dictation) is useful. Accuracy can improve by 20-50% with training. (This is especially true if the user has an accent.)

The training benefits are per user.

Microsoft has a tool that copies speech profiles, but it's built for an older version of the SR engine (XP-era), and as far as I know, nobody at Microsoft is willing to either update it or vouch for it on newer SR engines. If you want to try it, Bing for "Speech Profile Manager", and it will pop right up.

是的,似乎虽然可能没有必要对它进行培训,但可以这样做: 这个网站这个网站

I think when you are using the Dictation grammar, training would be helpful. If you are using a more limited application grammar, training would be less valuable.

Keep in mind, one of the key differences between the Windows client speech recognition APIs (System.Speech) and the server speech recognition APIs (Microsoft.speech) is that the server APIs are intended to be multiuser and cannot be trained (think about voice automated phone systems, you can't train for every caller). This SO question may be helpful if you are curious - What is the difference between System.Speech.Recognition and Microsoft.Speech.Recognition?

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM