【FCon上海】与行业领袖共话AI大模型、数字化风控等前沿技术。 了解详情
写点什么

一矢多穿:多目标排序在爱奇艺短视频推荐中的应用

  • 2021-07-07
  • 本文字数:4917 字

    阅读完需:约 16 分钟

一矢多穿:多目标排序在爱奇艺短视频推荐中的应用

AI 大模型超全落地场景&金融应用实践,8 月 16 - 19 日 FCon x AICon 大会联诀来袭、干货翻倍!

短视频具有内容丰富、信息集中、用户粘性大的特点,如何提高短视频分发的效率推荐精准度,有效提升消费时长、留存等关键业务指标,是推荐系统的核心能力和建模目标。


本文主要分享在短视频推荐场景下,爱奇艺基础推荐团队在排序模型多目标优化方面的历史进展。第一部分主要介绍多目标建模的业务背景,第二部分介绍爱奇艺在短视频推荐业务多目标建模方向尝试和实践的多种方案,最后是简单的总结和在多目标建模方向的规划

背景

在爱奇艺短视频推荐业务中,主要流量形态两个部分组成:


(1) 爱奇艺 APP 底 Tab 的随刻视频以及顶导航的热点模块


(2) 爱奇艺随刻 APP 首页短视频流推荐页面




图 1:短视频推荐页面


用户在 feed 流页面的行为分为:


显示反馈:点击播放,点击 up 主头像、关注、点击/发布评论、收藏、点击圈子、分享等正向互动行为,点击不喜欢、举报等负向行为。


隐式反馈:播放时长、完成率、用户快速划过等行为。


起初排序模型是以点击+时长多目标模型,随着业务发展和模型迭代,我们需要兼顾用户评论、点赞等强互动行为的生态收益,减少用户短停等负向内容的推荐。因此,我们在推荐系统多目标建模方向进行了一系列的尝试和实践,并在短视频推荐业务完成了技术落地,实现了人均播放时长提升 7%+、互动提升 20%+等各项指标的正向收益。

多目标在短视频推荐业务中的实践

1.融合时长权重的点击率预估模型

在基于 ctr 预估的视频推荐中,普遍采用 YouTube 的权重策略


将正样本的播放时长作为样本权重,用加权的逻辑回归训练分类任务。


该策略会造成长视频的权重较高模型偏向推出长视频。综合来看,无论将播放时长还是完播率作为样本权重,都会导致模型对长短视频有所偏重。


因此,权重设计方案应确定合理的假设视频推出质量与视频长度无关,且在视频时长的各区间下应近似均匀分布。即在任何区间下,样本权重的均值大概相同。则有:

采用等频分桶的方式,对一定时间窗口内的播放样本按照 duration(视频时长)排序分散到 100 个桶,确保同一桶中视频观看数相同。进一步地对每个 duration 桶按照 playtime(播放时长)排序再次等频分散到 100 个桶,并将权重归一化到[0,99]的区间整数。因此对所有样本,均可按照(duration,playtime)确定固定的分桶坐标权值


图 2:对视频时长和播放时长进行分桶


在确定整体的权重计算框架后,进一步对 playtime 较高的样本权重进行整体提升。预期优化消费时长的指标,同时控制长视频的偏向。具体的 boosting 方案:

其中,Am 是上界值,shift 是下界值,offset 是时长偏移量,slope 是斜率。


为了完善视频生态,保证新老视频的权重具有一定的区分度。我们融合了视频年龄(用户行为时间-视频发布时间)对样本降权(年龄越大,权重越低)。同时,为了能够使权重配置及时拟合整体用户最近的消费习惯,在保证任务产出效率的基础上,分别对不同平台用户生成特定权重配置,实现了周期性更新


线上收益:人均播放时长提升 3%,UCTR 提升 0.2%


这种方案的优缺点:


优点:融合样本分布信息,拟合近期消费习惯。模型调节简单,可快速上线迭代。


缺点:将时长转为样本权重影响训练 loss本质并非对多目标建模,而是将不同目标的信息转移到统一的目标上优化。而且时长信息利用不够充分,收益有限。

2.多模型融合

图 3:多模型融合


多模型融合是指分别对每个目标训练一个模型,各预估得分根据目标重要性、业务指标需求等策略相加/相乘后进行融合排序。


在这里,我们分别训练纯点击的二分类模型以及观看时长预估的回归模型。在离线调节融合参数时,采用 grid search 的方式选择更好的组合值。


