ImageVerifierCode 换一换
格式:DOCX , 页数:34 ,大小:887.22KB ,
资源ID:8803795      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-8803795.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数据挖掘技术实验指导书.docx)为本站会员(b****5)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

数据挖掘技术实验指导书.docx

1、数据挖掘技术实验指导书实验指导书数据挖掘技术适用专业:信息与计算科学及相关专业计算机与信息学院编2011年5月实验一 一、实验名称WEKA的使用与数据准备二、实验目的 熟悉数据挖掘的常用软件WEKA的安装和环境,理解weka的数据格式,掌握数据格式的转换,理解数据预处理的必要性和基本方法。三、实验平台计算机、软件WEKA、UtraEdit四、实验数据bank-data.csv (在教材配套光盘的CompanionCDDatafilesChapter_7_AR 目录下)weather.arff (WEKA安装目录的“data”子目录)五、实验方法和步骤1、实验准备(1)访问WEKA网站http:

2、/www.cs.waikato.ac.nz/ml/weka,下载带JAVA虚拟机版本的WEKA,保存在U盘中。(2)阅读课本第8章5.11-8.14小结的内容。(3)将实验所需数据bank-data.csv 从光盘拷贝只U盘中。2、了解weka的环境 (1)安装weka,了解weka的环境 (2)打WEKA自带的“weather.arff”文件,了解arff文件的格式3、数据准备(1)将原来的“bank-data.csv”文件转化为arff文件“bank-data.arff”。(2)把“ID”属性去掉。(3)把“Children”属性转换成数值型的值0,1,2,3。(4)使用“Discreti

3、ze”的Filter把“age”和“income”的离散化,另存文件为bank_data_final.arff六、实验指导1. 简介 WEKA的全名是怀卡托智能分析环境(Waikato Environment for Knowledge Analysis),它的源代码可通过http:/www.cs.waikato.ac.nz/ml/weka得到。同时weka也是新西兰的一种鸟名,而WEKA的主要开发者来自新西兰。WEKA作为一个公开的数据挖掘工作平台,集合了大量能承担数据挖掘任务的机器学习算法,包括对数据进行预处理,分类,回归、聚类、关联规则以及在新的交互式界面上的可视化。图一 WEKA主界面

4、如果想自己实现数据挖掘算法,可以看weka的接口文档,在weka中集成自己的算法。 2005年8月,在第11届ACM SIGKDD国际会议上,怀卡托大学的Weka小组荣获了数据挖掘和知识探索领域的最高服务奖,Weka系统得到了广泛的认可,被誉为数据挖掘和机器学习历史上的里程碑,是现今最完备的数据挖掘工具之一。2. 数据格式跟很多电子表格或数据分析软件一样,WEKA所处理的数据集是图2那样的一个二维的表格。 图2 新窗口打开表格里的一个行称作一个实例(Instance),相当于统计学中的一个样本,或者数据库中的一条记录。列称作一个属性(Attrbute),相当于统计学中的一个变量,或数据库中的一

5、个字段。这样一个表格(数据集),在WEKA看来,呈现了属性之间的一种关系(Relation)。图1中一共有14个实例,5个属性,关系名称为“weather”。 WEKA存储数据的格式是ARFF(Attribute-Relation File Format)文件,这是一种ASCII文本文件。图1所示的二维表格存储在如下的ARFF文件中。这也就是WEKA自带的“weather.arff”文件,在WEKA安装目录的“data”子目录下可以找到。代码:% ARFF file for the weather data with some numric features % relation weathe

6、r attribute outlook sunny, overcast, rainy attribute temperature real attribute humidity real attribute windy TRUE, FALSE attribute play yes, no data % % 14 instances % sunny,85,85,FALSE,no sunny,80,90,TRUE,no overcast,83,86,FALSE,yes rainy,70,96,FALSE,yes rainy,68,80,FALSE,yes rainy,65,70,TRUE,no o

7、vercast,64,65,TRUE,yes sunny,72,95,FALSE,no sunny,69,70,FALSE,yes rainy,75,80,FALSE,yes sunny,75,70,TRUE,yes overcast,72,90,TRUE,yes overcast,81,75,FALSE,yes rainy,71,91,TRUE,no需要注意的是,在Windows记事本打开这个文件时,可能会因为回车符定义不一致而导致分行不正常。推荐使用UltraEdit这样的字符编辑软件察看ARFF文件的内容。识别ARFF文件的重要依据是分行,因此不能在这种文件里随意的断行。空行(或全是空格

8、的行)将被忽略。以“%”开始的行是注释,WEKA将忽略这些行。如果你看到的“weather.arff”文件多了或少了些“%”开始的行,是没有影响的。除去注释后,整个ARFF文件可以分为两个部分。第一部分:头信息(Head information),包括了对关系的声明和对属性的声明。第二部分:数据信息(Data information),即数据集中给出的数据。从“data”标记开始,后面的是数据信息。 (1)关系声明关系名称在ARFF文件的第一个有效行来定义,格式为 relation 是一个字符串。如果这个字符串包含空格,它必须加上引号(指英文标点的单引号或双引号)。(2)属性声明 属性声明用一

