数据挖掘工具初探之SPSS Clementine篇

 数据挖掘工具初探之SPSS Clementine

摘要: 近年来,数据挖掘技术越来越多的投入工程统计和商业运筹,国外各大数据开发公司陆续推出了一些先进的挖掘工具,其中spss公司的Clementine软件以其简单的操作,强大的算法库和完善的操作流程成为了市场占有率最高的通用数据挖掘软件。本文通过对其界面、算法、操作流程的介绍,具体实例解析以及与同类软件的比较测评来解析该数据挖掘软件。

Abstract In recent years, more and more data mining technology input the engineering statistics and business operations research, major foreign company rolled out a number of advanced mining tools, including the software Clementine of SPSS has the largest market share of the general-purpose data mining software for its simple operation, powerful algorithms library and completeness operation processes. In this paper, I will introduce its interfaces, algorithms, operation processes, specific examples of analysis and comparison with the similar software to resolve this data mining software.

Key words:数据挖掘  数据挖掘工具  Clementine

                                                     

1.      前言

 

1.1   关于数据挖掘

数据挖掘有很多种定义与解释,例如“识别出巨量数据中有效的、新颖的、潜在有

用的、最终可理解的模式的非平凡过程 1。” 大体上看,数据挖掘可以视为机器学习和数据库的交叉,它主要利用机器学习界提供的技术来分析海量数据,利用数据库界提供的技术来管理海量数据。2

     在我看来,数据挖掘的意义却不限于此,尽管数据挖掘技术的诞生源于对数据库管理的优化和改进,但时至今日数据挖掘技术已成为了一门独立学科,过多的依赖数据库存储信息,以数据库已有数据为研究主体,尝试寻找算法挖掘其中的数据关系严重影响了数据挖掘技术的发展和创新。尽管有了数据仓库的存在可以分析整理出已有数据中的敏感数据为数据挖掘所用,但数据挖掘技术却仍然没有完全舒展开拳脚,释放出其巨大的能量,可怜的数据适用率(即可用于数据挖掘的数据占数据库总数据的比率)导致了数据挖掘预测准确率与实用性的下降。所以,我心中的数据挖掘技术的未来(一种幼稚的想法)是以挖掘算法为主体,专门搜集和记录满足算法需求的数据构建特有的数据库为其服务,这是一个从面向过程到面向对象的转变。

 

    1.2 数据挖掘工具的重要性

如果通过传统的编程实现数据挖掘,不但费时费力,其性能也无法做到完整和稳定。而数据挖掘商业工具的诞生,不但创造出了又一个巨大的市场,而且随着各公司产品功能的补充完善和使用简易性的提高,更多的没有计算机专业知识背景的人也可以享受数据挖掘的强大分析能力和预测能力。

直接采用商业数据挖掘工具来帮助项目实施,也是一个很好的选择。它既节省了大量的开发费用,又可以节约维护和升级的开销3,所以了解和掌握主流数据挖掘工具的适用范围、使用方法和特色创新便显得尤为重要。本文正是基于此原因对目前使用率最高的数据挖掘工具SPSS Clementine进行初步的探索和测评。

 

 

2.      Clementine简介

 

2.1  Clementine的背景知识

   Clmentine 翻译成中文是克莱门氏小柑橘,它是ISL(Integral Solutions Limited)公司开发的数据挖掘工具平台。1999SPSS公司收购了ISL公司,对Clementine产品进行重新整合和开发,现在Clementine已经成为SPSS公司的又一亮点。在Gartner的客户数据挖掘工具评估中,仅有两家厂商被列为领导者:SASSPSSSAS获得了最高ability to execute评分,代表着SAS在市场执行、推广、认知方面有最佳表现;而SPSS获得了最高的completeness of vision,表明SPSS在视觉界面和技术创新方面遥遥领先。

 

  作为一款将高级建模技术与易用性相结合的数据挖掘工具,Clementine 可帮助您发现并预测数据中有趣且有价值的关系。可以将 Clementine 用于决策支持活动,如:

n  „ 创建客户档案并确定客户生命周期价值。

n  „ 发现和预测组织内的欺诈行为。

n  „ 确定和预测网站数据中有价值的序列。

n  „ 预测未来的销售和增长趋势。

n  „ 勾勒直接邮递回应和信用风险。

n  „ 进行客户流失预测、分类和细分。

n  „ 自动处理大批量数据并发现其中的有用模式。

这些只是使用 Clementine 从数据中提取有价值信息的众多方式的一部分。只要有数

据,且数据中正好包含所需信息,Clementine 基本上都能帮您找到问题的答案。3

 