这种方案的优缺点:


优点:模型单独训练,只需要让单个模型达到“最好”,不需要考虑其它目标。


缺点:多个目标重要性难以估算,组合困难;考虑到数据集分布和模型训练的稳定性变化,需要评估模型更新和组合参数的更新时机;在线服务计算量大,请求时长取决于较复杂的模型且资源消耗巨大;如果增加的新目标数据比较稀疏,难以进行有效的模型训练和迭代。

3.多任务学习-网络优化

随着爱奇艺随刻 App 朝着社区化的方向建设,要求 feed 流推荐效果在保证用户观看时长、观看视频数、点击率等基础指标稳定的情况下,引导用户评论、点赞等互动。基于业务现状和之前的迭代基础,我们在多任务学习上进行了一系列探索和实践。


在深度学习领域,多任务学习通常共享底层表示,将多个任务放在一起学习,通过浅层的共享促进相互学习。同时,由于反向传播优化联合 Loss,会兼顾多任务间的约束关系,因此能够有效防止过拟合。


目前工业界主要有两种方法对多任务进行建模:


(1)任务序列依赖关系建模;


(2)优化底层共享表示。

3.1 任务序列依赖关系建模

图 4:基于 ESMM 的方案


推荐场景中,用户的行为通常具有序列依赖关系,在阿里 ESMM 的文章[1]中,用户的转化行为是发生在用户点击之后,因此基于序列依赖进行建模。如图 4 所示,对比 feed 流场景,点击是时长或者互动的前提,可以把点击 &时长,或者点击 &互动作为 ESMM 迭代的方向。实现上,互动作为主任务,点击作为辅助任务,时长作为二者的正例权重,离线训练时两者 loss 直接相加。我们曾经尝试过对两个目标预估值进行变化以及时长更多的 Label 制定方式,但线上效果均持平微正。


小结:点击和互动没有绝对的联系点击 &时长 &互动,不适合 ESMM 应用场景;互动行为非常稀疏,训练效果较差;多个目标的 loss 直接相加,难以平衡对每个目标任务的影响,对模型训练造成扰动;不同目标可能差异较大,难以共享底层表示。

3.2 MMOE+帕累托优化

我们分别对观看时长和评论数 Top 100 的视频进行对比分析,发现重合度较低、排序差异很大,强制底层共享存在冲突。因此,我们采用了谷歌 MMOE[2][3]的方案,但是考虑到联合 Loss 需要进行大量超参调节,可能出现目标一涨一跌的现象,因此使用帕累托优化保证原有目标效果不降低的情况下,提升互动效果。


图 5  MMOE 模型结构


MMOE 模型底层通过采用 Soft parameter sharing 方式,能够有效解决两个任务相关性较差情况下的多任务学习。

图 6 基于 MMOE+帕累托优化的方案


帕累托优化主要参考阿里 2019 年发表于 RecSys 上的一篇文章[4],对比手动调节联合 Loss,该论文使用 kkt 条件来负责各目标权重的生成。大体步骤(如图中 Training 虚线框内所示):


(1) 均匀设置目标权重值(可更新的),同时设置权重边界值超参,运行 PE-LTR 算法在训练过程中不断更新权重值;


(2) 通过设置不同的权重边界值超参,多次运行训练任务,根据目标的重要性挑选效果最好的模型。


线上收益:互动率提升 20%,人均播放时长提升 1.4%。


小结:实际使用中权重边界值对模型效果影响较大,需要多次调优确定;多目标权重在前期已基本收敛,中后期浮动较小;此帕累托优化方案应用于离线训练,在线服务部分仍需要其它策略。

4.多任务学习-融合优化

除了对网络结构进行优化,我们对模型推理阶段的多目标输出组合进行了优化,同时,加入了完播率时长目标,模型 Serving 时,通过融合各预估分实现多目标的协调和折中处理,保证模型对各个子目标的排序均有较好的效果。因此在进行多目标建模时,首先优化联合 Loss,保证各目标的离线效果均较优;然后对各子目标进行融合排序,实现多目标的权衡和整体提升。

4.1 乘法融合升级

在线推理时,使用可适配多种融合方案的超参配置。在多目标融合初期,我们采用了加权和的方式。由于最终的排序得分对各子目标的得分值域很敏感,因此我们增加α和β两个超参,来联合调节各子目标得分的灵敏度与提升比例。

