第7章 常用的数据挖掘软件

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


为普通用户提供了图形化界面
在Weka论坛有大量的扩展包 很多其它开源数据挖掘软件Leabharlann Baidu支持调用Weka的分 析功能
< 3>
数据挖掘软件介绍

RapidMiner:耶鲁大学的研究成果

免费提供数据挖掘技术和库 数据挖掘过程简单,强大和直观
多层次的数据视图,确保有效和透明的数据


• •
<19>
用Weka进行分类

Class属性设置

WEKA 中的分类器被设计成经过训练后可以预测 一个 class 属性,也就是预测的目 标。默认的, 数据集中的最后一个属性被看作 class 属性。如 果想训练一个分类器,让它预测一个不同的属性 ,点击Test options 栏下方的那一栏,会出现一 个属性的下拉列表以供选择。


2005年8月,在第11届ACM SIGKDD国际会议上,怀卡托大学 的Weka小组荣获了数据挖掘和知识探索领域的最高服务奖, Weka系统得到了广泛的认可,被誉为数据挖掘和机器学习历 史上的里程碑,是现今最完备的数据挖掘工具之一(已有11年 的发展历史)。Weka的每月下载次数已超过万次。
< 8>
<11>
Weka的数据格式

关系声明 关系名称在ARFF文件的第一个有效行来定义,格式为 @relation <relation-name> <relation-name>是一个字符串。如果这个字符串包含空格, 它必须加上引号(指英文标点的单引号或双引号)。
属性声明 属性声明用一列以“@attribute”开头的语句表示。数据集中 的每一个属性都有它对应的“@attribute”语句,来定义它的属 性名称和数据类型。 @attribute <attribute-name> <datatype>
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_acct does the customer have a saving account (YES/NO) current_acct 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)
<15>
数据预处理

有些算法,只能处理所有的属性都是分类型的情况 。这时候就需要对数值型的属性进行离散化。 在这个数据集中有3个变量是数值型的,分别是 “age”,“income”和“children”。
其中“children”只有4个取值:0,1,2,3。


在UltraEdit中直接修改ARFF文件,把

<12>
数据准备

使用WEKA作数据挖掘,面临的第一个问题往往是数 据不是ARFF格式的。 WEKA还提供了对CSV文件的支持,而这种格式是 被很多其他软件所支持的。


此外,WEKA还提供了通过JDBC访问数据库的功能 。
<13>
“Explorer”界面
<14>
数据属性

例如,bank-data数据各属性的含义如下:
@attribute children numeric 改为 @attribute children {0,1,2,3}
<16>
数据预处理

“age”和“income”的离散化需要借助WEKA中名为 “Discretize”的Filter来完成

点击“choose”后,出现一颗“Filter树” ,逐级找到 “weka.filters.unsupervised.attribute.Discretize”,点击 后进行离散化,例如“bins=3”则会将属性分成三段
400多个数据挖掘运营商支持 强大的可视化引擎 耶鲁大学已成功地应用在许多不同的应用领域,包 括文本挖掘,多媒体挖掘,功能设计,数据流挖掘 ,集成开发的方法和分布式数据挖掘
< 4>
数据挖掘软件介绍

Knime:数据流模式的挖掘软件

类似数据流(data flow)的方式来建立分析挖掘流 程

所选测试模式的结果可以分解为以下几个部分


<21>
用Weka进行分类

结果列表在训练了若干分类器之后,结果列表中也就包含了若干个条目。 左键点击这些条目可以在生成的结果之间进行切换浏览。右键点击某个条 目则会弹出一个菜单,包括如下的选项:





