始める無料で始める

画像を生成する

GAN の設計と学習が完了したので、生成できる画像の品質を評価していきます。まずは目視で確認し、生成結果がポケモンに見えるかどうかを確かめましょう。そのために、ジェネレーターへの入力としてランダムノイズを作成し、モデルに渡して出力をプロットします。

学習済み重みを持つ Deep Convolutional Generator は gen として利用できます。torch と、matplotlib.pyplotplt としてすでにインポート済みです。

この演習はコースの一部です

PyTorch で学ぶ画像向け Deep Learning

コースを見る

演習の手順

  • 生成する画像枚数を表す num_images_to_generate × 入力ノイズサイズ 16 の形状を持つランダムノイズのテンソルを作成し、noise に代入します。
  • ノイズをジェネレーターに渡して画像を生成し、fake に代入します。
  • for ループ内で、fake をスライスして i 番目の画像を取り出し、image_tensor に代入します。
  • image_tensor の次元を (color, height, width) から (height, width, color) に並べ替え、出力を image_tensor_permuted に代入します。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

num_images_to_generate = 5
# Create random noise tensor
noise = ____

# Generate images
with torch.no_grad():
    fake = ____
print(f"Generated tensor shape: {fake.shape}")
    
for i in range(num_images_to_generate):
    # Slice fake to select i-th image
    image_tensor = ____
    # Permute the image dimensions
    image_tensor_permuted = ____
    plt.imshow(image_tensor_permuted)
    plt.show()
コードを編集して実行