其中,αi:超参,灵敏度;scorei: 模型 i 的输出;βi:超参,提升比例,非线性处理;factor:超参,组合权重;n:模型数量


在业务的目标较少时,通过加法方式融合新增目标可以短期内快速获得收益。但随着目标逐渐增多时,加法的融合排序能力会逐渐受限。主要包括:


(1)对于新增目标乘法融合具有一定的目标独立性,无需考虑旧目标集的值域分布;


(2)随着目标逐渐增多,加法融合会逐步弱化各子目标的重要性影响。


因此我们对多目标的融合方式升级为乘法:

线上收益:CTR 提升 1.5%,人均播放时长提升 1%。

4.2 任务序列依赖关系建模

为了提升短视频的播放渗透,促使用户深度消费,我们新构造了三个目标:


(1)通过限定完播率阈值构造完播二分类目标,以近似满足逻辑回归的假设条件;


(2)拟合平滑后的播放时长作为回归目标;


(3)限定播放时长阈值,构建有效播放的二分类目标。


对于回归目标,采用正逆序对比(PNR,positive-negative-ration)来评估多目标预估值融合后的排序效果。最终在随刻首页 feed 流和爱奇艺沉浸式场景中均取得播放量和人均时长的显著提升。


线上收益:UCTR 提升 1%,CTR 提升 3%,人均播放时长提升 0.6%。

4.3 PSO[5]进化优化算法

无论对预估分使用加法还是乘法方式融合,模型 Serving 时的超参均是通过 Grid Search 得到离线较优的几组解。需要离线搜参以及线上 AB 才能最终确定,效率较低。随着模型的迭代和样本分布的改变,最优解也在变。因此我们借鉴了多目标进化优化算法的思路,基于启发式的粒子群算法(PSO,Particle Swarm Optimization)搜索融合参数,逼近多目标的 Pareto 前沿


PSO 算法通过初始化一群随机粒子,启发式地多次迭代求出最优解。每一次迭代,粒子通过个体极值(该粒子所经过的最优解)和群体极值(种群找到的最优解)来更新各自位置。最终所有粒子会兼顾个体的历史最优和群体共享的全局最优直至收敛。


基于 PSO 算法进行多目标搜参首先初始化参数;通过乘法融合得到每个视频最终的排序分并计算各子目标的 AUC;根据指标的重要性对完播率分类的 AUC、播放时长的 PNR 等确定权重,定义总的优化目标:

最后通过持续迭代,使得总评估目标 Obj 最大,即得到各子目标的超参数α、β。图 7 为总目标得分 Obj 随迭代步数的收敛曲线。


图 7:总目标得分的收敛曲线


搜参任务需要保证总目标的定义足够完美,保证粒子的优化方向不至于被某个子目标带偏,此外验证集的无偏性和一致性也是效果一致的重要保证。进一步地我们将 PSO 搜参过程部署到集群实现模型和融合参数的同步更新,大幅降低人工调参的成本。


小结:无论融合方式的升级还是搜参方式的优化,均是离线搜参后部署到线上生效。场景、运营流量等影响,离线指标和业务指标存在 gap。离线寻参容易获得短期收益,但无法动态调整及时适应样本分布的变化。后续结合用户的实时日志、特征等,对在线自动搜参展开持续探索;以及模型化拟合参数,尝试提升个性化和实时性。

总结与展望

本文总结了爱奇艺短视频推荐技术排序阶段多目标的优化,对样本权重优化模型结构、多目标融合等多角度进行了一系列的探索和实践,在线上取得了一系列的收益。后续,我们将会从 3 个方向继续探索:


(1)跨场景的多目标学习:结合多场景的数据学习用户兴趣,优化主/辅助任务,并应用到更多场景中;


(2)优化模型:包括梯度优化、底层共享的设计、Loss 设计、不同任务对梯度的影响等;


(3)在线搜参:开发自动调参框架,利用一部分流量进行探索,实时动态调整等。


参考文献

[1] Ma X, Zhao L, Huang G, et al. Entire space multi-task model: An effective approach for estimating post-click conversion rate[C]//The 41st International ACM SIGIR Conference on Research & Development in Information Retrieval. 2018: 1137-1140.


[2] Ma J, Zhao Z, Yi X, et al. Modeling task relationships in multi-task learning with multi-gate mixture-of-experts[C]//Proceedings of the 24th ACM SIGKDD International Conference on Knowledge Discovery & Data Mining. 2018: 1930-1939.


