그래프 신경망

편집 역사 토론
시뮬레이션 수치해석 통계 마지막 수정: 2026-08-04 04:24:05

1. 개요[편집]

그래프 신경망(graph neural network, GNN)은 노드와 간선으로 이루어진 그래프를 입력으로 받아, 각 노드가 이웃에게서 정보를 모아 자기 표현을 갱신하는 연산을 여러 층 쌓은 신경망이다. 합성곱 신경망이 규칙적인 픽셀 격자 위에서 국소 스텐실을 미끄러뜨린다면, GNN은 연결 관계가 제각각인 비정형 격자 위에서 같은 일을 한다. 이웃의 수도, 순서도, 위상도 노드마다 다른 상황에서 가중치를 공유하려면 합성곱 대신 다른 장치가 필요한데, 그 장치가 메시지 전달이다.

CAE 하는 사람 입장에서 이 문장은 다르게 읽힌다. 비정형 메시가 곧 그래프다. 절점이 노드, 요소 간선이 간선이고, 유한요소·유한체적 이산화가 하는 일 자체가 “이웃 셀의 값을 모아 자기 값을 갱신하는 것”이다. GNN이 유한요소법이나 유한체적법의 스텐실을 학습으로 대체하는 물건처럼 보이는 것은 착시가 아니라 구조적 유사성이다.1

2. 메시지 전달 프레임워크와 순열 등변성[편집]

길머 등(2017)이 흩어져 있던 구조들을 메시지 전달 신경망(MPNN)이라는 한 틀로 정리했다. 노드 특징 hi(l)\mathbf{h}_i^{(l)}, 간선 특징 eij\mathbf{e}_{ij} 에 대해 한 층은 두 단계다.

mi(l+1)=jN(i)Ml(hi(l),hj(l),eij),hi(l+1)=Ul(hi(l),mi(l+1))\mathbf{m}_i^{(l+1)} = \bigoplus_{j \in N(i)} M_l\big(\mathbf{h}_i^{(l)}, \mathbf{h}_j^{(l)}, \mathbf{e}_{ij}\big), \qquad \mathbf{h}_i^{(l+1)} = U_l\big(\mathbf{h}_i^{(l)}, \mathbf{m}_i^{(l+1)}\big)

MlM_l 이 메시지 함수, UlU_l 이 갱신 함수, \bigoplus집계(aggregation)다. 그래프 전체에 대한 예측이 필요하면 마지막에 모든 노드를 읽어내는 리드아웃을 붙인다. 믿음 전파의 합-곱 규칙과 나란히 놓아 보면 형태가 거의 같은데, 실제로 GNN은 메시지 함수와 집계를 손으로 유도하는 대신 학습으로 정하는 물건이라 계보상 그쪽의 후손이다.

여기서 가장 중요한 설계 제약이 순열 등변성(permutation equivariance)이다. 노드에 번호를 다시 매겨도 결과가 같은 방식으로 따라 움직여야 한다.

f(PX,PAP)=Pf(X,A)f(\mathbf{P}\mathbf{X},\, \mathbf{P}\mathbf{A}\mathbf{P}^\top) = \mathbf{P} f(\mathbf{X}, \mathbf{A})

이걸 만족시키려면 \bigoplus순서에 무관한 다중집합 함수여야 한다. 합·평균·최대가 쓰이는 이유가 그것이고, 이웃을 배열에 담아 MLP에 넣는 순간 등변성이 깨진다. CNN의 병진 등변성이 영상의 대칭성을 인코딩했듯, 순열 등변성은 “메시 절점의 번호는 물리와 무관하다”는 사실을 신경망 구조에 못 박은 귀납 편향이다. 격자 번호를 바꿨다고 항력계수가 달라지는 대리모델은 애초에 틀린 것이므로, 이건 편의가 아니라 요구사항이다.

