数据挖掘是一个反复探索的过程,只有将数据挖掘工具提供的技术和实施经验与企业的业务逻辑和需求紧密结合,并在实施过程中不断磨合,才能取得好的效果。下面简单介绍几种常用的数据挖掘建模工具。
Enterprise Miner(EM)是SAS推出的一个集成数据挖掘系统,它允许使用和比较不同的技术,同时还集成了复杂的数据库管理软件。使用时,首先在一个工作空间(Workspace)中按照一定的顺序添加各种可以实现不同功能的节点,然后对不同节点进行相应的设置,最后运行整个工作流程(Workflow),便可以得到相应的结果。
IBM SPSS Modeler原名Clementine,2009年被IBM收购后对产品的性能和功能进行了大幅改进和提升。它封装了最先进的统计学和数据挖掘技术来获得预测知识,并将相应的决策方案部署到现有的业务系统和业务过程中,从而提高企业的效益。IBM SPSS Modeler拥有直观的操作界面、自动化的数据准备能力和成熟的预测分析模型,结合商业技术可以快速建立预测性模型。
Microsoft SQL Server集成了数据挖掘组件Analysis Servers,使得用户可以充分利用SQL Server的数据库管理功能,实现数据挖掘与数据库的无缝集成。SQL Server 2008提供了决策树算法、聚类分析算法、朴素贝叶斯算法、关联规则算法、时序算法、神经网络算法、线性回归算法等常用的数据挖掘算法,但是它是基于SQL Server平台进行模型预测的,平台移植性相对较差。
Python是一种面向对象的解释型计算机程序设计语言,它拥有高效的高级数据结构,并且能够用简单又高效的方式进行面向对象编程。Python并不提供专门的数据挖掘环境,但它提供众多的扩展库,例如,它提供了3个十分经典的科学计算扩展库——NumPy、SciPy和Matplotlib,它们分别为Python提供了快速数组处理、数值运算以及绘图功能。scikit-learn库中包含很多分类器的实现以及聚类相关算法。正因为有了这些扩展库,Python才能成为数据挖掘的常用语言。
WEKA(Waikato Environment for Knowledge Analysis)是一款知名度较高的开源机器学习和数据挖掘软件。高级用户可以通过Java编程和命令行来调用其分析组件。同时,WEKA也为普通用户提供了图形化界面,称为WEKA Knowledge Flow Environ-ment和WEKA Explorer,可以实现预处理、分类、聚类、关联规则、文本挖掘、可视化等功能。
KNIME(Konstanz Information Miner)是基于Java开发的,可以扩展使用WEKA中的挖掘算法。KNIME采用类似数据流(Data Flow)的方式来建立挖掘流程。挖掘流程由一系列功能节点组成,每个节点有输入/输出端口,用于接收数据或模型、导出结果。
RapidMiner也叫YALE(Yet Another Learning Environment),提供了图形化界面,采用类似Windows资源管理器中的树状结构来组织分析组件,树上的每个节点表示不同的运算符(Operator)。YALE提供了大量的运算符,包括数据处理、变换、探索、建模、评估等各个环节。YALE是用Java开发的,且基于WEKA构建,可以调用WEKA中的各种分析组件。RapidMiner有拓展的套件Radoop,可以和Hadoop集成,在Hadoop集群上运行任务。
TipDM大数据挖掘建模平台是基于Java语言开发、用于数据挖掘建模的平台。它采用B/S结构,用户不需要下载客户端,通过浏览器即可进行访问。平台支持数据挖掘所需的主要流程:数据探索(相关性分析、主成分分析、周期性分析等),数据预处理(特征构造、记录选择、缺失值处理等),模型(聚类模型、分类模型、回归模型等)构建,模型评价(R-Squared、混淆矩阵、ROC曲线等)。用户可以在没有Python编程基础的情况下,通过拖曳的方式进行操作,将数据输入/输出、数据预处理、挖掘建模、模型评价等环节通过流程化的方式进行连接,以达到数据分析与数据挖掘的目的。