shimopino / papers-challenge

Paper Reading List I have already read
30 stars 2 forks source link

[draft] Lightweight Long-Range Generative Adversarial Networks #220

Open shimopino opened 4 years ago

shimopino commented 4 years ago

論文へのリンク

[openreview.net] Lightweight Long-Range Generative Adversarial Networks

著者・所属機関

投稿日時(YYYY-MM-DD)

1. どんなもの?

Self-Attentionを使用することなく,CNN層のみで大域的な依存関係を計算することのできるモジュールを提案している.考え方としてはTransformerの分野で提案されたSynthesizerと同じようなもので,Attention重みを正規分布からランダムに初期化して学習を進めていく.

入力段階でVGG16から得られた特徴マップを導入することで,学習を安定化・高速化を達成している.

2. 先行研究と比べてどこがすごいの?

画像生成に使用されているモデルはCNNをベースに提案されており,CNNの特性上画像の大域的な依存関係を補足することが難しい.

CNNを使用してこうした依存関係を補足するために,CNN層を多く積み重ねることで受容野を広げることが考えられるが,この方法では計算コストが増大してしまったり,最適化させることが難しくなってしまう.

本研究では,受容野を動的に変化させることのできる新たなモジュールを提案している.このモジュールでは以下のように,隣接するピクセルだけではなく,中心点から離れたピクセルも計算することができる.

image

また画像生成の過程にメタ情報を追加することで,学習プロセスを安定化させ,モデルを複雑にすることなく,学習速度を改善した.

3. 技術や手法の"キモ"はどこにある?

3.1 Architecture

本研究で提案しているモデルは,StackGANのように複数のGeneratorとDiscriminatorで構成されている.

image

この構造を採用した理由として,本研究で提案しているLightWeightモジュールではGANの学習が不安定になってしまいがち出会ったためである.

また高解像度な画像を生成する際に多階層の構造にすることで,正規分布から直接画像を生成するよりも,後続のGeneratorは1つ前のGeneratorが生成した荒い画像から生成することになり,正則化の効果が発揮されることが期待されるためである.

また各Discriminatorには,各層で生成された画像の色に一貫性があるかどうかを計算するColor Consistencyモジュールを採用している.

image

3.2 Long-Range Module

本研究で提案しているLightweightモジュールは,モデルに追加の計算コストを要求しない点で優れている.

Long-range module in spatial direction

まずは空間的な観点から大域的な依存関係を計算するモジュールを考える.

このモジュールの入力は以下の図のように2つ存在しており,(1)チャンネル数x高さx幅の次元を有する特徴マップhと,(2)特徴マップと同一の高さx幅を有する,正規分布から取得した学習パラメータであるw,である.

image

空間的な依存関係を計算するために,まずは特徴マップhのチャンネル数を高さx幅の次元数をもつチャンネル数の特徴マップnに変換する.

その後,特徴マップnを2次元形状に変換し,Softmaxを計算することで相関係数αを計算している.

image

正規分布から取得した学習パラメータwにはチャンネルの次元が存在していないため,特徴マップnと同じチャンネル数になるようにwを複製したあとでアダマール積を計算する.

これで空間的にどの部分に依存関係が存在しているのか計算することができたため,もとの入力された特徴マップhに対して,得られた重みを計算することで大域的な依存関係も考慮して特徴マップを計算することができる.

Long-range module in channel-wise direction

次にチャンネル方向に対して依存関係を計算する.

このモジュールの入力は以下の図用に2つ存在しており,(1)先ほどと同様にチャンネル数x高さx幅の次元を有する特徴マップhと,(2)特徴マップと同一のチャンネル数を有する,正規分布から取得したパラメータc,である.

image

計算の流れは空間的な依存関係を計算するときと同じである.

まずは特徴マップの高さx幅の次元数を,畳み込み層を使用してチャンネル数と同じ次元に計算する.その後で特徴マップzを2次元形状に変換し,Softmaxを計算することで相関係数βを計算している.

image

あとは先程同様に,学習パラメータcに対してチャンネル数分だけパラメータを複製し,特徴マップzに対してアダマール積を計算する.

これでどのチャンネルに依存関係が存在しているのか計算することができたため,もとの入力された特徴マップhに対して,得られた重みを計算することでチャンネル次元の依存関係を考慮して特徴マップを計算することができる.

Why are the long-range dependencies important in the image generation task?

画像生成においては,あるピクセルに対して隣接しているピクセルも,離れた位置にあるピクセルに対してもどのような依存関係が存在するのか補足することが重要である.

猫の画像を生成する場合には,猫の目や足は離れた位置に存在しており,この依存関係を補足できていなければ,それぞれ全く意味のない領域にそれぞれの物体が描画され,全体としてみると意味不明な画像になってしまいがちになってしまう.

Why does the long-range module work better?

  1. CNNとの比較
    • CNNで大域的な依存関係を補足するためには受容野を拡大するか,CNN層を積み重ねる必要があるが,どちらの場合でも計算コストが増大する.
  2. Self-Attentionとの比較
    • Softmaxにより依存関係を計算するので重みの値がすべて0以上になる.この場合あるピクセルに対して,どのピクセルも大なり小なり依存関係を有することになる.
    • Lightweightモジュールでは,Softmax値ではなくアダマール積を行ったあとの重みとの積を取るので,重要ではない領域を無視することも可能となる.

3.3 metadata

本研究では,GANの学習を高速化させるために,生成する画像のカテゴリや物体の形状といったメタ情報をモデルに追加している.

これは,以下のように事前学習済みのモデルを通して得られた特徴量を入力に含めることで達成できる.

image

VGG16のようなネットワークの深い層から得られた特徴マップを使用することで,集約された空間的な情報のみを使用するにしている.これでメタ情報をそのまま使って,恒等関数のように画像生成することを防ぐことができる.

4. どうやって有効だと検証した?

各種モデルとFIDや推論時間を比較すると,以下のように本モジュールは軽量かつ高速であり,大規模なモデルと同程度のFIDに達成している.

image

image

image

image

5. 議論はあるか?