敵対性生成ネットワーク(GAN / Generative Adversarial Network)とは
イアン・グッドフェローたちによって考案されたジェネレータとディスクリミネータからなる教師なし学習のこと.
- ジェネレータ:ランダムなベクトルを入力とし,画像を生成して出力.
- ディスクリミネータ:画像を入力とし,その画像が本物か,それともジェネレータによって生成された偽物かを予測し,出力.
2種類のネットワークを 「競わせる」 ことで,新しい画像を作る.「競わせる」とは,ディスクリミネータの出力が間違えるような(=つい偽物を本物と出力してしまう)偽物の画像をジェネレータが生成する一方で,かたやディスクリミネータは騙されないように偽物を見抜ける学習をしていくということである.最終的には,本物そっくりな偽物の画像を作り出すことができる.
DCGAN(Deep Convolutional GAN)
畳み込みニューラルネットワークを利用したGANの手法.もともとGANはニューラルネットワークを用いている.
Pix2Pix
【従来のGAN】
ランダムなベクトル から生成したデータが本物かどうかを予測する手法.
【Pix2Pix】
従来のGANの手法で用いられたランダムなベクトルの代わりに,ある画像データを入力し,別の画像へ変換する手法.もとの画像データと,変換した画像のペアが本物か偽物かどうかを予測する.そのため,あらかじめペアの画像を学習のために準備しておく必要がある.
ex)) 昼の画像を夜の画像へ変換,線画をカラー画像へ変換.
Cycle GAN
Pix2Pixと比べ,予め画像のペアが不要な手法.ある画像を変換し,さらにその変換した画像を 元の画像へ戻すように 再度変換する.通常のGANの手法である本物か偽物かの判断をすると同時に,元の画像と再度変換した画像が一致するように学習する.
見るべき解説動画
数式を交えた解説動画
ハンズオンによる説明