我想将语音识别集成到我的Android应用程序中。
我知道google提供了两种语言模型(用于口述的免费形式和用于简短短语的网络搜索)。
然而,我的应用程序将有一个有限数量的可能单词(可能是几千个)。是否有可能指定词汇表;将其限制在这些单词中,以期获得更准确的结果?
我的直接想法是使用网络搜索语言模型,然后根据我的词汇表检查结果。
任何想法都很感谢。
发布于 2010-10-14 20:54:09
我认为你的直觉是正确的,你已经回答了你自己的问题。
google提供的内置语音识别仅支持听写和搜索语言模型。请参阅http://developer.android.com/reference/android/speech/RecognizerIntent.html
您可以使用这些识别器模型获取结果,然后对结果进行分类或过滤,以找到最符合您有限词汇量的结果。有不同的技术可以做到这一点,它们可以从简单的解析到复杂的统计模型。
我见过的唯一另一种选择是在服务器上使用其他语音识别,该服务器可以接受您的专用语言模型。虽然这是昂贵和复杂的,并使用商业语音公司,如VLingo或龙或微软的必应。
发布于 2010-12-28 06:19:32
你可以使用像Voxforge这样的开源模型,也可以使用像Lumenvox这样的廉价模型。其中一些已经移植到了android上。我忘了是谁干的。
发布于 2011-10-05 09:37:59
我之前回答了几乎相同的问题-请检查此处:Building openears compatible language model
还有这里:
通常,您需要非常大的文本语料库来生成有用的语言模型。
如果你只有少量的训练数据,你的语言模型将会过度拟合,这意味着它不会泛化。
https://stackoverflow.com/questions/3932583
复制相似问题