2013-03-14 66 views
1

我有單詞列表,我想通過考慮它們的共現來計算兩個單詞的相關性。從一篇論文中我發現它可以使用Pearsson卡方檢驗來計算。我還找到了計算卡方值的nltk.BigramAssocMeasures.ch_sq()如何使用NLTK BigramAssocMeasures.ch_sq

我可以用它來滿足我的需求嗎?如何使用nltk查找卡方值?

回答

3

看看this blog from Streamhacker,它給出了一個很好的解釋代碼示例。

信息增益的最佳指標之一是卡方。 NLTK在度量包中的BigramAssocMeasures類中包含此項。要使用它,首先我們需要計算每個單詞的一些頻率:每個單詞的整體頻率和頻率。這是通過FreqDist獲取單詞的總體頻率以及ConditionalFreqDist來完成的,其中條件是類標籤。一旦我們有了這些數字,我們就可以用BigramAssocMeasures.chi_sq函數對詞進行評分,然後根據分數對詞進行排序並取得最高的10000。然後我們將這些詞放入一個集合中,並在我們的特徵選擇函數中使用集合成員測試來只選擇出現在集合中的那些單詞。現在每個文件都根據這些高信息詞的存在進行分類。

+0

如果您總結了鏈接的內容 – rpax 2014-05-05 20:42:41