論文解讀SDCN《Structural Deep Clustering Network》

每天卷學習發表於2021-12-25

前言

  主體思想:深度聚類需要考慮資料內在資訊以及結構資訊。
    • 考慮自身資訊採用 基礎的 Autoencoder ,考慮結構資訊採用 GCN。

1.介紹

  在現實中,將結構資訊整合到深度聚類中通常需要解決以下兩個問題。

  1、在深度聚類中應該考慮哪些結構性資訊?

    • 結構資訊表明了資料樣本之間潛在的相似性。不僅需要考慮低階資訊還需要考慮高階資訊。

  2、結構資訊與深度聚類之間的關係是什麼?

    • 深度聚類的基本組成部分是深度神經網路(DNN),例如  Autoencoder。Autoencoder  由多層結構組成,每一層都會捕獲不同的潛在資訊。在資料之間也有各種型別的結構資訊。如何優雅地將資料的結構與自動編碼器的結構結合起來則是另一個問題。

  為獲取結構資訊,首先構造一個  KNN  圖,它能夠揭示資料的底層結構。為從  KNN  圖中獲取低階和高階的結構資訊,提出了一個由多個圖卷積層組成的  GCN  模組來學習 GCN 特定的表示。為了將結構資訊引入到深度聚類中,引入了一個  AutoEncoder  模組來從原始資料中學習 AutoEncoder 特定的表示,並提出了一個  delivery operator   來將其與  GCN  特定的表示相結合。我們從理論上證明了  delivery operator   能夠更好地輔助自動編碼器與  GCN  之間的整合。特別地,我們證明了  GCN  為由  Autoencoder  學習的表示提供了一個近似的二階圖正則化,並且由自編碼器學習的表示可以緩解GCN中的過平滑問題。

  最後,由於自動編碼器和GCN模組都將輸出表示,我們提出了一個雙自監督模組來統一引導這兩個模組。通過雙自監督模組,可以對整個模型進行端到端聚類任務訓練。

  綜上所述,本文主要貢獻如下:

  • 提出了一種新的結構深度聚類網路(SDCN)來進行深度聚類。所提出的SDCN有效地結合了自編碼器和GCN的優勢與一個新的傳遞操作符和一個雙自監督模組。據我們所知,這是第一次將結構性資訊明確地應用到深度聚類中。
  • 對  SDCN  進行了理論分析,並證明了  GCN  為  DNN  表示提供了一個近似的二階圖正則化,並且在  SDCN  中學習到的資料表示相當於具有不同階結構資訊的表示的和。通過我們的理論分析,可以有效地緩解  SDCN  中  GCN  模組的過平滑問題。
  • 在6個真實資料集上的大量實驗表明,SDCN  與先進技術相比的優越性。具體來說,SDCN  與最佳基線方法相比取得了顯著的改進(NMI17%,ARI28%)。

2.網路架構

  

   The blue solid line represents that target distribution P is calculated by the distribution Q and the two red dotted lines represent the dual self-supervised mechanism. The target distribution P to guide the update of the DNN module and the GCN module at the same time.

3.模型詳解

  在本節中,將介紹 SDCN,其整體框架如 Figure 1 所示。首先基於原始資料構建一個KNN圖。然後,將原始資料和  KNN  圖分別輸入到自動編碼器和GCN中。並將每一層的自動編碼器與相應的  GCN  層連線起來,這樣就可以通過  delivery operator  將自動編碼器特定的表示整合到  GCN  的表示中。同時,我們提出了一種雙重自監督機制來監督自動編碼器和  GCN  的訓練程式。本文將在下面詳細描述我們提出的模型。

