【发布时间】:2012-01-30 19:11:47
【问题描述】:
背景:
我正在尝试比较成对的单词,以查看在美国英语中哪对单词比另一对单词“更有可能出现”。我的计划是/曾经是使用 NLTK 中的搭配工具对单词对进行评分,得分较高的对最有可能。
方法:
我使用 NLTK 在 Python 中编写了以下代码(为简洁起见,删除了几个步骤和导入):
bgm = nltk.collocations.BigramAssocMeasures()
finder = BigramCollocationFinder.from_words(tokens)
scored = finder.score_ngrams( bgm.likelihood_ratio )
print scored
结果:
然后,我使用 2 个单词对检查了结果,其中一个应该很可能同时出现,另一个不应该出现(“roasted cashews”和“gasoline cashews”)。我很惊讶地看到这些单词配对得分相同:
[(('roasted', 'cashews'), 5.545177444479562)]
[(('gasoline', 'cashews'), 5.545177444479562)]
在我的测试中,我预计“烤腰果”的得分会高于“汽油腰果”。
问题:
- 我对搭配的使用有误解吗?
- 我的代码不正确吗?
- 我认为分数应该不同的假设是错误的吗?如果是,为什么?
非常感谢您提供任何信息或帮助!
【问题讨论】:
-
另外一条评论:将所有 4 个词组合在一起,即“烤腰果汽油腰果”,给出了相似的结果,因为所有的二元组分数都是相同的。