PaddlePaddle如何用GAN生成MINIST手写数字图?

摘要:GAN 性能的提升从生成器 G 和判别器 D 进行左右互搏、交替完善的过程得到的。所以其 G 网络和 D 网络的能力应该设计得相近,复杂度也差不多。这个项目中的生成器,采用了两个全链接层接两组上采样和转置卷积层,将输入的噪声 Z 逐渐转化为
import paddle from paddle.nn import Conv2D, MaxPool2D, Linear, BatchNorm,Upsample import numpy as np import matplotlib.pyplot as plt /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages/paddle/fluid/layers/utils.py:26: DeprecationWarning: `np.int` is a deprecated alias for the builtin `int`. To silence this warning, use `int` by itself. Doing this will not modify any behavior and is safe. When replacing `np.int`, you may wish to use e.g. `np.int64` or `np.int32` to specify the precision. If you wish to review your current use, check the release note link for additional information. Deprecated in NumPy 1.20; for more details and guidance: https://numpy.org/devdocs/release/1.20.0-notes.html#deprecations def convert_to_list(value, n, name, dtype=np.int): /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages/matplotlib/__init__.py:107: DeprecationWarning: Using or importing the ABCs from 'collections' instead of from 'collections.abc' is deprecated, and in 3.8 it will stop working from collections import MutableMapping /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages/matplotlib/rcsetup.py:20: DeprecationWarning: Using or importing the ABCs from 'collections' instead of from 'collections.abc' is deprecated, and in 3.8 it will stop working from collections import Iterable, Mapping /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages/matplotlib/colors.py:53: DeprecationWarning: Using or importing the ABCs from 'collections' instead of from 'collections.abc' is deprecated, and in 3.8 it will stop working from collections import Sized train_reader = paddle.vision.datasets.MNIST(mode='train') print("训练集样本数:", len(train_reader)) print("样本形状:", np.array(train_reader[0][0]).shape) print("标签形状:", np.array(train_reader[0][1]).shape) 训练集样本数: 60000 样本形状: (28, 28) 标签形状: (1,) # 噪声维度 Z_DIM = 100 BATCH_SIZE = 128 paddle.vision.set_image_backend('cv2') mnist_generator = paddle.io.DataLoader(paddle.vision.datasets.MN
阅读全文