LoginSignup
5
6

More than 3 years have passed since last update.

この記事では

Graph Convolution Network (以下、GCN) について「概要だけ理解したい」「数式なんていらないから直感的に教えて」という方のために

  • GCN って何やってんの?
  • GCN は何に使われているの?
  • 終わりに

についてかなりざっくり書いていきたい思います

論文 https://arxiv.org/pdf/1703.06103.pdf

GCN って何やってんの?

そもそも Convolution ってなんだっけ?

よく画像系のタスクで見かける Convolution の操作、一言で言うと「画像をフィルターにかけて畳み込み、特徴量を出しましょう」というものです(詳しくは自分でググってください)。このとき、画像は以下のような格子型ネットワークとして見ることができます。

スクリーンショット 2019-12-26 23.49.12.png

GCN はこのような格子型ネットワークだけでなく、様々な形をしたネットワークの近接情報を畳み込むことでノードの特徴量を抽出するものになります。

じゃあ、どうするの?

ざっくり言うと周囲のノードの情報をたたみ込んでノードに情報を付与します。

このようなネットワークがあったとします。

スクリーンショット 2019-12-26 23.58.31.png

この時、青のノードに注目して周囲の黄色のノードを畳み込みむと緑色の隠れ層ができます。

スクリーンショット 2019-12-27 0.07.22.png

同様にその他のノードも畳み込んじゃいましょう。

スクリーンショット 2019-12-27 0.11.45.png

次に青に注目して隣接する緑ノードを畳み込んで行きましょう。

スクリーンショット 2019-12-27 0.14.15.png

隣接する黄色ノードの隠れ層(緑ノード)を参照してオレンジノードの層ができました。

これが GCN の利点になります。

隣接する緑ノードは青ノードが知り得ない灰色ノードの情報を知っています。つまり、オレンジの層は隣接しない灰色ノードの情報を知っていることになります。このように GCN は層を深くすることで隣接しない、本来なら知り得ないノードの情報を対象のノードに加えることができるのです。

GCN は何に使われているの?

以下で応用されているらしい…

  • 化学分野
  • 推薦システム
  • ノードの分類

ここら辺は自分の理解が追いついていないため、機会があればまとめたいけど今回は勘弁してください。

終わりに

ソーシャルネットワーク解析や人材評価など結構応用範囲が広そうだなぁ〜って思った。今後の動向が気になりますね。

5
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
6