下载  >  课程资源  >  讲义  > 数据挖掘与机器学习——WEKA应用技术与实践

数据挖掘与机器学习——WEKA应用技术与实践 评分:

详细讲解weka,机器学习算法
●第1章 Weka介绍 weka是新西兰怀卡托大学用Java开发的数据挖掘著名开源软件,该 系统自1993年开始由新西兰政府资助,至今已经历了20年的发展,其功 能已经十分强大和成熟。Weka集合了大量的机器学习和相关技术,受 领域发展和用户需求所推动,代表了当今数据挖掘和机器学习领域的最高 水平 数据挖掘与机器学习 WEKA 1.1Weka简介 Weka是怀卡托智能分析环境( Waikato Environment for Knowledge Analysis)的英文字首 缩写,官方网址为:htp:/ww. cs. waikato.acnz/ ml/weka,在该网站可以免费下载可运行软 件和源代码,还可以获得说明文档、常见问题解答、数据集和其他文献等资源。weka的 发音类似新西兰本土一种不会飞的鸟,如图1.1所示,因此Weka系统使用该鸟作为其 徽标。 图11Weka(或 woodhen)鸟 weka是一种使用Java语言编写的数据挖掘机器学习软件,是GNU协议下分发的开源 软件。Weka主要用于科研、教育和应用领域,还作为 Ian h. witten、 Frank Eibe和 Mark a Ha三人合著的著名书籍—《 Data Mining- Practical Machine Learning Tools and Techniques, Third edition》(数据挖掘:实用机器学习工具与技术,第3版)的实践方面的重要补充,该 书于2011年由 Elsevier出版。 Weka是一套完整的数据处理工具、学习算法和评价方法,包含数据可视化的图形用 户界面,同时该环境还可以比较和评估不同的学习算法的性能。 国内外很多著名大学都釆用Weka作为数据挖掘和机器学习课程的实践工具。Weka还 有另外一个名字叫作 Pentaho Data Mining Community Edition( Pentaho数据挖掘社区版),此 外,Pentaho的网站(htp/wekapentaho.com还维护一个称为PentahoDataMining Enterprise Edition( (Pentaho数据挖掘企业版)的版本,它主要提供技术支持和管理升级。另 个用Java编写的著名数据挖掘工具 RapidMiner通过 Weka extension(Weka扩展)支持 Weka,以充分利用Weka的“约100个额外的建模方案,其中包括额外的决策树、规则学 习器和回归估计器”,参见网址htp:/ rapid-com/ content/view/202206 111Weka历史 怀卡托机器学习团队宣称:我们团队的总体目标是要建立最先进的软件开发机器学习 技术,并将其应用于解决现实世界的数据挖掘问题。团队具体目标是;使机器学习技术容 OxkIR:Wekaatoolforexploratorydatamining.ppthttp:/sourceforge.net/projects/weka/files/documentation/ Initial%20upload%20and%20presentations/Weka_a_tool_for_exploratory_data_ mining.ppt/download? use mIrTornCu 易获得,并将其应用到解决新西兰工业的重大实际问题,开发新的机器学习算法并推向世 第一章 界,为该领域的理论框架作出贡献。 1992年末,新西兰怀卡托大学计算机科学系 lan witten博士申请基金,1993年获新西三 兰政府资助,并于同年开发出接口和基础架构。次年发布了第一个Weka的内部版本,两 年后,在1996年10月,第一个公开版本Wea2)发布。Weka早期版本主要采用C语言绍 编写,1997年初,团队决定使用Java重新改写,并在1999年中期发布纯Java的Weka3 版本。选定Java来实现 Ian witten著作《 Data Mining》的配套机器学习技术是有充分理由 的,作为一个著名的面向对象的编程语言,Java允许用一个统一的接口来进行学习方案和 方法的预处理和后处理。决定使用Java来替代C++或其他面向对象的语言,是因为Java 编写的程序可以运行在绝大部分计算机上,而无须重新编译,更不需要修改源代码。已经 测试过的平台包括 Linux、 Windows和 Macintosh操作系统,甚至包括PDA。最后的可执 行程序复制过来即可运行,完全绿色,不要求复杂安装。当然,Java也有其缺点,最大的 问题是它在速度上有缺陷,执行一个Java程序比对应的C语言程序要慢上好几倍。综合 来看,对于Weka来说,Java“一次编译,到处运行”的吸引力远远超出对性能的渴望。 截止到2013年2月,Weka最新的版本是378,这是2013年1月24日发布的稳定 版,本书基于该版本。 112Weka功能简介 系统汇集了最前沿的机器学习算法和数据预处理工具,以便用户能够快速灵活 地将已有的处理方法应用于新的数据集。它为数据挖掘的整个过程提供全面的支持,包括 准备输入数据、统计评估学习方案、输入数据和学习效果的可视化。Weka除了提供大量 学习算法之外,还提供了适应范围很广的预处理工具,用户通过一个统一界面操作各种组 件,比较不同的学习算法,找出能够解决问题的最有效的方法 weka系统包括处理标准数据挖掘问题的所有方法:回归、分类、聚类、关联规则以 及属性选择。分析要进行处理的数据是重要的一个环节,Weka提供了很多用于数据可视 化和预处理的工具。输入数据可以有两种形式,第一种是以ARFF格式为代表的文件;另 一种是直接读取数据库表。 使用 Weka的方式主要有三种:第一种是将学习方案应用于某个数据集,然后分析其 输出,从而更多地了解这些数据:第二种是使用已经学习到的模型对新实例进行预测;第 三种是使用多种学习器,然后根据其性能表现选择其中的一种来进行预测。用户使用交互 式界面菜单中选择一种学习方法,大部分学习方案都带有可调节的参数,用户可通过属性 列表或对象编辑器修改参数,然后通过同一个评估模块对学习方案的性能进行评估。 Weka主界面称为 Weka GUi选择器,它通过右边的四个按钮提供四种主要的应用程 序供用户选择,如图12所示,用鼠标单击按钮进入到相应的图形用户界面。 其中,Weka系统提供的最容易使用的图形用户接口称为探索者( Explorer)。通过选择 菜单和填写表单,可以调用Weka的所有功能。例如,用户用鼠标仅仅单击几个按钮,就 叮以完成从ARFF文件中读取数据集,然后建立决策树的工作。Weka界面十分友好,能 适时地将不宜用的功能选项设置为不可选:将用户选项设计为表格方式以方便填写;当鼠 标移动到界面工具上短暂停留时,会给出用法提示;对算法都给出较为合理的默认值,这 数据挖掘与机器学习 样,帮助用户尽量少花精力进行配置就可取得较好的效果等 Program Visualization Iools_Help nlic* WEKAIImle TAN UCHGRy d Willbe Eit址 9 He unversity of hii自 Simt cLt 图12Weka主界面 虽然探索者界面使用很方便,但它也存在一个缺陷,要求它将所需数据全部一次读进 内存,一旦用户打开某个数据集,就会读取全部数据。因此,这种批量方式仅适合处理中 小规模的问题。知识流刚好能够弥补这一缺陷。 知识流( Knowledge Flow)界面可以使用增量方式的算法来处理大型数据集,用户可以定 制处理数据流的方式和顺序。知识流界面允许用户在屏幕上任意拖曳代表学习算法和数据 源的图形构件,并以一定的方式和顺序组合在一起。也就是,按照一定顺序将代表数据 源、预处理工具、学习算法、评估手段和可视化模块的各构件组合在一起,形成数据流 如果用户选取的过滤器和学习算法具有増量学习功能,那就可以实现大型数据集的增量分 批读取和处理 实验者( Experimenter界面用于帮助用户解答实际应用分类和回归技术中遇到的一个基 本问题—对于一个已知问题,哪种方法及参数值能够取得最佳效果?通过weka提供的 实验者工作环境,用户可以比较不同的学习方案。尽管探索者界面也能通过交互完成这样 的功能,但通过实验者界面,用户可以让处理过程实现自动化。实验者界面更加容易使用 不同参数去设置分类器和过滤器,使之运行在一组数据集中,收集性能统计数据,实现重 要的测试实验。 简单命令行( Simple Cli)界面是为不提供自己的命令行界面的操作系统提供的,该简单 命令行界面用于和用户进行交互,可以直接执行Weka命令 1.2基本概念 上节简要介绍了weka,读者也许迫不及待地想进一步深入了解并使用Weka来完成数 据挖掘工作。但是,在此之前,有必要先了解数据挖掘和机器学习的一些基本概念,为进 步地学习打下基础。 121数据挖掘和机器学习 数据挖掘和机器学习这两项技术的关系非常密切。机器学习方法构成数据挖掘的核 心,绝大多数数据挖掘技术都来自机器学习领域,数据挖掘又向机器学习提出新的要求和 任务。 数据挖掘就是在数据中寻找模式的过程。这个寻找过程必须是自动的或半自动的,并 且数据总量应该是具有相当大的规模,从中发现的模式必须有意义并能产生一定的效益 介 通常,数据挖据需要分析数据库中的数据来解决问题,如客户忠诚度分析、市场购物篮分绍 析,等等。 当今已进入海量数据时代。例如,全世界已经有约1000000000个网页;沃尔玛 仅一个小时就有一百万的交易量,其数据库里数据已有25拍(即25×101)字节的信息, 等等 这些海量数据不可能釆用手工方式进行处理,因此,迫切要求能进行数据分析的自动 化方法,这些都由机器学习提供 机器学习定义为能够自动寻找数据中的模式的一套方法,然后,使用所发现的模式来 预测将来的数据,或者在各种不确定的条件下进行决策。 机器学习分为两种主要类型。第一种称为有监督学习,或称为预测学习,其目标是在 给定一系列输入输出实例所构成的数据集的条件下,学习输入x到输出y的映射关系。这 里的数据集称为训练集,实例的个数称为训练样本数。第二种机器学习类型称为无监督学 习,或称为描述学习,在给定一系列仅由输入实例构成的数据集的条件下,其目标是发现 数据中的有趣模式。无监督学习有时候也称为知识发现,这类问题并没有明确定义,因为 我们不知道需要寻找什么样的模式,也没有明显的误差度量可供使用。而对于给定的x, 有监督学习可以对所观察到的值与预测的值进行比较。 122数据和数据集 根据应用的不同,数据挖掘的对象可以是各种各样的数据,这些数据可以以各种形式 存储,如数据库、数据仓库、数捃文件、流数据、多媒体、网页,等等。即可以集中存储 在数据存储库中,也可以分布在世界各地的网络服务器上。 通常将数据集视为待处理的数据对象的集合。由于历史原因,数据对象有多个别名 如记录、点、行、向量、案例、样本、观测等。数据对象也是对象,因此,可以用刻画对 象基本特征的属性来进行描述。属性也有多个别名,如变量、特征、字段、维、列,等等, 数据集可以类似于一个二维的电子表格或数据库表。在最简单的情形下,每个训练输 入x是一个N维的数值向量,表示特定事物的一些特征,如人的身高、体重。这些特征也 可以称为属性,有时x也可以是复杂结构的对象,如图像、电子邮件、时间序列、语 句等。 属性可以分为四种类型:标称( nominal)、序数 ordina)、区间 interval和比率( catio 其中,标称属性的值仅仅是不同的名称,即,标称值仅提供区分对象的足够信息,如性别 (男、女)、衣服颜色(红、黄、蓝)、天气(阴、晴、雨、多云)等;序数属性的值可以提供确 定对象的顺序的足够信息,如成绩等级〔优、良、中、及格、不及格)、职称〔初职、中职、 高职)、学生(本科生、硕士生、博士生)等;区间属性的值之间的差是有意义的,即存在测 量单位,如温度、日历日期等;比率属性的值之间的差和比值都是有意义的,如绝对温 度、年龄、长度、成绩分数等 数据挖掘与机器学习 标称属性和序数属性统称为分类的( Categorical)或定性的( Qualitative)属性,它们的取值 为集合,即使使用数值来表示,也不具备数的大部分性质,因此,应该像对待符号一样对 待:区间属性和比率属性统称为定量的( Quantitative)或数值的( Numeric)属性,定量属性采 用数值来表示,具备数的大部分性质,可以使用整数值或连续值来表示。 大部分数据集都以数据库表和数据文件的形式存在,Weka支持读取数据库表和多种 格式的数据文件,其中,使用最多的是一种称为ARFF格式的文件。 123ARFF格式 ARFF是一种Weka专用的文件格式,由 Andrew Donkin创立,有传言说ARFF代表 Andrew' s Ridiculous file format(安德鲁的荒唐文件格式),但在Weka的正式文档中明确说 明ARFF代表 Attribute-Relation file Format(属性一关系文件格式)。该文件是ASCn文本文 件,描述共享一组属性结构的实例列表,由独立且无序的实例组成,是Weka表示数据集 的标准方法,ARFF不涉及实例之间的关系。 在Weka安装目录下的data子目录中,可以找到名称为 weathe: numeric. arf的天气 据文件,其内容如程序清单1所示。数据集是实例的集合,每个实例包含一定的属性 属性的数据类型包括如下几类:标称型( nomina)只能取预定义值列表中的一个;数字型 numeric),只能是实数或整数:字符申( string),这是一个由双引号引用的任意长度的字符 列表:另外还有日期型(date)和关系型( relational),ARFF文件就是实例类型的外部表示, 其中包括一个标题头( header),以描述属性的类型,还包含一个用逗号分隔的列表所表示的 数据部分data) 程序清单11天气数据的ARFF文件 g This is a toy example, the UCI weather dataset g Any relation to real weather is purely coincidental Relation weather attribute outlook (sunny, overcast, rainy) @attribute temperature real Attribute humidity real @attribute windy i TRUE, FALSe] attribute play yes, no] overcast, 83, 86, EALSE,yes rainy,70,96, FAlSE, yes rainy, 68, 80, EALSE,,yes rainy, 65, 70, TRUE,no overcast, 64, 65, TRUE, yes sunny, 72, 95, FALSE, n sunny, 69,70, FALSE, rainy, 75,80, FALSE, 第 上述代码中,以百分号“%”开始的行称为注释行。与计算机编程语言类似,最前面介 的注释行应该写明数据集的来源、用途和含义。 @ relation一行定义内部数据集的名称—— weather,名称应简洁明了,尽可能容易理 解。 Relation也称为关系。 行定义名称为 outlook的标称型属性,有三个 取值; sunny、 overcast和riny。按照同样的方式,@ attribute windy(TRUE, FALSE}行和 @ attribute play yes,no}行分别定义wndy和play两个标称型属性。要注意的是,最后 个属性缺省为用于预测的类别变量。本例中,类别变量为标称型属性play,它只能取两个 值之一,使得天气问题成为二元( binary)的分类问题。 @ attribute temperature real定义名称为 temperature的数值型属性,@ Attribute humidity rea定义名称为 humidity的数值型属性。这两个属性都是实数型。 @data标志后的各行构成数据集。每行为一个实例样本,由采用逗号分隔的值组成, 顺序与由@ attribute所定义属性的顺序一致。 本例没有使用字符串类型和日期类型,在将来的学习中会遇到这两种类型。 124预处理 数据挖掘是在大量的、潜在有用的数据中挖掘出有用模式的过程。因此,源数据的质 量直接影响到挖掘的效果,高质量的数据是进行有效挖掘的前提。但是,由于数据挖掘所 使用的数据往往不是专门为挖据准备的,期望数据质量完美并不现实,人的错误、测量设 备的限制以及数据收集过程的漏洞都可能导致一些问题,如缺失值和离群值 由于无法在数据的源头控制质量,数据挖掘只能通过以下两个方面设法避免数据质量 问题:①数据质量问题的检测与纠正;②使用能容忍低质量数据的算法。第一种方式在数 据挖掘前检测并纠正一些质量问题,这个过程称为数据预处理:第二种方式需要提高算法 的健壮性。 数据预处理是数据挖掘的重要步骤,数据挖掘者的大部分时间和精力都要花在预处理 阶段。Weka专门提供若干过滤器进行预处理,还在探索者界面中提供选择属性标签页专 门处理属性的自动选择问题。数据预处理涉及的策略和技术非常广泛,主要包括如下技术。 1)聚集 聚集( Aggregation)就是将两个或多个对象合并为单个对象。一般来说,定量数据通常 通过求和或求平均值的方式进行聚集,定性数据通常通过汇总进行聚集。聚集通过数据归 约来减少数据量,所导致的较小数据集只需要较少内存和处理时间的开销,因此,可以使 用开销更大的数据挖掘算法。另外,聚集使用高层数据视图,起到了范围或度量转换的作 用。虽然站在很高的角度去检视问题容易避免只见树木不见森林的问题,但也可能导致有 趣细节的丢失。 数据挖掘与机器学习 抽样 如果处理全部数据的开销太大,数据预处理可以使用抽样,只选择数据对象的子集进 行分析。使用抽样可以压缩数据量,因此,能够使用效果更好但开销较大的数据挖掘算 法。由于抽样是一个统计过程,好的抽样方案就是确保以很高的概率得到有代表性的样 本,即:样本近似地具有原数据相同的性质 抽样方式有多种,最简单的抽样是选取每一个数据行作为样本的概率都相同,这称为 简单随机抽样,又分为有放回抽样和无放回抽样两种形式,前者是从N个数据行中以概率 l/N分别随机抽取出n个数据行,构成样本子集;后者与有放回抽样的过程相似,但每次 都要删除原数据集中已经抽取出来的数据行。显然,有放回抽样得到的样本子集有可能重 复抽取到相同的数据行。 当整个数据集由差异较大的数据行构成时,简单随机抽样可能无法抽取到不太频繁出 现的数据行,这会导致得到的样本不具代表性。分层抽样 tratified Sampling尽量利用事 先掌握的信息,充分考虑保持样本结构和总体结构的一致性以提高样本的代表性。其步骤 是,先将数据集按某种特征分为若干不相交的“层”,然后再从每一层中进行简单随机抽 样,从而得到具有代表性的抽样数据子集。 3)维度归约 维度是指数据集中属性的数目。维度归约 Dimension Reduction)是指创建新属性,通过 数据编码或数据变换,将一些旧属性合并在一起以降低数据集的维度。 维度归约可以删除不相关的属性并降低噪声,维度降低会使许多数据挖据的算法变得 更好,还能消除了维灾难带来的负面影响。维灾难是指,随着维度的增加,数据在它所占 的空间越来越稀疏,对于分类问题,这意味着可能没有足够的数据对象来创建模型;对于 聚类问题,点之间的密度和距离的定义失去意义。因此,对于高维数据,许多分类和聚类 等学习算法的效果都不理想。维度归约使模型的属性更少,因而可以产生更容易理解的 模型。 4)属性选择 除维度归约外,降低维度的另种方法是仅只使用属性的一个子集。表面看来似乎这 种方法可能丢失信息,但很多情况下,数据集存在冗余或不相关的属性。其中,冗余属性 是指某个属性包含了其他属性中的部分或全部倍息,不相关属性是指对于手头数据挖掘任 务几乎完全没有用处的信息。属性选择是指从数据集中选择最具代表性的属性子集,删除 冗余或不相关的属性,从而提高数据处理的效率,使模型更容易理解。 最简单的属性选择方法是使用常识或领域知识,以消除一些不相关或冗余属性,但 是,选择最佳的属性子集通常需要系统的方法。理想的属性选择方法是:将全部可能的属 性子集作为数据挖掘学习算法的输入,然后选取能产生最好结果的子集。这种方法反映了 对最终使用的数据挖掘算法的目的和偏爱。但是,由于n个属性的子集的数量多达2”个, 大部分情况下行不通。因此,需要考虑三种标准的属性选择方法:嵌入、过滤和包装。 嵌入方法( mbedded Approach)将属性选择作为数据挖掘算法的一部分。在挖掘算法运 行期间,算法夲身决定使用哪些属性以及忽略哪些属性。决策树算法通常使用这种方法。 过滤方法( Filter Approach)在运行数据挖掘算法之前,使用独立于数据挖掘任务的方法 进行属性选择,即:先过滤数据集产生一个属性子集。

