SIGformer: Sign-aware Graph Transformer for Recommendation---论文学习笔记

SIGIR 2024

用于推荐的符号感知图像转换器

摘要

在推荐系统中,大多数基于图的方法主要关注用户的正面反馈,而忽视了负面反馈的价值而将正负反馈结合起来形成符号图可以更全面地理解用户偏好。然而,现有的尝试整合这俩种类型反馈的方法很少,并且面临两个主要局限性

1)它们分别处理正负反馈,无法全面利用符号图中的协作信息;

2)它们依赖多层感知机(MLPs)或图神经网络(GNNs)从负面反馈中提取信息,这可能不是最有效的方式。

为了解决这些局限性,实验者引入了SIGformer,这是一种新的方法,它采用 transformer 架构来进行符号感知的图推荐。SIGformer融合了两种创新的位置编码,能够捕捉符号图的频谱属性和路径模式,从而充分利用整个图的信息。SIGformer在五个 real-world 数据集上的广泛实验表明,SIGformer优于现有方法。

1 Introduction

1.1 背景

 现有的基于图的推荐系统方法主要关注用户的正面反馈(如购买、点赞等),而忽视了负面反馈(如低评分、跳过等)的价值。然而,负面反馈同样提供了重要的信息,能够帮助更全面地理解用户偏好。

1.2 解决方案

提出了一种新的方法SIGformer,它使用Transformer架构来实现符号感知的图推荐。SIGformer的主要创新点包括:

  • 两种创新的位置编码
    • 符号感知频谱编码:(SSE,Sign-aware Spectral Encoding): 利用符号图的拉普拉斯矩阵的低频特征向量作为位置编码,以捕捉整个图的结构。这种编码可以使具有正面反馈的用户-项目对之间的嵌入更接近,同时使具有负面反馈的对之间保持距离。
    • 符号感知路径编码:(SPE,Sign-aware Path Encoding): 通过考虑图中所有路径关系(而非仅是最短路径)来进一步捕获用户与项目之间的协作关系。不同的路径类型反映了节点之间不同程度的相似性。
  • 通过这些位置编码,SIGformer能够在模型训练过程中有效地结合正负反馈,从而提升推荐的质量和准确性

SIGformer不仅解决了现有方法的局限性,还为如何更好地整合正负反馈以提高推荐系统的性能提供了一个新的途径。

2 Preliminary

这一节中,将介绍一些基本概念符号,以便更好理解 SIGformer 的设计。

2.1 符号定义:

  • VI分别代表用户集合和项目集合。
  • E^{+}表示正反馈边的集合,即用户对项目的正面互动,如购买、点赞等。
  • E^{-}表示负反馈边的集合,即用户对项目的负面互动,如跳过、低评分等。
  • G = VIE^{+}E^{-})是一个符号二部图,其中包含了用户与项目之间的正负交互信息。
  • 初始嵌入向量 E^{(0)}包含了用户的初始嵌入向量 e_{u1}^{(0)},...,e_{un}^{(0)} 以及项目的初始嵌入向量 e_{i1}^{(0)},...,e_{im}^{(0)} ,这些初始嵌入向量可以是随机初始化或从预训练模型中获取。
  • 对于变压器的第 l 层,Q^{(l)},K^{(l)},V^{(l)}分别代表查询、键和值矩阵,它们都是由前一层的嵌入向量E^{(l-1)}直接得到。
  • 更新后的嵌入向量E^{(l)}通过以下公式计算:

E^{(l)}=\frac{1}{2}\left ( softmax(\frac{Q^{(l)}(K^{(l)})^{T}}{\sqrt{d}}+P_{s}^{(l)})+softmax(P_{p}^{(l)}) \right )V^{(l)}

  • 其中,d是嵌入向量的维度,P_{s}^{(l)}P_{p}^{(l)}分别是频谱位置编码和路径位置编码,用来明确编码符号图的信息,为了减轻这两种位置编码幅度差异的影响,我们把它放在不同的softmax函数中。

2.2 预测模块:

  • 经过 L 层变压器后,最终的嵌入向量 E 通过聚合每一层的嵌入向量来生成:

E=\frac{1}{L+1}\sum_{0\leq l\leq L}E^{l}

  • 模型的预测结果 ​\hat{y}_{ui} 由最终嵌入向量通过内积计算得出,这是现有方法广泛采用的一种方式:

\hat{y}_{ui}=e_{u}^{T}e_{i}

2.3 符号感知频谱编码(SSE,Sign-aware Spectral Encoding):

  • 受到图谱理论的有效性启发,我们提出利用谱特征来增强我们的符号感知变压器模型。首先,我们将正图和负图的拉普拉斯矩阵结合如下:

