赞
踩
利用知识图谱的结构信息进行嵌入丰富物品表示
利用用户物品之间的多跳路径来刻画用户物品之间的相关性
通过GNN图神经网络,将邻居信息聚集到表示中,丰富用户物品信息
利用多个潜在意图来描述用户与物品的关系,并将每个意图表述为KG中关系的组合,同时鼓励不同的意图相互独立,提供用户不同的影响力因子。
P
\mathcal{P}
P:用户共享的意向集合,我们可以假设用户共享的意向数量,本论文中是4个。
我们可以把用户物品交互信息
(
u
,
i
)
(u, i)
(u,i)转为
{
(
u
,
p
,
i
)
∣
p
∈
P
}
\{(u, p, i) \mid p \in \mathcal{P}\}
{(u,p,i)∣p∈P},从而建立意向图,从而以更细粒度的假设来探索用户物品之间的关系。
假设一种意向是由多种关系构成,且不同的关系对意向的影响程度不同,因此采用注意力机制来形成对intent embedding。
e
p
=
∑
r
∈
R
α
(
r
,
p
)
e
r
\mathbf{e}_{p}=\sum_{r \in \mathcal{R}} \alpha(r, p) \mathbf{e}_{r}
ep=r∈R∑α(r,p)er
α
(
r
,
p
)
=
exp
(
w
r
p
)
∑
r
′
∈
R
exp
(
w
r
′
p
)
\alpha(r, p)=\frac{\exp \left(w_{r p}\right)}{\sum_{r^{\prime} \in \mathcal{R}} \exp \left(w_{r^{\prime} p}\right)}
α(r,p)=∑r′∈Rexp(wr′p)exp(wrp)
不同的意图应包含有关用户偏好的不同信息。如果一个意图可以被其他意图推断出来,则描述用户与项目的关系可能是多余的,信息量也较小。 相反,具有独特信息的意图将提供一个有用的角度来表征用户的行为模式。 因此,为了获得更好的模型能力和可解释性,我们鼓励意图的表示彼此不同,可以使用统计方法例如互信息,皮尔逊相关,距离相关性来实现。
最小化两个不同的意向表示之间的互信息,损失函数为
L
I
N
D
=
∑
p
∈
P
−
log
exp
(
s
(
e
p
,
e
p
)
/
τ
)
∑
p
′
∈
P
exp
(
s
(
e
p
,
e
p
′
)
/
τ
)
\mathcal{L}_{\mathrm{IND}}=\sum_{p \in \mathcal{P}}-\log \frac{\exp \left(s\left(\mathbf{e}_{p}, \mathbf{e}_{p}\right) / \tau\right)}{\sum_{p^{\prime} \in \mathcal{P}} \exp \left(s\left(\mathbf{e}_{p}, \mathbf{e}_{p^{\prime}}\right) / \tau\right)}
LIND=p∈P∑−log∑p′∈Pexp(s(ep,ep′)/τ)exp(s(ep,ep)/τ)
L
I
N
D
=
∑
p
,
p
′
∈
P
,
p
≠
p
′
d
Cor
(
e
p
,
e
p
′
)
\mathcal{L}_{\mathrm{IND}}=\sum_{p, p^{\prime} \in \mathcal{P}, p \neq p^{\prime}} d \operatorname{Cor}\left(\mathbf{e}_{p}, \mathbf{e}_{p^{\prime}}\right)
LIND=p,p′∈P,p=p′∑dCor(ep,ep′)
d
Cor
(
e
p
,
e
p
′
)
=
d
Cov
(
e
p
,
e
p
′
)
d
Var
(
e
p
)
⋅
d
Var
(
e
p
′
)
d \operatorname{Cor}\left(\mathbf{e}_{p}, \mathbf{e}_{p^{\prime}}\right)=\frac{d \operatorname{Cov}\left(\mathbf{e}_{p}, \mathbf{e}_{p^{\prime}}\right)}{\sqrt{d \operatorname{Var}\left(\mathbf{e}_{p}\right) \cdot d \operatorname{Var}\left(\mathbf{e}_{p^{\prime}}\right)}}
dCor(ep,ep′)=dVar(ep)⋅dVar(ep′)
dCov(ep,ep′)
强调多跳路径中关系的依赖性,保路径中关系的语义信息。
利用IG意向图获取用户表示,依据协同过滤的思想,具有相似行为的用户具有相似的物品偏好,因为我们可以将用户历史物品信息作为原始现存特征,在IG中,是以更细粒度的用户意图体现的。对于用户u,我们另
N
u
=
{
(
p
,
i
)
∣
(
u
,
p
,
i
)
∈
C
}
\mathcal{N}_{u}=\{(p, i) \mid(u, p, i) \in C\}
Nu={(p,i)∣(u,p,i)∈C}表示意图历史,因此,用户表示为
e
u
(
1
)
=
f
I
G
(
{
(
e
u
(
0
)
,
e
p
,
e
i
(
0
)
)
∣
(
p
,
i
)
∈
N
u
}
)
\mathbf{e}_{u}^{(1)}=f_{\mathrm{IG}}\left(\left\{\left(\mathbf{e}_{u}^{(0)}, \mathbf{e}_{p}, \mathbf{e}_{i}^{(0)}\right) \mid(p, i) \in \mathcal{N}_{u}\right\}\right)
eu(1)=fIG({(eu(0),ep,ei(0))∣(p,i)∈Nu})
e
u
(
1
)
∈
R
d
\mathbf{e}_{u}^{(1)} \in \mathbb{R}^{d}
eu(1)∈Rd是用户表示,
f
IG
(
⋅
)
f_{\text {IG }}(\cdot)
fIG (⋅)是聚集函数,本文中采用如下
e
u
(
1
)
=
1
∣
N
u
∣
∑
(
p
,
i
)
∈
N
u
β
(
u
,
p
)
e
p
⊙
e
i
(
0
)
\mathbf{e}_{u}^{(1)}=\frac{1}{\left|\mathcal{N}_{u}\right|} \sum_{(p, i) \in \mathcal{N}_{u}} \beta(u, p) \mathbf{e}_{p} \odot \mathbf{e}_{i}^{(0)}
eu(1)=∣Nu∣1(p,i)∈Nu∑β(u,p)ep⊙ei(0)
不同的意图对用户的影响力不同,因此利用注意力得分来表示不同意图的重要性
β
(
u
,
p
)
=
exp
(
e
p
⊤
e
u
(
0
)
)
∑
p
′
∈
P
exp
(
e
p
′
⊤
e
u
(
0
)
)
\beta(u, p)=\frac{\exp \left(\mathbf{e}_{p}^{\top} \mathbf{e}_{u}^{(0)}\right)}{\sum_{p^{\prime} \in \mathcal{P}} \exp \left(\mathbf{e}_{p^{\prime}}^{\top} \mathbf{e}_{u}^{(0)}\right)}
β(u,p)=∑p′∈Pexp(ep′⊤eu(0))exp(ep⊤eu(0))
利用知识图谱获取物品表示,在知识图谱中,一个实体和其他多个实体相关联,这些实体可以反应物品对应实体的特征。对于物品i,
N
i
=
{
(
r
,
v
)
∣
(
i
,
r
,
v
)
∈
G
}
\mathcal{N}_{i}=\{(r, v) \mid(i, r, v) \in \mathcal{G}\}
Ni={(r,v)∣(i,r,v)∈G}表示物品i的属性或者第一链接实体集,然后将关系信息整合到实体中
e
i
(
1
)
=
f
K
G
(
{
(
e
i
(
0
)
,
e
r
,
e
v
(
0
)
)
∣
(
r
,
v
)
∈
N
i
}
)
\mathbf{e}_{i}^{(1)}=f_{\mathrm{KG}}\left(\left\{\left(\mathbf{e}_{i}^{(0)}, \mathbf{e}_{r}, \mathbf{e}_{v}^{(0)}\right) \mid(r, v) \in \mathcal{N}_{i}\right\}\right)
ei(1)=fKG({(ei(0),er,ev(0))∣(r,v)∈Ni})
e
i
(
1
)
=
1
∣
N
i
∣
∑
(
r
,
v
)
∈
N
i
e
r
⊙
e
v
(
0
)
\mathbf{e}_{i}^{(1)}=\frac{1}{\left|\mathcal{N}_{i}\right|} \sum_{(r, v) \in \mathcal{N}_{i}} \mathbf{e}_{r} \odot \mathbf{e}_{v}^{(0)}
ei(1)=∣Ni∣1(r,v)∈Ni∑er⊙ev(0)
在对一阶连通性建模后,我们进一步聚集深层邻居信息来得到有帮助的信息,我们递归的定义用户u和物品i 的表示
e
u
(
l
)
=
f
I
G
(
{
(
e
u
(
l
−
1
)
,
e
p
,
e
i
(
l
−
1
)
)
∣
(
p
,
i
)
∈
N
u
}
)
e
i
(
l
)
=
f
K
G
(
{
(
e
i
(
l
−
1
)
,
e
r
,
e
v
(
l
−
1
)
)
∣
(
r
,
v
)
∈
N
i
}
)
为了强调关系依赖性,令
s
=
i
⟶
r
1
s
1
⟶
r
2
⋯
s
l
−
1
⟶
r
l
s
l
s=i \stackrel{r_{1}}{\longrightarrow} s_{1} \stackrel{r_{2}}{\longrightarrow} \cdots s_{l-1} \stackrel{r_{l}}{\longrightarrow} s_{l}
s=i⟶r1s1⟶r2⋯sl−1⟶rlsl,表示以物品i为根节点的
l
l
l跳路径,关系的序列为
(
r
1
,
r
2
,
⋯
,
r
l
)
\left(r_{1}, r_{2}, \cdots, r_{l}\right)
(r1,r2,⋯,rl),因此物品的表示可以为
e
i
(
l
)
=
∑
s
∈
N
i
l
e
r
1
∣
N
s
1
∣
⊙
e
r
2
∣
N
s
2
∣
⊙
⋯
⊙
e
r
l
∣
N
s
l
∣
⊙
e
s
l
(
0
)
\mathbf{e}_{i}^{(l)}=\sum_{s \in \mathcal{N}_{i}^{l}} \frac{\mathbf{e}_{r_{1}}}{\left|\mathcal{N}_{s_{1}}\right|} \odot \frac{\mathbf{e}_{r_{2}}}{\left|\mathcal{N}_{s_{2}}\right|} \odot \cdots \odot \frac{\mathbf{e}_{r_{l}}}{\left|\mathcal{N}_{s_{l}}\right|} \odot \mathbf{e}_{s_{l}}^{(0)}
ei(l)=s∈Nil∑∣Ns1∣er1⊙∣Ns2∣er2⊙⋯⊙∣Nsl∣erl⊙esl(0)
经过l层后,获得了用户和物品的表示,可以得到最终的表示
e
u
∗
=
e
u
(
0
)
+
⋯
+
e
u
(
L
)
,
e
i
∗
=
e
i
(
0
)
+
⋯
+
e
i
(
L
)
\mathbf{e}_{u}^{*}=\mathbf{e}_{u}^{(0)}+\cdots+\mathbf{e}_{u}^{(L)}, \quad \mathbf{e}_{i}^{*}=\mathbf{e}_{i}^{(0)}+\cdots+\mathbf{e}_{i}^{(L)}
eu∗=eu(0)+⋯+eu(L),ei∗=ei(0)+⋯+ei(L)
然后使用内积获取用户对物品的评分
y
^
u
i
=
e
u
∗
⊤
e
i
∗
\hat{y}_{u i}=\mathbf{e}_{u}^{* \top} \mathbf{e}_{i}^{*}
y^ui=eu∗⊤ei∗
采用BPR损失函数重构历史数据
L
B
P
R
=
∑
(
u
,
i
,
j
)
∈
O
−
ln
σ
(
y
^
u
i
−
y
^
u
j
)
\mathcal{L}_{\mathrm{BPR}}=\sum_{(u, i, j) \in O}-\ln \sigma\left(\hat{y}_{u i}-\hat{y}_{u j}\right)
LBPR=(u,i,j)∈O∑−lnσ(y^ui−y^uj)
联合意向独立性损失和BPR损失,通过正则化,获取最终的代价函数为
L
K
G
I
N
=
L
B
P
K
+
λ
1
L
I
N
D
+
λ
2
∥
Θ
∥
2
2
\mathcal{L}_{\mathrm{KGIN}}=\mathcal{L}_{\mathrm{BPK}}+\lambda_{1} \mathcal{L}_{\mathrm{IND}}+\lambda_{2}\|\Theta\|_{2}^{2}
LKGIN=LBPK+λ1LIND+λ2∥Θ∥22
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。