快手这款推荐新算法,我爱了~

简介: 快手这款推荐新算法,我爱了~

大家好,我是对白。


前两天刚好刷到KDD2022的一篇文章,是介绍快手在它们短视频上的一项推荐重排新算法,不仅在用户观看时长和视频播放量都有了较大提升外,用户观看视频的标签数也有了显著增长,这说明该算法同时兼具****相关性和多样性两点。

为了测试其效果,我顺便下载了一下快手这款app,于是就出现了这篇文章的封面:左图是用户冷启动推给我的第一个短视频,一个穿着短裙的小姐姐,紧接着第二个短视频就是右图的另一位小姐姐,而后面的几个短视频也出现了电影、美食等其它方向,**探索和利用(Exploit&Explore)**做得都很不错,大家可以去快手上体验一下。


快手提出的这款新算法叫FDSB,是一款通用的重排序框架,利用用户物品的偏好得分与用户物品基于不同特征的相关性、多样性得分从而对推荐列表中的物品重排序。


实验结果来看,FDSB在用户观看时间和视频播放方面取得了显著的改进,这表明用户粘性得到了提高;其次,用户观看视频的标签数量增加也说明FDSB可以推荐更多样性的视频。



下面就带大家一起领略这个算法的奇妙之处~


论文标题:Feature-aware Diversified Re-ranking with Disentangled Representations for Relevant Recommendation


论文来源:快手&人大,KDD2022


一、FDSB核心思想



本文由快手和人大发表于KDD2022上。在具体看论文模型细节之前,我们来看一下相关推荐的任务描述。由于要关注用户兴趣、相关性与推荐物品的多样性,我们可以自然而然地为相关推荐写出目标排序公式:


其中,用户偏好得分我们可以利用现有模型计算得到。困难在于后面两项:相关性和多样性。为模型中引入特征这一重要因素,我们将相关性和多样性定义为:


如上分析,可以将相关推荐的多样化再排序描述为一个基于物品embedding和特征的组合优化问题。由于这是一个NP-hard问题,采用贪心算法 ,将整体目标分解为单个物品目标:


二、算法细节

要点一:如何处理物品特征冗余问题?



由于物品的特征信息可以从不同潜在方面描述该物品的特性,基于解耦的思想,我们可以将这些特征,根据所描述物品的不同方面分解为不同的表示。我们将称之为对应于物品不同方面的细粒度特征感知表示,后统称为分离表征。


为了学习分离表征,论文采用一种基于多头自注意力机制的方法DAE。具体地,以物品原始特征作为value,以物品embedding与特征的投影向量作为query和key来计算注意力分数,具体公式为:


这些分离表征反映了物品的部分特征,因此应该接近物品的整体embedding表示。具体地,采用MSE与InfoNCE两种alignment loss来提取从物品embedding到具体特征分离表示中的信息:


其中,。我们还记得,物品的分离表征可以从不同的潜在方面反映该物品的特性。而为了实现从解耦的不同潜在方面中能够捕获不同的语义特征,再引入orthogonalization loss:

我们知道物品的相关性和多样性本质上是相互矛盾的,即多样性更强时,相关性就更弱。然而我们的相关推荐既要保证所推荐的物品与触发物品之间的相关性,又要保证一定的多样性。因此当多样性表现得更强时,我们应该提高相关性的权重,反之亦然,从而实现二者的平衡。


要点二:在相关推荐中,应该如何实现物品之间的相关性与多样性的平衡?

为了在二者之间达成一个平衡,论文设计了一种相关性-多样性相关权重机制,我们为两个性质分别引入两个可学习的系数向量,即:


其中,为累计相关性。我们的目标是为用户选择个相关物品,具体地,采用Greedy Selection的方案对推荐列表中的物品进行再排序


当选定第一个物品时,由于没有其他备选物品,所以不需考虑与备选物品间的多样性问题,这里只用计算单物品的相关性得分,即:


当已选物品数量大于1时,则需要计算相关性和多样性得分:


其中,多样性函数遵循MMR方法,即,减去所选物品和候选物品之间的最大相似度作为多样性得分。


模型的完整算法为:



模型的复杂度与普通MMR相当,其中时间复杂度为,空间复杂度为。


三、实验结果

3.1 一个关于分离表征的案例解析

为了说明FDSB是如何将物品特征分解为不同方面的,论文的实验部分给出一个有趣的案例分析:随机抽取一段视频,将每个特征解耦得到的方面的注意力权重可视化,如下图。


从图中,我们可以看到,视频的特征根据语义的不同被分解为了不同方面,第一个方面侧重于抽象特征,如**“动物”和“野生动物”**;第二个方面捕捉了更加细粒度的信息,如“大熊猫”和“熊猫”;第三个方面则提取了一些不寻常的特征,如图中的“Metal Eater”为“吞金兽”,是熊猫的昵称。还有一个”pets“是视频中的多余标签,并没有被所有的方面捕捉到。


这个例子定性地说明了论文所提出的DAE模型在学习分离表征方面的有效性



3.2 在线部署和A/B测试


