使用Weka进行数据挖掘的的基本方法手册与心得Word文档格式.docx
《使用Weka进行数据挖掘的的基本方法手册与心得Word文档格式.docx》由会员分享,可在线阅读,更多相关《使用Weka进行数据挖掘的的基本方法手册与心得Word文档格式.docx(40页珍藏版)》请在冰豆网上搜索。
![使用Weka进行数据挖掘的的基本方法手册与心得Word文档格式.docx](https://file1.bdocx.com/fileroot1/2022-10/18/99c17602-32cc-4fbe-8033-15a804f71367/99c17602-32cc-4fbe-8033-15a804f713671.gif)
〕
回页首
什么是数据挖掘?
数据挖掘,就其核心而言,是指将大量数据转变为有实际意义的模式和规那么。
并且,它还可以分为两种类型:
直接的和间接的。
在
直接的
数据挖掘中,您会尝试预测一个特定的数据点—比方,以给定的一个房子的售价来预测邻近地区的其他房子的售价。
间接的
数据挖掘中,您会尝试创立数据组或找到现有数据的模式—比方,创立“中产阶级妇女〞的人群。
实际上,每次的美国人口统计都是在进展数据挖掘,政府想要收集每个国民的数据并将它转变为有用信息。
现代的数据挖掘开场于20世纪90年代,那时候计算的强大以及计算和存储的本钱均到达了一种很高的程度,各公司开场可以自己进展计算和存储,而无需再借助外界的计算帮助。
此外,术语数据挖掘是全方位的,可指代诸多查看和转换数据的技术和过程。
因为本系列只触及能用数据挖掘实现的功能的一些皮毛。
数据挖掘的专家往往是数据统计方面的博士,并在此领域有10-30年的研究经历。
这会为您留下一种印象,即只有大公司才能负担得起数据挖掘。
我们希望能够去除有关数据挖掘的这些误解并希望弄清楚一点:
数据挖掘既不像对一系列数据运行一个电子数据表函数那么简单,也不像有人想的那样难到靠自己根本无法实现。
这是80/20型的一个很好的例子—甚至更进一步可以是90/10型。
您用所谓的数据挖掘专家的10%的专业知识就能创立具有90%效力的数据挖掘模型。
而为了补上模型剩下的10%的效力并创立一个完美的模型将需要90%额外的时间,甚至长达20年。
所以除非您立志以数据挖掘为职业方向,否那么“足够好〞就可以了。
从另一个方面看,利用数据挖掘所到达的“足够好〞总要比您现在所采用的其他技术要好。
数据挖掘的最终目标就是要创立一个模型,这个模型可改良您解读现有数据和将来数据的方式。
由于现在已经有很多数据挖掘技术,因此创立一个好的模型的最主要的步骤是决定要使用哪种技术。
而这那么极依赖于实践和经历以及有效的指导。
这之后,需要对模型进展优化以让它更令人满意。
在阅读了本系列的文章后,您应该能够自己根据自己的数据集正确决定要使用的技术,然后采取必要的步骤对它进展优化。
您将能够为您自己的数据创立一个足够好的模型。
WEKA
数据挖掘绝非大公司的专有,也不是多昂贵的软件。
实际上,有一种软件可以实现那些价格不菲的软件所能实现的全部功能—这个软件就是WEKA〔参见
参考资料〕。
WEKA诞生于UniversityofWaikato〔新西兰〕并在1997年首次以其现代的格式实现。
它使用了GNUGeneralPublicLicense(GPL)。
该软件以Java™语言编写并包含了一个GUI来与数据文件交互并生成可视结果〔比方表和曲线〕。
它还有一个通用API,所以您可以像嵌入其他的库一样将WEKA嵌入到您自己的应用程序以完成诸如效劳器端自动数据挖掘这样的任务。
我们继续并安装WEKA。
因为它基于Java,所以如果您在计算机上没有安装JRE,那么请下载一个包含JRE的WEKA版本。
图1.WEKA的开场屏
在启动WEKA时,会弹出GUI选择器,让您选择使用WEKA和数据的四种方式。
对于本文章系列中的例子,我们只选择了
Explorer选项。
对于我们要在这些系列文章中所需实现的功能,这已经足够。
图2.WEKAExplorer
在熟悉了如何安装和启动WEKA后,让我们来看看我们的第一个数据挖掘技术:
回归。
回归
回归是最为简单易用的一种技术,但可能也是最不强大〔这二者总是相伴而来,很有趣吧〕。
此模型可以简单到只有一个输入变量和一个输出变量〔在Excel中称为Scatter图形,或OpenOffice.org的XYDiagram〕。
当然,也可以远比此复杂,可以包括很多输入变量。
实际上,所有回归模型均符合同一个通用模式。
多个自变量综合在一起可以生成一个结果—一个因变量。
然后用回归模型根据给定的这些自变量的值预测一个未知的因变量的结果。
每个人都可能使用过或看到过回归模型,甚至曾在头脑里创立过一个回归模型。
人们能立即想到的一个例子就是给房子定价。
房子的价格〔因变量〕是很多自变量—房子的面积、占地的大小、厨房是否有花岗石以及卫生间是否刚重装过等的结果。
所以,不管是购置过一个房子还是销售过一个房子,您都可能会创立一个回归模型来为房子定价。
这个模型建立在邻近地区的其他有可比性的房子的售价的根底上〔模型〕,然后再把您自己房子的值放入此模型来产生一个预期价格。
让我们继续以这个房屋定价的回归模型为例,创立一些真实的数据。
在我的邻近地区有一些房子出售,我试图找到我自己房子的合理价格。
我还需要拿此模型的输出申报财产税。
表1.回归模型的房屋值
房子面积〔平方英尺〕
占地的大小
卧室
花岗岩
卫生间重装?
销售价格
3529
9191
6
$205,000
3247
10061
5
1
$224,900
4032
10150
$197,900
2397
14156
4
$189,900
2200
9600
1`
$195,000
3536
19994
$325,000
2983
9365
$230,000
3198
9669
?
好的消息是〔也可能是坏消息,取决于您自己的看法〕上述对回归模型的简单介绍只触及了一些皮毛,这种触及甚至都不会被真正地注意到。
关于回归模型有大学的课程可以选择,那会教授给您有关回归模型的更多信息,甚至多过您想要知道的。
但我们的简介让您充分熟悉了这个概念,已足够应付本文中WEKA试用。
如果对回归模型以及其中的数据统计的细节有更深的兴趣,您可以用自己喜爱的搜索引擎搜索如下的术语:
leastsquares、homoscedasticity、normaldistribution、Whitetests、Lillieforstests、R-squared和p-values。
为WEKA构建数据集
为了将数据加载到WEKA,我们必须将数据放入一个我们能够理解的格式。
WEKA建议的加载数据的格式是Attribute-RelationFileFormat(ARFF),您可以在其中定义所加载数据的类型,然后再提供数据本身。
在这个文件,我们定义了每列以及每列所含容。
对于回归模型,只能有
NUMERIC
或
DATE
列。
最后,以逗号分割的格式提供每行数据。
我们为WEKA使用的ARFF文件如下所示。
请注意在数据行,并未包含我的房子。
因为我们在创立模型,我房子的价格还不知道,所以我们还不能输入我的房子。
清单1.WEKA文件格式
RELATIONhouse
ATTRIBUTEhouseSizeNUMERIC
ATTRIBUTElotSizeNUMERIC
ATTRIBUTEbedroomsNUMERIC
ATTRIBUTEgraniteNUMERIC
ATTRIBUTEbathroomNUMERIC
ATTRIBUTEsellingPriceNUMERIC
DATA
3529,9191,6,0,0,205000
3247,10061,5,1,1,224900
4032,10150,5,0,1,197900
2397,14156,4,1,0,189900
2200,9600,4,0,1,195000
3536,19994,6,1,1,325000
2983,9365,5,0,1,230000
将数据载入WEKA
数据创立完成后,就可以开场创立我们的回归模型了。
启动WEKA,然后选择
Explorer。
将会出现Explorer屏幕,其中Preprocess
选项卡被选中。
选择
OpenFile
按钮并选择在上一节中创立的ARFF文件。
在选择了文件后,WEKAExplorer应该类似于图3中所示的这个屏幕快照。
图3.房屋数据加载后的WEKA
在这个视图中,WEKA允许您查阅正在处理的数据。
在Explorer窗口的左边,给出了您数据的所有列〔Attributes〕以及所提供的数据行的数量〔Instances〕。
假设选择一列,Explorer窗口的右侧就会显示数据集该列数据的信息。
比方,通过选择左侧的houseSize
列〔它应该默认选中〕,屏幕右侧就会变成显示有关该列的统计信息。
它显示了数据集此列的最大值为4,032平方英尺,最小值为2,200平方英尺。
平均大小为3,131平方英尺,标准偏差为655平方英尺〔标准偏差是一个描述差异的统计量度〕。
此外,还有一种可视的手段来查看数据,单击
VisualizeAll
按钮即可。
由于在这个数据集的行数有限,因此可视化的功能显得没有有更多数据点〔比方,有数百个〕时那么功能强大。
好了,对数据的介绍已经够多了。
让我们立即创立一个模型来获得我房子的价格。
用WEKA创立一个回归模型
为了创立这个模型,单击
Classify
选项卡。
第一个步骤是选择我们想要创立的这个模型,以便WEKA知道该如何处理数据以及如何创立一个适当的模型:
1.单击
Choose
按钮,然后扩展
functions
分支。
2.选择
LinearRegression
叶。
这会告诉WEKA我们想要构建一个回归模型。
除此之外,还有很多其他的选择,这说明可以创立的的模型有很多。
非常多!
这也从另一个方面说明本文只介绍了这个主题的皮毛。
有一点值得注意。
在同一个分支还有另外一个选项,称为
SimpleLinearRegression
。
请不要选择该选项,因为简单回归只能有一个变量,而我们有六个变量。
选择了正确的模型后,WEKAExplorer应该类似于图4。
图4.WEKA的线性回归模型
我能用电子数据表到达同样的目的么?
简单而言:
不可以。
深思熟虑后的答案是:
可以。
大多数流行的电子数据表程序都不能轻松完成我们用WEKA实现的功能,