数据挖掘 主题:第六章作业
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
本科生实验报告
实验课程数据挖掘
学院名称信息科学与技术学院
专业名称计算机科学与技术
学生姓名代星
学生学号201413030317
指导教师
实验地点
实验成绩
二〇一六年11月二〇一六年11月
第1章实验内容
使用心脏病患者数据集(CardiologyNumerical.arff)的前两百个实例进行反向传播学习训练,剩余的103个实例作为检验集实例进行模型检验。改变网络结构和参数,使之达到更为理想的检验及效果。
第2章实验目的
对心脏病患者数据集中的数据用反向传播学习训练方法进行分类,查看分类的效果。并通过改变网络的结构和参数,使分类效果更加理想。
第3章算法思想
BP算法是一种有监督式的学习算法,其主要思想是:输入学习样本,使用反向传播算法对网络的权值和偏差进行反复的调整训练,使输出的向量与期望向量尽可能地接近,当网络输出层的误差平方和小于指定的误差时训练完成,保存网络的权值和偏差。具体步骤如下:
(1)初始化,随机给定各连接权[w],[v]及阀值θi,rt。
(2)由给定的输入输出模式对计算隐层、输出层各单元输出。
(3)选取下一个输入模式对返回第2步反复训练直到网络设输出误差达到要求结束训练。
第4章实验过程
4.1数据准备
从网上下载数据集,生成.csv文件,加载到Weka。
4.2 建立神经网络结构
1、在Weka Explorer中切换到Classify选项卡,单击Classify窗口的Choose 按钮,选择分类器MultilayerPerceptron,即基于BP学习算法的多层前馈神经网络。
2、在Choose按钮右边的文本框点击,打开分类器的属性设置对话框,将GUi 设置为true,使得在训练前,可查看包含神经网络体系结构的GUI界面,并可交互式地修改结构和设置其他参数,且可以在网络训练过程中暂停,进行结构和参数的反复修改。在属性设置对话框中,设置hiddenLayers为“5,3”,表示有两个隐层,分别有5个和3个隐层节点;设置learning-Rate为0.5,trainingTime 为5000.
3、单击OK按钮,回到Weka Explorer的Classifier窗口,在测试集的选择上题目要求前两百个数据作为实例,最后103个作为检验集,设置Test Options 为Percentage split(取实例个数的百分比作为检验集),并设置为34%满足题目要求。单击More options按钮,打开Classifier evaluation options对话框,选中Output复选框,以确保在输出中能够看到检验集的分类情况。
4、单击start按钮,开始神经网络的训练过程。弹出神经网络的GUI界面,单击start按钮,执行训练,并选择accept训练结果。
5、修改参数,重复上述步骤,重新实验,并对比实验结果。
第5章实验结果
实验一:全部作为实例
此实验实例个数为303,分类正确率只有61.3362%,较低。
实验二:前200作为实例,剩余103作为检验集
此实验实例个数为200个,分类正确率为98.5273%,比之前经所有数据全部作为
实例的正确率大大提高,并且按照题意,将此实验作为之后实验的对照。
实验三:只改变隐层为(7,3),其他不变
此实验实例个数为200个,正确率为98.5593%,与上图的隐层的节点数为(5,3)的分类正确率98.5273%相比分类正确率稍稍升高,由此可知节点数要根据需要适当选择。
实验四:只改变learningRate为0.5,其他不变
实例个数为200个,分类正确率为98.5273%,与实验二的学习率为0.3分类正确率相比正确率相同,所以猜想学习率对实验结果影响较小。
3、只改变trainingTime为500,其他不变:
实例个数为200个,分类正确率为98.5273%,与实验二的周期数为5000分类正
确率相同。
第6章结果分析
通过改变参数进行对比试验结果表明,将所有数据的部分作为实例,其他作为检验数据集的实验结果较为准确。在此实验中改变其它条件对于准确率的影响都不是很大,但是可能是由于输入数据的特殊性造成的,之后的实验中还要更进一步验证。
第7章心得体会
从这次的作业中更加深入的了解神经网络算法以及Weka软件的使用。实验中经过多次不同实验的对比也了解了不同参数对于实验的影响。