一、短视频推荐两阶段约束强化学习算法
首先介绍的一项快手自研的 WWW 2023 Research Track 工作,主要解决短视频推荐场景下的带约束多目标优化问题。
在短视频推荐单列场景中,用户通过上下滑形式和系统进行交互,观看多个视频。用户对每个视频反馈 2 种信号,播放时长以及互动(关注、点赞、评论、收藏、分享等)。由于播放时长稠密与留存和 DAU 相关度高,短视频推荐系统主优化目标是提升总观看视频时长,这一问题可以由强化学习方法有效解决;另一方面,由于互动指标能一定程度地反应用户满意度,和留存有相关性,我们希望算法也能够满足互动指标约束,
因此本文将短视频推荐建模成一个约束强化学习问题(CMDP),目标是在满足互动指标约束情况下最大化视频播放时长。然而现有约束强化学习算法由于以下原因并不适用:第一单一 Critic 模型联合预估时长将会主导互动;第二短视频推荐系统存在多个约束目标,直接优化约束强化学习对偶问题需要对拉格朗日超参进行搜索,这会带来极大的搜索成本。
我们提出 Two-Stage Constrained Actor-Critic(TSCAC)算法:
- 第一阶段:对于每个互动辅助信号,学习不同 policy 优化对应的信号;
- 第二阶段,学习 policy 优化播放时长目标,同时满足和第一阶段学习到的 policy 的距离约束。我们在理论上得到了第二阶段问题的最优解并提出新的优化 loss。通过在 KuaiRand 数据集的离线评估和快手 App 在线 A/B 测试,我们证明 TSCAC 显著优于 Pareto 优化以及 State of the Art 约束强化学习算法。TSCAC 算法已经在快手 App 全量。
1、问题建模
我们把短视频推荐系统看作 agent,用户视为环境,每当用户打开 App,开启一个 session,一个 session 包括多次请求。每次请求是一个 step,推荐系统(agent)根据当前用户的 state,返回一个 action(视频)给用户。用户看到视频后反馈多个 reward 信号(观看时长,点赞、关注、评论、转发等互动信号)。用户离开 App 这个 session 结束。推荐系统目标为最大化 session 累计观看时长,同时满足互动约束。推荐系统的优化目标为学习一个推荐策略(policy), 求解以下 program。
2、TWO-STAGE CONSTRAINED ACTOR-CRITIC 算法
为了解决上述挑战,我们提出两阶段约束强化学习算法(Two-stage constrained actor-critic, TSCAC),我们针对不同的反馈信号,采取不同的 Critic 模型进行预估。策略优化方面,第一阶段分别学习策略优化相应的辅助目标,第二阶段我们最大化主目标时长,并且增加第一阶段预训练得到策略的距离约束。
- Stage One: Policy Learning for Auxiliary Response
我们对于每个目标分别用不同的策略进行学习,用 Temporal Difference(TD) loss 的形式来训练 Critic:
我们采用 Actor-Critic 算法常用的 advantage-based loss 来训练 Actor:
- Stage Two: Softly Constrained Optimization of the Main Response
第二阶段我们需要最大化主目标时长收益,但是也需要兼顾辅助目标。基于第一阶段学习到的辅助策略隐含了辅助目标信息的假设,我们学习策略最大化主目标,同时约束主策略和其他辅助策略不会距离太远,即:
然而这个问题需要加很多 KL 约束不好直接优化策略,我们可以证明(5)对偶问题存在以下最优解形式:
因此我们学习策略最小化和最优解的 KL 距离:
这个 loss 的动机在于辅助策略 \pi_{\theta_i}提供了 action 的重要性,如果辅助策略觉得这个 action 很差,那么这个 action 的样本重要性会很低。\lambda_i 代表了约束强弱,值越大提供约束越强,极端情况为 0 时意味着不加任何约束,公式(7)和直接优化主目标等价。实际应用时候我们设置所有辅助目标都采用的超参值,有效地缩减搜索空间。
3、离线实验
我们将 TSCAC 算法在 KuaiRand 公开数据集进行验证,对比了 BC(Behavior Cloning)Wide&Deep、DeepFM 监督学习算法,State of the Art 约束强化学习方法 RCPO,以及 Pareto 优化推荐算法。
表 2 结果证明,TSCAC 方法不仅在主目标 WatchTime 显著优于其他算法,并且在Click,Like,Comment 等指标也取得了最好的效果。注意到 Pareto 优化方法没有主次之分,学到降低 Hate 的一个 pareto 最优点,但是主目标相比 BC 算法负向。
4、在线实验
我们在快手短视频推荐系统进行在线 A/B 实验,基线为 Learning to Rank 算法,实验组为 TSCAC、RCPO 以及只学习互动的 Actor-Critic 算法(Interaction-AC)。
表 3 展示了算法收敛后,不同指标的百分比提升对比。可以发现 TSCAC 算法相比 RCPO 不仅主目标更好(0.1% 的 watchtime 就视为统计显著),并且辅助目标也是全面正向,对比 Interaction-AC 算法的互动指标也非常接近。下图展示了 TSCAC 算法训练到收敛每天的效果变化。
二、基于强化学习的多任务推荐框架
下面介绍第二个工作,同样也是强化学习在多任务优化上的应用。这篇工作是快手和香港城市大学的合作项目,是一个典型的多任务优化问题。
1、摘要
近年来,多任务学习(MTL)在推荐系统(RS)应用中取得了巨大的成功。然而,目前大部分基于 MTL 的推荐模型往往忽略了用户与推荐系统互动的会话(session)模式,因为它们主要是依据基于单个 item 的数据集而构建。平衡多个输出目标一直是该领域的一个挑战。为了解决这个问题,我们提出了一个基于强化学习(RL)的 MTL 框架,即 RMTL 。该框架使用动态权重来平衡不同推荐任务的损失函数。具体来说,RMTL 结构可以通过以下方式解决上述两个问题:
- 从 session 尺度构建 MTL 环境。
- 训练多任务 actor-critic 网络结构,并能与现有的基于 MTL 的推荐模型兼容。
- 使用 critic 网络生成的权重来优化和微调 MTL 损失函数。
在基于 KuaiRand 等多个公开数据集的实验证明了 RMTL 的有效性,其 AUC 显著高于 SOTA 基于 MTL 的推荐模型。我们还验证 RMTL 在各种 MTL 模型中的表现,证明其具有良好的兼容性和可转移性。
2、问题建模
我们构建基于 session 的 MDP 用于 RL 训练,以此来提高 MTL 模型的性能。经典的 MTL 方法通常面临将序列性的用户行为引入建模的困难,因为用户行为的时间戳高度相关,而建立在 MDP 序列之上的强化学习可以解决这个问题。对于每个会话 session,状态转移记录是由原始数据集中存储的时间戳分隔的。这种构造可以生成按顺序组织的 session MDP 序列,具有整体损失权重更新的优点。马尔科夫过程由状态(state),动作(action),奖励函数(reward function),转移函数(transition function)组成。状态空间 S 是状态的集合,其中包含 user-item 组合特征。行动空间 A 是连续动作的集合,其中每个元素在 A 中表示 CTR 和 CTCVR 的预测值。为了与 BCE 损失的定义保持一致,我们使用负 BCE 值定义每个步骤的奖励函数。
3、算法
我们提出 RMTL 框架:使用状态表示网络将数据特征转换为状态信息。Actor 网络可以是任何基本的 MTL 模型,输出特定的动作向量。Critic 网络用来提高 Actor 网络的性能,并为特定任务生成自适应调整的损失权重。
其中状态表示网络是由嵌入层和多层感知机组成的,以提取 user-item 特征。分类特征首先被转换为二进制向量,然后输入到嵌入层中。此外,数值特征通过线性变换转换为相同的维度。以上过程转化得到的特征将被合并并进一步作为另一个 MLP 网络的输入。
在强化学习的框架下,Actor 网络可以被称为策略代理。以 ESMM 为例:共享底层被移除,我们使用两个平行的神经网络,由