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

2023-06-05 0 683

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

在数据挖掘过程中,有大量的工具可供使用,比如采用人工智能、机器学习,以及其他技术等来提取数据。

 

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)基本上都提供了我们期望的大部分功能。

(IDMer:我尝试了以上这几种 开源软件,Weka很有名但用起来并不方便,界面也简单了点;RapidMiner现在流行的势头在上升,但它的操作方式和商用软件差别较大,不支持分析 流程图的方式,当包含的运算符比较多的时候就不容易查看了;KNIME和Orange看起来都不错,Orange界面看上去很清爽,但我发现它不支持中 文。我的推荐是KNIME,同时安装Weka和R扩展包。)

(IDMer:我的点评纯属个人意见,欢迎大家批评交流。在我的实际工作中使用开源挖掘工具并不多,大部分时候都是在使用SAS Enterprise Miner。)

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

以下为您推荐六款的数据挖掘工具:

1、WEKA

WEKA 原生的非 Java 版本主要是为了分析农业领域数据而开发的。该工具基于 Java 版本,是非常复杂的,并且应用在许多不同的应用中,包括数据分析以及预测建模的可视化和算法。与 RapidMiner 相比优势在于,它在 GNU 通用公共许可证下是免费的,因为用户可以按照自己的喜好选择自定义。

WEKA 支持多种标准数据挖掘任务,包括数据预处理、收集、分类、回归分析、可视化和特征选取。添加序列建模后,WEKA 将会变得更强大,但目前不包括在内。

2、RapidMiner

该工具是用 Java 语言编写的,通过基于模板的框架提供先进的分析技术。该款工具最大的好处就是,用户无需写任何代码。它是作为一个服务提供,而不是一款本地软件。值得一提的是,该工具在数据挖掘工具榜上位列榜首。

另外,除了数据挖掘,RapidMiner 还提供如数据预处理和可视化、预测分析和统计建模、评估和部署等功能。更厉害的是它还提供来自 WEKA(一种智能分析环境)和 R 脚本的学习方案、模型和算法。

RapidMiner 分布在 AGPL 开源许可下,可以从 SourceForge 上下载。SourceForge 是一个开发者进行开发管理的集中式场所,大量开源项目在此落户,其中就包括维基百科使用的 MediaWiki。

3、NLTK

当涉及到语言处理任务,没有什么可以打败 NLTK。NLTK 提供了一个语言处理工具,包括数据挖掘、机器学习、数据抓取、情感分析等各种语言处理任务。

而您需要做的只是安装 NLTK,然后将一个包拖拽到您最喜爱的任务中,您就可以去做其他事了。因为它是用 Python 语言编写的,你可以在上面建立应用,还可以自定义它的小任务。

4、Orange

Python 之所以受欢迎,是因为它简单易学并且功能强大。如果你是一个 Python 开发者,当涉及到需要找一个工作用的工具时,那么没有比 Orange 更合适的了。它是一个基于 Python 语言,功能强大的开源工具,并且对初学者和专家级的大神均适用。

此外,你肯定会爱上这个工具的可视化编程和 Python 脚本。它不仅有机器学习的组件,还附加有生物信息和文本挖掘,可以说是充满了数据分析的各种功能。

5、KNIME

数据处理主要有三个部分:提取、转换和加载。 而这三者 KNIME 都可以做到。 KNIME 为您提供了一个图形化的用户界面,以便对数据节点进行处理。它是一个开源的数据分析、报告和综合平台,同时还通过其模块化数据的流水型概念,集成了各种机 器学习的组件和数据挖掘,并引起了商业智能和财务数据分析的注意。

KNIME 是基于 Eclipse,用 Java 编写的,并且易于扩展和补充插件。其附加功能可随时添加,并且其大量的数据集成模块已包含在核心版本中。

6、R-Programming

如果我告诉你R项目,一个 GNU 项目,是由 R(R-programming简称,以下统称R)自身编写的,你会怎么想?它主要是由 C 语言和 FORTRAN 语言编写的,并且很多模块都是由 R 编写的,这是一款针对编程语言和软件环境进行统计计算和制图的免费软件。

R语言被广泛应用于数据挖掘,以及开发统计软件和数据分析中。近年来,易用性和可扩展性也大大提高了 R 的知名度。除了数据,它还提供统计和制图技术,包括线性和非线性建模,经典的统计测试,时间序列分析、分类、收集等等。

