GRAND

Chamberlain & Rowbottom et al. / GRAND_Graph Neural Diffusion / ICML-2021

논문 링크

Official Github

본 포스팅이 잘 안 보이는 경우, 블로그에서 확인해주세요.

1. Problem Definition

본 논문은 그래프 신경망(Graph Neural Network; GNN)의 메세지 전달 방식을 편미분 방정식(partial differential equation; PDE) 형태의 확산 방정식(diffusion equation)으로 해석해, 그래프 학습에서 발생하는 여러 가지 문제(e.g. 얕은 구조, oversmoothing, bottleneck)를 다루는 새로운 방식의 GNN을 제안합니다.

본 논문에 대한 본격적인 설명에 들어가기 앞서, 본 논문과 관련된 개념 및 문제들을 간단히 정리해보도록 하겠습니다.

1-1. 편미분 방정식(PDEs)

위키피디아1에서는 편미분 방정식을 다음과 같이 설명하고 있습니다.

수학에서, 편미분 방정식(PDE)은 여러 개의 독립 변수로 구성된 함수와 그 함수의 편미분으로 연관된 방정식이다. 각각의 변수들의 상관관계를 고려하지 않고 변화량을 보고 싶을 때 이용할 수 있으며, 상미분방정식에 비해 응용범위가 훨씬 크다. 소리나 열의 전파 과정, 전자기학, 유체역학, 양자역학 등 수많은 역학계에 관련된 예가 많다.

1-2. 확산방정식

확산(diffusion)이란 밀도가 높은 지역에서 밀도가 낮은 지역으로 물질이 이동하는 것을 의미합니다. 예를 들어, 차가운 표현에 위치한 뜨거운 물체가 있을 때, 열은 물체에서 표면으로 두 온도가 같아질 때까지 확산됩니다.

h=gxh = -g \nabla x

그림 1 - Inhomogeneous Diffusivity

x(u,t)t=div[g(u,x(u,t),t)x(u,t)]\frac{\partial x(u, t)}{\partial t} = \text{div}[g(u, x(u,t), t) \nabla x(u,t)]

initial condition: x(u,t)=x0(t)\text{initial condition: }x(u,t) = x_{0}(t)

div: divergence3, 즉 벡터장에서 정의되는 미분연산자

따라서, 균일한 diffusivity를 갖는다고 가정할 때, 열확산 방정식을 다음과 같이 나타낼 수 있습니다.

x(u,t)t=div(cx)=cΔx\frac{\partial x(u, t)}{\partial t} = \text{div}(c \nabla x) = c \Delta x

이 식의 의미를 해석4해보면,

  • 2차 미분계수(즉, 변곡점)가 클수록 (볼록할수록) 온도의 변화는 더 빨리 일어난다.

    • 주변과 온도 차가 클수록 온도가 더 빨리 변화한다. 온도 변화의 속도를 의미

  • 위로 볼록(2차 미분계수 < 0)하면 온도가 떨어지고, 아래로 볼록(2차 미분계수 > 0) 하면 온도가 올라간다.

    • 온도 변화의 부호를 의미

즉, 열 확산 방정식은 주변 온도가 높을 수록 온도는 빨리 올라가고, 주변 온도가 낮을 수록 온도가 빨리 내려가는 것을 수학적으로 표현한 것입니다.

이 후 Motivation 각 미분연산자(e.g. gradient, divergence, Laplacian operator)가 그래프에서 어떻게 정의될 수 있는지와 더불어 GRAND는 Diffusivity를 어떻게 활용하는지를 살펴보겠습니다.

2. Motivation

2-1. 그래프 학습에서 발생하는 여러 가지 문제

  • 얕은 구조 (Depth)와 Oversmoothing5: Oversmoothing은 GNN의 layer의 수(Depth)가 증가할수록 노드의 embedding이 점점 유사해지는 현상을 말합니다. 이로 인해, 대부분의 GNN은 깊은 신경망을 쌓지 못하고, 얕은 구조를 가지게 됩니다.

그림 2 - GCN 1,2,3,4,5 layer를 통해 얻은 Zachary’s karate club network data의 노드 Embedding

  • Bottleneck과 Over-squashing6: Bottleneck은 GNN의 layer가 증가할수록 기하급수적으로 늘어나는 정보를 고정된 크기의 벡터로 압축(squashing)시키는 것을 의미하며, 이로 인해 먼 거리의 노드와의 메세지 전달을 용이하지 못하게 만드는 현상을 의미합니다.

그림 3 - GNN에서의 Bottleneck & Over-squashing

2-2. 그래프에서의 확산 방정식

