【ダイジェスト】
Google Researchは、TensorFlowでグラフニューラルネットワーク(GNN)を構築するためのライブラリであるTensorFlow GNN 1.0(TF-GNN)のリリースを発表しました。このライブラリは、大規模なスケールでのモデリングとトレーニングをサポートし、巨大なデータストアからの入力グラフの抽出を可能にします。TF-GNNは、異種グラフに特化しており、異なるタイプのオブジェクトと関係を表すために、ノードとエッジの異なるセットを使用します。グラフはTensorFlow内でtfgnn.GraphTensorオブジェクトとして表され、これは複合テンソルタイプです。GraphTensorsのトレーニング可能な変換は、高レベルのKeras APIのLayersオブジェクトとして、またはtfgnn.GraphTensorプリミティブを直接使用して定義できます。
TF-GNN 1.0は、動的またはバッチサブグラフサンプリングをすべての関連スケールで設定するための柔軟なPython APIを提供します。これにより、Colabノートブックでのインタラクティブなサンプリング、単一のトレーニングホストのメインメモリに格納された小規模なデータセットの効率的なサンプリング、またはApache Beamによるネットワークファイルシステムに格納された巨大なデータセット(数億のノードと数十億のエッジまで)の分散サンプリングが可能です。
GNNのタスクは、サンプリングされたサブグラフ上で、ルートノードの隠れ状態を計算することです。この隠れ状態は、ルートノードの近傍の関連情報を集約してエンコードします。メッセージパッシングニューラルネットワークは、ノードが入ってくるエッジから隣人からメッセージを受け取り、それらから自身の隠れ状態を更新する一般的なアプローチです。異種グラフでは、異なるタイプのノードとエッジに対して別々に訓練された隠れ層を使用することがよくあります。
TF-GNNは、異種グラフのための教師なし目標の詳細な仕様をサポートしています。GNNアーキテクチャの構築において、TF-GNNライブラリは、Kerasレイヤーで表現されたライブラリにバンドルされた事前定義されたモデルを使用する最高レベルから、グラフを介してデータを渡すためのプリミティブを使用してスクラッチからGNNモデルを書く最低レベルまで、さまざまな抽象化レベルでの構築とトレーニングをサポートします。
TF-GNN Runnerは、Kerasモデルのトレーニングを一般的なケースで簡潔にオーケストレーションする方法を提供します。これには、分散トレーニングやCloud TPUs上での固定形状のためのtfgnn.GraphTensorパディングなど、MLの課題に対する既製のソリューションが含まれます。単一のタスクでのトレーニングに加えて、複数のタスク(2つ以上)を同時に共同トレーニングすることもサポートしています。
TF-GNNは、TensorFlowでのGNNの応用を進展させ、この分野でのさらなる革新を促進することを目指しています。詳細については、Colabデモ、ユーザーガイド、Colabsを参照するか、論文をご覧ください。
【ニュース解説】
Google ResearchがTensorFlowでグラフニューラルネットワーク(GNN)を構築するための新しいライブラリ、TensorFlow GNN 1.0(TF-GNN)をリリースしました。このライブラリは、大規模なデータセットに対応し、異種グラフのモデリングとトレーニングを可能にします。異種グラフとは、異なるタイプのオブジェクトと関係を持つグラフのことで、TF-GNNはこれらを効率的に扱うために設計されています。
TF-GNNの特徴の一つは、動的またはバッチサブグラフサンプリングをサポートする柔軟なPython APIを提供することです。これにより、小規模なデータセットから巨大なデータセットまで、さまざまなスケールでのサンプリングが可能になります。サブグラフサンプリングは、大規模なグラフから小さなサブグラフを抽出し、これを用いてGNNのトレーニングを行うプロセスです。このプロセスは、GNNのトレーニングにおいて非常に重要な役割を果たします。
GNNは、グラフ全体、個々のノード、または潜在的なエッジに対する予測を行うことができます。これにより、例えば、ある分子が特定の反応を示すか、ある文書のトピックが何か、ある製品が他の製品と一緒に購入される可能性があるかなどを予測することが可能になります。
TF-GNNは、異種グラフに対する教師なし学習もサポートしています。これにより、グラフの離散的な構造を連続的な表現(エンベッディング)に変換し、これを他の機械学習システムで利用することができます。この機能は、グラフの情報をより一般的なニューラルネットワークのユースケースに組み込むための強力なツールとなります。
TF-GNNは、Kerasレイヤーで表現された事前定義されたモデルや、グラフを介してデータを渡すためのプリミティブを使用してスクラッチからGNNモデルを構築するなど、さまざまな抽象化レベルでのGNNアーキテクチャの構築とトレーニングをサポートします。これにより、ユーザーは自分のニーズに合わせてGNNをカスタマイズすることができます。
TF-GNN Runnerを使用すると、分散トレーニングや複数のタスクを同時に共同トレーニングするなど、Kerasモデルのトレーニングを簡潔にオーケストレーションすることができます。これにより、モデルのトレーニングプロセスが簡素化され、効率的なトレーニングが可能になります。
TF-GNNのリリースにより、TensorFlowでのGNNの応用が進展し、この分野でのさらなる革新が促進されることが期待されます。このライブラリは、グラフの情報を活用してより精度の高い予測を行いたい研究者や開発者にとって有用なツールとなるでしょう。
from Graph neural networks in TensorFlow.

