基于TensorFlow框架的手写数字识别毕业论文
2022-01-14 20:19:31
论文总字数:20048字
摘 要
手写数字识别技术,是计算机在图形学和图像识别领域当中的一个具体应用。这项技术是通过计算机处理手写阿拉伯数字图片0-9,通过神经网络和深度学习技术,使得计算机可以准确识别出0-9十个阿拉伯数字。
随着Alpha go的诞生,全世界范围内掀起了深度学习的热潮,将深度学习技术应用在手写数字识别技术上也是当今的热点技术之一。国内和国外众多学者都投入到了这项工作的研发当中。本文通过神经网络和深度学习的研究,实现了一个gui界面识别手写阿拉伯数字。主要内容如下:
1、介绍当今手写数字技术在现实生活中的应用场景,深度学习的发展历程和手写数字识别技术的发展,。
2、通过对比深度学习的框架,确定本文所用到的框架是谷歌公司开发的开源的Tensorflow框架,并结合卷积神经网络实现手写数字识别技术。
3、通过Tensorflow框架的Tensorboard功能,实现了训练数据的可视化,并且加入了混淆矩阵,查看训练错误图片等功能。
4、将实现的技术封装进gui界面中,能更真实的体验手写数字识别技术,并且达到了手写数字识别技术的要求。
关键词:手写数字识别,深度学习,卷积神经网络,Tensorflow
Handwritten digit recognition based on TensorFlow
Abstract
Handwritten digit recognition technology is a specific application of computers in the field of graphics and image recognition. This technology is used to process handwritten Arabic digital pictures 0-9, through neural network and deep learning technology, so that the computer can accurately identify 0-9 ten Arabic numerals.
With the birth of Alpha Go, the deep learning of the world has been launched, and the application of deep learning technology to handwritten digital recognition technology is also one of the hot technologies today. Many scholars at home and abroad have invested in the research and development of this work. Through the research of neural network and deep learning, this paper realizes a gui interface to recognize handwritten Arabic numerals. The main contents are as follows:
1. Introduce the application scenarios of today's handwritten digital technology in real life, the development of deep learning and the development of handwritten digital recognition technology.
2. By comparing the framework of deep learning, it is determined that the framework used in this paper is the open source Tensorflow framework developed by Google, and combined with convolutional neural network to realize handwritten digit recognition technology.
3. Through the Tensorboard function of the Tensorflow framework, the visualization of the training data is realized, and the confusion matrix is added to view the training error picture and other functions.
4. The implemented technology is encapsulated into the gui interface, which can experience the handwritten digital recognition technology more realistically and meet the requirements of handwritten digital recognition technology.
Keywords: handwritten digit recognition, deep learning, convolutional neural network, Tensorflow目录
摘要 I
Abstract II
第一章 关于手写数字识别的概论 1
1.1 本文研究意义和应用场景 1
1.2 计算机识别手写数字技术研究现状 1
1.3 卷积神经网络研究现状 2
1.4 本次实验设备介绍 3
1.5 论文结构 3
第二章 语言和框架 4
2.1 Python简介 4
2.2 Python常用库 4
2.3 Python安装 5
2.4 Tensorflow 6
2.5 Tensorflow安装 6
2.6 运行软件 6
第三章 深度学习的相关概念 7
3.1 感知器 7
3.2 神经网络 8
3.3 激活函数 8
3.4 损失函数 9
3.5 关于卷积神经网络的介绍 9
3.6 卷积神经网络工作过程 10
第四章 实验的搭建与结果 17
4.1 数据来源 17
4.2 本系统的网络结构 17
4.3 本系统的激活函数 19
4.4 输出层函数选取 19
4.5 误差函数 20
4.6 本系统神经网络代码 20
4.7 训练结果 24
4.8 封装到gui 27
4.9 识别错误的图片 27
4.10 混淆矩阵 27
4.11 卷积过程的可视化 29
4.12 程序运行结果 31
第五章 使用系统后的结论 36
参考文献 37
致谢 38
关于手写数字识别的概论
研究意义和应用场景
阿拉伯数字是我们日常生活中离不开的符号,例如:快递编码,银行表单中的数据,商品价格等。在计算机没有诞生之前,只能通过人工的方式,去识别数字,这样,虽然准确率非常高,但效率就显得不是很高,而且随着工作的时间变长,人的疲劳感就会提高,错误就在所难免。进入信息时代后,各自电子产品蜂拥而至,人们开始利用电脑,对阿拉伯数字进行识别,只需要将图片导入到计算机中,计算机就可以准确识别出数字。所以,越来越多的科学家、研究人员投入到通过高性能计算机识别阿拉伯数字,并且不断提高准确率和识别速度。
手写数字识别,对于人来说是非常简单的,因为我们可以准确地识别出一个数字的特征,并且根据这个特征,进而判断这是数字几。但对于计算机来说,这是十分困难的一件事情,在计算机中,一个数字图片就像这样,如图1.1 所示,一个一通道(黑白)的数字1,在计算机眼中就是一个二维的矩阵构成,当该位置上对应的数值越大,说明该位置笔画越重。计算机只能通过该位置的数值,来判断这是数字几。这只是一种情况的数字1,数字1还可以拉伸,旋转。这对于人来说,不论1怎么变化,总可以识别出来,但是对于计算机来说,随着图片的变化,矩阵的值也会变化,计算机就有可能识别错误。
请支付后下载全文,论文总字数:20048字