数据挖掘的理论基础

应该如何完整地理解“数据挖掘”?“数据挖掘”的理论基础是什么?

现实中人类的社会和经济活动,总可以用数据(数字或者符号)来描述和记录;经过对这些数据的分析,就会产生信息(知识);用这些信息(知识)来指导实践,就可以做出相应的决策;这些决策又引发了新一轮的社会和经济活动。循环往复,生息不止。

那么数据仓库(DW)、商务智能(BI)和知识发现(KDD)又分别是什么呢?

第一是因为上述概念诞生初始,在DM的价值链上还是有所侧重的,数据仓库重在“建仓”,数据挖掘和知识发现重在“加工”,商务智能重在“应用”。虚线表示曾经拥有。

第二,如果不这样画,理论界、应用厂商会不答应,因为不管原来是做数据库的(IBM,Sybase,NCR,Oracle,Microsoft,etc),还是做统计分析软件的(SAS,Statistica,SPSS,etc),甚至是做报表工具的(BO,Brio,Cognos,etc),都拼命在延伸自己的价值链。

所以,干脆叫数据管理(也就是DM)好了,一统天下。

至于ERP,CRM等,说白了,还是个DM,只不过限制在了具体的社会经济活动上罢了。

六种挖掘武器

数据仓库的建设和数据挖掘建模是DM价值链上的两大技术要点。数据挖掘从狭义的角度讲,只管从数据到知识这一段。作为一个数据挖掘人员的起码要求,就是充分掌握各种挖掘工具的性能、局限、应用条件等。

一般说来,数据挖掘有如下六件武器:描述统计、关联和相关、分类和聚类、预测、优化、结构方程模型。简要说明如下:

(1)描述统计(Deive statistics)

描述统计是数据挖掘的入门兵器,直观、简单,高手常常用来摘叶飞花。描述统计包括平均数、中位数、众数、分位数、百分比、求和等。描述统计经常和统计图(如直方图,条形图,线图,散点图,茎叶图等)配合使用。目前应用最为广泛的OLAP,究其本质就是针对不同的数据群在做描述统计。

描述统计的应用十分广泛:比如当月公司利润总额,比较不同区域的销售量等等。

(2)关联和相关(Association and Correlation)

关联规则从本质上讲是条件概率:A发生时,B同时也出现的概率是多大?只要B离50%较远,就是有意义的。

关联规则的一个典型的现代应用是“啤酒加尿布”。在应用关联规则时还需要多考虑的一个问题是:这条规则遵循者的数量怎样?通俗的说就是,如果超市的尿布只有一个人买(假设),但是这人每次买尿布时,一定会买啤酒。尽管这条规则很可信(100%),但是意义却不大。

在应用关联规则时,要注意两点:关联不一定是因果,关联是有方向的。

相关也是考虑两个事物之间的关系,典型的度量方法有Pearson相关系数和Kendall相关系数。

(3)分类和聚类

分类和聚类是最常用的技术。

一般说来,分类的方法有三种:回归、决策树、神经网络。

聚类和分类的最大区别就是,分类是有监督的,聚类是无监督的。什么叫监督呢?就是标准,或者说有目标变量。聚类是没有目标的。“物以类聚,人以群分”。聚类是不知道每一类有什么特征的,聚后再总结,再发现共同点。

(4)预测

预测的常用方法是时间序列,回归也可以用来预测。

时间序列常用的方法有:ARMA,指数平滑和趋势外推等。时间序列的最大特点就是充分挖掘事物本身随时间的规律。因为,任何事物,比如企业销售额,在没有特别的外在因素影响下,总是有规可循的。

(5)优化

优化本是运筹学中的一个概念,主要解决的一个问题是在各种约束条件下,如何合理配置资源,使目标要素最大(小)化。

(6)结构方程模型

不同于以上应用,结构方程模型重点在于如何揭示事物内部的结构和相互作用的原理。比如,如何度量客户满意度?客户满意度与客户期望,产品,价格,服务,投诉处理和客户忠诚是什么关系?是怎么作用的?只有搞清楚了这些关系,才可能不断提高客户满意度和客户忠诚度。结构方程模型就起到这种作用。

数据如何完整呈现?

从应用的角度来说,DM不单是数据的组织或者呈现,也不仅是数据分析和统计建模,而是一个从理解业务需求、寻求解决方案到接受实践检验的完整的过程(Process)。