본 논문은 그래프의 메세지 전달 방식을 열 확산 방정식으로 모델링해 PDE를 풀어냄으로써, 연속적인 layer를 구성해 깊은 모델 을 쌓을 수 있는 Neural ODE/PDE의 이점을 그래프로 확장시키려는 시도를 하고 있습니다. 이를 통해 앞서 서술한 그래프 학습의 고질적인 문제들을 해결하는 새로운 GNN(GRAND)을 제안합니다.

이를 위해, 열 확산 방정식의 미분연산자들을 그래프에서 새롭게 정의할 필요가 있습니다. 본 논문에서의 수식 표기법은 편의를 위해 vector-field를 scalar-field로 가정해 전개해 나가지만, 이것이 오히려 혼동을 야기하므로 이러한 가정을 배제하고 서술하고자 합니다(이러한 표기법은 ICLR-2022에서 발표된 GRAND++7를 참고하였습니다).

2-2-1. Notation

    • 노드 특징 행렬의 내적은 일반적인 행렬의 내적과 같습니다. X,Y=Tr(XY)=i=1nx(i)y(j)\langle \mathbf{X}, \mathbf{Y} \rangle =Tr(\mathbf{X}^{\intercal} \mathbf{Y})=\sum_{i=1}^{n}{\mathbf{x}^{(i)} \mathbf{y}^{(j)}}

    그림 4 - Matrix Inner Product

  • 간선 특징(feature) 텐서:

    • X=[X(1,1)X(1,n)X(n,1)X(n,n)]Rn×n×k\mathfrak{X} = \begin{bmatrix} \mathcal{X}^{(1,1)} & \cdots & \mathcal{X}^{(1,n)}\\ \vdots & \ddots & \vdots\\ \mathcal{X}^{(n,1)} & \cdots & \mathcal{X}^{(n,n)} \end{bmatrix} \in \mathbb{R}^{n \times n \times k}

2-2-2. 미분연산자 (Differential Operator)8

그림 5 - Differential Operators on Graph

    • (div(X))i=j:(i,j)EXij=j=1nwijXij(\text{div}(\mathfrak{X}))_{i}=\sum_{j:(i,j) \in \mathcal{E}}{\mathcal{X}_{ij}}=\sum_{j=1}^{n}{w_{ij}} \mathcal{X}_{ij}

2-2-3. 그래프에서의 열확산 방정식[7]

먼저, 우리는 아래의 열확산 방정식을 얻을 수 있습니다.

X(t)t=div[G(X(t),t)X(t)]\frac{\partial \mathbf{X}(t)}{\partial t}=\text{div}[\mathbf{G}(\mathbf{X}(t), t) \odot \nabla \mathbf{X}(t)]

X(t)=eAˉtX(0)\mathbf{X}(t)=e^{\mathbf{\bar{A}}t}\mathbf{X}(0)

이를 테일러 급수로 근사한 것이 heat kernel PageRank라고 볼 수 있습니다.9, 10

저자들은 발표한 Youtube 영상에 따르면, GRAND와 PageRank의 유사성 및 차이점을 아래와 같이 언급했습니다.11

This idea that you can also have diffusion in a completely discrete domain and in that case the most common example is probably Google's PageRank and the formulation that we're most familiar with from the gnn community is multiplying laplacian by some sort of feature matrix.

이러한 기본적인 형태를 확장해 본 논문에서는 diffusivity를 attention matrix로 가정하여, 아래와 같은 수식을 도출합니다.

그림 6 - Diffusion Equation on Graph

2-2-4. 그래프 열확산 방정식의 풀이

xi(k+1)xi(k)τ=j:(i,j)Ea(xi(k),xj(k))(xj(k)xi(k))\frac{\mathbf{x}_{i}^{(k+1)} - \mathbf{x}_{i}^{(k)}}{\tau}=\displaystyle\sum_{j:(i,j) \in \mathcal{E}} {a(\mathbf{x}_{i}^{(k)}, \mathbf{x}_{j}^{(k)})(\mathbf{x}_{j}^{\textcolor{red}{(k)}} - \mathbf{x}_{i}^{(k)})}

X(k+1)=((1τ)I+τA(X(k)))X(k)=Q(k)X(k)\Leftrightarrow \mathbf{X}^{(k+1)} = ((1-\tau)\mathbf{I} + \tau \mathbf{A}(\mathbf{X}^{(k)})) \mathbf{X}^{(k)}=\mathbf{Q}^{(k)} \mathbf{X}^{(k)}

Semi-Implicit scheme. Backward Euler discretization

