A Tutorial on Network Embeddings
NE 的中心思想就是找到一種映射函數,該函數將網絡中的每一個節點轉換爲低維度的潛在表示
典型例子 DeepWalk:
其學習 Zachary’s Karate network 網絡中的拓撲結構信息並轉換成一個二維的潛在表示(latent representation)
目標
- 適應性
- 可擴展
- 社區感知
- 低維
- 標記數據稀疏時,低維模型可以更好的推廣,並加速收斂和推理
- 持續
- 須要潛在的表示在連續的空間內模擬社區成員關係,連續的表示使社區有更平滑的邊界,促進分類
此文包含
- 無監督網絡嵌入方法在無特徵的同質網絡的應用
- 調研特徵網絡和部分標記網絡中的網絡嵌入
- 討論異構網絡嵌入方法
網絡嵌入發展
傳統意義的Graph Embedding
- 降維
- PCA
- 多維縮放(MDS)
- 將特徵矩陣 M 的每一行投影到k 維向量,保留k 維空間中原始矩陣中不一樣對象距離
- Isomap 算法
- (MDS 的擴展)經過將每一個節點與特定距離內的節點鏈接構造鄰域圖,以保持非線性流形的總體結構
- 局部線性嵌入( LLE )
這些方法都在小型網絡上提供良好性能,但其時間複雜度至少爲二次,故沒法在大規模網絡上運行
深度學習
- DeepWalk
- 經過將節點視爲單詞並生成短隨機遊走做爲句子來彌補網絡嵌入和單詞嵌入的差距。而後,能夠將諸如 Skip-gram 之類的神經語言模型應用於這些隨機遊走以得到網絡嵌入。
- 按需生成隨機遊走。skim-gram 針對每一個樣本進行了優化
- DeepWalk 是可擴展的,生成隨機遊走和優化 Skip-gram 模型的過程都是高效且平凡的並行化
- 引入了深度學習圖形的範例
無向網絡的網絡嵌入
- LINE
- 爲了更好的保存網絡的結構信息,提出了一階類似度和二階類似度的概念,並在目標函數中結合了二者
- 使用廣度優先算法,只有距離給定節點最多兩跳的節點才被視爲相鄰節點
- 使用負抽樣 skip-gram
- Node2vec
- 反映網絡的結構
- deepwalk 的擴展(deepwalk 徹底時隨機的),引入偏向的隨機遊走,增長 p,q 兩個參數,p(控制訪問走過的node,即往回走,q 控制沒走過的node ,向外走)
- DeepWalk和node2vec算法是先在網絡中隨機遊走,獲得node的序列。兩個node同時出如今一個序列中的頻率越高,兩個node的類似度越高。而後構建一個神經網絡,神經網絡的輸入是node,輸出是其餘node與輸入的node同時出現的機率。同時出現的機率越高,兩個node的類似度越高。爲了保持類似度一致,獲得目標函數
- Walklets
- 不要遊走,跳過!在線學習多尺度網絡嵌入
- 進一步學習節點不一樣權重的網絡嵌入,以不一樣的粒度捕獲網絡的結構信息。
- GraRep
- 經過將圖形鄰接矩陣提高到不一樣的冪來利用不一樣尺度的節點共現信息,將奇異值分解(SVD)應用於鄰接矩陣的冪以得到節點的低維表示
- GraphAttention
- 不是預先肯定超參數來控制上下文節點分佈,而是自動學習對圖轉換矩陣的冪集數的關注
- 經過設置隱藏層,這些層裏的節點可以注意其鄰近節點的特徵,咱們可以(隱含地)爲鄰近的不一樣節點指定不一樣的權重,不須要進行成本高昂的矩陣運算(例如反演),也無需事先知道圖的結構
- SDNE
- DNGR
改進
HARP
- network embedding的時候保持網絡高階的結構特徵,具體的作法是經過將原網絡圖進行合併,合併爲多個層次的網絡圖
- 經過遞歸地粗粒化方式,將原網絡圖的節點和邊經過合併劃分紅一系列分層的結構更小的網絡圖,而後再利用現有的算法進行不斷的特徵提取,從而實現最終的network embedding特徵提取
特徵網絡嵌入( Attributed Network Embeddings )
無監督網絡嵌入方法僅利用網絡結構信息來得到低維度的網絡特徵。可是現實世界網絡中的節點和邊緣一般與附加特徵相關聯,這些特徵稱爲屬性(attribute)。
例如在諸如 Twitter 的社交網絡站點中,用戶(節點)發佈的文本內容是可用的。所以指望網絡嵌入方法還從節點屬性和邊緣屬性中的豐富內容中學習
挑戰:特徵的稀疏性,如何將它們合併到現有的網絡嵌入框架中
方法:
- TADW
- Network repre- sentation learning with rich text information
- 研究節點與文本特徵相關聯狀況,首先證實了deepwalk 實質上是將轉移機率矩陣 分解爲兩個低維矩陣,它將文本矩陣合併到矩陣分解過程當中
聯合建模網絡結構和節點特徵
- CENE
- 結合網絡結構和節點特徵
- 將文本內容視爲特殊類型的節點,並利用節點-節點連接和節點內容連接進行節點嵌入。 優化目標是共同最小化兩種類型鏈路的損失。
節點標籤,引文網絡中的出版地和日期等
典型方法是:優化用於生成節點嵌入和用於預測節點標籤的損失
- GENE
- 將組的信息考慮到Network Embedding學習中,同一組的節點即便直接沒有邊,通常也會存在一些內在關係
- 每一個相同的組也會學到一個向量表示,組向量有兩個用處:1)在利用周圍節點預測中心節點時,組向量也會加入預測; 2)組向量也會預測組中的其餘節點。最後目標函數是將上述兩項相加而成
- Max margin DeepWalk(MMDW)
- 第一部分是基於矩陣分解的節點嵌入模型
- 第二部分是將學習的表示做爲特徵來訓練標記節點上的最大邊緣 SVM 分類器。經過引入偏置梯度,能夠聯合更新兩個部分中的參數。
異構網絡嵌入
- Chang [13] 提出了異構網絡的深度嵌入框架
- 爲每種模態(如圖像,文本)構建一個特徵表示,而後將不一樣模態的嵌入映射到同一個嵌入空間
- 優化目標:最大化連接節點嵌入間的類似性、最小化未連接節點的嵌入