3 实例
在某银行电子商务系统的客户关系管理子系统中,我们使用数据挖掘技术对客户进行分类分析。下面按照数据挖掘技术在CRM中的实施过程分步叙述客户关系管理系统的数据挖掘工具的设计与实现。
3.1 确定业务对象
某银行在近期推出一项新的业务,通过在几个网点进行为期一个月的试运营,在该银行电子商务系统的客户关系管理子系统中存储了大量客户的资料,选取其中一个网点的客户数据资料作为样本,通过对这些数据的分析,可以发现办理该业务客户的一些特点。通过对这些特点的归纳,可以将企业潜在的客户划分为不同的种类,对完全符合特点的客户进行重点宣传促销,对于完全不符合的客户则可以只进行普通的宣传,这样既可以提高业务的办理量,又可以有效地降低宣传成本。
3.2 进行数据准备
由于银行的业务流程相对比较规范,因此在本例中数据的收集和预处理工作相对比较简单,从客户数据库中选取符合完整性、规范性、真实性和代表性的数据即可。由前文的介绍可知,分类和聚类都可以用来进行客户的分类。分类和聚类的区别在于聚类不需要已标定的样本,而分类需要,并可以获得更加准确可靠的结果。鉴于可以得到充足的样本客户数据用作训练样本,我们选择分类方法中的决策树方法。决策树算法的执行结果是得到一棵决策树,它表明哪些因素会影响客户办理该项业务。决策树方法的最大优点在于它的可理解性和直观性。
目前比较成熟的决策树构建方法有ID3,CA.5,C5.0系列,CART,SLIQ,SPRINT和CHAID等。其中CART算法可以同时处理连续变量和分类变量,它通过构造一个准确的分类模型用来预测、研究引起分类现象发生的变量及变量之间的作用。相对于其它算法,它对于输入的数据没有任何统计分布的假设要求,能够清楚地指出变量对于分类的重要性,并且运行速度较快、准确性高、容易理解,因此更适用于从大量数据中快速提取特征并及时分析,更加适用于分析处理银行的海量数据,所以这里我们采用CART算法。其基本原理是通过对由测试变量和目标变量构成的训练数据集的循环分析,而形成二叉树形式的决策树结构。CART采用经济学中的基尼系数(G)作为选择测试变量和分割阈值的准则。基尼系数的定义如下:

式中,p(j|h)是从训练样本集中随机抽取一个样本,当某个测试变量值为h时属于第,类的概率,nj(h)为训练样本中该测试变量值为h时属于第j类的样本个数,n(h)为训练样本中该测试变量值为h的样本个数j为类别个数。
但按照上述过程生成的完整决策树往往会出现“过度拟合”的现象,因此有必要对树的结构进行修剪。CART算法采用交叉验证的方法进行修剪,将样本数据分为训练数据和检验数据两部分,通常分为十等分,每次以其中的九份作为训练数据,一份作为检验数据,如此循环交替进行验证。验证过程中引入一个“可调错误率”的概念,即对某个树枝的所有叶节点增加一个惩罚因子,如果该树枝仍然能够保持低错误率,则说明它是强者,予以保留;否则它是弱者,给予剪除。最终的分析结果是一棵兼顾复杂度和错误率的最优二叉树,一系列二分点定义的每条途径都对应了一个最可能归属类别的判断条件。因此,这棵树可以看作一系列可以用来对未知值进行分类的规则。整个算法的运用过程见图1。

▲图1 CART算法过程步骤