説明
Principal Neighbourhood Aggregation(PNA)は、グラフニューラルネットワーク(GNN)の表現力とスケーラビリティを向上させるために設計された新しいアプローチです。lukecavabarrettによって管理されているこのGitHubリポジトリは、3つの一般的なGNNフレームワークであるPyTorch、Deep Graph Library(DGL)、およびPyTorch GeometricにわたるPNAの包括的な実装を提供します。
続きを読む
このプロジェクトの主な目的は、研究者や開発者にPNAの堅牢でアクセスしやすい実装を提供し、グラフベースの機械学習タスクでその高度な機能を利用できるようにすることです。リポジトリには、コアPNAレイヤーだけでなく、アグリゲーター、スケーラー、さまざまなグラフ畳み込みタイプに適応可能な柔軟なGNNフレームワークなどのサポートコンポーネントも含まれています。
コア実装を超えて、リポジトリにはGNNパフォーマンスを評価するための実用的なツールが装備されています。マルチタスクベンチマークを生成および実行するためのスクリプトが含まれており、さまざまなタスクで異なるGNNモデルを体系的に比較できます。さらに、実世界のベンチマークを実行するためのスクリプトが提供されており、実用的なデータセットでのPNAの有効性を評価するのに役立ちます。GCN、GAT、GIN、MPNNなどの他の比較GNNモデルの実装も含まれており、ベンチマークとPNAの相対的な強みを理解するための貴重なリソースを提供します。
リポジトリの構造は、使いやすさとモジュール性を促進するように整理されています。`pytorch`ディレクトリには、PNAレイヤーと一般的なGNNフレームワークを含む、PyTorch固有の実装が含まれています。`dgl`および`pytorch_geometric`ディレクトリには、それぞれのライブラリのPNA実装が格納されています。さらに、`multi_task`および`real_world`ディレクトリには、ベンチマークを実行するための詳細な手順とスクリプトが用意されており、包括的なREADMEファイルがセットアップとトレーニングプロセスを通じてユーザーをガイドします。これにより、このリポジトリは、グラフニューラルネットワークを扱うすべての人、特に高度な集約技術に関心のある人々にとって貴重な資産となります。
- カテゴリー機械学習プラットフォーム
- 料金モデルオープンソース
- デプロイクラウド, セルフホスト
- プラットフォームWeb
Principal Neighbourhood Aggregationの主要機能
Principal Neighbourhood Aggregation (PNA) の実装
PyTorchフレームワークのサポート
Deep Graph Library (DGL) のサポート
PyTorch Geometricフレームワークのサポート
マルチタスクベンチマーク用スクリプト
実世界ベンチマーク用スクリプト
柔軟なPyTorch GNNフレームワーク
比較GNNモデル(GCN、GAT、GIN、MPNN)の実装
アグリゲーターとスケーラーを含む
PNAレイヤーの実装
GitHubで利用可能なオープンソースコード
Principal Neighbourhood Aggregationをはじめる
モデルへのアクセス: GitHubリポジトリをクローンするか、コードをダウンロードします。
環境設定: 必要な依存関係(PyTorch、DGL、PyTorch Geometricなど)をインストールします。
フレームワーク経由での統合: PyTorch、DGL、またはPyTorch Geometric内でPNA実装を利用します。
ベンチマークの実行: マルチタスクまたは実世界の評価のために提供されたスクリプトを実行します。
GNNフレームワークの適応: カスタムグラフ畳み込みのために柔軟なPyTorch GNNフレームワークを変更します。
モデルのトレーニング: ハイパーパラメータチューニングとトレーニングの手順については、READMEファイルの手順に従います。
Principal Neighbourhood Aggregationの使用例
- グラフニューラルネットワーク研究
- GNNモデルのベンチマーク
- 創薬
- ソーシャルネットワーク分析
- レコメンデーションシステム
- 交通量予測
- 不正検出