L=(1-\alpha )L^{+}-\alpha L^{-}

         其中,\alpha 是一个灵活的超参数,控制负图的影响程度。

  • 符号图的拉普拉斯矩阵的特征向量为:

L=H^{T}\Lambda H, H=[h_{1},h_{2},...,h_{n+m}]^T

         其中,H 和 \Lambda 分别对应特征向量特征值。使用最小的 d 个特征值对应的特征向量 \tilde{H} 来编码符号图中的节点关系

3 方法

SIGformer是一种符号感知图转换器,旨在通过同时考虑正面和负面反馈来提高推荐系统的性能。该方法的关键组成部分包括两种创新的位置编码、基于变压器的架构以及优化策略。

3.1 符号感知频谱位置编码(Sign-aware Spectral Positional Encoding,SSE):

为了捕捉符号图的全局结构信息,SIGformer使用了符号感知频谱位置编码。这种方法基于符号图的拉普拉斯矩阵 L ,它是正图 L^{+} 和负图 L^{-} 的线性组合:

L=(1-\alpha )L^{+}-\alpha L^{-}

其中 \alpha 是一个超参数,用来平衡正图和负图的影响。通过对 L 进行特征分解,可以得到特征向量H 和对应得特征值 \Lambda 。最小的 d 个特征值对应的特征向量被用作位置编码,从而在嵌入空间中反映出节点之间的关系。

3.2 符号感知路径位置编码(Sign-aware Path Positional Encoding, SPE):

 除了频谱位置编码外,SIGformer还引入了符号感知路径位置编码,以捕捉局部路径模式。这种编码是通过随机游走生成的,并且能够反映不同类型的路径对节点相似度的不同影响。具体来说,对于每个节点 v ,从其邻居开始执行长度为 L_{p} 的无环随机游走,采样一组与轨迹类型相关的节点S_{v}。这些路径模式提供了关于节点之间连接方式的额外信息,有助于更精确地建模用户-项目交互。

3.3 基于Transfomer的架构:

 SIGformer的核心是采用Transformer架构来处理符号图中的信息。在每一层中,查询 Q{(l)}、键 K{(l)}和值 V{(l)} 矩阵由前一层的嵌入向量直接获得。更新后的嵌入向量 E^{(l)} 通过结合频谱位置编码和路径位置编码计算得出: 

E^{(l)}=\frac{1}{2}\left ( softmax(\frac{Q^{(l)}(K^{(l)})^{T}}{\sqrt{d}}+P_{s}^{(l)})+softmax(P_{p}^{(l)}) \right )V^{(l)}

这里,P_{s}^{(l)} 和 P_{p}^{(l)} 分别代表频谱位置编码和路径位置编码。通过这种方式,SIGformer能够在每层中有效地融合全局和局部的图结构信息。

3.4 损失函数:

 为了优化SIGformer,采用了二部损失(BPR loss),它鼓励模型预测用户对未交互过的项目的偏好低于已知的正反馈项目。损失函数定义如下:

L=-\sum_{(u,i)\epsilon E^{+}}ln \sigma (\hat{y}_{ui}-\hat{y}_{uj})-\beta \sum_{(u,i)\epsilon E^{-}}ln\sigma (\beta (\hat{y}_{ui}-\hat{y}_{uj}))

其中,\alpha 是Sigmoid函数,\beta 是一个超参数,用于调整负面反馈的影响。对于每个正/负反馈  (u,i),会从用户未交互过的项目集合中随机选择一个项目 j 来参与损失计算。

4 实验

在本节中,进行了全面的实验来回答以下问题:

  • RQ1: SIGformer与现有方法相比表现如何?
  • RQ2: 重要组件(如两种位置编码、负反馈)对SIGformer的影响是什么?
  • RQ3: 超参数如何影响模型性能?
  • RQ4: 不同路径类型如何捕捉节点相似性?
  • RQ5: SIGformer的运行时间与现有方法相比如何?

4.1 实验设置

4.1.1 数据集

我们在五个包含正负反馈的真实世界数据集上进行了实验:

  • Amazon-CDs, Amazon-Music, 和 Epinions:这三个广泛使用的数据集包含了来自Amazon和Epinions平台的用户对项目的评分。我们参考了最近的工作,并将高评分(例如大于3.5)视为正面反馈,其余为负面。
  • KuaiRec:记录了Kuai App中的用户行为。对于KuaiRec,我们关注的是密集数据集,并基于用户观看时长与视频总时长的比例来分类正负反馈。具体来说,比例等于或超过4的被视为正面反馈,低于0.1的则被视为负面反馈。
  • KuaiRand:同样记录了Kuai App中的用户行为。对于KuaiRand,我们使用了纯版本的数据,并利用“is_click”属性来分类正负数据。