3.1 KNN Graph

  假設我們有原始資料  $\mathrm{X} \in \mathbb{R}^{N \times d} $,其中每一行  $\mathbf{x}_{i}$  代表  $i-th$  樣本,$N$ 是樣本數,$d$  是維度。 對於每個樣本,我們首先找到它的  $top-K$  相似鄰居並設定邊以將其與其鄰居連線。 有很多方法可以計算樣本的相似度矩陣  $S \in \mathbb{R}^{N} \times N$。

  這裡列出在構建 KNN 圖時使用的兩種相似度計算的流行方法:

  • Heat Kernel. 樣本  $i$  和  $j$  之間的相似度計算如下:

    $ \mathrm{S}_{i j}=e^{-\frac{\left\|\mathrm{x}_{i}-\mathrm{x}_{j}\right\|^{2}}{t}}\quad \quad(1)$

   其中, $t$  為熱傳導方程中的時間引數。對於連續的資料,如:影像。

  • Dot-product. 樣本  $i$  和樣本  $j$  之間的相似性的計算方法為:

     $\mathrm{S}_{i j}=\mathbf{x}_{j}^{T} \mathbf{x}_{i} \quad \quad (2)$

   對於離散資料,如: bag-of-words,使用點積相似性,使相似性只與相同 word 的數量相關。

  在計算相似度矩陣 $S$  後,選擇每個樣本的前  $k$  個相似度點作為其鄰居,構造一個無向的  $k$  近鄰圖,從非圖資料中得到鄰接矩陣  $A$。

  tips:程式碼中 $k =10$,但是仔細看生成的鄰接矩陣可以發現部分點甚至出現了11個最近臨。

3.2 DNN模組

  在本文中,使用基本的自動編碼器來學習原始資料的表示,以適應不同型別的資料特徵。假設在自動編碼器中存在  $L$  個層,並且  $ℓ$  表示層數。

  在  Encoder  部分  $H(ℓ)$  中,第  $ℓ$  層學習到的表示如下:

    $\mathbf{H}^{(\ell)}=\phi\left(\mathbf{W}_{e}^{(\ell)} \mathbf{H}^{(\ell-1)}+\mathbf{b}_{e}^{(\ell)}\right)$

  其中  $\phi$  是啟用函式,本文取  $Relu$。 $\mathbf{W}_{e}^{(\ell)}$  和  $\mathbf {b}_{e}^{(\ell)}$  分別是 Encoder 中  $\ell$  層的權重矩陣和偏差。 此外,我們將  $\mathbf{H}^{(0)}$  表示為 raw data : $\mathbf{X}$ 。

  Encoder  部分後面是 Decoder 部分:

    $\mathbf{H}^{(\ell)}=\phi\left(\mathbf{W}_{d}^{(\ell)} \mathbf{H}^{(\ell-1)}+\mathbf{b}_{d}^{(\ell)}\right) \quad \quad (4)$

  其中  $\mathbf{W}_{d}^{(\ell)}$  和  $\mathbf{b}_{d}^{(\ell)}$  是分別位於解碼器第   $\ell$  層的權重矩陣和偏差 。

  解碼器部分的輸出是對原始資料   $\hat{\mathbf{X}}=\mathbf{H}^{(L)}$   的重構,從而得到以下目標函式:

    $\mathcal{L}_{r e s}=\frac{1}{2 N} \sum \limits _{i=1}^{N}\left\|\mathbf{x}_{i}-\hat{\mathbf{x}}_{i}\right\|_{2}^{2}=\frac{1}{2 N}\|\mathbf{X}-\hat{\mathbf{X}}\|_{F}^{2}\quad \quad (5)$

3.3 GCN Module

  自編碼器能夠從資料本身中學習有用的表示,例如   $\mathrm{H}^{(1)}$ , $\mathrm{H}^{(2)}$ , $\cdots$ ,  $\mathrm{H}^{(L)}$ ,但忽略了樣本之間的關係。 在本節中,將介紹如何使用  GCN  模組來傳播  DNN  模組生成的這些表示。 一旦將 DNN 模組學習到的所有表示都整合到 GCN 中,那麼 GCN 可學習表示將能夠適應兩種不同型別的資訊,即資料本身和資料之間的關係。

  $\mathrm{GCN}$ 的 $\ell$  層,權重矩陣  $\mathbf{W}$  ,學習到的表示$\mathrm{Z}^{(\ell)}$  可以通過以下卷積運算得到:

    $\mathrm{Z}^{(\ell)}=\phi\left(\widetilde{\mathrm{D}}^{-\frac{1}{2}} \widetilde{\mathrm{A}} \widetilde{\mathrm{D}}^{-\frac{1}{2}} \mathbf{Z}^{(\ell-1)} \mathbf{W}^{(\ell-1)}\right)  \quad \quad (6)$

  其中  $\widetilde{\mathbf{A}}=\mathbf{A}+\mathbf{I}$   和   $\widetilde{\mathbf{D}}_{ii}=\sum_{j} \widetilde{\mathbf {A}}_{\mathbf{ij}}$ , $\mathbf{I}$   是每個節點中自迴圈的相鄰矩陣  $A$  的單位對角矩陣。 從方程 (6) 可以看出,表示   $Z^{(\ell-1)}$   將通過歸一化鄰接矩陣   $\widetilde{\mathbf{D}}^{-\frac{1}{2}} \widetilde{\mathbf {A}} \widetilde{\mathbf{D}}^{-\frac{1}{2}}$   以獲得新的表示   $Z^{(\ell)}$ 。

  考慮到自編碼器   $\mathbf{H}^{(\ell-1)}$   學習到的表示能夠重構資料本身幷包含不同的有價值資訊,我們將這兩種表示結合起來   $\mathbf{Z}^{( \ell-1)}$   和   $\mathbf{H}^{(\ell-1)}$   一起得到更完整和強大的表示如下:

    $\widetilde{\mathbf{Z}}^{(\ell-1)}=(1-\epsilon) \mathbf{Z}^{(\ell-1)}+\epsilon \mathbf{H}^{(\ell-1)} \quad \quad (7)$

  其中  $ϵ$  是一個平衡係數,在這裡我們統一地將其設為  $0.5$ 。這樣,我們一層地將自動編碼器和  GCN  連線起來。

  然後使用   $\widetilde{\mathbf{Z}}^{(\ell-1)}$  作為 $\mathrm{GCN}$ 中 $l $ 層的輸入來生成表示   $Z^{ (\ell)}  $:

    $\mathbf{Z}^{(\ell)}=\phi\left(\widetilde{\mathbf{D}}^{-\frac{1}{2}} \widetilde{\mathbf{A}} \widetilde{\mathbf{D}}^{-\frac{1}{2}} \widetilde{\mathbf{Z}}^{(\ell-1)} \mathbf{W}^{(\ell-1)}\right)  \quad \quad (8)$

  由於每個 DNN 層學習的表示不同,為了儘可能多地保留資訊,我們將從每個 DNN 層學習到的表示轉移到相應的 GCN 層進行資訊傳播,如圖 1 所示。delivery operator  在整個模型中工作  $L$  次。 我們將在 3.5 節中從理論上分析這種  delivery operator  的優勢。

  注意,第一層GCN的輸入是原始資料  $X$:

    $\mathrm{Z}^{(1)}=\phi\left(\widetilde{\mathbf{D}}^{-\frac{1}{2}} \widetilde{\mathrm{A}} \widetilde{\mathbf{D}}^{-\frac{1}{2}} \mathbf{X} \mathbf{W}^{(1)}\right) \quad \quad (9)$

  GCN模組的最後一層是具有 softmax 功能的多分類層:

    $Z=\operatorname{softmax}\left(\widetilde{\mathbf{D}}^{-\frac{1}{2}} \widetilde{\mathbf{A}} \widetilde{\mathbf{D}}^{-\frac{1}{2}} \mathbf{Z}^{(L)} \mathbf{W}^{(L)}\right) \quad \quad (10)$

  結果  $z_{i j} \in Z$  表示概率樣本  $i$  屬於聚類中心  $j$ ,我們可以將  $Z$  視為概率分佈。

