天天看點

【轉】自然語言系列學習之表示學習與知識擷取(四)TransE概述

概述

在知識表示學習方面,一個代表性的算法就是transe, 它的基本思想是把每一個實體和每一個關系都表示成一個低維的向量,它的想法是對于每一個事實,将其中的relation看成是從頭實體到尾實體的一個翻譯操作。

【轉】自然語言系列學習之表示學習與知識擷取(四)TransE概述

那麼反應到語義空間裡,實際上它的基本思想是在低維的空間裡對每一個三元組建立頭實體向量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概述

首先從橫坐标看,是分式表示的不同模型需要學習的參數數量,transe處于差不多最左側,也就是說他需要學習的參數數量非常少,說明transe是一個非常高效的算法。

從縱軸上看TransE做連結預測的預言遠遠高于其他已有的方法。這說明它的模型複雜度非常小,同時它能夠得到一個非常好的預測效果,這其實是我們夢寐以求希望達到的。

那麼接下來看一些transe的一些樣例:

【轉】自然語言系列學習之表示學習與知識擷取(四)TransE概述

如尋找任何一個實體在它的空間裡最相鄰的實體,上圖中清華大學的一些相鄰實體,基本上都是類似大學的教育機構,如AC米蘭,他找到的基本上都是一些球隊的名字。這正好反映了利用transe在空間裡很好的建立起實體的語義資訊,對它們進行表示。

【轉】自然語言系列學習之表示學習與知識擷取(四)TransE概述

上圖中china找到的都是一些國家和地區的名字,巴拉克奧巴馬找到的都是一些政治人物的名字,apple找到的是一些相關食品的名字,那麼就說明transe可以非常好的建立這些實體的語義表示。

我們也可以看transe在尋找關系在空間裡面相鄰的關系的樣例:

【轉】自然語言系列學習之表示學習與知識擷取(四)TransE概述

比如上圖中nationality找的關系基本上還是能夠比較好的反映這些關系之間的聯系。

如果用頭實體,一個relation去預測尾實體,下圖中标紅的是預測準确的尾實體。

【轉】自然語言系列學習之表示學習與知識擷取(四)TransE概述

可以看到有些任務可以做的非常好,比如china相鄰的地區或者是國家,基本上能夠把台灣和日本排得比較靠前,比如實體(巴拉克奧巴馬)和(關系)他受教育的機構,雖然他把哥倫比亞大學排到了稍微靠後的位置,但是排到靠前的也都是一些大學名字。也就是說因為transe比較高效,由于他建立空間頻繁,是以可能會有一定的錯誤。

但是transe可以比較好的找到那些潛在的正确答案,我們未來還可以再去利用一些更精确的做法,然後在這個候選集合裡快速的定位到那些準确的答案。這是transe未來一個非常重要應用可能性。