DL之DCGAN:基于keras框架利用深度卷积对抗网络DCGAN算法对MNIST数据集实现图像生成

简介: DL之DCGAN:基于keras框架利用深度卷积对抗网络DCGAN算法对MNIST数据集实现图像生成

设计思路

image.png


输出结果

X像素取值范围是[-1.0, 1.0]

_________________________________________________________________

Layer (type)                 Output Shape              Param #  

=================================================================

dense_1 (Dense)              (None, 1024)              103424    

_________________________________________________________________

activation_1 (Activation)    (None, 1024)              0        

_________________________________________________________________

dense_2 (Dense)              (None, 6272)              6428800  

_________________________________________________________________

batch_normalization_1 (Batch (None, 6272)              25088    

_________________________________________________________________

activation_2 (Activation)    (None, 6272)              0        

_________________________________________________________________

reshape_1 (Reshape)          (None, 7, 7, 128)         0        

_________________________________________________________________

up_sampling2d_1 (UpSampling2 (None, 14, 14, 128)       0        

_________________________________________________________________

conv2d_1 (Conv2D)            (None, 14, 14, 64)        204864    

_________________________________________________________________

activation_3 (Activation)    (None, 14, 14, 64)        0        

_________________________________________________________________

up_sampling2d_2 (UpSampling2 (None, 28, 28, 64)        0        

_________________________________________________________________

conv2d_2 (Conv2D)            (None, 28, 28, 1)         1601      

_________________________________________________________________

activation_4 (Activation)    (None, 28, 28, 1)         0        

=================================================================

Total params: 6,763,777

Trainable params: 6,751,233

Non-trainable params: 12,544

_________________________________________________________________

_________________________________________________________________

Layer (type)                 Output Shape              Param #  

=================================================================

conv2d_3 (Conv2D)            (None, 28, 28, 64)        1664      

_________________________________________________________________

activation_5 (Activation)    (None, 28, 28, 64)        0        

_________________________________________________________________

max_pooling2d_1 (MaxPooling2 (None, 14, 14, 64)        0        

_________________________________________________________________

conv2d_4 (Conv2D)            (None, 10, 10, 128)       204928    

_________________________________________________________________

activation_6 (Activation)    (None, 10, 10, 128)       0        

_________________________________________________________________

max_pooling2d_2 (MaxPooling2 (None, 5, 5, 128)         0        

_________________________________________________________________

flatten_1 (Flatten)          (None, 3200)              0        

_________________________________________________________________

dense_3 (Dense)              (None, 1024)              3277824  

_________________________________________________________________

activation_7 (Activation)    (None, 1024)              0        

_________________________________________________________________

dense_4 (Dense)              (None, 1)                 1025      

_________________________________________________________________

activation_8 (Activation)    (None, 1)                 0        

=================================================================

Total params: 3,485,441

Trainable params: 3,485,441

Non-trainable params: 0

_________________________________________________________________

2020-11-24 21:53:56.659897: I tensorflow/core/platform/cpu_feature_guard.cc:141] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2

(25, 28, 28, 1)


image.png


核心代码

def generator_model():

   model = Sequential()

   model.add(Dense(input_dim=100, units=1024))     #  1034  1024

   model.add(Activation('tanh'))

   model.add(Dense(128*7*7))

   model.add(BatchNormalization())

   model.add(Activation('tanh'))

   model.add(Reshape((7, 7, 128), input_shape=(128*7*7,)))

   model.add(UpSampling2D(size=(2, 2)))

   model.add(Conv2D(64, (5, 5), padding='same'))

   model.add(Activation('tanh'))

   model.add(UpSampling2D(size=(2, 2)))

   model.add(Conv2D(1, (5, 5), padding='same'))

   model.add(Activation('tanh'))

   return model

def discriminator_model():     # 定义鉴别网络:输入一张图像,输出0(伪造)/1(真实)

   model = Sequential()

   model.add(

           Conv2D(64, (5, 5),

           padding='same',

           input_shape=(28, 28, 1))

           )

   model.add(Activation('tanh'))

   model.add(MaxPooling2D(pool_size=(2, 2)))

   model.add(Conv2D(128, (5, 5)))

   model.add(Activation('tanh'))

   model.add(MaxPooling2D(pool_size=(2, 2)))

   model.add(Flatten())

   model.add(Dense(1024))

   model.add(Activation('tanh'))

   model.add(Dense(1))

   model.add(Activation('sigmoid'))

   return model

g = generator_model()

g.summary()

d = discriminator_model()

d.summary()


相关文章
|
1天前
|
机器学习/深度学习 算法 数据安全/隐私保护
基于GRU网络的MQAM调制信号检测算法matlab仿真,对比LSTM
本研究基于MATLAB 2022a,使用GRU网络对QAM调制信号进行检测。QAM是一种高效调制技术,广泛应用于现代通信系统。传统方法在复杂环境下性能下降,而GRU通过门控机制有效提取时间序列特征,实现16QAM、32QAM、64QAM、128QAM的准确检测。仿真结果显示,GRU在低SNR下表现优异,且训练速度快,参数少。核心程序包括模型预测、误检率和漏检率计算,并绘制准确率图。
78 65
基于GRU网络的MQAM调制信号检测算法matlab仿真,对比LSTM
|
13天前
|
机器学习/深度学习 人工智能 算法
基于Python深度学习的【蘑菇识别】系统~卷积神经网络+TensorFlow+图像识别+人工智能
蘑菇识别系统,本系统使用Python作为主要开发语言,基于TensorFlow搭建卷积神经网络算法,并收集了9种常见的蘑菇种类数据集【"香菇(Agaricus)", "毒鹅膏菌(Amanita)", "牛肝菌(Boletus)", "网状菌(Cortinarius)", "毒镰孢(Entoloma)", "湿孢菌(Hygrocybe)", "乳菇(Lactarius)", "红菇(Russula)", "松茸(Suillus)"】 再使用通过搭建的算法模型对数据集进行训练得到一个识别精度较高的模型,然后保存为为本地h5格式文件。最后使用Django框架搭建了一个Web网页平台可视化操作界面,
68 11
基于Python深度学习的【蘑菇识别】系统~卷积神经网络+TensorFlow+图像识别+人工智能
|
6天前
|
机器学习/深度学习 数据采集 算法
基于WOA鲸鱼优化的CNN-GRU-SAM网络时间序列回归预测算法matlab仿真
本项目基于MATLAB 2022a实现时间序列预测,采用CNN-GRU-SAM网络结构,结合鲸鱼优化算法(WOA)优化网络参数。核心代码含操作视频,运行效果无水印。算法通过卷积层提取局部特征,GRU层处理长期依赖,自注意力机制捕捉全局特征,全连接层整合输出。数据预处理后,使用WOA迭代优化,最终输出最优预测结果。
|
20小时前
|
机器学习/深度学习 算法 数据安全/隐私保护
基于机器学习的人脸识别算法matlab仿真,对比GRNN,PNN,DNN以及BP四种网络
本项目展示了人脸识别算法的运行效果(无水印),基于MATLAB2022A开发。核心程序包含详细中文注释及操作视频。理论部分介绍了广义回归神经网络(GRNN)、概率神经网络(PNN)、深度神经网络(DNN)和反向传播(BP)神经网络在人脸识别中的应用,涵盖各算法的结构特点与性能比较。
|
11天前
|
传感器 算法 物联网
基于粒子群算法的网络最优节点部署优化matlab仿真
本项目基于粒子群优化(PSO)算法,实现WSN网络节点的最优部署,以最大化节点覆盖范围。使用MATLAB2022A进行开发与测试,展示了优化后的节点分布及其覆盖范围。核心代码通过定义目标函数和约束条件,利用PSO算法迭代搜索最佳节点位置,并绘制优化结果图。PSO算法灵感源于鸟群觅食行为,适用于连续和离散空间的优化问题,在通信网络、物联网等领域有广泛应用。该算法通过模拟粒子群体智慧,高效逼近最优解,提升网络性能。
|
16天前
|
机器学习/深度学习
RT-DETR改进策略【Neck】| GSConv+Slim Neck:混合深度可分离卷积和标准卷积的轻量化网络设计
RT-DETR改进策略【Neck】| GSConv+Slim Neck:混合深度可分离卷积和标准卷积的轻量化网络设计
46 11
|
11天前
|
机器学习/深度学习 数据采集 算法
基于GWO灰狼优化的CNN-GRU-SAM网络时间序列回归预测算法matlab仿真
本项目基于MATLAB2022a,展示了时间序列预测算法的运行效果(无水印)。核心程序包含详细中文注释和操作视频。算法采用CNN-GRU-SAM网络,结合灰狼优化(GWO),通过卷积层提取局部特征、GRU处理长期依赖、自注意力机制捕捉全局特征,最终实现复杂非线性时间序列的高效预测。
|
10天前
|
算法 数据安全/隐私保护 计算机视觉
基于FPGA的图像双线性插值算法verilog实现,包括tb测试文件和MATLAB辅助验证
本项目展示了256×256图像通过双线性插值放大至512×512的效果,无水印展示。使用Matlab 2022a和Vivado 2019.2开发,提供完整代码及详细中文注释、操作视频。核心程序实现图像缩放,并在Matlab中验证效果。双线性插值算法通过FPGA高效实现图像缩放,确保质量。
|
1月前
|
算法 数据安全/隐私保护 计算机视觉
基于Retinex算法的图像去雾matlab仿真
本项目展示了基于Retinex算法的图像去雾技术。完整程序运行效果无水印,使用Matlab2022a开发。核心代码包含详细中文注释和操作步骤视频。Retinex理论由Edwin Land提出,旨在分离图像的光照和反射分量,增强图像对比度、颜色和细节,尤其在雾天条件下表现优异,有效解决图像去雾问题。
|
6天前
|
算法
基于遗传优化算法的风力机位置布局matlab仿真
本项目基于遗传优化算法(GA)进行风力机位置布局的MATLAB仿真,旨在最大化风场发电效率。使用MATLAB2022A版本运行,核心代码通过迭代选择、交叉、变异等操作优化风力机布局。输出包括优化收敛曲线和最佳布局图。遗传算法模拟生物进化机制,通过初始化、选择、交叉、变异和精英保留等步骤,在复杂约束条件下找到最优布局方案,提升风场整体能源产出效率。

热门文章

最新文章