Graph Embedding之DeepWalk

??DeepWalk是一種用來學習圖(網絡)中頂點的潛在表示的一種基于簡單神經網絡的算法颂砸。DeepWalk 算法第一次將深度學習中的技術引入到圖(網絡)表示學習領域噪奄,且充分利用了圖(網絡)結構中的隨機游走序列的信息。
??DeepWalk的主要思想來源于Word2Vec人乓,作者首先介紹了自然語言中的詞頻滿足統計學中的冪律分布(Power Laws)勤篮,而在網絡中對每個頂點進行指定深度的隨機游走得到的頂點序列也同樣滿足冪律分布,如下圖所示色罚。因此可以相應地將NLP中的word2vec運用在圖(網絡)中的頂點表示上碰缔,故而有了DeepWalk算法。

power-law

Language Modeling

??在詳細介紹DeepWalk之前戳护,我們先介紹一下語言模型金抡。語言模型的目標是估計一個特定的單詞序列在語料庫中的似然。例如腌且,給定一個如下的單詞序列
W_1^n=(w_0,w_1,\dots,w_n)其中w_i \in \nu\nu表示詞匯表)梗肝,針對以上單詞序列,語言模型的目標是想要在現有的訓練語料庫上最大化
Pr(w_n|w_0,w_1,\dots,w_{n-1})目前的表示學習工作铺董,在語言模型的基礎上巫击,更關注使用概率神經網絡模型去構建單詞的一般表示。在這偏論文里精续,作者在隨機游走的基礎上坝锰,提出了一種通用的語言模型來學習圖中每個頂點的一半表示。圖中的每一次隨機游走都可以認為是語言模型中的一條語句驻右,然后直接模擬語言模型,估計每個頂點在歷史訪問的頂點條件下的似然:
Pr(v_i|(v_1,v_2,\dots,v_{i-1}))由于最終的學習目標是學習每個頂點的一般表示崎淳,于是上述問題可以轉換為:
Pr(v_i|(\Phi( v_1),\Phi( v_1),\dots,\Phi( v_{i-1})))然而隨著游走深度的增長堪夭,計算上述目標函數代價會變得非常大。于是NLP領域又出現了使用上下文預估當前單詞的方式拣凹,這種方式很好的消除了單詞在句子中順序的影響森爽,對應的方法有CBOW和SkipGram,然后本文中使用了SkipGram語言模型嚣镜。于是我們的目標函數就變成了:
min -\log Pr(\{v_{i-w},\dots,v_{i-1},v_{i+1},\dots,v_{i+w}\}|\Phi(v_i))??DeepWalk算法主要分成兩個部分:隨機游走(Random Walks)和SkipGram建模爬迟。下面會分兩個部分進行詳細介紹。DeepWalk算法的具體描述如下所述菊匿。

Random Walks

??作者定義了一次Random Walk的過程付呕,假設以頂點\small v_i為起點的一次隨機游走結果為\small W_{v_i}计福,那么針對該隨機游走序列\small \{ w_{v_i}^1,w_{v_i}^2,\dots,w_{v_i}^k\},那么\small w_{v_i}^{k+1}是從頂點w_{v_i}^k的所有鄰接頂點中隨機選擇的一個頂點徽职。上面說過象颖,這個隨機游走序列中的各頂點出現的頻率滿足冪律分布,因此針對每個頂點隨機游走的若干個指定長度的頂點串可以組成接下來模型訓練環(huán)節(jié)的“語料庫”姆钉。

Deep Walk

以上算法展示了Deepwalk的核心內容说订,外層循環(huán)指定了對于每個頂點的隨機游走的次數\small \gamma。在內層循環(huán)中潮瓶,遍歷圖中的每個頂點陶冷,然后對每個頂點進行一次深度為\small t的隨機游走過程,然后使用該隨機游走序列毯辅,使用SkipGram模型針對之前提出的目標函數更新當前頂點的表示\small \Phi

Skip-Gram Modeling

??Skip-Gram Modeling是一種基于神經網絡結構的Word2Vec模型埂伦,主要利用Word2Vec的思想將Random Walks中拿到的隨機游走的頂點序列作為語料庫,訓練神經網絡模型悉罕,進而學習每個頂點的向量表示赤屋。
首先,該算法以滑動窗口的方式遍歷隨機游走的頂點序列壁袄,窗口的大小為\small w类早,在每個窗口內,針對當前中心頂點嗜逻,使用上文的目標函數更新當前頂點的表示\small \Phi涩僻,從而學得每個頂點的一般表示\small \Phi

