人工知能におけるGNNとは何ですか?

人工知能におけるGNNとは何ですか?

グラフディープラーニング(GDL)は有望な研究分野であり、グラフデータに基づいた学習や分析は非常に有用です。この記事では、シンプルなグラフ ニューラル ネットワーク (GNN) の基本と、その内部の仕組みの背後にある直感を紹介します。しかし、心配しないでください。何が起こったのかをより直感的に理解できるように、著者は記事の中で多くのカラー写真を使用してグラフィカルな情報を提供しています。

グラフとは何ですか?

グラフは、接続されたノード (頂点) とエッジで構成されるデータ構造であり、明確な開始点や終了点がない情報を表すために使用できます。すべてのノードは空間内の任意の位置を占めることができ、グラフの構造が 2 次元以上で描画される場合、通常、類似した特性を持つノードが一緒にクラスター化されます。

これは、エンティティを表す相互接続されたノードのグループで構成されるグラフです。

エッジの上の黒い先端は、ノード間の関係のタイプを示し、関係が双方向か一方向かを示します。グラフには、有向グラフと無向グラフという 2 つの主な種類があります。有向グラフでは、ノード間の接続に方向がありますが、無向グラフでは接続の順序は重要ではありません。有向グラフは単方向または双方向のいずれかになります。

グラフは、ソーシャル ネットワーク、分子など、さまざまなものを表現できます。ノードはユーザー/製品/アトムを表し、エッジはそれらの間の接続(接続された製品/キーでフォロー/一般的に購入されるなど)を表します。ソーシャル ネットワーク グラフは次のようになります。ノードはユーザー、エッジは接続です。

ノードはユーザーを表し、エッジは 2 つのエンティティ間の接続/関係を表します。実際のソーシャル ネットワーク グラフは、多くの場合、はるかに大きく複雑です。

次に、著者は、再帰ユニット、埋め込みベクトル表現、フィードフォワードニューラルネットワークなどの概念をいくつか紹介します。グラフ理論(つまり、グラフとは何か、グラフはどのように見えるか)について知っておくことも重要です。

いくつかの用語はあなたにとって馴染みのないものであるかもしれません。心配しないで!紛らわしい用語については、関連する概念の基本的な意味を理解できるように、著者は見つけられる最も信頼できる説明へのリンクを貼るよう最善を尽くしました。これに基づいて、これらの概念とグラフ ニューラル ネットワークにおけるその役割をさらに理解できます。

グラフニューラルネットワークを理解する

各ノードには、それを定義する一連の特性があります。ソーシャル ネットワーク グラフの場合、これらの特徴としては、年齢、性別、居住国、政治的所属などが挙げられます。各エッジは、類似の特性を持つ可能性のあるノードを接続します。これは、これらのノード間の何らかの相関関係または関係を反映しています。

次の頂点と辺を持つグラフ G があるとします。

この写真は上の写真と同じです。

簡単にするために、特徴ベクトルは現在のノードのインデックスのワンホットエンコーディングであると仮定します。同様に、ラベル (またはカテゴリ) をノードの色 (緑、赤、黄色) として設定できます。するとグラフは次のようになります。

ノードの順序は実際には重要ではありません。

注意: 実際のアプリケーションでは、ノードの順序が非常に混乱する可能性があるため、ワンホット エンコーディングを使用しないようにしてください。代わりに、ソーシャル ネットワークの場合は年齢、性別、政治的志向など、分子研究の場合は定量化可能な化学的特性など、ノードを明確に区別する特徴を使用する必要があります。

ノードのワンホットエンコーディング(または埋め込み)ができたので、ニューラルネットワークを導入してグラフを変更することができます。すべてのノードは、リカレント ユニット (またはその他のニューラル ネットワーク アーキテクチャ。ここではリカレント ユニットを使用) に変換できます。すべてのエッジは、単純なフィードフォワード ニューラル ネットワークで構成されます。すると次のようになります:

エンベロープ シンボルは、各ノードのワンホット エンコードされたベクトル (埋め込み) です。

メッセージング

ノードとエッジの変換が完了すると、グラフはノード間でメッセージの受け渡しを実行できるようになります。このプロセスは、特定のノードの周囲の有向エッジを介して周囲のノードからメッセージ(つまり埋め込み)をプッシュすることを伴うため、「近傍集約」とも呼ばれます。

注: 場合によっては、単方向エッジに 1 つのニューラル ネットワークを使用し、双方向エッジに別のニューラル ネットワークを使用するなど、異なるタイプのエッジに異なるニューラル ネットワークを使用する必要があることがあります。この方法では、ノード間の空間関係をキャプチャできます。

GNN の場合、単一の参照ノードに対して、隣接ノードはエッジ ニューラル ネットワークを介して参照ノード上の再帰ユニットにメッセージ (埋め込み) を渡します。参照再帰ユニットの新しい埋め込み更新は、再帰埋め込みと隣接ノード埋め込みのエッジ ニューラル ネットワーク出力の合計に対する再帰関数を使用することに基づいています。上の赤​​いノードを拡大して、このプロセスを視覚化してみましょう。

紫色の四角は、隣接ノードからの埋め込み (白い封筒) に適用された単純なフィードフォワード ニューラル ネットワークです。赤い三角形は、現在の埋め込み (白い封筒) とエッジ ニューラル ネットワークの出力 (黒い封筒) の合計に適用され、新しい埋め込み (上部の白い封筒) を取得する再帰関数です。

このプロセスは、レイヤー L+1 の埋め込みがレイヤー L の埋め込みに依存するため、ネットワーク内のすべてのノードで並列に実行されます。したがって、実際には、メッセージの受け渡しを実行するために、あるノードから別のノードに「移動」する必要はありません。

