圖神經網絡 | (3) 圖嵌入(Graph Embedding,GE)綜述

原文地址

相關圖嵌入綜述

目錄

1. 圖嵌入概述

2. 圖嵌入的挑戰

3. 圖嵌入的方法

4. 參考文獻


1. 圖嵌入概述

圖,如社交網絡、單詞共存網絡和通信網絡,廣泛地存在於各種現實應用中。通過對它們的分析,我們可以深入瞭解社會結構、語言和不同的交流模式,因此圖一直是學界研究的熱點。圖分析任務可以大致抽象爲以下四類:( a )節點分類,( b )鏈接預測,( c )聚類,以及( d )可視化。其中,節點分類旨在基於其他標記的節點和網絡拓撲來確定節點的標籤(也稱爲頂點)。鏈路預測是指預測缺失鏈路或未來可能出現的鏈路的任務。聚類用於發現相似節點的子集,並將它們分組在一起;最後,可視化有助於深入瞭解網絡結構。

真實的圖(網絡)往往是高維、難以處理的,20世紀初,研究人員發明了圖形嵌入算法,作爲降維技術的一部分。他們首先根據實際問題構造一個D維空間中的圖,然後將圖的節點嵌入到d(d<<D)維向量空間中。嵌入的思想是在向量空間中保持連接的節點彼此靠近。拉普拉斯特徵映射(Laplacian Eigenmaps)和局部線性嵌入(Locally Linear Embedding ,LLE)是基於這一原理的算法的例子。然而,可伸縮性是這種方法的一個主要問題,它的時間複雜度是O(|V|^2)

自2010年以來,關於圖嵌入的研究已經轉移到解決網絡稀疏性的可伸縮圖嵌入技術上。例如,圖分解(Graph Factorization)使用鄰接矩陣的近似分解作爲嵌入。LINE擴展了這種方法,並試圖保持一階和二階近似。HOPE通過使用廣義奇異值分解( SVD )分解相似性矩陣而不是鄰接矩陣來擴展LINE以試圖保持高階鄰近性。SDNE 使用自動編碼器嵌入圖形節點並捕捉高度非線性的依賴關係。這些新的可擴展方法的時間複雜度爲O(|E|)。 

2. 圖嵌入的挑戰

如前所述,圖嵌入的目標是發現高維圖的低維向量表示,而獲取圖中每個節點的向量表示是十分困難的,並且具有幾個挑戰,這些挑戰一直在推動本領域的研究:

  • 屬性選擇:節點的“良好”向量表示應保留圖的結構和單個節點之間的連接。第一個挑戰是選擇嵌入應該保留的圖形屬性。考慮到圖中所定義的距離度量和屬性過多,這種選擇可能很困難,性能可能取決於實際的應用場景。
  • 可擴展性:大多數真實網絡都很大,包含大量節點和邊。嵌入方法應具有可擴展性,能夠處理大型圖。定義一個可擴展的模型具有挑戰性,尤其是當該模型旨在保持網絡的全局屬性時。
  • 嵌入的維數:實際嵌入時很難找到表示的最佳維數。例如,較高的維數可能會提高重建精度,但具有較高的時間和空間複雜性。較低的維度雖然時間、空間複雜度低,但無疑會損失很多圖中原有的信息。

3. 圖嵌入的方法

在過去的十年裏,在圖形嵌入領域已經有了大量的研究,重點是設計新的嵌入算法。發展到現在,大體上可以將這些嵌入方法分爲三大類:( 1 )基於因子分解(矩陣分解)的方法,( 2 )基於隨機遊走的方法,以及( 3 )基於深度學習的方法。在下文中我將簡要解釋每一個類別的特徵與每一類別代表性算法的原理。

  • 預備知識與符號定義

定義1 :一個圖G(V,E)由頂點集V={v1,…,vn}與邊集:

構成,圖的鄰接矩陣S則由每條邊的權值:

構成。如果頂點vi和vj之間沒有邊連接,那麼:

。如果圖是無向圖(鄰接矩陣對稱),則:

邊的權值Sij表示vi和vj的相似度,由特定的評價函數(如 高斯函數)得出,值越高則兩個頂點越相似。

定義2 一階近似:邊緣權重也被稱爲節點vi和vj之間的一階近似值,因爲它們是兩個節點之間第一個也是最重要的相似性度量。

定義3 二階近似:一對節點之間的二階近似描述了該對節點鄰域結構的相似性。設

表示vi和其他節點之間的一階接近。然後,根據si和sj的相似性確定vi和vj之間的二階近似。二階近似比較兩個節點的鄰域,如果它們具有相似的鄰域,則將它們視爲相似的。

在上圖中因爲6和7之間有邊連接,所以6和7一階近似。5和6之間雖然沒有邊,但是它們有4個相同的鄰居節點,所以5和6二階近似。

定義4 圖形嵌入:對於圖G=(v,e),圖嵌入是圖的頂點的映射:

,d<<|v| (節點數),函數f保留了圖G上定義的一些相似度。因此,嵌入會將每個節點映射到低維(稠密)特徵向量,並嘗試保留頂點之間的連接強度。例如,嵌入保留一階近似可通過最小化:

來獲得接近。讓兩個節點對( vi,vj )和( vi,vk )與連接強度相關聯,假如Sij>Sik(爲使上述損失函數整體最小,第一項大的,第二項應該小,yi更接近yj)。在這種情況下,vj將被映射到嵌入空間中比vk的映射更接近vi的點。 

  • 基於因子分解的方法

Locally Linear Embedding (LLE)

LLE假設每個節點都是嵌入空間中相鄰節點的線性組合。如果假設圖G的鄰接矩陣元素代表節點j能夠表示節點i的權重,我們定義(每個節點的嵌入可以用其鄰接節點的嵌入的線性組合來表示,組合係數爲節點之間的權值,即鄰接矩陣W中的元素)。

於是我們可以通過最小化:

來求解嵌入後的圖:

爲了去除退化解,嵌入的方差被約束爲:

,考慮到平移不變性,嵌入以零爲中心:

上述約束優化問題可以簡化爲特徵值問題,其解是取稀疏矩陣

的底部d+1特徵向量,並丟棄與最小特徵值對應的那個特徵向量。

Laplacian Eigenmaps

拉普拉斯特徵映射的目的是在權重w ij較高時(權重越大,越相似),保持兩個節點嵌入後離得很近,也就是說被分割太遠的兩個相似節點會得到更多的反饋(懲罰)。具體來說,它最小化了以下目標函數(第二項是固定的,第二項越大,爲使整體最小,第一項應該越小,即兩個節點間的權重越大,那麼其嵌入就應該越近,二者越相似):

其中L是圖G的拉普拉斯算子,目標函數受到:

約束,以消除瑣碎的解。這一問題的解可以通過取正則化L的最小的d個特徵值對應的特徵向量得到,

Cauchy graph embedding

拉普拉斯特徵映射對嵌入節點之間的距離使用二次方的懲罰函數:

因此,在保持節點之間的相似性的同時,節點之間的差異性會被破壞。柯西圖嵌入通過使用:

替換二次函數:

來解決這個問題,重新排列後,要最大化的目標函數變成:

,伴隨着:

和:

兩個約束。新的目標函數是距離的反函數,因此更加強調相似的節點而不是不同的節點。

Structure Preserving Embedding(SPE)

Structure Preserving Embedding (SPE)是另一種擴展拉普拉斯特徵映射的方法。SPE的目標是精確地重建輸入圖。嵌入被存儲爲一個正的半離散核矩陣K,並定義了一個連接算法G,該算法用來從K重構出原來的圖形。

Graph Factorization(GF)

圖因式分解(GF)應該是第一種獲得O(|E|)時間複雜度的圖嵌入方法。爲了獲得嵌入,GF對圖的鄰接矩陣W進行因式分解,以最小化以下損失函數:

其中,λ是一個正則化係數。注意,求和是在觀察到的邊上,而不是所有可能的邊上。這是一個考慮到可伸縮性的近似值,因此可能會在解決方案中引入噪聲。注意,由於鄰接矩陣通常不是半正定的,即使嵌入的維數爲|v|,損失函數的最小值也大於0。

