人工知能における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 でダウンロードできるようになりました。

ブログ    
ブログ    
ブログ    

推薦する

顔認識は簡単に破られるのでしょうか?虐待と闘う方法

未来産業研究所は、顔認識市場規模は今後5年間で平均23%の複合成長率を維持し、2024年までに市場規...

BEV におけるレーダー・カメラ間データセット融合に関する実験的研究

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

アリババDAMOアカデミーが自動運転の技術的困難を突破:3D物体検出の精度と速度の両方を実現

この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載...

AIチップアーキテクチャは最先端へ向かう

企業は、AI をエッジに押し上げるための最適な武器として、さまざまなチップ アーキテクチャを採用しよ...

新型コロナウイルスはAIに影響を与えるか?人工知能は人間の介入なしには機能しない

この記事は公開アカウント「Reading Core Technique」(ID: AI_Discov...

人工知能の 10 大トレンドのうち、予想もしなかったものはどれですか?

[[237644]] 人工知能(AI)は、国家や企業が支配権を争う新たな技術の最前線です。マッキン...

人工知能とVRを融合し、多様な体験を実現

人工知能サービス - Microsoft Cognitive Services には当初、視覚、音声...

深い思考:テイクアウトの背後にある人工知能アルゴリズムの秘密

知識の蓄積は規模の拡大をもたらし、規模の拡大は市場の集中につながります。産業が「組立ライン」の形で固...

イノベーションに関する対話 - 51CTO 初の開発者コンテストが始まりました!

/* 世界を変えるために生きるここでは、あらゆる作品が市場に参入するための種となる可能性があります...

【ビッグネーム登場、第2話】快溝タクシーの知能進化への道

インテリジェントな注文発送システムをゼロから構築するように依頼され、1 日の注文数が 40 万件だと...

深層畳み込みネットワークに基づく自動運転のためのマルチモーダル軌道予測の簡単な分析

道路上で安全かつ効率的に運行するためには、自動運転車は人間の運転手と同じように周囲の交通参加者の行動...

2020年世界人工知能会議におけるAIインテリジェント音声技術の新展開

2020年7月11日、世界人工知能会議が終了し、満足のいく回答書が提出されました。人工知能の時代の到...

人工知能が新薬開発を支援

[[251349]]古代、神農は何百種類もの生薬を試飲しましたが、これは実際には薬を人工的に選別する...

...

...