- @ThothChildren
- 2018.1.9
- PV 219
ConditionalGAN
ー 概要 ー
調整できるパラメータを持つGAN。多クラスの画像を生成する場合はクラスラベルを、MNISTを渡す場合は10個のベクトルをパラメータとして持たせる。
この章を学ぶ前に必要な知識
条件
- 与えるパラメータと対応した画像のセットを作る必要あり
効果
- 生成する数字を調整するパラメータを持てる
- 多クラスの画像生成ではパラメータを持たせることで高精度となる
ポイント
- ConditionalGANは教師ありGAN、InfoGANは教師なしGAN
解 説
ConditionalGANはランダム入力のみを与えていたGANに、
制御可能なパラメータを持たせた条件付きのGANとなっている。 | GANとは |
ConditionalGANにおいて通常と異なる部分は以下。
入力
・G (Generator)
ランダム入力+制御したいパラメータ
MNISTなら[0,0,1,0,0,0,0,0,0,0]のベクトルをノイズのベクトルの列につなげる。(この例では2を表す。出力画像は2になるはず)
・D (Discriminator)の入力
画像 + 指定したラベル画像
Gではベクトルだったが、Dの入力では画像のチャンネルを増やす。下図を参照
◆Real画像(本当のMNIST画像)
◆Fake画像(Generatorが作った画像)
上記両方とも対応する画像チャンネルの値を全て1などに設定する。
出力
・G
GANの出力と同じ
・D
GANの出力と同じ | ConditionalGANの入出力 |
2のラベルを指定した時のネットワーク例。
Discriminatorの入力を画像のチャンネルに渡す形でパラメータ(ラベル情報)を与えているが、
Convolution層はなく全てFull-connectedならベクトルを結合するだけで構わない。 |
この章を学んで新たに学べる
Comments
Reasons
知識: GANとは
近年注目されている画像等を生成するニューラルネットワークを用いた学習手法.二つのニューラルネットワークを使って片方の識別能力をあげる点が特徴.既にGANの改良系が数十種類提案されている.