从广告点击到下单转化:阿里ESMM模型如何用多任务学习解决CVR预估的样本偏差难题
解密阿里ESMM模型:多任务学习如何重塑广告转化率预估
在数字营销领域,广告主最关心的核心指标莫过于转化率——那些点击广告的用户最终完成购买、注册或其他目标行为的比例。然而,这个看似简单的指标背后,却隐藏着两个长期困扰业界的难题:样本选择偏差和数据稀疏。想象一下,一个电商平台每天展示数百万次广告,但实际点击可能只有2%,而最终产生转化的用户更是凤毛麟角。传统方法仅基于点击样本训练转化率预估模型,就像仅凭冰山一角来推测整座冰山的形状。
1. 转化率预估的行业痛点与ESMM的破局思路
1.1 样本选择偏差:被忽视的"沉默大多数"
在广告系统的传统建模流程中,转化率预估(CVR)模型面临一个根本性矛盾:
- 离线训练阶段:只能使用有点击行为的样本(约占总曝光量的2%)
- 线上预测阶段:需要对全量曝光样本(100%)进行预测
这种样本空间的错位导致模型在实际应用中表现不佳。就像一位只在五星级酒店学习餐饮服务的学生,突然被派往快餐店工作——尽管同属餐饮行业,但环境差异使得经验难以直接迁移。
关键数据对比:
| 场景 | 样本空间 | 正样本比例 | 数据量级 |
|---|---|---|---|
| CVR训练 | 点击用户 | 0.2%-5% | 1万-10万 |
| CVR预测 | 全量用户 | 0.01%-0.1% | 100万+ |
1.2 数据稀疏:小样本中的大挑战
即使仅考虑点击样本,转化行为也极为稀少。以电商广告为例:
# 典型电商广告转化漏斗模拟 import numpy as np impressions = 1_000_000 # 百万级曝光 ctr = 0.02 # 行业平均点击率 cvr = 0.05 # 点击后的转化率 clicks = impressions * ctr # 20,000次点击 conversions = clicks * cvr # 仅1,000次转化这种极端的数据不平衡导致:
- 模型容易过拟合,泛化能力差
- 深度学习模型参数难以充分训练
- 对长尾商品和新品的预测准确率低
2. ESMM模型架构:多任务学习的精妙设计
阿里妈妈团队提出的完整空间多任务模型(ESMM),通过创新的多任务学习框架,同时解决了上述两个难题。其核心思想可以用一个简单公式表达:
pCTCVR = pCTR × pCVR
这个看似基础的概率公式,却蕴含着解决样本偏差的关键洞察。
2.1 模型结构解析
ESMM采用典型的双塔结构,但有着独特的设计哲学:
- 共享底层架构:
- CTR和CVR塔共享特征嵌入层
- 底层特征:用户画像、商品属性、上下文特征等
# ESMM核心结构伪代码 class ESMM(nn.Module): def __init__(self): self.shared_embedding = EmbeddingLayer() # 共享特征嵌入 self.ctr_tower = MLP() # CTR预测塔 self.cvr_tower = MLP() # CVR预测塔 def forward(self, x): emb = self.shared_embedding(x) # 共享嵌入 # 双塔并行 ctr_logit = self.ctr_tower(emb) cvr_logit = self.cvr_tower(emb) # 概率转换 pCTR = sigmoid(ctr_logit) pCVR = sigmoid(cvr_logit) pCTCVR = pCTR * pCVR # 关键公式实现 return pCTR, pCVR, pCTCVR- 损失函数设计:
- CTR损失:使用全量曝光样本
- CTCVR损失:使用全量曝光样本
- 无显式CVR损失
$$ \mathcal{L} = \sum_{i=1}^N \ell(y_i,\hat{y}i) + \sum{i=1}^N \ell(y_i & z_i, \hat{y}_i \times \hat{z}_i) $$
2.2 为什么ESMM能解决样本偏差?
模型通过两个关键设计实现样本空间对齐:
- 间接学习CVR:通过CTR和CTCVR任务的联合训练,隐式学习CVR
- 全空间训练:两个任务都使用全量曝光样本,确保线上线下一致性
这种设计带来的优势:
- CVR预测基于完整样本空间
- CTR任务的丰富数据帮助CVR特征学习
- 模型更适应真实业务场景
3. 工业级实现与优化策略
3.1 特征工程最佳实践
在阿里妈妈的实际应用中,ESMM的特征体系经过精心设计:
用户侧特征:
- 历史行为序列(点击、购买、收藏等)
- 人口统计学属性
- 实时兴趣标签
商品侧特征:
- 类目属性
- 价格带
- 销量统计
上下文特征:
- 曝光位置
- 时间上下文
- 设备信息
实践提示:在共享嵌入层,建议对不同特征域进行归一化处理,避免数值尺度差异影响模型收敛。
3.2 超参数调优经验
根据公开资料和行业实践,ESMM调优有几个关键点:
网络深度平衡:
- CTR塔通常更深(4-6层)
- CVR塔相对较浅(2-4层)
损失权重设计:
- 初始阶段可设置CTR:CTCVR=1:1
- 根据业务指标动态调整
正则化策略:
- 共享层使用较强的L2正则
- 任务专用层适当降低正则强度
典型参数配置:
| 参数 | 推荐值 | 作用 |
|---|---|---|
| 嵌入维度 | 16-64 | 特征表示能力 |
| 隐藏层大小 | 256-1024 | 模型容量 |
| Dropout率 | 0.2-0.5 | 防止过拟合 |
| 学习率 | 1e-4-1e-3 | 训练稳定性 |
4. 业务效果与行业影响
4.1 阿里妈妈的实际成效
在阿里电商广告系统中,ESMM带来了显著提升:
- CVR预估准确性:AUC提升约5-8%
- 广告收入增长:RPM提高3%以上
- 冷启动表现:新商品CTR预估误差降低40%
这些改进源于:
- 更准确的转化率预测
- 更好的长尾流量利用
- 更合理的广告排序
4.2 行业应用扩展
ESMM的思想已被广泛应用于:
电商推荐系统:
- 预估"点击→加购"、"加购→购买"等多步转化
- 京东、拼多多等平台均有类似改进
内容平台:
- 预测"曝光→点击"、"点击→完播"
- 抖音、快手等短视频平台的应用
金融服务:
- "浏览→申请"、"申请→放款"转化链路
- 提高金融产品营销效率
在实际部署中发现,ESMM结构对计算资源的需求相对合理。相比单独训练CTR和CVR模型,ESMM的增量成本主要来自:
- 额外的CVR塔计算
- CTCVR的概率相乘操作
- 更大的样本空间带来的数据吞吐
但在大多数现代推荐系统中,这些成本增加通常能被效果提升所抵消。一个经验法则是:当点击率低于5%时,ESMM的收益会特别明显;而对于高点击率场景(如社交feed流),传统单任务模型可能仍然足够。
