JuliaGraphs/GraphNeuralNetworks.jl

Graph Neural Networks in Julia

What it solves

グラフ構造データに対して Julia 言語でディープラーニングを行うためのライブラリセットを提供します。Flux.jl や Lux.jl といった一般的なディープラーニングフレームワークを使用して、グラフニューラルネットワーク (GNNs) を構築・訓練することが可能です。

How it works

このプロジェクトは、いくつかの専門化されたパッケージに分かれています:

  • GraphNeuralNetworks.jlGNNLux.jl は、それぞれ Flux および Lux のユーザー向けの主要なインターフェースとして機能します。
  • GNNGraphs.jl は、基盤となるグラフデータ構造とヘルパー関数を扱います。
  • GNNlib.jl は、gather/scatter メカニズムまたは疎行列乗算を使用して、コアとなるメッセージパッシングフレームワークを実装しています。

Who it’s for

グラフ畳み込み層を使用して、ノード、エッジ、またはグラフレベルで機械学習タスクを実装したい Julia を使用している研究者や開発者。

Highlights

  • 一般的なグラフ畳み込み層とカスタムレイヤー定義のサポート。
  • バッチ化されたグラフ (batched graphs)、不均一なグラフ (heterogeneous graphs)、および動的なグラフ (dynamical graphs) 上での計算能力。
  • CUDA および AMDGPU によるハードウェア加速。
  • Graphs.jl エコシステムとの統合。