Skip to content

Instantly share code, notes, and snippets.

@sunrise2575
Last active June 20, 2023 13:20
Show Gist options
  • Star 2 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save sunrise2575/64e1d9175cee05a07d09fc8b8fc779af to your computer and use it in GitHub Desktop.
Save sunrise2575/64e1d9175cee05a07d09fc8b8fc779af to your computer and use it in GitHub Desktop.
Graph Processing and GNN

Graph Processing

Graph Processing Platforms 논문 모음

  1. Graph Processing: A Panoramic View and Some Open Problems
    • 2019년 VLDB 키노트 발표, Tamer Ozsu 교수
    • Graph DBMS와 Graph (Analytics) system 의 역사에 대해 정리
    • Programming model 및 computation model 관점에서 graph system을 분류
    • Dynamic 및 streaming graph 의 정의와 처리에 대해서 설명

GNN Algorithm

  1. GNN 전반적인 내용
  2. 주요 GNN 관련 Review 논문 리스트
  3. Spectral-based GNN
  4. Spatial-based GNN
  5. Recurrent GNN / Spatial-Temporal GNN
  6. Heterogeneous Graph
  7. Heterogeneous Graph with Subgraph/Metapath

GNN System / Framework

A. 연구용으로 나온 시스템 / 프레임워크

  1. NeuGraph: Parallel Deep Neural Network Computation on Large Graphs
    • 2019년 USENIX ATC
    • GAS 프로그래밍 모델을 응용한 SAGA 프로그래밍 모델 제시
    • 행렬 중심의 파티셔닝 및 처리 기법 제안
  2. PSGraph: How Tencent Trains Extremly Large-scale Graphs with Spark (GitHub)
    • 2020년 ICDE
    • Apache Spark로 전통적인 그래프 알고리즘, 그래프 임베딩 알고리즘, GNN 알고리즘 3가지 종류를 모두 수행
    • GraphX와 성능 비교
  3. AGL: A Scalable System for Industrial-purpose Graph Machine Learning
    • 2020년 VLDB
    • MapReduce로 처리, GCN, GraphSAGE, GAT 처리 가능
  4. FlexGraph: A Flexible and Efficient Distributed Framework for GNN Training
    • 2021년 EuroSys
    • Meta-path 이용하는 Heterogeneous Graph 처리 알고리즘 MAGNN (PyTorch) 수행 가능
    • NAU (NeighborSelection → Aggregation → Update) 프로그래밍 모델 제시
  5. Seastar: Vertex-Centric Programming for Graph Neural Networks
    • 2021년 EuroSys
    • Pregel 과 유사한 vertex-centric 프로그래밍 모델 사용, IR (intermediate representation) 사용
    • Python decorator를 함수에 붙이면 optimize 된 computational graph 생성
    • Heterogeneous Graph 처리 알고리즘 R-GCN 수행 가능
  6. GMLP: Building Scalable and Flexible Graph Neural Networks with Feature-Message Passing
    • 2021년 VLDB 심사 중인 논문
    • Message-passing 모델로 동작, 다양한 알고리즘 수행 가능
    • FlexGraph와 유사하게 Graph Aggregate → Message Aggregate → Update 프로그래밍 모델 사용

B. 상용으로 나온 시스템 / 프레임워크

  1. Deep Graph Library (DGL) (GitHub)
    • 뉴욕 대학, AWS, Intel, NVIDIA 등의 기관에서 협력해서 만든 오픈 소스 프로젝트
    • GNN 분야에서 가장 많이 쓰이는 것으로 보임
  2. Pytorch Geometric (PyG) (docs)
  3. PGL (docs)
    • PaddlePaddle 기반으로 제작
    • 바이두 제작
    • 설명에 중국어가 많으니 유의
  4. StellarGraph (docs)
    • 호주 국립과학산업연구원 (CSIRO 제작)
  5. Euler (docs)
    • 알리바바 제작, 모든 설명이 중국어로 되어있음
  6. tf_geometric (docs)
    • TensorFlow 하위 프로젝트
  7. G3
    • Graph system인 Gunrock 의 하위 프로젝트

GNN Dataset

Refined Data

  1. Open Graph Benchmark (OGB)
    • GNN용 benchmark용 데이터를 정리된 형태로 제공
    • DGL, PyG 등과 바로 연결해서 쓸 수 있게 제작되어 있음
    • Tensorflow나 MxNet에서도 이용 가능
  2. WebGraph
    • 밀라노 대학교에서 2003년부터 운영하는 리포지토리
    • 가장 큰 그래프 데이터인 ClueWeb12 를 제공
    • 전용 데이터 포맷을 쓰기 때문에 변환기(JAVA) 사용해야 다른 포맷으로 변환 가능
  3. SNAP
    • 스탠포드 대학에서 제공하는 리포지토리
    • 많은 그래프 처리 논문들이 사용하는 리포지토리
  4. SuiteSparse Matrix Collection
    • 플로리다 대학에서 운영하는 리포지토리
    • 다양한 분야에서 모은 행렬 데이터를 제공

Raw Data

  1. Pushshift
    • 참고
    • Reddit, Spotify, Twitter 등등 다양한 데이터를 모아놓은 리포지토리
    • 자체 API가 있어서 활용 가능하다고 함
  2. Wikidata Dump
    • 참고
    • 위키피디아 데이터를 JSON, RDF, XML 등으로 다운 가능
    • wikiextractor 사용해서 파싱 가능
  3. DBLP Dump
    • 학술 논문 덤프
  4. IMDB Dump
    • 참고
    • 영화 데이터베이스 덤프
    • iMDbPY로도 다운 받을 수 있음
  5. Amazon product data
    • 1996년~2014년 까지의 아마존 상품 리뷰와 상품 정보를 모아놓은 데이터
  6. ConvoKit (GitHub)
    • 다양한 종류의 대화 데이터를 단일 인터페이스로 다운받게 만든 리포지토리
  7. 해외 교통 데이터

Raw Data (in Korea)

  1. 공공데이터포털
    • 국내 데이터를 제공하는 대표적인 사이트
  2. 교통 데이터 거래소
    • 한국도로공사에서 운영
  3. 자율주행차 데이터 공유센터
    • 한국교통안전공단에서 운영
    • 데이터를 받기 위해서는 로그인이 필요
  4. 빅카인즈
    • 뉴스 데이터 모음
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment