DL之DCGAN(Keras框架):基于keras框架利用深度卷积对抗网络DCGAN算法对MNIST数据集实现图像生成(保存h5模型→加载模型)

简介: DL之DCGAN(Keras框架):基于keras框架利用深度卷积对抗网络DCGAN算法对MNIST数据集实现图像生成(保存h5模型→加载模型)


目录

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

设计思路

输出结果

核心代码


相关文章

DL之DCGAN(Keras框架):基于keras框架利用深度卷积对抗网络DCGAN算法对MNIST数据集实现图像生成(保存h5模型→加载模型)

DL之DCGAN(Keras框架):基于keras框架利用深度卷积对抗网络DCGAN算法对MNIST数据集实现图像生成(保存h5模型→加载模型)实现

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

设计思路

输出结果

1. X像素取值范围是[-1.0, 1.0]
2. _________________________________________________________________
3. Layer (type)                 Output Shape              Param #   
4. =================================================================
5. dense_1 (Dense)              (None, 1024)              103424
6. _________________________________________________________________
7. activation_1 (Activation)    (None, 1024)              0
8. _________________________________________________________________
9. dense_2 (Dense)              (None, 6272)              6428800
10. _________________________________________________________________
11. batch_normalization_1 (Batch (None, 6272)              25088
12. _________________________________________________________________
13. activation_2 (Activation)    (None, 6272)              0
14. _________________________________________________________________
15. reshape_1 (Reshape)          (None, 7, 7, 128)         0
16. _________________________________________________________________
17. up_sampling2d_1 (UpSampling2 (None, 14, 14, 128)       0
18. _________________________________________________________________
19. conv2d_1 (Conv2D)            (None, 14, 14, 64)        204864
20. _________________________________________________________________
21. activation_3 (Activation)    (None, 14, 14, 64)        0
22. _________________________________________________________________
23. up_sampling2d_2 (UpSampling2 (None, 28, 28, 64)        0
24. _________________________________________________________________
25. conv2d_2 (Conv2D)            (None, 28, 28, 1)         1601
26. _________________________________________________________________
27. activation_4 (Activation)    (None, 28, 28, 1)         0
28. =================================================================
29. Total params: 6,763,777
30. Trainable params: 6,751,233
31. Non-trainable params: 12,544
32. _________________________________________________________________
33. _________________________________________________________________
34. Layer (type)                 Output Shape              Param #   
35. =================================================================
36. conv2d_3 (Conv2D)            (None, 28, 28, 64)        1664
37. _________________________________________________________________
38. activation_5 (Activation)    (None, 28, 28, 64)        0
39. _________________________________________________________________
40. max_pooling2d_1 (MaxPooling2 (None, 14, 14, 64)        0
41. _________________________________________________________________
42. conv2d_4 (Conv2D)            (None, 10, 10, 128)       204928
43. _________________________________________________________________
44. activation_6 (Activation)    (None, 10, 10, 128)       0
45. _________________________________________________________________
46. max_pooling2d_2 (MaxPooling2 (None, 5, 5, 128)         0
47. _________________________________________________________________
48. flatten_1 (Flatten)          (None, 3200)              0
49. _________________________________________________________________
50. dense_3 (Dense)              (None, 1024)              3277824
51. _________________________________________________________________
52. activation_7 (Activation)    (None, 1024)              0
53. _________________________________________________________________
54. dense_4 (Dense)              (None, 1)                 1025
55. _________________________________________________________________
56. activation_8 (Activation)    (None, 1)                 0
57. =================================================================
58. Total params: 3,485,441
59. Trainable params: 3,485,441
60. Non-trainable params: 0
61. _________________________________________________________________
62. 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
63. (25, 28, 28, 1)

核心代码

1. def generator_model():
2.     model = Sequential()
3.     model.add(Dense(input_dim=100, units=1024))     #  1034  1024
4.     model.add(Activation('tanh'))
5.     model.add(Dense(128*7*7))
6.     model.add(BatchNormalization())
7.     model.add(Activation('tanh'))
8.     model.add(Reshape((7, 7, 128), input_shape=(128*7*7,)))
9.     model.add(UpSampling2D(size=(2, 2)))
10.     model.add(Conv2D(64, (5, 5), padding='same'))
11.     model.add(Activation('tanh'))
12.     model.add(UpSampling2D(size=(2, 2)))
13.     model.add(Conv2D(1, (5, 5), padding='same'))
14.     model.add(Activation('tanh'))
15. return model
16. def discriminator_model():     # 定义鉴别网络:输入一张图像,输出0(伪造)/1(真实)
17.     model = Sequential()
18.     model.add(
19.             Conv2D(64, (5, 5),
20.             padding='same',
21.             input_shape=(28, 28, 1))
22.             )
23.     model.add(Activation('tanh'))
24.     model.add(MaxPooling2D(pool_size=(2, 2)))
25.     model.add(Conv2D(128, (5, 5)))
26.     model.add(Activation('tanh'))
27.     model.add(MaxPooling2D(pool_size=(2, 2)))
28.     model.add(Flatten())
29.     model.add(Dense(1024))
30.     model.add(Activation('tanh'))
31.     model.add(Dense(1))
32.     model.add(Activation('sigmoid'))
33. return model
34. 
35. 
36. g = generator_model()
37. g.summary()
38. 
39. d = discriminator_model()
40. d.summary()


相关文章
|
3月前
|
搜索推荐 前端开发 数据可视化
【优秀python web毕设案例】基于协同过滤算法的酒店推荐系统,django框架+bootstrap前端+echarts可视化,有后台有爬虫
本文介绍了一个基于Django框架、协同过滤算法、ECharts数据可视化以及Bootstrap前端技术的酒店推荐系统,该系统通过用户行为分析和推荐算法优化,提供个性化的酒店推荐和直观的数据展示,以提升用户体验。
156 1
|
14天前
|
机器学习/深度学习 TensorFlow 算法框架/工具
利用Python和TensorFlow构建简单神经网络进行图像分类
利用Python和TensorFlow构建简单神经网络进行图像分类
39 3
|
15天前
|
机器学习/深度学习 人工智能 自动驾驶
深度学习的奇迹:如何用神经网络识别图像
【10月更文挑战第33天】在这篇文章中,我们将探索深度学习的奇妙世界,特别是卷积神经网络(CNN)在图像识别中的应用。我们将通过一个简单的代码示例,展示如何使用Python和Keras库构建一个能够识别手写数字的神经网络。这不仅是对深度学习概念的直观介绍,也是对技术实践的一次尝试。让我们一起踏上这段探索之旅,看看数据、模型和代码是如何交织在一起,创造出令人惊叹的结果。
26 0
|
26天前
|
算法
”回溯算法“框架及练习题
”回溯算法“框架及练习题
35 0
|
1月前
|
机器学习/深度学习 PyTorch API
深度学习入门:卷积神经网络 | CNN概述,图像基础知识,卷积层,池化层(超详解!!!)
深度学习入门:卷积神经网络 | CNN概述,图像基础知识,卷积层,池化层(超详解!!!)
|
2月前
|
机器学习/深度学习 自然语言处理 计算机视觉
用于图像和用于自然语言的神经网络区别
主要区别总结 数据结构:图像数据是二维像素矩阵,具有空间结构;文本数据是一维序列,具有时间结构。 网络架构:图像处理常用CNN,注重局部特征提取;自然语言处理常用RNN/LSTM/Transformer,注重序列和全局依赖。 操作单元:图像处理中的卷积核在空间上操作;自然语言处理中的注意力机制在序列上操作。
24 2
|
3月前
|
搜索推荐 前端开发 算法
基于用户画像及协同过滤算法的音乐推荐系统,采用Django框架、bootstrap前端,MySQL数据库
本文介绍了一个基于用户画像和协同过滤算法的音乐推荐系统,使用Django框架、Bootstrap前端和MySQL数据库构建,旨在为用户提供个性化的音乐推荐服务,提高推荐准确性和用户满意度。
267 7
基于用户画像及协同过滤算法的音乐推荐系统,采用Django框架、bootstrap前端,MySQL数据库
|
3月前
|
机器学习/深度学习 人工智能 编解码
【神经网络】基于对抗神经网络的图像生成是如何实现的?
对抗神经网络,尤其是生成对抗网络(GAN),在图像生成领域扮演着重要角色。它们通过一个有趣的概念——对抗训练——来实现图像的生成。以下将深入探讨GAN是如何实现基于对抗神经网络的图像生成的
37 3
|
3月前
|
数据采集 前端开发 算法
基于朴素贝叶斯算法的新闻类型预测,django框架开发,前端bootstrap,有爬虫有数据库
本文介绍了一个基于Django框架和朴素贝叶斯算法开发的新闻类型预测系统,该系统具备用户登录注册、后台管理、数据展示、新闻分类分布分析、新闻数量排名和新闻标题预测等功能,旨在提高新闻处理效率和个性化推荐服务。
|
3月前
|
测试技术 数据库
探索JSF单元测试秘籍!如何让您的应用更稳固、更高效?揭秘成功背后的测试之道!
【8月更文挑战第31天】在 JavaServer Faces(JSF)应用开发中,确保代码质量和可维护性至关重要。本文详细介绍了如何通过单元测试实现这一目标。首先,阐述了单元测试的重要性及其对应用稳定性的影响;其次,提出了提高 JSF 应用可测试性的设计建议,如避免直接访问外部资源和使用依赖注入;最后,通过一个具体的 `UserBean` 示例,展示了如何利用 JUnit 和 Mockito 框架编写有效的单元测试。通过这些方法,不仅能够确保代码质量,还能提高开发效率和降低维护成本。
53 0