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

上传人:文库****9 文档编号:174000984 上传时间:2021-03-15 格式:DOC 页数:12 大小:260.50KB
返回 下载 相关 举报
基于weka的数据分类分析实验报告12页_第1页
第1页 / 共12页
基于weka的数据分类分析实验报告12页_第2页
第2页 / 共12页
基于weka的数据分类分析实验报告12页_第3页
第3页 / 共12页
基于weka的数据分类分析实验报告12页_第4页
第4页 / 共12页
基于weka的数据分类分析实验报告12页_第5页
第5页 / 共12页
点击查看更多>>
资源描述

《基于weka的数据分类分析实验报告12页》由会员分享,可在线阅读,更多相关《基于weka的数据分类分析实验报告12页(12页珍藏版)》请在金锄头文库上搜索。

1、数据挖掘实验报告 xxx 201021030483基于weka的数据分类分析实验报告1实验基本内容本实验的基本内容是通过使用weka中的三种常见分类方法(朴素贝叶斯,KNN和决策树C4.5)分别在训练数据上训练出分类模型,并使用校验数据对各个模型进行测试和评价,找出各个模型最优的参数值,并对三个模型进行全面评价比较,得到一个最好的分类模型以及该模型所有设置的最优参数。最后使用这些参数以及训练集和校验集数据一起构造出一个最优分类器,并利用该分类器对测试数据进行预测。2数据的准备及预处理2.1格式转换方法原始数据是excel文件保存的xlsx格式数据,需要转换成Weka支持的arff文件格式或cs

2、v文件格式。由于Weka对arff格式的支持更好,这里我们选择arff格式作为分类器原始数据的保存格式。转换方法:在excel中打开“movie_given.xlsx”,选择菜单文件-另存为,在弹出的对话框中,文件名输入“total_data”,保存类型选择“CSV(逗号分隔)”,保存,我们便可得到“total_data.csv”文件;然后,打开Weka的Exporler,点击Open file按钮,打开刚才得到的“total_data”文件,点击“save”按钮,在弹出的对话框中,文件名输入“total_data”,文件类型选择“Arff data files(*.arff)”,这样得到的数

3、据文件为“total_data.arff”。2.2如何建立数据训练集,校验集和测试集数据的预处理过程中,为了在训练模型、评价模型和使用模型对数据进行预测能保证一致性和完整性,首先要把movie_given.xslx和test.xslx合并在一起,因为在生成arff文件的时候,可能会出现属性值不一样的情况,否则将为后来的测试过程带来麻烦。通过统计数据信息,发现带有类标号的数据一共有100行,为了避免数据的过度拟合,必须把数据训练集和校验集分开,目前的拆分策略是各50行。类标号为female的数据有21条,而类标号为male的数据有79条,这样目前遇到的问题是,究竟如何处理仅有的21条female

4、数据?为了能在训练分类模型时有更全面的信息,所以决定把包含21条female类标号数据和29条male类标号数据作为模型训练数据集,而剩下的另49条类标号类male的数据将全部用于校验数据集,这是因为在校验的时候,两种类标号的数据的作用区别不大,而在训练数据模型时,则更需要更全面的信息,特别是不同类标号的数据的合理比例对训练模型的质量有较大的影响。2.3预处理具体步骤第一步:合并movie_given.xlsx和test.xlsx,保存为total_data.xlsx;第二步:在total_data.xlsx中删除多余的ID列信息;第三步:在excel中打开“total_data.xlsx”,

5、选择菜单文件-另存为,在弹出的对话框中,文件名输入“total_data”,保存类型选择“CSV(逗号分隔)”;第四步:使用UltraEdit工具把total_data.csv中的数据缺失部分补上全局常量?;第五步:打开Weka的Exporler,点击Open file按钮,打开刚才得到的“total_data.csv”文件,点击“save”按钮,在弹出的对话框中,文件名输入“total_data”,文件类型选择“Arff data files(*.arff)”,这样得到的数据文件为“total_data.arff”。第六步:从total_data.arff文件里面剪切所有没有分类标号的数据作