业界有许多指导项目实践的方法论,大同小异,以CRISP-DM为例。

CRISP-DM分成如下六个阶段:商业理解(Business Understanding),数据理解(Data Understanding),数据准备(Data Preparation),建模(Modeling),评估(Evaluation)和发布(Deployment)。

打个比方,譬如炒菜待客,商业理解就是了解顾客的口味;数据理解则是熟悉每一样原料可以炒什么菜;数据准备则是根据顾客的口味和厨师的经验,配菜,择菜和洗菜;而建模就全靠大厨炒菜的水平;到了评估阶段就是顾客品尝;如果满意则到了最后的阶段,作为招牌菜发布推广。DM的过程就是客户空腹而来,满意而归的完整的服务过程。

一个成功的DM项目,不仅可以面向操作层面,加强自动化;还可以面向决策层,优化决策。

实施计划细部署

根据NCR数据挖掘方法论,NCR将数据挖掘项目的实施划分为五个阶段,包括定义业务问题范围、选取和抽样、探索型数据分析、建模和实施。

1.定义业务问题范围:在这个初始阶段,需明确阐述项目目标和客户业务需求,目的是明确数据挖掘问题。任务包括:明确业务目标;定义响应变量;项目计划必要的调整。

2.选取和抽样:在这个阶段,建模小组要搜寻并检查客户数据,作为以后分析挖掘时所用变量的简略一览表。同时从数据总体中抽样生成训练集、验证集和测试集。任务包括:数据来源、数据映射、准备数据评估、数据的必要聚合、数据抽样。

3.探索型数据分析(数据探索):在这个阶段中,建模小组核查目前的数据源,并且努力去发现在每个待选的自变量和目标变量之间是否有任何关系。通常,数值分析是全面理解数据的第一步,跟着进行的统计分析是为了得到有关数据分布的更好知识。在数据挖掘过程中这是一个关键的阶段。

任务包括:数据质量检查;数据的必要整理;通过图形化呈现工具和其他的统计方法理解数据;分析待选自变量和目标变量之间的关系;数据转换以辅助数据的分析;数据派生为建立模型做准备;整理和呈现数据探索的发现。

4.建模:在这个阶段,建模小组建立并确认挖掘模型。建模小组通常尝试不同的建模技术或结合不同数据集,并衡量模型性能的不同,选出最好的。来自最终用户的业务领域知识在这个阶段是非常关键的,因为他们可以评价和确认模型的结果、理解发现并付诸实际行动。

任务包括:为模型的训练和验证准备数据集;在模型的建立中使用适当的建模技术;针对不同的建模技术测试模型性能;必要地精炼挖掘模型;和主题专家一起检验挖掘模型;记录挖掘模型和结果。

5.实施:在这个阶段,需要用模型的结果来帮助做出业务决定、战略设计和战术实施。收集实施结果反馈,为模型的退化进行侦测,更进一步改善模型性能。在利用模型的结果时,复杂的展示层界面通常是不必要的。数据挖掘过程的自动化是CRM(客户关系管理)的解决方案中不可或缺的一部分,因此是与典型的数据挖掘分开实施的项目。

任务包括:客户模型评分和存储模型结果,性能跟踪和进一步整合其它业务系统;数据挖掘过程的自动化是单独的项目;模型结果的现场测试是单独的项目。

数据挖掘项目的项目计划会涵盖以上的各个阶段,但完成整个项目所需的时间则要根据多个关键因素而定,如挖掘专题的复杂程度、客户对挖掘结果性能评定的期望、可用的数据完备性及数据质量、项目人力资源是否充足以及人员能力等等。如表1是为期二个月(40个工作日)的数据挖掘项目计划,可以作为其他挖掘项目制定计划的参考基准。

从表1的项目计划可以看出,数据挖掘项目需要参与的成员或角色有:数据挖掘专家、PDM(产品数据管理)建模人员、ETL开发人员和应用开发人员。同时需要熟悉业务的人员以及熟悉数据仓库PDM的人员予以支持。

本文转自BlogJava 新浪blog的博客,原文链接:数据挖掘的理论基础,如需转载请自行联系原博主。

你可能感兴趣的:(数据挖掘的理论基础)