weka机器学习-04-分类

分类是预测离散的值
回归是预测连续的值

1.分类器的选择

Weka提供Classify标签页来构建分类器。
在这里插入图片描述
Classify标签页最上面有Classifier(分类器)选项组,使用方法和Preprocess标签页Filter(过滤器)选项组一直,详情见上一篇博客。过滤器选项组使用方法
Classify标签页左部有Test options(测试选项)选项组。用于设置测试模式,并将设置的选项应用到当前选择的分类器中,测试模式有:
(1)Use training set(使用训练集):直接将训练集实例用于测试(不能反应分类器的泛化性能)。
(2)Supplied test set(提供测试集):单击set允许用户选择测试集文件。
(3)Cross-validation(交叉验证):通过交叉验证评价分类器。在Folds文本框中输入交叉验证的折数,默认为10折。
(4)Percentage split(按比例分割):从数据集中取出默认百分比的数据用作训练集,其他用作测试集。取出作为训练集的数据量在%后的文本框内,默认为66%.
更多的测试集选项,通过More options按钮进行设置。
在这里插入图片描述
(1)Output model(输出模型):输出通过完整训练集得到的分类模型,默认选中。
(2)Output per-class stats(输出每个类别的统计信息):输出每个分类的查准率/查全率以及True/False的统计信息,默认选中。
(3)Output entropy evaluation measures(输出熵评估度量):输出中包含熵评估度量。
(4)Output confusion matrix(输出混淆矩阵):输出中包含分类器预测得到的混淆矩阵,默认选中。
(5)Store predictions for visualization(存储预测以便可视化):保存分类器的预测结果以便于可视化。
(6)Error plot point size proportional to margin(错误散点大小正比于预测边际):设置所绘制的错误散点的大小是否正比于预测边际,仅用于分类。
(7)Output predictions(输出预测):输出预测的评估数据。默认输出为NULL(不输出)。
(8)Cost-sensitive evaluation(代价敏感评估):将代价矩阵用于评估错误率。Set按钮允许用户指定所使用的代价矩阵。
(9)Random seed for XVal / % Split(XVal / % 分割的随即种子):为了评估目的而划分数据之前,指定将数据进行随机化处理的随机种子。
(10)Preserve order for % Split(保持顺序按百分比分割):在将数据划分为训练集合测试集之前禁止随机化,即保持原来的顺序。
(11)Output source code(输出源代码):如果分类器能够输出所构建 模型的java源代码,可以在这里指定类名。可以在Classifier output(分类器输出)区域打印代码。
(12)Evaluation metrics(评价指标):设置评价指标。
Weka中默认数据集的最后一个属性是类别属性。如果想训练分类器来预测其他属性,可以单击Test options选项组下面的下拉框,选择其他属性作为类别属性。

2.分类器训练

设置好分类器、测试选项和类别属性后,单击start按钮,启动学习过程,可以随时点击stop按钮终止训练过程。训练结束后,右侧Classifier output区域会显示训练和测试结果的文字描述。同时,Result list(结果列表)中会出现一个新的条目。

3.分类器输出

