APP下载

2I2C用户流失建模分析

2019-11-07杨洁

数据与计算发展前沿 2019年4期
关键词:决策树预测算法

杨洁

中国联合网络通信集团有限公司山西省分公司,山西 太原 030006

引言

2017年,为了应对互联网化转型,中国联通与互联网公司合作,打造了 2I2C 业务模式。该业务模式是利用互联网公司的用户优势,通过联通的多触点采用精准营销,进行业务推广。2I2C 业务模式的推行使得联通的业绩有了明显的提升。但 2018年后期和 2019年,虽采用了不同手段进行营销,比如地推、泛融合,但是 2I2C 用户流失率逐步加大。为抑制 2I2C 用户流失严重,急需增加 2I2C 用户流失模型,并对将要流失的用户进行精准营销,以减缓 2I2C 用户流失。

对于运营商来说,新增市场趋于饱和,面对新增市场的激烈竞争,存量用户的保有显得越来越重要。一项调查数据表明,争取 1 位新客户的成本是保住 1 位老客户的 5 倍。面对新的竞争形势,运营商需要从传统只重视增量发展模式向“增存并重”发展模式转变。如何最大限度地降低客户的流失并挽留客户,成为决策者关注的话题。

运营商减少客户流失的关键是提前预测潜在的流失客户,采取相关措施提高客户的满意度,实现该预测的关键技术在该场景下基于大数据技术的数据挖掘,即从海量的客户资料、使用行为、消费行为、上网轨迹等信息中提取有用的信息进行组合关联,准确判断客户流失的现状或倾向,从而让企业及时并有针对性的对客户进行挽留。因此,利用大数据技术进行数据挖掘,预测客户流失、减少客户流失的发生成为电信行业研究的重点。

本文就是在以上背景下,对 2I2C 用户进行了数据分析,建立了 2I2C 用户的流失模型。

2I2C 产品有其自身的特点,以大王卡为例,它的套餐设计是:(1)月付 19 元,可享受全国无漫游服务,赠送来电显示,中国大陆境内接听全部免费;(2)首月开卡免除月费,当超出套餐业务流量时每 MB 收费 0.1 元,短信、每分钟通话皆为 0.1 元,用户可以以每天 1 元的价格订购 500MB 省内流量;(3)腾讯旗下所有应用免流量。这种产品适合对腾讯的应用有依赖的人群,由于其他流量收费,所以大王卡用户的 ARPU 值在 36 万左右。可以说,随着用户量的提升,对运营商是很大一部分收入。但如果流失加大,对运营商也意味着损失的巨大。所以建立 2I2C 用户的流失模型十分必要。

1 大数据分析国内外现状

国外有很多移动运营数据挖掘的案例[1],例如运用决策树、Logistic 回归、人工神经网络等算法建立移动用户流失预测模型。Lightbridge 公司运用 CART 算法分析了新英格兰的一家移动服务商的数据并建立了客户流失模型。AT&T 公司很早就开始在大数据上的探索,2009年与 Teradata 公司合作引进天睿公司的大数据解决方案[2]。

在过去的几十年中,中国企业都扮演着技术跟随者的角色,但现阶段我国互联网企业在数据挖掘、大数据处理以及人工智能、云计算等领域都有了巨大的发展。中国联通集约化的 IT 系统优势逐步体现,全国集中的数据更便于做数据分析,可以利用海量的数据进行各种对内和对外的大数据分析。例如针对目前的多种多样的套餐可以利用大数据手段精准定位到哪些用户适合推荐什么样的套餐,增加了很多互联网的精准营销手段。对外与金融、政企等行业共同合作创建大数据平台,并利用大数据分析推出更贴切的行业产品。

2 大数据平台技术

山西联通大数据平台自 2015年开始建设,目前已经完成了 hadoop 生态体系为核心的大数据平台的建设(图1)。大数据平台集群主机共 84 台,日数据承载量 3T,日处理数据 60 亿条+,数据处理准确率在 99% 以上。实现了移网用户信令数据采集能力:汇聚分流 *3+DPI 采集设备 *10+IV 服务器 *8。处理数据包含五大类数据源,24 个数据接口,形成覆盖公司 B 域、O 域以及 M 域的基础数据服务能力,全面支撑公司划小单元、精准营销、客户维系、场景化营销、异网挖掘、指标考核等公司的营销活动和管理运营。

