--- title: '[KGE] RotatE' --- [TOC] # RotatE ![imgur](https://imgur.com/upyQOJJ.png) ## Introduction <br> [RotatE](https://arxiv.org/abs/1902.10197) 是 [TransE](https://proceedings.neurips.cc/paper/2013/file/1cecc7a77928ca8133fa24680a88d2f9-Paper.pdf) 下一代的標誌性模型,就像許多 Trans 系列模型一樣,RotatE 旨在解決 TransE 只能應對「一對一」的問題。此模型引出了將Entity embedding 與 Relation Embedding 投射到[複數空間](https://zh.wikipedia.org/wiki/复平面),從[歐拉分解](https://zh.wikipedia.org/wiki/旋转)中得到得靈感,將 Entity 與 Relation 用實數(real number)與虛數(Image number)表達,並利用以下公式完成「複數空間中乘一長度為1的向量後,將可以表示為旋轉」。因此這裡將使 $|r_i| = 1$ <br> $h$ : head entity embedding $r$ : relation embedding $t$ : tail entity embedding <br> ![imgur](https://imgur.com/Tw89whk.png) <br> <br> ## Complex relation can be solved by complex plane ### 知識圖譜中常存在複雜的關係( Complex Relation ) <br> 1. Symmetric/Anti-symmetric ( 是否對稱, ex. 「婚姻」即是對稱關係) 3. inversion ( 相反關係, ex. 「喜歡」與「被喜歡」即為相反 ) 4. composition ( 有別的Entity參與建構, ex. 「我」的「爸爸」的「媽媽」是「我」的「祖母」) <br> TransE 等基於距離的模型,因為有方向性,所以可以很好的表達2.和3.的關係。 Dismult 等基於相似度的模型,缺少了方向性,但更能把1.的關係表達清楚。RotatE 這篇論文認為,使用複數空間( Complex Plane )來內嵌 Entity 和 Relation 可以將以上三種關係表達清楚。 <br> ## Why? ### Inverse & Composition ( 相反與建構關係 ) ![image](https://imgur.com/wBvfjgF.png) 就像 TransE 一樣,可以讓 $h$ 使用旋轉來逼近 $t$ 點,不過仍然有小缺點,因為 $|r_i| = 1$. $h, t$ 的表達仍有限制。 ### Symmetric ( 對稱關係 ) ![image](https://imgur.com/CMPm6bs.png) 投射到 Complex Plane 成功讓距離模型也能漂亮的表達對稱和非對稱關係,只要選轉角度差不多,及為對稱關係。非對稱關係則是旋轉角度不一樣。 <br> ## Self-adversial Negative Sampling <br> $h, r, t$: positive sample $h', r', t'$: negative sample <br> Normal nagative sampling loss -> 平均所有負樣本的loss ![image](https://imgur.com/udEYYbt.png) <br> Self-adversial Negative Sampling loss -> 加權平均所有負樣本loss ![image](https://imgur.com/4hHhFX2.png) ![image](https://imgur.com/XHp8JIe.png) ## Result ### MRR, Hit@1, Hit@3 ,Hit@10 ![image](https://imgur.com/3y2gB7m.png) <br> ### 1-1, 1-N, N-1, N-N ![image](https://imgur.com/ucyzWjQ.png) <br> <br> ###### tags: `Knowledge Graph Embedding`