...展开详情
2015-06-01 上传 大小:14.51MB
版权受限,无法下载
举报 收藏 (11)
分享

评论 下载该资源后可以进行评论 共40条

tianyaleixiaowu 扫描质量太差了。。。。坑我12分1
2018-06-14
回复
baidu_36561231 扫描质量马马虎虎 内容还好
2018-05-28
回复
rakeqingbo 扫描质量太差了。。。。坑我12分
2018-05-10
回复
finaldragonborn 很不错的资源
2018-04-24
回复
htlsr 不错的一本书,值得拥有
2017-11-23
回复
数据挖掘与机器学习 WEKA应用技术与实践 完整版

详细讲解weka,机器学习算法 书籍完整版 推荐下载 作者:袁梅宇出版社:清华大学出版社出版时间:2014年07月

立即下载
数据挖掘与机器学习:WEKA应用技术与实践 完整扫描版

《数据挖掘与机器学习:WEKA应用技术与实践》借助代表当今数据挖掘和机器学习最高水平的著名开源软件Weka,通过大量的实践操作,使读者了解并掌握数据挖掘和机器学习的相关技能,拉近理论与实践的距离。全书共分8章,主要内容包括Weka介绍、Explorer界面、KnowledgeFlow界面、Experimenter界面、命令行界面、Weka高级应用、WekaAPI和学习方案源代码分析 基本信息 出版社: 清华大学出版社; 第1版 (2014年7月1日) 平装: 456页 语种: 简体中文 开本: 16 ISBN: 7302371741, 9787302371748 条形码: 9787302371