3.4 雙自監督模組

  現已在神經網路架構中將自動編碼器與 GCN 連線起來。然而,它們並不是為  deep clustering  而設計的。自動編碼器主要用於資料表示學習,這是一種無監督的學習場景,而傳統的 GCN 是在半監督的學習場景中。它們兩者都不能直接應用於聚類問題。

  在此,我們提出了一個雙自監督模組,它將自編碼器和  GCN 模組統一在一個統一的框架內,有效地對這兩個模組進行端到端訓練以進行聚類。

  對於第  $i$  個樣本和第  $j$  個簇,我們使用 Student’s t-distribution  來度量資料表示  $h_i$  和簇中心向量  $µ_j$  之間的相似性:

    ${\large q_{i j}=\frac{\left(1+\left\|\mathbf{h}_{i}-\boldsymbol{\mu}_{j}\right\|^{2} / v\right)^{-\frac{v+1}{2}}}{\sum_{j^{\prime}}\left(1+\left\|\mathbf{h}_{i}-\boldsymbol{\mu}_{j^{\prime}}\right\|^{2} / v\right)^{-\frac{v+1}{2}}}} \quad \quad (11)$

  其中  $\mathbf{h}_{i}$  是  $\mathbf{H}^{(L)}$  的第  $i$  行, $\boldsymbol{\mu}_{j}$   初始化為  $K -means$  在預訓練自動編碼器學習的表徵上,$v$  是 Student’s t-distribution  的自由度。 $q_{i j}$  可以認為是將樣本  $i$  分配給叢集  $j$  的概率,即軟分配。 我們將 $Q=\left[q_{i j}\right]$ 視為所有樣本的分配分佈,並讓 $v=1$  用於所有實驗。

  在獲得聚類結果分佈  $Q$  後,我們的目標是通過從高置信度分配中學習來優化資料表示。具體來說,我們希望使資料表示更接近叢集中心,從而提高叢集的凝聚力。因此,我們計算一個目標分佈  $P$  如下:

    ${\large p_{i j}=\frac{q_{i j}^{2} / f_{j}}{\sum_{j^{\prime}} q_{i j^{\prime}}^{2} / f_{j^{\prime}}}}  \quad \quad (12)$

  其中 $f_{j}=\sum_{i} q_{i j}$ 是軟聚類頻率。在目標分佈  $P$  中,對  $Q$  中的每個分配進行平方和歸一化,以便分配具有更高的置信度,採用  KL 散度來比較兩類概率:

    $\mathcal{L}_{c l u}=K L(P \| Q)=\sum \limits _{i} \sum\limits _{j} p_{i j} \log \frac{p_{i j}}{q_{i j}} \quad \quad (13)$

  通過最小化  $Q$  和  $P$  分佈之間的  $KL$  散度損失。

  目標分佈  $P$  可以幫助DNN模組學習更好的聚類任務表示,即使資料表示更接近聚類中心。這被認為是一個自監督機制,因為目標分佈  $P$  是由分佈  $Q$  計算出來的,而  $P$  分佈依次監督分佈  $Q$  的更新。

  另一個自監督模組在:對於 GCN 模組的訓練,GCN 模組也會出現提供一個聚類分配分佈  $Z$  。因此,可以使用分配  $P$  來監督分配  $Z$  如下:

    $\mathcal{L}_{g c n}=K L(P \| Z)=\sum \limits_{i} \sum \limits _{j} p_{i j} \log \frac{p_{i j}}{z_{i j}}\quad \quad (14)$

  該目標函式有兩個優點:

    • 與傳統多分類損失函式相比,KL  散度以更  “gentle”  的方式更新整個模型,以防止資料表示受到嚴重干擾;
    • GCN 和  DNN  模組統一在同一優化目標中,使其結果在訓練過程中趨於一致。由於 DNN 模組和  GCN  模組的目標是近似目標分佈P,這兩個模組之間有很強的聯絡,我們稱之為雙重自監督機制。

  通過這種機制,SDCN可以直接將聚類目標和分類目標這兩個不同的目標集中在一個損失函式中。因此,我們提出的SDCN的總體損失函式是:

    $\mathcal{L}=\mathcal{L}_{\text {res }}+\alpha \mathcal{L}_{\text {clu }}+\beta \mathcal{L}_{g c n}\quad \quad (15)$

  其中,$α>0$(實驗取0.1)  是平衡原始資料的聚類優化和區域性結構儲存的超引數,$β>0$ (實驗取0.01) 是控制GCN模組對嵌入空間的干擾的係數。

  訓練直到最大時期,SDCN 將得到一個穩定的結果。然後就可為樣本設定標籤。我們選擇分佈  $Z$  中的軟分配作為最終的聚類結果。因為 GCN 學習到的表示包含了兩種不同型別的資訊。分配給樣本  $i$  的標籤是:

    $r_{i}=\underset{j}{arg\  max} \  z_{i j}\quad \quad (16)$

  其中  $z_{ij}$  是用方程 (10) 計算出來的。

  演算法流程:

      