[3] Zhao Z, Hong L, Wei L, et al. Recommending what video to watch next: a multitask ranking system[C]//Proceedings of the 13th ACM Conference on Recommender Systems. 2019: 43-51.


[4] Lin X, Chen H, Pei C, et al. A pareto-efficient algorithm for multiple objective optimization in e-commerce recommendation[C]//Proceedings of the 13th ACM Conference on Recommender Systems. 2019: 20-28.


[5] Kennedy J, Eberhart R. Particle swarm optimization[C]//Proceedings of ICNN'95-international conference on neural networks. IEEE, 1995, 4: 1942-1948.


本文转载自:爱奇艺技术产品团队(ID:iQIYI-TP)

原文链接:一矢多穿:多目标排序在爱奇艺短视频推荐中的应用

公众号推荐:

AGI 概念引发热议。那么 AGI 究竟是什么?技术架构来看又包括哪些?AI Agent 如何助力人工智能走向 AGI 时代?现阶段营销、金融、教育、零售、企服等行业场景下,AGI应用程度如何?有哪些典型应用案例了吗?以上问题的回答尽在《中国AGI市场发展研究报告 2024》,欢迎大家扫码关注「AI前线」公众号,回复「AGI」领取。

2021-07-07 13:003585

评论

发布
暂无评论
发现更多内容

Python爬取微信公众号文章保存到数据库

wjchenge

企业网站搭建避坑指南

姜奋斗

网站 新手指南 企业 网站搭建 避坑

learn go with tests 学习笔记(一) hello world

半亩房顶

Go 语言

learn go with tests 学习笔记(四)依赖注入

半亩房顶

Go 语言

learn go with tests 学习笔记(五)并发

半亩房顶

Go 语言

learn go with tests 学习笔记(六)进程同步

半亩房顶

Go 语言

RocketMQ源码解析-开篇

Edison

RocketMQ 中间件

Netty之旅:你想要的NIO知识点,这里都有!

一枝花算不算浪漫

Netty nio

我是如何参与硅谷顶级开源项目并赚得2500美金

阿水

硅谷 Minio

Executor看不懂?教你如何盘它

Edison

后端 线程池

Java项目如何分层

老胡爱分享

分层架构 项目

Web 开发必须掌握的三个技术:Token、Cookie、Session

华为云开发者联盟

HTTP Token web开发 session Cookie

500行代码写一个俄罗斯方块游戏

程序员生活志

人生修炼秘籍

xiaoboey

时间管理 人生修炼 知行合一 熵增 时间复利

learn go with tests 学习笔记(三) 指针和错误

半亩房顶

Go 语言

learn go with tests 学习笔记(七)反射

半亩房顶

反射 Go 语言

零代码/无代码 vs 低代码 如何分类?如何区别?到底有什么不同?分析超过20款零代码低代码产品

代码制造者

编程 低代码 行业资讯 零代码

《effective-go》 学习笔记

半亩房顶

Go 语言

政策加持迎来区块链技术应用“红利期”

CECBC

关于微服务架构思考

Axe

疫情之年 下半年区块链应用落地会加速么?

CECBC

区块链 场景应用落地

话题讨论 | 特朗普正式封禁微信,iPhone 和微信二选一?

InfoQ写作社区官方

写作平台 话题讨论

MySQL事物-学习笔记

Edison

MySQL 数据库 数据库事务

learn go with tests 学习笔记(二) 数组与切片

半亩房顶

Go 语言

“啰嗦”是成事唯一正确的方法

霍太稳@极客邦科技

团队管理 个人成长 团队协作 沟通

消息疯狂堆积!RocketMQ出Bug了?

Edison

RocketMQ 中间件

nested exception is java.lang.IllegalStateException: refreshAfterWrite requires a LoadingCache异常解决

谙忆

菊长说丨一文读懂MySQL4种事务隔离级别

华为云开发者联盟

MySQL 数据库 事务隔离级别 事务 华为云

字符串匹配 - Sunday算法

半亩房顶

数据结构与算法 字符串匹配算法

用户体验(UX)设计≠用户界面(UI)设计

刘华Kenneth

敏捷 设计 UX 用户体验

数据采集能力受限?企业数字化运营如何迈出第1步

易观大数据

一矢多穿:多目标排序在爱奇艺短视频推荐中的应用_AI&大模型_爱奇艺技术产品团队_InfoQ精选文章