1. 学ぶ
  2. /
  3. コース
  4. /
  5. PyTorch で学ぶ画像向け Deep Learning

Connected

演習

判別器(Discriminator)

ジェネレータを定義したら、次はGANを構成するために判別器を作ります。判別器はジェネレータの出力を入力として受け取り、その入力が生成データか実データかを二値で予測します。

torch.nn はすでに nn としてインポート済みです。さらに、線形層とLeakyReLU活性化を順に並べたブロックを返すカスタム関数 disc_block() も利用できます。判別器の構築ブロックとしてこれを使います。

def disc_block(in_dim, out_dim):
    return nn.Sequential(
        nn.Linear(in_dim, out_dim),
        nn.LeakyReLU(0.2)
    )

指示

100 XP
  • 適切な入力サイズで最後の判別器ブロックをモデルに追加し、出力は 256 にします。
  • 最後の判別器ブロックの後に、出力をサイズ 1 に写像する線形層を追加します。
  • __init__() で定義したSequentialブロックを通して入力画像を渡すように、forward() メソッドを定義してください。