3.5 Theory Analysis

  在本節中,我們將分析 SDCN 如何將結構資訊引入自動編碼器。在此之前,我們給出了 Graph regularization 和 Second-order graph regularization 的定義。

  Definition 1. Graph regularization [2]. Given a weighted graph $G$, the objective of graph regularization is to minimize the following equation:

    $\sum \limits _{i j} \frac{1}{2}\left\|\mathbf{h}_{i}-\mathbf{h}_{j}\right\|_{2}^{2} w_{i j}$

  其中 $w_{ij}$ 表示 node $i$ 和 node $j$  之間的權重向量,$h_i$ 是節點 $i$ 的表示。
  根據 Definition 1,Graph regularization 表明,如果 node $i$ 和  $j$ 之間有較大的權重,它們的表示應該更相似。

  Definition 2. Second-order similarity. We assume that  $\mathrm{A}$  is the adjacency matrix of graph  $\mathcal{G}$  and  $\mathrm{a}_{i}$  is the  $i -th$ column of $A$. The second-order similarity between node $i$ and node $j$ is

    $s_{i j}=\frac{\mathbf{a}_{i}^{T} \mathbf{a}_{j}}{\left\|\mathbf{a}_{i}\right\|\left\|\mathbf{a}_{j}\right\|}=\frac{\mathbf{a}_{i}^{T} \mathbf{a}_{j}}{\sqrt{d_{i}} \sqrt{d_{j}}}=\frac{C}{\sqrt{d_{i}} \sqrt{d_{j}}}$

  其中  $C$  為節點   $i$  和節點  $j$  之間的共同鄰居的個數,$d_i$ 為節點  $i$  的度。

  Definition 3. Second-order graph regularization. The objective of second-order graph regularization is to minimize the equation
    $\sum \limits_{i, j} \frac{1}{2}\left\|\mathbf{h}_{i}-\mathbf{h}_{j}\right\|_{2}^{2} s_{i j}$

  其中  $s_{ij}$  是二階相似度。

  與 Definition 1 相比,Definition 3 施加了一個高階約束,即如果兩個節點有許多共同的鄰居,它們的表示也應該更相似。

  Theorem 1. GCN provides an approximate second-order graph regularization for the DNN representations.
 

4 實驗

4.1 Datasets

      

4.2 Baselines

  Methods

    • K-means : A classical clustering method based on the raw data.
    • AE : It is a two-stage deep clustering algorithm which performs K-means on the representations learned by autoencoder.
    • DEC : It is a deep clustering method which designs a clustering objective to guide the learning of the data representations.
    • IDEC : This method adds a reconstruction loss to DEC, so as to learn better representation.
    • GAE & VGAE: It is an unsupervised graph embedding method using GCN to learn data representations.
    • DAEGC: It uses an attention network to learn the node representations and employs a clustering loss to supervise the process of graph clustering.
    • $SDCN_{Q}$ : The variant of SDCN with distribution Q.
    • $SDCN$: The proposed method.

  Metrics

    • Accuracy(ACC)
    • Normalized Mutual Information (NMI)
    • Average Rand Index (ARI)
    • macro F1-score (F1)

  Parameter Setting.

    if you want to know more ,please see the Code.

4.3對聚類結果的分析

   Table 2 shows the clustering results on six datasets.

  

  • For each metric,  SDCN and $SDCN_Q$  achieves a signicant improvement of 6% on ACC, 17% on NMI and 28% on ARI averagely.
  • SDCN generally achieves better cluster results than $SDCN_Q$ .because SDCN uses the representations containing the structural information learned by GCN, while  $SDCN_Q$ mainly uses the representations learned by the autoencoder. However, in Reuters, the result of  $SDCN_Q$ is much better than SDCN. Because in the KNN graph of Reuters, many different classes of nodes are connected together, which contains much wrong structural information.
  • Clustering results of autoencoder based methods (AE, DEC, IDEC) are generally better than those of GCN-based methods (GAE, VAGE, DAEGC) on the data with KNN graph, while GCN-based methods usually perform better on the data with graph structure.
  • Comparing the results of AE with DEC and the results of GAE with DAEGC, we can nd that the clustering loss function, dened in Eq. 13, plays an important role in improving the deep clustering performance. Because IDEC and DAEGC can be seen as the combination of the clustering loss with AE and GAE, respectively.

