推荐系统排序阶段核心要点:多目标排序模型详解

在推荐系统中,排序阶段分为粗排和精排,二者原理相似,粗排旨在快速筛选,减轻精排计算负担。本部分聚焦多目标排序模型,深入剖析其关键内容。

  1. 排序依据与多目标模型基础:推荐系统排序主要依据用户对物品的兴趣,通过用户与物品的交互数据计算消费指标来衡量,如点击率、点赞率、收藏率和转发率等。多目标排序模型以此为基础,输入用户、物品、统计和场景等多种特征,输出对多个指标的预估值。
  2. 多目标排序模型结构与训练
    • 模型架构:多目标排序模型(MTL)输入多种特征,输出多个目标预估值。它通过神经网络进行特征处理,利用全连接层和 Sigmoid 函数得到点击率、点赞率等指标的预估值。
    • 训练策略:采用交叉熵损失函数,将多个任务的交叉熵损失相加作为总损失函数,通过梯度下降更新模型参数。然而,训练面临类别不平衡问题,负样本远多于正样本,通常采取负样本降采样策略解决,但这又会导致新问题。
  3. 预估值校准的必要性与方法:负样本降采样后,点击率会被高估,且多目标模型需要统一量纲,在广告系统中,精确的 CTR 对于计费至关重要,因此需要进行预估值校准。通过推导真实点击率和预估点击率的关系,得出校准公式,校准后的点击率可作为排序依据。
  4. MMoE 模型解析
    • 模型原理与结构:MMoE 是一种多目标排序模型,通过多个独立的 expert 塔提取特征,利用门控网络对多塔输出向量加权平均后送入多头。expert 网络数量和门控网络数量根据任务确定,门控网络由神经网络和 softmax 激活函数组成,输出概率值作为 expert 网络输出向量的权重。
    • 极化问题及解决:训练 MMoE 时,softmax 易出现极化现象,导致部分 expert 网络未被有效利用,模型退化为简单多目标模型。为解决此问题,训练时对 softmax 输出使用 dropout,降低极化发生的可能性。
  5. 预估分数融合策略:工业界常用多种融分公式融合点击率、点赞率等预估分数,如简单加权和、点击率乘以其他项的加权和等。不同公式适用于不同业务场景,如电商场景会考虑点击、加购物车、付款等环节的转化率,短视频平台则会关注播放时长等指标。
  6. 视频播放建模要点 :视频排序与图文排序不同,除用户交互行为外,播放时长和完播率是关键指标。
    • 播放时长建模:直接用回归拟合播放时长效果不佳,YouTube 的时长建模方式是将最后全连接层输出经 sigmoid 处理,通过最小化交叉熵损失进行训练,推理时将 exp (z) 作为播放时长预估,并融入融分公式。
    • 完播率建模:完播率建模可采用回归方法,让预估播放率拟合实际播放率;也可采用二元分类方法,但直接使用预估完播率对长视频不公平,需通过与视频时长相关的函数调整后,再融入融分公式。
相关推荐
小喵要摸鱼2 分钟前
【软考向】Chapter 3 数据结构
数据结构·算法·排序算法
luofeiju16 分钟前
摄像机模型
计算机视觉·3d视觉·多视图几何
chen_song_23 分钟前
CUDA的设备,流处理器(Streams),核,线程块(threadblock),线程,网格(‌gridDim),块(block)和多gpu设备同步数据概念
c++·人工智能·计算机视觉·数据挖掘·cuda编程·并行化计算·并行化计算与cuda编程
vibag23 分钟前
第十六届蓝桥杯复盘
java·算法·蓝桥杯·竞赛
Owen_Q25 分钟前
Leetcode百题斩-回溯
算法·leetcode·职场和发展
珹洺36 分钟前
计算机操作系统(十一)调度器/调度程序,闲逛调度与调度算法的评价指标
android·java·算法
L_cl42 分钟前
【NLP 77、Python环境管理工具之conda】
python·自然语言处理·conda
理论最高的吻1 小时前
HJ33 整数与IP地址间的转换【牛客网】
c++·算法·牛客网·ip地址转换
钰爱&1 小时前
【OpenCV】基本数据类型及常见图像模式
人工智能·opencv·计算机视觉
Jamence1 小时前
多模态大语言模型arxiv论文略读(八十九)
论文阅读·人工智能·语言模型·自然语言处理·论文笔记