携程火车票短信召回算法优化实践

作者简介

Ryan,携程算法专家,专注个性化推荐、智能营销等领域;

小白,携程算法工程师,研究智能营销、用户增长等领域。

一、背景

互联网蓬勃发展的今天是流量为王的时代,但随着流量红利逐渐消失,获客成本的日益增高,用户留存成为各大互联网公司的重点关注问题,其中流失用户的召回在当今的流量红海市场中显得尤为关键,为此,基于大数据和机器学习的智能营销技术应用而生。

携程火车票业务每周都会有短信营销活动,旨在通过对近期未下单的老客发送短信将其召回,促进复购,提升用户粘性(业务流程如图 1 所示);原有业务策略是基于规则的方式随机从满足条件的用户池中选择一部分进行短信投放,针对该方法过于粗放、召回效果不佳、短信发送 ROI 不高的问题,我们分阶段提出基于 Response Model 的转化率预估模型、基于 Uplift Model 的短信敏感度预估模型,逐一对问题进行更科学的定义、拆解和优化。

携程火车票短信召回算法优化实践图1 携程火车票短信召回业务流程图

二、问题定义

上述短信召回业务需要解决的核心问题可抽象概括如下:

定义:在满足条件的老客用户池(假设用户规模为 N )中,通过策略或者模型筛选出 K 个用户(在短信成本约束下,K 通常小于 N ),对这些用户发送短信后,提升整体的转化率和短信发送 ROI。

三、解决方案

3.1 基于 Response Model 的转化率预估模型

针对上述问题,在只有基于业务策略的短信发送历史记录的情况下,我们首先尝试通过构建一个基于 Response Model 的转化率预估模型预测用户被短信营销影响后的下单概率,进而选择下单概率高的那部分用户进行短信投放,该方法可形式化描述如下:

V1

目标:在 N 个用户中寻找 K 个短信投放后下单概率最高的用户。

方法:根据历史短信发送记录构建短信触达后用户的转化率预估模型(考虑到样本规模以及连续特征占比较高,我们采用 XGBoost ),对目标用户群进行打分,选出前 K 个下单概率最高的用户(标签定义:发送短信后,用户下单则为正样本,未下单则为负样本)。

实验方案:如图 2 所示,先将 N 个用户随机等分为两组 A 和 B。

a. 对照组: 在 A 组中随机选择 K/2 个用户进行短信投放;

b.  实验组:在 B 组通过转化率预估模型预测打分,按分值由高到低筛出前 K/2 个用户。

评价指标:离线:AUC,TopK 的召回率;在线:用户转化率、短信发送 ROI。

携程火车票短信召回算法优化实践图2 v1 实验方案流程图

该方案实验后,实验组相比对照组在上述评价指标上均取得大幅提升,但仔细分析后发现存在两个比较明显的问题:

a. 评价指标不合理:转化率预估模型选择的用户相比随机选择的用户,在下单概率方面具有天然的偏置;

b. 实验方案不合理:未能排除用户自然召回因素的影响(部分人群不管是否有营销活动都会下单),无法量化评估短信营销的增量效益。

V2

针对上述两个问题,我们改进了实验方案和评价指标:

目标:验证通过方案 v1 找到的 K 个用户在短信投放后下单和收益增量是否更高。

方法:构建转化率预估模型,同 v1。

实验方案:如图 3 所示,先将 N 个用户随机等分为两组 A 和 B。

a. 对照组:将 A 组随机等分为 A1 和 A2,分别从 A1、A2 中随机筛出 K/2 个用户,前者投放短信,后者不投放短信;

b. 实验组:将B组随机等分为 B1 和 B2,分别从 B1、B2 中通过转化率预估模型筛出分数最高的前 K/2 个用户,前者投放短信,后者不投放短信。

评价指标:离线:Qini Score,AUUC;在线:短信投放人群相比未投放短信人群的增量转化率、短信发送增量 ROI。

携程火车票短信召回算法优化实践

该方法的实验方案和评价指标虽然更加科学合理,但由于转化率预估模型的优化目标和评价指标的优化方向不一致,该模型无法预估短信投放的增量效益(未考虑自然转化因素的影响),为此,我们需要针对优化目标进一步构建更加符合业务场景需要的模型。

