1
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

GAN(Generative Adversarial Network)アルゴリズム備忘録

GANに使用する深層学習器の解説

②Discriminator (識別器)
MLPなど通常の深層学習の識別器です。
画像の識別にはCNNなどが使用されることが多いです。

②Generator (生成器)
ランダムな入力データに対して、目的の特徴量(猫の画像を出力させたいなら猫の画像)を出力するように学習する生成器です。
GANにより、Generatorの重みを更新することで、目的の特徴量を持つデータを出力することができるようになります。
一度目の出力では、入力データとGeneratorのニューロンの重みはランダムなのでランダムな値が出力されます。

GANの学習アルゴリズム

①:Discriminatorの学習
「訓練データ」(例:猫の画像)と「Generatorの出力データ」を識別するDiscriminatorを学習させます。

■入力データ:訓練データ(例:猫の画像)とGeneratorの出力データ
■MLP(通常の深層学習識別器、画像データを扱うならばCNNを使用することが多い)
■出力データ:訓練データならば「1」、Generatorの出力データならば「0」

②:Generatorの学習
■入力データ:ランダムな値
■Generator(重みを更新する)
■Discriminator(重みを更新しない)
■出力データ:「Generatorによって生成されたデータ」がDiscriminatorによって、「訓練データ」もしくは「Generatorによって生成されたデータ」に識別された結果
■教師データ:すべて訓練データのラベル(今回の場合は「1」)と設定する

③:①②を繰り返し行います。
 ②により、Generatorの出力する特徴量の精度が向上します。その結果、Discriminatorの訓練データとGeneratorの出力データの識別精度が向上します。

GANの実装

ランダムな値をGANの入力データとするとDiscriminatorの訓練データの特徴量を持つ値が出力されます。
■入力データ:ランダムな値
■GAN
■出力データ:Discriminatorの訓練データの特徴量を持つ値(例:猫の画像)

結果

Generatorは、訓練データと同じ特徴量を持つデータを出力する生成器となります。
例:訓練データが猫の画像ならば、Generatorによって生成されるデータは猫の画像となります。)

参考文献

[1]岡谷貴之,深層学習,2015 講談社サイエンティフィク, 講談社.

[2]GOODFELLOW , Ian , et al . Generative adversarial nets . In: Advances in neural
information processing systems. 2014. 2672-2680.

1
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?