6、为预测数据集(test.arff),共26项。第七步:把剩下含有类标号数据的total_data.arff文件复制一份,作为总的训练数据集。文件名称为build_model.arff。第八步:从total_data.arff文件中剩下的数据里面选取所有分类标号为male的49行数据作为校验数据集(validate_data.arff)。第九步:从把剩下的total_data.arff文件改名为train_data.arff。3. 实验过程及结果截图3.1决策树分类用“Explorer”打开刚才得到的“train-data.arff”,并切换到“Class”。点“Choose”按钮选择“tree

7、 (weka.classifiers.trees.j48)”,这是WEKA中实现的决策树算法。选择Cross-Validatioin folds=10,然后点击“start”按钮:训练数据集训练决策树得出的结果使用不同配置训练参数,得到的实验数据:配置不同的叶子节点的实例个数实例数/叶节点23456准确率54%60%56%56%56%结果分析:使用决策树时,每个叶子节点最优的实例个数为3。校验数据集校验决策树得出的结果初步结果分析:使用决策树进行分类,对于已知的49个类标号为male的数据都进行了准确的分类,并且达到100%;虽然是个很好的数据,但是完美背后隐藏了缺陷,是以对female类的低

8、准确率作为代价的,因为这样会说明该分类器很有可能偏向male类。3.2 K最近邻算法分类点“Choose”按钮选择“laze-ibk”,这是WEKA中实现的决策树算法。选择Cross-Validatioin folds=10,然后点击“start”按钮:训练数据集训练KNN得出的结果使用不同配置训练参数,得到的实验数据:配置不同的叶子节点的实例个数K值12345678910准确率52%54%56%58%60%58%60%68%62%62%结果分析:使用KNN算法分类时,K最优值为8。校验数据集校验KNN得出的结果初步结果分析:对使用k=8训练出来的分类模型进行校验的结果,准确率达到77.6%,

9、算是一个比较合理的分类结果。3.3 朴素贝叶斯分类点“Choose”按钮选择“bayes”,这是WEKA中实现的决策树算法。选择Cross-Validatioin folds=10,然后点击“start”按钮:训练数据集训练Nave Bayes得出的结果校验数据集校验Nave Bayes得出的结果初步结果分析:评价结果中准确率仅仅达到59.1%,结果不是很让人满意。3.4 三类分类方法的校验结果比较决策树K最近邻朴素贝叶斯校验准确率100%77.55%59.18%训练混淆矩阵校验混淆矩阵标准误差0.420.46540.5918比较结果分析: 根据上述数据,虽然决策树有最高的完美的准确率和相对较

10、好的标准误差,但是这种完美的背后,很有可能是以类标号female的较大错误率作为代价,这点可以从训练混淆矩阵中得到印证;而朴素贝叶斯分类算法的准确率相对较低,而标准误差也较高,综合评价可以得知,当前最好的分类算法是KNN算法,并且它是最优设置参数为k=8。3.5 训练最优模型使用预处理中的buildmodel_data.arff数据文件训练分类模型,算法为k=8的KNN。数据集训练KNN得出的结果使用最终模型对测试集进行预测结果4.三种算法在进行测试的性能比较 4.1实验结果决策树的测试结果:KNN测试结果:朴素贝叶斯测试结果:比较分析结论: 性能分析应该包括两个部分,一个部分是测试速度,另一个部分是测试的质量。由于本次使用所使用的数据量太少,在测试速度的对比上相差太少,无法进行准确的分析。而在测试质量上,可以从上述数据中得到,决策树依然是由于它对与male类标号的偏爱,导致质量的降低;而KNN与朴素贝叶斯相比,KNN具有较高的准确率,从性能角度上讲,KNN算法略胜一筹。 5.实验总结本次实验进行比较顺利,使我对如何在Weka中进行分类分析有了更深刻的了解,对Weka中进行分类分析的KNN算法,朴素贝叶斯算法和决策树算法都有了进一步的理解,同时也深刻体会到数据预处理对于数据挖掘的重要性。 12

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号