9、列以“attribute”开头的语句表示。数据集中的每一个属性都有它对应的“attribute”语句,来定义它的属性名称和数据类型。这些声明语句的顺序很重要。首先它表明了该项属性在数据部分的位置。例如,“humidity”是第三个被声明的属性,这说明数据部分那些被逗号分开的列中,第三列数据 85 90 86 96 . 是相应的“humidity”值。其次,最后一个声明的属性被称作class属性,在分类或回归任务中,它是默认的目标变量。属性声明的格式为 attribute 其中是必须以字母开头的字符串。和关系名称一样,如果这个字符串包含空格,它必须加上引号。WEKA支持的有四种,分别是 nume

10、ric-数值型 -分类(nominal)型 string-字符串型 date -日期和时间型其中 和 将在下面说明。还可以使用两个类型“integer”和“real”,但是WEKA把它们都当作“numeric”看待。注意“integer”,“real”,“numeric”,“date”,“string”这些关键字是区分大小写的,而“relation”“attribute ”和“date”则不区分。数值属性数值型属性可以是整数或者实数,但WEKA把它们都当作实数看待。分类属性分类属性由列出一系列可能的类别名称并放在花括号中:, , , .。数据集中该属性的值只能是其中一种类别。例如如下的属性声明

11、说明“outlook”属性有三种类别:“sunny”,“ overcast”和“rainy”。而数据集中每个实例对应的“outlook”值必是这三者之一。 attribute outlook sunny, overcast, rainy如果类别名称带有空格,仍需要将之放入引号中。字符串属性字符串属性中可以包含任意的文本。这种类型的属性在文本挖掘中非常有用示例: ATTRIBUTE LCC string日期和时间属性日期和时间属性统一用“date”类型表示,它的格式是 attribute date 其中是这个属性的名称,是一个字符串,来规定该怎样解析和显示日期或时间的格式,默认的字符串是ISO-

12、8601所给的日期时间组合格式“yyyy-MM-ddTHH:mm:ss”。数据信息部分表达日期的字符串必须符合声明中规定的格式要求(下文有例子)。(3)数据信息数据信息中“data”标记独占一行,剩下的是各个实例的数据。每个实例占一行。实例的各属性值用逗号“,”隔开。如果某个属性的值是缺失值(missing value),用问号“?”表示,且这个问号不能省略。例如: datasunny,85,85,FALSE,no?,78,90,?,yes字符串属性和分类属性的值是区分大小写的。若值中含有空格,必须被引号括起来。例如: relation LCCvsLCSH attribute LCC stri

13、ng attribute LCSH string data AG5, Encyclopedias and dictionaries.;Twentieth century. AS262, Science - Soviet Union - History.日期属性的值必须与属性声明中给定的相一致。例如: RELATION Timestamps ATTRIBUTE timestamp DATE yyyy-MM-dd HH:mm:ss DATA 2001-04-03 12:12:12 2001-05-03 12:59:55 (4)稀疏数据 有的时候数据集中含有大量的0值(比如购物篮分析),这个时候用稀

14、疏格式的数据存贮更加省空间。稀疏格式是针对数据信息中某个实例的表示而言,不需要修改ARFF文件的其它部分。看如下的数据: data 0, X, 0, Y, class A 0, 0, W, 0, class B 用稀疏格式表达的话就是 data 1 X, 3 Y, 4 class A 2 W, 4 class B 每个实例用花括号括起来。实例中每一个非0的属性值用 表示。是属性的序号,从0开始计;是属性值。属性值之间仍用逗号隔开。 注意在稀疏格式中没有注明的属性值不是缺失值,而是0值。若要表示缺失值必须显式的用问号表示出来。 3、xls,cvs,arff数据格式转化 实际工程中数据常以各种各样