数据挖掘这一术语含义广泛,指代一些通常由软件实现的机制,目的是从巨量数据中提取出信息。数据挖掘往往又被称作算法。

数据科学融合了多门学科并且建立在这些学科的理论和技术之上,包括数学、概率模型、统计学、机器学习、数据仓库、可视化等。在实际应用中,数据科学包括数据的收集、清洗、分析、可视化以及数据应用整个迭代过程,最终帮助组织制定正确的发展决策数据科学的从业者称为数据科学家。

数据科学家是有着开阔视野的复合型人才,他们既有坚实的数据科学基础,如数学、统计学、计算机学等,又具备广泛的业务知识和经验数据科学家通过精深的技术和专业知识在某些科学学科领域解决复杂的数据问题,从而制定出适合不同决策人员的大数据计划和策略。数据分析师和数据科学家使用的工具在网上的MOOC有提供,比如2016年2月1日约翰-霍普金斯大学Coursera数据科学专业化课程等网络课程。数据科学家的常用工具与基本思路,并对数据、相关问题和数据分析师和数据科学家使用的工具做了综合概述。

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

C.常见的数据挖掘分析处理工具

1、Dynelle Abeyta整理的数据科学家5种工具:

dedup——dedup是一个Python库,使用机器学习快速的对结构化数据进行重复数据删除和实体解析。数据科学家发现他们经常需要使用SELECT DISTINCT * FROM my_messy_dataset;不幸的是,现实世界中的数据集往往更加复杂。无论你是去对多个数据源进行汇总,还是简单的数据收集,开始你都需要对重复数据的删除做一个有意义的分析。如你所想,有取之不尽的方法可以用来合并数据和用之不竭的规则来定义你数据的等价意义。有相同地址的两家餐馆是属于一个公司么?名和姓都相同的两条记录就是同一个人么?你很幸运,dedup可以让你转危为安!基于创新的计算机科学研究,dedup使用机器学习(更确切地说,应该是主动学习)去学习,通过合并人类的反馈对两个可能的模棱两可的记录进行研究,并寻找究竟是什么构成了两者的“相似”。更方便的是,它有一个图形用户界面(GUI),任何人都可以使用它。

Theano——Theano是一个Python库,你可以有效地定义、优化以及评估包含多维数组的数学表达式。Theano的特点:

· 和Numpy紧密结合——在Theano编译的函数中使用numpy.ndaaray。

· GPU的透明使用——在执行密集型数据计算时,相比于CPU,速度提升了140倍。(使用float32进行测试)

· 速度和稳定性优化——对log(1+x)得到正确的答案,即使x真的很小。

· C语言代码动态生成——加速评估表达式。

· 广泛的单元测试和自我验证——发现和诊断不同种类的错误。

StarCluster——StarCluster已经开始在Amazon的EC2云服务器中设计虚拟机创建、配置和管理集群的自动和简化程序。StarCluster允许所有人在面向分布式和并行计算的应用和系统的云服务器中轻松的创建一个集群计算环境。这允许你在无限制的数据上做交互程序。(贡献者Alessandro Gagliardi,Galvanize数据科学指导者。)

graph-tool——在python网络和图形分析库与日俱增的情况下,图形工具给了不少希望。尽管像NetworkX和Gephi这样的工具在不断成长的工具中仍然还有它们的一席之地,但是对于那些想要做大图像高级分析的人来说——无论是社会网络、道路网络、还是生物网络——这两者往往会显得力不从心。NetworkX一直是用于网络分析的最流行的Python工具,因为它有着丰富的API并且使用的门槛很低,但是一旦你开始处理更大的图形,纯python实现的弊端才真正开始凸显。而Gephi是一个极好的交互式可视化和开发新图像的图形化工具,但是有一个麻烦的脚本接口,使得它很难使用编程方式去控制。图形工具尝试从它前辈中吸取经验教训并给数据科学家最好的结果。它使用C++实现(可并行执行)并用Python来武装,绑定了一个易于使用的API,同时获得了超快的速度,而且不影响使用性。