4.4 Analysis of Variants

  我們將我們的模型與兩種變體進行了比較,以驗證GCN在學習結構資訊方面的能力和 delivery operator 的生態能力。特別地,我們研究以下變體:

      

  • SDCN-w/o: This variant is SDCN without delivery operator, which is used to validate the effectiveness of our proposed delivery operator.
  • SDCN-MLP: This variant is SDCN replacing the GCN module with the same number of layers of multilayer perceptron (MLP), which is used to validate the advantages of GCN in learning structural information.

  From Figure 2, we have the following observations:

  • In Figure 2(a), 我們可以證明,SDCN-MLP的聚類精度在   Reuters   上優於  SDCN-w/o,並且在USPS和HHAR中也取得了類似的結果。這說明在KNN圖中,如果沒有 delivery operator ,GCN學習結構資訊的能力受到嚴重限制。其原因是多層GCN會產生嚴重的  over-smoothing  問題,導致聚類結果的減少。另一方面,SDCN比SDCN-MLP要好。這證明了  delivery operator  可以幫助GCN緩解  over-smoothing  問題,並學習更好的資料表示。
  • In Figure 2(b), 在三個包含原始圖的資料集中,SDCN-w/o的聚類精度都優於SDCN-MLP。這說明GCN具有利用結構資訊學習資料表示的強大能力。此外,SDCN在三個資料集中的效能都優於SDCN-w/o。這證明了在SDCN-w/o中仍然存在過平滑問題,但良好的圖結構仍然使SDCN-w/o取得了不錯的聚類結果。
  • 比較 Figure 2(a) 和 Figure 2(b) 中的結果。與SDCN-w/o和SDCN-MLP的資料集相比,SDCN無論使用哪種型別的資料集,我們都可以取得了最好的效能。這證明了  delivery operator  和GCN在提高叢集質量方面都發揮著重要的作用。

4.5 Analysis of Different Propagation Layers

      

  我們選擇具有原始圖的資料集來驗證聚類上傳播層數的數量,因為它們具有自然結構資訊。

  分析如下:

    • 增加SDCN的深度可以大大提高聚類效能。這是由於自動編碼器中每一層學習到的表示都是不同的,為了儘可能多地保留資訊,我們需要將從自動編碼器學習到的所有表示放到相應的GCN層中。
    • 有一個有趣的現象是,SDCN-3在所有資料集中的效能都不如SDCN-2好。

4.6 Analysis of balance coeffcient ϵ

      

  $ϵ=0.0$  表示GCN模組中的表示不包含來自自動編碼器的表示,而  $ϵ=1.0$  表示GCN只使用DNN學習到的表示  $H^{(L)}$。

  • 使用引數  $ϵ=0.5$  在四個資料集( Reuters、ACM、DBLP、Citeseer)上的聚類精度達到最佳效能。
  • 在所有資料集中,使用引數  $ϵ=0.0$的聚類精度表現最差。(over-smoothing)
  • 另一個有趣的觀察結果是,引數為  $ϵ=1.0$  的SDCN仍然具有更高的聚類精度。

4.7 K-sensitivity Analysis

      

  • From Figure 5, we can find that with  $K={1, 3, 5, 10}$, our proposed SDCN is much better than GAE, VGAE and DAEGC.
  • these four methods can achieve good performance when K = 3 or K = 5, but in the case of K = 1 and K = 10, the performance will drop signicantly.

4.8 Analysis of Training Process

  

  • In Figure 4, the red line SDCN-P, the blue line SDCN-Q and the orange line SDCN-Z represent the accuracy of the target distribution P, distribution Q and distribution Z, respectively.
  • 在大多數情況下,SDCN-P 的精度都高於 SDCN-Q,這說明目標分佈P能夠指導整個模型的更新。
  • 從一開始,三種分佈的精度結果均在不同的範圍內下降。因為由自動編碼器和GCN學習到的資訊是不同的。
  • 然後,SDCN-Q和SDCN-Z的精度快速提高到一個高水平,因為目標分佈SDCN-P緩解了兩個模組之間的衝突,使它們的結果趨於一致。

5 結論

  在本文中,我們首次嘗試將結構資訊整合到深度聚類中。我們提出了一種新的結構性深度聚類網路,由DNN模組、GCN模組和雙自監督模組組成。我們的模型能夠有效地將自  autoencoder-spectic representation  與  GCN-spectic representation 結合起來。通過理論分析,證明了交付操作員的強度。我們表明,我們提出的模型在各種開放資料集中始終優於最先進的深度聚類方法。

 

相關文章