使用Google Ngrams训练语言模型

时间:2016-07-08 10:39:46

标签: python nlp nltk n-gram

我希望找到给定其前一组单词的单词的条件概率。我计划使用Google N-grams。然而,由于它是如此庞大的资源,我不认为在我的电脑上进行计算是可行的。 (处理所有N-gram,训练语言模型)。

那么有什么方法可以使用Google Ngrams训练语言模型吗? (即使python NLTK库不再支持ngram语言模型) 注意 - 我知道语言模型可以使用ngrams进行训练,但考虑到Google N克的大小,如何使用特定的Google ngrams训练语言模型?

1 个答案:

答案 0 :(得分:2)

你应该看看UC Berkley的这个光滑的代码库:https://github.com/adampauls/berkeleylm

examples/文件夹中,您会找到一个bash脚本make-binary-from-google.sh,它可以从原始Google N-Grams创建一个紧凑的语言模型。生成的LM实现了愚蠢的退避,并利用了以下文章中描述的快速有效的数据结构:http://nlp.cs.berkeley.edu/pubs/Pauls-Klein_2011_LM_paper.pdf

如果您只对最终训练过的LM感兴趣,可以从Berkley托管的网站下载各种语言:http://tomato.banatao.berkeley.edu:8080/berkeleylm_binaries/