15、的格式存储和加工,如Excel的xls文件,记事本文件,CSV文件,matlab环境下的矩阵。(CSV逗号分隔值文件(Comma Separated value),是一种用来存储数据的纯文本文件格式,通常用于电子表格或数据库软件。 )WEKA默认的存储数据的格式是ARFF,因此有必要了解其他格式的文件是如何转换为ARFF文件,以方便在weka中处理。用UltraEdit打开bank-data.csv可以看到,这种格式也是一种逗号分割数据的文本文件,储存了一个二维表格。图3 使用UltraEdit打开bank-data.csv(1)Excel的xls转化为CSVExcel的XLS文件可以让多个二

16、维表格放到不同的工作表(Sheet)中,只能把每个工作表存成不同的CSV文件。打开一个XLS文件并切换到需要转换的工作表,另存为CSV类型,点“确定”、“是”忽略提示即可完成XLS转化为CSV格式的操作。 (2)把一个matlab环境下的矩阵存成CSV格式在Matlab中的二维表格是一个矩阵,通过这条命令把一个矩阵存成CSV格式。 csvwrite(filename,matrixname) Matllab给出的CSV文件往往没有属性名(Excel给出的也有可能没有)。而WEKA必须从CSV文件的第一行读取属性名,否则就会把第一行的各属性值读成变量名。因此对于Matllab给出的CSV文件需要用

17、UltraEdit打开,手工添加一行属性名。注意属性名的个数要跟数据属性的个数一致,仍用逗号隔开。 (3)将CSV转换为ARFF将CSV转换为ARFF最迅捷的办法是使用WEKA所带的命令行工具。 运行WEKA的主程序,出现GUI后可以点击下方按钮进入相应的模块。点击进入“Simple CLI”模块提供的命令行功能。在新窗口的最下方(上方是不能写字的)输入框写上 java weka.core.converters.CSVLoader filename.csv filename.arff 即可完成转换。(4)使用“Arff Viewer”模块完成CSV文件转为Arff文件在WEKA 3.5中提供了

18、一个“Arff Viewer”模块,可以用它打开一个CSV文件将进行浏览,然后另存为ARFF文件。图4 Arff Viewer”模块图4 Arff Viewer”模块选择文件类型进入“Exploer”模块,从上方的按钮中打开CSV文件然后另存为ARFF文件。4、“Exploer”界面简介图5 “Exploer”界面 图5显示的是使用3.5版Exploer打开bank-data.csv的情况。根据不同的功能把这个界面分成8个区域。 区域1的几个选项卡是用来切换不同的挖掘任务面板。这一节用到的只有“Preprocess”,其他面板的功能将在以后介绍。 区域2是一些常用按钮。包括打开数据,保存及编辑

19、功能。在这里把bank-data.csv另存为bank-data.arff。 在区域3中“Choose”某个“Filter”,可以实现筛选数据或者对数据进行某种变换。数据预处理主要就利用它来实现。 区域4展示了数据集的一些基本情况。 区域5中列出了数据集的所有属性。勾选一些属性并“Remove”就可以删除它们,删除后还可以利用区域2的“Undo”按钮找回。区域5上方的一排按钮是用来实现快速勾选的。 在区域5中选中某个属性,则区域6中有关于这个属性的摘要。注意对于数值属性和分类属性,摘要的方式是不一样的。图中显示的是对数值属性“income”的摘要。 区域7是区域5中选中属性的直方图。若数据集的

20、最后一个属性(我们说过这是分类或回归任务的默认目标变量)是分类变量(这里的“pep”正好是),直方图中的每个长方形就会按照该变量的比例分成不同颜色的段。要想换个分段的依据,在区域7上方的下拉框中选个不同的分类属性就可以了。下拉框里选上“No Class”或者一个数值属性会变成黑白的直方图。 区域8是状态栏,可以查看Log以判断是否有错。右边的weka鸟在动的话说明WEKA正在执行挖掘任务。右键点击状态栏还可以执行JAVA内存的垃圾回收。 5、bank-data数据的预处理 bank-data数据各属性的含义如下: ida unique identification numberageage o

21、f customer in years (numeric)sexMALE / FEMALEregioninner_city/rural/suburban/townincomeincome of customerr (numeric) marriedis the customer married (YES/NO)childrennumber of children (numeric) cardoes the customer own a car (YES/NO)save_acctdoes the customer have a saving account (YES/NO)current_acc

22、tdoes the customer have a current account (YES/NO)mortgagedoes the customer have a mortgage (YES/NO)pepdid the customer buy a PEP after the last mailing (YES/NO)5.1数据集属性的选择通常对于数据挖掘任务来说,ID这样的信息是无用的,我们将之删除。在区域5勾选属性“id”,并点击“Remove”。将新的数据集保存一次,并用UltraEdit打开这个ARFF文件。我们发现,在属性声明部分,WEKA已经为每个属性选好了合适的类型。 5.2数