xi(k+1)xi(k)τ=j:(i,j)Ea(xi(k),xj(k))(xj(k+1)xi(k))\frac{\mathbf{x}_{i}^{(k+1)} - \mathbf{x}_{i}^{(k)}}{\tau}=\sum_{j:(i,j) \in \mathcal{E}} {a(\mathbf{x}_{i}^{(k)}, \mathbf{x}_{j}^{(k)})(\mathbf{x}_{j}^{\textcolor{red}{(k+1)}} - \mathbf{x}_{i}^{(k)})}

((1τ)I+τA(X(k)))X(k+1)=X(k)\Leftrightarrow ((1-\tau)\mathbf{I} + \tau \mathbf{A}(\mathbf{X}^{(k)})) \mathbf{X}^{(k+1)} = \mathbf{X}^{(k)}

B(k)X(k+1)=X(k)\Leftrightarrow \mathbf{B}^{(k)} \mathbf{X}^{(k+1)}=\mathbf{X}^{(k)}

2-3. Discriminative Idea

본 논문은 PDE 기반의 열확산 방정식을 GNN에서의 메세지 전달 방식으로 확장시켜, 내적 및 미분연산자를 정의해 continuous한 layer를 구성할 수 있는 Neural ODE12의 이점을 활용해 그래프 학습에서 발생할 수 있는 여러 가지 문제를 해결하였습니다.

3. Method

본격적으로 논문에서 제안하는 Graph Neural Diffusion(GRAND) 방법론에 대해 논의해보겠습니다. 기본적으로 앞서 언급했던 표기법 및 그래프 확산 방정식을 따라 GRAND를 다음과 같은 문제로 정의합니다.

이 diffusivity는 attention 함수로 모델링되고, 실험적으로, GAT의 attention보다 일반적인 attention(scaled dot product attention13)이 더 좋은 성능을 보여, 이를 사용했습니다.

a(Xi,Xj)=softmax((WKXi)WQXjdk)a(\mathbf{X}_{i}, \mathbf{X}_{j})=\text{softmax} \left( \frac{(\mathbf{W}_{K} \mathbf{X}_{i})^{\intercal} \mathbf{W}_{Q} \mathbf{X}_{j}}{d_k} \right)