我们采用了常规的5-core设置,并以7:1:2的比例随机将数据集划分为训练集、验证集和测试集。表1展示了各数据集的统计信息,包括用户数量、项目数量、交互次数以及正负交互的比例。

                         表1:数据集统计信息,”Pos/Neg“表示正负交互的比例

数据集用户数项目数交互次数Pos/Neg
Amazon-CDs51,26746.464895,2661:0.22
Amazon-Music3,4722,49849,8751:0.25
Epinions17,89417,660413,7741:0.37
KuaiRec1,4113,327253,9831:5.95
KuaiRand16,9744,373263,1001:1.25
4.1.2 评价指标

我们使用了两个广泛使用的指标Recall@K和NDCG@K来评估推荐的准确性。在这项工作中,我们将K设为20,这是基于近期关于基于图推荐的研究[3, 24, 67]的建议。

4.1.3 基线方法

为了全面分析SIGformer的性能,我们将其与多种基于图的基线方法进行了比较:

无符号图的推荐方法:

  • LightGCN [24]:一种经典的基于图的方法,利用线性图神经网络进行推荐。
  • LightGCL [3], XSimGCL [67]:这些是最先进的基于图的方法,通过对比学习增强了LightGCN。
  • GFormer [37]:最先进的方法,它结合了变压器架构来自动生成自监督增强。

4.2 实验结果

  • RQ1: SIGformer与现有方法的性能对比

我们的实验结果显示,SIGformer在所有五个数据集上都优于现有的先进方法。具体而言,在Recall@20和NDCG@20指标上,SIGformer分别比最佳基线方法提高了显著的百分比。

  • RQ2: 重要组件对SIGformer的影响

我们通过消融实验(ablation study)来评估两种位置编码和负反馈对SIGformer性能的影响。结果表明,两种位置编码和负反馈的整合对于SIGformer的性能提升至关重要。特别是,频谱位置编码能够有效捕捉全局结构信息,而路径位置编码则有助于捕捉局部路径模式。

  • RQ3: 超参数对模型性能的影响

我们研究了超参数α和β对SIGformer性能的影响。实验结果表明,适当调整这些超参数可以进一步提高模型的性能。我们还提供了超参数的最佳取值范围。

  • RQ4: 不同路径类型如何捕捉节点相似性

通过实验,我们发现不同的路径类型确实反映了节点之间不同程度的相似性。特定类型的路径在某些情况下更能准确地反映用户的偏好。

  • RQ5: SIGformer的运行时间与现有方法的比较

尽管SIGformer引入了额外的位置编码,但通过高效的采样策略,其运行时间与现有方法相当,甚至更快。这表明SIGformer不仅在推荐质量上有所提升,而且在效率上也具有竞争力。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/150013.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

图片压缩工具免费怎么找?归纳了这几个压缩工具

有哪些图片压缩工具免费?在数字化时代,图像已成为我们生活中不可或缺的一部分。无论是网站设计、社交媒体分享还是文件传输,高质量的图片都扮演着重要的角色。但高质量往往意味着大文件体积,这可能会导致加载速度变慢或存储空间不…

Java基础知识扫盲

目录 Arrays.sort的底层实现 BigDecimal(double)和BigDecimal(String)有什么区别 Char可以存储一个汉字吗 Java中的Timer定时调度任务是咋实现的 Java中的序列化机制是咋实现的 Java中的注解是干嘛的 Arrays.sort的底层实现 Arrays.sort是Java中提供的对数组进行排序的…

体制内打工人收藏!5款AI写作工具,助你变成单位笔杆子~

对于初入体制内职场的新手或是日常任务繁重、难以抽身撰写文件的同事们,别再让加班的夜晚成为常态!现在,就让我揭秘几个高效公文写作宝库,它们能助你迅速掌握公文写作的精髓,海量素材信手拈来,更有快速成文…

8个高清视频素材网站,免费下载。

想要找到免费还能商用的视频素材,一定要收藏好这8个网站,高清、4K高质量,无水印,适合专业剪辑和自媒体伙伴。 1、菜鸟图库(免费商用) 视频素材下载_mp4视频大全 - 菜鸟图库 菜鸟图库网素材非常丰富&#x…

2024年AI写作工具:10款网站让你告别文章/材料创作困难!

随着AI科技的迅猛跃进,我们正步入一个前所未有的便捷时代,其广泛应用已渗透到生活的每个角落。笔者精心挑选了10款高效AI智能助手,借助这些强大工具,我们不仅能够显著提升工作效率,还能激发无限创意潜能,让…

828华为云征文 | 云服务器Flexus X实例,Docker集成搭建Cloudreve云盘

