目录
注:以下内容是本人在学习GAN中的总结,由于本人能力有限,都是根据自己理解写的,可能会出现口语化严重或明显的错误,还请见谅
理论及准备
目标:给定一个种子,生成器能生成不同的数字图像
GAN主要三步:优化鉴别器的鉴别真假能力,优化生成器的造假能力(见下图)
主要思想:希望鉴别器能分辨真假,同时又希望生成器能骗过鉴别器,两者相互竞争
使用数据集:MNIST
获取地址:
训练集:https://pjreddie.com/media/files/mnist_train.csv
测试集:https://pjreddie.com/media/files/mnist_test.csv
数据加载
在这里我使用的是Dataset的方式。Dataset一般和DataLoader配合使用,在该代码中未使用到DataLoader,所以可以直接采用pandas等方式直接加载,再包装成tensor。
#创建自定义类,继承Dataset
class MnistDateSet(Dataset):
def __init__(self,img_file):
super().__init__()
#使用pan