图1 大数据平台框架Fig.1 Framework diagram of large data platform

数据域:构建数据资产,实现资产数字化生产;多租户能力开放域:基于多租户,实现能力对外开放服务;平台组件域:以应用为驱动,构建生态化技术体系;应用域:依托平台技术,构建对内对外应用,发挥数据资产价值,助力互联网转型。

3 2I2C 流失模型构建

流失模型主要是根据历史数据特征,通过数据挖掘算法,建立预测模型,并将模型应用于现网用户,预测出流失概率高的用户。其主要包括数据预处理、特征选择、算法选择三大部分。在数据预处理阶段,根据现有系统的数据从 B 域数据整理出所有 2I2C 用户的宽表。特征选择是在宽表中筛选与流失相关的特征字段,构建流失预测特征库。算法选择阶段是选取数据挖掘算法,进行模型训练、评估和调优,训练出最佳模型。再将训练的最佳模型应用于现网数据,实现准确的流失预测。随后进一步通过有效的维系手段,对预测流失用户进行精准维系,减少用户离网,提升在网用户价值。

3.1 数据预处理

根据流失模型的特点,我们需要从业务支撑系统中选择相关的字段,并整合在一张宽表内。我们需要用户的所有信息,包括用户详单的信息、账单的信息、用户订购产品的信息、用户的套餐使用情况等多个表的字段信息。最终我们整理出的宽表有 150 个字段,涵盖了上述内容。

3.2 特征选择

根据流失模型的特点以及宽表数据的完整度,考虑特征选取相关的 68 个字段,表1 为相关特征提取实例。

表1 特征提取举例列表Table1 List of feature extraction examples

3.3 算法选择

流失模型简单来说是分类算法,我们需要用到的是机器学习的有监督学习的分类算法。常见的分类算法有决策树算法、随机森林算法、XGBoost (eXtremeGradientBoosting,极端梯度提升),以及 LightGBM 等,本文将利用几种算法都来分析流失模型,并且对它们进行比较。

3.3.1 决策树算法

决策树算法是一种逼近离散函数值的方法。它是一种典型的分类方法,本质上决策树是通过一系列规则对数据进行分类的过程。

决策树方法最早产生于上世纪 60年代。由 J Ross Quinlan 提出了 ID3 算法,此算法的目的在于减少树的深度。但是忽略了叶子数目的研究。C4.5 算法在 ID3 算法的基础上进行了改进,对预测变量的缺值处理、剪枝技术、派生规则等方面做了较大改进,既适合于分类问题,又适合于回归问题。

决策树算法通过构造决策树来发现数据中蕴含的分类规则,如何构造精度高、规模小的决策树是决策树算法的核心内容。决策树构造可以分两步进行。第一步,决策树的生成:由训练样本集生成决策树的过程。一般情况下,训练样本数据集是根据实际需要有历史的、有一定综合程度的,用于数据分析处理的数据集。第二步,决策树的剪枝:决策树的剪枝是对上一阶段生成的决策树进行检验、校正和修下的过程,主要是用新的样本数据集 (称为测试数据集)中的数据校验决策树生成过程中产生的初步规则,将那些影响预衡准确性的分枝剪除。

决策树算法的主要优点是模型具有可读性,分类速度快。学习时,利用训练数据,根据损失函数最小化的原则建立决策树模型。预测时,对新的数据,利用决策树模型进行分类。

决策树学习通常包括 3 个步骤:特征选择、决策树的生成和决策树的修剪。

随着算法的演进,决策树也暴露出一些弊端。(1)构建决策树采用贪心算法,只考虑当前纯度差最大的情况作为分割点。(2)决策树的构建过程是一个递归的过程,所以需要确定停止条件,否则过程将不会结束。一种最直观的方式是当每个子节点只有一种类型的记录时停止,但是这样往往会使得树的节点过多,导致过拟合问题 (Overfitting)。另一种可行的方法是当前节点中的记录数低于一个最小的阀值,那么就停止分割,将对应的分类作为当前叶节点的分类。

