Генерация изображений
Теперь, когда вы разработали и обучили GAN, пришло время оценить качество генерируемых им изображений. Для начала проведём визуальный осмотр: посмотрим, насколько сгенерированные изображения похожи на покемонов. Для этого вы создадите случайный шум в качестве входных данных для генератора, передадите его в модель и отобразите результаты.
Глубокая свёрточная сеть-генератор с обученными весами доступна вам как gen. Библиотеки torch и matplotlib.pyplot уже импортированы как plt.
Это упражнение является частью курса
Глубокое обучение для работы с изображениями на PyTorch
Инструкции к упражнению
- Создайте тензор случайного шума формы
num_images_to_generate×16(размер входного шума, использованного при обучении генератора) и присвойте его переменнойnoise. - Сгенерируйте изображения, передав шум в генератор, и присвойте результат переменной
fake. - Внутри цикла for проиндексируйте
fake, чтобы извлечьi-е изображение, и присвойте его переменнойimage_tensor. - Переставьте оси
image_tensorс порядка (цвет, высота, ширина) на (высота, ширина, цвет) и присвойте результат переменной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()