数据挖掘学习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

声明:如有转载本博文章,请注明出处。您的支持是我的动力!文章部分内容来自互联网,本人不负任何法律责任。
本文转自bourneli博客园博客,原文链接:http://www.cnblogs.com/bourneli/archive/2012/10/15/2725019.html ,如需转载请自行联系原作者
相关文章
|
6月前
|
机器学习/深度学习 算法 数据可视化
数据挖掘(1)--基础知识学习
数据挖掘(Data Mining,DM)是知识发现(KDD)最核心的部分。 数据挖掘数学理论基础的发展,与统计学的发展密不可分。
52 0
|
2月前
|
数据采集 算法 搜索推荐
数据挖掘实战:基于KMeans算法对超市客户进行聚类分群
数据挖掘实战:基于KMeans算法对超市客户进行聚类分群
133 0
|
数据采集 算法 数据可视化
用WEKA软件进行Apriori算法数据挖掘测试最详细清楚解释
用WEKA软件进行Apriori算法数据挖掘测试最详细清楚解释
1119 0
用WEKA软件进行Apriori算法数据挖掘测试最详细清楚解释
|
机器学习/深度学习 Ubuntu 前端开发
数据挖掘基础学习一:VMware虚拟机Ubuntu上安装Python和IPython Notebook(Jupyter Notebook)完整步骤及需要注意的问题(以ubuntu-18.04.3为例)
数据挖掘基础学习一:VMware虚拟机Ubuntu上安装Python和IPython Notebook(Jupyter Notebook)完整步骤及需要注意的问题(以ubuntu-18.04.3为例)
612 0
数据挖掘基础学习一:VMware虚拟机Ubuntu上安装Python和IPython Notebook(Jupyter Notebook)完整步骤及需要注意的问题(以ubuntu-18.04.3为例)
|
机器学习/深度学习 算法 数据挖掘
|
机器学习/深度学习 算法 数据挖掘
【数据挖掘】神经网络简介 ( 有向图本质 | 拓扑结构 | 连接方式 | 学习规则 | 分类 | 深度学习 | 机器学习 )(二)
【数据挖掘】神经网络简介 ( 有向图本质 | 拓扑结构 | 连接方式 | 学习规则 | 分类 | 深度学习 | 机器学习 )(二)
232 0
|
机器学习/深度学习 物联网 数据挖掘
【数据挖掘】神经网络简介 ( 有向图本质 | 拓扑结构 | 连接方式 | 学习规则 | 分类 | 深度学习 | 机器学习 )(一)
【数据挖掘】神经网络简介 ( 有向图本质 | 拓扑结构 | 连接方式 | 学习规则 | 分类 | 深度学习 | 机器学习 )(一)
685 0
|
机器学习/深度学习 人工智能 运维
【数据挖掘】数据挖掘简介 ( 6 个常用功能 | 数据挖掘结果判断 | 数据挖掘学习框架 | 数据挖掘分类 )
【数据挖掘】数据挖掘简介 ( 6 个常用功能 | 数据挖掘结果判断 | 数据挖掘学习框架 | 数据挖掘分类 )
659 0
|
数据采集 SQL 数据可视化
数据挖掘—Weka 的数据库挖掘及数据预处理
数据挖掘—Weka 的数据库挖掘及数据预处理
1623 0
数据挖掘—Weka 的数据库挖掘及数据预处理
|
算法 数据挖掘 API
用 WEKA 进行数据挖掘,第 3 部分 最近邻和服务器端库
用 WEKA 进行数据挖掘,第 3 部分 最近邻和服务器端库
1041 0