在Classifier output区域显示输出结果。
按住Alt+Shift+单击,会弹出一个对话框,可以以各种不同的格式。
输出分为以下几个部分:
(1)Run information(运行信息):提供处理过程所涉及的信息列表。
在这里插入图片描述
(2)Classifier mode(full training set)(分类器模型(完整的训练集):完整训练数据生成的分类模型的文字表述。
在这里插入图片描述
(3)根据所选择的测试模式,显示不同的文字。由于评估内容较多,将结果分解显示如下:
summary(总结):一个统计列表,根据所选择的训练模式,总结分类器预测实例真实分类的准确度:
在这里插入图片描述

*Correctly Classified Instances(正确分类的实例):显示正确分类的实例的绝对数量和百分比。
*Incorrectly Classified Instances(错误分类的实例):显示错误分类实例的绝对数量和百分比。
*Kappa statistic(Kappa统计):显示Kappa统计量,[-1,1]范围的小数。Kappa统计指标用于评判分类器结果与随机分类的差异度。K=1表明分类器完全与随即分类相异,K=0表明分类器与随机分类相同(即分类器没有效果),K=-1表明分类器比随机分类还要差。
*Mean absolute error(平均绝对误差)
*Root mean squared error(均方根误差)
*Relative absolute error(相对绝对误差)
*Root relative squared error(相对均方根误差)
*Coverage of cases(0.95 level)(案例的覆盖度):分类器使用分类规则对全部实例的覆盖度,百分数越高说明该规则越有效。
*Mean rel.region size(0.95 level)(平均相对区域大小)
*Total Number of Instances(实例总数)
Detailed Accuracy By Class(按类别的详细准确性):按每个类别分解的更详细的分类器的预测精确度。
在这里插入图片描述
TP Rate(真阳率)
FP Rate(假阳率)
Precision(查准率)
Recall(查全率)
F-Measure(F度量)
MCC(Matthews相关系数)
ROC Area(ROC曲线)
AUC(ROC曲线下的面积)
PRC Area(查准率-查全率曲线下面积)
Class(类别)
表格前几行按类别显示预测精确度,最后一行为各个类别的加权平均值。
Confusion Matrix(混淆矩阵)
在这里插入图片描述
Source code(可选):显示源代码
在这里插入图片描述
Result list(结果列表)每start一次,添加一项,单击可以切换不同的结果。
右键快捷菜单栏:
(1)View in main window(在主窗口中查看):与单击功能相同。
(2)View in separate window(在单独的窗口查看):打开一个新窗口查看结果。
(3)Save result buffer(保存结果缓冲区):弹出对话框,将输出保存为文件。
(4)Delete result buffer(删除结果缓冲区):删除训练结果。
(5)Load mode(加载模型):从二进制文件中加载一个预先训练过的模型对象。
(6)Save mode(保存模型):将模型保存为二进制文件。
(7)Re-evaluate mode on current test set(重新在当前测试集上评估模型):使用在Supplied test set(提供测试集)选项下通过Set按钮设置的数据集,测试构建好的模型的性能。
(8)Re-apply this model’s configuration(重新应用本模型的设置)
(9)Visualize classifier errors(可视化分类器错误):散点图,正确分类:小叉号,错误:小空心方块。
(10)Visualize tree or Visualize graph(可视化树或可视化图形)
(11)Visualize margin curve(可视化边缘曲线):散点图
(12)Visualize treshold curve(可视化阈值曲线)
(13)Cost/Benefit analysis(代价/收益分析)
(14)Visualize cost curve(可视化代价曲线)
(15)Plugins(插件)

4.分类器的使用

(1)使用C4.5分类器
构建决策树的C4.5算法在Weka中是作为一个分类器实现的,名称为J48.
对于J48分类器,一般不用更改参数就可以获得良好的性能。
构建的J48修剪决策树
上图为输出分类结果中构建的J48修剪决策树。
包括决策节点、分支和叶节点。决策节点用一个测试表示,分支用“|”加上缩进表示,叶节点后有一个括号,括号内的数字表示到达该叶节点的实例数量。
在Result list中右击选择Visualize tree显示图形化决策树
在这里插入图片描述
(2)使用决策规则
选择rules下的JRip分类器,保持默认参数不变,Start。
决策规则如下:
在这里插入图片描述
每条规则用“=>"分开,规则前件和规则后件,规则后件中有用括号括起的两个数字,第一个数字表示规则覆盖的实例数量,第二个数字表示错分的实例数量。注意到第三条规则的规则前件为空,表示这条规则覆盖的训练实例外的所有实例。
(3)使用线性回归
在functions条目下选择LinearRegression分类器,保持默认参数不变。
在tree条目下选择M5P分类器,两种分类器比较,在输出结果中比较两者的MAE(平均绝对误差)。

  • 6
    点赞
  • 41
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值