【转】自然语言系列学习之表示学习与知识获取(四)TransE

概述

在知识表示学习方面,一个代表性的算法就是transe, 它的基本思想是把每一个实体和每一个关系都表示成一个低维的向量,它的想法是对于每一个事实,将其中的relation看成是从头实体到尾实体的一个翻译操作。
【转】自然语言系列学习之表示学习与知识获取(四)TransE_第1张图片
那么反应到语义空间里,实际上它的基本思想是在低维的空间里对每一个三元组建立头实体向量h加上关系relation的向量r等于尾实体向量t的目标(h+r=t)。也就是对于任何一个三元组的向量关系满足h+r=t的等式。通过不断的优化知识图谱中的每一个事实的优化目标,然后尽可能不断的减小loss function的值,这样就可以得到一个最优的关于实体和向量之间的表示。

一旦得到了实体和关系的表示就可以做非常多的事情,比如说想要预测任意两个实体间的关系,可以想象一下利用优化的目标(h+r=t),就可以用t减去h,去寻找t-h在这个空间里面最相邻的那些relation,就可以认为t-h之间的relation就是它的relation,也可以给定一个头实体和关系去预测尾实体,如下面的任务:

“想要知道电影《wall.e》有哪些风格?”
WALL-E , _has_genre, ?

这个任务就可以用 h+r,在这个空间里去寻找去寻找跟h加r最相近的实体,我们就可以找到这些实体:

* animation
* computer animation
* comedy film
* adventure film
* science fiction
* fantasy
* stop motion
* satire
* drama
* connecting

然后预测walle和_has_genre风格对应的实体候选,这个过程定义为链接预测。链接预测被看成是评测不同的知识表示学习方法的评测任务。

下图是TansE模型跟其他已有模型相比的优势:
【转】自然语言系列学习之表示学习与知识获取(四)TransE_第2张图片
首先从横坐标看,是分式表示的不同模型需要学习的参数数量,transe处于差不多最左侧,也就是说他需要学习的参数数量非常少,说明transe是一个非常高效的算法。

从纵轴上看TransE做链接预测的预言远远高于其他已有的方法。这说明它的模型复杂度非常小,同时它能够得到一个非常好的预测效果,这其实是我们梦寐以求希望达到的。

那么接下来看一些transe的一些样例:
【转】自然语言系列学习之表示学习与知识获取(四)TransE_第3张图片
如寻找任何一个实体在它的空间里最相邻的实体,上图中清华大学的一些相邻实体,基本上都是类似大学的教育机构,如AC米兰,他找到的基本上都是一些球队的名字。这正好反映了利用transe在空间里很好的建立起实体的语义信息,对它们进行表示。

【转】自然语言系列学习之表示学习与知识获取(四)TransE_第4张图片
上图中china找到的都是一些国家和地区的名字,巴拉克奥巴马找到的都是一些政治人物的名字,apple找到的是一些相关食品的名字,那么就说明transe可以非常好的建立这些实体的语义表示。

我们也可以看transe在寻找关系在空间里面相邻的关系的样例:
【转】自然语言系列学习之表示学习与知识获取(四)TransE_第5张图片
比如上图中nationality找的关系基本上还是能够比较好的反映这些关系之间的联系。

如果用头实体,一个relation去预测尾实体,下图中标红的是预测准确的尾实体。
【转】自然语言系列学习之表示学习与知识获取(四)TransE_第6张图片
可以看到有些任务可以做的非常好,比如china相邻的地区或者是国家,基本上能够把台湾和日本排得比较靠前,比如实体(巴拉克奥巴马)和(关系)他受教育的机构,虽然他把哥伦比亚大学排到了稍微靠后的位置,但是排到靠前的也都是一些大学名字。也就是说因为transe比较高效,由于他建立空间频繁,所以可能会有一定的错误。

但是transe可以比较好的找到那些潜在的正确答案,我们未来还可以再去利用一些更精确的做法,然后在这个候选集合里快速的定位到那些准确的答案。这是transe未来一个非常重要应用可能性。

你可能感兴趣的:(trans系列)