大数据挖掘xxxxxxx.docx

上传人:b****3 文档编号:4016222 上传时间:2023-05-06 格式:DOCX 页数:49 大小:1.78MB
下载 相关 举报
大数据挖掘xxxxxxx.docx_第1页
第1页 / 共49页
大数据挖掘xxxxxxx.docx_第2页
第2页 / 共49页
大数据挖掘xxxxxxx.docx_第3页
第3页 / 共49页
大数据挖掘xxxxxxx.docx_第4页
第4页 / 共49页
大数据挖掘xxxxxxx.docx_第5页
第5页 / 共49页
大数据挖掘xxxxxxx.docx_第6页
第6页 / 共49页
大数据挖掘xxxxxxx.docx_第7页
第7页 / 共49页
大数据挖掘xxxxxxx.docx_第8页
第8页 / 共49页
大数据挖掘xxxxxxx.docx_第9页
第9页 / 共49页
大数据挖掘xxxxxxx.docx_第10页
第10页 / 共49页
大数据挖掘xxxxxxx.docx_第11页
第11页 / 共49页
大数据挖掘xxxxxxx.docx_第12页
第12页 / 共49页
大数据挖掘xxxxxxx.docx_第13页
第13页 / 共49页
大数据挖掘xxxxxxx.docx_第14页
第14页 / 共49页
大数据挖掘xxxxxxx.docx_第15页
第15页 / 共49页
大数据挖掘xxxxxxx.docx_第16页
第16页 / 共49页
大数据挖掘xxxxxxx.docx_第17页
第17页 / 共49页
大数据挖掘xxxxxxx.docx_第18页
第18页 / 共49页
大数据挖掘xxxxxxx.docx_第19页
第19页 / 共49页
大数据挖掘xxxxxxx.docx_第20页
第20页 / 共49页
亲,该文档总共49页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

大数据挖掘xxxxxxx.docx

《大数据挖掘xxxxxxx.docx》由会员分享,可在线阅读,更多相关《大数据挖掘xxxxxxx.docx(49页珍藏版)》请在冰点文库上搜索。

大数据挖掘xxxxxxx.docx

大数据挖掘xxxxxxx

中南民族大学

计算机科学学院

《数据挖掘与知识发现》

综合实验报告

姓名

年级级

专业软件工程

指导教师李波

学号

序号31

实验类型综合型

成绩评定

评语:

 

教师签名:

年月日

2016年12月15日

 

年级

 

专业

软件工程

班级

组号

实验室

9-205

日期

实验

名称

  数据挖掘与知识发现

分项内容

实验级别

Weka环境熟悉;决策树

(1)

决策树

(2)

关联规则,聚类分析

KDD案例

属性相关性,神经网络

(1)

神经网络

(2)

小组成员

姓名

学号

组内分工

自我评分

教师评分

 

 

 

 

 

实验分项1

 Weka环境熟悉;决策树

(1)

1.熟悉Weka软件的环境和基本用法。

2.掌握ARFF数据文件的编制方法。

3.学习应用Weka软件建立决策树的方法,并理解决策树的剪枝和未剪枝的分类效果。

1、参照教材19-22页内容,熟悉页内容,熟悉WekaWekaWeka软件的安装及使用环境;

2、在记事本程序中编制ColdTypetraining.arff,ColdTypetest.arff.

3、打开WekaWekaWeka软件,并参软件,并参照教材1.9.21.9.2,完成相关操作并小节,完成相关操作并小节,完成相关操作并小节,完成相关操作并理解相应处理结果。

4、根据教材表2.1所提供的数据集T,基于WekaWekaWeka软件,应用C4.5算法建立决策树,预测某个学生是否决定去打篮球。

要求:

(1)采用arffarff文件来完成;文件来完成;

(2)分别完成决策树剪枝和未的情况。

1.熟悉Weka软件的环境和基本用法并编写arff文件。

(1)我们实验中Weka访问的数据格式是arff格式的。

(2)运行Weka后,出现了窗口,我们在里面选择Explorer界面。

(3)在Preprocess选项卡,点击file按钮,加载arff文件,就可以对文件中的数据进行采集挖掘。

(4)用@data定义数据集的开始,数据值用逗号隔开,若存在缺失数据,则用问号表示。

2.打开Weka软件,按照教材要求完成相关操作,并理解相应处理结果

 

