1. weka简介
1) weka是新西兰怀卡托大学WEKA小组用JAVA开发的机器学习/数据挖掘开源软件。
2) 相关资源链接
http://sourceforge.net/projects/weka/files/
http://www.cs.waikato.ac.nz/ml/weka/
3) 主要特点
2. 数据集(.arff文件)
数据集的呈现形式如上图所示,其表现为一个二维表,其中:
数据集的存储格式如上图所示,是一种ASCII文本文件,整个ARFF文件可以分为两个部分:
注:其中注释部分以”%”开始,注释部分weka将忽略这些行;
如果关系名,属性名,数据的字符串包含空格,它必须加上引号;
最后一个声明的属性被称作class属性,在分类或回归任务中它是默认的目标变量。
3. 数据类型
1)Weka支持四种数据类型,分别为:
数值型可以是整数(integer)或者实数(real),weka将它们都当作实数看待。
标称属性由一系列的类别名称放在花括号中。
字符串属性可以包含任意的文本。
日期和时间属性统一用”date”类型表示,默认的字符串是ISO-8601所给的日期时间组合格式:“yyyy-MM-dd HH:mm:ss”
eg. @ATTRIBUTE timestamp DATE“yyyy-MM-dd HH:mm:ss”
@DATA “2015-06-23 20:05:40”
2)稀疏数据
当数据集中含有大量的0值时,用稀疏格式的数据存储更加省空间。稀疏格式是针对数据信息中某个对象的表示而言,不需要修改ARFF文件的其它部分。例如:
@data @data
0, X, 0, Y,“class A” {1 X, 3 Y, 4“class A”}
0, 0, W, 0,“class B” {2 W, 4 “classB”}
4. 数据准备
.xls -> .csv -> .arff
5. 分类 Classify
1) 分类过程
根据一个WEKA实例的一组特征属性(输入变量),对目标属性进行分类预测。为了实现这一目的,我们需要有一个训练数据集,这个数据集中每个实例的输入和输出都是已知的。观察训练集中的实例,可以建立预测的分类/回归模型。有了这个模型,就可以对新的未知实例进行分类预测。衡量模型的好坏主要在于预测的准确程度。
2) 数据预测的例子
a. 注意测试数据集和训练数据集的各个属性声明部分的设置必须是一致的。即使在测试数据集中没有class属性的值,也需要添加这个属性,可以将该属性在各个实例上的值均设置为缺失值。
b. 打开“Simple CLI”模块,使用“J48”算法的命令格式为:
java weka.classifiers.trees.J48 -C0.25 -M 2 -t "C:\\Users\\Administrator\\Desktop\\课题\\数据文件\\测试数据\\2.3参考文献--相关性分析+数据变换.csv.arff"-d"C:\\Users\\Administrator\\Desktop\\课题\\数据文件\\测试数据\\2.3参考文献--相关性分析+数据变换.model"
这里的” 2.3参考文献--相关性分析+数据变换.csv.arff”是训练数据集。其中参数“-C 0.25”表示置信因子,“-M 2”表示最小实例数。“-t”后面为训练数据集的完整路径,“-d”后面为保存模型的完整路径。
c. 把这个模型应用到测试数据集的命令格式为:
java weka.classifiers.trees.J48 -p 11 -l"C:\\Users\\Administrator\\Desktop\\课题\\数据文件\\测试数据\\2.3参考文献--相关性分析+数据变换.model"-T "C:\\Users\\Administrator\\Desktop\\课题\\数据文件\\测试数据\\3.3学位论文中提取的参考文献.csv.arff"
其中“-p 11”指模型中的待预测属性的真实值存在第11个属性中,“-l”后面为模型的完整路径,“-T”后面为测试数据集的完整路径。
d. 输入上述命令后,出现的结果:
===Predictions on test data ===
inst# actual predicted error prediction ()
1 1:? 1:J 1
2 1:? 1:J 1
3 1:? 2:M 0.667
4 1:? 2:M 0.667
5 1:? 3:C 1
6 1:? 2:M 0.667
第一列为实例编号,第二列为测试数据集中原来class属性的值,第三列是预测后的结果,第四列为预测结果的置信度,例如对于实例1,有百分之百的把握说它的值为J.
版权声明:本文为博主原创文章,未经博主允许不得转载。
原文地址:http://blog.csdn.net/zl19890124/article/details/46687223