- 「Conditional GAN(条件付きGAN)」について学びたいけど理解できるか不安・・・
- 「Conditional GAN(条件付きGAN)」についてどこから学んでいいか分からない?
- 「Conditional GAN(条件付きGAN)」を体系的に教えて!
「Conditional GAN(条件付きGAN)」は、画像生成時に条件パラメータを与え、生成したい画像のクラスを指定できる技術ですが、興味があっても難しそうで勉強のやる気を失うケースは非常に多いです。
私は過去に基本情報技術者試験(旧:第二種情報処理技術者試験)に合格し、また2年程前に「一般社団法人 日本ディープラーニング協会」が主催の「G検定試験」に合格合格しました。現在、「E資格」にチャレンジ中ですが3回不合格になり、この経験から学習の要点について学ぶ機会がありました。
そこでこの記事では、「Conditional GAN」のポイントについて例題を参考に解説します。
この記事を参考に「Conditional GAN」のポイントが理解できれば、E資格に合格できるはずです。
<<「Conditional GAN」のポイントを今すぐ見たい方はこちら
目次
1.Conditional GANの概要
Conditional GANの特徴
- 初期のGAN(DCGAN等)ではMNISTで「6」だけを指定して生成することはできない。
- Generatorにもラベルを用いる。
条件ラベルには画像や説明文も扱える。
条件ラベルを入力を用いる方法の1つにEmbedding層の利用が考えられる。
Embedding:IDから、そのトークンを表す分散表現ベクトルに変換 - Discriminatorは入力サンプルが本物でもラベルを一致しなければ拒絶するよう学習させる。
2.問題1
敵対的生成ネットワーク(GAN)の一種である条件付き敵対的生成ネットワーク(Conditional GAN、CGAN)について正しいものを選べ。
- (a) Conditional GANは、画像生成時に与えられる潜在変数に制約条件を加えることで、従来のGANよりも生成したい画像の質を向上することができる。
- (b) Conditional GANは、画像生成時に条件パラメータを与え、生成したい画像のクラスを指定できる一方で、従来のGANでは生成する画像のクラスは指定できない。
- (c) Conditional GANも従来のGANと同様に、Discriminatorが処理するタスクはGeneratorにより生成された画像かそうでないかを識別する分類問題である。
- (d) Conditional GANは、画像生成時に条件パラメータを与えることで、従来のGANよりも生成したい画像の解像度を向上することができる。
正解 (b)
- Conditional GAN(CGAN)
・GANの生成したいデータに条件(タグ、ラベル名、画像、説明文)を付ける。
・条件はラベルで指定→「犬」という条件で、犬の画像を生成する。
・条件ラベルを入力に用いる方法の1つにEmbedding層の利用が考えられる。
・基本的なネットワークはGANと同様 - 各プレイヤーの役割(条件ラベルyの場合)
・Generator:yの画像を生成(ラベルを用いる)
・Discriminator:以下のように識別(画像とラベルのペア)
-(Gが生成した犬の画像G(z|y)、yラベル)→ Fake
-(Gが生成した犬の画像G(z|y)、y以外のラベル)→ Fake
-(真のラベル yの画像x、yラベル)→ Real
-(真のラベル yの画像x、y以外のラベル)→ Fake
3.問題2
Conditional GANのネットワークとして正しいものを選べ。
ただし、ネットワークはDiscriminatorの学習時のものとする。
G:Generator
D:Discriminator
X:真の画像
Y:条件パラメータ
Z:潜在変数

正解(a)
Conditional GANのネットワーク

4.Reference
- GANの提案論文
Goodfellow,Ian J.et al.”Generative Adversarial Nets.”NIPS(2014). - Conditional GANの提案論文
Mirza,Mehdi and Simon Osindero.”Conditional Generative
Adversarial Nets.”ArXiv abs/1411.1784(2014):n.pag.
5.まとめ
最後まで読んで頂きありがとうございます。
皆様のキャリアアップを応援しています!!
コメント