我想创建一个包含近50000个单词的ARPA语言模型文件。我无法通过将我的文本文件传递给CMU Language Tool来生成语言模型。是否有其他链接可以获取这么多单词的语言模型?
我想创建一个包含近50000个单词的ARPA语言模型文件。我无法通过将我的文本文件传递给CMU Language Tool来生成语言模型。是否有其他链接可以获取这么多单词的语言模型?
我认为我应该回答这个问题,因为它有一些赞同票,尽管根据克里斯蒂娜的其他问题,我不认为这会是她可以使用的答案,因为一个50,000字的语言模型几乎肯定不会有合适的单词错误率或识别速度(甚至长时间工作)与目前使用这种语言模型格式的iOS应用程序识别系统相容,这归因于硬件限制。 我觉得记录它很值得,因为我认为它可能对使用保留该大小词汇的平台的其他人有帮助,并且也可能成为未来设备型号的可能性。
我不知道是否有像Sphinx Knowledge Base Tool一样的基于Web的工具,可以混合50,000字的纯文本语料库并返回ARPA语言模型。 但是,您可以通过以下步骤获得已经完整的64,000字DMP语言模型(可以在Sphinx命令行或其他平台实现中与ARPA .lm文件以相同方式使用),如下所示:
在该文件夹中有一个名为language_model.arpaformat.DMP的文件,这将成为您的语言模型。
https://cmusphinx.svn.sourceforge.net/svnroot/cmusphinx/trunk/pocketsphinx/model/lm/en_US/cmu07a.dic
将 cmu07a.dic 的内容转换为全部大写字母。
如果您愿意,还可以通过删除语料库 language_model.vocabulary 中找不到的任何单词来缩小发音字典的大小(这将是一个正则表达式问题)。 这些文件旨在与 Sphinx 的英语语言声学模型之一一起使用。
如果使用 50000 个单词的英语语言模型的想法是由进行某种广义大词汇语音识别的需要而不是使用非常特定的 50000 个单词(例如医学词典或 50000 条联系人列表之类的专业内容),那么如果硬件能够处理,该方法应该会产生这些结果。 有些 Sphinx 或 Pocketsphinx 设置可能需要更改以优化对此规模模型的搜索。
你的训练语料库有多大?如果只有50000个单词,那就太小了。
一般来说,你可以使用 CMU 或 HTK 的工具包。
HTK语音识别工具包的详细文档在这里: http://htk.eng.cam.ac.uk/ftp/software/htkbook_html.tar.gz
这里还有CMU的SLM工具包描述: http://www.speech.cs.cmu.edu/SLM/toolkit_documentation.html
另请参阅: 构建与openears兼容的语言模型
你可以采用更通用的语言模型,基于更大的语料库,然后将你的较小语言模型与之插值。例如,后退(back-off)语言模型...但这不是一个简单的任务。
参见: http://en.wikipedia.org/wiki/Katz的后退(back-off)模型