GAN(敵対的生成ネットワーク)の説明として、最も適切なものを1つ選びなさい。
- ①本物のデータを作る識別器と、偽物のデータを見分ける生成器を協力させながら学習させる。
- ②入力と同じものを出力するように学習し、途中の層でデータを圧縮した表現を得る方法である。
- ③偽のデータを作る生成器と、本物か偽物かを見分ける識別器を、競わせながら学習させる。
- ④データに少しずつノイズを加える過程と、それを取り除く過程を学習して画像を生成する。
答えと解説を見る
GAN(Generative Adversarial Network:敵対的生成ネットワーク)は、2014年にイアン・グッドフェローらが発表した生成モデルです。ランダムなノイズから偽のデータを作り出す「生成器(Generator)」と、入力されたデータが本物か生成器の作った偽物かを見分ける「識別器(Discriminator)」の2つのネットワークを、互いに競わせるように学習させます。識別器をだませるように生成器が上達し、それを見破れるように識別器も上達することで、最終的に本物と見分けのつかないデータを生成できるようになります。偽札を作る人と、それを見破る警察のたとえでよく説明されます。
他の選択肢が不適切な理由
・識別器が作り、生成器が見分ける:2つのネットワークの役割が逆になっています。また、協力ではなく競わせる(敵対させる)のが特徴です。
・入力と同じものを出力するように学習する:これはオートエンコーダの説明です。
・ノイズを加える過程と取り除く過程を学習する:これは拡散モデルの説明です。
覚え方のポイント
「GAN=生成器(偽札を作る人)vs 識別器(警察)」。GANの学習は不安定になりやすく、「モード崩壊」などの問題が起こりうる点もあわせて覚えましょう。