オムライスの備忘録

数学・統計学・機械学習・プログラミングに関することを記す

【深層学習】Style GAN 2 #アルゴリズム編

Index

Style GAN 2

深層学習を用いた生成アルゴリズム GAN の応用手法.

画像生成の精度に対する改善手法.

Style GAN の改善.

上記の点を改善することで、潜在変数の情報から適切な情報を画像にマッピングする.

さらに、「画像の品質の向上」と「画像空間から潜在空間へ Generator の 反転」のために、Path Length Regularizer を導入する.

Style GAN の課題

Water Droplets

水滴 (Water Droplets) のような特徴的なブロブ型の人工物が、出現してしまう.

Normalization の変更

各特徴マップの平均と分散を個別に正規化する AdaIN の内容を変更する.

AdaIN

 AdaIN(x_{i},\ y)\ =\ y_{s,\ i}\ \displaystyle \frac{x_{i}\ -\ \mu(x_{i})}{\sigma (x_{i})}\ +\ y_{b,\ i}



AdaIN の処理は、以下のように分割できる.

  1. 特徴マップ  x を自身の統計量  \mu(x),\ \sigma(x) を利用して正規化する. / Normalization
  2. スタイル情報  y を用いて、線形変換を行うことで、スタイル情報を追加する. / Modulation

Generator の Architecture

新しい正規化をよりシンプルにするために、Generator の Architecture を改善する.



まず、元の Style GAN の Generator の Synthesis Network を確認する.



(b) では、CNN で利用している Weight / Bias パラメータを示している.

さらに、スタイルの情報が加わるかたまりを Style Block として考える.



まず、一つ目の考えの変更を行う.

「Bias パラメータ」と「ノイズ」をStyle Block から除いて考える.



2 つ目の変更は、正規化に平均の情報をを使わずに、標準偏差の情報だけを使う.
(標準偏差で除算を行う.)

Normalization の変更

調整した Style Bock (c) は、以下の処理で構成されていた.

  • スタイル情報を用いた線形変換 / Modulation (=元 AdaIN)
  • Convolution
  • Normalization

そして、「スタイル情報を用いた線形変換 / Modulation (=元 AdaIN)」では、平均の情報を使わないので、 以下のように変更されることになる.

 NewAdaIN(x_{i},\ y)\ =\ y_{s,\ i}\ \displaystyle \frac{x_{i}}{\sigma (x_{i})}\ +\ y_{b,\ i}



おおっと、 y_b は消しておこう.

 NewAdaIN(x_{i},\ y)\ =\ y_{s,\ i}\ \displaystyle \frac{x_{i}}{\sigma (x_{i})}



スタイル情報の線形変換と正規化の処理の順番を考えよう.

 NewAdaIN(x_{i},\ y)\ =\ y_{s,\ i}\ x_{i}\ \displaystyle \frac{1}{\sigma (x_{i})}



今までの処理に、CNN の重みを巻き込む.

新しい処理は、以下のように

変数紹介

  •  w_{i\ j\ k} : CNN で利用する学習パラメータ
  •  w^{\prime}_{i\ j\ k} : CNN で利用するパラメータにあらかじめスタイルの情報いれておく
  •  s_{i} : スタイル情報 (今までの  y_{s})


 w^{\prime}_{i\ j\ k}\ =\ s_{i}\ \cdot\ w_{i\ j\ k}



次は、正規化.

入力が標準正規分布に従っていると仮定すると、 出力の標準偏差は、重みのL2ノルムになる.

 \sigma_{j}\ =\ \displaystyle \sqrt{\sum_{i,\ k} {w^{\prime}_{i\ j\ k}}^{2}}


 w^{\prime \prime}\ =\ \displaystyle \frac{w^{\prime}_{i\ j\ k}}{\sqrt{\sum_{i,\ k} {w^{\prime}_{i\ j\ k}}^{2} + \epsilon}}



生成画像の品質の向上

Path Length Regularization

Progressive Growing の改善

参考

  • Analyzing and Improving the Image Quality of StyleGAN
    • [2019]
    • Abstract
    • 2 Removing normalization artifacts
      • 2.1 Generator architecture revisited
      • 2.2 Instance normalization revisited
    • 3 Image quality and generator smoothness
      • 3.2 Path length regularization
    • 4 Progressive growing revisited
    • 5 Projection of images to latent space
    • arxiv.org

Web サイト