ParamE: Regarding Neural Network Parameters as Relation Embeddings for Knowledge Graph Completion
研究问题
将神经网络的参数视为关系嵌入,增强模型的表达性以及保持可翻译性
背景动机
- 在链路预测模型中, 采用基于翻译机制的方法将头尾实体间的关联建模为一个转换过程, 然而, 现有的加法或乘法模型往往显得过于简单和有限; 而以ConvE为代表的卷积模型虽然在处理非线性交互方面有所突破, 但仍未能充分挖掘三元组之间的可转换特性。
- 考虑到实体与关系的本质差异, 论文通过构建特征空间对实体进行嵌入表示, 并将其参数空间映射至与之对应的参数区域。

模型方法
总体流程

ParamE-MLP
定义中间表示变量\bm y为f函数作用于实体嵌入向量h和关系嵌入向量r的结果:
y = f(h; r)
其中得分函数被定义为:
score = (\bm W y + b) t
该模型的具体推理过程如下:首先计算:
y_1 = f(W_0 h + b_0)
接着计算:
y_2 = f(W_1 y_1 + b_1)
最后得到最终表示:
y = f(W_2 y_2 + b_2)
具体来说,关系嵌入由参数集\{\bm W_0,\bm W_1,\bm W_2,\bm b_0,\bm b_1,\bm b_2\}构成。
ParanE-CNN将头实体的嵌入\mathbf{h}重新排列成矩阵形式,并随后通过两个连续的卷积操作获得最终输出。其中参数张量\Omega_{0} \in \mathbb{R}^{l_{1} \times 1 \times n_{1} \times n_{2}}代表第一层卷积核的空间权重分布,在此过程中起着关键作用;而第二层卷积核则由参数张量\Omega_{1} \in \mathbb{R}^{l_{2} \times l_{1} \times n_{3} \times n_{4}}进行控制,在空间维度上进一步精炼特征表示。激活函数\mathbf{f}用于非线性变换过程中的中间环节;而卷积运算符则在各层间传递信息并完成特征提取任务。最后的关系嵌入被定义为参数集合\{\Omega_{0}, \Omega_{1}\}的形式
Parametric Gating Mechanism
\begin{aligned} &\mathbf{y}_{1}=\sigma\left(\mathbf{W}_{0} \mathbf{h}\right) \\ &\mathbf{y}_{2}=\tanh \left(\mathbf{W}_{1} \mathbf{x}\right) \\ &\mathbf{o}=\left(1-\mathbf{o}_{1}\right) \odot \tanh (\boldsymbol{\theta}) \end{aligned}
其中关系嵌入由\boldsymbol{\theta}, \boldsymbol{\phi}的集合构成
训练过程
首先将所有三元体依据其属性进行分类处理。各分类中的实例具有相同的特征或属性。通过分析各类别占总样本的比例来确定每类需要完成的任务数量。
实验
- 对比实验

- 不同关系对应的效果

论文表示并没有从中发现什么规律
评价
- 很巧,这篇文章跟上周分享的文章都发表在AAAI20,而且都是把模型参数和关系结合起来。但这篇文章的想法是相反的,是从模型参数到关系嵌入而不是从关系嵌入到模型参数,本质上相当于是上一篇文章里最初级的查找表版本,也就是直接为每个关系单独训练一个模型,把模型参数当做关系嵌入,并且也没有对关系嵌入做任何的约束,整体设定非常简陋,实验图表和公式也很少。
- 即使是内核一样的东西,也可以有多种解读方式,比如说都是参数生成模型,这篇是从改变关系嵌入的计算方式出发,前一篇是从改变关系和实体的交互方式出发。
- 一开始看到计算每一组样本占总体样本的比重时,我还以为是按照长尾分布里面的那样,对头部欠采样对尾部过采样,结果论文是反过来做的,不过这样好像也有道理,虽然尾部样本效果更差了但比重小,头部样本效果更好了且比重大,最后就是总体变得更好了