3. 대표 구조 — GCN, GraphSAGE, GAT[편집]

  • GCN(Kipf & Welling, 2017). 정규화 라플라시안의 스펙트럴 합성곱을 체비쇼프 1차까지 자르고 재정규화 트릭을 적용해 얻은 가장 단순한 형태다.

    H(l+1)=σ(D~1/2A~D~1/2H(l)W(l)),A~=A+I\mathbf{H}^{(l+1)} = \sigma\big(\tilde{\mathbf{D}}^{-1/2}\tilde{\mathbf{A}}\tilde{\mathbf{D}}^{-1/2}\mathbf{H}^{(l)}\mathbf{W}^{(l)}\big), \qquad \tilde{\mathbf{A}} = \mathbf{A} + \mathbf{I}

    자기 루프를 더하고 차수로 대칭 정규화한 인접행렬을 곱하는 것이 전부라, 결국 이웃 평균 + 선형변환 + 비선형이다. 계산은 희소행렬 곱 한 번.

  • GraphSAGE(Hamilton 등, 2017). 자기 표현과 이웃 집계를 연결(concat)한 뒤 변환하고, 이웃을 전부 보는 대신 고정 개수만 표본추출한다. 층당 이웃 수를 상수로 묶어 큰 그래프에서도 미니배치 학습이 되고, 학습 때 못 본 노드에도 적용되는 귀납적(inductive) 모델이 된다.

  • GAT(Veličković 등, 2018). 이웃을 균일하게 평균 내지 않고 어텐션 계수로 가중한다.

    αij=softmaxj(LeakyReLU(a[WhiWhj]))\alpha_{ij} = \operatorname{softmax}_j\Big(\operatorname{LeakyReLU}\big(\mathbf{a}^\top [\mathbf{W}\mathbf{h}_i \,\Vert\, \mathbf{W}\mathbf{h}_j]\big)\Big)

    다중 헤드를 병렬로 쓰는 것까지 트랜스포머와 같다. 이웃의 중요도가 균일하지 않은 경우 — 예컨대 경계 절점과 내부 절점이 섞인 메시 — 에 유리하다.

집계 함수 선택은 취향 문제가 아니다. 평균은 이웃의 비율을, 최대는 존재 여부를, 합은 개수를 보존한다. 뒤에서 볼 표현력 논의에서 합이 이기는 이유가 여기 있다.

4. 세 가지 병목 — 과평활, 과압축, 1-WL[편집]

GNN을 깊게 쌓으면 좋아질 것 같지만 실제로는 2~3층에서 성능이 꺾인다. 원인이 셋인데, 셋 다 알고리즘 버그가 아니라 구조적 한계다.

과평활(over-smoothing). 정규화 인접행렬을 반복해 곱하는 것은 그래프 위의 라플라스 평활을 반복하는 것과 같다. 연결된 비이분 그래프에서 이 전파 연산자의 최대 고유값은 1이고 대응 고유벡터는 차수에 비례하는 상수 모드라, 층을 쌓을수록 모든 노드 표현이 같은 벡터로 지수적으로 수렴한다(디리클레 에너지가 λ22l|\lambda_2|^{2l} 로 감소). 노드를 구분해야 하는데 전부 같아져 버리니 당연히 망한다. 처방은 잔차·점프 연결(GCNII, JK-Net), 표현 노름을 유지하는 PairNorm, 전파와 변환을 분리해 개인화 페이지랭크로 멀리 보내는 APPNP 계열이다.

과압축(over-squashing). LL 층이면 LL-홉 이웃의 정보가 전부 고정 차원 벡터 하나로 압축되는데, LL-홉 이웃 수는 지수적으로 늘어난다. 특히 그래프에 병목(체거 상수가 작은 절단면, 유효저항이 큰 노드쌍)이 있으면 그 좁은 통로로 정보가 다 지나가야 해서 신호가 뭉개진다. 감도 hi(L)/xj\partial \mathbf{h}_i^{(L)}/\partial \mathbf{x}_j 의 상계가 인접행렬 거듭제곱 성분으로 눌린다는 형태로 정량화됐고, 리치 곡률이 음으로 큰 간선이 범인으로 지목됐다. 처방은 그래프 재배선(곡률 기반 rewiring), 전역 가상 노드 추가, 아예 완전그래프 어텐션으로 가는 그래프 트랜스포머다. 길쭉한 관로 메시나 얇은 셸 메시처럼 지름이 큰 CAE 메시에서 이 문제가 특히 아프다.

