水熊虫
水熊虫
不认命,就拼命!
263文章 52分类

营销补贴--MTAUUC多Treatment评估

MT-AUCC:多 Treatment 场景下的钱效评估指标

一、背景:为什么需要 MT-AUCC

1.1 AUUC 的局限

在 Uplift 模型评估中,AUUC(Area Under Uplift Curve)是最常用的离线指标。它按模型预测的增量效应降序排列样本,计算累计增益曲线与随机线之间的面积。

但 AUUC 有一个根本假设:所有干预的成本相同。

现实营销场景中,这个假设往往不成立:

  • 发一张"满 100 减 10"的券,成本 10 元
  • 发一张"满 200 减 30"的券,成本 30 元

如果只按增量收益排序,模型可能把"收益高但成本极高"的样本排在前面,导致实际钱效(ROI)很差。

1.2 AUCC 的改进

AUCC(Area Under Cost Curve)解决了单 treatment 下的这个问题:

  • X 轴:累计成本增量(不再是人数)
  • Y 轴:累计收益增量
  • 排序依据:ROI(收益增量 / 成本增量)

这样,曲线高度直接对应"每一块钱花出去能换回多少增量收益"。

1.3 多 Treatment 的新问题

当 treatment 有多个时,常规做法是分别计算每个 treatment 相对 control 的 AUCC,然后取均值或按在线分布加权。

但美团的研究指出,这种做法存在一个关键缺陷:

单个 treatment 内部的 ROI 排序准确,并不保证 treatment 与 treatment 之间的 ROI 排序准确。

举例来说,模型可能知道"用户 A 比用户 B 更适合用小券",但不知道"用户 A 到底该用小券还是大券"。

MT-AUCC 正是为解决这个问题而提出的。


二、算法原理

MT-AUCC(Multi-Treatment Area Under Cost Curve)的核心思想是:

为每个样本选择所有 treatment 中边际 ROI 最高的那个,用这个"最优边际 ROI"作为排序依据。

2.1 排序分数的定义

对于样本 $x$ 和 treatment $t$,定义边际 ROI 为:

$$ \rho(x, t) = \frac{\mathbb{E}[Y(x,t)]}{\mathbb{E}[C(x,t)]} $$

其中:

  • $Y(x,t)$:接受 treatment $t$ 后的收益增量
  • $C(x,t)$:对应的成本增量

然后取该样本所有 treatment 中的最大 ROI:

$$ \rho^*(x) = \max_{t \in \mathcal{T}} \rho(x, t) $$

2.2 曲线绘制步骤

  1. 按 $\rho^*(x)$ 降序排列所有样本
  2. 沿排序累计:X 轴为累计成本增量,Y 轴为累计收益增量
  3. 连接各点得到 MT-AUCC 曲线
  4. 计算曲线下面积与随机线面积的比值

2.3 相比"两两 AUCC 加权"的优势

方法 评估目标 局限性
两两 AUCC 加权 局部排序能力 无法保证全局最优 treatment 选择
MT-AUCC 全局钱效排序 计算稍复杂,需预测成本和收益

MT-AUCC 直接评估了"样本应该选哪个 treatment"这一全局决策能力,而不是把多分类问题拆成多个二分类再人为拼凑。


三、计算 Demo

3.1 场景设定

假设有三种干预方式:

Treatment 成本 说明
A(小券) 3 元 低门槛补贴
B(中券) 8 元 中等补贴
C(大券) 15 元 高门槛补贴

模型对 4 个用户预测的收益增量如下:

用户 A 收益 B 收益 C 收益
U1 6 12 18
U2 2 16 20
U3 5 5 6
U4 12 9 10

3.2 Step 1:计算每个用户的最优 ROI

U1:

  • A 的 ROI = $6 / 3 = 2.00$
  • B 的 ROI = $12 / 8 = 1.50$
  • C 的 ROI = $18 / 15 = 1.20$
  • 最优:A,ROI = 2.00

U2:

  • A 的 ROI = $2 / 3 = 0.67$
  • B 的 ROI = $16 / 8 = 2.00$
  • C 的 ROI = $20 / 15 = 1.33$
  • 最优:B,ROI = 2.00

U3:

  • A 的 ROI = $5 / 3 = 1.67$
  • B 的 ROI = $5 / 8 = 0.63$
  • C 的 ROI = $6 / 15 = 0.40$
  • 最优:A,ROI = 1.67

U4:

  • A 的 ROI = $12 / 3 = 4.00$
  • B 的 ROI = $9 / 8 = 1.13$
  • C 的 ROI = $10 / 15 = 0.67$
  • 最优:A,ROI = 4.00

3.3 Step 2:按最优 ROI 降序排列

排序 用户 最优 ROI 最优 Treatment 成本 收益
1 U4 4.00 A 3 12
2 U1 2.00 A 3 6
3 U2 2.00 B 8 16
4 U3 1.67 A 3 5

3.4 Step 3:累计计算并绘制曲线

累计成本 累计收益 累计 ROI
3(U4) 12 4.00
6(+U1) 18 3.00
14(+U2) 34 2.43
17(+U3) 39 2.29

将(累计成本,累计收益)作为坐标点连线,得到 MT-AUCC 曲线。

对曲线积分并归一化,即可得到 MT-AUCC 值:

$$ \text{MT-AUCC} = \frac{\int_{0}^{C_{\max}} G(c) \, dc}{\int_{0}^{C_{\max}} G_{\text{random}}(c) \, dc} $$

其中 $G(c)$ 为累计收益曲线,$G_{\text{random}}(c)$ 为随机分配基线。

3.5 对比:如果只看单 Treatment AUCC

假设只看 Treatment A 的 AUCC,排序依据是 A 的 ROI:

用户 A 的 ROI
U4 4.00
U1 2.00
U3 1.67
U2 0.67

这个排序与 MT-AUCC 的前三名一致(U4、U1、U3),但忽略了 U2 在 Treatment B 上有着 2.00 的最优 ROI。

如果业务场景中 B 券是可选的,MT-AUCC 会正确地把 U2 纳入高优先级,而单 treatment AUCC 会漏掉这个机会。


四、关键区别总结

维度 AUUC 单 Treatment AUCC MT-AUCC
排序依据 uplift 分数 ROI(单 treatment) 最优边际 ROI
是否考虑成本 否 是 是
是否支持多 treatment 否 需分别计算 是
评估目标 增量排序质量 单臂钱效排序 全局钱效排序

五、一句话总结

MT-AUCC 的本质是:

用"每个样本在所有可选 treatment 中的最高 ROI"作为排序键,直接评估模型在"选对 treatment + 排对顺序"这两个层面的综合能力。

美团在其营销数据集上的实验显示,DPM(Direct Policy Model)在 MT-AUCC 上达到 0.7860,显著优于两阶段基线方法。


六、实践建议

  1. 数据要求:需要同时预测收益增量和成本增量,对模型要求更高
  2. 成本定义:成本不仅包括补贴金额,还应考虑履约成本、运营成本等
  3. 与在线指标结合:MT-AUCC 是离线指标,最终决策仍需结合在线 A/B 实验
  4. 敏感性分析:成本预测的误差会直接影响 ROI 排序,建议对成本做敏感性分析
Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×