數據挖掘學習02 - 使用weka的kmeans聚類分析


本文目的

weka是一套使用java開發的數據挖掘工具集合,提供GUI/CLI界面和Java API使用方式。所以,在學習和解決數據挖掘問題時,可以先嘗試用weka的GUI或CLI做出合適的分析,找到適當的算法,然后在將此算法集成到自己的項目中。最近在的項目中遇到了文本聚類的問題,kmeans是一種常見的聚類算法,這里先拿此算法和示例數據做一些實驗,以便熟悉weka的界面操作。

 

什么是kmeans

詳細的描述,參見這里。通俗的解釋,就是將K個點,稱為中心點(K需要預先給出),隨機的放到數據集中,然后針對數據集中的每個點計算與這K個中心點的距離,找到每個點最近的中心點。然后更新這K個中心點,使每個中心點是最近的點的平均中心點。如此循環,直到這K個點的位置不能再移動,得到K個聚類。

 

數據集

weka定義了自己的數據集文件格式,以.arrf結尾,整體感覺就是一張表格,主要分為四個部分(如下圖):

image

  1. 注釋,comment
  2. 數據集名稱,relation
  3. 屬性,attribute,相當於列
  4. 數據,每行是一個實例,每一行中的每個字段用逗號隔開,字符串在引號中間,也可以是數字或枚舉

 

獲取並安裝weka

到官網上獲取weka,如果本機有jre,那么直接下載weka安裝包,如果沒有jre,又不想手動安裝java,可以安裝帶有jre的weka,后者會比前者大。

獲取后,直接雙擊,然后一步步OK,就行,最后會在桌面上生成小圖標image

 

執行Kmeans聚類操作

雙擊小圖標,彈出如下對話框,

image

選擇“Explorer”,如果以后高級用戶,可以選擇最后的“Simple CLI”,直接命令行操作。

彈出如下對話框

image

這里,需要實驗數據集,點擊這里下載,然后點擊“open file …”,導入剛剛下載的數據集,出現如下界面,說明導入OK。

image

現在,選取最上面的第三個tab“Cluster”,進入聚類分析主界面

image

點擊“Choose”按鈕,選擇聚類算法。這里先選擇了SimpleKMeans,單機“Choose”旁邊的輸入框,可以設置算法參數

image

這里需要將”numClusters”修改為一個合適的值,其他保留默認即可。

記下來,點擊開始,weka就開會幫你算出結果,結果會以文件的方式存儲在Result List中,方便后面分析。右邊是計算結果。

 

結果可視化

image

Explorer主界面最上面最后一個tab是數據結果可視化,目前只能支持2緯可視化,所以個人覺得比較雞肋,因為一般數據緯度都為大於2緯。

具體如何使用可視化,可以參見最后的鏈接。

 

以上就是利用weka進行kmeans聚類操作的過程。

 

參考資料

http://maya.cs.depaul.edu/classes/ect584/weka/k-means.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM