可视化机器学习工具软件的比较分析研究

可视化机器学习工具软件的比较分析研究

Ø   摘要算法

近年来,随着人脸识别、语音识别等技术的突破性进展,隐藏在它们背后的底层技术也引发工程和研究人员的高度重视,譬如机器学习。然而,机器学习是一个入门门槛相对比较高的技术领域,大部分的工程技术人员和业务人员都聚焦在业务领域的特征提取,算法选择,参数调优和模型验证上,所以一个方便高效的可视化工具,对于下降用户的机器学习学习曲线、提高工做效率显得尤其重要。数据库

本报告主要从开源和商业领域选取了WEKA、RapidMiner、KNIME、明略、东软RealRec五款具备行业表明性的可视化机器学习工具,首先对它们进行功能性分析,剖析并总结各工具的核心特色,而后从工具支持机器学习算法程度、可视化能力、不一样用户群学习难易度、对主流大数据平台支持程度以及软件成熟度和使用成本六个维度进行比较,经过对比发现它们各自的优缺点和适用范围,为使用者在从此机器学习工做中提供技术选型建议。编程

 

Ø   正文api


1、引言


近年来,随着人脸识别、语音识别等技术的突破性进展,隐藏在他们背后的底层技术也引发工程和研究人员的高度重视,譬如机器学习。机器学习是人工智能领域的一个核心研究方向,它是一个多学科交叉的产物,在不少应用领域发挥了重要的实用价值,特别是在数据挖掘、语音识别、图像识别、机器人、信息安全等领域取得了瞩目的成果。然而,机器学习也是一个入门门槛相对比较高的技术领域,大部分的技术人员都聚焦在特征提取,算法选择和参数调优上,而非算法实现和优化,所以一个方便高效的工具,即是十分重要。浏览器

       目前机器学习领域大量的工具都是编程性的机器学习库,譬如R、Python以及深度学习库caffe、tensorflow等,这些机器学习工具都具备必定的门槛,学习曲线比较高,不适合通常的业务和数据分析人员。所以市场上也出现了一系列的可视化机器学习工具,用于下降相关技术人员的学习曲线,提高工做效率。譬如,在国外市场,RapidMiner和KNIME长期处于Gartner高级分析平台魔力象限领导者位置;在国内,明略DataInsight是领域的新锐,并行算法优化多,得到2016年大数据龙头企业奖;东软RealRec已在几个行业中获得应用;而在纯开源领域WEKA绝对是可视化机器学习的佼佼者。缓存

鉴于RapidMiner、KNIME、DataInsight、东软RealRec以及WEKA在可视化领域的表明性和开放性,本文选取了上述这四种可视化机器学习工具,对它们进行概述和分析,总结其各自的特色,并经过对比发现它们各自的优缺点和适用范围,为使用者在从此的选择过程当中提供帮助。安全


2、机器学习工具功能特色分析


因为数据挖掘领域使用了大量的机器学习算法,所以,机器学习工具软件通常隶属于数据挖掘工具,是数据挖掘工具的子集。网络


(一)WEKA


1.  概况


WEKA是一款免费开源的机器学习和数据挖掘可视化工具软件,其操做简便,运行速度快,尤为适合小规模的机器学习建模,是机器学习入门的不二选择。架构


图1:WEKA建模示意图eclipse


2.  特色


WEKA Knowledge Flow 具备如下功能特色:

(1) 可移植性。WEKA基于Java 编程语言进行操做,从而几乎任何现代计算平台均可以运行。

(2) 支持标准的机器学习任务,包括数据预处理、聚类、分类、回归以及特征选择。各方面任务特色以下:

ü  数据预处理任务从数据库、CSV 文件等输入数据,并使用过滤算法对数据进行预处理。这些过滤器可用于转换数据(例如连续型数值属性变成离散型),从而根据具体的标准删除实例和属性。

ü  关联分析任务提供了不一样的关联规则学习算法,譬如Apriori或FP-growth等,方便找出数据属性之间全部重要的关联关系。

ü  分类任务提供了贝叶斯、决策树、随机森林等不一样的分类器进行数据分类学习,此外,使用户应用分类和回归算法的结果数据集,去评估预测模型产生结果的准确性,并可视化错误预测、ROC 曲线和模型自己(若是模型是适合可视化的,如贝叶斯)。

ü  聚类面板给WEKA提供了聚类技术,如简单的K-Means算法,也能够用指望最大化算法进行混合正态分布的学习。

ü  特征选择属性任务提供了数据集中大多数预测属性的识别算法。

(3) WEKA KnowledgeFlow的全部技术是创建在数据可做为一个单一的平面文件或关系这个假设前提上的,其中每一个数据点被设计成一个固定数量的属性(一般是数字或名义的属性,但一些其它的属性类型也被支持)。所以WEKA Knowledge Flow 不能进行多位关系数据挖掘,但有独立的软件能够将链接的数据库表转换成一个单一的表,使其可使用WEKA 进行处理。


(二)RapidMiner


1.  概况


RapidMiner是集数据挖掘,机器学习,预测分析和商业智能为一体的可视化工具软件,包括文本挖掘、多媒体挖掘、功能设计、数据流挖掘、集成开发方法和分布式数据分析等。本文主要对RapidMiner 7.1 进行比较研究。


图2:RapidMiner建模示意图


2.  特色


RapidMiner(以RapidMiner V7为例)具备如下特色:

(1) 包含彻底集成的机器学习库WEKA,提供关于数据集成、转换和建模方法的最全面的机器学习解决方案。

(2) 免费提供大量的数据抽取功能。包括Oracle、IBM DB二、MS SQL Server、 MySQL、Ingres、Postgres、Teradata 等全部常见的数据库。支持Excel、SPSS、CSV、Dbase、Arff、 DasyLab等多种格式的数据源,以及ASCII,、PDF、HTML 和XML 格式的文本文档和和网页、时间序列数据等。

(3) 具备强大直观的图形用户界面设计分析过程。经过许多尖端的高维数据实现可视化建模和数据探索功能,造成在线的1D、2D、3D 图,以及Andrews、平行、误差和SOM 视图等。

(4) 具备模块化系统,使分析过程具备极大的灵活性和扩展性。RapidMiner 拥有超过500 个数据集成和转化,分析和评估的模块工具。其中数据集成和分类工具包括支持向量机(SVM)、规则学习者、决策树、贝叶斯、高斯过程、神经网络、优化评估、boosting 算法、Apriority、FPGrowth 以及聚类等。评估工具包括交叉检验、leave-one-out、滑动时间窗、回溯测试、显着性检验以及ROC等。

(5) 模块化的运行概念奠基了机器学习模型建立的设计流程。元运算容许这些过程自动优化,所以使用者不须要手动去适应每一个步骤和参数。优化运算包括自动参数优化、自动属性设置优化、循环、控制结构、宏、断点调试以及更多。

(6) 模型的快速成型和超越。从第一次探索分析到现成解决方案只需几步。快速成型容许机器学习模型过程当中的关键决策能够尽量早的实现。使用RapidMiner 可使你在短期内设计好一个原型,从这些原型中,优化这些过程引导你获得解决方案。

(7) 使用Java 代码,可经过GUI 模式或Java API 进行操做,也能够用简单脚本语言自动进行大规模进程操做。而且内部XML保证了标准化的格式来表示建模过程。

(8) RapidMiner与市面上主流的大数据分析平台支持很是友好,譬如不一样版本的CDH集成,包括同一平台的不一样版本的支持,不须要应对复杂的配置文件,所以可以方便应对大规模分布式机器学习应用场景。

(9) RapidMiner有成熟的社区和扩展交易市场(marketplace),用户能够根据本身的须要,快速获取不少定制化的功能。


(三)KNIME


1.  概况


KNIME是一个集数据集成、处理、分析和开发于一体的开源数据分析平台,对经常使用的机器学习算法也提供了友好的支持,并在严格的软件工程实践中进行开发和利用。本文主要对KNIME 3.1 进行比较研究。


图3:KNIME建模示意图


2. 特色


KNIME(以KNIME 3.1为例)具备如下特色:

(1) 可视化的工做平台集成了数据访问、数据转换、数据探索和预测分析等经常使用的机器学习功能。

(2) 集成了数百个处理结点来进行数据输入与输出﹑预处理和清洗﹑建模﹑分析﹑数据挖掘以及制做各类互动的视图(如散点图﹑平行坐标和其余视图)。

(3) 可集成全部的分析模版到众所周知的WEKA 数据挖掘环境中,并有额外的插件模块容许R-脚本运行,还提供了广大统计例程库接口。

(4) 基于Eclipse 平台开发,而且经过其模块化的API 可轻松进行扩展。由于KNIME在后台可进行智能自动的数据缓存,同时最大限度地提升吞吐量性能,因此这种模块化和可扩展性容许KNIME 在商业的生产环境以及教学和研究原型设置工做中获得应用。

(5) 提供超过1000 个数据分析例程,不管是在本地或经过R和 WEKA均可以进行,如单元和多元统计、数据挖掘、时间系列、图像处理、Web 分析、文本挖掘以及社会化媒体分析等。

(6) 机器学习建模工做流程不只能够经过交互式用户界面运行并且执行批处理模式,使数据分析过程能够很容易地按期集成到本地工做运行的管理中去。

(7) KNIME提供了大量的行业应用模板和定制化化的算子,便于特定应用行业的数据分析,譬如生物医药行业。

(8)具备 HiLite 功能,容许用户在节点结果中标记感兴趣的记录,并进一步展开后续探索。


(四)明略


1.  概况


明略可视化机器学习平台DataInsight本质是一种MLAAS平台,用户无须在客户端安装平台工具,经过浏览器便可进行拖拽,交互式数据探索,完成机器学习模型的训练、部署和应用。DataInsight不只集成了Spark MLlib分布式机器学习能力,还定制了高效的分布式机器学习算法。


图4:明略DataInsight建模示意图


2.  特色


明略DataInsight平台基于BS架构,DataInsight经过提供一体化、并行化的高效模型应用平台,能帮助企业有效下降机器学习的应用曲线和落地成本。具备以下特色:

(1) 扩展性强。明略DataInsight平台基于Hadoop和Spark的并行化平台,计算能力随着大数据平台计算能力的扩展而扩展。其提供了多种数据预处理的并行化算法,以及大量并行运行于Spark之上的数据挖掘和机器学习算法。

(2) 模型工做流。使用工做流的概念表示整个建模过程,每一个建模步骤看做一个算子,使得整个建模过程造成一幅有向无环图,建模过程将原始的输入经过一系列算子组合获得最终的业务结果。

(3) 交互式探索。明略DataInsight提供了交互式数据探索工具供用户对数据进行实验性的探索工做,帮助用户实时的对数据进行探索和实验。同时,明略DataInsight经过可视化的方法,提供了经常使用的数据统计和分析的图表,供用户可以直观的从图形中发掘数据背后的意义。

(4) 模型应用管理。提供模型应用的版本管理,可以方便的进行模型的维护和更新,提高工做效率。而且对模型的应用管理提供了用户和角色的支持,方便权限控制。

(5) 模型即服务。DataInsight平台经过Restful API向企业其余生产系统提供服务,外部系统能够经过Restful API实现模型的运行和更新等操做。


(五)  东软RealRec


1.   概况


东软数据科学平台定位于企业级数据科学平台,经过简化复杂机器学习算法的使用成本,提升企业构建智能应用的能力和效率,帮助企业实现数据驱动的商业模式。产品组成以下:


图5:东软RealRec建模示意图


2.    特色


东软RealRec主要经过在机器学习算法和模型方面的能力建设,使企业可以快速构建智能应用,开展创新数据服务和业务。

主要具有以下特色:

(1) 特征分析实现了多维分析和分布统计,经过对数据进行过滤、去重、拆分、合并,实现数据可视化展示,并实现了数据的特征抽取、管理和复用;

(2) 模型训练实现了自动化的模型选择,模型的交叉验证和可视化展示,并提供全流程的引导, 训练数据能够是实时数据、批量数据或文件;

(3) 在模型最终部署应用时提供跨平台REST接口、POJO导出/UDF导出,并实现了模型管理复用和任务调度管理;

(4) 机器学习经过提取原始数据的特征,选择合适的算法,最终实现模型的自动化选择和导出。


3、机器学习工具比较分析


本部分主要从不一样维度对上述机器学习工具进行比较,譬如从算法支持程度、可视化功能、面向不一样用户群学习难易度、对主流大数据平台支持能力以及软件成熟度等维度进行比较。


(一)机器学习算法的比较


上述可视化机器学习工具对经常使用的机器学习算法都提供了支持,但具体对某一算法的支持程度则有所不一样,譬如以支持向量机算法为例:KNIME仅支持LibSVM,SparkLinear SVM,Rapid Miner能够支持LibSVM,Linear SVM,Evolutionary SVM以及PSO SVM,以及Spark SVM,明略支持Spark SVM和LibSVM,而WEKA仅支持LibSVM。

各算法支持功能强弱可参考下表:

机器学习算法

WEKA

RapidMiner

KNIME

明略

东软RealRec

支持向量机

中等

较强

中等

下一版本支持

决策树

中等

中等

贝叶斯

中等

较强

中等

回归

中等

较强

中等

神经网络

较强

较强

深度学习

不支持

很弱

很弱

不支持

K-Means

中等

较强

中等

说明:

ü  目前RAPID MINER正在集成JAVA深度学习开源项目DeepLearning4J,能够支持深度学习建模,可是目前尚不成熟。

ü  目前WEKA不支持分布式机器学习算法,其余工具均支持分布式的机器学习算法。其中RAPIDMINER和KNIME均经过软件扩展集成Spark,经过Spark MLLIB的算法支持分布式机器学习算法。明略DataInsight目标便是面向大数据的分析和建模。


(二)可视化功能的比较


软件产品的使用容易程度相当重要,一款好的可视化工具应可以实现训练数据的可视化探索、模型的可视化、模型训练的可视化、模型验证及应用的可视化,可以自带多行业的模板和样例,便于数据分析人员的快速上手,提高模型创建和训练的效率。具体表如今数据的导入/处理、模型的构建、模型的易理解性等方面。

比较项目

WEKA

RapidMiner

KNIME

明略

东软RealRec

数据抽取

只能经过数据文件、URL地址以及数据库抽取收取,不支持其余数据源数据抽取,功能单一。

支持各类格式文件、数据源的抽取,图形化的抽取算子,并进行数据的交互式探索

也具有经常使用文件格式和数据源的抽取,但数据的交互式探索功能不方便

可以支持多个文件格式、数据库抽取,对大数据平台数据抽取能力强

支持文件上传、HBase数据、HDFS数据、关系型数据库数据,可对接大数据平台

数据转换

提供经常使用的数据过滤、归一化等功能

数据的归一化、降维和格式化等

各类数据格式化功能,数据融合、数据过滤等

提供经常使用的数据过滤、归一化等功能

提供经常使用的数据过滤、归一化、切分等功能

数据建模

提供简洁的拖拽等可视化建模能力。

相似工做流的可视化建模,支持嵌套。

也提供工做流的可视化建模,可是设置选型多,比较复杂

也提供工做流的可视化建模,但功能还不完善,正在改善。

提供notebook(记事本)式的数据建模,以命令行的方式运行模型

模型验证及评测结果展现

支持经常使用的图表展现,可是图表美观性差

各类图形的可视化展现,切换容易

各类常见图形的展现

支持的图表有限,目前正在改善。

支持经常使用的图表展现,可是图表美观性通常


(三)不一样用户群学习及使用难易度的比较


不一样机器学习工具具备不一样功能特色,有的灵活性强,有的功能简洁,这些都会影响不一样用户群的学习曲线以及工具使用的难易程度。咱们根据不用用户群知识结构特色以及上述工具产品的功能特色综合分析比较,不一样用户群掌握工具难易程度以下:

比较项目

WEKA

RapidMiner

KNIME

明略

东软RealRec

开发人员

操做界面比较简洁和直观;工具是轻量级的,对系统资源消耗少,运行快捷;对于开发人员入门简单,使用便捷

对运行的硬件资源要求比较高,运行速度不是很快;界面设计比较清晰直观;对于开发人员入门也很是容易

工具操做界面基于eclipse开发,对于熟悉eclipse开发工具的研发人员比较简单;因为选项多、灵活性大,掌握难度大

彻底基于WEB的操做界面,界面风格简洁直观,对于开发人员入门简单;因为WEB版,运行于浏览器,对硬件资源需求小,操做便利

彻底基于WEB的操做界面,对开发人员入门简单

专业数据分析人员

对于熟悉数据分析专业知识人员,工具使用简单,操做便利

因为界面比较直观,对于专业数据分析人员比较简单,门槛低

因为界面灵活,配置也相对复杂,使用相对复杂,须要摸索

WEB操做界面比较简单直观,功能比较单一,用户入门门槛不高

WEB操做界面比较简单直观,功能比较单一,用户入门门槛不高

通常业务分析人员

界面描述均是专业术语,通常分析人员没法轻松使用,学习周期长

界面虽然比较直观,但还具备必定的专业性,须要专业指导

因为功能提供了较多专业的配置项,用户须要花费时间学习配置,学习周期比较长

界面虽然比较直观,但还具备必定的专业性,须要专业指导

界面虽然比较直观,但平台定位于计算引擎,通常业务分析人员须要专业指导

 

(四)主流大数据平台支持能力的比较


为了提高机器学习的效率以及数据分析的规模,当前主流的机器学习工具均提供了与大数据分析平台的集成,但在兼容性方面存在比较大的差别,具体比较以下:

比较项目

WEKA

RapidMiner

KNIME

明略

东软RealRec

大数据平台的兼容性

目前不提供与大数据平台的集成

支持主流的大数据平台Clouddera和Hortonworks以及MapR, CDH 4.x和5.x, HDP 1.x和2.x, MapR 4.1, Hadoop 1.x和2.x等

支持主流的大数据平台Clouddera和Hortonworks以及MapR,支持 CDH 5.x, HDP 2.1 和 2.2, MapR 4.1, Hadoop 2.4.0等

兼容性较差,主推本身的大数据平台,目前也支持其余的大数据平台,但须要验证。

支持大数据平台Clouddera,支持Spark 1.6,自行定制的Tachyon 0.8

与大数据平台集成难易度

目前不提供与大数据平台的集成

集成快捷,提供配置模板,对已有大数据环境无侵入

配置相对复杂,对已有大数据环境无侵入

须要在已有大数据环境安装相应软件套件,有侵入性

配置相对复杂,对已有大数据环境无侵入

 

(五)软件工具自身成熟度比较


本节主要从软件自身的稳定性、文档的完整性、用户群、社区生态系统以及开源协议支持等五个方面对WEKA、RapidMiner、KNIME以及明略DataInsight进行对比,综合评定各软件整体成熟度。

比较项目

WEKA

RapidMiner

KNIME

明略

东软RealRec

软件稳定性

将近二十年的发展和优化历史;功能稳定、扩展性强但

超过十五年的发展历史,功能稳定而且全面、扩展性强。目前正在研发纯WEB版的分析平台

超过十年发展历史,功能稳定全面、扩展性强,缺乏WEB版的分析平台

发展历史比较短,功能不够全面,产品还处于发展中,不够稳定

发展历史比较短,定位于底层支撑平台,产品还处于发展中

文档完备性

是缺少规范的文档列表

文档规范而且齐全

文档规范而且齐全

文档不够规范,用户应用不方便

文档规范,但不太齐全

用户群及应用领域分布

在高校和研究机构,有着普遍的用户群体,用户基数大。

