利用WEKA编写数据挖掘算法
WEKA是由新西兰怀卡托大学开发的开源项目。WEKA是由JAVA编写的,并且限制在GNU通用公众证书的条件下发布,可以运行在所有的操作系统中。WEKA工作平台包含能处理所有标准数据挖掘问题的方法:回归、分类、聚类、关联规则挖掘以及属性选择。作为数据挖掘爱好者自然要对WEKA的源代码进行分析并以及改进,努力写出自己的数据挖掘算法。下面着重介绍一下如何利用WEKA编写新的数据挖掘算法: 注意:WEKA的版本有两个版本:稳定版(STABLE)和开发版(DEVELOP),不同WEKA版本与不同JDK的版本匹配,稳定版WEKA3-4的与JDK1.4.2匹配,而开发版WEKA3-5与JDK1.5匹配,WEKA3-5新加入了对数据库的数据连接。稳定版直接下载weka-src.jar文件就行了,而开发版需使用CVS连接到sourceForge下载,:pserver:cvs_anon@cvs.scms.waikato.ac.nz:/usr/local/global-cvs/ml_cvs。本文以稳定版为例。
一、首先从WEKA官方网站(http://www.cs.waikato.ac.nz/ml/weka)下载WEKA程序包。将程序包解压获得weka-src.jar源文件,再将源代码解压缩导入某个JAVA开发工具中(图1),如:JBuilder,Eclipse,Netbeans等。我现在以Netbeans为例。
Weka--最著名的数据挖掘开源项目 收藏
WEKA( developed at the University of Waikato in New Zealand 新西兰怀卡托大学)http://www.cs.waikato.ac.nz/~ml/weka/index.html
与此开源项目对应的书为《Data Mining Practical Machine Learning Tools and Techniques Second Edition 》,该书下载地址http://www.itpub.net/showthread.php?s=&threadid=731436,另外本书已有中文版《数据挖掘,实用机器学习技术》。
如果想研究里面算法的具体实现,可以用Eclipse调试。见http://weka.sourceforge.net/wiki/index.php/Eclipse_3.0.x
Weka 3: Data Mining Software in Java
Weka is a collection of machine learning algorithms for data mining tasks. The algorithms can either be applied directly to a dataset or called from your own Java code. Weka contains tools for data pre-processing, classification, regression, clustering, association
rules, and visualization. It is also well-suited for developing new machine learning schemes.
Weka 3:开源的数据挖掘软件(Java)
Weka 是实施数据挖掘任务所需的各种机器学习算法的合集。这些算法既可以直接应用到某数据集上,也可以在你自己设计的Java程序调用它们。Weka 包含了下列工具:数据预处理,分类,回归,聚类,关联规则,以及可视化。另外也可以在Weka 的基础上开发新的机器学习。
Weka主要致力于classifier and filter algorithms。
以下转载自http://blog.donews.com/carouter/archive/2005/07/11/462134.aspx
数据挖掘终于可以和烦人的代码们说再见了! Weka,一个不足两岁的新生儿,让数据挖掘轻松易行,无需编程也能轻松搞定。
Weka是基于java,用于数据挖掘和知识分析一个平台。来自世界各地的java爱好者们都可以把自己的算法放在这个平台上,然后从海量数据中发掘其背后隐藏的种种关系;也许你只是出于对数据的狂热爱好,但也许你的发现会蕴含着无限的商机。
打开Weka,首先出现一个命令行窗口。原以为要在这个命令行下写java语句呢,不过稍等一秒,Weka GUIChooser的出现了。这是一个很简单的窗体,提供四个按钮:SimpleCLI、Explorer、Experimenter、KnowledgeFlow。SimpleCLI应该是一个使用命令行的界面,有点像SAS的编辑器;Explorer是则是视窗模式下的数据挖掘工具;Experimenter和KnowledgeFlow的使用有待进一步摸索....
先打开WekaExlporer感受一下它的强大吧。它有六个标签页,分别是Preprocess、Classify、Cluster、Associate、Selectattributes、Visualize。在Preprocess中Open一个数据文件(Weka使用的数据文件是.arff,其实是一个文本数据集,格式并不复杂,用notepad打开一看就明白了)。当然也可以Open URL或Open DB,不过我没有check一下支持哪些DB。
打开数据文件后,可以使用Filter进行一下过滤,相当于“预处理的预处理”。Filter提供了许多算法来过滤数据,比如filters/unsupervised/instance/normalize应该是一个标准化的算法。当然,也可以编写你自己的算法!
这时窗体上已经给出这个数据集的一些基本特征了,比如有多少属性,各属性的一些简单统计量,右下方还给出一些可视化效果比如柱状图。通过这些可以初步了解这个数据集了。但这些都是很直观的可以看出来,好戏在后头,隐藏的关系即将登场。
接下来的两个标签页是classify(分类)和cluster(聚类),接触数据挖掘的人对它们一定不会陌生。同样Weka有许多分类和聚类算法可供选择,在这里面称为clasifier和clusterer。不过Weka提供的classify功能似乎还不够灵活,只能定长度和定频率地分类。但这个关系不大,现在很多数据处理软件都可以做到这个,比如excel。Cluster功能强大,提供了许多巧妙的聚类算法,选定一个算法,给出你所需要生成的聚类数目,就可以自动完成。当然如果能不给出聚类数目也能自动聚类的话就更佳了,不过我还没发现怎么做。
Next,终于到伟大的Associate了! 这是一个用于发掘AssociateRules(关联规则)的模块。对商学略有涉猎的人一定熟知沃尔玛发现了啤酒和尿布销售的关系这一佳话。有了WekaAssociate,任何一家超市都可以做到这一点了。将前面导入的数据使用Associator进行发掘,就可以发现其中无数隐藏的关系。Weka-3-4提供了Apriori、PredictiveApriori、Tertius三种关联规则发掘算法,不过我感觉这已经够用了。选定一个算法,进行一些必要的设置,包括支持度上界、下界,每次运算的支持度递减值,等等。另外一个重要的参数:所需要生成的关联规则个数。太不可思议了,以前我们能从海量数据中发现一个关联规则就已经沾沾自喜,现在Weka居然问你想生成多少关联规则!
参数设置完成,点Start,就可以去喝茶了。不一会,10条关联规则已经生成,可以提交给老板了。当然,你还可以分析一下哪些规则比较有用,哪一条有潜在收益,这就需要business sense了。
另外两个标签页还没怎么看。Selectattributes大概是针对单属性的分析?Visualize则提供了许多可视化效果,需要拿出去演示时很方便。不过今天使用感觉这个模块的功能有点问题,没太搞懂。也有可能是我用错了。
Weka实在是一个伟大的工具。基于java,却没有运行其它java程序那种慢吞吞的感觉。前天我还在说Data Mining isexcruciating but interesting,有了Weka,Data Mining也可以轻轻松松了!
分享到:
相关推荐
WEKA是一个强大的开源数据挖掘软件,包含了多种机器学习算法、数据预处理、分类、聚类、关联规则挖掘和可视化工具。它由新西兰怀卡托大学开发,为研究人员和实践者提供了友好的图形用户界面和编程接口,支持Java和...
通过以上内容,我们可以看到,Weka不仅是一个强大的数据挖掘工具,也是一个优秀的开发平台,为数据科学家和工程师提供了灵活的工具集,以应对各种复杂的数据分析任务。掌握Weka的使用,无疑将提升我们在数据驱动决策...
WEKA作为一个公开的数据挖掘工作平台,集合了大量能承担数据挖掘任务的机器学习算法,包括对数据进行预处理,分类,回归、聚类、关联规则以及在新的交互式界面上的可视化。matlab机器学习/数据挖掘spider工具箱使用...
**Weka数据挖掘软件简介** Weka,全称为Waikato Environment for Knowledge Analysis,是由新西兰怀卡托大学(University of Waikato)开发的一款强大的数据挖掘工具。它不仅是一个开源软件,而且是一个全面的工作...
7. **可视化**:Weka提供了丰富的图表和可视化工具,方便用户理解数据和模型,包括数据分布图、决策树图、聚类结果图等。 **二、Weka的工作流程** 使用Weka通常涉及以下步骤: 1. **加载数据**:从CSV、ARFF等...
3. 流程构建:Weka提供了一个可视化的界面,用户可以通过拖放的方式构建数据挖掘流程,包括数据源、预处理、学习器和评估器等组件,简化了操作过程。 4. 评估和比较:Weka内置了交叉验证和独立测试等评估方法,帮助...
Weka 提供了一个综合的平台,包含了多种机器学习算法,用于数据预处理、分类、回归、聚类、关联规则挖掘以及数据可视化。对于想要自定义算法或开发可视化工具的用户,Weka 提供了相应的接口文档,使得集成与扩展相对...
数据挖掘是一种从海量数据中发现有价值信息的过程,它结合了机器学习、数据库技术、..."weka数据挖掘软件"这个文件可能就是Weka软件的安装包或者是一份详细的使用指南,可以帮助用户快速上手并进行实际的数据挖掘项目。
Weka,全称为Waikato Environment for Knowledge Analysis,是新西兰怀卡托大学开发的一款强大的数据挖掘和机器学习工具,广泛应用于学术研究和商业分析。Weka是开源软件,基于Java编程语言实现,这使得它在跨平台性...
WEKA 作为一个公开的数据挖掘工作平台,集合了大量能承担数据挖掘任务的机器学习算法,包括对数据进行预处理,分类,回归、聚类、关联规则以及在新的交互式界面上的可视化。如果想自己实现数据挖掘算法的话,可以看...
4. Weka数据挖掘平台:Weka是用Java语言编写的开源数据挖掘和机器学习软件,提供了一套完整的数据处理工具、学习算法和评价方法,并具有数据可视化图形用户界面。Weka支持的算法涵盖了回归、分类、聚类、关联规则及...
Weka是由新西兰怀卡托大学开发的机器学习和数据挖掘工作平台,它提供了一系列数据挖掘的功能,包括但不限于回归分析、分类、聚类、关联规则挖掘和属性选择等。 Weka的使用方法多样,用户可以通过探索者界面的图形化...
WEKA的全名是怀卡托智能分析环境(Waikato... WEKA作为一个公开的数据挖掘工作平台,集合了大量能承担数据挖掘任务的机器学习算法,包括对数据进行预处理,分类,回归、聚类、关联规则以及在新的交互式界面上的可视化。
Weka(Waikato Environment for Knowledge Analysis)是一个流行的机器学习软件,它由新西兰怀卡托大学开发,包含了数据挖掘相关的各种算法,支持数据的预处理、分类、回归、聚类、关联规则等任务,并提供了可视化...
标题:“国外主要可视化数据挖掘开源软件的比较”描述:“本文选取了WEKA、RapidMiner、KNIME和Orange四种国外主要的可视化数据挖掘开源软件,对它们在数据挖掘方法、可视化功能、使用容易程度等方面进行了比较。...
它包含了多种预处理方法、分类、聚类、关联规则和特征选择算法,以及可视化工具,为用户提供了一个全面的数据分析平台。 二、数据分类基础 数据分类是数据挖掘的重要任务之一,其目标是根据已知的属性值,将数据...
### 基于Apriori算法的Weka数据挖掘应用 #### 一、Apriori算法概述 Apriori算法是一种高效且具有影响力的布尔关联规则挖掘算法,它主要用于寻找频繁项集。算法名称来源于其利用频繁项集的先验性质进行搜索的特点。...
### 基于Apriori算法的Weka数据挖掘应用 #### Apriori算法简介 Apriori算法作为数据挖掘领域内最具有影响力的算法之一,主要用于挖掘布尔关联规则中的频繁项集。该算法的核心思想是利用频繁项集的性质来进行逐层...
总结来说,基于Weka平台的不确定数据挖掘研究,体现了对传统数据挖掘方法的拓展和深化。该领域不仅关注算法和模型的创新,也强调实际应用中对不确定数据处理的需求。Weka作为数据挖掘的一个重要工具,为不确定数据...