論文信息
論文標題:Attributed Graph Clustering: A Deep Attentional Embedding Approach
論文作者:Chun Wang, Shirui Pan, Ruiqi Hu, Guodong Long, Jing Jiang, Chengqi Zhang
論文來源:2019, IJCAI
論文地址:download
論文代碼:download
1 Introduction
研究現狀:目前的圖表示學習方法都是兩階段方法,且融合結構和屬性信息的機制並不完美。
本文模型與傳統的 $\text{two-step}$ 方法的比較如 Figure 1 所示:
- 本文模型是將 節點表示 和 聚類 放在一個統一的框架中學習。
- $\text{Two-step}$ 方法則是先學習 $\text{node embedding}$,然后進行聚類。
2 Method
總體框架:
組成部分:
-
- Graph Attentional Autoencoder
- Self-training Clustering
2.1 Graph Attentional Autoencoder
2.1.1 GAT encoder
首先:衡量 $\text{node}$ $i$ 的鄰居 $N_i$ 對於節點 $i$ 的影響,采用圖注意力機制:
$z_{i}^{l+1}=\sigma\left(\sum\limits _{j \in N_{i}} \alpha_{i j} W z_{j}^{l}\right)\quad\quad\quad(1)$
其中:$\alpha_{i j}$ is the attention coefficient that indicates the importance of neighbor node $j$ to node $i$ ;
對於注意力系數 $\alpha_{i j}$ 主要參考兩個方面:
-
- 屬性值(attribute values) ;
- 拓撲距離( topological distance );
Aspact 1:屬性值
注意力系數 $\alpha_{i j}$ 可以表示為 由 $x_i$ 和 $x_j$ 拼接形成的單層前饋神經網絡:
$c_{i j}=\vec{a}^{T}\left[W x_{i} \| W x_{j}\right]\quad \quad \quad(2)$
其中:
-
- $\vec{a} \in R^{2 m^{\prime}}$ 是權重向量;
Aspact 2:拓撲距離
考慮節點高階鄰居信息(指 $ \text{t-order} $ 鄰居),得到 $\text{proximity matrix} $ :
$M=\left(B+B^{2}+\cdots+B^{t}\right) / t\quad \quad\quad(3)$
其中:
-
- $B$ 是轉移矩陣(transition matrix),當 $e_{i j} \in E$ 有邊相連,那么 $B_{i j}=1 / d_{i}$ ,否則 $B_{i j}=0$ 。
- $M_{i j}$ 表示 $\text{node}$ $i$ 和 $\text{node}$ $j$ 的 $t$ 階內的拓撲相關性。如果 $\text{node}$ $i$ 和 $\text{node}$ $j$ 存在鄰居關系($t$ 階之內),那么 $M_{i j}>0 $。
對節點 $i$ 的領域做標准化,采用 $\text{softmax function}$ :
${\large \alpha_{i j}=\operatorname{softmax}_{j}\left(c_{i j}\right)=\frac{\exp \left(c_{i j}\right)}{\sum_{r \in N_{i}} \exp \left(c_{i r}\right)}} \quad \quad \quad(4)$
將 $\text{Eq.2}$ 中 $c_{ij}$ 及 $\text{Eq.3}$ 中的 $M_{ij}$ 帶入 $\text{Eq.4}$,那么 $\text{attention}$ 系數可以表示為:
${\large \alpha_{i j}=\frac{\exp \left(\delta M_{i j}\left(\vec{a}^{T}\left[W x_{i} \| W x_{j}\right]\right)\right)}{\sum_{r \in N_{i}} \exp \left(\delta M_{i r}\left(\vec{a}^{T}\left[W x_{i} \| W x_{r}\right]\right)\right)}} \quad\quad\quad(5)$
其中,激活函數 $\delta$ 采用 $LeakyReLU$ ;
本文堆疊 $2$ 個 $\text{graph attention layers}$ :
$z_{i}^{(1)}=\sigma\left(\sum \limits _{j \in N_{i}} \alpha_{i j} W^{(0)} x_{j}\right)\quad \quad \quad (6)$
$z_{i}^{(2)}=\sigma\left(\sum\limits _{j \in N_{i}} \alpha_{i j} W^{(1)} z_{j}^{(1)}\right)\quad \quad\quad(7)$
通過上述圖注意力編碼器,得到最終的 $z_{i}=z_{i}^{(2)}$ 。
2.1.2 Inner product decoder
解碼器為 $\text{Inner product decoder}$ ,用於重構圖:
其中:
-
- $\hat{A}$ 是重建后的圖結構矩陣;
2.1.3 Reconstruction loss
最小化 $A$ 和 $\hat{A}$ 的重構錯誤:
$L_{r}=\sum\limits _{i=1}^{n} \operatorname{loss}\left(A_{i, j}, \hat{A}_{i j}\right)\quad\quad \quad (9)$
2.2 Self-optimizing Embedding
除優化重構誤差外,還將 隱表示 輸入一個自優化聚類模塊,該模塊最小化以下目標:
$L_{c}=K L(P \| Q)=\sum\limits_{i} \sum\limits _{u} p_{i u} \log \frac{p_{i u}}{q_{i u}}\quad\quad\quad(10)$
其中:
-
- $q_{iu}$度量隱表示 $z_{i}$ 和聚類中心 $\mu_{u}$ 之間的相似性,本文通過 Student's t-distribution 度量;
- $p_{iu}$ 代表目標分布;
${\large q_{i u}=\frac{\left(1+\left\|z_{i}-\mu_{u}\right\|^{2}\right)^{-1}}{\sum\limits _{k}\left(1+\left\|z_{i}-\mu_{k}\right\|^{2}\right)^{-1}}} \quad\quad\quad(11)$
${\large p_{i u}=\frac{q_{i u}^{2} / \sum_{i} q_{i u}}{\sum_{k}\left(q_{i k}^{2} / \sum_{i} q_{i k}\right)}}\quad \quad\quad(12) $
聚類損失迫使當前分布 $Q$ 接近目標分布 $P$。
算法概述
-
- 首先使用沒有用 selfoptimize clustering part 的自編碼器獲得初始 embedding ;
- 其次為計算 Eq.11 ,先使用 $k-means$ 獲得初始聚類中心 $\mu$
- 然后根據 $L_c$ 使用 SGD 進行優化更新 $\mu$ 和 $z$ 。
需要注意的是 :$P$ 每 $5$ 個 iteration 更新一次,$Q$ 每個 iteration 更新一次。
算法步驟:
2.3 Joint Embedding and Clustering Optimization
聯合優化 自編碼器的重構損失 和 聚類損失,總目標函數為:
$L=L_{r}+\gamma L_{c}\quad \quad\quad (13)$
其中:
-
- $L_{r}$ 代表着重構損失;
- $L_{c} $ 代表着聚類損失 ;
最終 $v_{i}$ 的 軟標簽 通過 $Q$ 獲得:
$s_{i}=\arg \underset{u}{\text{max}} \; q_{i u}\quad \quad\quad(14)$
3 Experiments
4 Conclusion
貢獻:
- 使用考慮了長距離結構信息圖注意力網絡的編碼器;
- 采用內積重構鄰接矩陣做;
修改歷史
2022-02-19 創建文章
2022-06-09 修訂文章