Plotly——Plotly是一个面向R,Python,MATLAB,JavaScript和Excel的交互式图形库。Plotly也是一个用于分析和分享数据和图像的平台。Plotly是如何与众不同的呢?与Google Docs和GitHub一样,你可以协调和控制你的数据;可以将文件设置成公有的、私有的、秘密文件或是分享的。如果你使用plotly的免费公共云,脱机Plotly,或是现场部署,下面的选项很多都是可以获得的。在你的工作流中可以使用Plotly,这里有三种可用方式:

为数据科学家整合其它工具。Plotly的R,Python和MATLAB的API可以让你做交互、更新仪表面板和图像。Plotly整合了IPython Notebooks,NetworkX,Shiny,ggplot2,matplotlib,pandas,reporting tools和数据库。例如,下面的图是使用ggplot2制作的,然后嵌入到这个博客中。将鼠标悬停后看看数据变化,然后单击拖动放大。

创建交互式地图。Plotly的图形库建立在D3.js之上。对于地理数据,Plotly支持分级统计图、散点图、气泡图、分块图和线图。你可以制作类似下面这样的地图,像R和Python一样把它们嵌入到博客,应用程序和仪表板。

建立全方位的可视化。你可以为使用Plotly满足任意的可视化需求:地图、2D、3D以及流图。点击并移动你的鼠标来旋转这个图,悬停并观察数据变化,或切换放大。

2、6种开源数据挖掘工具:百分之八十的数据是非结构化的,需要一个程序和方法来从中提取有用信息,并且将其转换为可理解、可用的结构化形式。数据挖掘过程中有大量的工具可供使用,比如采用人工智能、机器学习,以及其他技术等来提取数据。以下为您推荐六款开源大数据挖掘工具:

1)WEKA——WEKA原生的非Java版本主要是为了分析农业领域数据而开发的。该工具基于Java版本,是非常复杂的,并且应用在许多不同的应用中,包括数据分析以及预测建模的可视化和算法。与 RapidMiner 相比优势在于,它在 GNU 通用公共许可证下是免费的,因为用户可以按照自己的喜好选择自定义。WEKA 支持多种标准数据挖掘任务,包括数据预处理、收集、分类、回归分析、可视化和特征选取。添加序列建模后,WEKA 将会变得更强大,但目前不包括在内。

2)RapidMiner——该工具是用Java语言编写的,通过基于模板的框架提供先进的分析技术。该款工具最大的好处就是,用户无需写任何代码。它是作为一个服务提供,而不是一款本地软件。值得一提的是,该工具在数据挖掘工具榜上位列榜首。另外,除了数据挖掘,RapidMiner 还提供如数据预处理和可视化、预测分析和统计建模、评估和部署等功能。更厉害的是它还提供来自WEKA(一种智能分析环境)和R脚本的学习方案、模型和算法。RapidMiner分布在AGPL开源许可下,可以从 SourceForge上下载。SourceForge是一个开发者进行开发管理的集中式场所,大量开源项目在此落户,其中就包括维基百科使用的 MediaWiki。

3)NLTK——当涉及到语言处理任务,没有什么可以打败NLTK。NLTK提供了一个语言处理工具,包括数据挖掘、机器学习、数据抓取、情感分析等各种语言处理任务。而您需要做的只是安装NLTK,然后将一个包拖拽到您最喜爱的任务中,您就可以去做其他事了。因为它是用Python语言编写的,你可以在上面建立应用,还可以自定义它的小任务。

4)Orange——Python之所以受欢迎,是因为它简单易学并且功能强大。如果你是一个Python开发者,当涉及到需要找一个工作用的工具时,那么没有比Orange更合适的了。它是一个基于Python语言,功能强大的开源工具,并且对初学者和专家级的大神均适用。此外,你肯定会爱上这个工具的可视化编程和 Python 脚本。它不仅有机器学习的组件,还附加有生物信息和文本挖掘,可以说是充满了数据分析的各种功能。

5)KNIME——数据处理主要有三个部分:提取、转换和加载。而这三者KNIME都可以做到。KNIME为您提供了一个图形化的用户界面,以便对数据节点进行处理。它是一个开源的数据分析、报告和综合平台,同时还通过其模块化数据的流水型概念,集成了各种机器学习的组件和数据挖掘,并引起了商业智能和财务数据分析的注意。KNIME是基于Eclipse,用Java编写的,并且易于扩展和补充插件。其附加功能可随时添加,并且其大量的数据集成模块已包含在核心版本中。

6)R-Programming——如果我告诉你R项目,一个GNU项目,是由R(R-programming简称,以下统称R)自身编写的,你会怎么想?它主要是由C语言和FORTRAN语言编写的,并且很多模块都是由R编写的,这是一款针对编程语言和软件环境进行统计计算和制图的免费软件。R语言被广泛应用于数据挖掘,以及开发统计软件和数据分析中。近年来,易用性和可扩展性也大大提高了 R 的知名度。除了数据,它还提供统计和制图技术,包括线性和非线性建模,经典的统计测试,时间序列分析、分类、收集等等。

3、数据分析语言3种工具:随着数据科学分析工具的发展,一方面成功解决了数据科学中的算法失效、超大规模数据可视化等一系列挑战;另一方面各具特点和优缺点。例如Mahout具有优秀的大数据处理能力,不仅处理数据量大且速度快,但可视化能力差。接下来选取R语言、RapidMiner、Mahout三种主流的数据科学分析工具,对其概述并以表格的形式对三者的主要特点进行了比较分析,工具基本情况如下。

1)R语言用于统计计算和作图的编程语言和环境,采用命令行工作方式,在GNU协议下免费发行,其源代码可供自由下载和使用。R网站CRAN上提供了大量的第三方程序包,内容涵盖了经济学、社会学、统计学、生物信息学等诸多方面,这也是为什么越来越多的各行各业的人员喜爱R的一个重要原因。针对传统分析软件的扩展性差以及Hadoop的分析功能薄弱的弱势,研究人员致力于将R语言和Hadoop的集成。R作为开源的统计分析软件,通过R与Hadoop的深度集成,把数据计算推向并行处理,使Hadoop获得强大的深度分析能力。

2)RapidMiner原名Yale,是一种用于数据挖掘、机器学习以及商业预测分析的开源计算环境。其既可以使用简单的脚本语言进行大规模进程操作,也可以通过JavaAPI或GUI模式进行操作。因为其具备GUI特性,所以对于数据挖掘的初学者比较容易入门。RapidMiner6具有友好而强大的工具箱,提供快而稳定的分析,可以在短时间内设计好一个原型,使得数据挖掘过程中的关键决策尽可能早地实现。帮助减少客户流失、进行情感分析、预测性维护以及市场直销等。

3)ApacheMahout起源于2008年,其主要目标是构建一个可伸缩的机器学习算法的资源库,它提供了一些经典的机器学习算法,旨在帮助开发人员更加方便快捷地创建智能应用程序。目前,Mahout的项目包括频繁子项挖掘、分类、聚类、推荐引擎(协同过滤)。

4、数据挖掘5种工具分别为:Intelligent Miner、SAS Enterpreise Miner 、SPSS Clementine、马克威分析系统、GDM,下面将作部分介绍。

1)Intelligent Miner综述:IBM的Exterprise Miner简单易用,是理解数据挖掘的好的开始。能处理大。数据量的挖掘,功能一般,可能仅满足要求.没有数据探索功能。与其他软件接口差,只能用DB2,连接DB2以外的数据库时,如Oracle, SAS, SPSS需 要安装DataJoiner作为中间软件。难以发布。结果美观,但同样不好理解。

2)SAS Enterprise Miner综述:SAS完仝以统计理论为基础,功能强大,有完备的数据探索功能。但难以掌握,要求是高级统计分析专业人员.结果难以理解。价格也极其昂贵,而且是租赁模式。基本内容:支持SAS统计模块,使之具有杰出的力量和影响,它还通过大量数据挖掘算法增强了那些模块。SAS使用它的SEMMA方法学以提供一个能支持包括关联、聚类、决策树、神经元网络和统计回归在内的广阔范围的模型数据挖掘工具。

3)SPSS(Statistical Product and Service Solutions)综述:“统计产品与服务解决方案”软件。最初软件全称为“社会科学统计软件包”。但是随着SPSS产品服务领域的扩大和服务深度的增加,SPSS公司已于2000年正式将英文全称更改为“统计产品与服务解决方案”。用作多个领域和行业,是世界上应用最广泛的专业统计软件。

1、计算机编程能力的要求

作为数据分析很多情况下需要用到成型的分析工具,比如EXCEL、SPSS,或者SAS、R。一个完全不懂编程,不会敲代码的人完全可以是一名能好的数据分析师,因为一般情况下OFFICE包含的几个工具已经可以满足大多数数据分析的要求了。很多的数据分析人员做的工作都是从原始数据到各种拆分汇总,再经过分析,最后形成完整的分析报告。当然原始数据可以是别人提供,也可以自己提取(作为一名合格的数据分析师,懂点SQL知识是很有好处的)。

而数据挖掘则需要有编程基础。为什么这样说呢?举两个理由:第一个,目前的数据挖掘方面及相关的研究生方面绝大多数是隶属于计算机系;第二点,在招聘岗位上,国内比较大的公司挂的岗位名称大多数为“数据挖掘工程师”。从这两点就可以明确看出数据挖掘跟计算机跟编程有很大的联系。

2、在对行业的理解的能力

要想成为一名优秀的数据分析师,对于所从事的行业有比较深的了解和理解是必须要具备的,并且能够将数据与自身的业务紧密结合起来。简单举个例子来说,给你一份业务经营报表,你就能在脑海中勾画出目前经营状况图,能够看出哪里出现了问题。但是,从事数据挖掘不一定要求对行业有这么高的要求。

3、专业知识面的要求

数据分析师出对行业要了解外,还要懂得一些统计学、营销、经济、心理学、社会学等方面的知识,当然能了解数据挖掘的一些知识会更好。数据挖掘工程师则要求要比较熟悉数据库技术、熟悉数据挖掘的各种算法,能够根据业务需求建立数据模型并将模型应用于实际,甚至需要对已有的模型和算法进行优化或者开发新的算法模型。想要成为优秀的数据挖掘工程师,良好的数学、统计学、数据库、编程能力是必不可少的。

数据分析师与数据挖掘工程师的相似点:

1、都跟数据打交道。

他们玩的都是数据,如果没有数据或者搜集不到数据,他们都要丢饭碗。

2、知识技能有很多交叉点。

他们都需要懂统计学,懂数据分析一些常用的方法,对数据的敏感度比较好。

3、在职业上他们没有很明显的界限。

很多时候数据分析师也在做挖掘方面的工作,而数据挖掘工程师也会做数据分析的工作,数据分析也有很多时候用到数据挖掘的工具和模型,很多数据分析从业者使用SAS、R就是一个很好的例子。而在做数据挖掘项目时同样需要有人懂业务懂数据,能够根据业务需要提出正确的数据挖掘需求和方案能够提出备选的算法模型,实际上这样的人一脚在数据分析上另一只脚已经在数据挖掘上了。

事实上没有必要将数据分析和数据挖掘分的特别清,但是我们需要看到两者的区别和联系,作为一名数据行业的从业者,要根据自身的特长和爱好规划自己的职业生涯,以寻求自身价值的最大化。

大数据是一个含义广泛的术语,是指数据集,如此庞大而复杂的,他们需要专门设计的硬件和软件工具进行处理。该数据集通数据分析是在研究大量的数据的过程中寻找模式,相关性和其他有用的信息,可以帮助企业更好地适应变化,并做出更明智的决策。

Hadoop

Hadoop 是一个能够对大量数据进行分布式处理的软件框架。但是 Hadoop 是以一种可靠、高效、可伸缩的方式进行处理的。Hadoop 是可靠的,因为它假设计算元素和存储会失败,因此它维护多个工作数据副本,确保能够针对失败的节点重新分布处理。Hadoop 是高效的,因为它以并行的方式工作,通过并行处理加快处理速度。Hadoop 还是可伸缩的,能够处理 PB 级数据。此外,Hadoop 依赖于社区服务器,因此它的成本比较低,任何人都可以使用。

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

Hadoop是一个能够让用户轻松架构和使用的分布式计算平台。用户可以轻松地在Hadoop上开发和运行处理海量数据的应用程序。它主要有以下几个优点:

高可靠性。Hadoop按位存储和处理数据的能力值得人们信赖。

高扩展性。Hadoop是在可用的计算机集簇间分配数据并完成计算任务的,这些集簇可以方便地扩展到数以千计的节点中。

高效性。Hadoop能够在节点之间动态地移动数据,并保证各个节点的动态平衡,因此处理速度非常快。

高容错性。Hadoop能够自动保存数据的多个副本,并且能够自动将失败的任务重新分配。

Hadoop带有用 Java 语言编写的框架,因此运行在 Linux 生产平台上是非常理想的。Hadoop 上的应用程序也可以使用其他语言编写,比如 C++。

HPCC

HPCC,High Performance Computing and Communications(高性能计算与通信)的缩写。1993年,由美国科学、工程、技术联邦协调理事会向国会提交了“重大挑战项目:高性能计算与 通信”的报告,也就是被称为HPCC计划的报告,即美国总统科学战略项目,其目的是通过加强研究与开发解决一批重要的科学与技术挑战问题。HPCC是美国 实施信息高速公路而上实施的计划,该计划的实施将耗资百亿美元,其主要目标要达到:开发可扩展的计算系统及相关软件,以支持太位级网络传输性能,开发千兆 比特网络技术,扩展研究和教育机构及网络连接能力。

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

该项目主要由五部分组成:

高性能计算机系统(HPCS),内容包括今后几代计算机系统的研究、系统设计工具、先进的典型系统及原有系统的评价等;

先进软件技术与算法(ASTA),内容有巨大挑战问题的软件支撑、新算法设计、软件分支与工具、计算计算及高性能计算研究中心等;

国家科研与教育网格(NREN),内容有中接站及10亿位级传输的研究与开发;

基本研究与人类资源(BRHR),内容有基础研究、培训、教育及课程教材,被设计通过奖励调查者-开始的,长期 的调查在可升级的高性能计算中来增加创新意识流,通过提高教育和高性能的计算训练和通信来加大熟练的和训练有素的人员的联营,和来提供必需的基础架构来支 持这些调查和研究活动;

信息基础结构技术和应用(IITA ),目的在于保证美国在先进信息技术开发方面的领先地位。

Storm

Storm是自由的开源软件,一个分布式的、容错的实时计算系统。Storm可以非常可靠的处理庞大的数据流,用于处理Hadoop的批量数据。Storm很简单,支持许多种编程语言,使用起来非常有趣。Storm由Twitter开源而来,其它知名的应用企业包括Groupon、淘宝、支付宝、阿里巴巴、乐元素、 Admaster等等。

Storm有许多应用领域:实时分析、在线机器学习、不停顿的计算、分布式RPC(远过程调用协议,一种通过网络从远程计算机程序上请求服务)、 ETL(Extraction-Transformation-Loading的缩写,即数据抽取、转换和加载)等等。Storm的处理速度惊人:经测 试,每个节点每秒钟可以处理100万个数据元组。Storm是可扩展、容错,很容易设置和操作。

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

Apache Drill

为了帮助企业用户寻找更为有效、加快Hadoop数据查询的方法,Apache软件基金会近日发起了一项名为“Drill”的开源项目。Apache Drill 实现了 Googles Dremel.

据Hadoop厂商MapR Technologies公司产品经理Tomer Shiran介绍,“Drill”已经作为Apache孵化器项目来运作,将面向全球软件工程师持续推广。

该项目将会创建出开源版本的谷歌Dremel Hadoop工具(谷歌使用该工具来为Hadoop数据分析工具的互联网应用提速)。而“Drill”将有助于Hadoop用户实现更快查询海量数据集的目的。

“Drill”项目其实也是从谷歌的Dremel项目中获得灵感:该项目帮助谷歌实现海量数据集的分析处理,包括分析抓取Web文档、跟踪安装在Android Market上的应用程序数据、分析垃圾邮件、分析谷歌分布式构建系统上的测试结果等等。

通过开发“Drill”Apache开源项目,组织机构将有望建立Drill所属的API接口和灵活强大的体系架构,从而帮助支持广泛的数据源、数据格式和查询语言。

RapidMiner

RapidMiner是世界领先的数据挖掘解决方案,在一个非常大的程度上有着先进技术。它数据挖掘任务涉及范围广泛,包括各种数据艺术,能简化数据挖掘过程的设计和评价。

功能和特点:

免费提供数据挖掘技术和库

100%用Java代码(可运行在操作系统)

数据挖掘过程简单,强大和直观

内部XML保证了标准化的格式来表示交换数据挖掘过程

可以用简单脚本语言自动进行大规模进程

多层次的数据视图,确保有效和透明的数据

图形用户界面的互动原型

命令行(批处理模式)自动大规模应用

Java API(应用编程接口)

简单的插件和推广机制

强大的可视化引擎,许多尖端的高维数据的可视化建模

400多个数据挖掘运营商支持

耶鲁大学已成功地应用在许多不同的应用领域,包括文本挖掘,多媒体挖掘,功能设计,数据流挖掘,集成开发的方法和分布式数据挖掘。

Pentaho BI

Pentaho BI 平台不同于传统的BI 产品,它是一个以流程为中心的,面向解决方案(Solution)的框架。其目的在于将一系列企业级BI产品、开源软件、API等等组件集成起来,方便商务智能应用的开发。它的出现,使得一系列的面向商务智能的独立产品如Jfree、Quartz等等,能够集成在一起,构成一项项复杂的、完整的商务智能解决方案。

Pentaho BI 平台,Pentaho Open BI 套件的核心架构和基础,是以流程为中心的,因为其中枢控制器是一个工作流引擎。工作流引擎使用流程定义来定义在BI 平台上执行的商业智能流程。流程可以很容易的被定制,也可以添加新的流程。BI 平台包含组件和报表,用以分析这些流程的性能。目前,Pentaho的主要组成元素包括报表生成、分析、数据挖掘和工作流管理等等。这些组件通过 J2EE、WebService、SOAP、HTTP、Java、JavaScript、Portals等技术集成到Pentaho平台中来。 Pentaho的发行,主要以Pentaho SDK的形式进行。

Pentaho SDK共包含五个部分:Pentaho平台、Pentaho示例数据库、可独立运行的Pentaho平台、Pentaho解决方案示例和一个预先配制好的 Pentaho网络服务器。其中Pentaho平台是Pentaho平台最主要的部分,囊括了Pentaho平台源代码的主体;Pentaho数据库为 Pentaho平台的正常运行提供的数据服务,包括配置信息、Solution相关的信息等等,对于Pentaho平台来说它不是必须的,通过配置是可以用其它数据库服务取代的;可独立运行的Pentaho平台是Pentaho平台的独立运行模式的示例,它演示了如何使Pentaho平台在没有应用服务器支持的情况下独立运行;Pentaho解决方案示例是一个Eclipse工程,用来演示如何为Pentaho平台开发相关的商业智能解决方案。

Pentaho BI 平台构建于服务器,引擎和组件的基础之上。这些提供了系统的J2EE 服务器,安全,portal,工作流,规则引擎,图表,协作,内容管理,数据集成,分析和建模功能。这些组件的大部分是基于标准的,可使用其他产品替换之。

工欲善其事,必先利其器!

那么在数据分析领域,都有哪些软件分析工具呢?如何选择呢?其实很多领域或者说分析方法都有相应的软件工具,只要你想找就应该能够找到! 

这里我把软件分成纵横四个层次的的象限图来表达!

第一维度:数据存储层——>数据报表层——>数据分析层——>数据展现层

第二维度:用户级——>部门级——>企业级——>BI级

首先,存储层:

我们必须能够存储数据,对个人来讲至少应该掌握一种数据库技术,当然也不一定要熟练操作,但至少要能够理解数据的存储和数据的基本结构和数据类型,比如数据的安全性、唯一性、冗余性,表的关系,粒度,容量等,最好能够理解SQL查询语言的基本结构和读取等等!

Access2003、Access07等:这是最基本的个人数据库,经常用于个人或部分基本的数据存储;

MySQL数据库,这个对于部门级或者互联网的数据库应用是必要的,这个时候关键掌握数据库的库结构和SQL语言的数据查询能力;

SQL Server 2005或更高版本,对中小企业,一些大型企业也可以采用SQL Server数据库,其实这个时候本身除了数据存储,也包括了数据报表和数据分析了,甚至数据挖掘工具都在其中了;

DB2,Oracle数据库都是大型数据库了,主要是企业级,特别是大型企业或者对数据海量存储需求的就是必须的了,一般大型数据库公司都提供非常好的数据整合应用平台;

BI级,实际上这个不是数据库,而是建立在前面数据库基础上的,这个主要是数据库的企业应用级了,一般这个时候的数据库都叫数据仓库了,Data Warehouse,建立在DW级上的数据存储基本上都是商业智能平台,或许整合了各种数据分析,报表、分析和展现!