Attention weight 행렬을 정의하는 방식과 이를 활용하는 방식에 따라 3가지 변형 모델을 만들 수 있습니다.

  • grand-nl: 식 (1)과 동일

    • E={(i,j):(i,j)E and aij<ρ}, where threshold ρ\mathcal{E^{'}} = \{ (i,j) : (i, j) \in \mathcal{E} \text{ and } a_{ij} \lt \rho \} \text{, where threshold } \rho

    • 위의 조건에 따라 self-loop를 포함 가능

GRAND는 모든 layer/iteration에 걸쳐 parameter를 공유하므로 기존의 GNN 모델보다 data-efficient 하다고 볼 수 있습니다.

4. Experiment

본 논문은 아래와 같은 연구 문제에 답하기 위해 여러 가지 실험을 진행하였습니다.

  1. Are GNNs derived from the diffusion PDE competitive with existing popular methods? (확산 PDE를 통해 도출된 GNN은 다른 경쟁 모델에 비해 좋은 성능을 내는가?)

  2. Can we address the problem of building deep graph neural networks? (깊은 그래프 신경망 모델을 수립하는데 있어 발생하는 문제들을 해결하고 있는가?)

  3. Under which conditions can implicit methods yield more efficient GNNs than explicit methods? (Implicit 방법은 어떤 상황에서 explicit 방법에 비해 좋은 성능을 내는가?)

4-1. Node Classification

표 1 - Data Summary

노드 분류에 대한 실험을 위해 위의 표와 같이 7개의 데이터셋에 대해 실험했고, 베이스라인 모델로는 아래와 같이 7개 모델을 선정했습니다. 데이터셋 및 베이스라인 모델에 대한 자세한 내용은 본 논문을 참고 부탁 드립니다.

  • 대표적인 GNN: GCN, GAT, Mixture Model Networks, GraphSage

  • ODE-based GNN: Continuous Graph Neural Networks(CGNN), Graph Neural Differential Equations(GDE), Ordinary Differential Equations on Graph (GODE)

  • Linear Diffusion PDE: LanczosNet의 2개의 변형

그림 7 - Node Classification Results (Planetoid/Random split)

위의 실험 결과를 통해 볼 수 있듯이, GRAND 모델들이 다른 모델들에 비해 한결같이 좋은 성능을 보였습니다. 큰 그래프인 ogb-arxiv 데이터셋에서는 GAT가 가장 좋은 성능을 보였으나, 이는 GRAND보다 20배 많은 parameter를 사용하기 때문입니다.

4-2. Depth

그림 8 - Depth

4-3. Choice of discretisation scheme

그림 9 - Different Solver Effects

이번 실험은 discretisation scheme의 안정성을 보기 위해 Cora 데이터셋을 사용했습니다. PDE를 푸는데 있어 step size와 계산 시간은 trade-off관계를 갖습니다. Scheme은 아래와 같은 방법론을 사용하였고, 이에 대한 설명은 본 논문의 범위를 넘어서므로 생략합니다.

  • Explicit scheme: Adams-Bashford method

  • Implicit scheme: Adams-Moulton method

  • Adaptive scheme: Runge-Kutta 4(5)

4-4. Diffusion on MNIST Image Data Experiments

그림 10 - MNIST Image Data Experiments

GRAND의 학습된 diffusion의 특성을 살펴보기 위해 MNIST 픽셀 데이터의 superpixel representation을 구성하는 실험을 진행했습니다. superpixel을 구성한다는 것은 인접한 패치들을 간선으로 연결하고, 이를 숫자 또는 배경으로 이진 분류하는 것을 의미합니다. 이 때 50%의 training mask를 사용합니다. Attention weight는 간선의 색과 굵기로 표현됩니다. 그림 10을 통해 볼 수 있듯이, grand-nl 모델이 Laplacian diffusion 모델에 비해 더 좋은 결과를 보여줍니다.

5. Conclusion

본 논문은 열확산 방정식을 그래프에서의 메세지 전달 방식으로 확장하여, 연속적인 layer를 구성하는 새로운 GNN을 제안했습니다. 이를 통해 다음과 같은 contribution과 limitation을 가집니다.

Contribution

  • 그래프 학습에서 발생했던 여러 가지 문제들(e.g. oversmoothing, bottlenecks, etc.)을 다룰 수 있는 새로운 관점(Neural Diffusion)을 제시

  • 새로운 architecture

    • 현존하는 많은 GNN을 discrete Graph 확산 방정식으로 표현 가능

    • 다양한 효율적인 PDE solver를 적용할 수 있는 자유도 (multistep, adaptive, implicit, multigrid, etc.)

    • implicit schemes = multi-hop filters

  • 탄탄한 이론적 토대를 가진 물리적 현상 (열 확산)을 바탕으로 새로운 방법론의 이론적 확실성을 제공 (e.g. stability, convergence, etc.)

  • GNN 분야에 잘 알려지지 않은 다른 분야와 깊은 연계를 보임(e.g. differential geometry and algebraic topology)

Limitation

  • 은닉층의 embedding vector의 크기가 모든 layer에 걸처 동일 (GNN에서 보통의 상황)

  • 모든 layer가 같은 parameter set을 가짐 (다만, 이를 통해 10-20배 적은 parameter를 학습)

추가적으로 본 블로그 포스팅을 통해, 본 논문에서 생략된 열확산 방정식이 그래프로 유도되는 과정Graph Diffusion Convolution(GDC)9과의 연관성을 살펴보았습니다.


Author Information

  • 오윤학(Yunhak Oh)

    • M.S. Student in DSAIL at KAIST

    • Research Topic: Artificial Intelligence, Data Mining, Graph Neural Networks

6. Reference & Additional materials

1: 위키피디아 편미분 방정식

2: https://www.sciencedirect.com/topics/mathematics/diffusion

3: 위키피디아 발산

4: 공돌이의 수학정리노트: 열방정식, 파동방정식의 의미

5: Li, Qimai, Zhichao Han, and Xiao-Ming Wu. "Deeper insights into graph convolutional networks for semi-supervised learning." Thirty-Second AAAI conference on artificial intelligence. 2018.

6: Alon, Uri, and Eran Yahav. "On the bottleneck of graph neural networks and its practical implications." arXiv preprint arXiv:2006.05205 (2020).

7: Matthew Thorpe and Tan Minh Nguyen and Hedi Xia and Thomas Strohmer and Andrea Bertozzi and Stanley Osher and Bao Wang. "GRAND++: Graph Neural Diffusion with A Source Term." International Conference on Learning Representations. 2020.

8: Michael Bronstein | Neural diffusion PDEs, differential geometry, and graph neural networks [Youtube]

9: Klicpera, Johannes, Stefan Weißenberger, and Stephan Günnemann. "Diffusion improves graph learning." arXiv preprint arXiv:1911.05485 (2019).

10: Chung, Fan. "The heat kernel as the pagerank of a graph." Proceedings of the National Academy of Sciences 104.50 (2007): 19735-19740.

11: Graph Neural Networks and Diffusion PDEs | Benjamin Chamberlain & James Rowbottom [Youtube]

12: Chen, Ricky TQ, et al. "Neural ordinary differential equations." Advances in neural information processing systems 31 (2018).

13: Vaswani, Ashish, et al. "Attention is all you need." Advances in neural information processing systems 30 (2017).

Last updated