(1)在打开arff文件后,界面详细显示了数据集的实例个数,属性值的比例关系等。

图1

 

(2)在界面中可以进行属性和实例的筛选,直接在对话框中对数据实例进行筛选,对缺失数据进行填补,重命名甚至进行排序也可以。

 

 (3)建立分类模型,切换到classify选项卡,单击choose按钮,打开分类器选择对话框,选择J48来建立决策树模型。

在Testoptions面板底部有一个Moreoptions按钮,单击该按钮,打开Classifierevaluationoptions对话框,设置选中Outputpredictions复选框,可以在输出结果中出现预测输出结果。

单击start按钮,就可以执行数据挖掘。

 

图2

 (3)在Resultlist列表框的会话条目上右击,从快捷菜单中选择Visualizetree命令,打开TreeView窗口,可以看到感冒类型诊断决策树。

 

图3

 (4)利用所建立的分类模型分类未知实例,在执行数据挖掘前,将Testoptions检验方式设置为Suppliestestset,并打开ColdType-test.arff文件作为检验集。

在输出结果中显示预测结果,再单击start按钮,执行数据挖掘。

 

(5)切换到Cluster选项卡,选择简单K-均值算法,打开算法参数设置对话框,在其中设置聚类的相关参数,本次实验中簇的个数为2,分类属性为Cold-Type。

 

 (6)为了能够更客观的显示,打开可视化窗口,将x轴改为Cluster,将Y轴改为Cold-Type,拖动Jitter滑块至中间,可以清楚地看到分布结果。

 

我们可以清楚地看见数据分为了两个簇,每一个簇中的感冒性质是一样的,两个簇的种类分别是病毒性感冒和细菌性感冒。

 (7)并且能够看清楚坐标系中每个点所在的信息。

(8)使用Weka进行关联分析,切换到Associate选项卡,规则书默认为10条,最小置信度为0.9.执行关联分析。

由上图我们可以发现并不是所有的关联规则都是有价值的,所以在参数设置上还有很大的改进空间。

(9)根据打篮球的数据集建立剪枝与未剪枝的决策树。

由于打篮球的数据太少,所以剪枝与未剪枝的决策树是一样的,只有当数据很多的时候,决策树才会有明显的不同。

(10)预测某个学生是否决定去打篮球

经test文件的数据集以及由篮球数据得出的决策树得到是否决定打篮球的输出结果。

在这次的test文件中得到的两个预测结果一个是yes,一个是No。

通过本次实验,我基本掌握了weka软件的使用,掌握ARFF数据文件的编制方法。

并学习应用Weka软件建立决策树的方法,并理解决策树的剪枝和未剪枝的分类效果

实验分项2

 决策树

(2)

1.进一步熟悉Weka软件的环境和基本用法。

2.学习应用Weka软件建立决策树的方法,并理解决策树的剪枝和未剪枝的分类结果。

具体题目

1.使用来自UCI的Creditscreeningdatabase数据集,应用weka的J48算法建立2棵决策树,分别为剪枝和未剪枝的情形。

2.分别采用usetrainingset和cross-validation方式进行验证。

3.将表的第三条实例play属性值由Yes改为No,在进行决策树训练,比较生成的分类模型。

1.使用来自UCI的Creditscreeningdatabase数据集,应用weka的J48算法建立2棵决策树,分别为剪枝和未剪枝的情形。

(1)在J48的算法下,先设置未剪枝情况,单击Classify选项卡中的choose后面的文本框,在打开的参数设置对话框中选择,可以看到决策树的参数设置。

经过剪枝的决策树

未经过剪枝的决策树

上面两个验证方法采用的是usetrainingset,下面我们采用交叉验证CrossValidation来验证分类器,所用的折数填为10。

下图表示的是剪枝的图,采用的CrossValidation验证。

下图表示的是未剪枝的图,采用的CrossValidation验证。

下图是crossValidation的剪枝决策树决策树的状态如下:

下图是crossValidation的未剪枝的决策树,与usetrainingset的未剪枝决策树是一样的。

但是在数据分析中分的更仔细一些,精确一些。

2.将表的第三条实例play属性值由Yes改为No,在进行决策树训练,比较生成的分类模型

上图是属性未改之前的决策树

 

 

 

由于表的第三条实例play属性值由Yes改为No,在进行决策树训练,这种选择影响着所有的后续子树。

