滴滴技术

RAS-AUCC:智能营销Uplift模型多Treatment评估指标改进

Image

背景

Image

智能营销场景

智能营销是互联网平台精细化运营的一种方式,其往往希望在保证用户优惠的前提下,实现特定目标。以网约车平台为例,由于不同场景的供给与需求差异巨大,在部分场景并不适合发放补贴,因此挖掘出有增量的场景是解决问题的核心。对于“满足补贴率约束&最大化GMV”的问题,其可以被建模为:

Image

此时,衡量钱效的指标为投资回报率ROI(Return on Investment),计算公式为ΔGMV/ΔCost(其中“Δ”指实验组对比空白组的绝对值增量)。

该类问题的特点:

  • 基于场景粒度进行折扣决策。

  • 以最大化GMV或完单为目标,以补贴率为约束。

  • 是多折扣下的折扣决策问题(multi-treatment)。

Image

Uplift模型

智能营销场景离不开对uplift(增量)的建模,其定义为:

Image

与常规的 response model 相比,uplift model 需要在不同 treatment 下对 label(或label之间的差值)进行预估。由于观测数据中仅能观测到其中一种,因此反事实预估是uplift model的重点。

在因果推断中,反事实推理(Counterfactual Reasoning)是一个核心概念。反事实问题通常涉及对已经发生事件的假设性不同情况的探讨,即“如果某些条件与实际发生的有所不同,结果会怎样”。

Image

Uplift模型评估指标

关于uplift model的评估指标,Radcliffe提出以Boldness(衡量模型的区分能力,即序准指标)和Accurate(衡量模型的准确性,即偏差指标)作为参考。其中,序准主要影响钱效,而偏差主要影响预算执行,大部分场景下二者并不冲突,而业界使用时更关注序准,即希望对所有样本uplift大小的排序准确。

与uplift建模的难点类似,由于无法获取所有treatment下的真实label(即存在反事实问题),常见机器学习评估指标都不太适用。目前的大部分解法是基于RCT(Randomized Controlled Trial)数据的分组ATE(Average Treatment Effect)近似代替ITE(Individual Treatment Effect),并进行累计收益的评估[1]。

Uplift Curve与AUUC

在Treatment仅有0、1两种取值时,Uplift Curve的绘制流程:

  • Step1:模型对RCT数据进行预测,然后把样本按预估的 ITE 降序排序。

  • Step2:取ITE topK样本,以k为横轴,f(k)为纵轴,画出Uplift Curve。其中f(k)的公式为:

Image

在横纵轴归一化后,AUUC被定义为Uplift Curve与随机线差的积分(Uplift Curve与随机线围成的面积)。

Qini Curve与Qini系数

当topK样本中,treatment组和control组的样本数量相差比较大的时候,Uplift Curve的计算会存在问题。为此 Radcliffe 提出 Qini curve,对control组的缩放至treatment组的样本规模上。Qini Curve的绘制流程:

  • Step1:模型对RCT(Randomized Controlled Trial)数据进行预测,然后把样本按预估的 ITE 降序排序。

  • Step2:取ITE topK样本,以k为横轴,g(k)为纵轴,画出Qini Curve。其中g(k)的公式为:

Image

在横纵轴归一化后,Qini系数被定义为Qini Curve与随机线之差的积分(Qini Curve与随机线围成的面积)。

Image

因为Qini Curve可以处理treatment组和control组样本数量差异大的情况,更具有稳定性,所以Qini系数会比AUUC更实用。

AUUC & Qini系数的局限性

AUUC和Qini系数评估的是所有样本的Uplift Score的序准。但实际应用当中,由于预算有限,往往只能覆盖Uplift Score排序的头部。以下是一个头部排序差于随机线,但总体的Qini Score优于随机线的例子:

Image

Dini系数

针对AUUC和Qini的缺陷,团队于21年底对Qini系数进行了改进,将头部的排序准确性结果加大权重。

Image

Dini系数的局限性

Dini系数虽然解决了Qini与AUUC的问题,但仍具有局限性:无论是Qini、AUUC还是Dini,都是根据Uplift Score排序,并不完全等价于“按照钱效(ROI)排序”。而对于智能营销场景,显然后者更为合理。以下例子可以充分说明Uplift Score不等价于ROI时产生的问题:

Image

AUCC