3.2 基于 Uplift Model 的短信敏感度预估模型

为了解决 Response Model 在上述业务场景下存在的问题,提升短信投放带来的增量效益,我们进一步构建了基于 Uplift Model 的短信敏感度预估模型。

Uplift Model 是工业界因果推断与机器学习结合最成熟的算法之一,在智能营销和用户增长领域中有着广泛的应用,我们先介绍一下用来解释 Uplift Model 的较为经典的营销人群划分图:

携程火车票短信召回算法优化实践图4 营销人群四象限划分图

图中四类人群解释如下:

a. 营销敏感人群:营销活动触达(短信、优惠券等)则购买,不触达则不买;

b. 自然转化人群:不论营销活动是否触达均会购买;

c. 无动于衷人群:不论营销活动是否触达均不会购买;

d. 反感营销人群:营销活动不触达会购买,触达反而不买。

很显然,智能营销的目标就是尽可能找到图 4 中的营销敏感群体,从而最大化营销活动的增量效益,Uplift Model 就是为此应运而生。

Uplift Model 是用于估计某种干预因素(Treatment,以下简称T)对个体处理效应(Individual Treatment Effect,简称 ITE)的一类模型。在上述的业务场景中,假设 T=0 代表不发短信(对应人群简称 T 组),T=1 代表发送短信(对应人群简称 C 组),X 代表用户特征,Y 代表输出预测值,P 代表转化概率,ITE 即为转化概率的增量变化,其可形式化表述如下:`

ITE=P(Y|X=x,T=1)-P(Y|X=x,T=0)         (1)

常用的 Uplift Model 有 Meta-learner(S-learner,T-learner,X-learner等[1])和 Tree-based learner(Uplift Tree[2],Causal Forest[3]等)以及 Dnn-based learner(TARNet[4]、CEVAE[5]等),其中 Causal Forest 主要基于 Uplift Tree 通过随机森林(Random Forests)进行集成学习,业界目前较为流行的做法是使用广义随机森林(Generalized Random Forests,GRF[6])。

上述三类 Uplift Model 的特性总结如下:

模型名称

优点

缺点

Meta-learner

可扩展性强,表现较为稳定,基础模型可以直接套用现有分类模型(LR/GBDT/DNN等)

非直接建模ITE,基础模型仍是Response Model,模型拟合能力有待提高

Tree-based learner

直接建模ITE,模型拟合能力较强

工程实现难度较大,对数据分布较为敏感,泛化能力不稳定

Dnn-based learner

参数共享,模型结构和损失函数定义较为灵活,模型拟合能力强

对训练数据量要求较大,否则比较难以发挥模型拟合能力的优势

表1 Uplift Model特性总结

通过 Uplift Model 我们可以估计短信营销对用户的增量效益,根据增量效益的量化排序,我们即可以筛选出图 4 所示的营销敏感人群,实验方案依然遵循图 3 所示流程,需要注意的是 Uplift Model 的建模对训练样本的要求较高,需要服从 CIA ( Conditional Independence Assumption ) 条件独立假设,我们可以通过让 X 与 T 保持相互独立满足此条件。为此,我们在进行实验的同时,会预留一小部分流量做随机化 A/B 实验,实验组会随机选择部分用户发送短信,对照组随机选择部分用户不发送短信,这个实验,可以为 Uplift Model 建模提供无偏的样本。

四、实验结果

按照图 3 所示实验方案,我们分阶段做了两次实验,第一次是验证基于 Response Model 的转化率预估模型是否带来了短信营销的增量效益,其线上效果如表 2 所示,可以看出,在我们的业务场景中,相比随机筛选的人群,短信营销对转化率高的人群其实具有较强的正向作用,所以这算是一次较为成功的尝试。

携程火车票短信召回算法优化实践

表2 线上实验结果:Response Model vs Random

基于 Response Model 的转化率预估模型经过线上实验验证,虽然业务指标提升较为明显,但基于本文中对短信营销增量效益的分析,我们决定继续进行第二阶段的实验评估,离线建模结果如表 3 所示:

携程火车票短信召回算法优化实践图片

表3 离线评估结果:Uplift Model vs Response Model

表 3 中主要评估基于 Meta-learner 构建的 Uplift Model 相比 Response Model 的离线指标提升,对本次实验我们将基于 Response Model 的转化率预估模型作为对照版,将基于 Uplift Model 的短信敏感度预估模型作为实验版,其中 Uplift Model 为离线评估效果相对较好的 T-learner,线上效果如表 4 所示:

携程火车票短信召回算法优化实践图片

表4 线上实验结果:Uplift Model vs Response Model

从表 4 可以看出,Uplift Model 的线上表现效果和离线一致,相比 Response Model 取得了明显的业务指标提升,这也验证了 Uplift Model 确实适用于提升短信营销的增量效益,有助于挖掘更多的短信营销敏感人群。

五、探索分析

在进行上述两阶段的实验之后,我们继续探索更多 Uplift Model 在我们业务场景的适用性,同时也是为了评估当前业务继续进行实验迭代的必要性。

除了 Meta-Learner,我们也选择了以 GRF 作为代表的 Tree-based learner 和以 TARNet 作为代表 Dnn-based learner 进行评估对比,同时,考虑到 S-learner 中 T 作为特征加入到模型训练过程中有可能被众多用户特征稀释,我们对用户特征采用 PCA 进行降维后再将 T 作为特征用 S-learner 进行训练和评估(即表 5 中 PCA+S-learner),表中测试集 v1 我们继续使用和表 3 一致的测试集。

各模型的离线评估效果如下:

携程火车票短信召回算法优化实践图片

表5 Uplift Model 离线指标评估结果(测试集 v1)

携程火车票短信召回算法优化实践

图5 Uplift Model 离线评估结果-Qini Curve(测试集 v1)

为了更加清晰地看出 Uplift Model 的增量效益,我们也绘制了 Qini Curve,如图 5 所示(图中横坐标代表按 ITE 估计值排序后的样本占比,纵坐标代表对应人群实际的转化增量,曲线下的面积越大,代表模型效果越好):

从表 5 和图 5 可以看出,TARNet、GRF、PCA+S-learner 的表现均较为突出,但考虑到这些模型容易受整体数据分布的影响,为了评估各个模型的泛化能力,我们额外选择了线上受到疫情影响日期较为靠后的测试数据集 v2,其离线评估效果如图表 6 和图 6 所示:

携程火车票短信召回算法优化实践

表6 Uplift Model 离线指标评估结果(测试集 v2)

携程火车票短信召回算法优化实践

图6 Uplift Model 离线评估结果-Qini Curve(测试集 v2)

从表 6 和图 6 可以看出,PCA+S-learner,GRF,TARNet 等模型均容易受到数据分布变化的影响,这些模型还需要进一步优化模型结构提升泛化能力以增强适应数据分布变化的鲁棒性,这也是我们后续探索的方向之一;其中 T-learner 表现比较稳定,适应数据分布变化的能力也较强,更加适用于我们当前的业务场景。

六、总结与展望

携程火车票短信召回业务是一个比较典型的智能营销场景,短信召回算法的优化过程和结论总结如下:

a. 针对智能营销类场景,直接估计干预因子增量效应的 Uplift Model 相比传统的 Response Model 具有更强的适用性;

b. 智能营销类场景需要设计科学合理的实验方案来验证干预因素的增量效应,最好预留部分流量进行随机化实验从而为 Uplift Model 的训练和评估提供无偏的样本;

c. Uplift Model 的实现方式有很多种(Meta-learner、 Tree-based learner、 Dnn-based learner等),其中 T-learner 在我们的业务场景中效果相对稳定,较为适用,但不一定适用于其他场景,需要根据实际情况进行分析和评测;

d. 我们对 Uplift Model 探索还有待进一步深化,比如应对连续以及多元干预因子的处理、优化模型结构提升泛化能力和解决多目标跨域联合建模等。

文章版权声明

 1 原创文章作者:小猪,如若转载,请注明出处: https://www.52hwl.com/85154.html

 2 温馨提示:软件侵权请联系469472785#qq.com(三天内删除相关链接)资源失效请留言反馈

 3 下载提示:如遇蓝奏云无法访问,请修改lanzous(把s修改成x)

 免责声明:本站为个人博客,所有软件信息均来自网络 修改版软件,加群广告提示为修改者自留,非本站信息,注意鉴别

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023年7月18日 上午8:17
下一篇 2023年7月18日 上午8:18