3.3.2 随机森林算法

为了应对决策树的问题,应运而生了随机森林算法 (RandomForest)。该算法的用意简言之,即一颗树预测正确的概率可能不高,但是集体预测正确的概率却很高。

在机器学习中,随机森林是一个包含多个决策树的分类器,其输出的类别是由个别树输出类别的众数而定。RandomForest 是用训练数据随机的计算出许多决策树,形成了一个森林。然后用这个森林对未知数据进行预测,选取投票最多的分类。实践证明,此算法的错误率得到了进一步的降低。

随机森林的优点[4]有:

(1)对于资料多样性,可以产生高准确度的分类器;

(2)可以处理大量的输入数据变量;

(3)可以估计遗失的资料,并且在遗失很大一部分资料的情况下,仍可维持计算的准确度;

(4)提供了可侦测 variable interactions 的实验方法;

(5)在不平衡的分类资料集情况下,可平衡误差;

(6)通过计算各例中的亲近度,对于数据挖掘、侦测离群点 (outlier)和将资料视觉化非常有用;

(7)它可被延伸应用在未标记的资料上,这类资料通常是使用非监督式聚类,也可侦测偏离者和观看资料;

(8)学习过程较快。

3.3.3 XGBoost

XGBoost (eXtremeGradientBoosting,极端梯度提升)[5]在大多数的回归和分类问题上表现突出,在许多机器学习和数据挖掘挑战中被广泛认可。如 Kaggle 比赛[6]中,大部分获胜者都使用了 XGBoost 算法。

XGBoost 是一个优化的分布式梯度增强库,旨在实现高效、灵活和便携。它在 Gradient Boosting 框架下实现机器学习算法。XGBoost 提供了并行树提升 (也称为 GBDT,GBM),可以快速准确地解决许多数据科学问题。相同的代码在主要的分布式环境 (Hadoop,SGE,MPI)上运行,并且可以解决超过数十亿个样例的问题。

XGBoost 的优点有:

(1)使用许多策略去防止过拟合,如:正则化项、Shrinkage and Column Subsampling 等;

(2)目标函数优化利用了损失函数关于待求函数的二阶导数;

(3)支持并行化,这是 XGBoost 的闪光点,虽然树与树之间是串行关系,但是同层级节点可并行。具体的对于某个节点,节点内选择最佳分裂点,候选分裂点计算增益用多线程并行,训练速度快;

(4)添加了对稀疏数据的处理;

(5)交叉验证,early stop,当预测结果已经很好的时候可以提前停止建树,加快训练速度;

(6)支持设置样本权重,该权重体现在一阶导数 g 和二阶导数 h,通过调整权重可以去更加关注一些样本。

3.3.4 LightGBM

LightGBM 是基于决策树算法的分布式、高性能梯度提升框架算法。可用于排序、分类、回归以及其他的机器学习任务中。

2017年1月微软在 GitHub 上开源了新的升压工具——LightGBM。相比较 XGBoost 而言,该算法在使用过程中训练耗时较短,内存占用比较小。在不降低准确率的前提下,其速度提升了 10 倍左右,占用内存下降了 3 倍左右。不同于其他的提升算法分裂树一般所采用的深度方向或者水平明智方法,LightGBM 基于决策树算法,采用最优的叶明智策略分裂叶子节点。当增长到相同的叶子节点,叶明智算法比水平-wise 算法减少更多的损失。因此 LightGBM 算法具有更高的精度,是其他的提升算法都不能够达到的。

LightGBM 的优点[7]有:

(1)效率提升