大部分工业界场景中,treatment作用到不同样本上的成本不同,因此单纯考虑增量会忽略成本因素。基于此,Uber同时考虑了收益增量与成本增量,提出了AUCC(Area Under Cost Curve)指标[2],其思想主要为:

  • 样本排序:同时考虑收益和成本,与业务评估指标拉齐,如:ROI。

  • X轴:累计成本增量。

  • Y轴:累计收益增量。

Image

AUCC指标定义为模型曲线面积和随机线面积的比值,即(A+B)/B。AUCC基本解决了单treatment下的离在线评估不一致问题,且当营销场景为「发放立减金(而非折扣)+最大化完单」时,AUCC的绘制方式等价于Qini Curve的绘制方式。

AUCC的局限性

在实际落地时,大部分业务均存在多种折扣或券的发放形式(multi-treatment)。此时,常规做法是同时计算各treatment下的AUCC,然后对所有指标取均值,或基于在线折扣分布进行加权求和。但是单treatment内部的钱效排序准确,并不能保证多treatment场景下treatment与treatment之间的钱效排序准确。以下例子可以充分说明「样本间单折扣下排序准确,多折扣间排序不准确」的问题:

Image

MT-AUCC

为解决上述介绍的multi-treatment场景中存在的问题,业界提出了MT-AUCC指标[3]。该指标与本文将介绍的RAS-AUCC在核心思想上高度一致,均通过对样本在各折扣下的边际ROI进行排序,实现理论上的离在线一致性(将在第二节展开介绍):

Image

而在实际落地场景中,我们遇到过以下问题:

  • 钱效不一定随着折扣的加深而递减(即函数不一定为凸)。

  • 对于multi-treatment智能营销场景,线上常用的对照组为定折组(全场景发放统一折扣)而非随机组(随机场景发放最深档折扣)。

因此,我们希望提出一套满足以下诉求的评估指标:在无需额外假设的前提下,完全消除multi-treatment场景的离在线评估gap,同时大幅提升与各业务场景的适配程度(支持不同策略目标、支持指定补贴率、与定折组对比评估)。

Image

RAS-AUCC

Image

动机

上文提到,在大部分智能营销场景中,treatment并不是二元的,而是包含一系列折扣(如95折、9折、85折等)。当前的大部分指标只能基于单treatment进行评估,当需要多treatment评估时,无论是对单treatment评估结果进行加权求和,还是基于帕累托占优思想寻找更优模型,都无法抹平评估指标与业务收益之间的差距。

经过推导,我们发现,在多treatment智能营销场景的样本级别最优化决策中,最优策略本质即为:对所有样本各treatment的边际ROI进行排序,并基于预算约束确定策略覆盖范围。而上文所列举的各种评估指标,能举出反例的根本原因都是由于排序指标仍存在缺陷。因此,一个合理的改造思路便呼之欲出:完全沿用最优策略实际发放折扣的排序,对uplift模型的累计业务收益进行评估。此时,该评估指标可以达到理论的离在线完全一致。

Image

思路 

我们希望新指标能实现离在线评估方向一致的诉求,命名为RAS-AUCC(Area Under Cost Curve for Resource Allocation Simulation)。

样本排序

业界常见的智能营销策略可拆分为两部分:增量建模和运筹优化。若运筹优化采用的是样本级别的基于对偶优化思想的求解,则在不同的优化目标下,会推导出不同的决策公式:

Image

若指标构造时也采取相同的排序方式,则可以在multi-treatment场景下与策略实际发放结果相同,拉齐离在线策略。

X轴

支持两种横轴:Cost、C补率

  • 前者计算模型线与对照线围成的面积,用于评估在所有补贴率下的总体效果。

  • 后者计算模型线对比对照线在指定C补率下的相对提升幅度,用于评估在指定补贴率下的效果。

Y轴

  • 支持多种规模指标与钱效指标评估:呼叫数、完单数、GMV、ROI、完单ROI等。

  • 除了评估主要目标,还可评估受策略影响的一系列观察指标。

其他改进点

  • 对照线选取定折组(而非随机折扣组)。

  • 更贴近线上常用baseline。

Image

实现 

数据

与上文提及指标相似,我们仍需使用RCT数据进行评估:

Image

定折曲线绘制

Image

