Nlp 如何解释Python NLTK二元似然比?

Nlp 如何解释Python NLTK二元似然比?,nlp,nltk,n-gram,Nlp,Nltk,N Gram,我试图找出如何正确解释nltk的“似然比”,给出下面的代码(取自此代码) 具有以下输出: [('game', 32.11075451975229), ('cap', 27.81891372457088), ('park', 23.509042621473505), ('games', 23.10503351305401), ("player's", 16.22787286342467), ('rightfully', 16.22787286342467), [...] 看看这个,看起

我试图找出如何正确解释
nltk
的“似然比”,给出下面的代码(取自此代码)

具有以下输出:

[('game', 32.11075451975229),
 ('cap', 27.81891372457088),
 ('park', 23.509042621473505),
 ('games', 23.10503351305401),
 ("player's", 16.22787286342467),
 ('rightfully', 16.22787286342467),
[...]
看看这个,看起来印在每个二元图旁边的似然比是

使用似然比对ngrams评分,如曼宁和舒茨 5.3.4。”

参见第22页中的:

似然比的一个优点是,它们具有清晰的直观性 口译。例如,bigram功能强大的计算机 e^(.5*82.96)=1.3*10^18倍的可能性,前提是 计算机更可能追随强大,而不是它的基本速度 如果发生这种情况,我会建议。这个数字比这个数字更容易解释 我们必须在a中查找的t测试或2测试的分数 桌子

我所困惑的是,如果我将上面提到的
nltk
代码与我自己的数据一起使用,那么“基本发生率”是多少。例如,可以安全地说,在当前数据集中,“游戏”出现在“棒球”旁边的可能性是标准英语平均使用量的32倍吗?或者,在同一组数据中,“游戏”更可能出现在“棒球”旁边,而不是出现在“棒球”旁边的其他单词


非常感谢您对更清晰的解释或示例的任何帮助/指导

nltk没有一个通用的英语语言使用语料库来模拟“棒球”之后的“比赛”概率

可能性分数反映了语料库中每个结果图前面加上“棒球”一词的可能性

基本出现率将描述整个语料库中单词“游戏”在棒球之后出现的频率,而不考虑整个语料库中棒球或游戏的频率

nltk.corpus.brown 
是一个内置的语料库,或一组观察值,任何基于概率的模型的预测能力都完全由用于构建或训练它的观察值来定义

针对OP评论的更新:

在32%的“游戏”事件中,前面都是“棒球”。这是有点误导性的,可能性分数并不能直接模拟二元图的频率分布

nltk.collocations.BigramAssocMeasures().raw_freq
使用t检验对原始频率进行建模,这不太适合于稀疏数据(如bigrams),因此提供了似然比

曼宁和舒茨计算的似然比并不等于频率

第5.3.4节详细描述了如何进行计算

它们考虑了文档中单词1的频率、文档中单词2的频率以及文档中二元图的频率,这种方式非常适合于像语料库矩阵这样的稀疏矩阵

如果您熟悉TF-IDF矢量化方法,则此比率的目标类似于规范化噪声特征

分数可以无限大。分数之间的相对差异反映了我刚才描述的输入(单词1、单词2和单词1Word2的语料库频率)

除非你是统计学家,否则这张图表是他们解释的最直观的部分:


可能性分数计算为最左边的列。

谢谢。这很有帮助。你能确认似然比是用百分比来解释的吗?(问b/c我看到了1000年代的数字)。
nltk.collocations.BigramAssocMeasures().raw_freq