注: エッジ ニューラル ネットワーク出力 (黒いエンベロープ) の合計は、出力の順序とは無関係です。

最終的なベクトル表現の用途は何ですか?

近傍集約/メッセージ パッシング プロセスを複数回実行した後、各ノードの再帰ユニットは新しい埋め込みセットを取得します。さらに、複数のタイムステップ/ラウンドのメッセージ パッシングの後、ノードは自分自身と近隣ノードの情報 (特徴) をより深く理解できるようになります。これにより、グラフ全体のより正確な表現が作成されます。

パイプラインをさらに進めるか、単にグラフを表現するために、すべての埋め込みを加算して、グラフ全体を表すベクトル H を取得できます。

隣接行列を使用するよりも H を使用する方が適しています。隣接行列は、グラフをどのように変形してもグラフの特性や固有のプロパティを表すことはなく、ノード間のエッジ接続のみを表すためです (場合によってはそれほど重要ではありません)。

要約すると、すべてのノード再帰ユニットの最終的なベクトル表現を合計し (もちろん順序とは無関係)、結果のベクトルを他の作業への入力として使用したり、単にグラフを表現したりします。このステップは次の図のようになります。

これは、メッセージの受け渡しを n 回繰り返した後に、埋め込みベクトルが完全に更新された最終グラフです。すべてのノードのテーブルを作成できます。これらを足すとHになります。

グラフニューラルネットワークを実装するための4つのステップ

GNN の使い方は非常に簡単です。実際、それらを実装するには次の 4 つのステップが必要です。


  1. グラフが与えられたら、まずノードを再帰ユニットに変換し、エッジをフィードフォワードニューラルネットワークに変換します。
  2. 次に、すべてのノードに対して n 個の隣接ノード集約(つまり、メッセージの受け渡し)を実行します。
  3. 次に、すべてのノードの埋め込みベクトルを合計してグラフ表現 H を取得します。
  4. 最後に、H を完全にスキップしてより高いレベルに直接移動することも、H を使用してグラフの固有のプロパティを特徴付けることもできます。

まとめ

これで、グラフ ニューラル ネットワークがどのように動作するかが明確に理解できました。 GNN はグラフ ノード間の依存関係をモデル化する上で強力なパフォーマンスを発揮するため、ソーシャル ネットワーク、ナレッジ グラフ、推奨システムで広く使用されています。ソーシャル ネットワーク グラフを例にとると、GNN はコンテンツの推奨において優れたパフォーマンスを発揮します。たとえば、ユーザーが同様の政治的傾向を持つ別のユーザーをフォローしている場合、GNN をノード分類に使用して、Web サイト上の特定のコンテンツを上記のユーザーのニュース フィードに送信できるかどうかを予測できます。GNN を「推奨フォロー」に使用すると、システムはユーザーが属する業界を考慮して、潜在的な接続を提供できます (エッジ分類)。

グラフディープラーニングは実は非常に興味深いです。この記事のハイライトは、いくつかの視覚的なグラフを使用してグラフニューラルネットワークの基本的な概念を紹介することですが、GNN を徹底的に理解したい場合は、自分でコードを書いて試してみるのが最適です。

<<:  2022年にロボット工学の急成長を支える5つの要因

>>:  Kevin P. Murphy の「確率的機械学習: 上級」が PDF でダウンロードできるようになりました。

ブログ    
ブログ    
ブログ    
ブログ    

推薦する

シリコンバレーのAI界で注目の記事:ジャスパーとVCはAIGCブームの最大の敗者となり、潮が引いた後に初めて誰が裸で泳いでいるかがわかる

この夏、人工知能起業家サム・ホーガンが書いた記事がシリコンバレー中で話題になった。現在、AI と大規...

人工知能が電力網の未来の鍵となる理由

[[201461]] 2016年の英国の電力構成は過去60年間で最もクリーンとなり、主に風力と太陽光...

データサイエンティストと開発者向けの新しいツールであるAmazon SageMakerが中国で利用可能になりました

【51CTO.comオリジナル記事】機械学習は誕生以来、多くの分野で応用されてきましたが、現時点では...

年次レビュー:2020 年の 5 つの注目すべきテクノロジー トレンド、時代のトレンドに遅れずについていく

世界の歴史は発明の歴史でもあります。火薬の発明は世界地図を変え、電灯の発明は夜を変え、車の発明は空間...

...

AI、BI、データ: 2020 年までに勝利するのは誰か?

10 年前、データと分析の市場には大手企業が存在しませんでした。実際、業界では「クラウド」、「ビッ...

2021 年の人工知能のトップ 10 トレンド

コロナウイルスのパンデミック以前、AI業界は2020年に大きな成長を遂げると予想されていました。 2...

人工知能の今後の発展はどうなるのでしょうか?

汎用人工知能の任務は、ユビキタスな視覚と聴覚を制御することです。「認識」を例にとると、汎用人工知能の...

マイクロソフトリサーチアジア、ウェイ・フル氏:人工知能における基礎イノベーションの第2次成長曲線

人工知能の発展の観点から見ると、GPT シリーズのモデル (ChatGPT や GPT-4 など) ...

新しい展開のアイデア | Minuet: GPU での 3D スパース畳み込みの高速化

この記事は、Heart of Autonomous Driving の公開アカウントから許可を得て転...

...

AIプロジェクトの失敗はもはや人材不足のせいにはされない

AI の取り組みが失敗すると、その責任はスキルのギャップにあるとされることが多いです。しかし、それだ...

認知分析について知っておくべきことすべて

コンテキストを提供し、大量の情報に隠された答えを発見するために、コグニティブ コンピューティングはさ...

...

...