Создадим 2 различнные модели VAE и оценим качество генерации изображений объектов. Построим картинку с плавными переходами цифр и предметов одежды благодаря семплированию из латентного пространства.
Модели:
-
Вариационный автоэнкодер с использованием сверток (Conv2d) в энкодере (слои отвечающие за среднее и отклонение остаются полносвязными), и с развертками (Conv2dTranspose) в декодере. Размерность скрытого вектора равна двум
-
Вариационный автоэнкодер с использованием сверток (Conv2d) в энкодере (слои отвечающие за среднее и отклонение остаются полносвязными), и с развертками (Upsample, Conv2d) в декодере. Размерность скрытого вектора равна двум.
Для построения изображения постепенного перехода цифр и предметов одежды создадим сетку из N на N изображений, где по оси Х изменяется значение первого элемента z из получившегося латентного пространства, а по оси Y - второго элемента z. Построю такие сетки для каждой обученной модели
Результат при обучении на датасете MNIST:
Результат при обучении на датасете Fashion MNIST:
Решение данного проекта представлено в формате jupiter notebook:
- Датасет MNIST - digits.ipynb
- Датасет Fashion MNIST - fashion.ipynb