关于直播平台推荐系统研究:动态可用性与重复消费的学术报告
本文档为一份发表于第十五届ACM推荐系统会议(RecSys ‘21)的学术论文,题为《Recommendation on Live-streaming Platforms: Dynamic Availability and Repeat Consumption》。作者为Jérémie Rappaz(瑞士洛桑联邦理工学院EPFL)、Julian McAuley(美国加州大学圣地亚哥分校)和Karl Aberer(瑞士洛桑联邦理工学院EPFL)。该研究针对直播平台特有的推荐挑战,提出了一种创新的推荐模型LiveRec,并发布了一个大规模数据集以推动该领域研究。
本研究属于信息科学领域的推荐系统分支,具体聚焦于实时流媒体平台的个性化推荐问题。随着Twitch、YouTube Live等平台的兴起,用户生成内容(UGC)的实时广播模式带来了与传统推荐场景(如电影、电商)截然不同的挑战。传统推荐算法通常基于静态物品库和一次性消费的假设,这些假设在直播场景下不再成立。
研究背景基于两个核心观察: 1. 动态可用性:直播内容(频道)并非始终在线。用户在任何给定时刻只能从当前正在直播的频道子集中进行选择。这意味着用户的“未交互”行为可能并非出于不喜欢,而仅仅是因为该频道当时不可用。传统基于隐式反馈的模型(如BPR)假设未交互的物品排名应低于正样本,这在动态可用性下会导致信号混淆。 2. 高频重复消费:用户倾向于反复观看同一主播(频道),尽管每次直播的内容都是全新的、短暂的。这与传统推荐中的重复消费(如反复购买同一商品)不同,也不同于对静态内容(如电影)的重复观看。
因此,本研究的目标是设计并验证一种能够同时建模用户历史交互序列、当前可用物品集合以及重复消费模式的推荐系统,以更准确地对实时可用的直播频道进行个性化排序。
本研究包含数据收集、问题分析、模型构建、实验验证和结果分析五个主要流程。
流程一:数据收集与特性分析 研究团队通过Twitch公开API,在2019年7月为期43天的时间里,以10分钟为间隔轮询收集数据。每轮记录所有正在直播的频道及其观众列表、当前播放的游戏。最终构建了两个版本的数据集: * 完整版:包含1550万用户、46.5万主播、4.747亿次交互。 * 基准版:从完整版中均匀采样10万用户,包含300万次交互,用于模型性能比较。
数据分析揭示了关键特性: 1. 高度倾斜的交互分布:头部主播和游戏占据了大部分观看时长。 2. 显著的重复消费:测试集中约65%的用户-主播交互在训练集中已出现。用户与同一主播的交互间隔呈现明显的日度和周度模式。 3. 动态的可用物品池:同时在线直播的频道数量随时间波动巨大(2万至7.5万)。
流程二:问题定义与初步实验 研究将推荐物品定义为“主播”(而非单次直播流),以应对数据稀疏性问题。为了理解传统方法的局限,作者进行了两项关键初步实验: 1. 重复消费建模实验:训练一个简单的矩阵分解(MF)模型,通过调整负样本采样策略(从用户历史交互物品中采样 vs. 从全体物品中均匀采样)来探索重复消费的影响。实验发现,平衡新旧物品采样的策略(p_repeat = 0.5)能获得最佳整体性能,比均匀采样提升16.1%,这证明了显式处理重复消费的必要性,也揭示了平衡新发现与重复观看的难度。 2. 可用性感知采样实验:改进负样本采样策略,仅从交互发生时实际可用的物品池中抽取负样本。这一策略模拟了真实场景中用户的选择范围,使模型能够区分“因不喜欢而未交互”和“因不可用而未交互”。该策略带来了21.3%的相对性能提升,显著优于之前的策略。
这些实验为后续模型设计提供了核心洞见:必须显式地对动态可用性和重复消费进行建模。
流程三:模型架构设计——LiveRec 基于上述分析,作者提出了LiveRec模型,这是一个端到端的自注意力模型,主要包含三个核心模块:
序列编码器:用于学习用户的历史交互序列。本研究采用了现有的SASRec(Self-Attentive Sequential Recommendation)模型作为编码器基础。它将用户交互序列中的每个物品(主播)转换为嵌入向量,并通过多层带因果掩码的自注意力层来捕捉序列中物品间的复杂依赖关系,最终输出一个代表用户当前兴趣状态的序列向量。
可用性感知排名精炼模块:这是LiveRec的核心创新之一,旨在显式比较当前可用的物品。直接对所有可用物品(可能数万个)进行全量比较计算开销过大。因此,LiveRec采用了一个两阶段排名策略:
重复消费建模模块:为了区分新主播和重复观看的主播,并对重复观看的“新近性”进行建模,LiveRec引入了时间间隔嵌入。对于一个候选主播,模型会查找该用户上一次观看此主播的时间,计算时间间隔(如12小时内、1-7天、>1周等),并将此时间间隔映射为一个嵌入向量。该时间间隔嵌入会与主播的物品嵌入相加,形成一个融合了“身份”和“上次观看距今时间”信息的联合表示。这个联合表示既用于预排名阶段的打分,也作为精炼阶段自注意力层的输入。
流程四:实验设置与评估 * 数据集划分:按时间顺序将基准数据集划分为训练集、验证集和测试集(最后250个时间步作为测试集)。 * 评估指标:采用Hit@1, Hit@10, NDCG@10。为了深入分析,还将命中率细分为Hit-new(推荐新主播)和Hit-rep(推荐用户观看过的主播)。 * 基线模型:包括简单规则模型(Rep:重复历史中最常看的主播;Pop:推荐最流行主播)、传统协同过滤(MF-BPR)、序列模型(FPMC、SASRec)以及先进的BERT4Rec。特别对比了SASRec在均匀负采样和可用性感知负采样下的性能。 * 模型变体:为了解构各模块贡献,设置了多个LiveRec变体:+rep(仅加入时间间隔嵌入)、+av(仅加入可用性感知精炼模块)、+rep+av(完整模型)。
+rep+av)在所有评估指标上均显著优于所有基线模型。其Hit@1达到0.4122,相比强大的序列基线SASRec(0.3004)提升了37.2%。这证明了综合建模动态可用性和重复消费的有效性。av和rep结合后,av模块缓解了rep模块对新内容发现的负面影响,同时rep模块增强了av模块对重复消费的排名能力,实现了协同增效,获得了最佳的综合性能。av)和时间间隔嵌入(rep)后,模型推荐物品的流行度分布更接近真实的交互分布,表明LiveRec能更好地挖掘长尾内容,缓解了传统推荐系统的流行度偏差问题。本研究得出核心结论:在直播推荐场景中,显式地建模内容的动态可用性和用户的高频重复消费模式至关重要。仅通过改进负采样策略来隐含地处理这些问题虽有帮助,但通过专门的模型架构(如LiveRec)进行显式建模能带来更显著的性能提升。
科学价值: 1. 问题定义:首次系统性地形式化了“动态可用物品推荐”这一新颖且重要的推荐系统子问题,明确了其与静态库推荐的根本区别。 2. 方法创新:提出了LiveRec模型,创新性地将两阶段排名(预排名+基于可用物品集的精炼)与时间感知的重复消费建模相结合,为处理动态环境下的序列推荐提供了新框架。 3. 资源贡献:发布了首个大规模、细粒度的直播平台用户观看行为公开数据集,包含了用户、主播、时间、游戏等多维度信息,为后续研究提供了宝贵资源。
应用价值:所提出的方法可直接应用于Twitch等直播平台,提升其推荐系统的准确性和用户体验,帮助用户从海量实时内容中发现既有兴趣又正在直播的频道,同时平衡对新主播的探索和对喜爱主播的回归。其框架思想也可扩展至其他具有动态可用性特征的场景,如数字电视节目推荐、新闻推送、限时商品推荐等。
论文在最后对未来的研究方向进行了展望: 1. 内容特征融合:探索结合视觉、音频等直播内容本身的特征。 2. 用户社交动态:建模共同观看、聊天互动等用户-用户关系。 3. 动态流行度:将静态物品流行度概念拓展为实时并发观看人数等动态信号。 4. 架构灵活性:LiveRec的序列编码器可替换为图神经网络等其他先进序列学习器。 5. 规模化挑战:讨论了将方法应用于生产环境时,在候选集检索效率、训练速度等方面可能遇到的挑战及潜在解决方案(如半监督学习、更高效的检索设计)。
这些讨论为后续研究指明了富有潜力的道路。