RecSys:多目标模型和MMOE
排序01:多目标排序模型
模型结构
该模型将以下特征作为输入,输出多个指标的预估结果:
- 系统对每篇笔记记录以下行为数据:
- 曝光次数(Number of impressions)
- 点击次数(Number of clicks)
- 点赞次数(Number of likes)
- 收藏次数(Number of collects)
- 转发次数(Number of shares)
基于这些数据计算以下指标:
指标名称 | 计算公式 | 说明 |
---|---|---|
点击率(CTR) | 点击次数/曝光次数 | 基础转化指标 |
点赞率 | 点赞次数/点击次数 | 需有点击才会产生 |
收藏率 | 收藏次数/点击次数 | 深度互动指标 |
转发率 | 转发次数/点击次数 | 重要扩散指标(能为平台带来新流量) |
排序机制:
- 模型同时预估点击率、点赞率、收藏率、转发率等多个分数
- 通过加权融合这些分数(权重通过A/B测试调优)
- 根据融合分数进行排序和截断
模型架构和输入:
- 用户特征:用户ID和用户画像
- 物品特征:物品ID、物品画像(包括作者信息)
- 统计特征:
- 用户统计:过去30天的曝光量、点击量、点赞量等
- 物品统计:过去30天的曝光量、点击量、点赞量等
- 场景特征:
- 时间特征(是否节假日等)
- 地理位置特征(用户与物品的地理关联性)
模型训练
损失函数设计:
- 单个指标使用交叉熵损失,总指标使用加权和
- CrossEntropyLoss=−(y(logpi)+(1−y)log(1−pi)CrossEntropyLoss = - (y(\log p_i) + (1 - y)\log(1 - p_i)CrossEntropyLoss=−(y(logpi)+(1−y)log(1−pi)
- 总的损失:∑i=14αiCrossEntropyLoss(yi,pi)\sum_{i =1}^4 \alpha_i CrossEntropyLoss(y_i,p_i)∑i=14αiCrossEntropyLoss(yi,pi)
- 对损失函数求梯度,做梯度下降更新参数
关键问题:降采样与校准
问题背景:
- 正负样本严重不平衡(典型比例):
- 点击率:10次点击 vs 90次无点击
- 收藏率:10次收藏 vs 90次无收藏
解决方案:
-
负采样降采样(Down-sampling)
- 保留部分负样本(如从90个负样本中保留10个)
- 使正负样本数量平衡
- 显著减少计算量
-
预估值校准
- 定义:
- 真实点击率:Ptrue=n+n++n−P_{true} = \frac{n_+}{n_+ + n_-}Ptrue=n++n−n+
- 采样后预估点击率:Ppred=n+n++αn−P_{pred} = \frac{n_+}{n_+ + \alpha n_-}Ppred=n++αn−n+ (α\alphaα为采样率)
- 校准公式:
Ptrue=α⋅Ppred(1−Ppred)+α⋅PpredP_{true} = \frac{\alpha \cdot P_{pred}}{(1-P_{pred}) + \alpha \cdot P_{pred}}Ptrue=(1−Ppred)+α⋅Ppredα⋅Ppred - 实际应用:
- 模型输出原始预估点击率
- 通过校准公式调整后用于排序
- 定义:
排序02:MMOE模型(Multi-gate Mixture-of-Experts)
模型特点:
- 多目标排序框架
- 使用多个独立专家网络(参数不共享)
- 通过门控机制动态组合专家特征
核心架构:
- 专家层(Experts):多个独立的神经网络
- 门控网络(Gates):
- 每个任务对应一个门控网络
- 通过softmax生成专家权重
- 任务塔(Towers):每个任务有独立的输出层
极化问题(Polarization):
- 现象:门控网络可能过度依赖少数专家(如权重变为[0,0,1])
- 解决方案:
- 对softmax输出应用dropout(10%丢弃率)
- 强制每个任务利用多个专家特征
- 提升模型鲁棒性
应用建议:
- MMOE不一定在所有场景都有效
- 需要根据业务特点进行调整
- 可参考YouTube的改进方案
参考文献:
- He X, et al. Practical lessons from predicting clicks on ads at Facebook. In: The 8th International Workshop on Data Mining for Online Advertising.
- Ma J, et al. Modeling Task Relationships in Multi-task Learning with Multi-gate Mixture-of-Experts. In: KDD 2018.
- Zhao Z, et al. Recommending What Video to Watch Next: A Multitask Ranking System. In: RecSys 2019.
- 王树森推荐系统公开课