一、引言 随着2002年中国电信系统的分拆,中国电信行业一家垄断、一统天下的局面被打破,电信行业进入战国纷争时代,呈现出激烈的竞争态势。
相对于其他产业来说,电信行业是一个典型的前期固定投资巨大且在一定范围内投资资金多少不受用户量影响的行业。因此,电信运营商拥有的客户越多,作为主要成本的前期投资就会摊得越薄,企业的利润就越大。客户资源对电信运营商来说其意义不言而喻,电信运营商之间的竞争实际上就是对客户资源的竞争。可以说,未来的电信行业,得客户者得天下。
数据挖掘在电信领域有着广泛的应用:计费分析、客户细分、电话欺诈、客户流失预警分析等等。客户流失预警分析是通过数据挖掘,发现和分析出客户的许多属性特征和行为特征,从而找到流失客户的特征,为企业挽留这类客户提供决策参考。
本文主要通过决策树算法中的ID3算法来实现客户流失的预警分析,找出了客户流失的特征,可帮助电信公司有针对性地改善客户关系,避免客户流失。 二、 数据挖掘和决策树 数据挖掘是从大量的、不完全的、有噪声的、模糊的、随机的数据中提取隐含在其中的、人们事先不知道的、但又是潜在有用的信息和知识的过程;数据挖掘分析方法大致包括关联规则、分类、聚类、序列模式等。关联规则的目的是希望在事务数据库中发现经常共同出现的项目,推断隐藏在项目之间的相互关联的规则。分类是按照一组数据对象的特征给出其划分的过程,要求有已知分类的样本数据作为训练集,经过对训练集的学习得到关于分类的规律,从而对新数据进行分类。聚类是利用聚类技术识别一组数据对象的内在规则,将对象聚合成相似的类,以导出数据的分布规律。聚类与分类的差别在于它不需要训练样本,是一种无监督的学习。序列模式的目的也是为了挖掘数据之间的联系,但它主要关注于分析挖掘和时间顺序相关的模式。
决策树(decision tree)是运用于分类的一种树结构。决策树是用样本的属性作为结点,用属性的取值作为分支的树结构。它是利用信息论原理对大量样本的属性进行分析和归纳而产生的。决策树的根结点是所有样本中信息量最大的属性。树的中间结点是以该结点为根的子树所包含的样本子集中信息量最大的属性。决策树的叶结点是样本的类别值。
利用决策树方法进行数据挖掘,一般有如下步骤:数据预处理、决策树挖掘操作,模式评估和应用。 三、客户数据预处理 1. 定义业务问题
业务问题定义要明确数据挖掘技术解决的是何种问题,对客户流失管理来说就是要定义何为流失。电信运营商的客户流失有三方面的含义:一是指客户从一个电信运营商转网到其他电信运营商,这是流失分析的重点。二是指客户ARPU(指每用户月平均消费量)降低,从高价值客户成为低价值客户。三、指客户自然流失和被动流失。在客户流失分析中有两个核心变量:财务原因/非财务原因、主动流失/被动流失。客户流失可以相应分为四种类型:其中非财务原因主动流失的客户往往是高价值的客户。他们会正常支付服务费用,并容易对市场活动有所响应。这种客户是电信企业真正需要保住的客户。
2. 数据预处理
数据挖掘的处理对象是大量的数据,这些数据一般存储在数据库系统中,是长期积累的结果。但往往不适合直接挖掘,需要做数据的预处理工作,一般包括数据的选择(选择相关的数据)、净化(消除冗余数据)、转换、归约等。数据预处理工作准备是否充分,对于挖掘算法的效率乃至正确性都有关键性的影响。
A公司经过多年的电脑化管理,已有大量的客户个人基本信息(文中简称为客户信息表)。在客户信息表中,有很多属性,如姓名、用户号码、用户标识、用户身份证号码(转化为年龄)、在网时间(竣工时间)、地址、职业、用户类别、客户流失(用户状态)等等,数据准备时必须除掉表中一些不必要的属性,我采用面向属性的归纳等方法去掉不相关或弱相关属性。
(1)属性删除:将有大量不同取值且无概化操作符的属性或者可用其它属性来代替它的较高层概念的那些属性删除。比如客户信息表中的用户标识、身份证号码等,它们的取值太多且无法在该取值域内找到概化操作符,应将其删除,得到表1。
表1 客户信息表
年龄 学历 职业 缴费方式 在网时长 费用变化率 客户流失
58 大学 公务员 托收 13 10% NO
47 高中 工人 营业厅缴费 9 42% NO
26 研究生 公务员 充值卡 2 63% YES
28 大学 公务员 营业厅缴费 5 2.91% NO
32 初中 工人 营业厅缴费 3 2.3% NO
42 高中 无业人员 充值卡 2 100% YES
68 初中 无业人员 营业厅缴费 9 2.3% NO
(2)属性概化:用属性概化阈值控制技术沿属性概念分层上卷或下钻进行概化。文化程度分为3类:W1初中以下(含初中),W2高中(含中专),W3大学(专科、本科及以上);职业类别:按工作性质来分,共分3类:Z1一Z3;缴费方式:托收:T1,营业厅缴费:T2,充值卡:T3。
(3) 连续型属性概化为区间值:表中年龄、费用变化率和在网时间为连续型数据,由于建立决策树时,用离散型数据进行处理速度最快,因此对连续型数据进行离散化处理,根据专家经验和实际计算信息增益,在“在网时长”属性中,通过检测每个划分,得到在阈值为5年时信息增益最大,从而确定最好的划分是在5年处,则这个属性的范围就变为{<=5,>5:H1,H2}。而在“年龄”属性中,信息增益有两个锋值,分别在40和50处,因而该属性的范围变为{<=40,>40-<=50,>50}即变为{青年,中年,老年:N1,N2,N3};费用变化率:指((当月话费-近3个月的平均话费)/近3个月的平均话费)×%>0,F1:<=30%,F2:30%-99%, F3:=100%变为{F1,F2,F3}。
(4)客户流失类别:客户流失/客户不流失:YES/NO。
对表1各个属性进行以上数据预处理后,得表2。
表2 转化后的客户信息表
年龄 学历 职业 缴费方式 开户时间 费用变化率 客户流失
N3 W3 Z1 T1 H2 F1 NO
N2 W2 Z2 T2 H2 F2 NO
N1 W3 Z1 T3 H1 F2 YES
N1 W3 Z1 T2 H1 F1 NO
N1 W1 Z2 T2 H1 F1 NO
N2 W2 Z3 T3 H1 F3 YES
N3 W1 Z3 T1 H2 F1 NO 四、用ID3算法构建客户流失决策树 (一)用ID3算法构建决策树
基于信息论的ID3算法中,使用信息增益(Information Gain)作为衡量节点分裂质量的指标来选择分裂属性。信息增益最高的split将被作为分裂方案。1948年,香农(C. E. Shannon)提出了信息论,其中对信息量(Information)和熵(Entropy)的定义如下:
信息量 Information =-log2Pi
熵 Entropy=一Pilog2(Pi)
熵实际上是系统信息量的加权平均,也就是系统的平均信息量。信息增益(Informtion Gain),表示系统由于分类获得的信息量。由系统熵的减少值定量描述。熵是一个衡量系统混乱程度的统计量。熵越大,表示系统越混乱。分类的目的是提取系统信息,使系统向更加有序、有规则、有组织的方向发展。所以自然而然的,最佳的分裂方案是使熵减少量最大(即信息增益最大)的分裂方案。
在数据预处理后,进行归纳决策树。因为ID3算法是一个递归的过程,所以仅仅讨论一个个特定节点的分裂。信息增益计算 信息增益值:Gain(X,S)=I(U)-I(U|V)
即信息增益的定义是两个信息量之间的差值,其中一个信息量是需确定S的一个元素的信息量,另一个信息量是在已得到的属性X的值后需确定的S的一个元素的信息量,即信息增益与属性X相关。
利用函数Gain的定义将属性进行排列,具有最高信息增益的属性选作给定集合S的测试属性。创建一个根节点,并以该属性标记,对属性的每个值创建分枝,然后递归建树,可构造一棵决策树。其中每一个节点都是属性中具有最大增益的属性。生成决策树如下:
图1 客户流失决策树
在图1中,NO表示客户不流失,YES表示客户流失。从图1可以看出,客户费用变化率为100%的客户肯定已经流失;而费用变化率低于30%的客户;即每月资费相对稳定的客户一般不会流失,费用变化率在30%~99%的客户有可能流失,其中年龄在40~50岁之间的客户流失的可能性非常大,而年龄低于40岁的客户,用充值卡缴费的客户和在网时间较短的客户容易流失;年龄较大的客户,则工人容易流失。
(二)决策树修剪
构造过程中,需要对决策树进行修剪,采用两种方法,预先修剪和事后修剪:
预先修剪 在构造节点时,若该节点的信息增益小于0.1%时舍弃该节点;在构造节点时,若该节点下的记录数在所有记录数中的比例小于0.2%时,则停止该子树的生长;在构造节点时,没有属性可以再用于对数据进行分割, 则停止该子树的生长;当所有递归子集的运行状态均为流失或不流失时,则停止树的生长。
事后修剪 用期望错误率最小原则:对树中的内部节点计算其剪枝/不剪枝可能出现的期望错误率,若错误率小于0.2%,则剪掉该树枝。
用ID3算法对客户流失问题进行建模时可以区分不同的流失客户的群组及每一群组的潜在流失因素。
(三)关于训练集、测试集的选取和准确性的评估
训练集和测试集的选取一直是数据挖掘中有待研究的问题,至今尚未找到完全令人满意的解决方案。根据我们的实验和相关的数据挖掘实践,我们知道,对训练集轻微的扰动,都可能造成生成的决策树有较大的差异。训练集的合理选择一直是决策树挖掘中的一大难题。同时,测试集的选取又涉及分类准确性的评估问题。
1、用于挖掘的数据集的选取
随着业务的进行和时间的推移,数据源中的业务数据总是在不断地增加。如何从业务数据源中选取合适的数据集进行挖掘将成为一个难题。如果选择全部的、不断增涨中的数据源,则会造成:
1)由于在不同的时间存在不同的训练集,从而生成不同的分类器。即不同的训练集生成不同的决策树。同时,由于测试集的不同,就会产生不同的评估结果。
2)随着数据源中数据的快速增涨,决策树的生成速度和准确性的评估过程将会明显变慢,并最终可能超过现有硬件的承载能力,使人无法容忍。因而,通常的做法是对业务数据源进行抽样,选取出一个大小适中的数据集。保证选取出的数据集样本尽可能地包含有全部业务数据源的信息。
一般的方法是从业务数据源中随机地抽取出一些数据项组成挖掘数据集,这样抽取的样本才具有代表性。我们在本项目软件中使用的方法和步骤是:
1) 首先,对业务数据源中的数据记录在与挖掘无关的某个属性(测试属性和预测属性之外的其它属性)上进行排序;
2) 然后,从前至后随机地选取出一定数量的数据项至挖掘数据集中;
3) 选择不同的无关属性,重复以上两步,最终选取出大小合适的数据集。
但是,由于本项目中的客户流失为稀少结果,我们不得不采用过抽样的方法,希望较稀少的结果占模型集的10%-40%的比例附近。
2、训练集和测试集
从选取的数据集中,用约三分之二做训练集,三分之一做测试集,用训练集建模,用测试集对模型进行评估。
3、模型评估
决策树算法的执行结果是一棵表明哪些因素影响客户流失的决策树。为了得到最有价值的结果,必须对决策树进行分析和评估。对决策树的评估方法有保持方法和K一折交叉确认方法等。由训练数据集生成决策树模型后,再使用测试数据集进行验证得下表:总体准确率较高,效果令人满意。
表3 决策树正确识别率统计表
样本类别 样本数 错误识别数 正确率 平均识别率
YES 105 13 87.62% 98.46%
NO 1195 7 99.41%
(四)客户流失预测
对从根到树叶的每条路径创建一个规则,以IF—Then形式形成分类规则,组成规则集。沿着给定路径上的每个属性——值对形成IF部分的一个合取项,叶节点包含的类预测,形成Then后的部分,将规则存人规则库。实验结果表明,使用该算法进行客户流失的分析和预测是可行的和有效的,它可以帮助管理者更好地了解客户的流失受哪些因素的影响,以便在今后的市场营销中有针对性地对那些流失率高的客户做好服务工作,防止客户的流失引发的经营危机,这对于提高公司的竞争力、改善客户关系具有重要意义。
(五) 运用数据挖掘结果探寻客户管理策略
运用决策树分析结论来对A公司主动流失客户的具体情况进行分析,可以看出在费用变化率大的人群中中年人群客户最易流失,这是因为这一部分人大多有相对稳定的工作、收入相对较高,基本上每人都有自己的移动通信工具,孩子较大且大多在外读书或已经上班,家中很少有人在,因使用频率低而销户。本文认为,为挽留该类客户,就应该针对他们工作相对稳定并已定性、不需要为打拼天下花大量的时间和精力、需要决策而必须了解和掌握大量信息、休闲娱乐的时间相对较多而且固定的特点,采取“固话+宽带”绑定的方法一定会受到他们的欢迎。年轻一族收入少、赶新潮、思维活跃、攀比心理较强,因而容易受到新的竞争因素影响而成为易流失的客户,针对这部分人的情况,可以采用零月租等各种优惠办法,或赠送时尚彩铃,或发展为各种等级的VIP会员等办法,来增加对年轻人的吸引力。另外,对易流失客户群采取提高服务质量(如进行客户满意度调查、客户投诉分析、客户咨询和查询焦点分析等)、对一些重点客户及大客户提供个性化服务(如配备专门的客户经理)、适当的优惠赠送活动等办法来提高竞争力,加强企业与客户之间的感情沟通,从而留住客户。
五、结论 客户资源是电信公司的生命,保留并巩固客户资源对电信公司来说意义重大。决策树是数据挖掘中一个常用的分类方法,ID3算法由于其理论清晰,方法简单,学习能力强,适于处理大规模的学习问题,因此是一种知识获取的有用工具。将ID3算法应用于客户流失分析,能够帮助电信公司深入了解客户流失的原因,改进客户服务,对提高客户的留存率具有十分重要的应用价值。此外,ID3算法在电信的其它方面也有着广泛的应用:如客户细分、电话欺诈等,同样ID3在其他金融领域也有着广阔的应用前景。
|