C# 大名单的语音识别

C# 大名单的语音识别,c#,speech-recognition,speech-to-text,speech,C#,Speech Recognition,Speech To Text,Speech,我们在C#net中使用了一种解决方案,在这种解决方案中,某人可以先拨打电话号码,然后说出某人的姓名。然后在我们网站上的客人登记处输入姓名。我们使用一个XML字典文件,其中包含从美国人口普查中获得的5000个名字和89000个姓氏。我们正在使用Microsoft.Speech.Recognition库(可能这就是问题所在) 我们的问题是,即使像约书亚·麦克丹尼尔这样相对简单的名字,我们的失败率也在30%左右。性能(速度方面)很好,只是没有抓住好的部分名称 现在,我明白了,说话人姓名的质量最终将决定

我们在C#net中使用了一种解决方案,在这种解决方案中,某人可以先拨打电话号码,然后说出某人的姓名。然后在我们网站上的客人登记处输入姓名。我们使用一个XML字典文件,其中包含从美国人口普查中获得的5000个名字和89000个姓氏。我们正在使用Microsoft.Speech.Recognition库(可能这就是问题所在)

我们的问题是,即使像约书亚·麦克丹尼尔这样相对简单的名字,我们的失败率也在30%左右。性能(速度方面)很好,只是没有抓住好的部分名称

现在,我明白了,说话人姓名的质量最终将决定系统的性能,对不起,这是双关语,但我们希望在“实验室”条件下,发音完美,没有口音,接近99%,然后称之为好。但是,即使在同一个人说话、同一个名字、同一部电话、同一个环境下进行了几次试验之后,我们的失败率也达到了25%


我的问题是:有没有人有更好的方法去追求这个?我们考虑过可能尝试使用API,这样匹配将更加相关和最新。

目前的技术状态是很难识别名称,而且名称列表很大。您可以从电话簿(500个条目)中识别出高质量的姓名,但对于成千上万的人来说,这是非常困难的。语音识别引擎当然不是为此而设计的,特别是像System.Speech这样的离线引擎

使用在线系统,比如使用高级DNN声学模型和更大的词汇表,您可能会得到更好的结果

例如,有很多大公司都建立在识别大型名单的能力之上
为此使用了专利技术。你可能会考虑使用开源引擎来构建类似的东西,但无论如何这都是一项很大的任务。

我做了一些MS语音API的实验。它对句子很有用,因为它使用意图,所以它会看第一个单词,猜一猜,然后转到下一个单词。SDK中的示例显示,为了一个简短的句子,它需要经过多次迭代。不幸的是,它对名字根本不起作用。我们决定取消这个功能。我们听了几个.wav文件,作为人类,我们甚至不知道他们在说什么。因此,我们认为,即使我们可以让它在实验室条件下100%的时间工作,它也会下降到目前的70-80%,那么何必费心呢。@Nikolay Shmyrev“你可以从电话簿(500个条目)中识别出高质量的名字”-哪种软件、API或库可以做到这一点?我正在做一些研究,找不到一个可以与自定义列表相匹配的列表。任何支持列表预先规范的现代列表-at&t,ms project oxford。来自开源解决方案Kaldi。