TransR交互
- class TransRInteraction(p: int, power_norm: bool = True, max_projection_norm: float = 1.0)[source]
基础类:
NormBasedInteraction[Tensor,tuple[Tensor,Tensor],Tensor]基于无状态范数的TransR交互函数。
它由以下给出
\[-\|c(\mathbf{M}_{r}\mathbf{h}) + \mathbf{r} - c(\mathbf{M}_{r}\mathbf{t})\|_{2}^2\]对于头和尾实体表示 \(\mathbf{h}, \mathbf{t} \in \mathbb{R}^d\), 关系表示 \(\mathbf{r} \in \mathbb{R}^k\), 以及一个关系特定的投影矩阵 \(\mathbf{M}_r \in \mathbb{R}^{k \times d}\). \(c\) 强制执行约束 \(\|\cdot\| \leq 1\), 参见
pykeen.utils.clamp_norm().注意
pykeen.models.TransR还强制所有嵌入的 \(\|\cdot\| \leq 1\)。初始化交互模块。
另请参阅
参数
p和power_norm直接传递给NormBasedInteraction。- Parameters:
p (int) – 与
torch.linalg.vector_norm()一起使用的范数。通常为1或2。power_norm (bool) – 是否使用\(L_p\)范数的p次方。它的优点是在0附近可微分,并且在数值上更稳定。
max_projection_norm (float) – 投影后要限制的最大范数。
属性摘要
关系表示的符号形状
方法总结
forward(h, r, t)评估交互函数。
属性文档
方法文档