VBBA方法用于电信客户流失预测.doc
【精品文档】如有侵权,请联系网站删除,仅供学习与交流VBBA方法用于电信客户流失预测.精品文档.VBBA方法用于电信客户流失预测冉建荣摘 要:对于电信客户流失预测问题,流失客户相对于非流失客户来说比例非常小,这种比率的严重失衡通常会污染预测模型,导致客户流失预测效果大幅下降;另外,单一的统计学模型或人工智能模型用于客户流失预测时,存在对不同数据集模型的适应性不同的问题。本文提出采用最优算法投票(VBBA)方法来解决这些问题。文章用中国移动某公司的客户数据进行实证研究,用ROC曲线对预测结果进行评估,结果表明:采用最优算法投票(VBBA)方法,其预测效果优于任何单一算法模型直接预测的效果,这为电信业客户流失管理实践提供了一套有效的提升客户流失预测精度的方法。Abstract: In telecom customer churn prediction, customer churn rate is a very small proportion, usually that will pollute prediction model and lead to reduce prediction effect; in addition, single statistical model or single artificial intelligence model is difficult to satisfy various datum. So, this article proposes a Voting Based on the Best Arithmetic (VBBA) method to solve those problems. It conducts empirical study with customer data of a subsidiary company of China Mobile Communications Corporation (CMCC), and assess prediction effect using receiver operating characteristic curve (ROC). The results show that the prediction effect of VBBA method is better than that of single arithmetic model, so VBBA method is effectual to lift prediction precision of customer churn in telecommunication customer churn management.关键词:最优算法投票 客户流失预测 ROC曲线Key words: Voting Based on the Best Arithmetic; Customer Churn Prediction; Receiver Operating Characteristic Curve (ROC)0 引言客户流失是指客户终止与企业的服务合同或转向其它公司提供的服务1。据中华人民共和国国家统计局统计数据表明,截止2011年12月,中国移动电话用户数达9.86亿户,比去年同期增长14.8%;固定电话用户数达2.85亿户,比去年同期减少3.14%2,表明国内电信市场逐渐趋于饱和。对电信运营企业来说,在这样一个相对成熟的市场中竞争,防御性市场策略变得越来越重要。防御性市场策略重点关注的是如何减少客户流失,而不是发展新客户和诱使竞争对手的客户转网3。Reichheld4研究表明,客户保持率每提高5%,行业平均利润增加幅度在25 %85 %之间。另有研究表明,赢得一个新客户所花费的成本大约是保留一个老客户所花费成本的56倍5。因此,如何构建适合于自己的客户流失管理系统,管理好客户流失问题是各电信运营企业提高盈利能力的关键。客户流失管理主要包括预测可能流失的客户,客户收益的评估及减少客户流失的客户保持策略及方法等几方面6。本文以提高客户流失预测精度为目标,提出基于最优算法投票(VBBA,Voting Based on the Best Arithmetic)方法,对中国移动某公司客户数据进行实证研究,并用ROC曲线对采用VBBA方法前后各算法模型的预测结果比较评估,结果表明VBBA方法能够大幅度提高客户流失预测效果。文章的组织结构如下:第一部分介绍了客户流失预测一般方法;第二部分提出VBBA方法的框架;第三部分用VBBA方法进行实证研究;第四部分对研究结论作简单评述,并给出实践建议。1相关研究评述由于客户流失预测是客户保持策略的关键环节,在电信客户流失管理中具有十分重要的地位和作用,近年来受到越来越多的学者和电信运营管理人员的重视。一般来说,电信业客户流失预测是利用客户记录的历史数据对潜在的流失客户进行判断的过程6。其研究方法一般分为统计学方法和人工智能方法。统计学方法包括决策树(Decision Tree)、Logistic回归(Logistic Regression)、贝叶斯分类器(Bayesian Classifier)和聚类(Clustering)等,该类方法的主要优点是对所构建的模型可解释性强。应用这些统计学方法于电信客户流失预测,很多学者做了有价值的研究7-10。但统计学方法在处理大规模、高维度、含非线性关系的客户数据时效果并不理想,且不能保证学习和泛化能力,缺乏灵活性。因此,近年来越来越多的学者将学习能力强,预测精度更高的人工智能方法引入客户流失预测研究 11-17。人工智能方法主要包括人工神经网络(ANN, Artificial Neural Networks)、自组织映射(SOM, Self-organizing Map)、支持向量机(SVM, Support Vector Machine)和进化学习(EL, Evolutionary Learning)算法等。不论是统计学方法还是人工智能方法,目前的研究目标主要集中于单个算法(或改进算法)对原始数据建模或将几个单一算法组合成混合模型用于原始数据建模。但由于电信客户流失预测所用数据复杂多变,很难找到普遍适用的最优单一模型;另外,在客户数据库中,流失客户的比例往往非常小,这可能污染模型,导致流失预测模型的预测效果大幅下降。鉴于此,本文提出基于最优算法投票(VBBA,Voting Based on the Best Arithmetic)方法来系统性的解决这些问题。2 VBBA方法的提出本文提出的最优算法投票(VBBA,Voting Based on the Best Arithmetic)方法框架如图1所示。主要分为选择最优算法和对最优算法的预测结果组合投票两部分。具体构建过程如下: 图1 最优算法投票策略框架第1步:数据分区。将整理好的原始数据分成训练集和测试集两部分,根据原始数据样本多少可以按50/50、60/40、70/30等比例划分,但一般来说测试集数据不得少于总样本的20%18。第2步:抽取训练子集。对于客户流失预测等分类问题,由于流失率一般较低,流失客户数和非流失客户数严重失衡,导致大多数分类模型被污染,影响模型预测效果。为提高流失客户在训练数据集中的比例,一般采用保留所有流失客户数据的同时,抽取部分非流失客户数据组成训练子集,以平衡训练集中流失客户和非流失客户的比例。对非流失客户数据多次随机抽样从而可以形成多个训练子集,记为n,n取奇数。一般建议将数据子集中流失客户和非流失客户比率平衡为20/8018。第3步:训练模型。选用多种(记为M)基本分类算法(如决策树、神经网络、逻辑回归、支持向量机、粗糙集等)分别对n个训练子集建模。第4步:选择最优算法模型。对M个算法模型分别在n个训练子集的预测结果进行比较评估,选取n次结果中平均精度最高、标准差最小的算法模型作为最优模型。第5步:最优模型组合投票。分别将n个最优模型用于测试集,对预测结果采用少数服从多少的投票策略,得票数大于等于票的目标类(即流失或非流失)作为对该客户的预测结果。如:在9次预测中,对某客户有5次(或5次以上)预测为流失,4次(或4次以下)预测为不流失,则最终投票结果为该客户流失。3 实证研究3.1研究数据及评估方法(1)研究数据本文以中国移动某公司客户数据作为研究对象。由于临时卡客户(即购买临时卡将所含费用用完即丢弃或换号的客户)的消费行为具有极大的不稳定性,运营企业记录的相关数据甚少,文章在研究时考虑先将此部分客户排除。因此,我们随机抽取该公司2012年13月一直在网的用户25075户,取其协议数据、消费行为数据和账单数据,以2012年4月1日至2012年5月30日作为客户流失判别窗口。对所提取客户数据进行清理、集成、变换、离散化等预处理后,得到数据有效样本24862户,占总样本数的99.2%;其中,流失用户2345户,流失率9.4%。通过特征选择方法对所有变量进行筛选,得到与流失预测问题强相关的变量21个作为参与流失预测的特征变量,其中类别型特征变量4个,数值型特征变量17个。(2)评估方法本文选用Clementine12.0中的Neural Net、C5.0、Logistic和SVM四种模型作为研究的基础模型,采用ROC曲线(Receiver Operating Characteristic Curve)19对预测结果进行比较评估。ROC分析50年代起源于统计决策理论,广泛应用于分类器性能的评价 20,21。流失预测问题实质就是一个二元分类问题,因此可以借助ROC曲线来评价预测预测模型的预测效果。ROC曲线定义如下:假设有关于流失和非流失两个类的混淆矩阵如表1所示。表1 一个关于客户流失预测问题的混淆矩阵实际状态预测结果合计流失非流失流失A(真正)B(假负)A+B非流失C(假正)D(真负)C+D合计A+CB+DA+B+C+D由上表可以计算如下参数:,灵敏度即流失客户被预测为流失客户的比率。,特异度即非流失客户被预测为非流失客户的比率。ROC曲线是以真正率为纵坐标,假正率为横坐标绘制的曲线。ROC曲线越靠近左上角,则模型预测的准确性就越高,可用曲线下方的面积(Area Under Curve,即AUC)度量预测效果,AUC的值一般在1.0和0.5之间,面积值越接近1.0的表示预测效果越好。一般:AUC在0.50.7时有较低准确性,AUC在0.70.9时有一定准确性,AUC在0.9以上时有较高准确性。3.2 单个模型用于客户流失预测在建模之前我们将原始数据分区为训练数据集和测试数据集,分别占比60%和40%。采用Clementine12.0中的Neural Net、C5.0、Logistic和SVM四种模型用于分区后的原始数据建模。其中,C5.0模型选择use boosting和cross-validate,其他为默认选项;Neural Net模型选择默认选项,即用quick算法;Logistic模型选择binomial算法,其他为默认选项;SVM选择默认选项。用SPSS15.0中的ROC构造方法对训练数据集和测试数据集的预测结果绘制ROC曲线并计算曲线下方面积(AUC)如表2所示。由表2可以看出,直接将四种基本模型用于原始数据的预测结果中,Neural Net的预测效果相对较好,但总体来说预测效果不理想。表2 单个模型用于原始数据预测结果的AUC值模型训练集测试集Neural Net0.814 0.811C5.00.7900.755Logistic0.8140.808SVM0.8220.7093.3 VBBA方法用于客户流失预测(1)数据分区将原始数据分区为训练数据集和测试数据集,分别占比60%和40%(与3.2中分区方法同)。(2)抽取训练子集在占60%的训练数据集中,流失客户和非流失客户分别为1457户和13615户,按20/80的比率平衡数据集,则需从13615户非流失客户中随机抽取5828户()与1457户流失客户组成训练子集。其中抽取的5828户非流失客户占非流失客户总数的42.8%(),按此比例改变随机种子再重复抽取8次,共得到9个训练子集。每次都按42.8%的比例从非流失客户中随机抽取,由于随机种子的差异导致所得到的非流失客户样本数并不完全等于5828户。各训练子集样本数如表3所示。表 3 9个训练子集样本数统计样本编号D1D2D3D4D5D6D7D8D9流失客户样本数145714571457145714571457145714571457非流失客户样本数579158865896580358335803579758995818样本总数724873437353726072907260725473567275(3)训练模型选用SPSS Clementine12.0中的Neural Net、C5.0、Logistic和SVM四种模型分别对9个训练子集进行建模。在建模过程中,C5.0模型选择use boosting和cross-validate,其他为默认选项;Neural Net模型选择默认选项,即用quick算法;Logistic模型选择binomial算法,其他为默认选项;SVM选择默认选项。得到Neural Net、C5.0、Logistic和SVM模型各9个。(4)选择最优模型分别将从9个训练子集训练得到的9个Neural Net模型、9个C5.0模型、9个Logistic模型和9个SVM模型的预测结果输出转化成适合于SPSS15.0的数据格式,采用SPSS15.0中构建ROC曲线的方法绘制ROC曲线并计算得到ROC曲线下方面积(AUC)如表4所示。由表4可知:Neural Net模型9次预测结果的平均AUC最大(0.846),表明其预测效果最优;SVM模型9次预测结果的AUC标准差最小(0.0039),表明其最为稳定。我们在此以预测效果作为首要评判条件,选用Neural Net模型作为最优模型。表4 各模型对9个训练子集预测的评估结果模型D1D2D3D4D5D6D7D8D9平均标准差C5.00.837 0.843 0.849 0.841 0.837 0.839 0.835 0.847 0.838 0.841 0.0048 Neural Net0.845 0.846 0.841 0.851 0.851 0.841 0.845 0.845 0.851 0.846 0.0040 Logistic0.8470.833 0.836 0.837 0.835 0.842 0.835 0.834 0.840 0.838 0.0045 SVM0.7350.742 0.734 0.737 0.735 0.733 0.734 0.734 0.744 0.736 0.0039 (5)最优模型组合投票将从9个训练子集得到的9个Neural Net模型分别用于测试数据集,采用少数服从多数的投票策略对预测结果进行综合。在9次预测中,将有5次(或5次以上)预测结果为流失的客户确定为流失客户,其他为非流失客户。采用ROC曲线对测试结果进行评估,得到ROC曲线下方面积(AUC)如表5所示。由表5可知:投票后的预测结果的AUC为0.855,高于9个模型预测结果的平均AUC值(0.846),表明采用少数服从多数的原则投票综合后的预测效果明显提高。表5 9个Neural Net模型测试及投票的评估结果模型N1N2N3N4N5N6N7N8N9平均投票结果AUC0.847 0.831 0.843 0.855 0.852 0.833 0.851 0.854 0.849 0.8460.8553.4 比较评估由表2和表5结果可得到表6,由表6可知,通过采用VBBA方法后,对测试数据集预测结果的AUC值从单个模型中最优的0.811(Neural Net结果)提升为0.855,表明预测效果有明显提高。表6 VBBA方法与单一模型的预测结果比较模型VBBAC5.0Neural NetLogisticSVMAUC0.8550.7550.8110.8080.709另外,我们基于测试数据集的预测结果,分别构建Neural Net模型、C5.0模型、Logistic模型、SVM模型和VBBA方法的预测结果的ROC曲线,如图2所示。从图2可以直观看出VBBA方法的ROC曲线明显高于其它四种单一模型的ROC曲线,表明采用VBBA方法后,预测效果得到大幅提升。图2 VBBA方法与四种单一模型方法的预测结果ROC曲线对比4 结论本文针对电信运营企业客户流失预测时客户数据中流失客户和非流失客户比例严重失衡,可能影响大多数分类模型预测效果的问题,提出最优算法投票(VBBA)方法框架,并用中国移动某公司客户数据进行了实证研究,分别采用VBBA方法构建流失预测混合模型和采用Neural Net、C5.0、Logistic和SVM四种单一算法构建流失预测模型,用SPSS15.0对实证结果数据进行处理,并绘制ROC曲线进行评估,结果表明:采用最优算法投票方法后,其预测结果的ROC曲线下方面积(AUC)为0.855,优于最优算法模型9次预测结果的平均AUC值(0.846)和单个模型中预测效果最好的Neural Net模型的预测结果AUC值(0.811)。这表明VBBA方法能够大幅提高客户流失预测精度,对电信运营企业客户流失实践来说又提供了一套有效的方法。参考文献1 詹穆斯·德阿克.企业的泛风险管理M. 吉林人民出版社, 2001: 4659.2 中华人民共和国国家统计局网站. 3 Fornell C, Wernerfelt B. Defensive marketing strategy by customer complaint management: A theoretical analysis. Journal of Marketing ResearchJ. 1987, 24(4):337346.4 Reichheld F F, Sasser W E. Zero defections: quality comes to servicesJ.Harvard Business Review,1990,9-10:105-111.5 Bhattacharya C B. When customers are members: customer retention in paid membership contextsJ. Journal of the Academy of Marketing Science, 1998, 26(1): 3144.6 Lian Y, Richard H W, Robert D. Predicting customer behavior in telecommunicationsJ. IEEE Intelligent System, 2004, 4: 5058.7 Chih-Ping Wei, Chiu I T. Turning telecommunications call details to churn prediction: a data mining approachJ. Expert Systems with Applications, 2002, 23(2): 103112.8 Kim H S, Yoon C H. Determinants of subscriber churn and customer loyalty in the Korean mobile telephony marketJ. Telecommunications Policy, 2003, 28(9): 751765.9 叶进,程泽凯,林士敏. 基于贝叶斯网络的电信客户流失预测分析J. 计算机工程与应用, 2005,14: 212214.10 Yang Y M, Hui W, Lei L. Multi-dimensional model-based clustering for user-behavior mining in telecommunications industryC. Proceeding of the third international conference on machine learning and cybernetics, shanghai, 2004: 2629.11 Shin-Yuan Hung, David C. Yen, Hsiu-Yu Wang.Applying data mining to telecom churn managementJ. Expert Systems with Applications. 2006.31: 515524.12 Wai-Ho Au, Keith C.C.Chan, Xin Yao.A novel evolutionary data mining algorithm with applicaions to shurn predictionJ. Evolutionary Computation,IEEE Transactions. 2003,7(6):532545.13 Ultch A. Emergent self-organizing feature maps used for prediction and prevention of churn in mobile phone marketsJ. Journal of Targeting, Measurement and Analysis for Marketing, 2002,10(4): 314324.14 Ferreira J B, Vellasco M, Pachecco M A, Barbosa C H. Data mining techniques on the evaluation of wireless churnC.ESANN2004 proceedings-European Symposium on Artificial Neural Networks Bruges,2004:483488.15 武帅, 王雄, 段云峰. SVM在移动通信客户流失预测中的应用研究J. 微计算机信息, 2007,23: 163165.16 田玲, 邱会中, 郑莉华. 基于神经网络的电信客户流失预测主题建模及实现J. 计算机应用, 2007,27(9): 22942297.17 钱苏丽,何建敏,王纯麟.基于改进支持向量机的电信客户流失预测模型J.管理科学,2007.20(1): 55-75.18 Dorian P. 业务建模与数据挖掘M. 机械工业出版社, 2005: 252306.19 Jiawei H, Micheline K. Data Mining Concepts and TechniquesM. 机械工业出版社, 2007: 243244.20 Metz C E. Some practical issues of experimental design and data analysis in radiological ROC studiesJ.Investigative Radiol,1989,24(3): 234245.21 Bradley A P. The use of the area under the ROC curve in the evaluation of machine learning algorithmsJ. Pattern Recognition, 1997, 30:11451159.