GraRep

GraRep將節點的轉換概率定義爲:

,並通過最小化:

來保持k階近似,其中X^kT^k中得到(詳細過程可以閱讀參考文獻)。然後它連接所有k的Y_s^k以形成Y_s.要注意的是,這和HOPE方法很相似,HOPE通過最小化:

來求解,其中,S是一個合適的相似度矩陣。

GraRep的缺點是可擴展性,因爲T^k往往會有O(|V|^2)多個非零項。

HOPE

HOPE通過最小化:

來保留更高階的近似,其中S是相似度矩陣。HOPE的作者測試了許多不同的相似度衡量方法,包括Katz Index, Rooted Page Rank, Common Neighbors, and Adamic-Adar score,並將S定義爲:

,這裏面M_g,M_l都是稀疏的,因此HOPE也可以採用常用的奇異值分解方法來獲得高效的嵌入。

  • 基於隨機遊走的方法

DeepWalk

DeepWalk方法受到word2vec的啓發,首先選擇某一特定點爲起始點,做隨機遊走得到點的序列,然後將這個得到的序列視爲句子,用word2vec來學習,得到該點的表示向量/嵌入。DeepWalk通過隨機遊走來獲取圖中點的局部上下文信息,因此學到的表示向量反映的是該點在圖中的局部結構,兩個點在圖中共有的鄰近點(或者高階鄰近點)越多,則對應的兩個向量/嵌入之間的距離就越短。

node2vec

與DeepWalk相似,node2vec通過最大化隨機遊走得到的序列中的節點出現的概率來保持節點之間的高階鄰近性。與DeepWalk的最大區別在於,node2vec採用有偏隨機遊走,在廣度優先(bfs)和深度優先(dfs)圖搜索之間進行權衡,從而產生比DeepWalk更高質量和更多信息量的嵌入。

Hierarchical representation learning for networks (HARP)

DeepWalk和node2vec隨機初始化節點嵌入(隨機初始化節點嵌入矩陣,作爲模型參數,進行訓練)以訓練模型。由於它們的目標函數是非凸的,這種初始化很可能陷入局部最優。HARP引入了一種策略,通過更好的權重初始化來改進解決方案並避免局部最優。爲此,HARP通過使用圖形粗化聚合層次結構上一層中的節點來創建節點的層次結構。然後,它生成最粗糙的圖的嵌入,並用所學到的嵌入初始化精煉圖的節點嵌入(層次結構中的一個)。它通過層次結構傳播這種嵌入,以獲得原始圖形的嵌入。因此,可以將HARP與基於隨機行走的方法(如DeepWalk和node2vec)結合使用,以獲得更好的優化函數解。

Walklets

DeepWalk和node2vec通過隨機遊走生成的序列,隱式地保持節點之間的高階鄰近性,由於其隨機性,這些隨機遊走會得到不同距離的連接節點。另一方面,基於因子分解的方法,如GF和HOPE,通過在目標函數中對節點進行建模,明確地保留了節點之間的距離。Walklets將顯式建模與隨機遊走的思想結合起來。該模型通過跳過圖中的某些節點來修改DeepWalk中使用的隨機遊走策略。這是針對多個尺度的跳躍長度執行的,類似於在GraRep中分解A^k,並且隨機行走獲得的一組點的序列用於訓練類似於DeepWalk的模型。

  • 基於深度學習的方法

 Structural deep network embedding (SDNE)

SDNE建議使用深度自動編碼器來保持一階和二階網絡鄰近度。它通過聯合優化這兩個近似值來實現這一點。該方法利用高度非線性函數來獲得嵌入。模型由兩部分組成:無監督和監督。前者包括一個自動編碼器,目的是尋找一個可以重構其鄰域的節點的嵌入。後者基於拉普拉斯特徵映射,當相似頂點在嵌入空間中彼此映射得很遠時,該特徵映射會受到懲罰。

Deep neural networks for learning graph representations (DNGR)

