数据挖掘工具WEKA的介绍与安装
1. Weka简介
2. Weka的安装和配置
3. Weka的数据格式
4. Weka的使用
Weka的简介
1. Weka是一个开源的软件,它的源代码可以通过http://www.cs.waikato.ac.nz/ml/weka
得到。
2. WEKA作为一个公开的数据挖掘工作平台,集合了大量能承担数据挖掘任务的机器学习算法,包括对数据进行预处理,分类,回归、聚类、关联规则以及在新的交互式界面上的可视化
3. 开发者可以使用Java语言,利用weka的架构开发出更多的数据挖掘相关算法,详情见weka的接口文档
Weka的安装与配置
1. Weka是基于java的,所以请安装JDK,不要问我JDK是什么,另外也不要问我java环境变量怎么配置。
2. 运行weka-3-6-2jre.exe文件安装,图如下:
点击next,图如下:
I Agree,图如下:(如果本机在配置jdk的时候,安装jre,那么就去掉下图中第二个勾 Install JRE)
继续next,图如下,如果不想安装到c盘,请改一下路径:
继续next,图如下,点击install开始安装:
等进度条读取完成,会弹出一个J2SE UPDATE JRE 1.5的安装窗口,选择自定义安装,路径自己选择好直接next安装就可以。
注意:在PATH环境变量下,是要加入jre的路径的,可以查阅网上相关资料
这样安装完成,运行weka.exe文件就可以了,很多人在第一次打开的时候,会报outofmemory错误,找到安装目录下的RunWeka.ini文件以记事本方式打开,将maxheap=128m修改为maxheap=512m就可以,这样jvm的堆大小就够了。
用weka的时候很多时候会去连接数据库,那么下面简单说说配置数据库连接
设置之前,要在weka的程序目录下面新建一个lib目录,将数据库的jar包拷贝进去
新建变量:WEKA_HOME 值:D:\Weka-3-6 这个值就是你weka的安装目录
编辑变量:CLASSPATH 在后面添加:;%WEKA_HOME%\lib\mysql-connector-java-5.1.26-bin.jar;
其实:可以不用新建WEKA_HOME变量,直接在CLASSPATH变量后面加:; D:\Weka-3-6\lib\mysql-connector-java-5.1.26-bin.jar;就可以了,前后对比一下,就知道新建变量WEKA_HOME是用来干什么的了,举一反三,也就知道为什么网上的教程在安装java环境的时候有的人没有新建JAVA_HOME变量了
这样,weka就能找到放在lib文件夹下数据库连接包了,我连接的是mysql数据库,可以选择其他数据库(如oracle:ojdbc14.jar),在以后使用数据库的时候还要去做DatabaseUtils.props文件,该文件当中如何配置,可以去查阅相关资料。
WEKA的数据格式
跟很多电子表格或数据分析软件一样,WEKA所处理的数据集是一个二维的表格,表格里的一个横行称作一个实例(Instance),相当于统计学中的一个样本,或者数据库中的一条记录。竖行称作一个属性(Attribute),相当于统计学中的一个变量,或者数据库中的一个字段。这样的一个表格术语就是数据集。
WEKA存储数据的格式是ARFF(Attribute-RelationFile Format)文件,这是一种ASCII文本文件。WEKA自带的“weather.arff ”文件中,一共有14个实例,5个属性,关系名称为“weather”,如下图:
上图中:以“% ”开始的行是注释,别问我注释是什么。除去注释后,整个ARFF文件可以分为两个部分。第一部分给出了头信息(Head information),包括了对关系声明和对属性的声明。第二部分给出了数据信息(Data information),即数据集中给出的数据,从@data开始,后面的就是数据信息了。
下面说一下上段文字加粗的3个部分
关系声明:在ARFF文件的第一个有效行来定义,格式为 @relation <relation-name>,relationname是一个字符串,如果这个字符串包含空格,它必须加上引号,英文的单引号或双引号。
属性声明:格式为 @attribute<attribute-name> <datatype>,这些语句的顺序很重要,它表明了该项属性在数据部分的位置。最后一个被声明的属性被称做class属性,在分类或者回归任务中,它是默认的目标变量,不要问我什么是分类或者回归,麻烦去看决策树。
Weka支持的<datatype>有四种,分别是数值型,分类型,字符串型,日期和时间型。
数据信息:@data标记独占一行,剩下的是各个实例的数据,每个实例各占一行,实例的各个属性值用都好隔开,如果某个属性的值是缺失的,用问号“?”表示,并且这个问号不能省略。
Weka的使用
运行weka,出现一个小型的GUI,提供了4种操作环境:
CLI:命令行运行模式,偏向直接使用代码;
Explorer:通常功能形(菜单)控制模式,比较接近通用软件的工作方式;
Experimenter:和explorer 类似,大部分操作是相同的,只是支持格式不一样,同时如该名称一样,支持自定义试验。
Knowledgeflow:知识流模式,该模式支持拖动图标,进行“流”感的跟踪;