数据挖掘 主题:第五章作业

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

本科生实验报告

实验课程数据挖掘

学院名称信息科学与技术学院

专业名称计算机科学与技术

学生姓名代星

学生学号201413030317

指导教师

实验地点

实验成绩

二〇一六年11月二〇一六年11月

第五章作业题一

第1章实验内容

在UCI上下载一个用于分类的数据集,使用C4.5算法,设置不同的参数建立两个有指导的学习,记录检验集错误率。使用式(5,9)确定两个模型的检验集错误率是否存在显著差异。

第2章实验目的

对于一个用于分类的数据集,使用C4.5算法,设置不同的参数建立两个有指导的学习,记录检验集错误率。使用式(5,9)确定两个模型的检验集错误率是否存在显著差异,从而学会评估有指导的学习模型。

第3章算法思想

选择具有最大增益率的属性作为分支节点来分类实例数据。

第4章实验过程

4.1数据准备

数据集名为IRIS.xls,选择所有150个实例和5个属性,其中4个属性作为输入属性,第5个属性Iris_type作为输出属性,生成.csv文件,加载到Weka。

4.2 建立模型

使用Weka进行有指导的学习训练,选择C4.5数据挖掘算法,在Weka中名为J48,将test options 设置为 Percentage split ,使用百分比72%,选择Iris_type 作为输出属性。单击Moreoptions按钮,打开Classifier evaluation options 对话框,在Output predictions点击choose选中PlainText。表示将在输入结果中显示作为检验集实力的计算输出。单击Start按钮,执行程序。查看混淆矩

阵,计算错误率为9.5%。

通过分析混淆矩阵,重新设置参数使用百分比66%,重复上述步骤,执行程序,计算错误率为3.9%,较之前有了些许提升。

接下来通过假设检验来比较两个用同样训练集创建的有指导的学习模型。公式如上图所示。其中E1为模型M1的检验集分类错误率;E2为模型M2的检验集分类错误率;q为两个模型分类错误率的平均值,即q=(E1+E2)/2;n1和n2分别是检验集A和B的实例个数;q(1-q)是用E1和E2计算出来的方差值。代入数据可得最后的Z=0.057,如果Z值大于等于1.96,就有95%的把握认为M1和M2的检验集性能差别是显著的。此时算出来的是0.057,就说明两个聚类算法的性能差别不是显著的。

第5章实验结果

1、修改参数前:C4.5数据挖掘算法:

2、修改参数后:C4.5数据挖掘算法:

第6章结果分析

通过观察混淆矩阵,并记录检验集错误率,从而修改参数使错误率减小,虽然通过计算结果改进的不明显,但是通过实验掌握了学习方法。

第7章心得体会

通过这次试验,在以前的基础上更加深入的了解了C4.5决策树算法以及Weka 软件的使用。

第五章作业题二

第1章实验内容

使用心脏病人数据集(CardiologyNumerical)的前150个实例作为训练集实例,剩下的153个实例作为检验集实例,选择两种或多种数据挖掘技术建立有指导的学习模型,利用混淆矩阵和检验集错误率评估所建模型,并使用假设检验确定这些模型之间是否存在显著性差异。

第2章实验目的

选择两种或多种数据挖掘技术建立有指导的学习模型,利用混淆矩阵和检验集错误率评估所建模型,并使用假设检验确定这些模型之间是否存在显著性差异,从而学会评估有指导的学习模型。

第3章算法思想

一、k-means 算法:

(1)随机选择一个K值,用以确定簇的总数。

(2)在数据集中任意选择K个实例,将它们作为初始的簇中心。

(3)计算K个簇中心与其他剩余实例简单欧氏距离,用这个距离作为实例之间相似性的度量,将与某个簇相似度高的实例划分到该簇中,成为其成员之一。(4)使用每个簇中的实例来计算该簇新的簇中心。

(5)如果计算得到新的簇中心等于上次迭代的簇中心,终止算法过程。否则用新的簇中心作为簇中心并重复步骤(3)~(5)。

二、最大期望(EM)算法:是在概率(probabilistic)模型中寻找参数最大似然估计或者最大后验估计的算法,其中概率模型依赖于无法观测的隐藏变量(Latent Variable)。最大期望经常用在机器学习和计算机视觉的数据聚类(Data Clustering)领域。最大期望算法经过两个步骤交替进行计算:第一步是计算期望(E),利用对隐藏变量的现有估计值,计算其最大似然估计值;第二步是最大化(M),最大化在 E 步上求得的最大似然值来计算参数的值。M 步上找到的参数估计值被用于下一个 E 步计算中,这个过程不断交替进行。

第4章实验过程

4.1数据准备

心脏病人数据集(CardiologyNumerical)的前150个实例作为训练集实例,剩下的153个实例作为检验集实例,生成.csv文件,加载到Weka。

4.2 建立模型

(1)加载数据集,选择Instance列,单击Remove按钮,使该属性不参加训练。切换到Cluster选项卡,单击Choose按钮,打开算法选择对话框,选择SimpleKMeans算法。

(2)单击Choose按钮右方的文本框,打开参数设置对话框,查看参数,并保持默认。注意将K值(numCluster)设置为2,距离函数选择欧氏距离。

(3)单击Start按钮,查看结果。

(4)结果中将151个实例分为0和1两个参数分别由91个和60个实例。使用Kmeans算法最终分类为0的有84个,分类为1的有68个。与原始的数据集中

的分类有一定的偏差。计算得分类错误率为5.6%。

(5)单击Choose按钮,打开算法选择对话框,使用EM算法进行实验,结果中分类为0的有74个,分类为1的有78个。与原始数据集中的分类有一定差别,分类错误率为4.9%。

(6)

接下来通过假设检验来比较两个用同样训练集创建的有指导的学习模型。公式如上图所示。其中E1为模型M1的检验集分类错误率;E2为模型M2的检验集分类错误率;q为两个模型分类错误率的平均值,即q=(E1+E2)/2;n1和n2分别是检验集A和B的实例个数;q(1-q)是用E1和E2计算出来的方差值。代入数据可得最后的Z=1.076,如果Z值大于等于1.96,就有95%的把握认为M1和M2的检验集性能差别是显著的。此时算出来的是1.076,就说明两个聚类算法的性能差别是不显著的。

第5章实验结果

SimpleKMeans算法:

相关文档
最新文档