本文共 668 字,大约阅读时间需要 2 分钟。
生成器在GAN中生成虚假图片的过程如下:
噪声输入:生成器首先接受一批随机噪声,这些噪声来自正态分布,形状为(batch_size, 100)。在代码中,batch_size通常设置为128,这意味着每次生成128张独立的虚假图片。
生成过程:噪声数据通过一个全连接的生成器网络转换。生成器网络由多个隐藏层组成,每层都有激活函数(如LeakyReLU),以模拟真实神经网络的非线性变换。最终,生成器将噪声数据转换为形状为(batch_size,784)的虚假数字图片。784对应于28x28的尺寸,即一张标准的手写数字图像大小。
输出处理:生成器输出的是虚假图片的数字形式,通常是一个一维的数组。为了可视化,需要将这个一维数组转换为二维的图片矩阵。例如,将784维的数据按照行转换为28x28的矩阵,然后使用Matplotlib等库进行显示。
批量大小调整:为了更直观地查看生成的虚假图片,可以将批量大小设置为1。这使得fake_images
变为一个784维的数据点,随后将其转换为28x28的二维数组,便于使用imshow
函数显示图像。
真实图片与虚假图片对比:真实图片通常也是从训练集中随机抽取一批,形状与虚假图片一致(如(128,784))。这意味着每次生成的虚假图片和真实图片都是128张独立的28x28图片,方便对比生成器的性能进步。
总结:生成器通过将噪声数据转换为一维数字后,再通过激活函数和隐藏层生成符合原始数据分布的一维数字,最终的虚假图片通过特定的转换和显示函数呈现为解析后的数字图像,从而实现了生成虚假图片的功能。
转载地址:http://uuoez.baihongyu.com/