面向CRM的数据挖掘方法论,本文主要内容关键词为:方法论论文,数据挖掘论文,CRM论文,此文献不代表本站观点,内容供学术参考,文章仅供参考阅读下载。
本文介绍的数据挖掘方法是针对用户利用数据挖掘技术构建面向客户关系管理(CRM)的有效预测模型,为信息决策提供支持,进而构建企业的核心竞争力而准备的。这些方法伴随数据挖掘的互动循环过程,并且充分展示数据挖掘的商业特性,因而融合了商业和技术两个方面。以下就数据挖掘的互动循环过程展开讨论。
1 数据挖掘的互动循环过程
数据挖掘并非是生长在真空中的,而是有目的的活动。数据挖掘的互动过程如图1所示。在很多案例里,数据挖掘应用在企业中,解决各种各样的问题。数据挖掘普遍应用在市场营销,特别是客户关系管理。
图1 数据挖掘的互动过程促成学习机制
数据挖掘的互动过程是一种高层次的流程,它由四个重要的业务过程所构成:理解业务问题;将数据转换成可执行的结果;结果实施过程;评价结果的实施。
成功实现数据挖掘需要全部四个过程,这里没有捷径。每一步产生的结果不断向后传播,由数据不断产生信息。从数据中提炼信息,不断更新建模技术,根据以前努力的结果改进数据挖掘过程,如此往复生成新的有用的知识。总之,成功的数据挖掘是有组织地学习的典范。
1.1 正确识别业务问题 定义业务问题是成功数据挖掘过程中最有技巧的一个阶段,因为它需要不断地对问题进行交流,以得到问题正确的理解。技术人员在分析数据的时候必须考虑到企业的需求,这就要和了解企业业务问题的人员沟通。这些人通常称为行业专家,只有他们才完全了解哪些业务问题是需要处理的。另外在分析的最后阶段,也只有行业专家才有资格评判最后结果的优劣。所以在识别业务问题上,不仅要充分了解技术和数据,还必须具备与行业专家相处共事的能力。需要强调的是正确的识别业务问题是非常重要的。
1.2 数据转换成可操作的决策 数据挖掘的核心是将数据转换成可以操作的结果,这里概括介绍构建数据挖掘模型中最重要的步骤,要强调的是数据挖掘过程是一个互动往复的过程。图2展示的是将数据转化成可执行结果的基本步骤。
图2 建立数据挖掘模型是一个互动的过程
1.2.1 确认和获取数据。构造模型的第一步是确认和获得适合的数据。通常,所谓适合的数据是指可用分析的、逻辑清楚的,而且容易取得的数据。总之,数据量越多越好。首先要考虑的是数据要符合解决企业问题的需要。此外,建模的时候数据要尽可能完整。
1.2.2 生成有效数据、探索数据以及清洗数据。数据挖掘的第二步是生成有效数据和清洗数据。数据挖掘过程成功与否,完全取决于数据质量的好坏。也就是说在数据中是否存在下面的问题:字段是否充分?缺乏数据严重与否?字段值是否合法?字段值是否符合逻辑?单个字段的分布是否有说明?
1.2.3 将数据转换成适合的粒度的数据。粒度是指建模数据的级别大小。通常,数据挖掘算法作用于原始数据的每一行。所有关于一个客户的数据资料都应该放在同一行中,这些数据通常会根据粒度的大小来汇总。汇总数据需要一定的技巧。对于复杂的数据格式,还需要利用编程语言的强大功能来汇总数据。可以使用一些工具软件,比如SAS,SPSS,PERL等。
1.2.4 加入衍生变量。数据挖掘过程的第三步是加入衍生变量。衍生变量值是合并原始数据生成的结果。比如,所有交易数量和交易资金的总额;通话费用为零的月份总数;国际长途、普通长途和区域呼叫时段的分布比例等。衍生变量也可用来表示某一记录和其他相关记录的相关程度。比如,按人口计算的盈利,这个衍生变量计算可根据历史盈利资料中的人口年龄和性别,分别计算盈利;按交易数额的欺诈数额,这个衍生变量计算对有多欺诈记录的客户记录,按照交易数额分别计算;按电话机型号计算客户的流失率,这个衍生变量计算可根据最近的流失信息,计算每一种移动电话型号的流失率。这些衍生变量功能作用强大。但是光有这些导出变量是不够的,要想更好地预测结果,还需要结合历史信息以及其他类型的数据。
通过联机分析处理系统,就可以生成这类衍生变量。事实上,从衍生变量这一角度就可以看出,联机分析处理系统和数据挖掘在很多方面可以协同,有时也可从联机分析处理系统得到所需要的数据。这些时候可直接对历史生成的衍生变量进行计算,并将结果用于数据挖掘。
1.2.5 准备建模数据集。建模数据是用于建立数据挖掘模型的数据。我们将建模数据集分成三部分:训练数据集(training),测试数据集(test)以及评估数据集(evaluation)。只有部分数据参与最初的建模过程,其他的数据暂时闲置,用于精化模型和评估模型的预测效果。此外还应该对不同的细分数据建立不同的模型。比如,构建交叉配售模型时,开始建立一个模型,用来反映客户对每一种不同产品的购买倾向。在这个例子中,我们可以先对每一种产品构建一个独立的模型,当作此产品预测的实现准备。
1.2.6 选择建模技术和训练模型。现今的数据挖掘工作在建模过程中已经为用户提供了比较友好的操作界面,从一定程度上说实际建模的过程是数据挖掘过程中不太费事的一个阶段。如果时间允许,可以对同一个建模数据建立多个不同的模型。事先并不能预知最好的算法和最佳的参数集合,只有通过不断的实验才能输出最合适建模数据集的模型。
训练模型的要点是一个模型的好坏依赖于所选择的算法和使用的工具。一些工具可以生成许多不同的模型,而且可以自动从中选出最好的模型。而有些工具是交互式的,由用户来选出最好的模型。
1.2.7 检测模型的执行效率。数据挖掘的最后一步是用数据检验不同模型的执行效果,不同的数据挖掘技术,评测结果好与坏的方法也不尽相同。对比不同的模型产生的结果,必须用未知的数据去检验模型的执行效果。最后被用的数据集就是评估数据集(evaluation data)。而究竟哪个模型是最优的模型还要视业务问题的需求而定。
1.3 将结果生成决策 如果不将模型产生的结果赋之以行动,那么数据挖掘将毫无用武之地。可以赋以行动的结果有以下几种不同的表现方式:a.新的认知。在建模过程中,我们从数据中产生新的知识,这将使我们更深入地了解商业活动和我们的客户,这些新的知识还需要不断地沟通。b.用于特定商业活动的结果。生成的结果可能只针对某一特定的商业活动。c.可被储存的结果。结果中可能会生成一些有关客户感兴趣的信息,这些信息应该存储在数据仓库中,以便日后查询。d.周期性预测结果。这种模型可以用来对可户的购买行为进行周期性预测,从中选出最优的服务对象,并指定相应策略将这些客户留住。e.实时得分。模型构建的目的是为了将其嵌入到另外一个系统中以提供实时的预测。f.修复数据。有时通过数据挖掘可以发现数据中存在的问题,这些问题会大大影响模型的执行效果。这时唯一的办法是清洁数据,将数据变得更加完整,来达到预测的目的。
1.4 评测模型的有效性 前面我们已经提过用评估数据集来检验模型的执行效果,它的目的是用来评估模型。此外,还需要将模型输出的结果和真实世界发生的结果进行对比,来进一步评估模型,尤其在预测未来的行为时更应如此。
对于预测模型,实际出现结果可能会比预测要糟糕。这种偏差主要是因为建立模型时是建模数据集,而现在模型需要用于新的数据。建立模型时我们使用的是历史数据,应用模型时却使用的是当前数据。模型是从过去的行为发现的模式,随着时间的推移,过去的模式不再适用了。
2 成功建立预测模型的要点
对于预测模型来说,只有预言与结果相一致,才能说明预言是有效的,否则就谈不上预测的价值。然而要成功建立预测模型有以下几点需要特别的重视。
2.1 预测模型的时间范围 在开发预测模型时,要进行两方面的工作(如图3所示):a.用历史数据构建模型来进行预测,这个过程称成为训练模型;b.模型使用新的数据来生成结果,这个过程称为得分,它是用最新的数据预测未来的结果。
图3 预测模型在使用(生成得分)之前必须得到的训练(构建)
在开发模型的过程中,有两个时间范围值得注意。第一个时间范围是训练模型的时间间隔。在这段时间里,用过去的数据建模,生成的结果是已知的。有许多数据记录是用来训练模型的。第二个时间范围是模型产生得分的阶段。在这段时间里,输入的数据是已知的,而输出结果是未知的模型的作用派生出可能的结果。
一旦模型建立,它的执行效果只能通过过去的数据来评估,因为只有过去的数据是已知的。很有可能用过去的数据检测出好的结果,但是对将来预测却不理想。模型表面上看似良好,预测结果却经不起实践的考验。为了有效地使用预测模型,我们不仅要了解构建模型的过程,还需要了解什么时候它工作正常,什么时候会出问题。
2.2 模型的使用有效期 模型的时间范围提出了关于模型和模型预测的两个重要问题:a.什么是模型使用有效期?在建立模型时的环境,随着时间会发生改变,比如业务环境、技术手段以及客户基础都会发生变化,这时必须用最新的数据构建新的模型。b.什么是模型预测的有效期?模型预测值也会存在有效期问题,预测结果也是在特定的时间内才会有效。典型例子是预测某一个特定月份的商业行为(比如客户流失和购买行为),这时需要对不同的月份使用不同的预测。
3 建立预测模型的假设
建立预测模型的整个过程需要一些最基本的假设,这些假设会使建模的过程更加清晰。
3.1 假设1:过去是将来的预言家 应用预测模型的第一个假设是,过去可以成为将来的预言家。如果我们知道过去病人对某种药物的反映,可以断定将来类似病人服用同样的药物会有类似的反应。如果将要破产的客户有一些特殊的行为,那么类似的客户将来也会有类似的行为表现。如此等等。
需要注意的是,待解决的问题和客户的环境也要前后一致。这一假设听来似乎合理,但确实在有些情况下,过去不能作为预测未来的预言家,因为很难在数据中获取到例外事件的发生。而一些微妙的原因和外在因素也可能影响模型的构建。所以在建模过程中要有行业专家的参与。此外,纳入足够的正确数据,也是得到好的决策的关键。
3.2 假设2:数据是可以获得的 获得可用的数据,是成功建构预测模型的关键。这个假设说起来简单,但有时数据可能会因为某些原因无法获得。比如说,数据不可能是由操作系统搜集来的;或者数据在其他的部门中,拿到它们有困难;或者数据中有格式错误、关键字不匹配等等。
从原型数据仓库中采集到相对清洁完整的数据,在构建预测模型时,如不能满足对所有需要计算的客户的数据格式是一致的。这种情况下可采取较少的数据构建一个一般可用的,而未必是最有效的模型。可以对每一个客户计算得分就足够了。
3.3 假设3:数据中包括我们的预期目标 只有当每次预测的目标不变的情况下,预测模型才会保持在最佳的状态。但有时预测模型是很难应用的。比如,新的产品可能完全定位于一个新的客户群,所有现成客户的资料信息可能是完全没有用的。这时,可以通过从所有客户的随机抽样的方法,粗略地估计所需要的资料。
4 总结
数据挖掘的互动循环过程将数据挖掘定位于企业的需求,它包括下面几个阶段:a.正确识别业务问题。这个阶段要广泛听取行业专家的意见来确定关键业务问题,明确解决问题所需的数据;另一方面,行业专家的经验需要通过数据进行验证。b.将数据转换成可操作的决策。构建模型是一个循环往复的过程。c.将结果生成决策。数据挖掘的目的就是要将生成的决策付诸于行动。d.评测模型的有效性。最后一阶段,评测结果将给数据挖掘互动循环系统提出新的问题和新的数据,并指出数据挖掘的努力方向。
预测模型是数据挖掘中最普遍的应用,它的成功依赖于三个假设:a.过去是将来的预言家;b.假设数据是可获得的;c.假设数据中应包括我们的预期目标。成功的构建预测模型还需要考虑到模型的应用时限,应在模型和预测结果的有效期内将结果生成决策。
标签:数据挖掘论文; 大数据论文; 数据挖掘算法论文; 预测模型论文; 业务建模论文; 数据建模论文; 时间计算论文; 面向过程论文; crm论文;