圖上的機器學習系列-聊聊LINE

前言
本篇繼續GraphEmbedding旅途,來聊聊LINE這個方法,對應的paper爲《LINE: Large-scale Information Network Embedding》。

---廣告時間,歡迎關注本人公衆號:

LINE的核心方法
首先,還是先來腦補一下LINE方法的思考過程:

相似度&距離
在上一篇中,我們已經知道DeepWalk是採用類似於Word2Vec的方法,用一個節點的鄰居序列來保存節點在網絡中的拓撲結構,使得圖中距離較近的節點在新的向量空間中也有較近的距離,但確實沒有顯示化地定義一個距離相似度的目標函數,也不是基於對目標函數的求解來得到向量表達的。LINE方法則明確定義一個量化的相似度計算公式,而且不僅包含一階相似度,還包括了二階相似度

一階相似度通常就是節點之間直接相連的邊,可以用邊的權重來度量。二階相似度其實也容易理解,就是兩個節點很可能沒有邊相連,但它們有很多共同的鄰居節點,如下圖所示:

事實上,我們回想一下DeepWalk的方法,也可以捕捉到5,6兩個節點的鄰居相似性對吧?但因爲DeepWalk本身沒有引入節點之間邊的權重,所以較難量化6,7之間的直接相似度大小。
具體地,LINE對一階、二階相似度的定義如下所示:

事實上,**這仍然是在圖上的距離表示**,在新的向量空間中,作者並沒有給出明確的距離公式,反而是用概率分佈函數來論述的。一階、二階的概率密度函數分別如下:

但爲什麼是這樣?不知道。網上也沒有找到推導過程。甚至我猜想作者在思考的過程中是反過來的,即:
需要保留節點之間的相似度 -> 怎麼衡量相似度呢?想到了KL散度方法來表達兩個概率分佈之間的相似度 -> 節點在圖上的相似度用概率分佈很好構造,但新的向量空間中的相似度怎麼定義呢? ->  找一個隨着向量距離大小遞增的、介於0-1區間範圍的函數吧 -> 哎呀,想到了sigmoid函數(一階)、softmax函數(二階)。

除了歸因於靈光一現+打怪經驗,我沒有猜出來爲啥會這樣設計。

目標函數
有了分佈的表達後,分別定義了一階、二階情況下的KL散度:

事實上,這些形式與交叉熵完全一致。所以也有很多人在刻畫兩個分佈的差異性時直接用交叉熵,因爲求極值的情況下,有一堆常數項是可以拿掉的。

優化方法
定義了上述的目標函數後,LINE還使用了一些降低計算量的優化技巧,而這樣技巧同樣是借鑑自文本處理領域。
對於二階相似度的KL散度目標函數而言(公式如下),

這個與DeepWalk當中在神經網絡的輸出層面臨softmax函數計算的問題何其相似啊。還記得嗎,它使用了Hierarchical Softmax來降低計算量,然後文獻\[4\]又找到了一種新的方法,稱爲NEG(在Noise Contrastive Estimation的基礎上做了簡化,做了Negative sampling),並定義了一個目標函數如下圖所示:

LINE方法就是直接借用了這個想法,定義瞭如下所示的一個目標函數:

這個方法的本質是要將目標向量從一個噪聲分佈中識別出來。但是在優化該目標的過程中,又涉及到邊採樣的問題,又引入了一個alias table的概率抽樣方法,這是一個很有趣的方法,具體原理可參考5、6兩個附錄的資料。

最終的向量化表示
事實上,LINE方法是分別求解了一階、二階相似度目標函數後,得到了兩個向量化表示,然後進行了合併。

看github上LINE的代碼,可以知道其實就是把兩個向量串聯拼接了起來:

個人感覺
其實LINE這個方法並不簡潔,雖然對於圖上節點之間的相似度定義還蠻直觀的,但是接下來轉化爲優化問題求解的過程還是挺費解的,先轉換爲概率分佈之間的距離,後續過程中又使用了較多的優化技巧,有一種慕容功夫博採衆長的感覺,反倒不及DeepWalk那種一套降龍十八掌打下來的完整感和暢快感。

參考資料
1. [https://arxiv.org/abs/1503.03578]
2. [https://github.com/tangjianpku/LINE]
3. A. Q. Li, A. Ahmed, S. Ravi, and A. J. Smola. Reducing the sampling complexity of topic models. In Proceedings of the 20th ACM SIGKDD international conference on Knowledge discovery and data mining, pages 891–900. ACM, 2014.
4. T. Mikolov, I. Sutskever, K. Chen, G. S. Corrado, and J. Dean. Distributed representations of words and phrases and their compositionality. In Advances in Neural Information Processing Systems, pages 3111–3119, 2013.
5. [https://www.keithschwarz.com/darts-dice-coins/]
6. [https://www.wangliguang.cn/?p=9]

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章