本文工作的核心目的是探究如何有效的量化关系的相似性。作者动作的动机是一个直觉,即关系的相似性和它对应的实体对有明显相关性,例如,关系为“trade to”或者”play for”的实体对通常为运动员和俱乐部,而“live”这种关系的实体对则通常为人和地点。作者将这个想法,进行了数学抽象,即将关系的相似转变为求解条件概率分布P(h,t|r)的相似度。对于分布相似度的求解,直接可以想到的就是利用KL散度。这里一个比较实际的问题是,KL散度在比较大的实体对空间里,基本不可解。考虑到这个因素,作者又提出了基于采样的算法来求解相应的KL散度。
在此基础上,作者希望通过设计和实验,更进一步讨论以下几个问题:
在量化关系相似度之前,论文依据头尾实体的概率分布给出了关系的一个形式化的数学表达。首先定义一个映射: F θ : ϵ × R × ϵ → R F_{\theta}:\epsilon × R × \epsilon \rightarrow \mathscr{R} Fθ:ϵ×R×ϵ→R,将一个三元组代表的关系事实 ( h , r , t ) ∈ G = ϵ × R × ϵ (h,r,t) \in G = \epsilon × R × \epsilon (h,r,t)∈G=ϵ×R×ϵ 映射成一个标量,其中 ϵ \epsilon ϵ是实体集合, R R R是关系集合。 回到本文初始动机,从概率视角审视,将F函数看成r为参数,h,t为变量的二元函数,即 F θ ( h , t ; r ) = μ θ 1 ( h ; r ) + μ θ 2 ( t ; h , r ) F_{\theta}( h,t;r) = \mu_{θ 1}(h; r) + \mu_{θ2}(t; h,r) Fθ(h,t;r)=μθ1(h;r)+μθ2(t;h,r)。 对于条件概率分布 μ θ 1 \mu_{θ 1} μθ1 和 μ θ 2 \mu_{θ 2} μθ2可以通过神经网络去模拟,作为概率分布,我们需要再添加归一化,这样这个条件分布的表达如下:
μ θ 1 ( h ; r ) = l o g e x p ( μ ~ θ 1 ( h ; r ) ) ∑ h ′ e x p ( μ ~ θ 1 ( h ′ ; r ) ) \mu_{θ 1}(h;r) = log \frac{exp( \widetilde{\mu}_{θ 1}(h;r))}{\sum_{h'}exp( \widetilde{\mu}_{θ 1}(h';r))} μθ1(h;r)=log∑h′exp(μ θ1(h′;r))exp(μ θ1(h;r))
μ θ 2 ( t ; h , r ) = l o g e x p ( μ ~ θ 2 ( t ; h , r ) ) ∑ t ′ e x p ( μ ~ θ 2 ( t ′ ; h , r ) ) \mu_{θ 2}(t;h,r) = log \frac{exp( \widetilde{\mu}_{θ 2}(t;h,r))}{\sum_{t'}exp( \widetilde{\mu}_{θ 2}(t';h,r))} μθ2(t;h,r)=log∑t′exp(μ θ2(t′;h,r))exp(μ θ2(t;h,r))
μ ~ θ 1 ( h ; r ) = M L P θ 1 ( r ) T h \widetilde{\mu}_{θ 1}(h;r) = MLP_{θ1}(r)^Th μ θ1(h;r)=MLPθ1(r)Th
μ ~ θ 2 ( t ; h , r ) = M L P θ 2 ( [ h ; r ] ) T h \widetilde{\mu}_{θ 2}(t;h,r) = MLP_{θ2}([h;r])^Th μ θ2(t;h,r)=MLPθ2([h;r])Th
这样, P θ ( h , t ∣ r ) = e x p ( μ θ 1 ( h ; r ) + μ θ 2 ( t ; h , r ) ) = e x p ( l o g e x p ( μ ~ θ 1 ( h ; r ) ) ∑ h ′ e x p ( μ ~ θ 1 ( h ′ ; r ) ) + l o g e x p ( μ ~ θ 1 ( h ; r ) ) ∑ h ′ e x p ( μ ~ θ 1 ( h ′ ; r ) ) ) P_θ( h,t | r ) = exp(\mu_{θ 1}(h;r) + \mu_{θ 2}(t;h,r)) = exp(log \frac{exp( \widetilde{\mu}_{θ 1}(h;r))}{\sum_{h'}exp( \widetilde{\mu}_{θ 1}(h';r))} + log \frac{exp( \widetilde{\mu}_{θ 1}(h;r))}{\sum_{h'}exp( \widetilde{\mu}_{θ 1}(h';r))}) Pθ(h,t∣r)=exp(μθ1(h;r)+μθ2(t;h,r))=exp(log∑h′exp(μ θ1(h′;r))exp(μ θ1(h;r))+log∑h′exp(μ θ1(h′;r))exp(μ θ1(h;r)))
这样loss function就被认为是是 P θ P_{\theta} Pθ的最大似然的负log,即
L ( G ) = ∑ ( h , r , t ∈ G ) − l o g P θ ( h , t ∣ r ) \mathcal{}{L}(G) = \sum_{(h,r,t \in G)} − log P_θ( h,t |r ) L(G)=(h,r,t∈G)∑−logPθ(h,t∣r)
基于前面的形式化定义,本文假定可以通过计算概率 P θ ∗ ( h , t ∣ r ) P_{θ^*}( h,t | r ) Pθ∗(h,t∣r)的相似度来量化关系的相似度,这也和motivation里的基本直觉是一致的,即如果两个关系的实体对是相似的,那么这两个关系也相似;反正,则有较大差异。
那么如何衡量两个概率分布的相似度呢? 自然的工具就是Kullback–Leibler divergence,即KL散度, D K L ( P θ ∗ ( h , t ∣ r 1 ) ∣ ∣ P θ ∗ ( h , t ∣ r 2 ) ) = E h , t ∼ P θ ∗ ( h , t ∣ r 1 ) l o g P θ ∗ ( h , t ∣ r 1 ) P θ ∗ ( h , t ∣ r 2 ) D_{KL} ( P_{θ^*}( h,t | r1 ) || P_{θ^*}( h,t | r2 )) = E_{h,t \sim P_{θ^*}( h,t | r1 ) } log\frac{P_{θ^*}( h,t | r1 )}{P_{θ^*}( h,t | r2 )} DKL(Pθ∗(h,t∣r1)∣∣Pθ∗(h,t∣r2))=Eh,t∼Pθ∗(h,t∣r1)logPθ∗(h,t∣r2)Pθ∗(h,t∣r1)
考虑到KL散度的非对称性,文中将关系相似定义为:
S ( r 1 , r 2 ) = g ( D K L ( P θ ∗ ( h , t ∣ r 1 ) ∣ ∣ P θ ∗ ( h , t ∣ r 2 ) ) , D K L ( P θ ∗ ( h , t ∣ r 2 ) ∣ ∣ P θ ∗ ( h , t ∣ r 1 ) ) ) S(r1,r2) = g(D_{KL} ( P_{θ^*}( h,t | r1 ) || P_{θ^*}( h,t | r2 )),D_{KL} ( P_{θ^*}( h,t | r2 )|| P_{θ^*}( h,t | r1 ))) S(r1,r2)=g(DKL(Pθ∗(h,t∣r1)∣∣Pθ∗(h,t∣r2)),DKL(Pθ∗(h,t∣r2)∣∣Pθ∗(h,t∣r1)))
函数 g(x,y)是一个人工定义的函数来修正对称性,因为相似度的取值为非负,且满足单调递减,所以指数族是一个好的选择,本文选取的是 g ( x , y ) = e − m a x ( x , y ) g(x,y) = e^{− max(x,y)} g(x,y)=e−max(x,y)
表1 关系量化方式一览
表一对比了本文和之前其他工作的关系相似度量化方式,可以看出其他方式情形将关系编码成向量,然后通过计算向量的相似度。本文认为之所以直接使用分布的差异来量化关系而不是比较关系编码后的向量,有两个原因:1)关系Embedding的过程中会丢失很多细节;2)用分布差异来量化,可解释性强。以图1为例,两个关系“be an unincorporated community in”(蓝色点)和“be a small city in”(红色点)。点的坐标是通过T-sne将采样的实体点的Embedding降维之后级联的,两个大的点,是通过TransE编码的关系向量。可以看出,编码后的关系在向量空间中比较接近,但是两个关系其实差异还是比较明显的,从实体的分布可以较为清晰的看出。
图1 关系量化方式对比差异示例
实际到此为止,整个论文的思路已经较为完成,但是具体去实现,还差了最后一环,在一个大数据集或者开放域环境中,KL散度的计算需要遍历所有样本空间,因而是不可解的。 解决这个问题的方法,自然是利用采样来实现,本文使用的是蒙特卡洛方法。具体如下:
D K L ( P θ ∗ ( h , t ∣ r 1 ) ∣ ∣ P θ ∗ ( h , t ∣ r 2 ) ) = E h , t ∼ P θ ∗ ( h , t ∣ r 1 ) l o g P θ ∗ ( h , t ∣ r 1 ) P θ ∗ ( h , t ∣ r 2 ) = 1 ∣ S ∣ ∑ h , t ∈ S l o g P θ ∗ ( h , t ∣ r 1 ) P θ ∗ ( h , t ∣ r 2 ) D_{KL} ( P_{θ^*}( h,t | r1 ) || P_{θ^*}( h,t | r2 )) \\ = E_{h,t \sim P_{θ^*}( h,t | r1 ) } log\frac{P_{θ^*}( h,t | r1 )}{P_{θ^*}( h,t | r2 )}\\ =\frac{1}{|S|}\sum_{h,t \in S}log\frac{P_{θ^*}( h,t | r1 )}{P_{θ^*}( h,t | r2 )} DKL(Pθ∗(h,t∣r1)∣∣Pθ∗(h,t∣r2))=Eh,t∼Pθ∗(h,t∣r1)logPθ∗(h,t∣r2)Pθ∗(h,t∣r1)=∣S∣1h,t∈S∑logPθ∗(h,t∣r2)Pθ∗(h,t∣r1)
S是根据概率 P θ ∗ ( h , t ∣ r 1 ) P_{θ^*}( h,t | r1 ) Pθ∗(h,t∣r1)抽样得到的实体对,具体操作时采用序列抽样的方式,即首先依概率 μ 1 \mu_1 μ1抽样h, 在根据h依概率 μ 2 \mu_2 μ2抽样t。
本文使用了三个数据集,wikipeda (实体来自item,使用Reverb自动抽取,去掉特别高频的关系,使数据集均衡),FB15k (Freebase的子集),TACRED (较大规模的有监督关系抽取数据集),参见表2。
表2 本文使用的数据集
通过实验验证本文最初提出的几个关键问题:
图2 Spearman correlations between human judgment and models’ outputs
表3 The experiment results on the toy dataset
图3 Precision-recall curve on Open IE task
对于第二个问题,图4显示了模型的输出在关系预测和关系提取任务上的分散关系的相似性等级分布。 从图4a和4b中,我们可以观察到最具干扰性的关系是最相似的关系,这也说明:即使在这些任务上的最佳模型在最相似的关系中仍然会犯错误,同时也反映了启发式方法对指导模型更加关注相似关系之间的边界的重要性。
图4 Similarity rank distributions of distracting relations on different tasks and datasets
图5 Improvement of using similarity in a heuristic method for negative sampling
表4 Improvement of using similarity in softmaxmargin loss
本文有一个关于前面recall的证明非常的精彩,很好的应用了拒绝采样,重要性采样和自正规化技巧,具体参见论文附录A。