立即下载
数据挖掘与机器学习 WEKA应用技术与实践 高清带书签版

《数据挖掘与机器学习:WEKA应用技术与实践》借助代表当今数据挖掘和机器学习 水平的著名开源软件Weka,通过大量的实践操作,使读者了解并掌握数据挖掘和机器学习的相关技能,拉近理论与实践的距离。全书共分8章,主要内容包括Weka介绍、Explorer界面、KnowledgeFlow界面、Experimenter界面、命令行界面、Weka高级应用、WekaAPI和学习方案源代码分析。

立即下载
数据挖掘与机器学习 WEKA应用技术与实践 第2版.haozip02.zip

本分卷由2345好压(Haozip)生成,请使用2345好压来解压。 2345好压下载地址:http://haozip.2345.com/ 分卷文件共有以下2个: 数据挖掘与机器学习 WEKA应用技术与实践 第2版.haozip01.zip 数据挖掘与机器学习 WEKA应用技术与实践 第2版.haozip02.zip

立即下载
数据挖掘与机器学习 WEKA应用技术与实践_高清扫描版-袁梅宇

数据挖掘与机器学习 WEKA应用技术与实践 高清扫描版pdf 【作 者】袁梅宇 编著 【出版发行】 北京:清华大学出版社 , 2014.07 【ISBN号】978-7-302-37174-8 【页 数】 457 【主题词】数据采集-软件工具 【中图法分类号】TP274 【内容提要】 本书适合作为计算机专业高年级本科生和研究生教材或教学 【参考文献格式】袁梅宇编著. 数据挖掘与机器学习 WEKA应用技术与实践. 北京:清华大学出版社, 2014.07

立即下载
机器学习软件weka的API手册chm版本

机器学习软件weka的API手册chm版本,介绍了weka的类库

立即下载
数据挖掘与机器学习 WEKA应用技术与实践 高清扫描版pdf 袁梅宇

数据挖掘与机器学习 WEKA应用技术与实践 高清扫描版pdf 【作 者】袁梅宇 编著

立即下载