专题解读 | 基于图的推荐系统中长尾问题探究
一、简介
推荐系统已在各个领域得到广泛采用,成为解决信息过载的一种方法。推荐系统的核心是构建高质量的用户和物品嵌入,其常见的优化是重建用户-物品交互。但物品的分布在交互数据中通常不均匀。普遍的分布是长尾:一小部分热门物品收到大部分用户反馈,而大多数物品只有很少的用户反馈。这导致热门物品(即头部物品)往往比不受欢迎的物品(即尾部物品)获得更多的反馈。但是,尾部物品对于增强用户体验和提高服务提供商的收入也至关重要。本文介绍了两篇文章分别使用图增强和元学习两个不同的方法来解决推荐系统中的长尾问题。
二、Improving Long-Tail Item Recommendation with Graph Augmentation(CIKM2023)
本文通过图增强技术来解决长尾问题,提出的图增强方法由三个模块组成——边添加、边删除和节点合成。边添加模块添加物品-物品边,以增强从头物品到尾物品的知识传递。边删除模块有选择地删除用户-物品边,以促进稳健的表示学习。节点合成模块生成合成物品节点以缓解长尾问题。训练过程包括两个阶段。第一阶段在原始二分图上训练初始物品嵌入(特别是,为头物品提供更好的嵌入)。第二阶段在增强图上进行训练,以改进尾物品的表示。这种训练策略鼓励模型在不同的训练阶段分别关注头物品和尾物品。
2.1 边增强
通过添加同质边,即物品-物品边,以改善尾部物品的图形连通性,从而改善长尾的性能。首先,本文构建一个物品-物品相似性图来找到尾部物品节点的结构邻居。接下来,本文将同质物品节点的嵌入聚类到潜在空间中的不同组中,以找到尾部物品节点的语义邻居。在这里,本文假设节点在组内具有相似的兴趣,而在不同的组之间具有不同的兴趣。请注意,本文添加了结构和语义邻居来改善图形连接。最后,本文为增强图执行消息传递和聚合。
2.2 边删除
在长尾推荐中,尾项节点通常比头项节点具有更少的连接,这使得尾项的边连接对于实现有效的推荐性能更为关键。然而,对尾项不加区分地丢弃边可能会破坏局部图结构并对消息传递过程产生负面影响,导致长尾性能下降。为了解决这个问题,本文提出了一种称为自适应异构边丢弃的新方法,该方法为头项丢弃更多边,为尾项丢弃更少边。本文避开了节点度等可能不够具有判别力的传统指标,而是为物品 𝑖 定义长尾系数 ℓ𝑖 来量化节点在分布尾部的位置。
其中 deg(𝑖) 是商品节点 𝑖 的度数,𝑙𝑐 是截止数。长尾系数值越大,表示该商品的用户反馈越少。
本文以概率 𝑝𝑢𝑖 删除用户 𝑢 和物品 𝑖 之间的边,
其中 ℓ𝑚𝑎𝑥 和 ℓ𝑚𝑖𝑛 分别是物品的最大和最小长尾系数,𝑝𝑒 是控制删除边的总体概率的超参数,𝑝𝑐 < 1 是截止概率。
2.3 节点合成
在推荐系统中,图边具有特殊含义,因为它们代表用户对物品的偏好。然而,之前的合成策略中的边缘生成器根据模型预测生成边,这可能会引入噪声并对模型性能产生负面影响,尤其是对于预测不准确的尾部节点。为此,本文在通过 GNN 获得用户/物品表示之后,但在优化过程之前添加合成节点。这是因为在获得嵌入之后添加合成节点会对现有尾部物品节点的连接产生负面影响。为了解决该问题,本文建议在本文的方法中使用数据混合进行节点合成。合成节点的嵌入由两个节点嵌入混合而成,
在本文提出的方法中,合成节点可以作为硬负挖掘来提高模型性能。通过使用合成节点作为负样本,本文可以识别出模型难以正确分类的示例。这些合成节点可能包含来自正样本和负样本的信息,使它们具有信息量但却是假负样本。通过将这些合成节点纳入训练数据中,模型被迫更好地区分正样本和负样本,从而提高性能。
2.4 两阶段训练
本文提出了一种新颖的两阶段训练策略。在第一阶段,本文遵循标准的基于图的推荐模型训练流程,主要目标是促进对头部物品的高质量表示的学习。在第二阶段,本文采用图增强,如前几节所述。由于尾部物品通常更难学习,因此本文增强了图的尾部并执行模型的第二阶段训练。这种方法的主要优势于,它允许模型在不同的训练阶段关注表示学习问题的不同方面。具体而言,模型首先熟练学习相对容易学习的头部部分,然后在后续阶段进入更复杂的尾部。
2.5 实验结果
可以看出,,本文提出的GALORE模型在大多数情况下优于 DropEdge 和 GraphSMOTE 等图形增强模型,表明本文的方法具有优越性。这些发现证明了本文量身定制的自适应图形增强在提高长尾推荐性能方面的有效性。此外,本文的两阶段训练方法通过为每个阶段分配不同的学习目标来增强学习表现。
三、Meta Graph Learning for Long-tail Recommendation(KDD2023)
本文提出了一种用于长尾推荐的新型元图学习框架 (MGL),引入了一种元学习方法来学习辅助图。基本思想是在辅助图学习的训练过程中模拟学习和评估过程。
MGL 的主要思想是通过元边生成器生成物品关系,从而形成辅助图,以促进基于图的长尾推荐。具体来说,本文采用元学习来训练元边生成器,以更好地适应下游推荐并更好地避免有偏差的数据分布。此外,本文创新地引入了一种流行度感知对比学习策略,通过最大化两个图结构之间头部物品的一致性来保持学习到的辅助图和原始二分图的一致性。
3.1 元边生成器
给定物品属性,本文首先采用物品特征编码器 𝑔(·) 来学习物品辅助嵌入。在本研究中,本文选择多层感知器 (MLP) 模型作为 𝑔(·)。为了简单和高效,本文采用 vanilla 设计,即余弦相似度,来预测物品 𝑖 和 𝑗 之间是否存在边缘,
其中 𝜎(𝑥) 是 S 型函数,S𝑖,𝑗 指的是物品 𝑖 和 𝑗 之间的预测关系。
为了以无偏的方式训练元边缘生成器,本文构建了一个物品共现矩阵,认为同一用户消费的物品是相互关联的,
这样,本文利用“共同购买”关系大大扩展了与尾部物品的连接数量。为了确保每个物品的公平曝光,在共现矩阵 S′中,每个物品仅保留不超过 𝑘 个邻居,
其中 M 是物品共现矩阵 S′上的随机mask矩阵。训练元边缘生成器的损失函数为,
其中 S 表示 V 中物品之间的链接预测。单纯依靠重建物品之间的协作信息远远不能适应下游推荐。接下来,本文将描述它如何通过元学习生成物品关系以适应下游推荐。
3.2 流行度感知对比学习
为了保持两个图的一致性,本文将辅助图和原始二分图中的物品嵌入视为特定物品的两个视图,因为它们分别编码了两种信息,即物品属性和消费历史。 本文在原始二分图上执行 GCN 推荐器并获取物品的原始嵌入。辅助嵌入用于构造辅助图,因此本文使用线性解码器 ℎ(·) 将辅助嵌入转换为与原始嵌入相同的空间。如果本文不加区分地对齐所有物品的两个视图,则可能会干扰尾部物品中辅助图的学习。因此,本文使用流行度感知对比损失来协调来自不同潜在空间的两个图形结构,
同时本文针对每个物品设置一个系数 𝑃𝑜𝑝(·),以控制对比损失是否适用于特定物品。如果原始二分图中有足够多的用户消费了该物品,应该努力协调其在两个潜在空间中的表示,以防止负迁移。否则,应该在不可靠的原始嵌入的背景下冻结,
在尾部阶段,流行度系数接近于零,几乎停止对比学习。在中间和头部阶段,随着与物品的连接逐渐丰富,物品学习到的表示变得越来越自信,因此流行度系数逐渐增加到1以鼓励对比学习。
3.3 邻居学习
在训练元边生成器以重建无偏物品协作信息后,本文利用它来生成辅助图。请注意,本文不使用完整的物品集作为生成边的候选。相反,本文只选择头部物品作为候选来建立与图上每个物品(包括头部和尾部物品)的连接,并计算物品-物品相似度矩阵。
为了防止学习到的辅助图变得过于密集而干扰图卷积,本文对学习到的相似度矩阵进行稀疏化。图稀疏化的方法有很多,包括 L1 正则化和阈值截取。本文发现阈值截取在本文的 MGL 中表现更好,它保留了具有前 K 个计算相似度的边来实现。
3.4 算法流程
MGL的算法流程如下:
3.5 实验结果
从实验结果可以看出 MGL 在尾部和头部物品的所有评估指标以及整体性能方面均优于其他方法。这证明了辅助图对于基于图的推荐器的有效性,它可以通过为物品带来更多可信邻居来增强物品的表示倾向。在尾部物品中,可以观察到更显著的改进,这是直观的,因为它们在原始二分图上缺乏足够的连接来生成可信表示。
四、总结
本文介绍了两篇旨在解决推荐系统中长尾问题的论文,前者使用图增强技术,节点融合以及两阶段训练方法来解决长尾问题,而后者则使用元学习技术,学习辅助图,以及流行度感知对比学习策略来解决问题,这为本文带来了很大的启发。