2.2 Clementine界面

    2.2.1 主界面

   在安装好后会自动启用服务,一般的数据挖掘人员通过客户端完成所有工作下面,就是clementine客户端的界面: 


 

    2.2.2 各分区介绍

    流工作区 流工作区是 Clementine 窗口的最大区域,也是构建和操纵数据流的场所。

Clementine 中,可以在同一流工作区或通过打开新的流工作区一次处理多个流。会

话期间,流存储在 Clementine 窗口右上角的“流”管理器中。


    选项板 选项板位于 Clementine 窗口的底部。每个选项板均包含可添加到数据流的

一个相关节点组。例如,“数据源”选项板包含可用来将数据读入到模型中的的节

点;“图形”选项板包含可用来可视化探索数据的节点。“收藏夹”选项板包含数

据挖掘人员频繁使用的节点的默认列表。随着对 Clementine 的熟悉,还可以自定

义供自己使用的内容。


    管理器 Clementine 窗口右上角有三种类型的管理器。每个选项卡(流、输出和模

型)均用于查看和管理相应类型的对象。可以使用“流”选项卡打开、重命名、保存

和删除在会话中创建的流。Clementine 输出(如图形和表)存储在“输出”选项卡

上。可直接从该管理保存输出对象。“模型”选项卡是这几个管理器选项卡中功能最

强大的,它包含在 Clementine 中进行的机器学习和建模的结果。这些模型可以直接

从“模型”选项卡上浏览或将其添加到工作区的流中。


    工程 工程窗口位于 Clementine 窗口右下角,它为组织 Clementine 中的数据挖掘

工作提供了一个有效途径。


    报告窗口 位于选项板下方,报告窗口提供各种操作的进度反馈,例如数据读入数据流中的时间。

状态窗口 也位于选项板下方,状态窗口提供有关应用程序当前正在执行何种操作的信息以及需要用户反馈时的指示信息。

 

2.3  spss数据挖掘技术

    2.3.1 预测技术4 实现方法:1. Neural Networks  2.Rule Induction  3. Linear & Logistic  Regression  4 . Sequence Detection

    2.3.2 聚类技术 4实现方法: 1.Kohonen网络 2 K-means聚类 3 TWO-step聚类

    2.3.3 关联技术 4实现方法: 1. APRIORI  2 GRI  3 CARMA

    2.3.4 实现模型

Technique

Method

Types

Classification

Rule Induction Classification and Regression Trees

Prediction

Neural Networks Regression

Linear & Logistic Regression

Segmentation

Kohonen Networks K-Means Clustering

Two-Step Clustering

Association

APRIORI GRI CARMA

Sequence

Capri Rule Induction

 

   2.3.5 实现流程(CRISP-DM过程5)

      CRISP-DM 模型为一个KDD工程提供了一个完整的过程描述.该模型将一个KDD工程分为6个不同的,但顺序并非完全不变的阶段.

     1: business understanding: 即商业理解. 在第一个阶段我们必须从商业的角度上面了解项目的要求和最终目的是什么. 并将这些目的与数据挖掘的定义以及结果结合起来.

     2.data understanding: 数据的理解以及收集,对可用的数据进行评估.

     3: data preperation: 数据的准备,对可用的原始数据进行一系列的组织以及清洗,使之达到建模需求.

     4:modeling: 即应用数据挖掘工具建立模型.

     5:evaluation: 对建立的模型进行评估,重点具体考虑得出的结果是否符合第一步的商业目的.

  6: deployment: 部署,即将其发现的结果以及过程组织成为可读文本形式.(数据挖掘报告)

 

2.4 Clmentine特色介绍(自己摸索,非完整版)

 

   1.通过单一节点即可完成部署,将数据流所进行的数据挖掘工作打包成套件输出

   2.可隐藏其建立模型的方法与流程,避免知识外流

   3.可提供API供其他外部程序语言调用,,c++,c#,Java,VB

   4.具有SSL加密与密码控制功能

 

 

3.      Clementine与其它工具的比较

选择IBM Intelligent MinerSAS Enterprise Miner 作为比较对象,因为在Gartner客户数据挖掘工具评估中,这三款软件均有不俗的表现,下面就它们各个方面的数据和特点进行比较:

 

3.1   基本信息比较6

产品提供商  ClementineIntegral Solutions ltd.

            Intelligent MinerIBM

            SASSAS Institute Inc.

方法论      ClementineCRISP-DM

            Intelligent Miner:没有提出什么特别的方法论

            SASSEMMA方法论

