通过机器学习模型实现用户流失概率预测
互联网正在逐渐降低成本并提高效率,不再进行大规模的新用户吸引。面对新用户增长乏力,老用户逐步流失的情况,此时就需要建立一个强大的用户流失预警系统。
一、背景描述
互联网正在逐渐降低成本并提高效率,不再进行大规模的新用户吸引。面对新用户增长乏力,老用户逐步流失的情况,为了保住活跃用户的大盘,此时就需要建立一个强大的用户流失预警系统。
相信许多企业非常关注用户流失这个课题。可能每天,运营主管会盯着用户数据面板问着:为什么用户流失率这么高?我们在做流失用户召回工作吗?
很多人可能会回答,流失用户运营的本质不就是召回流失用户吗?于是,运营人员会认真地建立一套流失用户运营召回体系,常见的流失用户定义是将一段时间未登录或未购买的用户定义为流失用户,然后策划召回活动并通过推送或短信去触达用户。
尽管许多企业的用户运营在重复这样的工作,但往往发现流失用户的召回率非常低。一方面,用户流失意味着用户已经放弃了产品,再次召回用户无疑是一次新的拉拢工作。另一方面,由于用户流失的原因不清楚,企图通过优惠券或促销活动将用户召回,用户往往会主动屏蔽这样的召回短信。
那么,流失用户运营的真正本质是什么呢?其本质是基于用户大数据分析,提前挖掘出流失概率很高的用户,提前干预,降低预流失用户的比例。用户大数据分析需要能够将用户的基础画像数据、行为数据、消费数据进行建模,然后挖掘用户与流失行为相关性更大的特征,不仅仅是特征的相关性,更重要的是流失归因。
当有了用户流失预测模型,此时再结合RFM模型,将用户划分成高价值、低价值等类型,就可以针对不同类型用户设计不同的营销活动,已达到最好的ROI。
二、流失预警建模原理
要构建流失预测模型,首先我们要确认流失用户的定义口径。
通常流失用户口径的定义有两种方案:
- 方案1:业务产品/运营侧基于以往的数据分析和对业务的理解,已经有明确的定义口径;
- 方案2:业务侧没有口径,算法工程师基于数据表现确定合理的流失口径定义;
对于其中方案2来说,通常的可以按照如下方式操作:
- 首先建立一个观察窗口。通过搜集、分析窗口期内用户历史数据表现,包括登陆频次、登陆时长、浏览时长、浏览深度、跳出率、下单频次等用户行为数据;
- 其次建立一个表现窗口,通过收集用户在表现窗口的活跃情况/付费情况变化,来确定什么样的用户变成流失用户;通常来说,我们可以统计用户行为的回访间隔,制作回访曲线,一般选择曲线的拐点出作为用户行为流失的依据;然后抽取已知流失用户画像特征、消费行为特征、用户生命周期特征来建立模型需要的训练集,构建预测模型,并不断优化模型提升预测的准确率和召回率。
- 再次建立预测窗口,针对最新活跃的用户,利用模型对尚未明确流失的用户进行预测,并建立流失评分体系,通过评分规则打上相应流失标签,比如:高风险流失用户、中风险流失用户、低风险流失用户。
二、流失预警模型搭建
我们在拿到样本数据后开始训练模型,针对用户流失预警在建模思路方面有三种算法:
- cox生存模型:这个模型算法最大的作用是可以分析各个用户变量与流失的关系,并通过生存算法预测出不同用户在未来流失概率;
- 传统机器学习模型:比如LR、XGBoost、Lightgbm等模型,可以提供不同流失的规则集,用户运营可以通过流失规则快速分层用户并进行运营;
- 深度学习模型:可以计算每个用户的流失评分,用户运营可以根据评分高低来确定不同流失风险用户的运营策略
我们这次建模是通过,以后有机会还会写文章详细阐述另外两种算法模型的应用。
流失预测模型的构建步骤
- 数据分析,确定流失用户口径;
- 模型训练的数据集准备:抽取流失与未流失用户活跃、阅读、付费、充值等维度特征;
- 特征数据EAD分析;
- 模型训练开发;
- 模型验证;
- 上线部署;
- 回收线上数据进一步迭代优化模型;
特征EAD分析
特征分析的目标:挑选正负样本表现差异较大的特征,能更好的区分正负样本;分析特征本身的相关,去掉冗余特征;
如下是计算特征的相关性的:
如下是计算正负样本在不同维度上的均值对比:
模型构建
如下是lightgbm分类模型进行训练时,常用的一些参数配置
模型验证
当模型开发完成后,可以用未来的真实数据来进行预估用户流失情况,通过构建混淆矩阵,我们可以评估在不同阈值下,模型预估的准确率、召回率、F1值,然后可以结合业务实际对召回还是准确的要求选择对应的阈值进行上线;
三、用户分层运营和数据监测
用户标签的意义在于丰富用户运营的场景。
我们可以通过用户流失预警模型获得不同流失风险用户的标签。如果仅根据单一维度的用户标签进行运营,可能会出现用户分组过多而营销资源有限的情况。因此,在实际运营中,我们需要建立一套有效的用户分层机制和推送(push)机制,实现千人千面的个性化营销。
用户分层可以通过多维度交叉来实现,在制定日常用户分层运营策略时,我们可以通过用户生命周期、用户价值和用户流失预警的交叉,实现多个有营销意义的分组。
通过风险预警模型,我们可以输出不同流失风险水平的用户,包括高流失风险、中流失风险、低流失风险。再结合生命周期的不同标签和用户价值的不同标签,可以分组更多有营销场景意义的用户,比如高流失风险成熟期的高价值用户,这个用户分组可以进行相应的推送计划和可视化监测。
总的来说,我们已经阐述了用户流失预警体系的搭建方法。在用户运营的大体系中,用户建模是基础,用户画像标签的输出离不开模型的支持。只有掌握一种建模技术,运营才能做好用户运营。
四、 结语
用户流失预测并不仅仅是一个简单的模型预测问题,需要深入分析产品本身提供的价值。