第二:报表层当企业存储了数据后,首先要解决的报表,还不是分析问题,是要能够看到,看到报表,各种各样的报表!国内外有专门提供报表分析服务的企业和软件。 

Crystal Report水晶报表,Bill报表,这都是全

Tableau软件,这个软件是近年来非常棒的一个软件,当然它已经不是单纯的数据报表软件了,而是更为可视化的数据分析软件,因为我经常用它来从数据库中进行报表和可视化分析,先暂列在报表层;

这个软件从3.0开始,现在已经有了5.1版本,两年的时间已经到了服务器和Web方式了!当然,如果企业有上万张报表,需要好好管理起来,还有安全性,并发请求等,就需要有Server版; 博易智讯公司专门提供Crystal Report和Crystal Report Server版销售和软件服务;第三:数据分析层这个层其实有很多分析工具,当然我们最常用的就是Excel,我经常用的就是统计分析和数据挖掘工具; 

Excel软件,首先版本越高越好用这是肯定的;当然对Excel来讲很多人只是掌握了5%Excel功能,Excel功能非常强大,甚至可以完成所有的统计分析工作!但是我也常说,有能力把Excel玩成统计工具不如专门学会统计软件;

SPSS软件:当前版本是18,名字也改成了PASW Statistics;我从3.0开始Dos环境下编程分析,到现在版本的变迁也可以看出SPSS社会科学统计软件包的变化,从重视医学、化学等开始越来越重视商业分析,现在已经成为了预测分析软件。

Clementine软件:当前版本13.0,数据挖掘工具,我从6.0开始用,到了13版,已经越来越多的提高了更多有好的建模工具,现在改名叫PASW Modeler 13建模器了。而且与SPSS统计功能有了更多的整合,数据处理也更加灵活和好用。

SAS软件:SAS相对SPSS其实功能更强大,SAS是平台化的,EM挖掘模块平台整合,相对来讲,SAS比较难学些,但如果掌握了SAS会更有价值,比如离散选择模型,抽样问题,正交实验设计等还是SAS比较好用,另外,SAS的学习材料比较多,也公开,会有收获的!

当然,我主要是采用SPSS和Clementine,有时候就是习惯,当然会了一种软件在学其他的也不是很困难!

JMP分析:SAS的一个分析分支

XLstat:Excel的插件,可以完成大部分SPSS统计分析功能

Ucinet社会网分析软件:SNA社会网络分析是非常流行和有价值的分析工具和方法,特别是从关系角度进行分析社会网络,关系分析非常重要,过去我们都是属性数据分析

大家如果有需要试用版,可以联系博易智讯,他们可以提供SPSS和Clementine软件版本的咨询。第四:表现层最近我一直在研究数据可视化技术,一方面是因为Excel大家有需求,另一方面就是我第一个购买了Xcelsius,也写了《Excel高级应用与数据分析》和《数据展现的艺术——Xcelsius》。这个领域的软件,特别是一些小工具非常有价值!

PowerPoint软件:这个没得说了,大部分人都是用PPT写报告;

Visio、SmartDraw软件:这些都是非常好用的流程图、营销图表、地图等,而且从这里可以得到很多零件;

Swiff Chart软件:制作图表的软件,生成的是Flash;

Color Wheel软件:配色软件

Yed软件:网络关系图、流程图和图形分析软件,类似SNA分析,我经常用来设计流程图,还有就是分析优化关系图;

Netdraw软件:这是社会网络分析展现软件,主要是可视化网络关系图的,读取Ucinet软件;

Mindmanager软件:思维导图,非常好的软件,可以把非线性思维很快构建起来,并且项目组织管理、报告设计构想都可以应用,直接生成PPT等,当然这个软件功能非常强大,我的学生都用它来做笔记和会议记录;

Xcelsius软件:Dashboard制作和数据可视化报表工具,可以直接读取数据库,在Excel里建模,互联网展现,最大特色还是可以在PPT中实现动态报表;这个是我最希望应用的一个软件工具,非常有价值!

我建了一个连接互联网程序员和营销人的圈子(听说可以无上限人数),程序员、互联网营销、运营之人专属,定期分享知识干货。我会持续邀请我认识的技术大咖,营销大神进来,欢迎扫码加入。

小密圈。就可以在微信里面直接进去。

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

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

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务