阅读日期:2021.6.5
论文地址:论文来源
论文信息:Zhao C, Li C, Fu C. Cross-domain recommendation via preference propagation GraphNet[C]//Proceedings of the 28th ACM International Conference on Information and Knowledge Management. 2019: 2165-2168.
发现问题
现有的“潜在空间中进行知识迁移”的跨领域方法(如 NeuMF+、CoNet、NATR)存在不足:
- 没有利用跨领域图结构信息:单独处理每个域,并依赖嵌入级信息共享或潜在特征映射,以进行知识迁移。这种知识迁移隐式地建模了不同领域之间的相互作用,并且没有意识到连接这两个领域的结构信息;
- 不能捕捉图上的高阶信息传播:不同领域的项目可能具有相似的属性,通过不同的跳数的转换,可以在这些属性上建立连接,从而可以在高阶层次图上传播用户的偏好,而这些方法没有捕捉这些高阶信息;
- 迁移学习模型的优化非常复杂:相比于统一模型(将两个领域构建的统一模型,同时进行优化)
研究问题
针对用户完全重叠的跨领域推荐问题,该研究构建偏好传播图(Preference Propagation GraphNet, PPGN)来弥补现有方法的局限性,即捕捉多跳用户偏好传播,显式地建模跨领域交互并保留结构信息。该模型主要包含两个模块:图卷积与传播模块(the graph convolution and propagation module) & 知识集成和预测模块( the knowledge integration and prediction module)。模型图如下图所示:
首先定义场景:针对在 D a \pmb{D}_a DDDa和 D b \pmb{D}_b DDDb两个域下的重叠用户的跨领域推荐问题(该问题可以推广到多领域环境)。 n n n表示用户的数量, p p p表示 D a \pmb{D}_a DDDa下物品的数量, q q q表示 D b \pmb{D}_b DDDb下物品的数量。
1. 图卷积与传播模块
获取叠加图上跨域的高阶用户-项目关系的关键是沿着观察到的链接(用户-项目交互)对知识的传递(knowledge flowing)进行建模,同时保留图本身的结构信息。
因此,为了联合地、直接地对跨领域交互进行建模,本研究定义了跨域偏好矩阵(CDPM, Cross-Domain Preference Matrix),该矩阵由联合交互图得到,如下图所示:
其中, 不同颜色的项目来自不同的域。该图进一步重构为右侧稀疏的跨域偏好矩阵CDPM,模型可以立即对其进行处理。实线表示已知的用户行为,点线表示潜在的推荐。通过多跳传播,该模型可以捕捉到用户偏好的变化并做出更好的预测。
在该模块中,主要遵循图卷积神经网络(GCN, Graph Convolution Network)的图卷积和传播层。在GCN中,图的卷积和传播层以图的邻接矩阵和节点嵌入作为输入,其中嵌入是按节点随机初始化的。
与一般的协同过滤矩阵不同,CDPM融合了两个域中用户和项目之间的交互,可以直接在不同的域中传播信息。将CDPM的计算过程进行公式化。首先定义
A
A
A,表示节点间的连接关系:
为了避免训练过程中出现梯度消失或梯度爆炸问题,增加自循环对角线矩阵自循环对角线矩阵
I
I
I,即单位矩阵;同时,使用度矩阵&D&进行归一化处理,得到邻接矩阵
A
~
\widetilde{A}
A
:
此外,参考文献[5]和[10],将用户
u
u
u、源领域物品
i
a
\pmb{i}_a
iiia和目标领域物品
i
b
\pmb{i}_b
iiib映射到对应的嵌入
e
u
\pmb{e}^u
eeeu,
e
i
a
\pmb{e}^{i_a}
eeeia和
e
i
b
\pmb{e}^{i_b}
eeeib。模型建立了下面的嵌入表(embedding table)来表示用户和项目的初始潜在因素:
然后将
E
0
\pmb{E}_0
EEE0和
A
~
\widetilde{A}
A
作为输入信号,输入到多个图卷积和传播层(包含尺寸递减的卷积核)。此处有两点特别提出:①研究中应用了至少三层的卷积和传播,以确保跨域偏好传播的广度。②使用尺寸递减的卷积核是高阶信息范围中,距离彼此太远的节点传递的信息包含的有用信息很少。传播过程可以表示为:
经过
l
n
\pmb{l}_n
llln次传播,将得每层得到的嵌入矩阵(从
E
0
\pmb{E}_0
EEE0到
E
n
\pmb{E}_n
EEEn)进行级联,构建全局嵌入
E
\pmb{E}
EEE,它融合了用户项在不同领域的交互作用,充分利用了偏好传播的过程
2. 知识集成和预测模块
获得用户的潜在嵌入(即
e
u
\pmb{e}^u
eeeu)和物品的潜在嵌入(即
e
i
a
\pmb{e}^{i_a}
eeeia和
e
i
b
\pmb{e}^{i_b}
eeeib)后,将
(
e
i
a
,
e
u
,
e
i
b
)
(\pmb{e}^{i_a},\pmb{e}^u,\pmb{e}^{i_b})
(eeeia,eeeu,eeeib)元组提供给多层前馈网络。具体来说,我们结合
e
u
\pmb{e}^u
eeeu和
e
i
a
\pmb{e}^{i_a}
eeeia,
e
u
\pmb{e}^u
eeeu和
e
i
b
\pmb{e}^{i_b}
eeeib作为两个多层感知器的输入,得到在两个域中的用户和项目之间训练样本的推荐预测,即
r
~
u
a
\widetilde{{r}}_{ua}
r
ua、
r
~
u
b
\widetilde{{r}}_{ub}
r
ub:
PPGN的目标是通过联合学习提高两个领域的预测性能,其损失函数
L
L
L被设计为两个域(即
L
u
a
L_{ua}
Lua和
L
u
b
L_{ub}
Lub)推荐预测的联合交叉熵损失,并带有一个正则项
L
r
e
g
L_{reg}
Lreg:
3. 训练策略
由于
A
~
\widetilde{A}
A
的尺寸通常非常大,在图卷积层中进行矩阵乘法时(
A
~
\widetilde{A}
A
和
E
l
−
1
E_{l-1}
El−1)难以一次性完成。因此将
A
~
\widetilde{A}
A
按行分解,得到多个子矩阵
A
~
i
\widetilde{A}_i
A
i并将其分别与
E
l
−
1
E_{l-1}
El−1相乘,进而将多个结果连接到一个矩阵中:
此外,由于正负样本分布不均衡的问题,研究对损失函数采用如下的加权策略:
其中权重值
α
\alpha
α和
β
\beta
β是由输入集的标签决定的,这种策略加快了训练过程
实验结果
通过
H
R
@
10
HR@10
HR@10、
M
R
R
@
10
MRR@10
MRR@10和
N
D
C
G
@
10
NDCG@10
NDCG@10评估了不同的模型,实验结果证明了PPGN的优越性,以及知识集成模块的有效性(相比于PPGN-IP,只将向量进行点积运算)。
此外,实验还对比了图卷积和传播层的数量的影响。实验显示模型基本上在5层的时候性能取得最优值。
总结与思考
本研究提出了一种基于深度图的跨域推荐系统高阶用户-项目关系建模方法PPGN。该方法的优点是简单、有效、表达能力强。大量的实验验证了研究者在图结构上建立用户偏好传播模型思路的正确性,并表明PPGN算法的性能明显优于SOTA算法。同时,通过消融实验证明了“知识集成”模块的非线性映射效果优于直接进行向量内积的效果。以及图卷积和传播层数对于结果的影响。
通过该文的学习,我对GCN及其应用于推荐系统的知识又得到进一步地加深,此处推荐一篇通俗易懂的GCN讲解文章供大家学习!~
《何时能懂你的心——图卷积神经网络(GCN)》-郭必扬