論文題目:《LINE: Large-scale Information Network Embedding》
發表時間: KDD 2015
論文作者: Jian Tang, Meng Qu , Mingzhe Wang, Ming Zhang, Jun Yan, Qiaozhu Mei
論文地址: Download
前言
大規模資訊網路 (large-scale information Network) 無論在存取性,使用性上比起普通的資訊處理方式更加複雜,更加多變,例如航空公司網路,出版物網路,社會和通訊網路以及全球資訊網。大多數現有的圖嵌入方法都不能用於通常包含數百萬個節點的真實資訊網路。本文提出的 LINE 模型致力於將這種大型的資訊網路嵌入到低維的向量空間中,且該模型適用於任何型別(有向、無向亦或是有權重)的資訊網路。該方法優化了一個精心設計的目標函式,同時保持了區域性和全域性網路結構。針對經典隨機梯度下降的侷限性,提出了一種邊緣取樣演算法(edge-sampling algorithm),實驗證明了該網路在各種真實世界的資訊網路上的有效性,包括語言網路、社交網路和引文網路。該演算法非常高效,能夠在一臺典型的單一機器上,在幾個小時內學習嵌入具有數百萬個頂點和數十億條邊的網路。且可用於視覺化,節點分類以及關係預測等方面。
關鍵詞:資訊網路嵌入;可擴充套件性;特徵學習;降維。
1 Introduction
舉例:事實上,有許多共同朋友的人可能有同樣的興趣成為朋友,與許多相似單詞一起使用的單詞可能有相似的含義。
Figure 1 給出了一個說明性的例子。由於頂點 6 和 7 之間的邊的權重很大,即 6 和 7 的一階(first-order)接近,因此在嵌入空間中應緊密表示。另一方面,雖然頂點 5 和頂 6 之間沒有聯絡,但它們共享許多共同的鄰居,即它們具有很高的二階接近性,因此也應相互緊密地表示。我們期望對二階接近度的考慮能夠有效地補充一階接近度的稀疏性,並更好地保持網路的全域性結構。在本文中,我們將提出精心設計的目標,以保持一階和二階的接近性。
即使找到一個合理的目標,為一個非常大的網路優化它也是一項挑戰。近年來引起人們注意的一種方法是利用隨機梯度下降法進行優化。然而,我們證明直接部署隨機梯度下降對現實世界的資訊網路有問題。這是因為在許多網路中,邊是加權的,權值通常呈現出高方差。考慮一個單詞共現網路,其中單詞對的權值(共現)可能從1到數十萬不等。這些邊緣的權重將被乘以梯度,導致梯度的爆炸,從而影響效能。為了解決這一問題,我們提出了一種新的邊緣取樣(edge-sampling)方法,它提高了推理的有效性和效率。我們對概率與其權值成正比的邊進行取樣,然後將取樣的邊作為二進位制邊進行模型更新。
Line Model 是具有通用性的,它適用於有向或無向、加權或非加權圖。我們評估了各種真實世界的資訊網路的連結效能,包括語言網路、社交網路和引文網路。在多個單詞類比、文字分類和節點分類等資料探勘任務中,評估了學習到的嵌入的有效性。結果表明,Line 模型在有效性和效率方面都優於其他競爭基線。
綜上所述,我們有以下貢獻:
-
- 我們提出了一種新的網路嵌入模型,它適合任意型別的資訊網路,並且很容易擴充套件到數百萬個節點。它有一個精心設計的目標函式,同時保持了一階和二階近點。
- 我們提出了一種優化目標的邊緣取樣演算法。該演算法解決了經典隨機梯度的侷限性,提高了推理的有效性和效率。
- 我們在真實世界的資訊網路上進行了廣泛的實驗。實驗結果證明了該 Line Model 的有效性和有效性。
2 Related Work
我們的工作與經典的圖嵌入或降維方法有關,如 MDS、IsoMap、LLE 和拉普拉斯特徵對映(Laplacian Eigenmap)。這些方法通常首先使用資料點的特徵向量來構造親和圖( Affinity graph),例如,資料的 K-nearest 圖,然後將親和圖嵌入到一個低維空間中。然而,這些演算法通常依賴於求解親和矩陣的主要特徵向量,其複雜度至少是節點數的二次型,使得它們對大規模網路的處理效率低下。
還有 圖分解(Graph factorization)的技術。通過矩陣分解得到了一個大圖的低維嵌入,並利用隨機梯度下降法進行了優化。這是可能的,因為一個圖可以表示為一個 Affinity matrix。然而,矩陣分解的目標並不是為網路設計的,因此不一定能保持全域性網路結構。直觀地說,圖分解期望具有高一階接近的節點被緊密表示。相反,LINE 使用了一個專門為網路設計的目標,它同時保留了一階(first-order)和二階(second-order)近似性。實際上,Graph factorization 方法只適用於無向圖,而 Line Model 同時適用於無向圖和有向圖。
與我們相關的最新工作是 DeepWalk ,它部署了一個 截斷隨機行走(truncated random walk)來獲得 representation。雖然在經驗上很有效,但 DeepWalk 並沒有提供一個明確的目標來明確保留了哪些網路屬性。直觀地說,DeepWalk 期望具有高二階接近度的節點產生相似的低維表示,而 LINE 同時保持了一階和二階接近度。DeepWalk 使用隨機遊走來擴充套件頂點的鄰域(類似於深度優先搜尋)。LINE 使用寬度優先搜尋策略,這是一種更合理的處理二階接近的方法。實際上,DeepWalk只適用於未加權網路,而我們的模型同時適用於具有加權邊和非加權邊的網路。
3 Problem definition
我們利用一階和二階近似性正式定義了大規模資訊網路嵌入的問題。
首先定義了一個資訊網路如下:
定義1:Information Network
-
- 定義為 $G=(V,E)$ ,其中 $V$ 是頂點集,每個頂點表示一個資料物件,$E$ 是頂點之間的邊集,每個邊表示兩個資料物件之間的關係。每條邊都是一個有序的對 $e=( u,v)$,與權重 $w_{uv}>0$ 相關聯,表示關係的強度。如果 $G$ 是無向的,我們有 $(u,v)≡(v,u)$ 和 $w_{uv}≡w_{vu}$ ,如果 $G$ 有向,我們有 $(u, v) \not \equiv(v, u)$ 和 $w_{u v} \not \equiv w_{v u} $。
在實踐中,資訊網路可以是定向的(例如引文網路),也可以是無定向的(例如Facebook中的使用者社交網路)。邊的權值可以是二進位制的,也可以取任何實值。請注意,雖然負邊權值是可能的,但在本研究中,我們只考慮非負邊權值。例如,在引文網路和社交網路中,$w_{uv}$ 取二進位制值;在不同物件之間的共現網路中,$w_{uv}$ 可以取任何非負值。在某些網路中,邊緣的權值可能會發散,因為一些物體會多次同時出現,而另一些物體可能只是同時出現幾次。
定義2:First-order Proximity
-
- 定義為:網路中的一階接近度是兩個頂點之間的區域性成對接近度。對於每一條由邊 $(u,v)$ 連線的每對頂點,該邊上的權值$w_{uv}$ 表示 $u$ 和 $v$ 之間的第一階接近程度。如果在 $u$ 和 $v$ 之間沒有邊,它們的一階接近度為 $0$ 。
- 如 Figure 1 ,6 和 7 之間存在直連邊,且邊權較大,則認為兩者相似且 1 階相似度較高,而 5 和 6 之間不存在直連邊,則兩者間1 階相似度為 0。
一階接近通常意味著真實網路中兩個節點的相似性。由於這一重要性,許多現有的圖嵌入演算法,如 $IsoMap$、$LLE$、拉普拉斯特徵對映和圖分解,都具有保持一階接近性的目標。
然而,在真實世界的資訊網路中,觀察到的連結比例很小,其他許多連結缺少。缺失鏈路上的一對節點的一階接近度為零,儘管它們在本質上非常相似。因此,僅憑一階接近並不足以保持網路結構,而尋找另一種解決稀疏性問題的接近概念是很重要的。一種自然的直覺是,共享相似鄰居的頂點往往彼此相似。例如,在社交網路中,擁有相似朋友的人往往有相似的興趣,因此成為朋友;在單詞共現網路中,總是與同一組單詞同時出現的單詞往往具有相似的含義。因此,我們定義了二階接近,它補充了一階接近,並保持了網路結構。
定義3:Second-order Proximity
- 定義為:網路中一對頂點 $(u、v)$ 之間的二階接近性是它們的鄰域網路結構之間的相似性。數學上,讓$p_{u}=\left(w_{u, 1}, \ldots, w_{u,|V|}\right)$ 表示 $u$ 與所有其他頂點的一階接近,那麼$u$ 和 $v$ 之間的二階接近由 $p_u$ 和 $p_v$ 之間的相似性決定。如果沒有頂點從 $u$ 和 $v$ 同時相連,則 $u$ 和 $v$ 之間的二階接近度為 $0$。
- 如 Figure 1 ,雖然 5 和 6 之間不存在直連邊,但是他們有很多相同的鄰居頂點 $(1,2,3,4)$,這其實也可以表明5和6是相似的,而 $2$ 階相似度就是用來描述這種關係的。
定義4:Large-scale Information Network Embedding
- 定義為:給定大網路 $G=(V,E)$,大規模資訊網路嵌入問題的目的是將每個頂點 $v∈V$ 表示為低維空間向量。即學習函式 $f_G:V→R^d$,其中 $d \ll|V|$。在空間 $R^d$ 中,保留了頂點之間的一階接近和二階接近度。
4. LINE: LARGE-SCALE INFORMATION NETWORK EMBEDDING
- 它必須能夠保持頂點之間的一階接近和二階接近;
- 它必須擴充套件到非常大的網路,比如數百萬個頂點和數十億條邊;
- 它可以處理具有任意型別邊的網路:有向、無向和/或加權。
4.1 Model Description
我們分別描述了保持一階接近度和二階接近度的 LINE 模型,然後引入了一種簡單的方法來結合這兩種接近度。
4.1.1 LINE with First-order Proximity
一階接近是指網路中頂點之間的區域性成對概率。
對於每條無向邊 $(i、j)$,我們對頂點 $v_i$ 和 $v_j$ 之間的聯合概率進行了細化如下:
${\large p_{1}\left(v_{i}, v_{j}\right)=\frac{1}{1+\exp \left(-\vec{u}_{i}^{T} \cdot \vec{u}_{j}\right)}} $
其中 $\vec{u}_{i} \in R^{d}$ 為頂點 $v_i$ 的低維向量表示。上述公式定義了空間 $V×V$ 上的分佈 $p(·,·)$ 。
其經驗概率可以定義為 $\hat{p}_{1}(i, j)=\frac{w_{i j}}{W} $ ,其中 $W=\sum_{(i, j) \in E} w_{i j}$ 。
優化目標如下:
$O_{1}=d\left(\hat{p}_{1}(\cdot, \cdot), p_{1}(\cdot, \cdot)\right)$
其中 $d(·,·)$ 為兩個分佈之間的距離。常用的衡量兩個概率分佈差異的指標為 KL 散度,使用 KL 散度並忽略常數項後有
$O_{1}=-\sum_{(i, j) \in E} w_{i j} \log p_{1}\left(v_{i}, v_{j}\right)$
請注意,一階接近只適用於無向圖,而不適用於有向圖。通過找到 $\left\{\vec{u}_{i}\right\}_{i=1 . .|V|}$ ,最小化目標上述式子。我們可以表示 $d$ 維空間中的每個頂點。
4.1.2 LINE with Second-order Proximity
二階接近性適用於有向圖和無向圖。
給定一個網路,在不喪失一般性的情況下,我們假設它是有向的(一條無向邊可以看作是兩條方向相反、權值相等的有向邊)。二階接近性假設與其他頂點共享許多連線的頂點彼此之間是相似的。在這種情況下,每個頂點也被視為一個特定的 “上下文”,並且假設在“上下文”上分佈相似的頂點是相似的。
因此,每個頂點扮演兩個角色:頂點本身和其他頂點的特定 “上下文”。我們引入了兩個向量 $ \vec{u}_{i}$ 和 $\vec{u}_{i}^{\prime} $,其中 $ \vec{u}_{i}$ 在被視為頂點時是 $v_i$ 的表示,而 $\vec{u}_{i}^{\prime} $ 在被視為特定的“上下文”時是 $v_i$ 的表示。對於每個有向邊 $(i、j)$,我們首先將頂點 $v_i$ 生成的“上下文” $v_j$ 的概率定義為:
${\large p_{2}\left(v_{j} \mid v_{i}\right)=\frac{\exp \left(\vec{u}_{j}^{T} \cdot \vec{u}_{i}\right)}{\sum_{k=1}^{|V|} \exp \left(\vec{u}_{k}^{\prime T} \cdot \vec{u}_{i}\right)}} $
其中,$|V|$ 是頂點或“上下文”的數量。對於每個頂點 $v_i$。上述式子實際上在上下文上定義了一個條件分佈 $p_2(·|v_i)$ ,即網路中的整個頂點集。
如上所述,二階接近性假定在上下文上具有相似分佈的頂點彼此相似。為了保持二階接近性,我們應該使低維表示所指定的上下文 $ p_2(·|v_i)$ 的條件分佈接近於經驗分佈 $\hat{p}_{2}\left(\cdot \mid v_{i}\right)$。
最小化以下目標函式:
$O_{2}=\sum \limits _{i \in V} \lambda_{i} d\left(\hat{p}_{2}\left(\cdot \mid v_{i}\right), p_{2}\left(\cdot \mid v_{i}\right)\right)$
其中 $d(·,·)$ 為兩個分佈之間的距離。由於網路中頂點的重要性可能不同,我們在目標函式中引入 $λ_i$ 來表示網路中頂點 $i$ 在網路中的聲望,這可以通過度來衡量,也可以通過 PageRank 等演算法來估計。
經驗分佈 $\hat{p}_{2}\left(v_{j} \mid v_{i}\right)$ 定義為
$\hat{p}_{2}\left(v_{j} \mid v_{i}\right)=\frac{w_{i j}}{d_{i}}$
其中 $w_{ij} $ 是邊 $(i,j)$ 的權重,$d_i$ 是頂點 $i$ 的出度,即 $d_{i}=\sum _{k \in N(i)} w_{i k}$ ,其中 $N(i)$ 是 $v_i$ 的外鄰集合。為了簡單起見,我們將 $λ_i$ 設為頂點 $i$ 的度,即 $λ_i=d_i$,這裡我們也採用 KL 散度 $\hat{p}_{2}\left(v_{j} \mid v_{i}\right)=\frac{w_{i j}}{d_{i}}$ 作為距離函式。用 kl 散度替換 $d(·,·)$ ,設定 $λ_i=d_i$ 並省略一些常數,我們有:
$O_{2}=-\sum \limits _{(i, j) \in E} w_{i j} \log p_{2}\left(v_{j} \mid v_{i}\right)$
通過學習 $\left\{\vec{u}_{i}\right\}_{i=1 . .|V|} $ 和 $\left\{\vec{u}_{i}^{\prime}\right\}_{i=1 . .|V|} $ 最小化這個目標,我們能夠用 $d$ 維向量 $\vec{u}_{i} $ 來表示每個頂點 $v_{i}$。
4.1.3 Combining fifirst-order and second-order proximities
4.2 Model Optimization
優化目標 $O_2$ 的計算代價很高,需要在計算條件概率 $p_2(·|v_i)$ 時需要對整個頂點集合進行總和。為了解決這一問題,我們採用了中提出的負取樣方法,根據每條邊 $(i、j)$ 的一定的噪聲分佈,對多個負邊進行取樣。更具體地說,它為每條邊 $(i、j)$ 指定了以下目標函式:
$\log \sigma\left(\vec{u}_{j}^{T} \cdot \vec{u}_{i}\right)+\sum \limits _{i=1}^{K} E_{v_{n} \sim P_{n}(v)}\left[\log \sigma\left(-\vec{u}_{n}^{\prime T} \cdot \vec{u}_{i}\right)\right]$
其中 $σ(x)=1/(1+exp(−x))$ 為 Sigmoid 函式。第一項表示觀測到的邊,第二項表示由噪聲分佈得到的負邊,$K$ 是負邊的個數。我們將 $P_{n}(v) \propto d_{v}^{3 / 4}$ 設定為中提出的 $3/4$,其中 $d_v$ 是頂點 $v$ 的出度。
對於目標函式,存在一個簡單的解:$u_{i k}=\infty$,對於 $i=1,……,|V|$ 和 $k=1,……,d$ 。為了避免這個簡單的解決方案,我們仍然可以利用負取樣方法,只將 $ \vec{u}_{j}^{\prime}$ 更改為 $\vec{u}_{j}^{T}$。
採用非同步隨機梯度演算法(ASGD)進行優化。在每一步中,ASGD演算法對一批邊緣進行取樣,然後更新模型引數。如果對一條邊 $(i、j)$ 進行取樣,則採用梯度w.r.t.頂點 $i$ 的嵌入向量 $\vec{u}_{i}$ 將計算為:
$\frac{\partial O_{2}}{\partial \vec{u}_{i}}=w_{i j} \cdot \frac{\partial \log p_{2}\left(v_{j} \mid v_{i}\right)}{\partial \vec{u}_{i}}$
請注意,梯度將乘以邊的權重。當邊的權值具有高方差時,這就會成為問題。例如,在一個單詞共發生網路中,一些單詞同時出現很多次(例如,數萬個),而有些單詞只同時出現幾次。在這樣的網路中,梯度的尺度會發散,很難找到一個好的學習率。如果根據權值小的邊選擇較大的學習率,權值大的邊上的梯度會爆炸,而如果根據權值大的邊選擇學習率,梯度會太小。
4.2.1 Optimization via Edge Sampling
令 $W = (w_1, w_2, ... , w_{|E|}) $ 表示邊的權重。 首先可以簡單地計算權重總和 $w_{sum} = = \sum_{i=1}^{|E|}w_{i}$ ,然後對進行取樣 $[0, w_{sum}]$ 範圍內的隨機值,以檢視隨機值屬於 $[\sum_{j=0}^{i-1}w_{j}, \sum_{j=0}^{i}w_{j})$ 哪個區間 。 這個 方法需要 $O(|E|) $ 時間來抽取樣本,當邊數 $|E| $ 很大這是昂貴的。 我們使用別名表 方法根據權重抽取樣本邊,重複繪製時只需要 $O(1) $ 時間來自相同離散分佈的樣本。
從別名表中取樣一條邊需要恆定的時間 $O(1) $ ,而使用負取樣的優化需要 $O(d(K+1))$ 時間,其中 $K$ 為負樣本的數量。因此,總體上,每個步驟都需要 $O(dK)$ 時間。在實踐中,我們發現用於優化的步驟數通常與邊數 $O(|E|)$ 成正比。因此,直線的總體時間複雜度為 $O(dK|E|)$ ,它與邊數 $|E|$ 呈線性關係,而不依賴於頂點數 $|V|$ 。邊緣取樣處理提高了隨機梯度下降的有效性,而不降低了效率。
4.3 Discussion
我們討論了直線模型的幾個實際問題:
- Low degree vertices
一個實際的問題是如何準確地嵌入小度的頂點。由於這種節點的鄰居數量非常少,很難準確地推斷出其表示,特別是基於二階接近的方法,它嚴重依賴於 “上下文” 的數量。一個直觀的解決方案是通過新增更高階的鄰居來擴充套件這些頂點的鄰居,比如鄰居的鄰居。在本文中,我們只考慮向每個頂點新增二階鄰居,即鄰居的鄰居。頂點 $i$ 與其二階鄰域 $j$ 之間的權重被測量為
$w_{i j}=\sum \limits _{k \in N(i)} w_{i k} \frac{w_{k j}}{d_{k}}$
在實踐中,只能新增一個頂點集 ${j}$,它們具有最大的頂點子集。
- New vertices
另一個實際的問題是如何找到新到達的頂點的表示。對於一個新的頂點 $i$,如果它與現有頂點的連線已知,我們可以得到現有頂點上的經驗分佈 $\hat{p}_{1}\left(\cdot, v_{i}\right)$ 和 $\hat{p}_{2}\left(\cdot \mid v_{i}\right)$。根據目標函式 $O_1$ 或者 $O_2$,得到新頂點的嵌入。一種簡單的方法是最小化以下目標函式之一
$-\sum \limits _{j \in N(i)} w_{j i} \log p_{1}\left(v_{j}, v_{i}\right), \text { or }-\sum \limits_{j \in N(i)} w_{j i} \log p_{2}\left(v_{j} \mid v_{i}\right)$
通過更新新頂點的嵌入和保持現有頂點的嵌入。如果沒有觀察到新頂點和現有頂點之間的連線,我們必須求助於其他資訊,如頂點的文字資訊,並將其留給我們未來的工作。
5. EXPERIMENTS
我們將該方法應用於不同型別的幾個大型現實世界網路,包括語言網路,兩個社交網路和兩個引用網路。
資料集:
(1)語言網路:整個英文維基百科頁面構建了一個詞共同網路
(2)社交網路:Flickr和Youtube
(3)引用網路:作者引文網和論文引文網
以上網路的詳細統計資料總結在表1中,代表一系列資訊網路(有向或無向、加權或否);每個網路包含至少50萬個節點和數百萬個邊。
演算法比較:將LINE模型與一些常見的圖嵌入演算法進行比較,包括GF演算法,Deep Walk演算法,LINE-SGD,LINE演算法等。
資料集表一:
引數設定:
對於所有方法,隨機梯度下降的小批量大小設定為1;以起始值 $\rho_{0}=0.025$ 和 $\rho_{t}=\rho_{0}(1-t / T)$ 設定學習速度,$T$ 是小批量或邊緣樣品的總數;為了公平比較,語言網路嵌入的維度被設定為 $200$;而其他網路中,預設設定為 $128$;其他的預設引數設定包括:LINE的負取樣 $K=5$,樣本總數 $T = 100$ 億(LINE),$T=200$ 億(GF),視窗大小 $win = 10$,步行長度 $t = 40$,對於 Deep Walk,每頂點行走 $\gamma=40$;所有的嵌入向量最終通過設定$\|w\|_{2}=1$ 進行歸一化。
定量結果:
1.語言網路:
兩個應用程式用於評估學習嵌入的有效性:詞類比和文件分類。
詞類比:給定一個單詞對 $(a,b) $ 和一個單詞 $c$,該任務旨在找到一個單詞 $d$ ,使得 $c$和 $d$ 之間的關係類似於 $a$ 和 $b$ 之間的關係,或表示為:$a: b \rightarrow c: ?$ ; 表2 使用在維基百科語料庫或維基百科詞彙網路上學習的詞彙的嵌入來報告單詞類比的結果,對於圖分解,每對單詞之間的權重被定義為同時出現次數的對數,這導致比共同出現的原始值更好的效能。對於DeepWalk,嘗試不同的截止閾值將語言網路轉換為二進位制網路,並且當所有邊緣保留在網路中時,實現最佳效能。同時與與最先進的詞嵌入模式SkipGram進行比較。直接從原始維基百科頁面學習嵌入詞,也隱含地是矩陣分解法。
2.社交網路:
與語言網路相比,社交網路更加稀缺;將每個節點分配到一個或多個社群的多標籤分類任務來評估頂點嵌入;隨機抽取不同百分比的頂點進行訓練,其餘用於評估。結果在10次不同執行中進行平均。
引用網路:
通過GF和LINE兩種方法對引用網路進行評估。還通過多標籤分類任務評估頂點嵌入。 我們選擇7個流行會議,包括AAAI,CIKM,ICML,KDD,NIPS,SIGIR和WWW作為分類類別。
DBLP(AuthorCitation) Network:
DBLP(PaperCitation) Network :
訓練結果:
6. 總結
LINE模型具有精心設計的客觀功能,保留了一階和二階接近度,相互互補。並提出了一種有效和有效的邊緣抽樣方法進行模型推理;解決了加權邊緣隨機梯度下降的限制,而不影響效率。此外,除一階和二階之外更高的相似度也是LINE模型演算法在未來能夠更加拓寬的方面。異構網路的嵌入,也是研究的方向之一。
參考部落格
https://zhuanlan.zhihu.com/p/56478167 https://zhuanlan.zhihu.com/p/27037042 https://zhuanlan.zhihu.com/p/74746503
『總結不易,加個關注唄!』