그래프 신경망

위키백과, 우리 모두의 백과사전.

그래프 신경망(Graph neural network, GNN)은 그래프로 표현될 수 있는 데이터를 처리하기 위한 인공 신경망의 한 종류에 속한다.

"기하학적 딥 러닝"이라는 보다 일반적인 주제에서 기존의 특정 신경망 아키텍처는 적절하게 정의된 그래프에서 작동하는 GNN으로 해석될 수 있다. 컴퓨터 비전의 맥락에서 합성곱 신경망 계층은 노드가 화소이고 인접한 화소만 그래프의 가장자리로 연결되는 그래프에 적용되는 GNN으로 볼 수 있다. 자연어 처리에서 변환기 계층은 노드가 자연어 텍스트 구절의 낱말 또는 토큰인 완전 그래프에 적용되는 GNN으로 볼 수 있다.

GNN의 핵심 설계 요소는 그래프 노드가 이웃과 정보를 교환하여 표현을 반복적으로 업데이트하는 쌍별 메시지 전달을 사용하는 것이다. 처음부터 재귀적 또는 합성곱 구성적 접근 방식으로 시작하여 다양한 메시지 전달 방식을 구현하는 여러 가지 GNN 아키텍처가 제안되었다. 2022년 기준, 메시지 전달을 "넘어가는" GNN 아키텍처를 정의할 수 있는지, 아니면 모든 GNN이 적절하게 정의된 그래프를 통해 메시지 전달을 기반으로 구축될 수 있는지는 공개 연구 질문이다.

GNN의 관련 응용 분야에는 자연어 처리, 소셜 네트워크, 인용 네트워크, 분자생물학[1], 화학[2], 물리학NP-난해 조합 최적화 문제가 포함된다.

PyTorch 기하학(PyTorch), TensorFlow GNN(텐서플로), jraph(구글 JAX), GraphNeuralNetworks.jl/GeometricFlux.jl[3]/GeometricFlux.jl[4](줄리아 (프로그래밍 언어), Flux) 등 그래프 신경망을 구현하는 여러 오픈 소스 라이브러리를 사용할 수 있다.

각주[편집]

  1. Zhang, Weihang; Cui, Yang; Liu, Bowen; Loza, Martin; Park, Sung-Joon; Nakai, Kenta (2023년 12월 1일). “HyGAnno: Hybrid graph neural network-based cell type annotation for single-cell ATAC sequencing data”. doi:10.1101/2023.11.29.569114. 
  2. Coley, Connor W.; Jin, Wengong; Rogers, Luke; Jamison, Timothy F.; Jaakkola, Tommi S.; Green, William H.; Barzilay, Regina; Jensen, Klavs F. (2019년 1월 2일). “A graph-convolutional neural network model for the prediction of chemical reactivity”. 《Chemical Science》 (영어) 10 (2): 370–377. doi:10.1039/C8SC04228D. ISSN 2041-6539. PMC 6335848. PMID 30746086. 
  3. Lucibello, Carlo (2021). “GraphNeuralNetworks.jl”. 2023년 9월 21일에 확인함. 
  4. 《FluxML/GeometricFlux.jl》, FluxML, 2024년 1월 31일, 2024년 2월 3일에 확인함 

외부 링크[편집]