論文閱讀:DeepWalk


DeepWalk[1]這篇文章挺有意思的, 主要是講怎么用Deep Learning的方法學圖結構, 學出每個節點的隱含表示(比較像LSA、LDA、word2vec那種)。 發在了14年的KDD上, 咱們看到的是預覽版本。

github地址作者也放出來了, github地址

 

下面大致講一下文章是怎么弄得, 是個閱讀筆記。

一、 介紹,優點

先說概念, 學出來什么樣。 圖a是輸入圖, 圖b是輸出。

例子是將一個輸入的圖轉化成了2維表示。 輸入是圖和圖的自身結構,輸出是二維表示。 例子應該是做的比較好的, 基本將本來是cluster的弄得也比較近, 不過這點比較容易。

優點:1) 與傳統cluster、降維方法比, 這個方法的優點是可以調試, 也就代表着這東西可以堆數據, 因而在知識圖譜,在社交網絡上是有應用的。

           2) 與傳統cluster比能學到維度,能進一步利用。

           3) 與降維比, 其實沒什么優點, 但是圖結構本身沒有什么比較正常、有可以大規模使用的降維方法。

 

應用: 1. 社交網絡學習特征;2. 知識圖譜學習表示;3. 推薦系統學習低維度關聯性。

 

二、 隨機游走和語言模型

1. 隨機游走

假設節點$v_i$處的隨機游走是$W_{v_i}$,則全過程表示為$W_{v_i}^1,W_{v_i}^2,W_{v_i}^3,\cdots,W_{v_i}^k$。

為什么要用隨機游走:增加隨機性,加速,可調,之類的。

2. zipfs law

這篇文章主要是說用word2vec的思想學圖的, 所以一個非常重要的問題是, 詞和圖的節點像不像, 對於社交網絡或者知識圖譜來說,是沒問題的, 見下圖。

這說明詞頻和社交網絡大致相等, 主要是要有那個比較劇烈的曲線。 這玩意也被叫做zipf 定律, 可以看統計自然語言處理,上面有詳細說明。

 

3. 語言模型

語言模型主要是學詞序列。詞序列為:$W_1^n = (w_0,w_1,\cdots ,w_n)$。

學的時候主要是學$Pr(w_n | w_0,w_1,\cdots, w_{n-1})$ , 最常見的方法當然是n-gram, 現在新興的是word2vec。

 

對於word2vec這樣的模型來說, 既然是詞向量, 那么學的也是概率表示,即:

$$ Pr(w_n | \Phi(w_0), \Phi(w_1),\cdots, \Phi(w_{n-1})) $$

隨着路徑長度增加, 學習難度會變困難。 一個比較好的(這段平心而論,我沒看懂)方式是,用一個詞去預測整個文章,且忽略詞順序。 優化問題如下

$$min(\Phi)  -log Pr (\{w_{i-w},\cdots, v_{i-1},v_{i+1} , \cdots, v_{i+w} \} | \Phi(v_i) )$$

由於順序被忽略了, 所以比較適合圖學習, 因而有了這篇論文。 其實還是得感謝Minklov, 呵呵。

 

三、 訓練方法

將圖節點表示為詞表(V)。

算法分兩部分:1. 隨機游走;2.更新過程

隨機游走, 對圖G,隨機采樣1節點$v_i$, 作為根節點$W_{v_i}$, 然后一直向周圍采樣,直到達到最大路徑長度t。 算法如下:

其中3-9行是核心, 用skip-gram去更新。 skip-gram算法圖如下:

這玩意也就是通常說的隨機梯度。 后面還加了個層次softmax,用於加速。

核心流程: 1. 隨機游走, 2. 用sgd學向量。 我倒是感覺其實最有意思的是隨機游走那段。

 

四、 代碼賞析

talk is cheap, show me the code。

 

文件基本上沒幾個, 非常少, __init__ 沒啥用, main主要是調參數的, 這個沒啥講的, 自己看好了。

先看random walk怎么寫的, 這是graph類的一個函數, graph就是封裝了一個字典。 這個好水, 就是直接隨了n個點。 然后加進去。

然后是skip-gram,如下:

就是封裝了一下gensim的word2vec類,自己連動手都沒。

 

核心訓練過程,就下面這句

 

五、整體評價、實驗結果

實驗還行, 這玩意主要的有點是能學出結構, 實驗不是特別搓就行。

 

評價: 從技術的層面上,沒啥,random walk倒是用的很新穎。 沒有跟spreading activation比較過。

 

參考文獻:

[1]  Perozzi B, Al-Rfou R, Skiena S. DeepWalk: Online Learning of Social Representations[J]. arXiv preprint arXiv:1403.6652, 2014.


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM