我有一个单词列表,我想通过考虑两个单词的共现来计算它们之间的关联性。我从一篇论文中发现,它可以用Pearsson卡方检验来计算.此外,我还找到了计算chi sqare值的nltk.BigramAssocMeasures.ch_sq()。
我能用这个来满足我的需要吗?如何使用nltk找到卡方值?
发布于 2013-03-14 12:09:32
看看这是Streamhacker的博客,它用代码示例给出了一个很好的解释。
信息获取的最佳指标之一是卡方。NLTK将其包含在度量包的BigramAssocMeasures类中。要使用它,首先我们需要计算每个单词的几个频率:它的总频率和在每个类别中的频率。这是用FreqDist表示单词的总频率,以及使用条件为类标签的ConditionalFreqDist完成的。一旦我们有了这些数字,我们就可以用BigramAssocMeasures.chi_sq函数给单词打分,然后按分数对单词进行排序,并获得前10000名。然后,我们将这些单词放入一个集合中,并在我们的特性选择函数中使用一个集合成员资格测试来选择出现在集合中的单词。现在,每个文件都是根据这些高信息词的存在进行分类的。
https://stackoverflow.com/questions/15401497
复制相似问题