시작하기무료로 시작하기

이미지 생성하기

이제 GAN을 설계하고 학습까지 마쳤으니, 생성되는 이미지의 품질을 평가해 볼 차례예요. 먼저 육안으로 확인해, 생성 결과가 포켓몬과 비슷해 보이는지 살펴보겠습니다. 이를 위해 생성기의 입력으로 사용할 랜덤 노이즈를 만들고, 모델에 전달한 뒤 결과를 시각화할 거예요.

학습된 가중치를 가진 Deep Convolutional Generator는 gen으로 제공됩니다. torchmatplotlib.pyplotplt는 이미 임포트되어 있어요.

이 연습은 강의의 일부입니다

PyTorch로 배우는 이미지 딥러닝

강의 보기

연습 안내

  • 생성기 학습에 사용했던 입력 노이즈 크기인 16num_images_to_generate를 사용해, 형태가 num_images_to_generate by 16인 무작위 노이즈 텐서를 만들고 noise에 할당하세요.
  • 노이즈를 생성기에 전달해 이미지를 생성하고 fake에 할당하세요.
  • for 루프 안에서 fake를 슬라이싱해 i번째 이미지를 추출하고 image_tensor에 할당하세요.
  • image_tensor의 차원을 (color, height, width)에서 (hight, 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()
코드 편집 및 실행