在朋友的强烈建议下,写一篇关于利用CNN卷积神经网络实现基于MATLAB的手写数字识别系统的设计的博客。
一、关于卷积神经网络关于卷积神经网络我写过一篇文章单独介绍,可以参考:手写数字识别问题(3)——详解卷积神经网络LeNet-5,这里就不进行重点介绍了。
二、训练过程、准确率与GUI界面神经网络为卷积神经网络,分别是输入层、卷积层1、激活函数、池化层1、dropoutout层(主要防止过拟合)、卷积层2、激活函数、池化层2、dropoutout层(主要防止过拟合)、全连接层和输出层。 其结构参数如下图所示:
一次的训练过程如下:
经过十次训练,测试集准确率为:99.26%,说明该神经网络具有良好的准确率。
最后搭建GUI界面对数字进行识别: 原始GUI界面: 识别数字后的GUI界面:
有需要代码的可以添加微信联系(白嫖党请慎入)(备注:CNN) 如果需要关于图像处理和神经网络方面的毕业设计指导,也可以添加微信(备注:XX毕业设计)
不过最后提一句,如果你想更轻松掌握深度学习与神经网络,建议还是利用python实现,因为python的编程语法更简洁明了,无论是TensorFlow,pytorch还是Keras。 利用pytorch实现卷积神经网络Lenet-5可参考博客:卷积神经网络LeNet-5的pytorch代码实现