1-WL 표현력 한계. 쉬 등(2019)의 결과가 결정적이다. 메시지 전달 GNN은 두 그래프를 구분하는 능력에서 1차원 바이스파일러-레만(1-WL) 색 정련 검사를 넘을 수 없다. 그리고 합 집계 + MLP 갱신(GIN)이 그 상한을 달성한다. 평균과 최대 집계는 상한에 못 미치는데, 예를 들어 평균은 같은 이웃 구성이 개수만 다른 경우를 구분하지 못한다. 이 한계의 실질적 의미는 정규 그래프 구분 불가부분구조 세기 불가다. 삼각형 개수, 육각 고리 존재 여부 같은 것을 원리적으로 못 센다. 분자 성질 예측에서 고리 구조가 중요하다는 걸 생각하면 심각한 제약이고, 그래서 랜덤·위치 인코딩 추가, 거리 인코딩, 부분그래프 GNN, kk-WL 대응 고차 GNN 같은 우회로가 나왔다. 고차 GNN은 표현력이 올라가는 대신 비용이 O(nk)O(n^k) 로 뛰므로 실전 규모에서는 대개 못 쓴다.2

5. 시뮬레이션에서의 용도 — 메시와 입자[편집]

여기가 심위키가 GNN을 다루는 진짜 이유다.

  • 메시 기반 물리 대리모델(MeshGraphNets). 파프 등(2021)이 제안한 인코드-프로세스-디코드 구조로, 유한요소 메시를 그대로 그래프로 읽는다. 특징적인 설계는 간선을 두 종류로 나눈 것이다. 메시 연결을 나타내는 메시 간선과, 물리적으로 가까워졌지만 메시상으로는 먼 절점을 잇는 월드 간선. 후자가 접촉과 자기충돌을 처리한다. 프로세서로 10~15회 메시지 전달을 돌린 뒤 절점별 시간도함수를 예측하고 적분한다. 원기둥 주위 비압축성 유동, 익형 주위 압축성 유동, 천 시뮬레이션, 판 변형까지 하나의 구조로 학습됐고, 학습된 크기장(sizing field)으로 적응 리메싱까지 흉내 낸다. 적응 격자 세분화를 학습으로 하겠다는 발상이다.
  • 입자 상호작용 학습(GNS). 산체스-곤살레스 등(2020)은 입자계에 반경 컷오프로 이웃 그래프를 만들고, 메시지 전달로 입자별 가속도를 예측한 뒤 반음해 오일러로 적분했다. 물·모래·점성 물질을 같은 모델로 다뤘고, 학습 때 본 것보다 입자 수가 훨씬 많은 장면으로도 일반화됐다. 반경 그래프 + 상호작용 합산이라는 구조 자체가 SPH의 커널 합이나 이산요소법의 접촉력 합과 정확히 같은 꼴이라, 커널 함수를 학습으로 바꾼 것으로 읽으면 이해가 빠르다.
  • 분자 성질 예측과 학습 퍼텐셜. 원자를 노드, 결합이나 반경 이웃을 간선으로 두는 것은 GNN의 원조 용법이다. 여기서는 순열 등변성만으로 부족하고 회전·병진 등변성까지 요구된다. 거리만 쓰는 SchNet(연속 필터 합성곱), 결합각까지 쓰는 DimeNet, 구면조화 텐서 특징으로 E(3)-등변을 구조에 박은 NequIP·MACE 계열이 그 답이다. 이들 기계학습 퍼텐셜은 밀도범함수이론 수준 정확도를 고전 힘장 수준 비용으로 내겠다는 목표를 상당 부분 달성했고, 분자동역학 실무에 이미 들어와 있다.
  • 기상. GraphCast는 정이십면체를 재귀 분할한 다중해상도 메시 위에서 메시지 전달을 돌려 중기 예보를 낸다. 수치기상예보 문서의 논의와 이어진다.