DNGR結合了隨機遊走和深度自動編碼器。該模型由3部分組成:隨機遊走、正點互信息(PPMI)計算和疊加去噪自編碼器。在輸入圖上使用隨機遊走模型生成概率共現矩陣,類似於HOPE中的相似矩陣。將該矩陣轉化爲PPMI矩陣,輸入到疊加去噪自動編碼器中得到嵌入。輸入PPMI矩陣保證了自動編碼器模型能夠捕獲更高階的近似度。此外,使用疊加去噪自動編碼器有助於模型在圖中存在噪聲時的魯棒性,以及捕獲任務(如鏈路預測和節點分類)所需的底層結構。

Graph convolutional networks (GCN)

上面討論的基於深度神經網絡的方法,即SDNE和DNGR,以每個節點的全局鄰域(一行DNGR的PPMI和SDNE的鄰接矩陣)作爲輸入。對於大型稀疏圖來說,這可能是一種計算代價很高且不適用的方法。圖卷積網絡(GCN)通過在圖上定義卷積算子來解決這個問題。該模型迭代地聚合了節點的鄰域嵌入,並使用在前一次迭代中獲得的嵌入及其嵌入的函數來獲得新的嵌入。僅局部鄰域的聚合嵌入使其具有可擴展性,並且多次迭代允許學習嵌入一個節點來描述全局鄰域。最近幾篇論文提出了利用圖上的卷積來獲得半監督嵌入的方法,這種方法可以通過爲每個節點定義唯一的標籤來獲得無監督嵌入。這些方法在卷積濾波器的構造上各不相同,卷積濾波器可大致分爲空間濾波器和譜濾波器。空間濾波器直接作用於原始圖和鄰接矩陣,而譜濾波器作用於拉普拉斯圖的譜。

Variational graph auto-encoders (VGAE)

VGAE採用了圖形卷積網絡(GCN)編碼器和內積譯碼器。輸入是鄰接矩陣,它們依賴於GCN來學習節點之間的高階依賴關係。他們的經驗表明,與非概率自編碼器相比,使用變分自編碼器可以提高性能。

  • 其他

LINE

LINE適用於任意類型的信息網絡:無向、有向和無權、有權。該方法優化了精心設計的目標函數,能夠保留局部和全局網絡結構。此外,LINE中還提出了邊緣採樣算法,解決了經典隨機梯度下降的侷限性,提高了算法的有效性和效率。具體來說,LINE明確定義了兩個函數,分別用於一階和二階近似,並最小化了這兩個函數的組合。一階鄰近函數與圖分解(GF)相似,都是爲了保持嵌入的鄰接矩陣和點積接近。區別在於GF通過直接最小化兩者的差異來實現這一點。相反,LINE爲每對頂點定義了兩個聯合概率分佈,一個使用鄰接矩陣,另一個使用嵌入。然後,LINE最小化了這兩個分佈的Kullback–Leibler(KL)散度。這兩個分佈和目標函數如下:

作者用和上面相似的方法定義了二階近似的概率分佈和目標函數:

爲簡單起見,將λi設置爲頂點i的度數,即λi= di。同樣採用KL散度作爲距離函數, 用KL散度代替d(·,·)。再省略一些常數,得到:

4. 參考文獻

[1] Goyal P , Ferrara E . Graph Embedding Techniques, Applications, and Performance: A Survey[J]. Knowledge-Based Systems, 2017.

[2] Roweis, S. T . Nonlinear Dimensionality Reduction by Locally Linear Embedding[J]. Science, 2000, 290(5500):2323-2326.

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

[4] Grover A , Leskovec J . node2vec: Scalable Feature Learning for Networks[J]. Kdd, 2016.

[5] Wang D , Cui P , Zhu W . Structural Deep Network Embedding[C]// the 22nd ACM SIGKDD International Conference. ACM, 2016.

[6] Tang J , Qu M , Wang M , et al. LINE: Large-scale information network embedding[J]. 24th International Conference on World Wide Web, WWW 2015, 2015.

 

發佈了407 篇原創文章 · 獲贊 769 · 訪問量 15萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章