Knowledge Graph Convolutional Networks for Recommender Systems
The work was carried out by Hongwei Wang and Miao Zhao (Xingxing) at Shanghai Jiao Tong University on March 18, 2019.
研究背景
为了缓解基于协同过滤技术的推荐系统中的数据稀疏性及 cold start 问题的研究者与工程师一般会从用户与项目的属性中提取特征并开发高效的算法以挖掘这些额外信息研究者与工程师一般会从用户与项目的属性中提取特征并开发高效的算法以挖掘这些额外信息通常情况下各属性之间并非孤立存在而是相互关联地构成一个知识图谱(Knowledge Graph KG)。
KG优点:
- KG中项目间的多元语义关联有助于发现潜在联系并提升结果准确性;
- KG中的多种关系有助于有效地扩展用户的兴趣并丰富推荐项目的多样性;
- KG整合了用户的历史偏好与推荐商品,从而为推荐系统提供了可解释性的基础。
现有研究
手动设置的元路径和元图是什么样的?
研究内容
这里的receptive field是什么意思?one-hop临近信息
这里的influence范围是什么意思?一阶邻居的信息
便于接收域扩展到多个跃点,并通过这种机制建立高阶邻近模型的同时,在实际应用中能够帮助用户发现潜在的长距离兴趣。
该研究提出了一种基于知识图谱的卷积神经网络模型(KGCN)。该模型的核心创新点在于通过计算KG中某个实体的表示时,在聚合包含偏差的邻域信息的过程中实现了特征的有效融合与优化处理。主要优势体现在两个方面:一是能够有效捕捉实体间的复杂关联关系;二是通过引入动态权重机制提升了模型在处理异构数据方面的表现能力。
这里是指的在聚合邻居实体的嵌入时的权重选择?
如何设定固定大小的领域呢?怎么选择这个大小参数呢?
此环节涉及邻居嵌入融合时权重设定的问题
应用数据集:MovieLens-20M(电影),Book-Crossing(书籍)和Last.FM(音乐)。
贡献点
就是在三个数据集上的效果变好了呗
也算贡献点?逗我呢吧?
KGCN
问题定义
在传统的推荐机制中,我们定义了一个由用户集合U={u₁,u₂,...,u_M}与项目集合V={v₁,v₂,...,v_N}构成的系统模型。通过用户的隐式反馈信息构建了用户-项目关联矩阵Y∈R^{M×N}。其中每个元素y_uv表示用户u对项目v的参与情况:若y_uv=1,则代表用户u对项目v进行了互动行为(如点击、浏览或购买);反之则表示无相关互动行为。与此同时,在知识图谱领域中存在一个由实体-关系-实体三元组(h,r,t)构成的知识图G。在这里,h∈E,r∈R,t∈E分别表示知识三元组的头实体、关系和尾实体,E与R分别为知识图中的实体集合与关系集合。基于给定的用户-项目交互矩阵Y以及知识图G,我们的目标是预测当用户u与未有交互记录的新项目v之间是否存在兴趣关联性,即学习一个预测函数\hat{y}{uv}=F(u,v|Θ,Y,G)。其中\hat{y}{uv}表示用户u对项目v感兴趣的可能性大小,而Θ则是函数F所依赖的参数集
KGCN Layer
本节将介绍单个KGCN层的工作原理及其实现机制。在知识图谱中,我们关注用户u与其可能关联的项目(实体)v之间的候选关系。通过集合N(v)来表示那些与实体v直接相关联且涉及关系r_{e_{i},e_{j}}}的其他实体。为了描述实体间的关联性,则引入了一个函数形式:
π^{u}_{r}=g(u,r) \quad (1)
其中\pi^{u}_{r}=g(u,r)式表示用户与特定关系之间的重要程度。例如,在电影推荐场景中,一个用户可能更倾向于与其他具有共同明星合作过的用户形成连接;而另一个用户则可能根据电影类型进行选择偏好。为了完整地描绘项目v在知识图谱中的位置及其邻近关系,则需要计算其邻域的线性组合。


这里不同的常数k对于结果的影响感觉还是蛮大的,另外采样的邻居如何进行选择也是一个比较有趣的研究点,但是,这里并没有说怎么选择
这里不同的常数k对于结果的影响感觉还是蛮大的...

- 聚合方式:
为什么要非线性变换呢?
为什么要非线性变换呢?
为什么要非线性变换呢?

拼接聚合:

邻居聚合:

学习算法
多层传播技术:
通过将每个实体的初始表征(0阶表征)传播至其邻接体来实现1阶表征的结果;接着我们可继续这一过程,在此基础上进一步传播与聚合1阶表征以获取2-阶段表特征;通常情况下,在计算中一个实体经过h阶段后会整合自身及其邻接体在各个阶段的信息;最大可达深度为h层。

训练过程中使用负采样策略,损失函数如下:

其中交叉熵损失为J;负采样分布为P;在本文研究中,
公式推导如下:
T^{u} = | {v:y_{uv} = 1}|;
均匀分布用于定义P;
最后一项则为L2正则化项。
实验
数据集
- MovieLens-20M:是电影推荐领域中的经典基准数据集,在MovieLens网站上收集了约2,843,796个明确标注的电影评论(基于1至5分)。
- Book-Crossing:在书评分享平台Book-Crossing上有超过一百万本图书的评分(基于双侧评分)。
- Last.FM:该平台汇聚了来自Last.fm在线音乐系统的约2,314,789名用户的播放记录信息。


基线
SVD 是协同过滤方法的核心模型之一,在分析用户的偏好模式时具有重要价值;它通过计算用户的评分向量之间的点积表示来捕捉用户的兴趣与项目的关联度。
在点击率优化(CTR)场景中,“特征型分解模型”是当前研究的核心方向;该方法关注于如何高效地提取和利用高维空间中的关键属性信息。
在协同过滤(CF)领域,“LibFM + TransE”是一种创新性的方法;它不仅继承了传统的线性模型优势,在此基础上结合了图嵌入技术的特点。
针对复杂的信息网络分析,“PER”提供了一种全新的视角;该方法通过构建异构信息网络并挖掘其隐含的知识关联性来进行推理。
在推荐系统中,“CEK”提供了一种多模态的知识整合方案;它能够有效融合结构化数据、文本信息以及视觉数据等多种类型的知识。
RippleNet则借鉴了内存网络的基本思想;但其核心创新在于能够动态地根据知识图谱中的关系更新用户的偏好表达。
实验设置:
详见论文


结果


- 结果分析:
- 相较于电影而言,在书本和音乐方面KGCN的改进更为显著。
- 在不依赖于知识图谱(KG)的基准下,SVD和LibFM的表现明显优于那些具备KG意识的PER和CKE。
- 通常来说,在推荐性能上LibFM + TransE会优于单纯的LibFM模型。
- 实证结果显示,在所有基准测试中PER的表现始终是最差的。
- 研究表明,在与众多基准模型对比时RippleNet展现出卓越的能力。值得注意的是,在知识图谱(KG)中捕捉多跳邻域关系对于提升推荐效果至关重要。
对于三种不同的聚合方式,得到:
KGCN在性能上显著优于所有基准模型,并且这些模型之间也存在一定差异:其中KGCN-sum的表现最佳,在整体上遥遥领先;相比之下,KGCN neighbor的表现则在Book-Crossing和Last.FM等数据集上显示出明显劣势。这一差异可能源于邻居聚合器仅依赖邻居表示而忽略了实体自身的重要信息。
特别地,在数据稀疏性问题较为突出的Book-Crossing和Last.FM中,KGCN-avg的表现明显不如KGCN-sum。这表明通过捕获用户的个性化偏好以及知识图谱中的语义信息确实有助于提升推荐系统的性能。
邻居采样的大小不同的影响

我们调整了抽样邻居K的规模,并通过实验观察其对KG性能的影响。根据表3的数据可知,在设定K为4或8时能够获得最佳性能表现。具体而言,在设定过小时,网络节点缺乏足够的信息融合能力;而当设置过高时,则可能受到噪声数据的影响而影响模型效果。
接收场深度的影响

当设定H为3或4时,则会出现严重的模型崩溃现象;这是因为增大H值会引入大量噪声。这一发现与我们的预期一致,在推断项目间相似性时过长的关系链并无意义。实验结果表明,在这种情况下即使将H设为1或2也能满足实际需求
嵌入尺寸的影响

通过逐步优化参数量(即d),我们可以增强模型性能。较大的参数量能够捕捉更多的信息。然而,在设置过高的参数量时可能会导致过拟合。
结论
未来方向
- 深入研究非均匀采样器(尤其是重要性采样)将是未来研究领域中的一个重点方向。
- 本研究的主要内容集中在建模项目终端KG的构建与应用上。未来工作的一个值得探索的方向是考察用户端KG对推荐性能提升的作用。
- 本研究致力于提出一种创新性的算法,并将其成功地应用于两个末端的Knowledge Graph整合过程中。
收获:
- 将KGCN整合至传统的GCN架构中
- 不同邻居采样策略的比较研究
- 实验参数的具体配置方案
- 不同聚合机制的性能对比分析