23、值数据属性的离散化处理有些算法,只能处理所有的属性都是分类型的情况。这时候就需要对数值型的属性进行离散化。在bank-data数据集中有3个变量是数值型的,分别是“age”,“income”和“children”。 其中“children”只有4个取值:0,1,2,3。这时我们在UltraEdit中直接修改ARFF文件,把 attribute children numeric 改为 attribute children 0,1,2,3 就可以了。 在“Explorer”中重新打开“bank-data.arff”,看看选中“children”属性后,区域6那里显示的“Type”是不是变成“Nom

24、inal”了? “age”和“income”的离散化我们需要借助WEKA中名为“Discretize”的Filter来完成。在区域2中点“Choose”,出现一棵“Filter树”,逐级找到“weka.filters.unsupervised.attribute.Discretize”,点击。若无法关闭这个树,在树之外的地方点击“Explorer”面板即可。 现在“Choose”旁边的文本框应该显示“Discretize -B 10 -M -0.1 -R first-last”。 点击这个文本框会弹出新窗口以修改离散化的参数。 图6WEKA中“Discretize”的Filter的离散化的参数

25、设置不打算对所有的属性离散化,只是针对对第1个和第4个属性(见区域5属性名左边的数字),故把attributeIndices右边改成“1,4”。计划把这两个属性都分成3段,于是把“bins”改成“3”。其它框里不用更改,关于它们的意思可以点“More”查看。点“OK”回到“Explorer”,可以看到“age”和“income”已经被离散化成分类型的属性。若想放弃离散化可以点区域2的“Undo”。 如果对“(-inf-34.333333”这样晦涩的标识不满,可以用UltraEdit打开保存后的ARFF文件,把所有的“(-inf-34.333333”替换成“0_34”。其它标识做类似地手动替换。

26、 经过上述操作得到的数据集我们保存为bank-data-final.arff。五、通过实验,要求同学实验中解决以下问题,并递交完整的实验报告1、ARFF数据类型的格式如何,数据如何转换成ARFF数据类型?2、为什么在数据预处理中,需要进行数据数据和分类数据的转换。 3、仔细观察WEKA Explorer 的主界面,解释18区域的对应的含义与作用。 4、访问如下站点,了解IBM和微软在其数据库产品中提供的数据挖掘功能。12实验二一、实验名称 基于关联规则的数据挖掘二、实验目的通过一个已有的训练数据集,观察训练集中的实例,进行关联数据挖掘,更好地理解和掌握关联规则算法的基本原理,建立相应的预测模型

27、,然后对新的未知实例进行预测,通过预测的准确程度来衡量所建立模型的好坏。三、实验要求1、熟悉Weka平台2、掌握关联规则算法3、对数据进行预处理,利用Weka和不同参数设置进行关联分析,对比结果,得出结论,对问题进行总结。四、实验平台计算机、软件WEKA、UtraEdit五、实验数据1、使用银行对资产进行评估的数据bank-data.arf,数据里有12个属性,分别是id,age,sex,region,income,married,children, car, save_act, current_act, mortgage,pep.共600个实例。2、本测试集中将pep属性作为分类的目标类别,

28、因此将其设为缺失值缺失值用?表示。六、实验方法和步骤1、打开WEKA界面选择Explorer进行实验。2、选择Explorer选项,选择Open file打开bank-data.arff数据,打开可以看见数据中的属性,选择属性从右边查看取值范围。 3、进行数据过滤,选择Filter中的Discretize方法,点击Apply,先对ARFF文件进行离散化:用UltraEdit对其进行编辑:attribute children numeric改为:attribute children 0,1,2,3 然后用discretize算法对age和income离散化,并删掉id项因为它对关联规则分析无影响

29、,保存文件。 4、选择Associate项中的Apriori算法分析进行关联数据挖掘,并进行参数调整。记录并分析实验结果。六、实验指导1、Apriori的有关背景知识 对于一条关联规则L-R,我们常用支持度(Support)和置信度(Confidence)来衡量它的重要性。规则的支持度是用来估计在一个购物篮中同时观察到L和R的概率P(L,R),而规则的置信度是估计购物栏中出现了L时也出会现R的条件概率P(R|L)。关联规则的目标一般是产生支持度和置信度都较高的规则。 有几个类似的度量代替置信度来衡量规则的关联程度,它们分别是 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独立,Le

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

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