LightGBM 提供一种数据类型的封装,只需要保存离散的直方图,相对 Numpy,Pandas,Array 等数据对象而言节省了内存空间。LightGBM 默认的训练决策树使用直方图算法,直方图算法是一种牺牲了一定的切分准确性而换取训练速度以及节省内存空间消耗的算法。XGBoost 里现在也提供了这一选项,不过默认的方法是对特征预排序。在训练决策树计算切分点的增益时,预排序需要对每个样本的切分位置计算,时间复杂度是 O(#data),而 LightGBM 则是对将样本离散化为直方图后的直方图切割位置的增益进行计算即可,时间复杂度为 O(#bins),时间效率上得到了大幅度提高 (初始构造直方图是需要一次 O(#data)的时间复杂度)。

(2)节省内存

将连续数据离散化为直方图的形式,对于数据量较小的情形,可以使用小型的数据类型来保存训练数据,不必像预排序一样保留额外的对特征值进行预排序的信息,减少了并行训练的通信代价。

其中,精确率 (Precision)为 TP/(TP+FP),即为在预测为“坏人”的人中,预测正确 (实际为“坏人”)的人占比。召回率 (Recall)为 TP/(TP+FN),即为在实际为“坏人”的人中,预测正确 (预测为“坏人”)的人占比。F1 值是精确率和召回率的调和均值,即 F1=2PR/(P+R),为综合评价指标。

3.3.5 Python 程序处理

在 Anaconda 的 Jupyter Notebook 中,进行程序脚本编写。我们将 5月出账 6月不出账的特征数据表并做打标处理,预测 6月出账 7月不出帐的用户,以及流失模型数据。我们对每个字段进行与打标字段的相关性分析,如图2。

我们用上述决策树、随机森林、XGBoost、LightGBM 几种算法,分别进行了建模,并用算法排列出特征相关性的顺序。如图3 所示。

结果可见年收入、月均流量、入网时长、总费用、通话次数,月均收入、流量费等字段与流失强相关。其中 LightGBM 算法的精确率、召回率、F1 值最高。见表2。所以我们最终选择了 LightGBM 算法来建模,并获得了 2I2C 流失模型的预测数据。

图2 特征相关性分析图Fig.2 Characteristic correlation analysis graph

图3 特征排序Fig.3 Characteristic sorting

4 营销维系

对于市场而言,流失模型是市场需要的,而 2I2C 流失模型是更加贴合了市场的需求,针对流失严重的 2I2C 用户,市场需要尽快采取措施,用于挽留用户。

我们将 2I2C 流失模型的预测数据进行营销,通过多种渠道和多种挽留的方式进行维系。

关于下发的渠道,目前有电话营销、短信营销、触点营销、公众号、手厅、网厅等多种渠道。电话营销包括客服的电话营销和互联网自有渠道,可以由 10010 的客服进行电话营销,也可以将流失数据经业务部门审核后上传至自助取数平台,由各地市进行下载,再有外呼人员进行电话营销。短信营销指的是将流失数据放入短信营销平台,由平台自动发送短信内容,用户回复固定内容后,平台收到确认短信,会认为营销成功,随后根据营销策略为用户定制业务或赠送业务。微信公众号推送是在山西联通的微信公众号上,对流失数据的用户进行定向推送营销的业务,做到千人千面、分人分业务营销。目前投资方面电话营销成本高于其它方式,电话营销的成功率比其它方式的要高。

关于用户挽留方式,也是有多种的。针对不同的流失情况,可以推荐不同的业务办理或赠送不同的业务,或者赠送电子券、权益、红包类产品,以增加用户的粘性。比如,对于有流量需求的用户为用户推荐办理国内流量包,对语音有需求的用户推荐办理语音包,对于单用户,可以为用户推送合约、增值业务,对于业务量缺少的用户可以给用户赠送电子券、权益或红包。从而增强用户粘性、提升客户价值。

从目前的营销效果上来看,较为稳定的控制了 2I2C 用户的流失,对于全省 300 万数量级的 2I2C 用户来说,起到了很大的维系作用。

下一步,将结合维系效果,进一步优化模型参数,完善训练模型,进一步提升模型的精确率和召回率,进一步提升用户的保有率。并且在挽留方式上,要更加细化和丰富,对流失用户进行继续细化分类,对业务产品更加多样化,从而持续提高客户的客户感知度,提升用户价值,提升企业的整体形象。

猜你喜欢

决策树预测算法
无可预测
选修2-2期中考试预测卷(A卷)
选修2-2期中考试预测卷(B卷)
基于MapReduce的改进Eclat算法
一种针对不均衡数据集的SVM决策树算法
Travellng thg World Full—time for Rree
进位加法的两种算法
决策树和随机森林方法在管理决策中的应用
不必预测未来,只需把握现在
基于决策树的出租车乘客出行目的识别