Geometric Deep Learning
그래프, 매니폴드, 점군(Point Cloud) 등 비유클리드 데이터 구조에서의 딥러닝
개요
Geometric Deep Learning(GDL)은 유클리드 공간에 국한되지 않는 데이터 구조(그래프, 메시, 점군, 매니폴드)에 딥러닝을 적용하는 통합 프레임워크다. CNN이 격자(Grid) 구조의 대칭성(이동 불변성)을 활용하듯, GDL은 비유클리드 구조의 대칭성(치환, 회전, 반사 불변성)을 활용한다.
이론적 기반: 대칭성과 불변성
5G 프레임워크 (Bronstein et al., 2021)
Geometric Deep Learning의 핵심 아이디어는 모든 딥러닝 아키텍처를 도메인의 대칭군(Symmetry Group)으로 통합하는 것:
| 도메인 |
대칭군 |
불변성 |
대표 아키텍처 |
| 격자 (Grid) |
이동군 (Translation) |
이동 불변 |
CNN |
| 집합 (Set) |
치환군 (Permutation) |
순서 불변 |
DeepSets |
| 그래프 (Graph) |
치환군 |
노드 순서 불변 |
GNN |
| 매니폴드 (Manifold) |
등거리 변환 |
형태 불변 |
Gauge-equivariant CNN |
| 3D 점군 (Point Cloud) |
SE(3) (회전+이동) |
회전/이동 불변 |
E(n)-equivariant GNN |
불변성 vs 등변성
| 성질 |
정의 |
예시 |
| 불변 (Invariant) |
변환 후에도 출력 동일 |
그래프 분류 (노드 순서 바꿔도 같은 레이블) |
| 등변 (Equivariant) |
입력 변환에 따라 출력도 같이 변환 |
노드 분류 (노드 순서 바꾸면 예측도 재배열) |
핵심 아키텍처
1. Message Passing Neural Networks (MPNN)
GNN의 일반화 프레임워크:
각 레이어에서:
1. Message: m_ij = phi(h_i, h_j, e_ij) -- 이웃으로부터 메시지 생성
2. Aggregate: M_i = AGG({m_ij : j in N(i)}) -- 메시지 집계
3. Update: h_i' = psi(h_i, M_i) -- 노드 상태 업데이트
| 변형 |
Message 함수 |
Aggregation |
특징 |
| GCN |
정규화된 이웃 평균 |
Mean |
단순, 효율적 |
| GAT |
Attention 가중 합 |
Attention-weighted Sum |
이웃 중요도 학습 |
| GraphSAGE |
샘플링 + 집계 |
Mean/LSTM/Pool |
대규모 그래프 |
| GIN |
MLP(sum) |
Sum |
이론적 표현력 최대 |
2. Equivariant GNN (기하학적 GNN)
물리적 대칭성을 보존하는 GNN:
| 모델 |
대칭군 |
입력 |
응용 |
| SchNet |
E(3) 불변 |
원자 좌표 + 종류 |
분자 에너지 예측 |
| DimeNet |
E(3) 불변 |
+ 결합 각도 |
분자 성질 예측 |
| PaiNN |
E(3) 등변 |
벡터 + 스칼라 |
분자 동역학 |
| EGNN |
E(n) 등변 |
좌표 + 특성 |
점군 처리 |
| Equiformer |
SE(3) 등변 |
구면 조화 텐서 |
고정밀 분자 모델링 |
왜 등변성이 중요한가:
분자를 회전시켜도 에너지는 변하지 않아야 한다. 등변 GNN은 이 물리적 법칙을 아키텍처에 내장하여:
- 데이터 증강 불필요 (회전된 분자를 별도로 학습할 필요 없음)
- 일반화 성능 향상
- 학습 효율 극대화
Transformer 아키텍처를 그래프에 적용:
| 모델 |
핵심 아이디어 |
장점 |
| Graphormer |
그래프 구조를 위치 인코딩으로 |
전역 정보 포착 |
| GPS |
MPNN + Transformer 결합 |
로컬 + 전역 |
| TokenGT |
노드/엣지를 토큰으로 |
범용성 |
표현력 이론
Weisfeiler-Leman (WL) 계층
GNN의 표현력 한계를 그래프 동형 판별 능력으로 측정:
| WL 레벨 |
대응 GNN |
판별 능력 |
| 1-WL |
GCN, GAT |
기본 (일부 그래프 구분 불가) |
| 1-WL (최대) |
GIN (Sum + MLP) |
1-WL과 동등 |
| 2-WL |
- |
더 많은 그래프 구분 |
| 3-WL |
Higher-order GNN |
더욱 강력 |
| k-WL |
k-order MPNN |
계산 비용 증가 |
1-WL의 한계 극복:
| 접근법 |
방법 |
비용 |
| 부분 그래프 GNN |
k-hop 부분 그래프 추출 |
중간 |
| 랜덤 특성 |
노드에 랜덤 ID 부여 |
낮음 |
| 스펙트럴 인코딩 |
라플라시안 고유값 활용 |
낮음 |
| Higher-order MPNN |
하이퍼엣지 메시지 패싱 |
높음 |
응용 분야
분자/약물 설계
| 태스크 |
입력 |
출력 |
모델 |
| 분자 성질 예측 |
분자 그래프 |
용해도, 독성 등 |
SchNet, DimeNet |
| 약물 상호작용 |
약물 쌍 그래프 |
상호작용 유형 |
GCN, GAT |
| 단백질 구조 예측 |
아미노산 서열 |
3D 구조 |
AlphaFold (Evoformer) |
| 분자 생성 |
잠재 공간 |
신규 분자 |
그래프 VAE, Diffusion |
추천 시스템
| 접근법 |
그래프 구조 |
장점 |
| 유저-아이템 이분 그래프 |
유저 - 구매 - 아이템 |
협업 필터링 + 그래프 |
| 지식 그래프 강화 |
아이템 속성 그래프 |
설명 가능한 추천 |
| 세션 그래프 |
클릭 시퀀스 → 그래프 |
세션 기반 추천 |
| 소셜 그래프 |
친구 관계 활용 |
소셜 영향력 반영 |
교통/물류
| 태스크 |
그래프 |
모델 |
| 교통 흐름 예측 |
도로망 그래프 + 시계열 |
시공간 GNN (STGCN) |
| 경로 최적화 |
도로 네트워크 |
Attention Route |
| 자율주행 인지 |
점군 (LiDAR) |
PointNet, DGCNN |
사기 탐지
| 접근법 |
그래프 구조 |
효과 |
| 거래 네트워크 |
계좌 - 거래 - 계좌 |
공모 사기 탐지 |
| 이상 부분 그래프 |
비정상 커뮤니티 탐지 |
조직적 사기 |
| 동적 그래프 |
시간에 따른 관계 변화 |
새로운 사기 패턴 |
확장성 기법
대규모 그래프에서의 효율적 학습:
| 기법 |
설명 |
적합 규모 |
| Mini-batch (노드 샘플링) |
이웃 일부만 샘플링 |
100K+ 노드 |
| Cluster-GCN |
그래프를 클러스터로 분할 |
1M+ 노드 |
| GraphSAINT |
부분 그래프 샘플링 |
1M+ 노드 |
| DistDGL |
분산 GNN 학습 |
10M+ 노드 |
도구 및 라이브러리
| 라이브러리 |
백엔드 |
특징 |
| PyG (PyTorch Geometric) |
PyTorch |
가장 활발한 생태계 |
| DGL (Deep Graph Library) |
PyTorch/TF |
대규모 그래프 |
| e3nn |
PyTorch |
E(3) 등변 네트워크 |
| torch_geometric.nn |
PyTorch |
80+ GNN 레이어 구현 |
| NetworkX |
순수 Python |
그래프 분석 (비DL) |
최근 동향 (2025-2026)
| 동향 |
설명 |
| Graph Foundation Models |
대규모 사전학습 그래프 모델 (다양한 태스크 제로샷) |
| LLM + GNN 융합 |
LLM의 텍스트 이해 + GNN의 구조적 추론 결합 |
| Topological GNN |
호몰로지 등 위상적 특성 활용 |
| Dynamic Graph Learning |
시간에 따라 변하는 그래프 처리 |
| Geometric Diffusion Models |
3D 구조 생성 (분자, 단백질) |
참고
- Bronstein, M. et al. (2021). "Geometric Deep Learning: Grids, Groups, Graphs, Geodesics, and Gauges"
- Survey: "A Survey of Geometric Graph Neural Networks" (Frontiers of CS, 2025)
- Hamilton, W. (2020). "Graph Representation Learning" (Morgan & Claypool)
- PyG Docs: https://pytorch-geometric.readthedocs.io/
최종 업데이트: 2026-03-18