Paper review/Graph Mining

Model Degradation Hinders Deep Graph Neural Networks (KDD'22)

언킴 2022. 9. 20. 10:50
반응형

Contents

     

    본 논문은 Graph Neural Network (GNN)의 over smoothing 문제를 해결하고자 Propagation Operation과 Transformation Operation의 순서를 바꾸어 성능을 개선시킨 연구다. Adaptive Inital Residual (AIR)을 제안하고 있으며, AIR은 추후 내용에서 자세히 다루어보자.

     

    1. Introduction

    GNN은 node-level, edge-level, graph-level task를 하기 위해 많이 사용되고 있으며, 소셜 네트워크, 화학, 생물학, 추천 시스템 등 다양한 분야에서 사용된다. GNN 모델 중 가장 대표적인 모델은 GCN(Graph Convolution Network)라고 할 수 있으며, GCN은 Propagation ($\boldsymbol{P}$)Transformation ($\boldsymbol{T}$)로 구성되어 있다. $\boldsymbol{P}$는 Laplacian smoothing의 특정 형태로 볼 수 있으며, 적용 후 근처 노드와 표현이 유사해진다. $\boldsymbol{T}$는 노드 표현(Node Represenation)에 비선형 함수를 적용하는 것으로 볼 수 있으며, 학습 데이터의 분포를 포착할 수 있게 만들어준다. 이를 풀어서 표현하면 GNN의 깊이는 Propagation depth ($D_p$), transformation depth ($D_t$)로 표현할 수 있다. $D_p$가 커질수록 hop을 고려하는 즉, 더 깊은 이웃의 정보를 활용할 수 있게 하고, $D_t$가 클 경우 비선형 함수가 많이 사용되기 때문에 모델에 더 높은 표현력을 제공한다. 

     

    GNN은 매우 성공적인 모델임에도 불구하고, Convolution Layer를 깊게 쌓을수록 Over-smoothing 문제로 인해 성능이 저하되기 때문에 Layer를 깊게 쌓아서 모델을 구축하지 않으며, 일반적으로 2개 혹은 3개 Layer를 쌓아 모델을 구축한다. (Jumping Network와 같은 모델이 존재하긴 한다.[paper]) Over-smoothing은 Layer를 쌓을수록 노드 간의 표현(Representation)이 유사해지는 문제를 의미한다. 

     

    본 논문에서는 deep GNN의 over-smoothing 문제를 검토하고, deep GNN의 성능 저하의 주요 원인을 식별하기 위해 다양한 실험을 진행하였다. 실험 결과, 수십 번의 P 연산 후에 과도한 over-smoothing 문제가 발생한다는 것을 확인하였으나, deep GNN의 성능 저하가 over-smoothing 문제보다 훨씬 일찍 관측되었다. 따라서, over-smoothing 문제는 deep GNN의 성증 저하의 주된 원인이 아닌 것을 입증하였다. 

     

    반대로, 실험 결과 모델의 성능 저하(model degradation)의 주된 원인은 $D_t$에 의해 발생하였다. 즉, $\boldsymbol{T}$ operation을 많이 쌓을수록 성능이 저하되는 것을 확인하였다. Model Degradation 문제는 이미지 분석에서 Layer를 많이 쌓을수록 발생하는 문제로 이미 16년도에 확인된 문제다. (ResNet 참고) 

     

    본 논문에서는 $D_p$와 $D_t$가 커질수록 얻을 수 있는 이점을 활용하기 위해 Adaptive Initial Residual (AIR)를 제안한다. AIR는 GraphSAGE, GCN 등 다양한 모델에 적용이 가능한 plug-and-play 모듈이다. 즉, model-agnostic한 기법이다. AIR은 adaptive skip connection을 $\boldsymbol{P}$와 $\boldsymbol{T}$ 사이에 적용하여 모델 성능 저하 문제와 과도한 over-smoothing 문제를 동시에 해결할 수 있다.

     

    실험 결과, AIR를 적용한 GNN 기법이 shallow GNN (Layer를 얕게 쌓은 기존 모델)보다 성능이 우수한 것 뿐만 아니라, $D_p$, $D_t$가 증가함에 따라 예측 정확도가 안정적인 것을 확인할 수 있다. 

     

     

    2. Preliminary

    2 절은 본 논문에서 사용되는 수식을 정의하고, $\boldsymbol{P}$(Propagation), $\boldsymbol{T}$(Transformation) 에 대해서 설명한 후 Deep GNN이 가지는 이점을 이론적으로 해석한 내용을 담고 있다. 추가적으로 $\boldsymbol{P}$와 $\boldsymbol{T}$의 배열에 따른 GNN 구조를 설명한다. 

     

    2.1 Problem Formalization

    본 논문에서는 무향 그래프(undirected graph) $\mathcal{G} = (\mathcal{V}, \mathcal{E})$를 사용한다. 이때, $|\mathcal{V}| = N$는 노드의 수를 의미하고, $|\mathcal{E}| = M$는 엣지의 수를 의미한다. $A$는 $\mathcal{G}$의 인접 행렬(Adjacency Matrix)를 의미한다. 각각의 노드는 feature vector $\in \mathbb{R}^d$를 가질 수 있으며, 이를 쌓아서 행렬 구조로 변환하면, $X \in \mathbb{R}^{N \times d}$가 된다. 만약 $X_i$로 표현하면 이는 노드 $i$의 feature vector를 의미한다. $D = \text{diag}(d_1, d_2, ..., d_n) \in \mathbb{R}^{N \times N}$은 인접 행렬의 대각 행렬 혹은 차수 행렬을 의미한다. 이때 노드 $i$의 차수는 $d_i = \sum_{j \in \mathcal{V}} A_{ij}$로 표현한다. 

     

    본 논문에서는 semi-supervised node classification task에 초점을 두고 있기 때문에, 라벨링된 노드 집합은  $\mathcal{V}_l$로 표현하고, 라벨링되지 않은 노드 집합은 $\mathcal{V}_u$로 표현한다. 

     

     

    2.2 Graph Convolution Operation

    처음 제안된 Graph Conovlution Operation은 eigendecomposition으로 시작되었으나, 점점 간소화하는 단계를 거쳐서 최근의 GCN의 모습을 띄게 되었다. GCN은 아래와 같은 구조로 이루어져 있다.

    \[ \text{Graph Convolution}(X) = \sigma(\hat{A} X  W), \quad \quad \hat{A} = \tilde{D}^{\frac{1}{2}} \tilde{A} \tilde{D}^{\frac{1}{2}} \]

    $\hat{A}$는 정규화된 인접 행렬을 의미하고, $\tilde{A} = A + I_N$은 self loop가 더해진 인접행렬을 의미한다. $I_N$은 단위 행렬을 의미한다.  $\tilde{D}$는 $\tilde{A}$의 차수 행렬이며, $W$는 학습 가능한 transformation 행렬, 그리고 $\sigma$는 비선형 활성화 함수를 의미한다. GCN은 먼저 각각의 노드에서 이웃 노드로 부터 전파(Propagation)를 받은 후 전파 받은 표현(Representation)을 비선형 활성화 함수를 통해 변환하는 형태로 구성되어 있다. 

     

    2.3 Propagation (P) and Transformation(T) Operations

    위에서 다룬 GCN은 아래와 같이 $\boldsymbol{P}$와 $\boldsymbol{T}$로 구분할 수 있다. 

    \[ \begin{equation} \begin{split} \text{Propagation}(X) & = \boldsymbol{P}(X) = \hat{A}X \\ \text{Transformation}(X) & = \boldsymbol{T}(X) = \sigma(XW) \end{split} \end{equation} \]

    위 표현으로 Graph Convolution Network를 아래와 같이 간략하게 표현할 수 있다. 

    \[ \text{Graph Convolution}(X) = \boldsymbol{T}(\boldsymbol{P}(X)) \]

     

    2.4 Theoretical Benefits of Deep GNNs

    GCN은 일반적으로 Layer를 2개 혹은 3개 정도만 쌓았을 때 가장 좋은 성능을 발휘한다. 2.4 절에서는 Layer를 깊게 쌓았을 때 즉, Deep GNN으로 구성하였을 때 Deep GNN의 이점에 대해서 $D_p$와 $D_t$ 관점으로 설명한다. 

     

    2.4.1 Benefits of enlarging D_p

     $D_p$가 커지는 것은 각각의 노드에 대한 수용장(receptive field)이 커지는 것과 동일하다.  수용장은 각 단계의 입력 값에 대해 하나의 노드가 커버할 수 있는 영역의 일부를 의미한다. Layer가 깊어질수록 노드 하나가 커버할 수 있는 수용장의 크기는 커지는 것을 의미한다. 모델이 제대로 훈련된다면, Layer가 깊어질수록 수용장의 크기가 커지고, GCN의 표현력이 증가하는 것이 선행 연구에 의해 증명되었다.

     

    2.4.2 Benefits of enlarging D_t

    $D_t$가 커질수록 성능이 좋아진다는 것은 이미 MLP와 같은 모델에 의해서 검증된 사실이다. 비선형 활성화 함수의 수를 늘리면, 모델의 표현력도 증가한다.

     

    2.5 Three Categories of GNN Architectures

    본 논문에서는 GNN 구조를 $\boldsymbol{PTPT}, \boldsymbol{PPTT}, \boldsymbol{TTPP}$로 나누어 설명한다. 

     

    2.5.1 PTPT

    $PTPT$는 일반적인 GCN의 구조를 의미한다. GraphSAGE, GAT, GraphSAINT 등 다양한 모델이 여기에 속한다. $\boldsymbol{PTPT}$ 구조는 GCN의 구조이기 때문에 $\boldsymbol{P}$와 $\boldsymbol{T}$가 묶여서 함께 사용된다. 그렇기 때문에 해당 구조는 $D_p = D_t$가 된다. $D_p$가 증가할 때 $D_t$도 함께 증가하기 때문에 모델에 훈련 매개변수가 증가하여 모델의 학습 난이도를 높여 학습이 어렵게 만든다. 

     

    2.5.2 PPTT

    $\boldsymbol{PPTT}$ 구조는 SGC(Simplifying graph Convolutional network)에서 처음 제안되었다. SGC에서는 GNN의 이점이 $\boldsymbol{T}$ 연산이 아니라 $\boldsymbol{P}$ 연산에 있다고 주장하며, $\boldsymbol{T}$ 연산을 사용하지 않고 진행하였다. 

     

    2.5.3 TTPP

    $\boldsymbol{TTPP}$ 구조는 APPNP 에서 처음 사용되었다. $\boldsymbol{TTPP}$와 동일하게 $\boldsymbol{TT...TPP...P}$ 구조로 학습될 수 있다. 이때 $\boldsymbol{P}$를 쌓는 구조는 Label propagation을 의미한다. DAGNN, AP-GCN, GPR-GNN 등의 모델이 $\boldsymbol{TTPP}$ 구조로 학습된다. $\boldsymbol{TTPP}$ 구조는 $\boldsymbol{PTPT}$ 구조에 비해서는 유연하지만, 끝에 $\boldsymbol{P}$가 쌓인 구조가 큰 그래프에 적용하는 것에 있어 방해되기 때문에 $\boldsymbol{PPTT}$ 구조보다 확장성이 떨어진다. 좋은 점은 $\boldsymbol{T}$를 쌓은 구조는 input feature의 차원을 상당히 줄일 수 있다는 것이다. 그후  $\boldsymbol{P}$ 연산에서 $\boldsymbol{TTPP}$ 구조의 효율성을 높인다.

     

    3. Empirical Analysis of the over-smoothing issue

    3절에서는 먼저 smoothness level에 대해서 정의하고, 노드와 그래프에서 smoothness를 측정하는 지표에 대해서 소개한다. over-smoothing issue가 왜 발생하는지 소개하고, 남은 section에서는 over-smoothing 문제가 deep GNN의 성능 저하의 주요 원인인지 확인하기 위한 실험을 소개한다.

     

    3.1 Smoothness Measurement

    Smoothness level은 노드쌍의 유사도를 측정한다. 구체적으로, 높은 smoothness level은 무작위로 추출한 두 노드가 유사할 확률이 더 높다는 것을 의미한다. 본 논문에서는 DAGNN에서 사용한 지표를 토대로 Cosine similarity로 변환하여 사용하였다(DAGNN에서는 Euclidean distance를 사용하였다). 

     

    Definition 3.1 (Node Smoothing Level)

    \[ NSL_i = \frac{1}{N-1} \sum_{j \in \mathcal{V}, j \neq i} \frac{ X_i \cdot X_j}{|X_i||X_j| } \]

     

    Definition 3.2 (Graph Smoothing Level)

    \[ GSL = \frac{1}{N} \sum_{i \in \mathcal{V}} NSL_i \]

    $NSL$은 Node Smoothing Level을 의미하고, $GSL$는 Graph Smoothing Level을 의미한다. $NSL_i$는 노드 $i$와 나머지 노드들 간의 유사도의 평균을 의미한다. $NSL$를 이용하여 모든 노드들의 $NSL$의 평균을 취하면 $GSL$가 나오며 이를 통해 Smoothness 를 측정할 수 있다. 

     

    3.2 Review The Over-smoothing Issue

    Over-Smoothing 문제는 GNN 모델에서 노드의 output Representation을 서로 구별할 수 없는 현상을 의미한다. 이 문제는 Layer를 깊게 쌓는 경우 항상 발생한다. 기존의 GCN 기반 $\boldsymbol{PTPT}$ 모델의 경우 $D_p$와 $D_t$가 같은 값을 가지게 된다. 본 연구에서는 $\boldsymbol{P}$와 $\boldsymbol{T}$를 따로 구성함으로써 $D_p$, $D_t$를 각각 크게해서 실험을 진행할 수 있다. 실험 결과 $D_p$를 키우는 경우 over-smoothing 문제가 발생하는 것을 확인하였다. 

     

    3.2.1 Enlarging D_p

    $\boldsymbol{P}$는 연산이 될 때마다 입력 값인 $X$에 정규화된 인접 행렬 $\hat{A}$를 곱하는 형태로 구성되어 있다. $\boldsymbol{P}$를 한 번 수행할 때마다 one-hop 떨어진 정보를 얻을 수 있다. 그러나 $\boldsymbol{P}$를 무한정 반복할 경우 모든 노드의 표현은 전부 비슷해져 노드 간 구별이 불가능해진다. 구체적으로 $\hat{A} = \tilde{D}^{r-1} \tilde{A} \tilde{D}^{-r}, \quad \hat{A}^{\infty}$가 된다. 

    \[ \hat{A}^{\infty}_{i,j} = \frac{(d_i + 1)^r (d_j + 1)^{1-r}}{2m + n} \]

    노드 $i$는 노드의 차수만큼 인접합 노드 $j$에 영향을 받는다. 이에 따라, 이를 무한정 반복하게 될 경우 각각의 노드들에 대한 정보(information)는 비슷하게 되어 구별할 수 없게 된다. 즉, over-smoothing 문제가 발생한다.

     

    3.2.2 Enlarging D_t

    $D_t$가 커지는 것은 non-linear transofmration의 수가 증가한다는 것을 의미한다. 이는 over-smoothing 문제에 직접적인 영향을 미치지 않는 것으로 확인된다. 본 논문에서는 이를 검증하기 위해 $\boldsymbol{PPTT}$ 모델인 SGC을 사용하여 실험해보았다. 실험에서는 $D_p$를 3으로 고정하고 $D_t$를 늘려가며 실험한 결과, $GSL$의 크기가 별 차이 없는 것으로 확인되었다. 

     

     

    3.3 Is Over-smoothing the Major Cause?

    기존 연구에서도 over-smoothing에 대한 주된 원인을 파악하기 위한 연구가 많이 진행되어 왔다. 기존 연구들은 over-smoothing 문제를 극복하여 더 높은 예측 성능을 유지하거나 더 깊게 쌓을 수 있음에도 불구하고, 그 효과가 어떻게 그렇게 도출되는지에 대한 설명이 부족한 문제가 존재한다. 3.3 절에서는 경험적으로 over-smoothing 이슈가 발생하는 주된 원인이 무엇인지에 대한 분석을 수행한다. 

     

    3.3.1 Relations between D_p and GSL.

    3.2절에서 $D_p$가 $\infty$로 갈수록 과도하게 smoothing 된다는 것을 설명하였다. 그러나, $D_p$가 작을때는 어떻게 되는지는 확인하지 못했다. 따라서, 적은 Layer일때도 $D_p$가 over-smoothing의 원인이 되는지 확인하기 위해 $D_p$를 적은 Layer부터 증가시키면서, 모든 $\boldsymbol{P}$ 연산 후에 중간 노드의 $GSL$을 측정하는 실험을 진행하고자 한다. 

     

    3.3.2 Large D_p Might Not Be The Major Cause.

    본 연구에서는 정확한 실험을 위해 vanilla GCN ($D_p = D_t$)와 modified GCN ($D_p = 2D_t$)를 구축해 실험을 진행하였다. 실험 결과, Figure 2(b)를 확인하면 $D_p$가 커질수록 성느의 큰 차이가 존재하지 않는 것을 확인할 수 있다. 성능 저하는 Layer가 10 미만인 경우에도 모델의 성능 저하가 발생하기 때문에 $D_p$가 주된 원인이 아닐 수 있다는 것이다. 

     

    3.3.3 Large D_t Dominates Performance Degradation.

    [Figure 2(c)]와 같이 $D_t$를 크게 한 경우 Layer가 싶어지면 성능이 감소하는 것을 확인할 수 있다. $D_p$의 경우 성능의 감소를 야기하지만 효과는 미미하다. 반면에, $D_t$의 경우 값이 커질수록 deep GNN의 성능 저하에 주된 원인이 된다. 

     

     

    4. What is Behind Large D_t?

    큰 $D_t$로 인한 한계를 학습하기 위해, 본 논문에서는 deep MLP로 먼저 정확도를 평가한 후 deep GNN으로 확장하였다. 

     

    4.1 Deep MLPs Also Perform Bad

    $D_t$를 키우면서 MLP를 평가해보았다. 이때 MLP의 $D_t$는 Layer의 수를 의미한다. 실험 결과, Layer를 쌓을수록 MLP의 성능이 계속 저하되는 것을 확인할 수 있다. 실험 결과를 바탕으로 deep MLP에서 학습할 때 성능을 증가시키는 방법들이 Deep GCN에서도 효과적으로 도움이 될 수 있다는 것을 직관적으로 이해할 수 있다. 

     

    4.2 Skip Connection Can Help

    deep MLP에서 skip connection은 ResNet에서 처음 제안된 것으로 매우 성공적인 기법 중 하나이다. 다음 Layer로 원래의 값을 전달하는 형태로 $f(x) + x$꼴이 된다. 본 논문에서는 이 방식을 채택하여 MLP+Res MLP+Dense 방법을 사용해서 추가 실험을 진행하였다. 실험 결과[Figure 4(a)], deep MLP에서 성능이 우수한 것을 확인할 수 있다. 

     

    4.3 Extension to deep GNN

    3.3 절을 통해서 deep GNN에서 성능 저하에 주된 원인이 $D_t$인 것을 확인하였다. 그러나, deep MLP에서 효과적으로 성능을 개선한 모델이 deep GNN에서도 동일한 성능을 나타낸다는 것을 보장할 수 없다. 따라서, 본 논문에서는 이전 논문에서 제안된 ResGCN, DenseGCN [paper]을 통해 실험을 진행해보았다. 실험 결과, GCN에서도 마찬가지로 ResGCN, DesnGCN의 성능이 많이 개선된 것을 확인할 수 있다. [Figure 4(b)]

     

    4.4 What do Skip Connections Help With Here?

    Skip Connection을 통해 과적합(Overfitting) 문제를 해결하여 성능이 개선되었을 수도 있다. 본 연구에서는 이를 확인하기 위해 훈련 정확도와 테스트 정확도를 확인하여 과적합으로 인한 성능 저하를 해결했는지 확인하기 위한 실험을 진행하였다. 실험 결과, Layer가 깊어질수록 테스트 정확도 뿐만 아니라 훈련 정확도도 함께 감소하는 것으로 보아, 과적합 문제는 아닌 것을 검증하였다.

     

    위 실험 결과는 모델의 Model Degradation를 의미하고, Model Degradation을 Skip Connection을 통해 해결한 것이다. Model Degradation은 모델의 성능이 증가하다가 모델이 깊어질수록 급격히 떨어지는 현상을 의미한다. 과적합 문제와의 차이는 테스트 정확도 뿐만 아니라 훈련 정확도 또한 모두 크게 떨어진다는 것이다. 최근 연구에서는 Model Degradation 문제에 대한 주된 원인이 무엇인지 확인하고자 하는 연구를 진행하고 있으며, 대부분이 Gradient view에서 문제를 조사하고 있다. 

     

    5. Adaptive Initial Residual (AIR)

    본 논문에서는 이를 해결하기 위해 model-agnostic한 기법인 AIR를 제안한다. $\boldsymbol{P}$과 $\boldsymbol{T}$사이에 AIR를 사용하는 것이다.  AIR는 $\boldsymbol{P}$에서 작업 간에 과도한 over-smoothing 문제를 완화하고, $\boldsymbol{T}$ 작업 간의 Model Degradation 문제를 완하하는 것이 목적이다. 

     

    5.1 AIR Between P and T Operations

    AIR은 $\boldsymbol{P}$와 $\boldsymbol{T}$사이에 사용하며, Skip connection과 달리 직접 연결해서 사용한다. 

     

    5.1.1 Between P Operations

    실험을 위해 노드 $i$의 input features $H_i^{(0)} = X_i$를 가져온다. 노드 $i$의 $(l-1)$ 번째 Layer의 표현은 $H^{(l-1)}_i$로 표현할 수 있다. 이때 노드 $i$의 $l-\text{th}$ 연산을 adaptive fraction을 $\alpha^{(l)}_i \in \mathbb{R}$로 설정하면 아래와 같이 표현할 수 있다.

    \[ \alpha^{(0)}_i = \text{sigmoid} \left [ \left ( H^{(l-1)}_i | H^{(0)}_i \right ) U \right ] \]

    이때 $U$는 연결(Concatenate)된 벡터를 스칼라로 변환하는 학습가능한 벡터를 의미한다.  $i\text{th}$ 행 백터의 모든 position을 계산하면 $\boldsymbol{\alpha}^{(l)}_i$로 표현할 수 있으며, adaptive weighting matrix $\boldsymbol{\alpha}^{(l)}_i 는 $\alpha^{(l)}_i$에 의해 결정된다. 

    \[ \boldsymbol{\alpha}^{(l)}_i = \left [ \alpha^{(l)}_i, \alpha^{(l)}_i, ..., \alpha^{(l)}_i \right ] \]

    만약 $l \ge 2$라면 AIR의 $\boldsymbol{P}$는 아래와 같이 표현할 수 있다.

    \[ H^{(l)} = \hat{A} \left [ (1 - \boldsymbol{\alpha}^{(l-1)}) \odot H^{(l-1)} + \boldsymbol{\alpha}^{(l-1)} \odot H^{(0)} \right ] \]

    연속된 $\boldsymbol{P}$를 계산하는 것은 입력 값에 계속해서 $\hat{A}$를 곱하는 것과 동일하며, 아래와 같이 쉽게 표현할 수 있다. 

    \[ \left[ H^0, \hat{A} H^{(0)}, \hat{A}^2 H^{(0)}, ... \right] \]

    이와 같은 작업에서 AIR는 over-smoothing을 효과적으로 감소시킬 수 있도록 돕는다. 

     

    5.1.2 Between T Operations

    $\boldsymbol{P}$와는 달리 $\boldsymbol{T}$에서의 AIR는 $\boldsymbol{\alpha}$가 아니라 고정된 계수를 사용한다. 

    \[ H^{(l)} = \sigma \left [ \left ( H^{(l-1)} + H^{(0)} \right ) W \right ] \]

    $W$는 학습가능한 변환(Transformation) 행렬을 의미하고, $sigma$는 비선형 활성화 함수를 의미한다. 이때 입력 차원과 latent representation 간의 차원이 다를 수 있기 때문에 Linear projection을 사용하여 차원을 맞추어준다. 

     

     

    5.2 Applications to Existing GNNs

    5.2.1 PPTT and TTPP

    $\boldsymbol{PPTT}$와 $\boldsymbol{TTPP}$ 구조는 두 가지 부분으로 분리할 수 있다.  하나의 부분은 $\boldsymbol{P}$ 만으로 구성되어 있고, 나머지 부분은 $\boldsymbol{T}$로 구성되어 있다. 따라서, 각각의 부분에서 AIR를 적용하여 사용할 수 있다. 

     

     

     

    5.2.2 PTPT

    $\boldsymbol{PTPT}$의 경우 $\boldsymbol{PPTT}$나 $\boldsymbol{TTPP}$ 구조처럼 분할하여 사용할 수 없다. 따라서, 본 연구에서는 intial residual connection을 Graph Convolution 연산 간에 직접적으로 연결하여 사용한다. 

    \[ H^{(l)} = \sigma \left [ \hat{A} \left ( (1- \boldsymbol{\alpha^{(l-1)}} ) \odot H^{(l-1)} + \boldsymbol{\alpha^{(l-1)}} \odot H^{(0)} \right ) W \right ] \]

     

     

     

    6. AIR Evaluation

    본 논문에서는 $\boldsymbol{PPTT}$는 SGC, $\boldsymbol{TTPP}$는 APPNP, $\boldsymbol{PTPT}$는 GCN로 사용하였다. 그리고, 본 논문에서 제안한 AIR 을 결합한 모델은 SGC+AIR, APPNP + AIR, GCN+AIR로 표현하였다. 

     

    [Figure 7(a)]를 살펴보면 AIR를 결합한 모델의 성능이 매우 우수한 것을 확인할 수 있다. [Figure 7(b)]에서도 역시 마찬가지고 [Figure 7(c)]에서는 다른 JK-Net, ResGCN 등과 같이 over-smoothing 문제를 해결하기 위해 제안된 모델과 비교한 결과를 나타내고 있으며, 비교 결과 Layer의 수가 적을때는 성능이 낮으나, Layer가 많아질수록 우수한 성능을 발휘하는 것을 확인할 수 있다. 

     

    실제 데이터를 통해 SGC, APPNP, GCN 모델과 본 논문에서 제안하는 AIR 을 결합한 모델 을 비교할 때 기존 모델에 비해 11% 최대 26% 정도의 시간이 더 소모되었다. 반면에 성능을 큰 차이로 개선된 것을 확인할 수 있다. 

     

    7. Conclusion

    본 연구에서는 deep GCN의 성능 저하의 원인을 파악하였다. $D_t$의 경우 Model degradation 문제를 발생시키고, $D_p$의 경우 over-smoothing 문제를 발생시켜 모델의 성능을 저하시키고 있다. 그러나 $D_t$와 $D_p$가 비슷한 속도로 증가할 경우 Model Degradation 문제가 over-smoothing 문제보다 더 일찍 발생한다는 것을 확인하였다.  위 실험 결과를 바탕으로 문제점을 극복하기 위한 AIR(Adaptive Initial Residual)을 제안하였다. 이를 통해 최근 GNN 모델의 성능을 개선시킨 것을 확인하였다.