Skip to main content

Graph Neural Network


GCN(Graph Convolutional Network)

http://tkipf.github.io/graph-convolutional-networks/
  • 그래프: G=(V,E)\mathcal{G} = \left( \mathcal{V}, \mathcal{E} \right)
  • N 개 노드: V={v1,v2,,vN}\mathcal{V} = \left\{ v_1, v_2, \cdots, v_N \right\}
  • 노드 피쳐: XRN×FX \in \mathbb{R}^{N \times F}
  • 엣지: (υi,υj)E\left( \upsilon_i, \upsilon_j \right) \in \mathcal{E}
  • 인접(adjacency) 행렬
    • A{0,1}N×NA \in \left\{ 0, 1 \right\}^{N \times N} (연결되어 있으면 1, 아니면 0), 또는 가중치 행렬 ARN×NA \in \mathbb{R}^{N \times N}
    • self-connection이 있는 undirected graph의 인접 행렬: A~=A+IN\widetilde{A} = A + I_N
  • 대각 차수(diagonal degree) 행렬
    • Dii=jAijD_{ii} = \sum_j{A_{ij}}
    • D~ii=jA~ij\widetilde{D}_{ii} = \sum_j{\widetilde{A}_{ij}}
  • 특징(feature) 행렬
    • HlRN×DH^l \in \mathbb{R}^{N \times D}, H0=XH^0 = X
    • Hl+1=σ(D~12A~D~12HlWl)H^{l+1} = \sigma \left( \widetilde{D}^{-\frac{1}{2}} \widetilde{A} \widetilde{D}^{-\frac{1}{2}} H^l W^l \right)

GAT(Graph Attention Network)

MPNN(Message Passing Neural Network)

GIN(Graph Isomorphism Network)

...

https://jcheminf.biomedcentral.com/articles/10.1186/s13321-022-00634-3