绘制定折曲线时:

  • 计算每个折扣组样本集的总花费与总规模指标增益。

  • 每个折扣组样本集对应定折曲线中的一个点,根据X轴与Y轴指标确定每个点对应的横纵坐标(见下表)。

  • 从原点出发,从左到右连线。

Image

模型曲线绘制

Image
Image

绘制模型曲线时:

1.计算与排序

  • 计算全样本集每条样本所有预估折扣下的模型预估cost和模型预估规模指标。

  • 对于每条样本,仅保留「以预估Cost为横轴,以预估规模指标为纵轴」曲线的凸包络线上的预估折扣(使得评估指标的决策空间和业务的决策空间一致)。

  • 对于每条样本所有被保留下来的预估折扣,对于非不打折的折扣,基于不同的最大化指标计算对应的排序指标:

Image
  • 对每条样本所有被保留下来的预估折扣所计算出的排序指标,从大到小进行排序。

2.在排序好的数列中选择多个截断点,每个截断点对应模型曲线中的一个点。截断点前的数据(比截断点排序指标大)中,相同样本若含不同预估折扣的数据,只保留最深预估折扣。

3.对于每个截断点,根据X轴与Y轴指标确定对应的横纵坐标(见下表)。

4.从原点出发,从左到右连线。

Image
Image

落地

总体视角

当我们想「基于所有补贴水平,整体评估模型在各规模指标下相比于定折组的提升」时,可计算「横纵轴归一化后,策略线和定折线围成的面积」:

Image

指定补贴率视角

当我们想「基于指定补贴率水平,评估模型在各规模指标&钱效指标下相比于定折组的提升」时,可计算「在对应的横坐标下,策略线相比于定折线的提升幅度」:

Image
Image

总结与展望

Image

总结 

我们分析了基于对偶优化的策略内核,在评估指标搭建时复现了最优策略发放折扣的思想(基于边际ROI排序),并利用RCT数据对各补贴率下的累计规模指标收益进行仿真,在无需额外假设(如钱效随折扣加深而递减)的前提下,完全消除multi-treatment场景的离在线评估的理论gap,同时大幅提升与各业务场景的适配程度(支持不同策略目标、支持指定补贴率、与定折组对比评估)。实现过程主要包括以下两个难点:

  • 在不假设「钱效随折扣加深而递减」时,需删除Cost-规模指标曲线上的非凸点,防止评估指标决策空间大于策略决策空间。

  • 在每个环节对样本进行合理缩放,确保最终结果能真正代表uplift。

最终,我们搭建了一套适配multi-treatment场景、无钱效递减假设、更具有线上指导意义、也更方便排查收益链路的指标。基于线上实验回收结果,该指标的合理性及离在线收益一致性也得到验证,即RAS-AUCC指标高的模型更容易在实际业务场景取得收益。

Image
Image

展望

当前指标仍然存在改进的空间:

缺乏对数据和模型无偏性的校验

  • 问题:可能会造成评估指标不合理。

  • 解法:添加若干条group_ratio曲线,表示按边际ROI排序后,每个组样本量的占比,以验证Ignorability假设。

  • 期望:group_ratio斜率基本为0,不呈上升或下降趋势。

缺乏对预测绝对值误差的评估(即缺少对Accurate的评估)

  • 问题:将绝对值误差较大的预测结果应用到运筹优化决策中,可能会导致预算约束失效。

  • 解法:补充ATE error指标。

  • 期望:ATE error处于较低水平。

数据质量要求高

  • 问题:评估指标需使用RCT数据,会耗费线上资源。

  • 解法:使用(甚至仅使用)观察数据。

  • 期望:产出无偏的评估结果,且降低RCT成本。

参考文献

[1] C. Renaudin, and M. Martin. 2021. About evaluation metrics for contextual uplift modeling.

[2] Will Y. Zou, Shuyang Du, James Lee, and Jan Pedersen. 2018. Heterogeneous Causal Learning for Effectiveness Optimization in User Marketing.

[3] Hao Zhou, Shaoming Li, Guibin Jiang, Jiaqi Zheng, and Dong Wang. 2022. Direct Heterogeneous Causal Learning for Resource Allocation Problems in Marketing.

Image
Image
欢迎在评论区分享你遇到的那些“智能营销中的坑”,让我们一起交流经验、共同成长!小编将从留言中抽取2位幸运粉丝,送上一份清凉好礼——“夏日野餐垫”,快来参与吧!