从上图中我们可以发现通过属性值的更改直接导致了根结点的变化,之前的根结点是Courses,现在根节点是Weather。

通过本次实验,学习应用Weka软件建立决策树的方法,并理解决策树的剪枝和未剪枝的分类结果。

实验分项3

关联规则,聚类分析

1.进一步熟悉weka软件的环境和基本用法。

2.学习应用weka软件生成关联规则的方法。

3.学习应用weka软件进行K-means聚类分析的方法。

具体题目

1.根据教材表2.3所提供的数据集,基于weka软件,应用Apriori算法建立关联规则。

2.对教材表2.6的数据集,应用weka软件进行K-means聚类,先建立一个arff文件。

3.对教材习题2-10题,进行上机验证。

系统平台。

Weka软件

1.根据教材表2.3所提供的数据集,基于weka软件,应用Apriori算法建立关联规则。

(1)为适应Apriori算法,我们要将数值型数据转换成分类类型数据,将其中的1替换成yes,0替换成no。

(2)加载数据项之后,用weka打开文件,切换到Associate选项卡,单击Choose按钮,选择Apriori算法。

(3)单击choose按钮右方的文本框,在算法参数设置对话框中,设置outputItemSets为True,希望输出条目集,从图中可以看到使用置信度Confidence进行规则的度量,最小置信度为0.9,支持度support阈值的上下限为0.1~1.0,我在此次的实验中阈值设为0.1。

(4)单击Start按钮,输出结果如下图,在图中看到支持度阈值为0.35,置信度阈值为0.9,以及各个条目集,而我们可以看到生成的关联规则有10条,置信度全为100%。

APriori算法输出结果

关联规则结果分析:

1.关联规则应用广泛,大型数据之间可以经常发现数据之间的关系。

2.但是一次关联分析输出的规则往往数量较多,但多数并无利用价值,所以我们应用要谨慎。

2.对教材表2.6的数据集,应用weka软件进行K-means聚类,先建立一个arff文件。

(1)加载arff文件,切换到Cluster选项卡,单击Choose按钮,打开算法对话框,选择SimpleKMeans算法

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

(3)单击Start按钮,查看结果,注意结果中将实例分为0和1两个簇,最后分别有两个和三个实例,并且每个簇中心的值分别为(4.1667,4.3333)和(1.5,1.25),与算出来的结果完全相同。

(4)K-means聚类的输出结果

K-means聚类的可视化输出结果

 

(4)在Resultlist窗格中的本次数据挖掘会话条目上右击,选择Visualizeclusterassignments命令,打开聚类可视化窗口,选择x,y,分别显示属性值。

K-means算法小结:

(1)在算法开始前,需要选择K值,不同的K值会有不同的聚类效果。

(2)当簇的大小近似相等时,K-means的算法效果最好。

对于习题2-10的验证:

1.我们先加载篮球的数据集,选择play列,单击Remove按钮,使该属性不参加训练。

切换到Cluster选项卡,单击choose按钮,打开算法选择对话框,选择SimpleKMeans算法。

2.单击Choose右方的文本框,打开参数设置对话框,保持默认值。

3.单击start按钮,查看结果。

实例被分成了0,1两个簇,分别是7,8个实例,与play的实际分类情况一致。

4.在resultlist窗格中的本次数据挖掘会话条目上右击,会出现如下图所示的可视化输出结果。

本次实验基本算法是K-means算法:

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

2.在数据集中任选K个实例,将他们作为初始簇中心。

3.计算这K个簇中心与其他剩余实例的简单欧氏距离,按照这个划分到簇中。

4.使用每个簇中的实例计算该簇的新簇中心。

当计算得到新的簇中心与上次一致,则终止算法。

1.算法中使用置信度和支持度两个指标来确定关联规则,关联规则是从大型数据库中找到数据之间的关联关系,关联规则和传统的产生式规则不同。

2.K-means算法:

随机选择一个K值,用以确定簇的总数;在数据集中任选K个实例,将他们作为初始簇中心;计算这K个簇中心与其他剩余实例的简单欧氏距离,按照这个划分到簇中;使用每个簇中的实例计算该簇的新簇中心;当计算得到新的簇中心与上次一致,则终止算法。

实验

分项4

KDD案例

1.学习应用Weka软件进行KDD案例分析的基本步骤。

