毕业设计之「测试实验及结果分析」(一)

人盡茶涼 提交于 2021-01-05 23:50:36

阅读本文大概需要 18 分钟。



前言


在毕设系列推文的第二章中我们详细介绍了TensorFlow的一些基础知识(TensorFlow 2.0 概述);在第三章(毕业设计之「神经网络与深度学习概述」 (一)毕业设计之「神经网络与深度学习概述」(二))中对神经网络与深度学习做了简单的概述(主要介绍本章节中完成两个项目所用的一些基础概念)包括激活函数、梯度下降、损失函数、softmax算法等;并且通过简单描述全连接神经网络的不足,详细介绍了卷积神经网络的相关概念。


有了前面几章的基础知识,在本章中,我们会在此基础上介绍两个相关的例子(在此之前会对4.1节中对所用卷积神经网络AlexNet进行详尽的描述):其中包括利用AlexNet完成MNIST手写字的训练和识别(本文所涉及内容)以及毕业设计之「测试实验及结果分析」(二)


第一个例子是论文中要求指定完成的例子;第二个例子是为了丰富论文成果通过Python爬虫技术收集数据样本集(包括测试集图片和训练集图片,共计3762张图片)、通过搭建AlexNet标准网络结构模型进行训练,并通过测试集图片进行最终结果分析而特别引入的。



图解AlexNet网络结构



MNIST手写字训练和识别

import TensorFlow as tf
mnist = tf.keras.datasets.mnist
(x_train, y_train),(x_test, y_test) = mnist.load_data()
x_train, x_test = x_train.reshape(-1,28,28,1) / 255.0, x_test.reshape(-1,28,28,1) / 255.0

# 毕业设计参数要求:卷积层3层、池化层3层、Relu3层,全连接层1层,连接单元数1024
model = tf.keras.models.Sequential([
tf.keras.layers.Conv2D(input_shape = (28,28,1),filters = 32,kernel_size = 5,strides = 1,padding = "same",activation = "relu"), # 28*28
tf.keras.layers.MaxPool2D(pool_size = 2,strides = 2,padding = 'same'), # 14*14

tf.keras.layers.Conv2D(64,5,strides=1,padding='same',activation='relu'), # 14*14
tf.keras.layers.MaxPool2D(2,2,'same'), # 7*7

tf.keras.layers.Conv2D(64,5,strides=1,padding='same',activation='relu'), # 7*7
tf.keras.layers.MaxPool2D(2,2,'same'), # 3*3

tf.keras.layers.Flatten(), # 64*3*3

tf.keras.layers.Dense(1024,activation='relu'),

tf.keras.layers.Dropout(0.5),
tf.keras.layers.Dense(10,activation = 'softmax'),
])
model.compile(optimizer='adam', loss='sparse_categorical_crossentropy',metrics=['accuracy'])
model.fit(x_train, y_train, batch_size=32,epochs=5)


4.11 卷积神经网络模型图

4.12 识别率展示图





- End -


  往期推荐 
🔗
毕设推文


  1. TensorFlow环境搭建

  2. 毕业设计(基于TensorFlow的深度学习与研究)之文献翻译篇

  3. TensorFlow 2.0 概述

  4. 毕业设计(基于TensorFlow的深度学习与研究)之核心篇CNN-AlexNet详解

  5. 毕业设计之「神经网络与深度学习概述」 (一)

  6. 毕业设计之「神经网络与深度学习概述」(二)

  7. 毕业设计之「测试实验及结果分析」(二)

  8. 毕业设计(基于Tensorflow的深度研究与实现)之番外篇

  9. 毕业设计(基于TensorFlow的深度学习与研究)之完结篇

  10. 【东拼西凑】毕业设计之论文查重篇



本站文章搜索推荐






长按关注





本文分享自微信公众号 - hahaCoder(hahaCoder)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!