现在,越来越多的人意识到预测客户的流失与否是一件非常重要的事情。而且比较值得注意的是,留住原有的客户是要比吸引新客户更加容易的,而且成本更低(点击文末“阅读原文”获取完整数据)。
相关视频
客户的流失可以从三个不同的方面来考虑。首先,失去现有客户相当于失去一台机器的重要零件并且不能保证马上就能换上新的,因为它们是公司的最宝贵的资产。此外,根据同样的假想假设,失去一个客户意味着有意将这些资产转移给公司的竞争对手。最后,吸引新客户是一项非常费力的任务。而且吸收新用户后依旧要考虑留住他们。所以,预测客户的流失是一件十分需要研究的问题。
数据说明与评估准则
数据说明
使用的数据集(查看文末了解数据免费获取方式)是在12个月期间从运营商呼叫中心的数据库中随机收集的。该数据集包含了3150个客户的数据,有呼叫失败次数、投诉次数、订阅长度、收费金额、使用秒数、使用频率、短信频率、不同呼叫次数、年龄组、服务类型、状态和流失一共11个特征变量加上一个类变量。显然其中流失是我们最感兴趣的一个变量,也是我们希望能够成功预测的变量。
查看数据集,其中一共有495条记录客户被流失,而2645条记录显示没有被流失。为了更好的训练与测试数据,将数据集按照训练集与测试集7:3的比例进行划分,并且在其中保持客户流失的比例不变。即训练集与测试集中流失客户的比例也是7:3。
评估准则
由于数据中实际流失与否只有两种结果,所以实际上这就是一个2分类问题,所以预测结果也就是两种,0和1。所以预测的结果一般为表3.1的结果。
所以有以下比较常见的指标用于衡量判别结果:
本文采用的是F-Score。
实证分析
决策树与随机森林
顾名思义,决策树判别法基于树状分类模型,在每一次分类的叉点,都会对样本的某一属性进行判别,最终实现分类判别的目的。本文通过R语言软件“rpart”包对数据进行了判别分析。图给出了决策树的结构图,可以看见的是最长的一个枝一共有9个节点。
随机森林是一种较为先进的机器学习模型,对于高维度的数据(如本文研究内容)的效果较好,不需要做特征选择,对数据适应能力较好。本文通过R语言软件“randomForest”包对数据进行了判别分析。图给出了随机森林中的重要性排序,可以看出投诉次数是最重要的一个指标。
支持向量机
支持向量机是一种很热门的机器学习模型,本文通过R语言软件“e1071”包对数据进行了判别分析。表给出了SVM的结果,但是很明显,支持向量机在预测流失是否等于1的结果是非常不好,反而预测流失是否等于0的情况较好,不过这样的结果F-Score值会较低。
核Fisher判别方法
KFDA是在Fisher判别的基础做出一种改进算法,本文通过R语言“kfda”包对数据进行了分析。核Fisher判别的结果与SVM相似,都不是十分的理想。从图中也可以看出来,两个类别的样本在图中并没有被区分开来。
总结与展望
通过表,可以看出,随机森林的F-Score值时最大的,代表了随机森林的准确率也是最高的,在这四个模型中,随机森林预测出客户是否会被流失的正确性也越高。并且通过多次抽样预测,都是随机森林的结果最好,而且最高的F-Score都不会达到0.89。