[WEKA]如何将英文文本数据集转换为ARFF格式
若采用的是英文文本語料庫,利用WEKA將英文文本數據轉換到ARFF格式中,需要用到以下兩個工具:TextDirectoryToArff和TextDirectoryLoader。
TextDirectoryToArff是一個JAVA類(Class),它負責將一個目錄文件中的文本數據轉換到一個ARFF文件中。
TextDirectoryLoader是一個轉換器(Converter),它是基于TextDirectoryToArff類的,并且處于weka.core.converters包中。
在轉換之前,我們需要將文本數據集按照TextDirectoryLoader轉換器所要求形式布局:
-----------------------------------------------------------
...
|
+- example
???? |
???? +- class1
???? |? |
???? |? + file1.txt
???? |? |
???? |? + file2.txt
???? |? |
???? |? ...
???? |
???? +- class2
???? |? |
???? |? + another_file1.txt
???? |? |
???? |? + another_file2.txt
???? |? |
???? |? ...
-----------------------------------------------------------
按照上圖所示的目錄布局好文本數據后,將example文件夾放置在weka根目錄下,我們利用WEKA的命令行界面(Simple CLI)輸入以下命令:
java weka.core.converters.TextDirectoryLoader -dir example > example.arff
此時,可以發現在weka根目錄下生成了一個example.arff文件,這說明文本數據已經成功轉換成了WEKA需要的ARFF文件了。
example.arff文件內容下圖所示,從圖中可以發現example文件夾下的子文件夾名變成了每個文檔的類標記。
-----------------------------------------------------------
@relation D__workspace_weka_example
@attribute text string
@attribute class {class1,class2,class3}
@data
‘文本內容’,class1
‘文本內容’,class3
‘文本內容’,class2
‘文本內容’,class1
‘文本內容’,class3
...
-----------------------------------------------------------
該方法對于中文文本數據不適用,生成的ARFF中的中文會變成亂碼,需要修改WEKA的源碼才能實現對中文文本數據的處理。
總結
以上是生活随笔為你收集整理的[WEKA]如何将英文文本数据集转换为ARFF格式的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 周志华眼中的贝叶斯方法(转)
- 下一篇: Weka加载大数据量内存不足的解决办法