当前位置:网站首页>SIGIR 2022 | 港大等提出超图对比学习在推荐系统中的应用
SIGIR 2022 | 港大等提出超图对比学习在推荐系统中的应用
2022-06-26 16:48:00 【PaperWeekly】
PaperWeekly 原创 · 作者 | 夏良昊
单位 | 香港大学
研究方向 | 推荐系统
论文题目:
Hypergraph Contrastive Collaborative Filtering
收录会议:
SIGIR 2022
论文链接:
https://arxiv.org/pdf/2204.12200.pdf
代码链接:
https://github.com/akaxlh/HCCF
港大数据智能实验室(指导老师:黄超)
https://sites.google.com/view/chaoh
研究背景
近年来,个性化推荐系统(Recommender Systems)被广泛应用于各类线上服务,例如淘宝、亚马逊等线上购物平台,微信、Facebook 等社交网络,Youtube、抖音等线上视频网站。推荐系统根据用户、商品的特征,帮助用户寻找符合个人偏好的商品,以缓解信息过载问题。在各类推荐系统框架中,基于矩阵分解、深度神经网络等方法的协同过滤(Collaborative Filtering)技术已经成为大多数推荐系统的基础架构。协同过滤框架背后的基本思路是,根据用户、商品的历史交互信息,将用户和商品映射到低维空间进行表征。
随着图神经网络方法(Graph Neural Networks)在各类图表征任务上取得了巨大的成功,利用图神经网络对用户、商品的图结构交互数据进行挖掘,成为了协同过滤领域备受关注的研究方向。近年来,一些工作对这一方向进行了深入挖掘,探索了如何沿用户、商品交互边进行信息传播,以使用用户、商品表征更好地反映交互图的邻域子图结构。
尽管基于图神经网络的协同过滤在各个指标上都展现出了优越的性能,但现有工作仍然存在一些关键问题亟待解决,具体来说,本文试图解决以下两个问题:
1)图表征过平滑问题。当协同过滤方法叠加更多图神经网络层时,用户、商品的节点信息会被传播到大量距离较远的节点,导致节点表征过度相似、无法区分,且这一过程中难以避免地在节点表征中引入了不相关的远距离节点信息,这些问题严重影响了对交互图中的高阶协同关系进行有效学习。
下图展示了一些基于图神经网络的协同过滤方法存在的过平滑问题。本文测试了 LightGCN、GCCF、PinSAGE、ST-GCN 四种图神经网络方法,在不同图神经网络层迭代次数下的 MAD 指标和 NDCG 指标。其中,MAD 指标衡量节点表征之间的平均距离,而 NDCG 指标衡量模型给出推荐列表的准确程度。
从结果可以看出,当图神经网络迭代次数增多后,节点表征变得越来越相似,同时模型效果也出现下降。这一结果验证了现有图神经网络架构在迭代次数增多时由于过平滑问题出现的效果退化。因此,缓解过平滑问题,对用户、商品交互图进行更好的建模,以得到可区分、高质量的节点表征,是这一方向亟待解决的问题之一。
2)监督信号的稀疏问题和噪声问题。大多数基于图网络的协同过滤方法属于监督学习模式,用户、商品交互记录作为监督信号指引节点表征学习过程。在这样的范式下,协同过滤方法的效果极大程度上依赖充足、准确的用户交互记录作为监督信号,在监督信号稀缺的情况下,很难学得准确、高质量的用户、商品表征。
然而,交互数据稀疏问题在实际的推荐场景下无处不在,因为大多数用户只会零星地点击有限数量的商品。稀疏且不平衡的数据分布,使得大多数基于协同过滤的推荐系统难以对长尾商品进行准确预测。
此外,大多数图神经网络方法依赖于用户、商品交互图进行邻域节点间的信息传播,现实中基于点击、购买等行为记录的用户、商品关系却不可避免地因误点等原因包含了噪声,影响了原始观测数据的准确性,进而破坏了现有图神经网络方法得到的节点表征。
模型介绍
为了解决上述两个问题,本文提出了 Hypergraph Contrastive Collaborative Filtering(HCCF)模型,该模型基于超图对比学习框架,扩展了基于图神经网络的协同过滤建模方法。具体来说,本文使用超图神经网络架构,基于节点的低秩表征进行全局节点间关系学习和超图信息传播,以补充传统图协同过滤方法的邻域关系建模。
尽管超图神经网络最近已经被一些工作引入到协同过滤框架中,但现有方法大多基于原始观测交互图建立超图结构,因此只能在原始观测数据的基础上提取高阶关联关系,而这种方式得到的表征不可避免地受到了原始交互图中噪声和不完全问题的影响。为了解决这一问题,HCCF 将结构可学的参数化超图神经网络与基于原始交互图的图神经网络进行结合,以更好地提取用户偏好表征。
此外,本文基于双图间对比学习设计了一种关系学习增强方法。现有的自监督学习方法常常采用随机扰动的方式构建多个视图,采用对比学习方法拉近同一实体多个视图之间的关系,以增强模型鲁棒性并提供更多监督信号。然而,这种完全基于噪声的自监督学习方法可能随机丢弃一些重要节点或连边,从而严重损坏模型表征。考虑到这一点,本文的 HCCF 方法使用超图全局关系学习和原始交互图局部邻域学习构建两个视图,分别对节点的全局和局部关系进行捕捉,并采用对比学习方法进行自监督的扩展训练。
2.1 局部协同关系编码
遵循通常协同过滤方法的模式,HCCF 模型给每个用户和商品分配一个隐式表征向量以学习该节点的特征。基于这一基础表征,HCCF 首先使用叠加的图卷积网络对用户的高阶邻域关系进行学习。每次图神经网络迭代时,节点表征都沿图中的连接关系传播到相邻节点,从而实现根据原始交互图对节点表征进行邻域平滑。收到 LightGCN 等近期工作的启发,HCCF 同样采用了一种简化的图卷积编码方式,此处图卷积不引入特征变换矩阵,采用 0.5 斜率的 LeakyReLU 函数以兼顾非线性和缓解梯度消失问题。
2.2 超图全局关系学习
为了在用户、商品表示学习过程中引入全局协同关系信息,本文的超图神经网络基于可学习的超图结构进行全局信息传播。本模块可分为三个部分:超图信息传播机制、参数化超图结构学习、以及层级超图映射。
2.2.1 超图全局关系学习
在普通图结构数据中,一条边只能连接两个节点,不能很好地表示节点间的复杂高阶关系。超图网络中,一条超边可以连接任意数量节点,超图神经网络采用类似图神经网络的图编码方法,就可以轻易捕捉节点间的高阶邻域关系。受此启发,本文采用超边作为信息传播的中间节点,在用户、商品节点之间进行全局性的高阶信息传播,这样做突破了交互图中节点距离的限制,可以在任意两个节点间通过超边进行信息传播。
如下图所示,超图结构(红色虚线)记录了超边(黄色圆)与普通节点之间的连接关系,超图信息传播机制首先根据超图结构将节点信息传播到超边上,之后再次沿着节点-超图关系将信息传递回用户、商品节点。通过这样的方式,被同一超边连接起来的多个节点就可以无视原始交互图中的连接关系,进行全局信息传播和表征平滑,从而在节点表征中注入超图结构所蕴含的全局依赖关系。
2.2.2 参数化超图结构学习
为了自动化地学习用户、商品之间的全局关联关系,HCCF 将超图结构设置为可学习参数,并将其与用户、商品表征等其他模型参数进行联合优化。然而,当超边数量明显大于表征空间维度时,直接学习一个稠密的节点-超边关系会造成模型参数量和复杂度的显著上升,降低模型效率和可扩展性。针对这一问题,本文提出将节点-超边关系进行低秩分解,使用节点的表征向量和超边的表征向量对这一关联矩阵进行学习。
通过这种方式,HCCF 的参数化超图神经网络仅引入了 O(H*d) 的额外参数量,其中H代表超边数量,d 代表隐藏层维度大小,这一参数量远小于用户、商品表征矩阵,从而保证模型效率,并为超图结构学习增加约束,防止出现过拟合。
2.2.3 层级超图映射
尽管上文的超图结构学习框架使 HCCF 模型具备了捕捉全局用户、商品间协同关系的能力,我们进一步叠加了更多的超图神经网络层,以提取超边间的相互关联关系和特征交互。具体来说,上文所提到的超边将作为层级超图的第一层超边,HCCF 在其上继续叠加了多个超边映射层,每一层都使用一个 H*H 大小的可学习关联矩阵来描述高层超边与低层超边之间的关系。在多层超边的映射中,HCCF 采用了 LeakyReLU 激活函数和残差连接以保障梯度回传的顺畅。最终,HCCF 叠加了 c 层超边,并将最后一层超边的表征矩阵,通过超图结构传递回用户、商品节点,完成了深层超图神经网络的信息传播。
在每次进行普通神经网络和超图神经网络的迭代后,两者得到的用户、商品表征矩阵将进行加和,并通过残差连接保留上一阶的用户、商品表征。在多次迭代后,HCCF 对多阶用户、商品表征进行求和,并使用内积算子对用户、商品组合进行偏好预测。模型采用 hinge 成对损失函数进行优化。
2.3 基于超图的对比学习
基于超图神经网络的全局关系学习,HCCF 进一步设计了一种图-超图对比学习框架,通过最大化用户、商品的超图表征和图表征之间的共性改善用户、商品表征学习。具体来说,HCCF 中对比学习的两个视图包括:i)图神经网络基于观测用户、商品交互图学得的局部和显式节点表征,以及 ii)超图神经网络基于低秩超图结构学习,及其上的层级超图信息传播得到的全局和隐式节点表征。这种对比学习方式通过用户和商品节点的自我区分,提供了额外的监督信号以调整局部和全局表征方法。
具体来说,HCCF 的跨试图对比自监督方法将同一个用户的局部表征和全局表征作为一对正样例,将不同用户的两种表征作为一对负样例。通过这种方式,HCCF 可以在对比任务中学得更具有区分性的节点表征。此处采用常见的 InfoNCE 损失函数作为对比学习的优化目标。
为了进一步防止模型训练和对比任务出现过拟合,HCCF 在原始交互图和结构学习所得超图上都进行了随机的边丢弃(edge dropout)。最终,主任务的成对损失函数和用户、商品分别的对比损失,以及防止过拟合的参数衰减正则项,一同组成了 HCCF 的优化目标。
通过理论分析可以发现,当在 InfoNCE 中选取较为合适的温度系数时,可以增大优化算法对难负样本(hard negatives)的梯度,从而对其更好的优化。同时,HCCF 中的全连接超图神经网络允许任意两个节点通过超边进行连接,大大拓展了图神经网络中节点间关联的数量,同样使得节点表征能够从相似节点处获得更多的梯度更新。
实验结果
本文在 Yelp、MovieLens 和 Amazon-book 三个数据集上进行了实验验证,数据集统计信息见下表。每个数据集按照 7:1:2 的比例划分为训练集、验证集合测试集。参照协同过滤的前沿工作,本文采用全排列测试方式,即每个用户的测试商品与该用户所有未在训练集中交互过的商品一同进行评分预测和排序,使用 [email protected] 和 [email protected] 指标对排序准确性进行测量。本文将 HCCF 方法与来自 7 个类别的 15 个基线方法进行了全面对比。
3.1 模型效果对比实验
首先将 HCCF 与所有基线方法在各个数据集上进行对比,实验结果如下图所示。我们同时测量了 @20 和 @40 时的实验效果,并重复测试了 HCCF 与最好的基线方法的预测效果,并计算 p 值衡量显著性。
从结果可以看出,HCCF 相比于现有的协同过滤方法,包括基于图神经网络的方法、基于超图神经网络的方法、以及基于对比学习的方法,具备明显的优势,这验证了本文提出的超图对比学习架构的优势。同时,从实验结果中可以看出,基于超图神经网络的基线方法,以及基于对比学习的方法,相对于其他方法都展现出了一定的优势,这验证了这两种技术路线在协同过滤任务上的优势。
3.2 消融实验
接下来,我们去除了 HCCF 模型中的各个重要模块,包括:LowR 对超图结构进行低秩参数分解、HHM 层级超图映射网络、Hyper 整个超图神经网络部分、以及 CCL 跨视图对比学习。从下图可以看出,去掉各个模块均引起了模型效果退化,对 HCCF 的优越效果起到了正面的作用。
3.3 抗稀疏和过平滑能力
针对本文面临的两大挑战,本项实验验证了 HCCF 模型面对不同程度的稀疏数据时的表现,并测量了模型训练所得节点表征的平均距离,以衡量全局平滑程度。如下图所示,横轴代表对应子数据集中用户的交互数量范围,HCCF 在处理不同稀疏度的用户时均能取得较为优越的模型表现,这验证了 HCCF 对抗稀疏数据的鲁棒性。
下表测量了 HCCF 模型,以及去除对比学习模块、去除超图神经网络,这三个模型变体在用户表征和商品表征上的平均距离。可以发现,加上超图网络和对比学习网络的 HCCF 模型具有更高的 MAD 值,也就是说,HCCF 得到的用户、商品表征,平均来说具有更大的节点表征距离,有更小的过平滑倾向。
3.4 超参学习
在实验中我们调整了 HCCF 模型的三个重要超参数,即隐藏层维度大小、每层超边中超边数量、以及(超)图神经网络迭代次数。实验结果如下图所示,可以发现在大多数情况下,较为适中的超参取值可以获得最佳的模型效果,过小或过大的超参取值则容易导致欠拟合和过拟合情况。
3.5 样例学习
本文针对 HCCF 在全局关系学习和减轻过平滑问题两个方面的表现,分别进行了样例学习。首先,下图展示了随机挑选的 7 个用户样例,包括他们的表征向量(可视化为圆圈的颜色)、他们和挑选的 6 条超边之间的关联情况、用户最多交互的三个商品类别、以及用户之间、商品类别之间的关联关系。首先可以发现,表征相近的用户具备相似的超边连接情况,这验证了超边在模型表征学习上的重要作用。
其次,在一些选出的用户之间并没有共同交互商品这一显式告知模型的信息,但存在大量不在模型输入中的、用户间关联信息,例如共享高频交互类别、社交好友关系,HCCF 模型能够在不知道这些隐式关联关系的情况下,仍然给这些无显式关联关系的用户分配十分相近的表征,这说明了 HCCF 的超图结构学习模块在学习节点间隐式关系上的能力。
同时,我们还验证了 HCCF 在减轻过平滑问题上的效果。我们随机采样了一个紧密连接的用户子图关系(如下图),图中连线代表用户之间存在共同交互商品。通过对比 HCCF 以及去除超图模块的变体,我们可以发现,HCCF 在这一紧密连接的子图中仍然分配了两类节点表征(即图中绿色和橙/棕色),而没有超图网络的变体则分配了大致相同的一类颜色。
通过检查两类节点的统计信息我们发现,绿色节点的交互行为数量较少,而棕色节点的交互数量显著更多。这一实验可以说明,HCCF 的超图对比学习架构能够避免给相邻但不同的节点分配相近的表征,而能够根据节点连接关系进行全局表征学习,从而避免过平滑问题。
总结
本工作提出了一种超图对比学习框架 HCCF,用以缓解协同过滤推荐系统中的数据稀疏问题和过平滑问题。HCCF 模型使用了一种可以进行高效超图结构学习的超图神经网络,以对节点间的隐式关系进行全局学习。利用这一超图全局关系学习,HCCF 在图神经网络所得的局部关系表征和超图所得的全局关系表征之间进行自监督对比学习,从而增大两个试图的共性,增加监督信号以辅助模型训练。充分的实验验证了 HCCF 模型在各个方面相对于现有基线方法的优势。我们希望这种超图全局关系学习方法,以及跨试图对比学习框架,可以给协同过滤以及其他图关系学习研究方向带来启发。
更多阅读
#投 稿 通 道#
让你的文字被更多人看到
如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢?答案就是:你不认识的人。
总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。
PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读,也可以是学术热点剖析、科研心得或竞赛经验讲解等。我们的目的只有一个,让知识真正流动起来。
稿件基本要求:
• 文章确系个人原创作品,未曾在公开渠道发表,如为其他平台已发表或待发表的文章,请明确标注
• 稿件建议以 markdown 格式撰写,文中配图以附件形式发送,要求图片清晰,无版权问题
• PaperWeekly 尊重原作者署名权,并将为每篇被采纳的原创首发稿件,提供业内具有竞争力稿酬,具体依据文章阅读量和文章质量阶梯制结算
投稿通道:
• 投稿邮箱:[email protected]
• 来稿请备注即时联系方式(微信),以便我们在稿件选用的第一时间联系作者
• 您也可以直接添加小编微信(pwbot02)快速投稿,备注:姓名-投稿
△长按添加PaperWeekly小编
现在,在「知乎」也能找到我们了
进入知乎首页搜索「PaperWeekly」
点击「关注」订阅我们的专栏吧
·
边栏推荐
- 【MATLAB项目实战】基于卷积神经网络与双向长短时(CNN-LSTM)融合的锂离子电池剩余使用寿命预测
- JS tutorial using electron JS build native desktop application ping pong game
- GUI+SQLServer考试系统
- Incomplete line spacing adjustment of formula display in word
- The function keeps the value of variable H to two decimal places and rounds the third digit
- Wechat app mall, review products, upload commodity pictures, and score Commodity Services
- Redis overview
- Experience in hierarchical debugging of boards and cards
- Count the number of words in a line of string and take it as the return value of the function
- What is the preferential account opening policy of securities companies now? Is it safe to open an account online now?
猜你喜欢
Introduction to minimal API
Cuckoo filter for Chang'an chain transaction
Junit单元测试
A simple membership card management system based on Scala
Gui+sqlserver examination system
C语言 头哥习题答案截图
Byte interview: two array interview questions, please accept
Scala Basics (II): variables and data types
Wechat app mall, review products, upload commodity pictures, and score Commodity Services
Teach you to learn dapr - 9 Observability
随机推荐
Scala Basics (II): variables and data types
进军AR领域,这一次罗永浩能成吗?
Science | 红树林中发现的巨型细菌挑战传统无核膜观念
Sandboxed container: container or virtual machine
proxy
Teach you to learn dapr - 5 Status management
SQL injection for Web Security (3)
【MATLAB项目实战】基于卷积神经网络与双向长短时(CNN-LSTM)融合的锂离子电池剩余使用寿命预测
Redis migration (recommended operation process)
Introduction to minimal API
Junit单元测试
Calculate the average of N numbers in the group indexed by the formal parameter x, move the data less than the average in the group indexed to the front of the array, and move the data greater than or
Notes on key review of software engineering at the end of the term
Teach you to learn dapr - 2 Must know concept
Knowing these commands allows you to master shell's own tools
In those years, interview the abused red and black trees
Calculate the sum of the main diagonals of the array
Basic requirements: 7 problems in singleton mode
[从零开始学习FPGA编程-46]:视野篇 - 集成电路的发展与技术进步
Vibrating liquid quantity detecting device