C# Windows语音引擎的声学训练

C# Windows语音引擎的声学训练,c#,windows,speech,C#,Windows,Speech,我一直在努力提高我的代码的性能,该代码使用Windows语音API专门用于一些必不可少的命令,例如打开文件、向上滚动、向下滚动等 虽然大多数命令似乎都能被很好地识别,但是当有类似发音的字符如B、D、G、p时,代码的性能很差。经过一些严格的搜索,我发现也许我们可以向语法生成器添加语义,如下所示,也就是说,我们可能会为B提供许多语义值相同且与D相似的歧义情况,但这可能不是一个好主意。另一种方法是声学训练,通过使用切换到或退出训练模式的ISPRecograiner2::SetTrainingState

我一直在努力提高我的代码的性能,该代码使用Windows语音API专门用于一些必不可少的命令,例如打开文件、向上滚动、向下滚动等

虽然大多数命令似乎都能被很好地识别,但是当有类似发音的字符如B、D、G、p时,代码的性能很差。经过一些严格的搜索,我发现也许我们可以向语法生成器添加语义,如下所示,也就是说,我们可能会为B提供许多语义值相同且与D相似的歧义情况,但这可能不是一个好主意。另一种方法是声学训练,通过使用切换到或退出训练模式的
ISPRecograiner2::SetTrainingState打开训练模式

Choices digits = new Choices();  
GrammarBuilder digitValues = new GrammarBuilder();  
SemanticResultValue temp = new SemanticResultValue("B", B);    
digits.Add(temp);    
digitValues.Append(temp);    

temp = new SemanticResultValue("Bee", B);     
digits.Add(temp);     
digitValues.Append(temp);      

temp = new SemanticResultValue("Ba", B);     
digits.Add(temp);    
digitValues.Append(temp);
请提出一些解决方案,以便解决发音相似的单词之间的歧义。另外,请建议完成声学模型的培训。谢谢