6. CAE 대리 모델로서의 현실[편집]

장점은 명확하다. 비정형 메시를 좌표 변환 없이 그대로 먹는다. FFT 기반 연산자 학습(FNO)이 균일 직교 격자와 사실상 주기성을 요구하는 데 비해, GNN은 임의 위상의 메시에 바로 붙는다. 실제로 그래프 커널 연산자(GNO)는 연산자 학습 계열 중 메시 자유도가 가장 큰 갈래다. 형상이 케이스마다 바뀌는 산업 CAE에서 이건 결정적 차이다.

한계도 그만큼 분명하다.

  • 수용장 대 깊이. 한 층이 1홉이므로 압력파처럼 전역적으로 전파되는 정보를 잡으려면 층을 많이 쌓아야 하는데, 그 순간 과평활과 과압축이 기다린다. 다중해상도 메시나 가상 전역 노드로 우회하는 것이 사실상 표준이 됐고, 이건 다중격자법의 거친 격자 보정과 같은 발상이다.
  • 롤아웃 오차 누적. 자기회귀로 시간을 전진시키면 한 스텝 오차가 다음 입력을 훈련 분포 밖으로 밀어낸다. 학습 중 입력에 잡음을 주입하는 것이 GNS·MeshGraphNets 모두가 쓴 필수 안정화 장치다. 완치가 아니라 지연책이라는 점은 연산자 학습 문서의 지적과 같다.
  • 보존량 미보장. 학습된 메시지가 질량·운동량·에너지를 지킬 이유가 없다. 간선 메시지를 반대칭으로 강제해 작용-반작용을 구조적으로 보장하는 설계가 대안으로 연구된다.
  • 데이터 비용. 학습 데이터는 결국 기존 솔버가 만들어야 한다. 대리 모델의 오래된 질문 — “그래서 몇 번 재사용할 건데?” — 이 그대로 적용된다.

정리하면 현재 GNN의 정직한 자리는 솔버 대체가 아니라 형상·조건이 변하는 반복 해석의 값싼 대리모델, 그리고 리메싱·전처리기 설계·조도화 같은 수치 절차 내부의 학습된 부품이다. 어느 쪽이든 검증 및 확인의 문법을 그대로 적용해야 하고, 평균 상대오차 몇 %라는 숫자 하나로 승인 도장을 찍으면 안 된다.34

7. 관련 문서[편집]

8. Footnotes[편집]

  1. 다만 유사성을 너무 밀면 다친다. 유한요소 스텐실은 기저함수와 약형에서 유도되어 수렴 차수가 증명되지만, 학습된 메시지는 훈련 분포 안에서 잘 맞을 뿐이다. “격자를 절반으로 줄이면 오차가 4분의 1”이라는 문장을 GNN 대리모델에 대해 쓸 수 없다는 점이 둘의 결정적 차이다.

  2. 1-WL 한계를 처음 들으면 “그래서 실제로 뭐가 안 되는데?”싶은데, 육각 고리 두 개가 떨어져 있는 분자와 열두 개짜리 고리 하나인 분자를 구분 못 한다는 예를 보면 납득이 빠르다. 화학자 입장에서 이건 벤젠 둘과 시클로도데카를 같은 물질로 보겠다는 소리다.

  3. 논문 그림에서 유동장이 그럴듯하게 나오는 것과, 그 결과로 설계 판단을 내릴 수 있는 것은 전혀 다른 문제다. 벽면 전단응력이나 박리점처럼 판단이 걸리는 국소량에서 오차가 어떻게 분포하는지를 봐야 하고, 이건 전통적 대리모델 검증에서 늘 하던 이야기의 반복이다.

  4. 여담으로, GNN 논문의 벤치마크가 대체로 노드 분류(Cora, Citeseer)와 분자 데이터셋(QM9, OGB)에 몰려 있어서 CAE 쪽 사람들이 성능 수치를 읽고 자기 문제로 옮기기가 어렵다. 메시 크기 10610^6 절점, 종횡비 1000인 경계층 요소가 섞인 진짜 산업 메시로 돌린 결과는 여전히 드물다.