为了进一步验证FDSB的有效性,该模型被部署在在线快手APP的”更多相关视频“功能上以验证整个工作流程。其中,采用视频标签作为特征。具体的工作流程如下图:



在快手的实际应用场景中从(1)观看时间,(2)视频播放和(3)观看的视频标签三个指标评估该框架的性能,前两个指标反映用户的满意度,第三个指标通常用于多样性。


具体的结果如开篇描述,FDSB不仅可以提升用户忠诚度,也可以推荐更多相关视频。


3.3 实验结果


与多个模型对比,可以看出FDSB的效果提升显著,在Recall与MRR分别提升了25.2%与18.3%。此外,在相关性的评估指标和多样性的评估指标中效果也不错。



四、总结

论文提出了一种用于相关推荐的基于分离特征的再排序框架FDSB。模型具体包含两个部分:(1)用于实现特征分离的自注意力方法DAE;(2)一种用于平衡候选物品相关性与多样性的策略。模型具有一定的新颖性且效果不错,大家不妨可以参考一下它的核心思想与网络结构。


文末提出两个问题供大家思考:


  • 除了文中所提的物品特征,是否有更好的辅助信息可以将触发物品与推荐多样性结合起来?


  • 你认为基于特征感知的细粒度推荐在其他推荐场景中是否有应用前景?以及,是否有其他高效的基于特征的分离表征解耦方法?


相关文章
|
机器学习/深度学习 算法 搜索推荐
抖音快手小视频推荐算法之--协同过滤算法剖析
抖音快手小视频推荐算法之--协同过滤算法剖析
|
机器学习/深度学习 算法 搜索推荐
2023秋招算法提前批:快手广告算法面经
2023秋招算法提前批:快手广告算法面经
101 0
|
算法 数据格式
再学一道算法题:你今天刷快手了吗(字符串处理)
再学一道算法题:你今天刷快手了吗(字符串处理)
|
机器学习/深度学习 搜索推荐 算法
设计简单有效的强化学习探索算法,快手有新思路
在本篇论文中,来自德州农工大学和快手的研究者提出了一种简单有效的探索算法,旨在为随机环境的探索问题提供有效的解决方案。
148 0
设计简单有效的强化学习探索算法,快手有新思路
|
29天前
|
算法 安全 数据安全/隐私保护
基于game-based算法的动态频谱访问matlab仿真
本算法展示了在认知无线电网络中,通过游戏理论优化动态频谱访问,提高频谱利用率和物理层安全性。程序运行效果包括负载因子、传输功率、信噪比对用户效用和保密率的影响分析。软件版本:Matlab 2022a。完整代码包含详细中文注释和操作视频。
|
5天前
|
算法 数据安全/隐私保护 索引
OFDM系统PAPR算法的MATLAB仿真,对比SLM,PTS以及CAF,对比不同傅里叶变换长度
本项目展示了在MATLAB 2022a环境下,通过选择映射(SLM)与相位截断星座图(PTS)技术有效降低OFDM系统中PAPR的算法实现。包括无水印的算法运行效果预览、核心程序及详尽的中文注释,附带操作步骤视频,适合研究与教学使用。
|
13天前
|
算法 数据挖掘 数据安全/隐私保护
基于FCM模糊聚类算法的图像分割matlab仿真
本项目展示了基于模糊C均值(FCM)算法的图像分割技术。算法运行效果良好,无水印。使用MATLAB 2022a开发,提供完整代码及中文注释,附带操作步骤视频。FCM算法通过隶属度矩阵和聚类中心矩阵实现图像分割,适用于灰度和彩色图像,广泛应用于医学影像、遥感图像等领域。
|
15天前
|
算法 调度
基于遗传模拟退火混合优化算法的车间作业最优调度matlab仿真,输出甘特图
车间作业调度问题(JSSP)通过遗传算法(GA)和模拟退火算法(SA)优化多个作业在并行工作中心上的加工顺序和时间,以最小化总完成时间和机器闲置时间。MATLAB2022a版本运行测试,展示了有效性和可行性。核心程序采用作业列表表示法,结合遗传操作和模拟退火过程,提高算法性能。
|
15天前
|
存储 算法 决策智能
基于免疫算法的TSP问题求解matlab仿真
旅行商问题(TSP)是一个经典的组合优化问题,目标是寻找经过每个城市恰好一次并返回起点的最短回路。本文介绍了一种基于免疫算法(IA)的解决方案,该算法模拟生物免疫系统的运作机制,通过克隆选择、变异和免疫记忆等步骤,有效解决了TSP问题。程序使用MATLAB 2022a版本运行,展示了良好的优化效果。
|
15天前
|
机器学习/深度学习 算法 芯片
基于GSP工具箱的NILM算法matlab仿真
基于GSP工具箱的NILM算法Matlab仿真,利用图信号处理技术解析家庭或建筑内各电器的独立功耗。GSPBox通过图的节点、边和权重矩阵表示电气系统,实现对未知数据的有效分类。系统使用MATLAB2022a版本,通过滤波或分解技术从全局能耗信号中提取子设备的功耗信息。
下一篇
无影云桌面