产品有比较普遍的用户群体,成功应用于汽车、金融、保险等领域

国内用户群比较窄,用户群主要分布在生命科学、政府、金融等领域

目前用户群体基数小,用户主要分布在电商和金融行业

目前用户群体基数小,用户主要分布在客服和金融行业

社区生态系统

因为用户群基数大,社区发展比较成熟,文档和手册指南比较成熟,容易获取社区帮助

社区发展比较成熟,扩展多,能够获取不少免费的视频等学习资料,存在专业的论坛提供帮助和交流

社区规模比较丰富和规范,扩展多能够获取不少免费的视频等学习资料,也有专门的论坛提供交流和指导

因为是纯商业软件,目前没有造成成熟的社区,难以获取社区帮助,须要依赖厂商

因为是纯商业软件,须要依赖厂商

开源协议

GPL,协议灵活,代码彻底开放

单机版支持协议AGPL-3.0,协议灵活,代码彻底开放

单机版支持协议GPL-V3,协议灵活,代码彻底开放

商业软件

商业软件

总上,RapidMiner发展历史久,功能稳定完备,用户群分布广、社区生态成熟,所以产品成熟度也最高。


(六)工具使用成本比较


WEKA是彻底免费的开源软件,无须支付任何软件费用,使用成本低;RapidMiner和KNIME单机版彻底开源,无需支付费用,可是分布式模型训练和处理组件以及面向特定应用领域的扩展组件均是商业版本,须要收费,license主要按照用户数和使用期限收费,费用不菲;明略DataInsight和东软RealRec是纯商业软件,成本比较昂贵。

基于上述六个层面的比较分析,咱们能够看出RapidMiner在机器学习领域应是一个全面综合的软件工具,在算法和可视化效果方面都很突出,特别适用于不一样数据的多方面分析和研究,适用于数据和业务分析人员。WEKA适合小规模的机器学习能力,譬如科研探索和机器学习入门人员等。KNIME比较接近RapidMiner,但因为界面比较复杂,所以比较适合开发人员,尤为是具有Eclipse开发经验的人员。明略DataInsight具备较强的任务管理和模型管理能力,并提供角色管理,适用于工程领域的研发人员。东软RealRec算法很是全面,适合复杂场景的分析和训练,可是可视化建模能力弱,使用复杂,不建议通常业务人员使用。


4、总结


通过上述的对比和分析,咱们发现这几款工具具备相似的机器学习算法、可视化功能等,但从每个比较标准来看,各软件之间又存在着较大差异。综合上述的分析和比较结果,一款优秀的可视化机器学习工具应具有以下功能:

1.  首先,具有良好的可视化能力,包括可视化数据探索、可视化数据预处理、可视化建模、可视化验证、可视化评估、可视化结果展现等。

2.  操做界面简洁直观,对分析组件进行模块化,有效下降组件之间的数据格式的兼容性,让数据分析变得敏捷化。

3.  对经常使用的机器学习算法都提供了友好支持,不只具有算法支持的深度,还能够扩展支持同一种算法的不一样实现,以应对不一样分析领域。

4.  尽量面向更广的用户群,譬如可以覆盖通常业务分析人员、专业的数据分析人员或者技术开发人员,用户学习成本均比较低或仅需简单培训。

5.  具有完善的社区生态系统,提供软件工具使用过程当中所需帮助信息,此外,社区还可以提供特定领域分析的扩展或插件。

6.  可以和企业自身大数据分析环境无缝链接,对不一样大数据系统及版本均提供了友好的支持,易于部署和管理。

7.  工具训练的模型可以轻松的向生产环境迁移,且便于模型的运营和升级维护。

8.  最后,一款好的可视化机器学习工具还需在主流行业中获得相对普遍的应用,具备较大的用户群,经历过实践检验。


参考文献

[1] 杨振瑜,王效岳,白如江。国外主要可视化数据挖掘开源软件的比较分析研究。图书馆理论与实践,2013 第五期。

相关文章
相关标签/搜索