weka实验报告

DW&DM课程实验报告

                     

                          班级:信管11-1

                       姓名:陈丽华

                            学号:201108071131

一、    实验目的

验证

二、    实验内容

(一)聚类分析

(1)数据准备

1. 数据文件格式转换

      使用WEKA作数据挖掘,面临的第一个问题往往是我们的数据不是ARFF格式的。幸好,WEKA还提供了对CSV文件的支持,而这种格式是被很多其他软件,比如Excel,所支持的。现在我们打开“bank-data.csv”。

      利用WEKA可以将CSV文件格式转化成ARFF文件格式。ARFF格式是WEKA支持得最好的文件格式。

      此外,WEKA还提供了通过JDBC访问数据库的功能。

2.“Explorer”界面

“Explorer”提供了很多功能,是WEKA使用最多的模块。

3. bank-data数据各属性的含义如下:

id:  a unique identification number
age:  age of customer in years (numeric)
sex:  MALE / FEMALE
region: inner_city/rural/suburban/town
income:  income of customer (numeric)
married:    is the customer married (YES/NO)
children: number of children (numeric)
car:          does the customer own a car (YES/NO)
save_act: does the customer have a saving account (YES/NO)
current_act:does the customer have a current account (YES/NO)
mortgage:      does the customer have a mortgage (YES/NO)
pep:   did the customer buy a PEP (Personal Equity Plan,个人参股计划) after the last mailing (YES/NO)

上图显示的是 “Explorer”打开“bank-data.csv”的情况。

(2)聚类的任务是把所有的实例分配到若干的簇,使得同一个簇的实例聚集在一个簇中心的周围,它们之间距离的比较近;而不同簇实例之间的距离比较远。现在我们对前面的“Fund-data-normal”作聚类分析,使用最常见的K均值(K-means)算法。

运行WEKA的主程序,我们点击进入“Simple CLI”模块提供的命令行功能。在D盘下进行转换,在新窗口的最下方输入框写上javaweka.core.converters.CSVLoader D:/Fund-data.csv >  D:/Fund-data.csv.arff即可完成转换,生成文件“D:/Fund-data.csv.arff”。用“Explorer”打开训练集“Fund-data-normal.arff”。用“Explorer”打开刚才得到的“Fund-data-normal.arff”,并切换到“Cluster”。点“Choose”按钮选择“SimpleKMeans”,这是WEKA中实现K均值的算法。点击旁边的文本框,修改“numClusters”为6,说明我们希望把这734条实例聚成6类,即K=5。下面的“seed”参数是要设置一个随机种子,依此产生一个随机数,用来得到K均值算法中第一次给出的K个簇中心的位置。我们不妨暂时让它就为10。  

选中“Cluster Mode”的“Use training set”,点击“Start”按钮,观察右边“Clusterer output”给出的聚类结果。见下图

(3)本次实验采用的数据文件是Fund-data-normal,通过观察本次实验的实验结果观察,我们可以知道: Number of iterations: 5,意味着本次实验把这734条实例聚成了6类,即K=5 和Within cluster sum of squared errors。这是评价聚类好坏的标准,数值越小说明同一簇实例之间的距离越小。如果把“seed”参数改一下,得到的这个数值就可能会不一样。我们应该多尝试几个“seed”,并采纳这个数值最小的那个结果。Cluster centroids:之后列出了各个簇中心的位置。对于数值型的属性,簇中心就是它的均值(Mean);分类型的就是它的众数(Mode)。对于数值型的属性,还给出了它在各个簇里的标准差(Std Devs)。 最后的“Clustered Instances”是各个簇中实例的数目及百分比。

(二)关联规则分析

1、我们打算对前面的“Fund-data-normal”数据作关联规则的分析。用“Explorer”打开“Fund-data-normal.arff”后,切换到“Associate”选项卡。默认关联规则分析是用Apriori算法,我们就用这个算法,但是点“Choose”右边的文本框修改默认的参数。 

从网上获得的Apriori有关知识:对于一条关联规则L->R,我们常用支持度(Support)和置信度(Confidence)来衡量它的重要性。规则的支持度是用来估计在一个购物篮中同时观察到L和R的概率P(L,R),而规则的置信度是估计购物栏中出现了L时也出会现R的条件概率P(R|L)。关联规则的目标一般是产生支持度和置信度都较高的规则。 

2、下面对实验结果进行解释。  

Lift(提升度): P(L,R)/(P(L)P(R))  