View in main window. 在主窗口中显示输出该结果. View in separate window. 打开一个独立的新窗口来显示结果。 Save result buffer. 弹出一个对话框,使得输出结果的文本可以保存成一个文本文件。 Load model. 从一个二进制文件中载入以前训练得到的模型对象。 Save model. 把模型对象保存到一个二进制文件中。对象是以 Java“序列化”的形式保存的 Re-evaluate model on current test set. 通过 Supplied test set 选项下的 Set 按钮指定一个数据集,已建立的分类模型将在这个数据集上测试它的表现。 Visualize classifier errors. 弹出一个可视化窗口,把分类结果做成一个散点图。其中正确分 类的结果用叉表示,分错的结果用方框表示。 Visualize tree or Visualize graph. 如果可能的话,把分类模型的结构用图形来表示(决策树 和贝叶斯网络)。 Visualize margin curve. 创建一个散点图来显示预测边际值。这个边际值的定义为:预测为 真实值的概率与预测为真实值之外其它某类的最高概率之差。 Visualize threshold curve. 生成一个散点图,以演示预测时改变各类之间的阀值后取得的平 衡。 Visualize cost curve. 生成一个散点图。
<20>
用Weka进行分类


分类器、测试选项和class属性都设置好后,点击Start 按钮就 可以开始学习过程。右边的Classifier output 区域会被填充一 些文本,描述训练和测试的结果。 输出结果分为几个部分


Run information. 给出了学习算法各选项的一个列表。包括了学习过程中涉及 到的关系名称,属性,实例和测试模式。 Classifier model (full training set). 用文本表示的基于整个训练集的分类模型 Summary. 一列统计量,描述了在指定测试模式下,分类器预测 class 属性的 准确程度。 Detailed Accuracy By Class. 更详细地给出了关于每一类的预测准确度的描述 Confusion Matrix. 给出了预测结果中每个类的实例数。其中矩阵的行是实际 的类,矩阵的列是预测得到的类,矩阵元素就是相应测试样本的个数。
<17>
用Weka进行分类

选择分类器

在 classify 页面的顶部是Classifier 栏。这一栏中 有一个文本框,给出了分类器的名称和选项。左 键点击文本框会打开一个GenericObjectEditor, 可以配置当前的分类器。Choose 按钮用来选择 WEKA 中可用的分类器。
<18>
功能一般,没有数据探索功能
与其他软件接口差,只能用DB2,连接DB2以外的 数据库时,如Oracle, SAS, SPSS需要安装 DataJoiner作为中间软件
< 6>
提纲
数据挖掘软件介绍 Weka
RapidMiner
Knime
< 7>
Weka简介


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

WEKA所处理的数据集是一个二维的表格
<10>
Weka的数据格式


WEKA存储数据的格式是ARFF( Attribute-Relation File Format) 文件,这是一种ASCII文本文件。 整个ARFF文件可以分为两个部分 。第一部分给出了头信息(Head information),包括了对关系的 声明和对属性的声明。第二部分 给出了数据信息(Data information),即数据集中给出 的数据。从“@data”标记开始, 后面的就是数据信息了。
用Weka进行分类

测试选项
应用选定的分类器后得到的结果会根据 Test Option 一栏中 的选择来进行测试。共有四种测试模式: Using training set. 根据分类器在用来训练的实例上的预测 效果来评价它。 Supplied test set. 从文件载入的一组实例,根据分类器在这 组实例上的预测效果来评价它。点击 Set… 按钮将打开一个 对话框来选择用来测试的文件。 Cross-validation. 使用交叉验证来评价分类器,所用的折数 填在Folds 文本框中。 Percentage split. 从数据集中按一定百分比取出部分数据放 在一边作测试用,根据分类器这些实例上预测效果来评价它。 取出的数据量由% 一栏中的值决定。
—— 做中国领先的科研资源提供商
《大数据处理》配套课件
第七章 常用的数据挖掘软件
总课时:6小时(实验:4小时)
< 1>
提纲
数据挖掘软件介绍 Weka
RapidMiner
Knime
< 2>
数据挖掘软件介绍

Weka:名气最大的机器学习和数据挖掘软件

高级用户可以通过Java编程和命令行来调用其分析 组件
用户可选择性地运行一些或全部的分析步骤
用Java开发的,可以扩展使用Weka中的挖掘算法 通过插件的方式,用户可以加入自己的处理模块, 并可以集成到其它各种各样的开源项目中
< 5>
数据挖掘软件介绍

IBM Intelligent Miner:IBM的商业级产品

简单易用 能处理大数据量的挖掘
Code:
% ARFF file for the weather data with some numric features % @relation weather
@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 overcast,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
相关文档
最新文档