2.学习通过K-means聚类算法对输入属性进行评估的方法。

具体题目

参照教材3.3小结,基于Weka软件,完成KDD过程模型和分析任务

系统平台

Weka软件

步骤:

建模

使用Weka进行有指导的学习训练,选择C4.5数据挖掘算法,在weka中名为J48将testoption设置为Percentagesplit,并使用默认百分比66%。

选择class为输出属性,并选中classifierevaluationoptions对话框中的Outputpredictions复选框,以显示在检验集上的预测结果。

步骤:

评估

通过检查如下图所示,我们可以得出检验集分类正确率为84.3%,是一个不算太差的结果,可以用于评估。

步骤:

评估

而我们为了得到更高质量的分类器,我们可以作以下考虑:

1.修改算法参数

2.进行属性评估

3.进行实例选择

4.选择其他有指导学习算法

其中对于在尝试修改算法参数,而分类器质量未得到明显的改善的情况下,可考虑进行属性评估。

即检查输入属性是否能够很好的定义数据中所包含的类。

如果输入属性很好的定义了输出类,将看到实例很自然被聚类到已知的类中。

所以通过无指导聚类技术,可以对输入属性进行评估。

下图是分类模型训练结果

 

评估步骤如下:

1.先加载信用卡筛选数据集到Weka,切换到Cluster选项卡,选择SimpleKMeans算法。

2.设置算法参数,显示标准差,迭代次数设置为5000次,其他保持默认,簇的默认情况下为2。

3.在Clustermode面板中设置评估数据为Usetrainingset,并单击Ignoreattributes按钮,选择忽略class属性。

4.单击start按钮,执行聚类,结果如下图,观察结果可发现,共有690个实例,,其中有518个实例被分类到Cluster0中,172个实例被分类到Cluster1中,但是与实际分类情况不相似,实际情况是被分成了307个实例和383个实例,所以该聚类所形成的簇没有较高的质量,初步断定输入属性对于实例的分类能力不太强,如下图所示:

 

聚类结果

对属性进行进一步分析,包括两个方面。

1.对缺失属性进行检测。

2.对所有属性的分类能力进行检测,找出较大分类能力的几个属性和具有较小分类能力的属性。

对于缺失属性值的检测结果,通过Weka的Preprocess预处理选项卡。

选择不同属性,查看Missing项,如下图的six属性检测情况。

Missing显示该属性有9个缺失值,通过查看数据集数据,发现该属性的确缺失9个属性值,所以weka将所有的缺失值检测出来了。

对于所有属性的分类能力的检测,可通过查看Clustereroutput窗口中每个属性的每个取值在两个簇中的分布来初步确定。

如属性A1的一个取值b分别在Cluster0和Cluster1中出现了356和124,分别占出现的所有的A1取值的68%和72%。

属性A1的另外一个取值分别在Cluster0和Cluster1中出现了162和48,分别占出现的所有的A1取值的31%和27%。

而A1中的每个取值分别在两个簇中的出现的比例差不多,表明属性A1分别取值a和b的实例并没有很好地被聚类到不同的簇。

这就说明属性A1不具有较好的分类能力。

但我们可以从聚类图中看出如A5的分类能力就比较好,同样我们也可以通过Visualizeclusterassignments窗口直观地观察15个属性的分类能力。

属性A1:

属性A2:

属性A9:

属性A12:

属性A11:

属性A4:

:

通过对15个输入属性进行分类能力的检查,发现A9,A10,A11,A12这4个属性具有较好的分类预测能力,而A1,A2,A4,A5,A6这5个属性具有较差的分类预测能力。

下面我们可以选择A9,A10,A11,A12这4个具有较好分类预测能力的属性,删除其他属性进行实验,发现分类的正确率仍为84.3%,分类正确率并未得到提升,说明依靠属性选择期望提高分类器质量的办法不行。

但是若删除这四个属性,使用其他的输入属性进行实验,得到的正确率会有很大幅度的下降,所以我们可以仅使用这四个属性建模,在提高实验效率的同时,又不降低分类器的质量。

通过属性选择不能达到提高分类模型质量的目的,那么我们可以通过实例选择来提高,选择具有代表性的属性值的实例,其中分类类型的属性值为出现比例最高的属性值,如A1的b属性值,数值型属性值为接近各类中均值的取值如A2中属性32.55,28.6,所以我们要取属性A2的值接近这两个值的实例。

