weka实验报告.docx

上传人:b****1 文档编号:12476291 上传时间:2023-04-19 格式:DOCX 页数:14 大小:982.68KB
下载 相关 举报
weka实验报告.docx_第1页
第1页 / 共14页
weka实验报告.docx_第2页
第2页 / 共14页
weka实验报告.docx_第3页
第3页 / 共14页
weka实验报告.docx_第4页
第4页 / 共14页
weka实验报告.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

weka实验报告.docx

《weka实验报告.docx》由会员分享,可在线阅读,更多相关《weka实验报告.docx(14页珍藏版)》请在冰豆网上搜索。

weka实验报告.docx

weka实验报告

 

weka实验报告(总13页)

基于weka的数据分类分析实验报告

姓名:

学号:

1实验基本内容

本实验的基本内容是通过使用weka中的三种常见分类方法(朴素贝叶斯,KNN和决策树)分别在训练数据上训练出分类模型,并使用校验数据对各个模型进行测试和评价,找出各个模型最优的参数值,并对三个模型进行全面评价比较,得到一个最好的分类模型以及该模型所有设置的最优参数。

最后使用这些参数以及训练集和校验集数据一起构造出一个最优分类器,并利用该分类器对测试数据进行预测。

2数据的准备及预处理

格式转换方法

原始数据是老师直接给的arff文件,因此不用转换,可以直接导入。

但如果原始数据是excel文件保存的xlsx格式数据,则需要转换成Weka支持的arff文件格式或csv文件格式。

由于Weka对arff格式的支持更好,这里我们选择arff格式作为分类器原始数据的保存格式。

转换方法:

假如我们准备分析的文件为“”,则在excel中打开“”,选择菜单文件->另存为,在弹出的对话框中,文件名输入“breast-cancer”,保存类型选择“CSV(逗号分隔)”,保存,我们便可得到“”文件;然后,打开Weka的Exporler,点击Openfile按钮,打开刚才得到的“filename”文件,点击“save”按钮,在弹出的对话框中,文件名输入“breast-cancer”,文件类型选择“Arffdatafiles(*.arff)”,这样得到的数据文件为“”。

 

如何建立数据训练集,校验集和测试集

通过统计数据信息,发现带有类标号的数据一共有286行,为了避免数据的过度拟合,必须把数据训练集和校验集分开,目前的拆分策略是训练集200行,校验集86行。

类标号为‘no-recurrence-events’的数据有201条,而类标号为‘recurrence-events’的数据有85条,为了能在训练分类模型时有更全面的信息,所以决定把包含115条no-recurrence-events类标号数据和85条recurrence-events类标号数据作为模型训练数据集,而剩下的86条类标号类no-recurrence-events的数据将全部用于校验数据集,这是因为在校验的时候,两种类标号的数据的作用区别不大,而在训练数据模型时,则更需要更全面的信息,特别是不同类标号的数据的合理比例对训练模型的质量有较大的影响。

另外,我们为了做预测测试,我们将分类标号为no-recurrence-events的86行数据集的分类标号去掉,作为预测数据集。

预处理具体步骤

第一步:

把文件复制一份,作为总的训练数据集。

文件名称为。

第二步:

从文件数据里面选取分类标号为no-recurrence-events的86行数据作为校验数据集()。

第三步:

从把剩下的文件改名为。

第四部:

由于老师给的全部都是有类标号的数据集,为了我们方便进行预测测试,我们将分类标号为no-recurrence-events的86行数据集的分类标号去掉,作为预测数据集。

3.实验过程及结果截图

决策树分类

用“Explorer”打开刚才得到的“”,并切换到“Class”。

点“Choose”按钮选择“tree,这是WEKA中实现的决策树算法。

选择Cross-Validatioinfolds=10,然后点击“start”按钮:

训练数据集训练决策树得出的结果

使用不同配置训练参数,得到的实验数据:

配置不同的叶子节点的实例个数

实例数/叶节点

2

3

4

5

6

准确率

%

%

%

%

%

结果分析:

使用决策树时,每个叶子节点最优的实例个数为2或者3。

 

校验数据集校验决策树得出的结果

初步结果分析:

使用决策树进行分类,对于已知的86个类标号为no-recurrence-events的数据进行比较准确的分类,准确率达到86%;该数据一般,并且有一定的缺陷,因为该结果是以训练集的低准确率作为前提的。

 

K最近邻算法分类

点“Choose”按钮选择“laze->ibk”,这是WEKA中实现的决策树算法。

选择Cross-Validatioinfolds=10,然后点击“start”按钮:

训练数据集训练KNN得出的结果

使用不同配置训练参数,得到的实验数据:

配置不同的叶子节点的实例个数

K值

1

2

3

4

5

6

7

8

9

10

准确率

%

64%

65%

%

67%

%

%

66%

66%

67%

结果分析:

使用KNN算法分类时,K最优值为4。

 

校验数据集校验KNN得出的结果

初步结果分析:

对使用k=4训练出来的分类模型进行校验的结果,准确率达到%,算是一个比较合理的分类结果。

 

朴素贝叶斯分类

点“Choose”按钮选择“bayes”,这是WEKA中实现的决策树算法。

选择Cross-Validatioinfolds=10,然后点击“start”按钮:

训练数据集训练NaïveBayes得出的结果

得出的准确率为66%

校验数据集校验NaïveBayes得出的结果

初步结果分析:

评价结果中准确率仅仅达到79%,结果不是非常让人满意。

三类分类方法的校验结果比较

决策树

K最近邻

朴素贝叶斯

校验准确率

86%

%

79%

训练

混淆矩阵

校验

混淆矩阵

标准误差

比较结果分析:

根据上述数据,虽然决策树有比较好的准确率和相对较好的标准误差,但是在这背后,很有可能是以较大错误率作为代价,这点可以从训练混淆矩阵中得到印证;而朴素贝叶斯分类算法的准确率相对较低,而标准误差也较高,综合评价可以得知,当前最好的分类算法是KNN算法,并且它是最优设置参数为k=4。

 

训练最优模型

使用预处理中的数据文件训练分类模型,算法为k=4的KNN。

数据集训练KNN得出的结果

 

使用最终模型对测试集进行预测结果

 

4.三种算法在进行测试的性能比较

实验结果

决策树的测试结果:

 

KNN测试结果:

 

朴素贝叶斯测试结果:

比较分析结论:

性能分析应该包括两个部分,一个部分是测试速度,另一个部分是测试的质量。

由于本次使用所使用的数据量不是很多,在测试速度的对比上相差太少,无法进行准确的分析。

而在测试质量上,可以从上述数据中得到,决策树和朴素贝叶斯依然是准确率较低;而相比之下,KNN具有较高的准确率,从性能角度上讲,KNN算法略胜一筹。

5.实验总结

本次实验进行比较顺利,使我对如何在Weka中进行分类分析有了更深刻的了解,对Weka中进行分类分析的KNN算法,朴素贝叶斯算法和决策树算法都有了进一步的理解,同时也深刻体会到数据预处理对于数据挖掘的重要性。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 人文社科 > 视频讲堂

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1