本文目的
weka是一套使用java开发的数据挖掘工具集合,提供GUI/CLI界面和Java API使用方式。所以,在学习和解决数据挖掘问题时,可以先尝试用weka的GUI或CLI做出合适的分析,找到适当的算法,然后在将此算法集成到自己的项目中。最近在的项目中遇到了文本聚类的问题,kmeans是一种常见的聚类算法,这里先拿此算法和示例数据做一些实验,以便熟悉weka的界面操作。
什么是kmeans
详细的描述,参见这里。通俗的解释,就是将K个点,称为中心点(K需要预先给出),随机的放到数据集中,然后针对数据集中的每个点计算与这K个中心点的距离,找到每个点最近的中心点。然后更新这K个中心点,使每个中心点是最近的点的平均中心点。如此循环,直到这K个点的位置不能再移动,得到K个聚类。
数据集
weka定义了自己的数据集文件格式,以.arrf结尾,整体感觉就是一张表格,主要分为四个部分(如下图):
注释,comment
数据集名称,relation
属性,attribute,相当于列
数据,每行是一个实例,每一行中的每个字段用逗号隔开,字符串在引号中间,也可以是数字或枚举
获取并安装weka
到官网上获取weka