Skip Gram

另外針對該目標函數在大規(guī)模圖網絡場景下面臨的計算復雜度栈顷,作者提出了一種優(yōu)化方法叫Hierarchical Softmax逆日。使得目標函數的計算時間復雜度從降到了 。另外作者還給出了并行計算框架下的實現范例萄凤,具體可以參考原論文室抽。
Overview of DeepWalk

應用場景

??通過DeepWalk我們可以學習得到所有頂點的連續(xù)性特征表示,然后利用這些特征靡努,我們可以做聚類坪圾,異常檢測,半監(jiān)督分類等惑朦。由于SkipGram的特性兽泄,窗口內相鄰的頂點會得到相似的一般表示,因此漾月,利用DeepWalk學習到的網絡特征進行無監(jiān)督聚類病梢,可以得到效果比較好的社區(qū)發(fā)現結果,通沉褐祝可以在風控場景下用來做群組分析蜓陌。以上就是DeepWalk的全部內容觅彰。

參考:
https://arxiv.org/pdf/1403.6652
http://www.perozzi.net/projects/deepwalk/

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市护奈,隨后出現的幾起案子缔莲,更是在濱河造成了極大的恐慌,老刑警劉巖霉旗,帶你破解...
    沈念sama閱讀 206,968評論 6 482
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件痴奏,死亡現場離奇詭異,居然都是意外死亡厌秒,警方通過查閱死者的電腦和手機读拆,發(fā)現死者居然都...
    沈念sama閱讀 88,601評論 2 382
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來鸵闪,“玉大人檐晕,你說我怎么就攤上這事“鏊希” “怎么了辟灰?”我有些...
    開封第一講書人閱讀 153,220評論 0 344
  • 文/不壞的土叔 我叫張陵,是天一觀的道長篡石。 經常有香客問我芥喇,道長,這世上最難降的妖魔是什么凰萨? 我笑而不...
    開封第一講書人閱讀 55,416評論 1 279
  • 正文 為了忘掉前任继控,我火速辦了婚禮,結果婚禮上胖眷,老公的妹妹穿的比我還像新娘武通。我一直安慰自己,他們只是感情好珊搀,可當我...
    茶點故事閱讀 64,425評論 5 374
  • 文/花漫 我一把揭開白布冶忱。 她就那樣靜靜地躺著,像睡著了一般境析。 火紅的嫁衣襯著肌膚如雪囚枪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,144評論 1 285
  • 那天簿晓,我揣著相機與錄音眶拉,去河邊找鬼千埃。 笑死憔儿,一個胖子當著我的面吹牛,可吹牛的內容都是我干的放可。 我是一名探鬼主播谒臼,決...
    沈念sama閱讀 38,432評論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼朝刊,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了蜈缤?” 一聲冷哼從身側響起拾氓,我...
    開封第一講書人閱讀 37,088評論 0 261
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎底哥,沒想到半個月后咙鞍,有當地人在樹林里發(fā)現了一具尸體,經...
    沈念sama閱讀 43,586評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡趾徽,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 36,028評論 2 325
  • 正文 我和宋清朗相戀三年续滋,在試婚紗的時候發(fā)現自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片孵奶。...
    茶點故事閱讀 38,137評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡疲酌,死狀恐怖,靈堂內的尸體忽然破棺而出了袁,到底是詐尸還是另有隱情朗恳,我是刑警寧澤,帶...
    沈念sama閱讀 33,783評論 4 324
  • 正文 年R本政府宣布载绿,位于F島的核電站粥诫,受9級特大地震影響,放射性物質發(fā)生泄漏卢鹦。R本人自食惡果不足惜臀脏,卻給世界環(huán)境...
    茶點故事閱讀 39,343評論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望冀自。 院中可真熱鬧揉稚,春花似錦、人聲如沸熬粗。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,333評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽驻呐。三九已至灌诅,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間含末,已是汗流浹背猜拾。 一陣腳步聲響...
    開封第一講書人閱讀 31,559評論 1 262
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留佣盒,地道東北人挎袜。 一個月前我還...
    沈念sama閱讀 45,595評論 2 355
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親盯仪。 傳聞我的和親對象是個殘疾皇子紊搪,可洞房花燭夜當晚...
    茶點故事閱讀 42,901評論 2 345

推薦閱讀更多精彩內容