https://arxiv.org/abs/1411.1784
生成的图像是随机的,不可预测的,无法控制网络输出特 定的图片,生成目标不明确, 可控性不强
针对原始GAN不能生成具有特定属性的图片的问题, Mehdi Mirza等人提出了cGAN,其核心在于将属性信息y
融入生成器G和判别器D中,属性y可以是任何标签信息, 例如图像的类别、人脸图像的面部表情等。
import tensorflow as tf
from tensorflow import keras
from tensorflow.keras import layers
import matplotlib.pyplot as plt
%matplotlib inline
import numpy as np
import glob
gpu = tf.config.experimental.list_physical_devices(device_type='GPU')
tf.config.experimental.set_memory_growth(gpu[0], True)
print('Tensorflow version: {}'.format(tf.__version__))
import tensorflow.keras.datasets.mnist as mnist
(train_image, train_label), (_, _) = mnist.load_data()
train_image.shape
train_label.shape
plt.imshow(train_image[5])
train_label[:5]
train_image = train_image / 127.5 - 1
train_image = np.expand_dims(train_image, -1)