|知識圖普嵌入技術的極簡教程:KGE以及如何計算它們

圖是我最喜歡使用的數據結構之一 , 它們可以使我們能夠表示復雜的現實世界網絡 , 如快速交通系統(例如 , 公交道路、地鐵等)、區域或全球空中交通 , 或者人們的社交網絡之類的相關事物 。 并且他們非常靈活 , 很容易被人類理解 , 但是為了讓計算機“理解”和“學習”它們 , 我們需要額外的一步(稱為矢量化) 。這種解釋可能過于簡單 , 我們將在本人的后續部分詳細解釋 。
知識圖譜有何特別之處?為了輕松理解知識圖與其他圖的不同之處 , 我們想象一個具有不同級別的游戲 , 隨著游戲的深入 , 每個級別都會變得困難 。
Level 1:可以是一個簡單的無向圖 , 比如大學里的朋友群 , 朋友是節點 , 朋友之間的關系是邊 。 這里我們只有節點和邊 , 沒有什么太花哨的 。
Level 2:在上一層的基礎上增加一層信息 , 比如方向 , 這樣我們就得到有向圖 。 一個簡單的例子是城市范圍的公交網絡 。 將公共汽車站視為節點 , 將公共汽車的路線視為邊 , 每輛公共汽車都以特定的方向從一個站點移動到另一個站點 , 這就是增加了方向信息 。
Level 3:我們采用有向圖并向節點和邊添加多種屬性 。 想象一下互聯網上的社交網絡 , 節點上的屬性是用戶所基于的社交網絡類型 。 例如 , 它可以是 Twitter、Facebook 或 YouTube 。 邊的屬性可以是不同用戶之間的交互類型 , 即關注(在 Twitter 的情況下)、朋友或關注(在 Facebook 的情況下)和訂閱(在 YouTube 的情況下) 。 圖的有向性在這里開始發揮作用 , 因為上面這些屬性只能是單向的(相互關注就是有兩條邊) 。 例如 , 你可以關注 Elon Musk , 但他可能不會在 Twitter 上關注你 , 這就是有一條向的邊 。
Level 4:上一級中的圖中 , 不使用節點和邊 , 而是使用三元組進行表示:三元組是知識圖譜的構建塊 , 它是由 3 個元素組成的元組 , 即:源節點(頭)、關系和目標節點(尾) 。
這就是我們所說的知識圖譜了 , 源節點和目標節點有時也被稱為實體 。
“知識圖譜”一詞的使用有點含糊 , 因為知識圖譜沒有固定的定義 , 從廣義上講可以將任何包含一些知識/重要信息的相當大的圖稱為知識圖譜 。 這里的關鍵點是我們將三元組作為知識圖譜的基本組成部分 。
知識圖譜嵌入方法因為向量化或嵌入(實體的數字表示和圖之間的關系表示)對于使用圖作為機器學習算法的輸入是必要的 。 我們對知識圖譜的處理方式與其他機器學習模型不同 , 所以我們需要不同的技術來學習它們的數值表示(或嵌入) 。 生成知識圖嵌入 (KGE) 的方法有多種 , 我們可以大致分為 3 個部分:
1、基于翻譯的方法:
使用基于距離的函數(在歐幾里得空間中)用于生成嵌入 。 我們可以建立一個簡單的算法使頭向量和關系向量的組合等于尾向量 。 它可以表示為 h + r ≈ t 。 這種算法稱為 TransE 。 相同算法還有其他版本 , 但對它的修改很少 。 一些示例包括 TransH、TransR、TransD、TransSparse 和 TransM 。
2、基于分解的方法:
這是基于張量分解的想法 , 使用這種技術提出的初始算法是 RESCAL 。 三向張量以 n x n x m 的形式定義 , 其中 n 是實體的數量 , m 是關系的數量 。 張量保持值 1 表示實體之間存在關系 ,0表示不存在則 。
通過分解這個張量來計算嵌入 。 但是對于大型圖這通常在計算上非常的費時所以出現了很多基于 RESCAL 理念的 DistMult、HolE、ComplEx 和 QuatE 等算法優化解決計算量問題 。
相關經驗推薦
- |HTML表格怎么設置?html錨鏈接怎么設置?最全知識匯總!
- MIUI|MIUI純凈模式雖已上線,但用戶卻有不同看法,網友:妨礙探索知識
- 知識圖譜|2022年手機市場將有這些趨勢,提前了解這3點變化,做到心中有數
- iPhone|諾基亞為何寧可逐漸沒落也不采用Android系統?長知識了
- 魅族|有用的冷知識:閑聊手機成本和價格,所謂的性價比從哪里來?
- 浙江省|“之江杯”知識競賽丨倒計時48小時,答題還有機會領手機平板
- 網上商城|正規電子元器件網上商城 采購入門基礎知識
- ai|嵌入式開發:嵌入式軟件開發成功的 3 個要素
- |北京低調富豪:清華畢業,打造嵌入式CPU芯片領先企業,身家60億
- vivo|快手漲粉小知識
