2013-06-05 26 views
1

我想在WEKA GUI中使用帶TF-IDF的KNN算法。首先,我在默認條件下運行算法。其次我在StringToWordVector過濾器中選擇「IDFTransform」和「TFTransform」爲「true」並運行。
還有沒有什麼區別有兩個結果。Weka GUI - TF-IDF未計算 - 請幫助我的學術工作

結果1:

Correctly Classified Instances  1346    91.3781 % 

結果2:

Correctly Classified Instances  1346    91.3781 % 

我 「.arff」 文件如下:

@relation et9 

@attribute 'alis' real 
@attribute 'banka' real 
... 
@attribute 'urun' real 
@attribute 'class' {yes, no} 

@data 
70,0,0,0,3,0,40,0,3,1,0,0,20,0,717,2,4,0,0,0,2,5,0,0,0,717,0,1,0,30,yes 
22,0,0,63,158,0,1,0,7,0,10,0,4,0,57,0,0,0,0,204,0,0,2,2,0,530,0,0,6,0,yes 
0,0,1,0,0,0,0,0,2,1,3,0,0,0,0,0,5,0,0,0,0,0,2,1,0,0,0,0,0,0,no 
... 


我知道StringToWordVector用於字符串。但是我想爲這個「.arff」文件計算TF-IDF。 如何使用我當前的「.arff」文件並使用TF-IDF生成KNN算法結果?

(這是我的學術工作。請幫助...)

回答

2

根據Weka中的文檔,該StringToWordVector過濾器「將字符串屬性分爲一組代表字屬性的出現 [...]」 。因此,將此過濾器應用於不包含任何String屬性的arff文件將不會對數據集產生任何影響。

爲了使用此過濾器,您需要準備一個包含String屬性的arff文件,其中此屬性的值是給定實例的文本。例如,如果每個實例代表一條推文,則來自推文的文本將是該String屬性的值。有關在weka中使用文本的更多信息,請參見here

+0

非常感謝... – Sametimsi