商业理解    Clementine1)有丰富的客户经验,解决了广泛的商业问题,并提供了一

            系列应用。 2)关键优势是可以让操作者把商业经验结合到数据挖掘工作                                                                              

            的每一步骤。可通过可视化工作流范例轻松实现数据挖掘。                                                   

            Intelligent MinerIBM认为数据挖掘对于大多数客户是非常复杂的过程,     

            因此他们把软件作为一个大服务合同的一部分销售,经常在整个合同中加    

            上一部分项目操作费用

            SAS:公司具 SAS有多年丰富的电信行业系统解决 BI方案

用户界面    Clementine:通过连接节点的表示形式,模型在可视编程环境中被确定

            Intelligent Miner:通过使用复杂的数据可视化技术增强可用性

            SAS:每个步骤均有可视化界面

竞争能力    ClementineSPSS的核心竞争能力是通过各种分析技术来解决商业问题

            Intelligent Miner:具有强大的并行计算能力。IBM的主要市场是能够支付

            大量的金钱并需要保证大规模数据挖掘结果的组织

            SASSAS为国际标准数理统计分析软件,数据挖掘工具统计分析功能                   

            强大

    成本       Clementine1SPSS 定位于任何人 只要得到正确的产品和培训就可以自  

            由操作数据挖掘。通过很短时间的培训,可以让用户自由掌握数据挖掘的   

            过程和各种操作。  2)低成本的维护和模型升级支出。没有额外的费用  

            支出。3Clementine 关注节省时间的解决方案过程

            Intelligent Miner1 针对拥有重要资源来投入销售和市场营销的大型组

            织,IBM经常提供软件来获得咨询收入。2)有时甚至会提供免费的软件

            和咨询来提高硬件销售收入

            SAS1)昂贵,采用租赁方式。 2)操作复杂要求是高级统计分析专业

            人员,结果难以理解

    数据准备   ClementineClementine Server设置了全部的数据挖掘过程,包括大量的

            数据准备功能,不需要通过查询来处理 SQL数据

            Intelligent Miner1)没有数据准备或数据管理能力。此功能让DB2的有

            限数据管理功能来实现,当客户要对数据进行处理,但是没有DB2 则需要

            购买并转向 DB22 DB2的数据管理功能 不是专门为分析而设计的

               SAS:设置了全部的数据挖掘过程,包括数据准备

    模型与算法 Clementine1)以可视化工作流的 方式在分析能力上提供了巨大的收获。

               2 提供各种现在提到的技术,更重要的是,可以让用户非常容易地结合 

               模型将结果做为数据集的一部分直接应用。  3)包含CEMI技术可能使用

               户插入第三方的算法

               Intelligent Miner:几乎没有统计方法,限制了数据挖掘的能力,特别在模   

               型验证方面

               SAS:提供几乎所有的成熟数据挖掘方法,可以将其具有强大功能的SAS/

               STAT SAS/ETS等模块提供的统计分析模型和时间序列分析模型也嵌入其

              

     评估      Clementine1)使用户能尝试许多模型或者将模型混合应用来得到一致的         

               高质量结果。 2)通过证明,Clementine在模型正确性方面比竞争对手做

               得更好。3)因为预测值和置信度被写回数据集,结果非常容易理解。一些

               图形展示技巧如PLOT图和马赛克图通常被用来验证模型

               Intelligent Miner:提供了大量具体定义每个数据挖掘技术的高级参数,例

               如:最小支持度和置信度因素(关联和顺序模式)、期望的准确率(神经元

               网络)以及簇的最大和期望的数量(聚类)

               SASSAS/EM 评价工具,提供了一个通用的数据挖掘评价的架构,可以

               比较不同的模型效果和预报各种不同类型分析工具的结果

     模型发布  ClementineClementine Solution Publishe使分析人员能够输出全部的数据

               挖掘过程。发布模型和升级模型既容易也经济。 Clementine也可将模型

               输出到CSQL语言,通过编程来实现应用

               Intelligent Miner:具有大量能被用来开发用户数据挖掘应用程序的编程接

               口;所有的数据挖掘引擎和数据操纵函数能通过共享C++ 库被访问

               SAS: 采用独有的SCL语言,后台采用 Data步、Proc 步方式 开发,编制                                                                                                        

               分析程序包发布

 

3.2 三种工具的量化比较7

3.2.1 数据存取


3.2.2 数据处理


3.2.3 模型算法


3.2.4 自动建模


3.2.5 可视化技术

3.2.6 其他


3.2.7 总分


 

 

4.      Clementine实例解析

 

4.1 定义数据源

选择经自己简单修改的使用度很高的weather.csv数据集6作为实例数据源,该数据机有以下几个属性值:

Outlook 景色景致 取值范围:{overcast   sunny  rainy}

Temperature 温度气温 取值范围:[64,85]

humidity 湿度 取值范围:[65,96]

