WEKA学习总结
1. Weka处理的数据表格中,一个横行称为一个实例(Instance),竖行代表一个属性(Arrtibute),数据表格称为一个数据集,在weka看来,呈现了属性之间的一种关系(Relation)
2. Weka存储数据的格式是ARFF(Attribute-RelationFile Format)文件,这是一种ASCII文本文件。
3. Weka的ARFF文件可以分为两部分。第一部分给出了头信息(Head information),包括了对关系的声明和对属性的声明。第二部分给出了数据信息(Data information),即数据集中给出的数据。从@Data标记开始,后面的就是数据信息了。
4. Weka作为数据挖掘,面临的第一个问题往往是我们的数据不是ARFF格式的。幸好,WEKA还提供了对CSV文件的支持,而这种格式是被许多其他软件所支持的。此外,WEKA还提供了通过JDBC访问数据库的功能。
5. 需要注意的是,matlab给出的csv文件往往没有属性名(Excel 给出的也可能没有)。而WEKA必须从CSV文件的第一行读取属性名,否则就会把第一行的各属性值读成变量名。因此我们对于matlab给出的csv文件需要用UltraEdit打开,手工添加一行属性名。
6. Weka提供了命令将CSV文件转换成arff文件。
7. Weka GUI根据不同功能分为8个界面:
(1) 区域1的几个选项卡用来切换不同的挖掘任务面板。
(2) 区域2是一些常用按钮。包括打开数据,保存及编辑功能。
(3) 选择某个Filter,可以实现筛选数据或者对数据进行某种变换。
(4) 区域4展示了数据集的一些基本情况。
(5) 列出了数据集的所有属性。
(6) 区域6中有关于这个属性的摘要,注意对于数值属性和分类属性,摘要的方式是不一样的。
(7) 区域7中是区域5属性的直方图。
(8) 区域8是状态栏,可以查看Log义判断是否有错。右边的weka鸟在动的话说明weka正在执行挖掘任务。右键点击状态栏可以执行java内存垃圾回收。
8. 通常对于数据挖掘任务来说,ID这样的信息是无用的。
9. Weka把分类(Classification)和回归(Regression)都放在“Classify”选项卡中。
10. 在weka中,待预测的目标(输出)被称为Class属性,这应该是来自分类任务的“类”。一般的,若Class属性是分类型时我们的任务才叫分类,Class属性是数值型时我们的任务叫回归。
11. 所谓回归分析法,是在掌握大量观察数据的基础上,利用数理统计方法建立因变量和自变量之间的回归关系函数表达式(称回归方程)。
12. 在回归分析中,又依据描述自变量和因变量之间因果关系的函数表达式是线性的还是非线性的,分为线性回归分析和非线性分析。通常线性回归分析法是最基本的分析方法,遇到非线性回归问题可以借助数学手段化为线性回归问题处理。
13. 一元线性回归是指事物发展的自变量和因变量之间是单因素的简单线性关系,它的模型可以表示为: y=a+bx
14. 多元线性回归是指一个因变量和多个自变量之间的线性关系,模型一般形式为:
Y=a+b1x1+b2x2+…+bnxn
15. 为了保证生成的模型的准确性而不至于出现拟合的现象,我们有必要采用10折交叉验证来选择和评估模型。
16. 10 折交叉验证:英文名叫做10-fold corss –validation,用来测试算法的准确性。是常用的测试方法。将数据集分成10份,轮流将其中9份作为训练数据,1份作为测试数据,进行试验。每次试验都会得到相应的正确率(或差错率)。10次的结果的正确率(或差错率)的平均值作为对算法精确读的估计,一般还需要进行多次10折交叉验证。
17. 数据挖掘中分类与聚类最本质的区别:
简单的说:分类是“监督学习”,事先知道有那些类别可以分。聚类—是“无监督学习”,事先不知道要分成哪些类。
数据分类是指分析数据库中的一组对象,找出去共同属性。然后根据分类模型,把他们划分为不同的类别。分类数据首先根据训练数据建立分类模型,然后根据这些分类描述分类数据中的测试数据或产生更恰当的描述。
聚类是指数据库中的数据可以划分为一些列有意义的子集,即类。在同一类别中,个体之间的距离较小,而不同类别上的个体之间的距离偏大。聚类分析通常称为“无监督的学习”
18. 在进行聚类运算时,设置seed是设置一个随机种子,依此产生一个随机数,用来得到K均值算法中第一次给出的K个簇中心的位置。