首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >基于SRILM的语言模型

基于SRILM的语言模型
EN

Stack Overflow用户
提问于 2016-03-31 16:17:57
回答 1查看 1.7K关注 0票数 1

我正在尝试使用SRILM构建一个语言模型。我有一个短语列表,我使用以下方法创建模型:

代码语言:javascript
复制
./ngram-count -text corpus.txt -order 3 -ukndiscount -interpolate -unk -lm corpus.lm

在此之后,我试着做一些例子,看看不同短语的概率,结果发现日志概率为-0.9。

问题是在训练中有一些单词具有较低的日志概率。例如,有5个"abatantuono“,其日志概率为-4.8。

我认为这很奇怪,因为一个短语<s> <unk> </s><s> abatantuono </s>更有可能,而且在训练集中,3克<s> abatantuono </s>也出现了!

在这里可以看到:

代码语言:javascript
复制
 % ./ngram -lm corpus.lm -ppl ../../../corpus.txt.test -debug 2 -unk
 reading 52147 1-grams
 reading 316818 2-grams
 reading 91463 3-grams
 abatantuono
     p( abatantuono | <s> )     = [2gram] 1.6643e-05 [ -4.77877 ]
     p( </s> | abatantuono ...)     = [3gram] 0.717486 [ -0.144186 ]
 1 sentences, 1 words, 0 OOVs
 0 zeroprobs, logprob= -4.92296 ppl= 289.386 ppl1= 83744.3

 abatantonno
     p( <unk> | <s> )   = [1gram] 0.00700236 [ -2.15476 ]
     p( </s> | <unk> ...)   = [1gram] 0.112416 [ -0.949172 ]
 1 sentences, 1 words, 0 OOVs
 0 zeroprobs, logprob= -3.10393 ppl= 35.6422 ppl1= 1270.36

 file ../../../corpus.txt.test: 2 sentences, 2 words, 0 OOVs
 0 zeroprobs, logprob= -8.02688 ppl= 101.56 ppl1= 10314.3

你觉得问题会是什么?

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-04-02 03:40:13

这是SRILM的一个标记问题(见肯尼思·海菲尔德的论文 -第30页的脚注和他关于SRILM的网站注释)。与训练数据中所见的稀有词相比,质量分配给未知单词的方法可以给它们分配更高的概率。您可以查看KenLM包,它只有修改的Kneser的实现(通常比Kneser平滑的性能要好),但是对未知单词的大量分配可以防止这种情况发生。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36338668

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档