选择这些输入属性进行实验,会发现分类的正确率有所提高。

最后的输出结果如下图所示:

 

我们可以发现正确率从84.3%提高到了92.3%,所以我们有代表性属性值的数据实例建立有指导的模型比训练实例建立的模型效果更好。

本次实验基本算法是K-means算法:

5.随机选择一个K值,用以确定簇的总数。

6.在数据集中任选K个实例,将他们作为初始簇中心。

7.计算这K个簇中心与其他剩余实例的简单欧氏距离,按照这个划分到簇中。

8.使用每个簇中的实例计算该簇的新簇中心。

9.当计算得到新的簇中心与上次一致,则终止算法。

通过这次实验,我知道了基本算法是K-means算法,K-means是一种无指导的聚类技术,使用它可以将相似性高的实例划分到相应的簇中,但是它缺乏对数据集属性的重要性判断。

实验分项5

属性相关性,神经网络

(1)神经网络

(2)

1.理解属性评估的原理,掌握属性相关性的计算。

2.理解BP神经网络的基本原理,掌握应用BP算法建立前馈神经网络的方法和步骤。

具体题目

1.根据教材5.4节的5.4.1小节,基于Excel的correl函数计算属性相关性,并使用散点图来查看属性相关性,对结果进行分析。

2.参照教材6.2.3小节,基于weka软件,使用BP算法创建有指导的分类模型。

实验内容为6.2.3中实验1:

建立逻辑异或模型。

系统平台

Weka软件和Excel表格

1.使用MSExcel的CORREL函数计算属性相关性

用Excel的CORREL函数计算iris数据集中的Petal_width(花瓣宽度)和Petal_length(花瓣长度),Petal_width(花瓣宽度)和Sepal_width(花萼宽度)两对属性之间的分别相关度。

过程如下。

(1)在Excel中加载iris.xls数据集。

(2)在一个空白单元格中输入=CORREL(B2:

B151,C2:

C151),单击确定按钮。

(3)在另一个空白单元格中输入=CORREL(B2:

B151,D2:

D151),单击确定按钮。

在两个单元格中分别显示了0.9627和-0.3661。

前一个值接近于1,说明花瓣宽度和长度之间具有较强的正相关性;而后一个值说明花瓣宽度和花萼宽度两个属性之间具有一定的但较小的负相关性。

2.使用散点图检查属性的相关性

相关系数只能表示两个属性之间的线性相关程度。

两个具有较小r值的属性仍可能存在曲线的关系。

通过散点图可以检查两个属性之间是否存在曲线相关,当然也能显示两个属性间的线性相关性。

步骤:

1.在Excel中加载iris.xls数据集。

2.选中Petal_width和Petal_length列,打开“插入”菜单,单击“散点图”按钮,插入以这两个属性为x坐标和y坐标的散点图。

3.选中Petal_width和Sepal_width列,打开“插入”菜单,单击“散点图”按钮,插入以这两个属性为x坐标和y坐标的另一个散点图。

Petal_width和Petal_length的散点图

Petal_width和Sepal_width的散点图

上图显示了生成的两个散点图,根据散点图和相关系数我们可知Petal_width

和Petal_length之间具有较强的正相关性,而Petal_width和Sepal_width两

个属性之间没有相关性。

4.应用BP算法建立前馈神经网络

(1)准备训练数据。

新建Excel电子表格文件,输入内容如下图,另存为.csv文件,并加载到Explorer中。

(2)定义网络体系结构,设置相关参数。

定义网络体系结构需要作出以下几项选择。

1.隐层:

可以设置1~2个隐层,并指定每个隐层中节点的个数。

在Weka中的格式为用逗号分隔的各隐层中节点的个数,如指定的两个隐层,分别有5个和3个隐层节点,设置格式(5,3)。

2.学习率:

可以是0.1~0.9的范围内的数值,通常较低的学习率需要较多的训练迭代,较高的学习率使得网络收敛的更快,由此获得不理想的输出结果的机会更大。

3.周期:

全部训练数据通过网络的总次数。

4.收敛性:

通过收敛性的设置来选择一个训练终止的最大均方根误差,收敛参数的合理设置为0.1,如果希望根据周期数来终止训练,收敛参数可以设置为一个任意小

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

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2