业务建模与数据挖掘
A. 数据挖掘利用社会背景的主题建模演变
数据挖掘是利用业务知识从数据中发现和解释知识(或称为模式)的过程,这种知识是以自然或者人工形式创造的新知识。
第一,目标律:业务目标是所有数据解决方案的源头。
它定义了数据挖掘的主题:数据挖掘关注解决业务业问题和实现业务目标。数据挖掘主要不是一种技术,而是一个过程,业务目标是它的的核心。 没有业务目标,没有数据挖掘(不管这种表述是否清楚)。因此这个准则也可以说成:数据挖掘是业务过程。
第二,知识律:业务知识是数据挖掘过程每一步的核心。
这里定义了数据挖掘过程的一个关键特征。
第三,准备律:数据预处理比数据挖掘其他任何一个过程都重要。
这是数据挖掘著名的格言,数据挖掘项目中最费力的事是数据获取和预处理。非正式估计,其占用项目的时间为50%-80%。最简单的解释可以概括为“数据是困 难的”,经常采用自动化减轻这个“问题”的数据获取、数据清理、数据转换等数据预处理各部分的工作量。
第四,试验律(NFL律:No Free Lunch):对于数据挖掘者来说,天下没有免费的午餐,一个正确的模型只有通过试验(experiment)才能被发现。。
机器学习有一个原则:如果我们充分了解一个问题空间(problem space),我们可以选择或设计一个找到最优方案的最有效的算法。一个卓越算法的参数依赖于数据挖掘问题空间一组特定的属性集,这些属性可以通过分析发 现或者算法创建。但是,这种观点来自于一个错误的思想,在数据挖掘过程中数据挖掘者将问题公式化,然后利用算法找到解决方法。事实上,数据挖掘者将问题公 式化和寻找解决方法是同时进行的—–算法仅仅是帮助数据挖掘者的一个工具。
第五,模式律(大卫律):数据中总含有模式。
这条规律最早由David Watkins提出。 我们可能预料到一些数据挖掘项目会失败,因为解决业务问题的模式并不存在于数据中,但是这与数据挖掘者的实践经验并不相关。
B. 企业如何有效地进行数据挖掘和分析
经常听人提到数据分析,那么数据怎么去分析?简单来说,可能就是做一些数据做统计、可视化、文字结论等。但是相比来说,数据挖掘就相对来说比较低调一些,这是这种低调,反而意味着数据挖掘对研究人员的要求要更高一些。
数据分析人员需要理解业务的核心指标,通过数据分析工具(比如R/SAS/SQL,或者内部的数据平台)对业务数据进行建模和分析,为相关的业务指标提供基于数据的解决方案。所以,数据分析岗位要求具备扎实的统计学功底和对数据的敏感。数据挖掘人员需要研究数据,试验和选择合适的机器学习相关的算法模型对数据进行建模和分析,最后自己在实际系统中将算法模型进行高性能的工程实现。所以,数据挖掘岗位要求同时具备深厚的机器学习功底和扎实的编程能力。
数据分析与数据挖掘不是相互独立的。数据分析通常是直接从数据库取出已有信息,进行一些统计、
C. 什么是数据挖掘
数据挖掘是从大量的数据中,抽取出潜在的、有价值的知识(模型或规则)的过程。
1. 数据挖掘能做什么?
1)数据挖掘能做以下六种不同事情(分析方法):
· 分类 (Classification)
· 估值(Estimation)
· 预言(Prediction)
· 相关性分组或关联规则(Affinity grouping or association rules)
· 聚集(Clustering)
· 描述和可视化(Des cription and Visualization)
2)数据挖掘分类
以上六种数据挖掘的分析方法可以分为两类:直接数据挖掘;间接数据挖掘
· 直接数据挖掘
目标是利用可用的数据建立一个模型,这个模型对剩余的数据,对一个特定的变量(可以
理解成数据库中表的属性,即列)进行描述。
· 间接数据挖掘
目标中没有选出某一具体的变量,用模型进行描述;而是在所有的变量中建立起某种关系
· 分类、估值、预言属于直接数据挖掘;后三种属于间接数据挖掘
3)各种分析方法的简介
· 分类 (Classification)
首先从数据中选出已经分好类的训练集,在该训练集上运用数据挖掘分类的技术,建立分
类模型,对于没有分类的数据进行分类。
例子:
a. 信用卡申请者,分类为低、中、高风险
b. 分配客户到预先定义的客户分片
注意: 类的个数是确定的,预先定义好的
· 估值(Estimation)
估值与分类类似,不同之处在于,分类描述的是离散型变量的输出,而估值处理连续值的
输出;分类的类别是确定数目的,估值的量是不确定的。
例子:
a. 根据购买模式,估计一个家庭的孩子个数
b. 根据购买模式,估计一个家庭的收入
c. 估计real estate的价值
一般来说,估值可以作为分类的前一步工作。给定一些输入数据,通过估值,得到未知的
连续变量的值,然后,根据预先设定的阈值,进行分类。例如:银行对家庭贷款业务,运
用估值,给各个客户记分(Score 0~1)。然后,根据阈值,将贷款级别分类。
· 预言(Prediction)
通常,预言是通过分类或估值起作用的,也就是说,通过分类或估值得出模型,该模型用
于对未知变量的预言。从这种意义上说,预言其实没有必要分为一个单独的类。
预言其目的是对未来未知变量的预测,这种预测是需要时间来验证的,即必须经过一定时
间后,才知道预言准确性是多少。
· 相关性分组或关联规则(Affinity grouping or association rules)
决定哪些事情将一起发生。
例子:
a. 超市中客户在购买A的同时,经常会购买B,即A => B(关联规则)
b. 客户在购买A后,隔一段时间,会购买B (序列分析)
· 聚集(Clustering)
聚集是对记录分组,把相似的记录在一个聚集里。聚集和分类的区别是聚集不依赖于预先
定义好的类,不需要训练集。
例子:
a. 一些特定症状的聚集可能预示了一个特定的疾病
b. 租VCD类型不相似的客户聚集,可能暗示成员属于不同的亚文化群
聚集通常作为数据挖掘的第一步。例如,"哪一种类的促销对客户响应最好?",对于这一
类问题,首先对整个客户做聚集,将客户分组在各自的聚集里,然后对每个不同的聚集,
回答问题,可能效果更好。
· 描述和可视化(Des cription and Visualization)
是对数据挖掘结果的表示方式。
2.数据挖掘的商业背景
数据挖掘首先是需要商业环境中收集了大量的数据,然后要求挖掘的知识是有价值的。有
价值对商业而言,不外乎三种情况:降低开销;提高收入;增加股票价格。
1)数据挖掘作为研究工具 (Research)
2)数据挖掘提高过程控制(Process Improvement)
3)数据挖掘作为市场营销工具(Marketing)
4)数据挖掘作为客户关系管理CRM工具(Customer Relationship Management)
3.数据挖掘的技术背景
1)数据挖掘技术包括三个主要部分:算法和技术;数据;建模能力
2)数据挖掘和机器学习(Machine Learning)
· 机器学习是计算机科学和人工智能AI发展的产物
· 机器学习分为两种学习方式:自组织学习(如神经网络);从例子中归纳出规则(如决
策树)
· 数据挖掘由来
数据挖掘是八十年代,投资AI研究项目失败后,AI转入实际应用时提出的。它是一个新兴
的,面向商业应用的AI研究。选择数据挖掘这一术语,表明了与统计、精算、长期从事预
言模型的经济学家之间没有技术的重叠。
3)数据挖掘和统计
统计也开始支持数据挖掘。统计本包括预言算法(回归)、抽样、基于经验的设计等
4)数据挖掘和决策支持系统
· 数据仓库
· OLAP(联机分析处理)、Data Mart(数据集市)、多维数据库
· 决策支持工具融合
将数据仓库、OLAP,数据挖掘融合在一起,构成企业决策分析环境。
4. 数据挖掘的社会背景
数据挖掘与个人预言:数据挖掘号称能通过历史数据的分析,预测客户的行为,而事实上
,客户自己可能都不明确自己下一步要作什么。所以,数据挖掘的结果,没有人们想象中
神秘,它不可能是完全正确的。
客户的行为是与社会环境相关连的,所以数据挖掘本身也受社会背景的影响。比如说,在
美国对银行信用卡客户信用评级的模型运行得非常成功,但是,它可能不适合中国
D. 如何有效地进行数据挖掘和分析
经常听人提到数据分析,那么数据怎么去分析?简单来说,可能就是做一些数据做统计、可视化、文字结论等。但是相比来说,数据挖掘就相对来说比较低调一些,这是这种低调,反而意味着数据挖掘对研究人员的要求要更高一些。
数据分析人员需要理解业务的核心指标,通过数据分析工具(比如R/SAS/SQL,或者内部的数据平台)对业务数据进行建模和分析,为相关的业务指标提供基于数据的解决方案。所以,数据分析岗位要求具备扎实的统计学功底和对数据的敏感。数据挖掘人员需要研究数据,试验和选择合适的机器学习相关的算法模型对数据进行建模和分析,最后自己在实际系统中将算法模型进行高性能的工程实现。所以,数据挖掘岗位要求同时具备深厚的机器学习功底和扎实的编程能力。
数据分析与数据挖掘不是相互独立的。数据分析通常是直接从数据库取出已有信息,进行一些统计、可视化、文字结论等,最后可能生成一份研究报告性质的东西,以此来辅助决策。但很多情况下,这种分析往往不解渴。如果要分析这些已有信息背后隐藏的信息呢,而这些信息通过观察往往是看不到的,这时数据挖掘就冲在了数据分析的前面,作为分析之前要走的一个门槛。
除此之外,因为数据挖掘的输出往往含有的信息价值比较高,因此这些输出不仅仅应用在分析上,更多的是用在其他应用上,如网站后台、APP应用上,实实在在提供一些决策来丰富应用的功能。
数据挖掘不是简单的人为推测就可以的,它往往需要针对大量数据,进行大规模运算,才能得到一些统计学规律。但是前提是,必须针对某些具体的业务来。没有落实真正的场景和需求,没有落实需要的输入和输出,空谈数据挖掘,就是纯粹的耍流氓。举个简单的例子,房价预测,这里给出了一系列的点,我们要预测未来的一点。如果不知道业务,也就是相当我们不知道这些点的由来,那么完全可以理解为这些点可能是地球轨迹中的一部分,或者其他,这样的话,会做出不一样的结论。
其实在数据分析上,往往也需要研究人员了解业务。在数据分析与数据挖掘领域,要想做好,那就先去获取数据、学好业务,再说其他吧。