@多目标排序在快手短视频推荐中的实践

链接:多目标排序在快手短视频推荐中的实践 (qq.com),郑东,快手推荐算法技术总监

想法

  • 分享主要内容是排序机制和重排,还看不太懂。

摘录

  • 用户反馈

    • 隐式正反馈

    • 显式正反馈

    • 隐式负反馈

    • 显式负反馈

  • 多目标精排

    • 手工融合和简单模型融合

      • 多个预估值融合成单一的排序分

      • 树模型规则 ensemble 融合

        • 利用特征得到组合 label

        • 上下滑无负样本,通过拷贝正样本实现对目标无偏估计

        • RuleFit,用树来做打分规则

image.png

+ #### 超参 Learn To Rank

  + dnn 拟合组合收益,通过学习线性加权的超参数去拟合最终组合收益

    + photo_top,24维,各种个性化预估值

    + user_top,24 维,用户特征(比如对用户划分不同的时间窗口:过去1分钟、5分钟、15分钟、...、2小时,每个时间窗内,对推荐给他的视频,根据用户的反馈拼接成一个向量,这些反馈包括有效播放、点赞、关注、分享、下载、观看时长等,最后,将各时间窗口对应的反馈向量和ID类特征一起输入到用户侧网络。)

image.png

+ #### 端到端Learn To Rank

  + pointwise 更复杂特征和网络结构,模型表达力更强。

  + pairwise

    + 样本构造,一次请求 6 个视频,针对每个目标都构造偏序对

    + dnn 打分,sigmoid 变换,交叉熵损失产出 loss

      + $\begin{gathered}s_{i j}=\sigma\left(s_i-s_j\right) \\ \operatorname{loss}{ }_{l i k e}^{i j}=y_{i j} \cdot \log \left(s_{i j}\right)+\left(1-y_{i j}\right) \log \left(1-s_{i j}\right)\end{gathered}$

    + 不同目标 loss 线性加权,从而兼顾多个目标的权重

    + 效果上看做对不同目标的 auc 加权求和,auc 本质上是一个偏序的关系。

image.png

  • 复杂多目标:Ensemble Sort和在线自动调参

    • Ensemble Sort

      • 常规加权融合有问题

      • 个子项分内做 Normalize 优化,把子项分转化为序,再转化成一个分数。

    • 在线自动调参

      • 离线学习 Learn2Rank

image.png

  + 在线自动调参

    + CEM

image.png

  + 噪声

image.png

  • 重排序

    • Listwise Rerank

      • 上下滑场景采用 rerank 可以获得组合收益,如果排列用户喜欢和不喜欢的视频,可以提升用户浏览数量。

      • 离线评估,左边表格,做 transformer 后推荐结果的 auc 和 dnn 基线,下图位次增加 auc 逐渐提升

image.png

+ ####  强化学习 Rerank

  + 贪心选择,LSTM 建模前序特征

  + 策略梯度, [[GAE]]

image.png

  + 使用仿真器训练

    + on-policy 训练更加稳定

image.png

+ #### [[端上重排]]

  + 端上网络结构使用 [[TFLite]]

image.png

  + 模型特征和结构

    + Transformer 建模用户实时反馈和各种序列

image.png

  • 总结和展望

    • 帕累托最优

image.png

@多目标排序在快手短视频推荐中的实践

https://blog.xiang578.com/note/wx_MzU1NTMyOTI4Mw.html

作者

Ryen Xiang

发布于

2024-06-01

更新于

2024-10-05

许可协议


网络回响

评论