サーベイ論文の確認と追加調査⑦(Graph AutoEncoders)|Graph Neural Networkの研究を俯瞰する #7

f:id:lib-arts:20200209171324p:plain

グラフ理論やCNNをグラフ理論に応用したグラフ畳み込みネットワークについては下記で以前に簡単に取り扱いました。

ベースライン論文におけるGraphのCNN学習アルゴリズム|ベースから理解するGraph Convolutional Networks #2 - Liberal Art’s diary

もう少し俯瞰的に取り扱えればということで簡単に調べてみたのですが、2019年のサーベイ論文を見つけましたのでこちらを読み進めつつ必要に応じて追加調査を行えればと思います。

[1901.00596] A Comprehensive Survey on Graph Neural Networks

#1ではAbstractについて、#2ではIntroductionについて、#3ではBackground & Definition(Section2)について、#4ではCategorization and Frameworks(Section3)について、#5ではRecurrent graph neural networksについて、#6ではConvolutional Graph Neural Networksについて取り扱いました。

サーベイ論文の確認と追加調査②(Introduction)|Graph Neural Networkの研究を俯瞰する #2 - Liberal Art’s diary

サーベイ論文の確認と追加調査③(Background & Definition)|Graph Neural Networkの研究を俯瞰する #3 - Liberal Art’s diary

サーベイ論文の確認と追加調査④(Categorization and Frameworks)|Graph Neural Networkの研究を俯瞰する #4 - Liberal Art’s diary

#7ではSection6のGraph AutoEncodersについて取り扱っていきます。
以下目次になります。
1. Graph AutoEncoders(Section6)
1-1. Network Embedding(Section6-A)
1-2. Graph Generation(Section6-B)
2. まとめ


1. Graph AutoEncoders(Section6)
1節ではSectio6のGraph AutoEncodersについて取り扱います。

f:id:lib-arts:20200217205340p:plain

冒頭部では、GAEs(Graph AutoEncoders)の概要として、ノード群を潜在的な特徴量空間(latent feature space)に写像する深層ニューラルネットワークの構造で(encoder)、潜在表現(latent representation)からdecodeしてグラフの情報を得るとされています。GAEsはnetwork embedingの学習や新しいグラフの生成に用いることができるとされており、Network EmbeddingがSection6-A、Graph GenerationがSection6-Bで記述されています。そのため、Network Embeddingを1-1節、Graph Generationを1-2節でそれぞれ取り扱います。


1-1. Network Embedding(Section6-A)
1-1節ではSection6-AのNetwork Embeddingについて取り扱います。

f:id:lib-arts:20200217210234p:plain

第一パラグラフでは、Network Embeddingの概要として、nodeの位相的な(topological)情報を保存する低次元のベクトル表現(low-dimensional vector representation)であると述べています。また、encoderがベクトル表現をグラフから抽出し、decoderでは反対にベクトル表現からグラフを生成するとされています。

f:id:lib-arts:20200217211142p:plain

f:id:lib-arts:20200217211202p:plain

第二パラグラフでは、初期の研究としてはMLP(Multi Layer Perceptron)を用いていたことに触れ、また研究例としてDNGR(Deep Neural Network for Graph Representation)やSDNE(Structural Deep Network Embedding)について紹介されています。SDNEは学習にあたって二つの誤差関数(loss)を定義しており、数式(29)でL_{1st}、数式(30)でL_{2nd}が紹介されています。

f:id:lib-arts:20200217212113p:plain

第三パラグラフでは、DNGRやSDNEについて触れた後にGAE*についても触れられています。GAE*は二つのグラフ畳み込み層(graph convolutional layers)で構成されているとされています。以降の内容については省略します。


1-2. Graph Generation(Section6-B)
1-2節ではSection6-BのGraph Generationについて取り扱います。

f:id:lib-arts:20200217212829p:plain

第一パラグラフでは話の導入として、GAEsはグラフを隠れ層の表現(hidden representations)にエンコードし、そこからグラフの構造にデコードすることでグラフの生成分布を学習させるとしています。GAEsを用いたグラフの生成(graph generation)は創薬(drug discovery)などにおける分子のグラフ生成の問題を解くことに応用できるとされています。また、アプローチとしてsequential mannerとglobal mannerの二つが紹介されています。

f:id:lib-arts:20200218162823p:plain

f:id:lib-arts:20200218162839p:plain

第二パラグラフでは、逐次的アプローチ(Sequential approaches)についてまとめられています。具体的な研究例としてDeepGMG(Deep Generative Model of Graphs)について紹介されており、数式(37)のように順番にnodeやedgeを追加していくことについて記述されています。

f:id:lib-arts:20200218163335p:plain
(中略)

f:id:lib-arts:20200218163357p:plain

第三パラグラフでは、グラフを一度に生成する大域的アプローチ(Global approaches)についてまとめられています。具体的な研究例としてGraphVAE(Graph Variational Autoencoder)について紹介されており、数式(38)を最適化してパラメータを求めるとされています。

f:id:lib-arts:20200218163632p:plain

第四パラグラフでは、逐次的アプローチ(Sequential approaches)と大域的アプローチ(Global approaches)についての比較をまとめています。逐次的アプローチではサイクルの存在によって構造的な情報が失われる可能性について、大域的アプローチでは大規模処理に適用しづらいという点について指摘されています。


2. まとめ
#7ではSection6のGraph AutoEncodersについて取り扱いました。
#8では引き続きSection7のSpatial-temporal graph neural networksについて取り扱います。