Google Affiliate Network の構造の概要

敵対的生成ネットワーク(GAN)は 2 つの部分で構成されています。

  • 生成ツールは、信頼できるデータを生成する方法を学習します。生成されたインスタンスは、識別子のネガティブ トレーニング サンプルになります。
  • 識別器は、生成器の偽データと実際のデータを区別することを学習します。ディスкриминエータは、信頼できない結果を生成した生成機にペナルティを科します。

トレーニングが開始されると、生成器は明らかに偽のデータを生成します。識別器は、それが偽物であることをすばやく学習します。

3 つの列には「生成データ」、「識別子」、「実際のデータ」というラベルが付けられています。[生成されたデータ] の青い長方形に、波線と円が表示されます。長方形は、生成ツールが 1 ドル紙幣を描画しようとした最初の試みで、うまくいっていないことがわかります。[実際のデータ] には、実際の 10 ドル紙幣の写真が表示されます。[Discriminator] に「FAKE」と「REAL」という単語が含まれています。[FAKE] という単語から [生成データ] の下の画像に矢印が示されています。別の矢印が「リアル」という単語から「リアルデータ」の下の画像を指しています。

トレーニングが進むにつれて、生成器はディスクリミネータを欺く出力の生成に近づきます。

この画像は、前の画像の [生成データ]、[識別子]、[実際のデータ] の見出しの下に新しい行を追加しています。[生成されたデータ] の下に、左上に番号 10 と顔の簡単な描画が描かれた緑色の長方形が表示されます。[実際のデータ] には、実際の 100 ドル紙幣の写真が表示されます。[Discriminator] の下に「FAKE」という単語と、[Generated Data] の下の画像を指す矢印があります。また、「REAL」という単語と、[Real Data] の下の画像を指す矢印もあります。

最後に、ジェネレータのトレーニングがうまくいけば、弁別子は本物と偽物の違いを区別できなくなります。偽のデータが本物として分類され、精度が低下します。

この画像は、前の最初の画像の [生成データ]、[識別子]、[実際のデータ] の見出しの下に新しい行を追加しています。[生成されたデータ] に 20 ドル紙幣の写真が表示されます。[実際のデータ] に 20 ドル紙幣の写真が表示されます。[Discriminator] の下に「REAL」という単語があり、矢印が [Generated Data] の下の画像を指しています。また、[Real Data] の下の画像を指す矢印とともに「REAL」という単語があります。

システム全体の画像を以下に示します。

敵対的生成ネットワークの図。図の中央には「識別子」というラベルの付いたボックスがあります。2 つのブランチが左からこのボックスに接続されています。上位のブランチは、図の左上にある「現実世界の画像」というラベルの付いた円柱から始まります。この円柱から「サンプル」というラベルの付いたボックスに矢印が伸びています。[サンプル] というラベルの付いたボックスから [識別子] ボックスに矢印が伸びています。下側のブランチは、「ランダム入力」というラベルの付いたボックスから始まり、「識別子」ボックスにフィードされます。[ランダム入力] ボックスから [生成] というラベルの付いたボックスに矢印が伸びています。[Generator] ボックスから 2 つ目の [Sample] ボックスに矢印が伸びています。[サンプル] ボックスから [識別子] ボックスに矢印が伸びています。[識別子] ボックスの右側にある矢印は、緑色の円と赤色の円を含むボックスにつながっています。ボックスの上に「Real」という単語が緑色のテキストで表示され、ボックスの下に「False」という単語が赤色で表示されます。このボックスから図の右側にある 2 つのボックスに 2 本の矢印が伸びています。1 つの矢印は「ディスクリミネーター損失」というラベルの付いたボックスにつながっています。もう一方の矢印は、「Generator loss」というラベルの付いたボックスにつながっています。

生成器と識別器はどちらもニューラル ネットワークです。生成機の出力は、識別子入力に直接接続されます。バックプロパゲーションにより、ディスкриминレータの分類は、生成元が重みを更新するために使用するシグナルを提供します。

このシステムの構成要素について詳しく説明します。