Lift=1时表示L和R独立。这个数越大,越表明L和R存在在一个购物篮中不是偶然现象。  

Leverage(杠杆效率,影响力):P(L,R)-P(L)P(R)  

它和Lift的含义差不多。Leverage=0时L和R独立,Leverage越大L和R的关系越密切。  

Conviction(确信):P(L)P(!R)/P(L,!R) (!R表示R没有发生)  

Conviction也是用来衡量L和R的独立性。从它和lift的关系(对R取反,代入Lift公式后求倒数)可以看出,我们也希望这个值越大越好。

现在我们计划挖掘出支持度在10%到100%之间,并且lift值超过1.5且lift值排在前100位的那些关联规则。我们把“lowerBoundMinSupport”和“upperBoundMinSupport”分别设为0.1和1,“metricType”设为lift,“minMetric”设为1.5,“numRules”设为10,其他参数不变。点击“start”,见图

(三)分类分析

1、相关知识

     决策树是利用一系列规则构建一棵树.它可高度自动化地建立起易于为用户所理解的模型并且具有较好地处理缺省数据及带有噪声数据等能力。可以直观、清晰地表达加工的逻辑要求。特别适合于判断因素比较少、逻辑组合关系不复杂的情况。数据挖掘中决策树是一种经常要用到的技术,可以用于分析数据,同样也可以用来作预测。

  决策树分类算法有CLS,ID3,C4.5,CART等算法。这里采用C4.5算法和C5.0算法。WEKA里的J48决策树模型是对Quinlan的C4.5决策树算法的实现,并加入了比较好的剪枝过程,有非常好的精度。

2、具体操作

(1)在开始程序(或者桌面图标)中找到WEKA,单击即可启动WEKA,启动WEKA时会发现首先出现的一个命令提示符。接着将出现如下Weka GUI Chooser界面。

(2)选择GUI Chooser中的探索者(Explorer)用户界面。点击预处理(Preprocess)功能按钮的,Open file,选择其中的“weather”数据作关联规则的分析。打开“weather.arff”,可以看到“Current relation”、“Attributes”“Selected attribute”三个区域。

(3)点击“Classify”选项卡。单击左上方的Choose按钮,在随后打开的层级式菜单中的tree部分找到J48。

(4)选中J48分类器后,J48以及它的相关默认参数值出现在Choose按钮旁边的条形框中。单击这个条形框会打开J48分类器的对象编辑器,编辑器会显示J48的各个参数的含义。

(5)选定分类器后,单击Start按钮使其开始工作。

(6)实验结果

在窗口的右区域默认显示了全部输出结果。在该结果的开头给出了数据集概要并注明所需要的评估方法是默认的10折交叉验证。

(四 )实验结果和分析

(1)聚类分析

在“Cluster centroids:”之后列出了各个簇中心的位置。而“Clustered Instances”是各个簇中实例的数目及百分比。为了观察可视化的聚类结果,我们在左下方“Result list”列出的结果上右击,点“Visualize cluster assignments”。弹出的窗口给出了各实例的散点图。最上方的两个框是选择横坐标和纵坐标,第二行的“color”是散点图着色的依据,默认是根据不同的簇“Cluster”给实例标上不同的颜色。可以在这里点“Save”把聚类结果保存成ARFF文件。在这个新的ARFF文件中,“instance_number”属性表示某实例的编号,“Cluster”属性表示聚类算法给出的该实例所在的簇。如图所示

(2)关联规则

由于本文所用的样本关系,实力中的数据不能通过关联规则分析出结果。

三、     实验总结

通过本次试验,使我对如何在Weka中进行聚类分析、关联规则分析和分类有了更深刻的了解,对Weka中进行聚类分析的simpleKmeans算法也有了进一步的理解,同时也深刻体会到数据预处理对于数据挖掘的重要性。但是实验中所遇到的,有关如何以最快的速度找出最好的聚类方案的相关问题,我还理解和运用的不是非常熟悉。在今后的学习中我将通过查阅文献和咨询老师、同学,对此加以熟悉和改进。

 

第二篇:weka

甘肃政法学院

本科生实验报告

(一)

姓名:***

学院:信息工程学院

专业:信息管理与信息系统

班级:信管班

实验课程名称:数据仓库与数据挖掘

实验日期:  20## 年 10 月 15 日

指导教师及职称:*** 

实验成绩:

开课时间:***  学年  ** 学期

甘肃政法学院实验管理中心印制

相关推荐