数据挖掘工具软件Weka学习教程
一、數據格式
理解數據格式后,就可以完全控制數據預處理過程。
1.1 ARFF格式
樣例 | 說明 |
%整行注釋 @relation person @attribute name string %半行注釋 @attribute age numeric @attribute sex {male,female} @attribute birthday date "yyyy-MM-dd HH:mm:ss" @data "Zhang San",85,male,'2011-06-10 00:00:00' Lisi,?,male,"2011-06-11 00:00:00" …… | 關系名,在Explorer界面顯示 String 類型(文本挖掘使用) 數值類型(integer,real完全同義) 枚舉類型(花括號枚舉全部值) 日期類型(日期格式默認) 數據開始標志 (逗號分割數據) |
說明:
relation, string, data這些內置關鍵字無所謂大小寫,使用string.equalsIgnoreCase()方法匹配字符串。但數據值嚴格區分大小寫。
weka只解析4中數據類型:字符串、數值、枚舉、日期。
數值型標志numeric、integer、real完全同義。
枚舉類型無關鍵字,直接花括號擴住所有枚舉值。
日期類型的格式字符串不指定,則默認使用 "yyyy-MM-dd'T'HH:mm:ss" (2011-06-10T00:00:00)。
缺失值用半角問號表示 ? ,不認識 NULL。
解析arff過程并非逐行讀取數據,而是使用java.io.StreamTokenizer 。所以 string,nominal 如果值內沒有空格,則不需要用引號包括。空行隨便加。
1.2 CSV格式
weka對待csv格式的文件比較粗暴,對第一行指定的屬性,假定是數值型,然后在后續讀取對應的數據時,嘗試解析數值,如果某一個解析失敗,就將該屬性重新標記為枚舉型(無string、date);如果全部數據都能解析成數值,就認為該屬性是數值型。
1.3 Arff Viewer
界面:GUI Chooser > Tools > Arff Viewer
[界面截圖略]
作用:以表格形式顯示數據。并可對數據初步處理。
點擊表頭對數據排序(單擊正序排列、shift+單擊逆序排列),然后處理噪聲值。對特別大或特別小的數據,手動改為均值(右鍵表頭> get mean)或缺失值(將值刪除為空)。
注:csv格式的解析方式是內置的,屬性被認為是數值還是枚舉,在這里不能更改。
二、 數據理解
2.1 數據集概覽
界面:GUI Chooser > Explorer按鈕 > Preprocess面板
作用:
1、單屬性統計信息瀏覽。
2、屬性剔除。
3、對數據集做預處理(歸一化、離散化等)。
2.2 單屬性直方圖
界面:GUI Chooser > Explorer按鈕 > Preprocess面板 > Visualize All
[界面截圖略]
作用:僅觀察了解數據。
2.3 二維散點圖
界面:GUI Chooser > Explorer按鈕 > Visualize面板
作用:
1、查看各屬性之間的關系,深入理解數據集。
2、進行數據選擇(放大散點圖后進行)。
2.4 屬性選擇
界面:GUI Chooser > Explorer按鈕 > Select attributes 面板
作用:
1、 查看所有屬性對于某一個屬性的重要程度(最能區分指定屬性的,最重要,一般使用Gain指標)。
三、分類
界面:GUI Chooser > Explorer按鈕 > Classify 面板
[界面截圖略]
作用:分類。
●屬性類型和算法選擇
●算法參數
●測試集
●結果顯示
四、聚類
界面:GUI Chooser > Explorer按鈕 > Cluster 面板
[界面截圖略]
作用:聚類。
●算法參數
●聚類模式
●結果顯示
五、關聯規則
界面:GUI Chooser > Explorer按鈕 > Associate 面板
[界面截圖略]
由于weka arff格式的限制,其關聯規則分析挖掘功能很不實用。類似于背包分析的問題,需要自己寫apriori算法。Apriori算法比較耗資源,可使用FP-Tree算法。
六、挖掘模型固化
界面:GUI Chooser > KnowledgeFlow按鈕
說明:知識流可以認為是weka內核的一個完全圖形化接口,挖掘功能方面與Explorer一樣。但這里可以將數據挖掘全過程中的操作用一個流程表示,并且可以保存起來,多次使用(每次使用只需要更改數據集)。
當對某一主題探索出合適的挖掘流程后,可以在這里固化一個挖掘模型,以后多次使用。
七、其他
7.1 Weka的實驗界面主要用來在同一個訓練集上對比不同的分類算法,可以看作是對挖掘探索的一個封裝,控制方面的靈活性不佳。
7.2 命令行界面也是weka內核的一個接口。
轉載于:https://blog.51cto.com/abool/1580796
總結
以上是生活随笔為你收集整理的数据挖掘工具软件Weka学习教程的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 以前折腾的7zip图标
- 下一篇: 常用的rpm和yum的一些命令