828华为云征文 | 云服务器Flexus X实例,Docker集成搭建Cloudreve云盘 Cloudreve是一款开源的云存储管理系统,支持本机和第三方存储,提供用户管理、文件上传、下载、分享、在线预览等多种功能,适用于搭建个人和团队的私有云盘服务 …

【CSP】2024第二轮前的准备工作

第二轮成绩还没出,估分有希望但不高,发个帖子涨rp 1. 大纲 目前最新版本2023版NOI大纲 ,字字珠玑要细品,比如这次CSP-J第一轮就考到了格雷编码,没有经历GESP逐级洗礼的普娃哪知道这个啊。 2.在线培训 金牌教练在线…

三步教你如何让内容与众不同!

​声明:此篇为 ai123.cn 原创文章,转载请标明出处链接:https://ai123.cn/#1 在当今这个快速变化的市场中,内容的更新与维护成为了一项巨大的挑战。信息的过载导致用户对内容的“获得感”提出了更高的要求,他们不再满足…

UE5 C++: 插件编写04 | 自动增加前缀

准备工作 UObject* Asset UObject* Asset 通常指的是一个指向UObject的指针。UObject是Unreal Engine中的基类,几乎所有的引擎对象都继承自UObject。这个指针可以引用任何派生自UObject的对象,比如蓝图、材质、贴图、音频资源等资产。 如果你看到UObj…

openEuler普通用户su root时Permission denied

openEuler普通用户su root时Permission denied 背景: openEuler默认普通用户是不能通过su切换到root用户的 如果想通过su切换到root,有以下两个解决办法 1、修改/etc/pam.d/su 文件 [rootlocalhost ~]# vim /etc/pam.d/su #修改21行,将“…

微生物多样性数据的可视化技巧

在数据中穿梭找寻答案,是我们在探索微生物世界的过程中必不可少的一环。然而,单调的数据分析报告是否让你感觉枯燥乏味?这时候数据可视化的技术可就要来大展神通咯!利用图表和图形唤醒沉睡的数据,科学与艺术的搭配&…

llamafactory0.9.0微调qwen2vl

LLaMA-Factory/data/README_zh.md at main hiyouga/LLaMA-Factory GitHubEfficiently Fine-Tune 100+ LLMs in WebUI (ACL 2024) - LLaMA-Factory/data/README_zh.md at main hiyouga/LLaMA-Factoryhttps://github.com/hiyouga/LLaMA-Factory/blob/main

2.2 信道的极限容量

奈奎斯特定理 香农定理 🌏总结

Centos redis下载安装以及redis manager连接详细教程

一、redis下载以安装: 1.切换到home目录下 cd /home(/是根目录,./是当前目录 ../是父目录) 2.执行wget http://download.redis.io/releases/redis-5.0.2.tar.gz(这里,不知道为什么安装6开头的版本在make的…

增强GPT4v的Grounding能力,image-level

论文地址:arxiv.org/pdf/2310.11441 代码地址:

Linux环境的JDK安装

1.搜索可用的jdk yum search jdk/(或者是要安装的版本java-11)2.安装需要的版本 yum install java-11-openjdk.x86_643.验证是否安装成功 java -version4.配置环境变量 通过yum安装的默认路径为:/usr/lib/jvm cd /etc/profile.d/ touch java_home.sh vim java_…

不靠学历,不拼年资,怎么才能月入2W?

之前统计局发布了《2023年城镇单位就业人员年平均工资情况》,2023年全国城镇非私营单位和私营单位就业人员年平均工资分别为120698元和68340元。也就是说在去年非私营单位就业人员平均月薪1W,而私营单位就业人员平均月薪只有5.7K左右。 图源:…

软件测试 -- 功能测试--测试用例设计(方法)

(测试用例写完,一般会进行用例评审,目的是对测试用例进行审查和评估,以确保测试用例的质量和完整性,从而提高测试的有效性和效率。用例评审通常由测试小组中的多个成员参与,包括测试人员、开发人员、业务分析师和项目经…

GPU 算力与 CUDA 版本对应关系

1. 查询 GPU 算力(Compute Capability) https://developer.nvidia.com/cuda-gpus#compute 2. GPU 算力与 CUDA 版本对应关系 2.1. 信息来源 1 NVIDIA Datacenter Drivers :: NVIDIA Data Center GPU Driver Documentation 2.2. 信息来源 2 https://e…

如何在openEuler上安装和配置openGauss数据库

本文将详细介绍如何在openEuler 22.03 LTS SP1上安装和配置openGauss数据库,包括数据库的启动、停止、远程连接配置等关键步骤。 1、安装 使用OpenEuler-22.03-LTS-SP1-x64版本的系统,通过命令行安装openGauss数据库。 1.1、确保系统软件包索引是最新…