知识图谱(图网络)在推荐系统中的重要性不言而喻,但并非所有关系都与目标推荐任务相关。为解决这一问题,本文介绍了名为DiffKG的新的知识图谱扩散模型,结合了生成扩散模型与数据增强范式,实现了鲁棒的知识图谱表示学习。
推荐系统是现代网络领域的重要部分,协作过滤是其典型技术。但用户-项目的交互稀疏,限制了推荐性能。为解决此问题,知识感知推荐技术诞生,结合知识图(KG)信息。尽管基于嵌入和基于路径的方法取得进展,但它们的质量高度依赖输入知识图,且易受噪声影响。为此,研究利用对比学习增强知识感知推荐,但这些方法过于依赖简单随机增强或直观交叉信息,忽略了推荐任务中的不相关信息。因此,需要有效过滤噪声知识图谱信息,灵活编码用户偏好。我们提出创新模型DiffKG,适用于知识感知推荐系统。此方法包含渐进前向过程,初始知识图通过引入随机噪声逐步损坏。增量损坏过程在多次迭代中积累噪声,然后通过迭代恢复这些噪声来恢复原始知识图结构。为解决知识图中的噪声问题,我们引入KG过滤器,消除不相关和错误数据,与用户偏好学习无缝结合。此外,我们设计协作知识图卷积机制,通过将协作信号集成到知识图谱扩散过程中来增强扩散模型。
用户-项目交互图是一种表示用户和项目之间交互关系的图形。它由一组用户和一组项目组成,每个用户和项目都单独表示。在推荐场景中,这种图可以用来预测用户与项目的交互可能性。知识图谱是一种用于组织外部项目属性的图形结构。它通过合并不同实体的相关性和关系来构建,并使用三元组表示实体之间的关系。利用知识图谱可以更全面地了解项目的属性和实体间的复杂关系。KG 增强推荐任务是给定用户-项目交互图和知识图谱的目标,通过训练具有可学习参数的推荐模型来预测用户与项目的交互可能性。该模型基于用户和项目的属性、交互历史和知识图谱中的相关信息来预测交互概率。DiffKG技术设计主要包含三个组件:异构知识聚合模块、知识图扩散模型和KG扩散增强数据增强范式。这些组件共同作用,用于捕获知识图谱中的各种关系,并确保高质量的推荐信息。图1展示了DiffKG 模型的总体框架。图1 所提出的 DiffKG 模型的总体框架
为了应对知识图中知识关系的异构性,我们引入了关系感知知识嵌入层。这一层的设计灵感来源于图注意机制,能够全面捕捉知识图中的各种关系,避免了手动设计路径的局限性。通过与参数化注意力矩阵的结合,实体和关系依赖的上下文被投影到特定的表示中。项目与连接实体间的消息聚合机制详述如下:
在知识聚合过程中,利用知识图中的关系表示项目和实体的邻近实体,防止过拟合时引入了dropout函数,标准化时使用_Norm_Max函数。非参数权重矩阵根据输入项和实体表示进行定制,并采用LeakyReLU激活函数。在异构知识聚合前,在知识图上实施了随机丢弃操作,以提升推荐系统性能。对比学习在推荐系统领域取得了显著成功。KGCL、MCCIK和KGIC等方法是引入对比学习技术的知识图增强推荐方法。但这些方法依赖于随机增强或简单跨视图对比,这会导致不必要的噪声和无关的补充信息。在知识图中,大量语义关系至关重要,只有一部分与下游任务相关。未处理无关知识会损害性能。为应对挑战,建议使用生成模型重建知识图子图,专门包含相关关系。详细解释见3.3节。构建相关图后,结合图协作过滤和异构知识聚合来编码用户和项目表示。我们设计了局部图嵌入传播层,灵感来自LightGCN中的简化图卷积网络,描述为:
我们使用xu(l)和xi(l)表示用户u和项目i在第l个图传播层的编码表示。邻近的用户/项目表示为Nu和Ni。通过使用多个图传播层,基于图的协同过滤(CF)框架可以捕获更高阶的协作信号。在我们的编码管道中,Gk和Gk'用于异构知识聚合,生成输入项的特征向量,同时保留知识图的语义信息。这些项目嵌入被进一步输入到基于图的CF框架中细化其表示。在创建了两个知识增强的图视图后,我们将同一节点的视图特定嵌入视为正对(例如,(x′u, x′′u )|u ∈ U)。不同节点的嵌入视为负对(例如,(x′u, x′′u )|u, v ∈U, u≠ v )。为了实现这一点,我们定义了一个对比损失函数,旨在最大化正对之间的一致性并最小化负对之间的一致性。对比损失可以表示为:
使用余弦相似度函数来测量两个向量之间的相似度,表示为? (·)。超参数 ?,称为温度,用于 softmax 操作。用户侧的对比损失为 L???? ?? ,项目侧的对比损失为L???? ??。通过结合这两个损失,我们得到自监督任务的目标函数,可以表示为 L?? = L???? ?? + L???? ??受到扩散模型在生成数据方面的启发,我们提出了一种知识图扩散模型。该模型旨在从原始知识图Gk生成相关子图Guncan。模型经过训练,能够识别知识图中被噪声破坏的关系。通过逐渐引入噪声到知识图谱中的关系,模拟关系的损坏。然后,通过迭代学习,目标是恢复原始关系。这种迭代去噪训练使DiffKG能够对关系生成过程建模,减少噪声影响。最终,利用恢复的关系概率从Gk重建子图G? ′。图2 带知识图谱的扩散模型
如图2,知识图(KG)扩散包含正向和反向两个过程,并可应用于知识图谱。我们使用邻接矩阵来表示知识图谱,其中项目与实体集Σ中的实体的关系由二进制值指示。前向过程中,知识图谱的原始结构通过逐步添加高斯噪声而被破坏,初始状态为项目的原始邻接矩阵。在马尔可夫链中,通过在T步逐渐添加高斯噪声,构造?1:T。参数化从??−1到??的过渡为:
t ∈1,···,T 表示扩散步骤,每一步添加的高斯噪声的规模由?? ε (0, 1)控制。当T→∞时,状态T收敛于标准高斯分布。通过利用重新参数化技巧和两个独立高斯噪声的可加性,可以从初始状态?0推导出状态??。过程描述为:
为了调节噪声的添加,采用了一个线性噪声调度器,其使用三个超参数:?、???? 和 ??? 来实现 1− ¯??。线性噪声调度器的定义如下:
线性噪声调度器使用三个超参数:? ε [0, 1] 控制噪声尺度,而 ???? < ??? ε (0, 1) 设置添加噪声的上限和下限。接下来,扩散模型学习从 ?? 中去除添加的噪声,以便使用神经网络恢复 ??−1。从?T开始,逆向过程通过去噪过渡步骤逐渐重建知识图谱(KG)内的关系。去噪过渡步骤概述如下:
我们利用由 ? 参数化的神经网络来生成高斯分布的均值 ?? (?? , ?) 和协方差 ?? (?? , ?)。为了优化模型,我们最大化原始知识图关系的证据下界(ELBO)。概率扩散过程的优化目标:log?(?0) ≥ E?(?1 |?0 ) [log?? (?0 |?1)]。
扩散模型的优化目标由两项组成。第一项衡量0的恢复概率,代表模型重建原始知识图的能力。第二项调节反向过程中 ? 在 2 到 T 范围内的 ??−1 的恢复。优化目标中的第二项旨在通过 KL 散度 D?? (·) 使分布 ?? (?−1 |??) 近似于易处理分布 ?(??−1 |?? , 0)。继[31]之后,步骤?的第二项L?如下:
其中 ˆ?? (?? , ?) 是基于 ?? 和 ? 来预测的 ?0,由多层感知器 (MLP) 实现。具体来说,我们使用多层感知器 (MLP) 来实例化 ˆ?? (·),该多层感知器将 ?? 和 ? 的步骤嵌入作为输入来预测 ?0。我们用 L? ???? 表示等式9中第一项的负值,可按下式计算:
我们通过未加权的-||估计高斯对数似然log?(?0 |?1)ˆ?? (1, 1)−0||22。L?????等于L1,所以方程9中的第一项可以被认为是−L1。ELBO可以表示为−L1−ΣT?=2L?。为了最大化ELBO,我们可以通过最小化ΣT?=1L?来优化ˆ?? (? , ?)中的?。具体来说,我们对步骤?进行统一采样,以在?∼U(1, T)上优化L????。ELBO损失L????如下所示:
我们设计了一种简单的推理策略,用于知识图谱中的关系预测,该策略与DiffKG的训练相一致。首先,在前向过程中逐步破坏原始KG关系,得到T'。然后,设置^T = T'并执行反向去噪,忽略方差并使用^t-1 = μφ(^t, t)进行确定性推理。接下来,使用^T0重建修改后的KG G'k的结构。对于每个项目i,选择顶部k^zij(j∈[0, |E | - 1], j∈J和|J | = k),并添加项目i和实体j∈J之间的k关系。这种方法保留了知识图谱的信息结构,同时在前向过程中加入噪声,在反向过程中加入确定性推理。为解决扩散模型在生成与下游推荐任务相关的去噪知识图时的局限性,我们提出CKGC。该方法利用用户-项目交互数据,将推荐任务的监督信号融入KG扩散优化中。通过聚合用户项交互数据,模型能更好地捕获用户偏好,并将其整合到知识图中,提高与推荐任务的相关性。这种方法将用户偏好融入知识图扩散优化,有效地弥补了知识与推荐任务之间的鸿沟。CKGC的损失函数L????通过将用户-项目交互信息和知识图预测关系概率聚合到项目嵌入生成过程中来计算。具体步骤如下:首先聚合用户-项目交互信息和知识图预测关系概率,得到ˆ?0,然后更新用户-项目交互矩阵,整合知识图信息。接着结合更新后的用户-项目矩阵和用户嵌入E?,得到包含知识和用户信息的项目嵌入E ′ ?。最后计算E ′ ?和原始项目嵌入E?之间的MSE损失,并与ELBO损失一起优化。L????的表达式如下:
DiffKG的训练包括推荐任务训练和KG扩散训练两部分。KG扩散的联合训练包含ELBO损失和CKGC损失两个损失分量,并同时进行优化。因此,KG扩散的损失函数可以表示为:
为了平衡 ELBO 损失和 CKGC 损失的贡献,我们引入了一个超参数 ?0 来控制它们各自的强度。对于推荐任务,我们将原始贝叶斯个性化排名(BPR)推荐损失与前面提到的对比损失 L?? 结合起来。BPR损失,表示为L???,定义如下:
训练数据表示为 O = (?,?,?)| (?,?) ε O+ , (?, ?) ε O− ,其中 O + 表示观察到的交互作用,O − 表示从用户集 U 和项目集 I 的笛卡尔积(不包括 O + )获得的未观察到的交互作用。根据这些定义,推荐任务的综合优化损失为:
可学习的模型参数表示为 θ,它包含模型内的可训练变量。此外,?1 和?2 是超参数,用于确定基于 CL 的损失和 ?2 正则化项各自的强度。为了评估DiffKG的有效性,设计了一系列实验来研究以下问题:RQ1:DiffKG的性能与最先进的推荐系统相比如何?
RQ2:DiffKG的关键组件对整体性能有何独特贡献,以及模型如何适应超参数设置的变化?
RQ3:DiffKG如何证明其在克服数据稀疏和噪声障碍方面的有效性?
RQ4:DiffKG模型在多大程度上为推荐提供了高水平的可解释性,以促进对其决策过程的透彻理解?为了评估的全面性和多样性,我们采用了三个公共数据集:Last-FM(音乐)、MIND(新闻)和Alibaba-iFashion(电子商务)。经过10核技术预处理,过滤掉出现次数低于10的用户和项目。对于Last-FM,我们采用映射方法关联项目与Freebase实体并提取知识三元组。对于MIND,我们遵循[24]收集维基数据的KG。对于Alibaba-iFashion,我们手动构建KG,利用类别信息作为有价值的知识。三个数据集及其对应的KG的详细统计数据如表1所示。
为了避免评估中负采样带来的偏差,我们在满秩设置下报告性能指标,利用Recall@N和NDCG@N作为top-N推荐指标,其中N=20,这是常用的值。为了全面评估DiffKG,我们将其与不同研究流的一组基线进行了比较。
BPR:该方法利用矩阵分解的隐式反馈导出成对排名损失。
NeuMF:将MLP纳入矩阵分解,学习丰富的用户和项目表示,同时捕获它们之间的特征交互。
GC-MC:通过提出图自动编码器,GC-MC利用底层图结构来预测未知的评级。
LightGCN:对协作数据的标准GCN中的模块进行深入分析,LightGCN提出了专为图CF任务定制的简化GCN模型。
- SGL:引入了数据增强技术(例如随机游走和特征丢失)来生成多个视图。
- KGNN-LS:KGNN-LS 考虑用户对图卷积中不同知识三元组的偏好,通过引入标签平滑作为正则化,促进知识图谱中相关实体间相似偏好权重的分配。
- KGCN:它使用GNN来整合高阶信息,进而生成项目的聚合知识表示。
- KGAT:引入了协作知识图谱的概念,通过在联合用户-项目-实体图上应用注意聚合来发挥作用。
- KGIN:对用户的关系意图进行建模,并利用关系路径感知聚合从复合知识图中获取丰富的信息。
我们评估了各种方法的整体性能,DiffKG在所有基线方法中表现最优,结果如表2。表2 Last-FM、MIND、AlibabaiFashion 数据集在 Recall@20 和 NDCG@20 方面的性能比较。
DiffKG的图扩散模型增强了数据增强的有效性,提高了推荐的准确性。与传统方法如BPR和NeuMF相比,DiffKG结合知识图信息显示出优越性。与其他知识感知模型相比,DiffKG具有显著的性能优势。这表明知识图通常包含不相关的关系,可能会对推荐质量产生负面影响。KGCL和DiffKG采用不同的方法来解决协同过滤的稀疏性问题,但DiffKG采用通过设计的KG扩散模型生成的任务相关知识图,这表明DiffKG方法的有效性。本研究评估了DiffKG中关键模块的有效性,开发了三种模型变体:“w/o CL”(删除KG增强数据增强模块),“w/o DM”(用变分图自动编码器替换扩散模型),“w/o CKGC”(从KG扩散模型优化中排除协作知识图卷积)。如表 3 所示,消融研究得出关键结论:1) 去除KG增强的对比学习导致性能显著下降,验证了知识图合并额外自我监督信号的有效性。2) 知识图扩散模型组件的消融证明了其在提高DiffKG性能中的关键作用,扩散过程捕获任务相关关系的有效性得到证实。3) 缺乏协作知识图卷积模块导致性能下降,强调了DiffKG中协作知识图卷积的重要性,有助于将用户协作知识集成到推荐扩散模型的训练中。在Last-FM和MIND数据集中观察到较大性能下降,表明其知识图中存在较高水平的噪声。表3 DiffKG关键组件的消融研究
本研究深入探究了不同超参数对我们方法的影响,特别是数据增强和知识图扩散模块中的超参数。为直观展示结果,我们在MIND数据集上报告了相应的图表,如图3。图3 MIND 数据集的超参数分析
我们研究了DiffKG的超参数,特别是?1(InfoNCE损失权重)和?(softmax温度)。最佳性能出现在?1=1和?=1时,强调了对比学习的重要性。在知识图扩散模型中,增加扩散步数对精度的影响最小,如图3(b)。为了平衡性能和计算,我们选择了T=5。有趣的是,最佳性能在T′=0时实现,这避免了原始KG的过度损坏。稀疏的用户交互数据。为了评估DiffKG在稀疏数据处理方面的性能,我们将用户和项目分为五组,每组包含相同数量的用户,交互密度从组1到组5逐渐增加,代表不同程度的稀疏性。采用类似的方法处理物品,测试结果如图4所示。图4 不同数据稀疏程度的性能
知识图噪声。为了评估DiffKG过滤不相关关系的能力,我们在KG中注入10%的噪声三元组,模拟具有大量主题不相关关系的场景。在保持测试集不变的情况下,将DiffKG的性能与其他知识感知推荐系统进行比较。图5 减轻 KG 噪声的性能
- DiffKG在稀疏数据推荐评估中显示出优越性能,优于KGCL,这有力证明了KG增强数据增强的有效性。该方法有效解决了知识图谱中无关关系可能误导用户偏好编码的问题。
- 在长尾项目分布的推荐场景中,DiffKG显著提高了推荐性能,有效减轻了流行度偏差。与其他基线方法相比,DiffKG在推荐性能上优于KGAT和KGIN等竞争性KG感知推荐系统。这表明,简单地将所有KG信息纳入协同过滤可能会引入不相关项目关系的噪声,且无法有效缓解流行度偏差。
- DiffKG模型在各种知识感知推荐模型中表现最优,这得益于其生成的任务特定知识图。DiffKG的噪声抑制效果显著,如图5,即使存在知识图噪声,其性能下降幅度也最低,证明了其能从噪声中发现相关信息。此外,KG能有效支持用户偏好建模。
我们进行了新闻推荐案例研究,比较了使用和不使用知识图扩散模型的结果。研究发现,知识图谱中的噪声可能会引入偏差并误导用户表示。然而,通过结合KG扩散范式,我们的DiffKG有效地过滤掉了不相关的KG信息,从而产生了更相关的新闻文章。这些文章包括对星球大战视频游戏的讨论、演员参与星球大战电影以及社交媒体对星球大战电影的评论。通过准确地利用和过滤知识图谱信息,我们的模型在推荐任务中展示了改进的性能,说明了其在增强相关性和减轻知识图谱中不相关信息的影响方面的有效性。图6 带和不带 KG 传播的相关新闻
现有的知识感知推荐方法包括基于嵌入、基于路径和基于GNN的方法。其中,基于GNN的方法,如KGCN、KGAT和KGIN,结合了两种范式的优点,能从知识图中提取有价值的信息。KGCN利用固定数量的邻居进行项目表示聚合,而KGAT则根据知识邻居的重要性分配权重。KGIN在聚合层中结合了用户偏好和关系嵌入。这些基于GNN的方法利用GNN的强大功能和知识图中的丰富信息来增强推荐系统。数据增强技术与自我监督学习(SSL)的结合已成为增强推荐系统的有效方法。基于SSL的数据增强技术能利用从原始数据中提取的额外监督信号,解决数据稀疏性并提高推荐性能。对比学习等数据增强方法生成用户或项目表示的增强视图,通过训练模型区分正负对,有效解决数据稀疏性问题,并通过自监督学习提高推荐性能。此外,受自然语言处理任务启发,屏蔽和重建增强技术涉及屏蔽或隐藏用户-项目交互的某些项目或部分,训练模型预测缺失的元素,迫使模型学习上下文关系。整合SSL数据增强技术到推荐系统,能解决数据稀疏性、捕获复杂模式并提高推荐系统的泛化能力。扩散概率模型在计算机视觉和自然语言处理等领域展现出巨大潜力。在视觉领域,扩散模型在图像生成和修复任务中表现优秀。在文本生成领域,模型被训练以从扰动的数据中恢复原始文本。扩散模型在其他领域也得到应用,如用于图生成的图学习,包括连续时间生成扩散过程和离散去噪扩散模型。最近,扩散概率模型在推荐领域也得到了些探索。