Windy 是否有风 取值范围:[true,false]

Play 是否打羽毛球 取值范围:[yes,no]

下图即为该数据库表示:


4.2 理解数据源

通过属性值名称我们可以大致猜想到这个数据集是有关于适宜于进行户外羽毛球运动的天气情况的统计,所以需要通过决策树构建分类关系,拟采用C5算法模板训练出最优决策树。

4.3准备数据

新建流文件,将可变文件拖入流工作区,如图:

 

双击图标,将weather.csv导入数据源:


定义数据类型,选择play作为输出,其他属性均为天气情况,故均为输入:


4.4 建模

将项目板中的C5模板拖入流工作区,从数据源图标拖出箭头指向C5图标:

   

点击流工作区上方菜单栏中的run执行,并会在管理器的模型中显示建立了一个新的模型,这就是我们通过模板训练出的模型:


4.5模型评估

将模型拖入流工作区,并连接chart模块输出表与预测表:


表与预测表的比较:


双击模型图标可查看各种统计信息,如树状图、训练概要、构建设置、置信度和支持度等:

 

          

结果分析报告      

输出字段 play 的结果

 总结果

           比较 $C-play play

                    正确            13   92.86%

                    错误             1    7.14%

                    总计            14        

 

                    $CC-play 的置信度值报告

                             范围                          0.75 - 0.818

                             平均正确性                              0.803

                             平均不正确性                             0.818

                             始终正确的置信度高于               0.818 (观测值的 0%

                             始终错误的置信度低于                0.75 (观测值的 0%

                             92.86% 以上的准确性                        0.0

2.0   以上的折叠正确性                    从未达到需求等级

4.6部署模型

Export组件都可以使用Publish发布数据流,这里会产生两个文件,一个是pim文件,一个是par文件。pim文件保存流的所有信息,par文件保存参数。有了这两个文件就可以使用clemrun.exe来执行流,clemrun.exeClementine Solution Publisher的执行程序。Clementine Solution Publisher是需要单独授权的8

 

 

5  Clementine之我观

 

  在对clementine有了一段时间的接触和了解并与其它数据挖掘软件做了对比之后,我深深的体会到了它的严谨和实用。不管是用户界面的易操作性还是支持平台的通用性,它都是从终端用户角度出发,尽量做到让任何人在极短的时间内在普通的机器上学习掌握这一强大的数据挖掘工具完成相应工作;还有它CRISP-DM方法论的科学严谨、模型发布的安全简捷、建模技术与算法的完备易行更支持用户插入第三方算法,无不体现出Clementine作为数据挖掘市场占有率最高的领先者的强大,这种强大不知体现在技术方面,更多是其人性化的设计和创新。没有最好只有更好,如果我有幸成为Clementine开发者中的一员,我会从一下几个方面对其进行改进:

1.       构建一个功能强大的向导系统,在用户点击进入Clementine之后,即开始服务,这样用户就无需寻找其他说明文档即可熟练操作。

2.       将各种模型的提升图,ROC图等在一个页面显示,Clementine中各种模型的提升图,ROC图都是分别显示的,各自为政,这样很不利于选出更好的模型和保证模型的质量。

3.       做出更多的图形高级显示,如SAS中的3D旋转图、等高线图等。

4.       支持更多的文件格式,如arffEXCEL等。

5.       在帮助文档中加入更多关于算法的介绍,现有的帮助文档只涉及到软件使用上。

References:

[1] U. Fayyad, G. Piatetsky-Shapiro, R. Smyth.  Knowledge discovery and data mining: Towards aunifying framework. In: Proc. KDD’96, Portland, OR, 82-88.

[2] . 机器学习与数据挖掘.  http://cs.nju.edu.cn.  南京大学计算机软件新技术国家重点实验室,南京

[3] Clementine®11.1 ClementineUsersGuide

[4] C. R. Thulasi Kumar C. R. Thulasi Kumar, SPSS Clementine for Data Mining  SPSS Clementine for Data Mining in Institutional Research in Institutional Research, University of Northern Iowa University of Northern Iowa, November 10 November 10- -12, 2004

[4] http://www.spss.com

[5] http://www.crisp-dm.org

[6] 张雪英. 国外先进数据挖掘工具的比较分析. 计 算 机 工 程. 2003,29 卷第16.

[6] Berson A .  奇译. 构建面向CRM 的数据挖掘应用.  北京:人民邮电出版社,200108

[6] Elder J F, Abbott D W.A Comparison of Leading Data Mining Tools .     KDD-98

[6] http://www.datamininglab.com

[7] http://www.dwway.com

[8]Clementine®11.1 ClementineScriptingAutomationCEMI

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章