百度视频推荐跨域多目标预估与融合的实践和思考
来源:51CTO.COM
时间:2023-12-01 13:20:04 201浏览 收藏
哈喽!今天心血来潮给大家带来了《百度视频推荐跨域多目标预估与融合的实践和思考》,想必大家应该对科技周边都不陌生吧,那么阅读本文就都不会很困难,以下内容主要涉及到,若是你正在学习科技周边,千万别错过这篇文章~希望能帮助到你!
一、百度视频背景介绍
1、统一产品形态
一方面,百度 APP 的所有视频场景已经升级成统一的沉浸式(上下滑)交互形态;另一方面,基于百度统一的大模型,我们打通了所有场景的数据和推荐体验。交互和数据的统一可以更好地实现生态共赢,促进百度视频的长远发展。
为了更好地培养用户对视频的消费习惯,我们还打造了一个视频消费的一级入口(底部导航栏入口)。大家如果有兴趣可以去下载百度 APP,有好的建议和 badcase 随时欢迎反馈给我们。
2、搜+推双引擎满足用户需求
值得一提的是,百度是做搜索起家,搜索的使用率极高,在推荐场景中需要更好地使用搜索的数据,通过”搜+推”双引擎来满足用户的需求。搜索主要是“人找内容”,用户会明确地输入自己的需求,而推荐是“内容找人”。将搜索的信号和推荐的信号进行跨域整合,做到更好的推搜融合,这也是百度的优势之一。
二、推荐系统概述
1、推荐系统解决的问题
由于听众中有相当一部分人对推荐技术缺乏了解,因此有必要简单介绍推荐技术要解决的问题。推荐平台有三个玩家:
- 用户:在这里探索世界、发现新的感知。
- 创作者:平台推荐的基础,为平台提供内容供给;平台为其提供广阔的空间,激发他们无限的灵感和创作。
- 广告主:提供平台生存下去的资金支持,大部分平台都是以广告为生。
推荐平台希望实现生产、消费和收入的良性循环,推荐系统作为平台的核心部件,主要解决两方面的问题:
- 优胜劣汰的内容选择机制(B 端):优质的内容如何获得更多的分发,留住优质的创作者。
- 极致的用户消费体验(C 端):只有用户诉求得到满足了,才能促进规模上的持续提升。
在设计目标时,我们需要综合考虑推荐系统的两个使命
2、推荐系统概览
推荐系统的流程大致如下:审核后的资源会先推送到存储 meta 信息的统一正排库;推荐系统收到请求后,先通过图引擎、多目标召回等,召回相关资源;召回之后会经过两轮排序,分别为粗排和精排,再经过多目标的融合模型,选出一些与用户强相关的内容;最后通过多样性感知、序列建模、流量分配机制等策略,生成一个视频列表,下发到用户的手机。
下面的内容将主要关注于精确排列的目标设计和模型的融合
三、多目标的设计和建模
首先,我们要介绍的是多目标设计在视频推荐中的应用
1、目标设计的思考
先请大家思考一下视频沉浸式的场景下,如何设计推荐系统的目标呢?
在传统的推荐系统中,用户通过点击内容或视频来消费资源,从而明确表达了对该资源的喜好。因此,在传统推荐场景中,点击行为是非常重要的信号,也是一种明确而简单的反馈方式。然而,在沉浸式场景中,由于缺乏明确的反馈,用户的喜好往往通过“隐藏”的行为来表现,此时观看时间成为沉浸式推荐场景中极其重要的信号
除了上述消费时长以外,还需要考虑用户在系统中主动留下的行为,比如关注、评论、分享、点赞。然而,与播放数据相比,这些行为数据非常稀疏,可能只有千分之一这个量级
除了这些交互信号以外,在百度 APP 的推荐里面还有一部分很重要的数据就是搜索信号,在百度 70% 的用户既会消费推荐信息流,又会用搜索,因此推荐系统也需要刻画用户搜索域的满意度信号。
B端的创作者需要一套竞争机制,以除C端用户满意的消费信号外,筛选出劣质创作者,激发优质创作者的创作潜力,从而实现生产和消费的良性循环
2、目标设计考虑的维度
从推荐系统角度看,用户就是样本标注员,用户有一些明确的正向表达,比如播放、点赞、收藏、评论等行为;还有一些明确的负向表达,比如 Dislike、负向评论、举报等等。除了明确表达,用户还会有一些隐式的表达,比如通过完播、播放时长、作者页消费、阅读相关推荐等表达出的喜欢,或是通过短播、快速跳出等表达出的不喜欢。因此在设计目标的时候,要全方面地思考,平衡明确的信号和隐式的信号,避免设计出一个“偏科”的推荐系统。
3、综合满意度建模
除了上述基础目标,我们还会设计一些高阶的目标,不再是简单地使用用户的反馈。举个例子,如上图右侧所示,我们上线了基于用户满意度反馈的模型。第一阶段,通过完播、时长这种稠密的信号,利用简单的规则或者模型去拟合用户的满意反馈,得到一个比较稠密的用户满意度 label。第二阶段,基于这个 label 建一个满意度模型,利用推搜全域大模型产生的 Embedding、文心底层 Embedding,以及用户画像和行为序列特征建模,以评估推荐域相对于搜索域的满意度增益。如果某个兴趣点用户在搜索里消费过了,推荐系统可以基于该满意度模型推荐出更优质的内容,这样就可以使搜推融合更加平滑,将搜索的兴趣更好地迁移到 Feed。
4、长期价值建模(Long Term Value)
在前文中介绍了如何预估当前内容的播放时长和互动。我们可以利用用户的历史消费行为作为样本或特征,来预测即将推出的内容是正反馈还是负反馈,以及是否会有互动和消费的满意情况
我们可以进一步思考,用户未来的消费内容与当前消费的内容是否有关系?举例来说,如果用户现在正在观看郭德纲的视频,那么如果在接下来的第N天他们继续消费于谦的视频,那么这些于谦的视频是否是由郭德纲的视频“激发”而来的呢?消费未来的兴趣点是否可以被视为当前兴趣点的“延续”呢?答案是肯定的。因此,我们在系统中引入了LTV的体系,将未来长期价值的内容归因于当前视频的推荐
假设 V0 是当前视频的价值,V1,V2,… Vn 是用户未来消费的视频,假设 V2 和 Vn 是满意的消费,并且是 V0 的一个延续,就可以将其归因到V0 。
归因方式有多种,根据百度 Feed 的业务场景,归因包括以下三大块:
- 功能的归因:如通过相关推荐看了挂载的资源,那么这部分资源消费信号可以归因到 V0 上来。
- 召回关联的归因:如召回阶段是通过 itemCF 等隐式召回的。
- 相关性关联:如通过多模态 embedding 或者推荐大模型的 embedding 可以衡量资源之间的相关性,比如 Vn 和 V0 有比较高的相关性得分,就可以把 Vn 的价值归因到 V0 上来。
当然这个归因是有权重的,我们通过距离 V0 的时间间隔,和 V0 的相关性等因子来调节用户未来消费视频的归因权重,从而得到当前视频 V0 的长期价值。有了长期价值目标后,学习就比较简单了,首先是目标的归一化,然后直接建模即可。
基于对业务现状的抽象和梳理,我们在设计推荐系统目标时会从以下三个方向入手进行简单总结
- 多目标,首先进行基础物理目标建模,接下来是一些高阶目标的建模,刻画全场景的满意度,同时还需要对生态进行调控。
- 刻画未来的价值。
- 除了资源维度还可以考虑其他维度,例如作者维度的建模。
要综合考虑各个发展方向,推荐系统的目标需要从多个角度出发
5、百度 Feed 模型技术变革联动体验进化
百度现在推荐场景的发展已经分为三个主要场景:
- 「推荐」信息流:已经存在了很多年。
- 『发现』场景:相比之下,主 Feed 偏信息资讯,『发现』则更轻松活泼,贴近生活。
- 「沉浸式」场景:纯视频形态的消费流。
百度产品的发展演变,导致了排序目标的逐步改变。最初只有单个领域的主要目标,然后发展为多领域多目标,现在已经实现了全领域的综合建模,将多个领域的样本整合在一起,实现信息的充分共享。下面将介绍全领域综合建模的具体内容
6、跨域多目标建模
首先,我们来看一下业界都做了哪些工作。无论是MMoE、PLE,还是阿里在做的STAR网络、PEPNet等这些结构,以及谷歌、腾讯等公司,都在不遗余力地根据自己的业务设计各种各样的网络结构,希望在异构场景下共享更多有用的信息。这些工作主要解决了两个问题:
- 跨域信号的迁移问题,如何在两个不同的域之间更好地迁移,实现跨域信息共享。
- 多目标之间负迁移的问题,即多目标的跷跷板效应。
同样百度推荐系统也面临这两个问题。
百度的场景下存在许多不同的子域目标,而这些目标之间的相关性较低,这可能导致多个目标之间发生负迁移。为了解决这个问题,需要分析不同目标之间的 PNR,并找出它们之间的相关性差异。也就是说,在异构场景下如何描述用户信息,以及如何实现异构信息的迁移,这是模型结构需要解决的问题
根据百度的业务需求,我们设计了一种跨域分层多目标网络结构,采用 Gating 结构。这个结构主要分为三层:首先是个性化的共享网络作为底层;第二层是跨域信息提取的 GCG 网络;最后一层是子域的多目标网络。通过这样的设计,我们可以在共享信息的同时,对每个域进行多目标预估
这套方案与单域多目标相比有着显著提升,初次上线 AUC 约提升 3-9 个千分。如上图右下角所示,获取用户特征在多个域的 embedding,做了一个 TSNE 降维后,除了搜 C 和二跳这两个比较接近以外,其它两个场景的区分还是比较明显的,说明模型可以学到场景间的差异。搜 C 和二跳两个场景区别不大也是合理的,都是视频场景,用户的交互和兴趣也都差别不大。
百度业务场景有 40 多个物理目标,还有 4 个大的子域,6 种形态,包括视频、图文、动态、小程序等。我们希望模型在众多复杂业务中都能有较好的表现。简单介绍一下模型结构。第一层是 common 网络,作为分域的底座,筛选各个场景中多目标的满意样本,通过 gate 网络实现个性化 embedding 映射。第二层是域间信息的提取,将域内独有的特征和个性化共享特征通过 CGC 网络实现。两者共同构建了跨域的信息提取,其好处是既保留了域内的信息丰富度,同时又提取出了异构场景的共享信息。第三层是子域的多目标建模。这块我们还有对应的论文在发表中,对细节感兴趣的朋友可以看论文。
四、多目标融合
百度的多目标融合演进过程与业界相似。首先是先验知识融合,虽然简单直接,但需要耗费大量人力。接着我们升级到了LTR,效果显著,但弊端是当业务变化时需要频繁调整,同时偏序关系也会随着业务和用户分层的变化而变化。之后,我们采用了多目标融合价值模型,使用序列最优的方法。短期使用后,我们升级到了现在正在使用的方法——ES(Evolution Strategy)进化学习
要使用ES,首先需要定义一个奖励,即北极星指标。百度的奖励是会话的深度(时长+步长)和互动,时长和步长对应的业务指标是时长和视频播放量,这两个指标反映了用户的留存,即LT。此外,还有互动信息,代表了用户在APP中资产的积累,例如关注作者的行为,实际上是希望在作者有更新后能够找到。不管是提高消费次数还是互动数量,都是希望用户能够更长期地使用这个APP
我们的初始版本是一个简单的启发式模型,而当前线上的 ES 则进行更高级的计算,比如引入不同场景和人群的信息
以上就是《百度视频推荐跨域多目标预估与融合的实践和思考》的详细内容,更多关于推荐系统,跨域多目标建模的资料请关注golang学习网公众号!
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
314 收藏
-
486 收藏
-
340 收藏
-
148 收藏
-
432 收藏
-
379 收藏
-
353 收藏
-
486 收藏
-
478 收藏
-
290 收藏
-
158 收藏
-
224 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 立即学习 542次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 立即学习 508次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 立即学习 497次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 立即学习 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 立即学习 484次学习