几款优秀的开源数据挖掘工具

By kevinwu on December 28, 2008 2:39 AM | No Comments | No TrackBacks

本文只对几种流行的开源数据挖掘平台进行了检视,比如Weka和R等。如果您想找寻更多的开源数据挖掘软件,可以到KDnuggets和Open Directory上查看。为了评测这些软件,我们用了UCI Machine Learning Repository上的心脏病诊断数据集。

R

R (http://www.r-project.org) 是用于统计分析和图形化的计算机语言及分析工具,为了保证性能,其核心计算模块是用C、C++和Fortran编写的。同时为了便于使用,它提供了一种脚本语言,即R语言。R语言和贝尔实验室开发的S语言类似。R支持一系列分析技术,包括统计检验、预测建模、数据可视化等等。在 CRAN(http://cran.r-project.org) 上可以找到众多开源的扩展包。
R软件的首选界面是命令行界面,通过编写脚本来调用分析功能。如果缺乏编程技能,也可使用图形界面,比如使用R Commander(http://socserv.mcmaster.ca/jfox/Misc/Rcmdr/)或Rattle(http://rattle.togaware.com)。

Tanagra

Tanagra (http://eric.univ-lyon2.fr/wricco/tanagra/) 是使用图形界面的数据挖掘软件,采用了类似Windows资源管理器中的树状结构来组织分析组件。Tanagra缺乏高级的可视化能力,但它的强项是统计分析,提供了众多的有参和无参检验方法。同时它的特征选取方法也很多。

Weka

Weka (Waikato Environment for Knowledge Analysis, http://www.cs.waikato.ac.nz/ml/weka/) 可能是名气最大的开源机器学习和数据挖掘软件。高级用户可以通过Java编程和命令行来调用其分析组件。同时,Weka也为普通用户提供了图形化界面,称为Weka KnowledgeFlow Environment和Weka Explorer。和R相比,Weka在统计分析方面较弱,但在机器学习方面要强得多。在Weka论坛 (http://weka.sourceforge.net/wiki/index.php/Related_Projects) 可以找到很多扩展包,比如文本挖掘、可视化、网格计算等等。很多其它开源数据挖掘软件也支持调用Weka的分析功能。

YALE (IDMer:现在已经更名为RapidMiner)

YALE (Yet Another Learning Environment, http://rapid-i.com) 提供了图形化界面,采用了类似Windows资源管理器中的树状结构来组织分析组件,树上每个节点表示不同的运算符(operator)。YALE中提供了大量的运算符,包括数据处理、变换、探索、建模、评估等各个环节。YALE是用Java开发的,基于Weka来构建,也就是说它可以调用Weka中的各种分析组件。

KNIME

KNIME (Konstanz InformationMiner, http://www.knime.org)是基于Eclipse开发环境来精心开发的数据挖掘工具。无需安装,方便使用(IDMer:呵呵,大家喜欢的绿色版)。和YALE一样,KNIME也是用Java开发的,可以扩展使用Weka中的挖掘算法。和YALE不同点的是,KNIME采用的是类似数据流(data flow)的方式来建立分析挖掘流程(IDMer:这个我喜欢,和SAS EM或SPSS Clementine等商用数据挖掘软件的操作方式类似)。挖掘流程由一系列功能节点(node)组成,每个节点有输入/输出端口(port),用于接收数据或模型、导出结果。(IDMer:感觉KNIME比Weka的KnowledgeFlow更好用,连接节点时很方便,直接用鼠标拖拽连接端口即可。而Weka中则需要在节点上按鼠标右键,再选择后续节点,比较麻烦,刚开始使用时找了半天才知道怎么连)
KNIME中每个节点都带有交通信号灯,用于指示该节点的状态(未连接、未配置、缺乏输入数据时为红灯;准备执行为黄灯;执行完毕后为绿灯)。在KNIME中有个特色功能----HiLite,允许用户在节点结果中标记感兴趣的记录,并进一步展开后续探索。

Orange

Orange (http://www.ailab.si/orange)是类似KNIME和Weka KnowledgeFlow的数据挖掘工具,它的图形环境称为Orange画布(OrangeCanvas),用户可以在画布上放置分析控件(widget),然后把控件连接起来即可组成挖掘流程。这里的控件和KNIME中的节点是类似的概念。每个控件执行特定的功能,但与KNIME中的节点不同,KNIME节点的输入输出分为两种类型(模型和数据),而Orange的控件间可以传递多种不同的信号,比如learners, classifiers, evaluation results, distance matrices, dendrograms等等。Orange的控件不象KNIME的节点分得那么细,也就是说要完成同样的分析挖掘任务,在Orange里使用的控件数量可以比KNIME中的节点数少一些。Orange的好处是使用更简单一些,但缺点是控制能力要比KNIME弱。
除了界面友好易于使用的优点,Orange的强项在于提供了大量可视化方法,可以对数据和模型进行多种图形化展示,并能智能搜索合适的可视化形式,支持对数据的交互式探索。
Orange的弱项在于传统统计分析能力不强,不支持统计检验,报表能力也有限。Orange的底层核心也是采用C++编写,同时允许用户使用Python脚本语言来进行扩展开发(参见http://www.scipy.org)。


GGobi

数据可视化是数据挖掘的重要组成部分, GGobi (http://www.ggobi.org)就是用于交互式可视化的开源软件,它使用brushing的方法。GGobi可以用作R软件的插件,或者通过Perl、Python等脚本语言来调用。

结论
----
以上介绍的几款软件都是优秀的开源数据挖掘软件,各有所长,同时也各有缺点。读者可以结合自己的需求来进行选择,或者组合使用多个软件。对于普通用户可以选用界面友好易于使用的软件,对于希望从事算法开发的用户则可以根据软件开发工具不同(Java、R、C++、Python等)来选择相应的软件。以上这几款软件(除了GGobi)基本上都提供了我们期望的大部分功能。

几款优秀的开源数据挖掘工具相关推荐

  1. 7款优秀的开源数据挖掘工具

    7款优秀的开源数据挖掘工具   IDMer说道:本文只对几种流行的开源数据挖掘平台进行了检视,比如Weka和R等.如果您想找寻更多的开源数据挖掘软件,可以到KDnuggets和Open Directo ...

  2. 推荐:六款强大的开源数据挖掘工具

    在互联网发展到大数据时代,那么数据就等于金钱.随着向一个基于应用的领域过渡,数据则呈现出了指数级增长.然而,百分之八十的数据是非结构化的,因此它需要一个程序和方法来从中提取有用信息,并且将其转换为可理 ...

  3. 消灭Bug!推荐7款优秀的开源Bug跟踪工具

    摘要: 在这个充满 bug 的世界里,最遥远的距离不是生与死,而是你亲手制造的 bug 就在你眼前,你却怎么都找不到她. 在过去几年里,程序员改变着世界,然而,我们手中诞生的每个新网站或 APP 都面 ...

  4. 20 款优秀的数据可视化工具,总有一款你用的到!

    今天给大家分享20款优秀的数据可视化工具,欢迎收藏! /01/ 入门级工具 01 Excel Excel的图形化功能并不强大,但Excel却是分析数据的理想工具,上图是Excel生成的热力地图. 作为 ...

  5. vb net 模拟 ctrl+c_8款优秀的.NET开发工具,收藏了

    NET是一个重要的应用程序开发平台,因为它安全.稳定.易于学习和实现.今天小编给就给大家介绍8款优秀的.NET开发工具,有需要的小伙伴可以收藏转发哦. 1.Chocolaty Chocolaty是一个 ...

  6. mysql 导出dmp文件_15款优秀的mysql管理工具与应用程序推荐

    对于开发人员来说,mysql管理工具可以说是必不可缺的,它能帮助开发人员在许多方面支持包括PostgreSQL.MySQL.Redis.MongoDB等在内的多种数据库:同时还能提供包括触发器.事件. ...

  7. 开源数据挖掘工具Orange简介

    原文地址: http://cloga.info/python/2014/01/02/Orangeintro/#wat_e_19338566-a664-48dd-adf4-325f96bcec42 Or ...

  8. android 秒拍开源,六月份21款优秀Android开源库整理推荐

    原标题:六月份21款优秀Android开源库整理推荐 1.Android-DivergeView 仿美拍直播的点赞动画. 2.LRecyclerView RecyclerView下拉刷新,自动加载更多 ...

  9. java 数据挖掘 开源_5个开源数据挖掘工具,收下这波干货

    数据挖掘是从大量数据中提取隐藏的或未知,但可能有用信息的过程.尤其在机器学习中,数据挖掘是十分重要的一环.今天给大家介绍5个开源数据挖掘工具,收下这波干货吧. 1. Orange Orange 是由C ...

最新文章

  1. 1小时上手MaskRCNN·Keras开源实战 | 深度应用
  2. 在Linux中打印函数调用堆栈【原创】
  3. oracle手机号码检验字数_短信字数在线测试
  4. 优化程序性能的策略汇总
  5. C语言经典例35-字符串反转
  6. Android 一个Activity 里面放置多个 Fragment 实现点击切换的Tab 页面效果
  7. java cipher用法_java使用Cipher 执行RSA解密报错
  8. vue 组件模板template定义时的注意事项
  9. Python:学习笔记之变量
  10. python学习记录 - python3.x中如何实现print不换行
  11. python 绘制降水量色斑图
  12. python股票收益率计算_股票分析之——收益率(附完整代码和讲解)
  13. Android文件系统编译出错记录
  14. 推荐收藏 | 美团技术团队的书单
  15. 1+1备份和1:1冗余备份区别
  16. Windows常用操作—热键(快捷键)
  17. 小知识:软件开发的权限控制和权限验证
  18. 2019年最新中文TTS算法实现个合成样本
  19. framebuffer之overview/双缓冲/alpha与colorkey/窗口平移与virtual screen平移
  20. android ui 框架

热门文章

  1. 知道系统源码/知识问答系统源码/完整PC+手机端带功能强大后台管理系统
  2. 【自语】如何前后端的web及移动都打通?
  3. PHP中RabbitMQ之amqp扩展实现(四)
  4. linux双系统没有wifi,遇到了双系统中win下关闭了wifi,ubuntu中也无法启用的情况...
  5. 自制FM单频道收音机
  6. 短线操作技巧,如何判断次日收阳
  7. 你可以在xbox one主机上购买(你所在的地区不支持通过microsoft.com购买?的解决方案
  8. Unity学习笔记(实现传送带)
  9. Block Ack机制
  10. 美术初学者画速写人物遇到的问题有哪些