登录

  • 登录
  • 忘记密码?点击找回

注册

  • 获取手机验证码 60
  • 注册

找回密码

  • 获取手机验证码60
  • 找回
毕业论文网 > 文献综述 > 电子信息类 > 电子信息工程 > 正文

基于TensorFlow的手写数字识别文献综述

 2020-05-04 21:18:19  

1.目的及意义

图像识别是通过计算机对图像信息进行处理,理解图像的内容,以达到分类识别的效果,对图像进行精确识别。手写数字识别是图像识别学科下的一个分支,它是利用计算机智能的识别书写在纸张上的数字,它作为光学字符识别技术的一个分支,是模式识别学科的一个传统研究领域。主要研究如何利用电子计算机自动辨认手写在纸张上的阿拉伯数字。手写数字识别分为脱机手写数字识别和联机手写数字识别。手写数字因为其简单性和广泛应用,对它的研究有着重要的价值。具体体现在:(1)阿拉伯数字是世界通用的符号:手写数字识别的研究与文化背景无关,方便研究之间的比较和讨论;(2)手写数字应用广泛:邮政、银行、金融等行业需要大量处理手写数字信息,手写数字是被能够帮助节省人力物力,提高办公效率;(3)帮助验证新理论:手写数字类别少,识别过程相对简单,能够帮助快速的验证新的理论和更加深入研究理论;(4)手写数字识别的方法很容易推广到其他的相关问题。随着金融市场化进程的日益加快,票据业务不断发展,票据数量与日俱增。 手写数字识别在这个领域应用非常广泛,例如个人凭证、支票、发票、进账单等需要处理大量字符信息录入的票据,在很大程度上要依赖数据信息的输入。 长期以来,票据管理工作因管理手段落后,各类票据的打印、整理、装订和归档需要花费大量的人力和物力,同时各类票据凭证的事后监督与归档的分离也浪费了大量的人力和物力。 如果能通过手写数字识别技术实现信息的自动录入,无疑大大有利于解决传统的人工处理方式中存在的工作量大、成本高、效率低、时效性差等问题。本文主要利用 Google 的第二代人工智能平台 TensorFlow,采用著名的“MNIST数据集”实现手写数字图片的识别。其中,TensorFlow是一个采用数据流图,用于数值计算的开源软件库。

国内对手写数字的研究起步比较晚,并且主要集中在对特定场景的研究上。中科院自动化研究采用有限状态自动机识别手写体数字,达到 95.2% 的正确率;清华大学针对金融票据中的手写数字,采用支持向量机的方式,在 20000 个测试样本上达到 92% 的正确率;上海交通大学选用人工神经网络作为分类器,对 6000 个样本进行测试,达到 97.58% 的正确率。国外研究起步比较早,主要集中在理论研究上。1962 年,Hubel 和 Wiesel 研究猫视觉结构,提出视觉结构模型和感受野的概念。1969 年,Marvin Minsky 和 Seymour Papert 研究指出只有一层隐含层的神经网络具有任意的表达能力,即能够分离任意数据。1974 年,Paul Werbos 提出反向传播算法,让神经网络的训练变得可能,神经网络研究进入热潮。到了 90年代,由于神经网络计算开销非常大,人工神经网络的研究陷入低谷,随着计算机计算能力不断发展和数据量的积累,近几年在图像分类中最突出的工作都是利用人工神经网络完成的。

{title}

2. 研究的基本内容与方案

{title}

本次毕业设计是在TensorFlow平台上实现的。TensorFlow是谷歌的第二代人工智能系统,一个开源的机器学习软件资源库。 本次毕业设计采用的数据库就是著名的“MINST数据集”。MINST数据集由由训练集、 验证集和测试集三部分构成,其中训练集有 55000 个样本,验证集有 5000 个样本, 测试集有 10000 个样本。 每一个样本都有它对应的 标签信息(label),用来描述样本表示的数字。 训练集用来训练模型,然后在验证集上检验效果,决定何时完成训练,最后在测试集上测试模型的准确率。 MNIST 样本描述的是一个 28×28 像素的灰度图片, 可用一个长度 784 的数组来表示一张图片。 图片样本的这种方式丢弃了图片二位结构的信息, 但由于分类任务比较简单,这种数据简化,可以选 择比较简单的分类算法实现模型。 训练样本的数据特征是一个 55000×784 的 Tensor。 第一维是图片编号,第二维是对应图片的像 素点,其值表示某个像素点的灰度值。 训练样本的 标签是一个 55000×10 的 Tensor,用来描述每个样本 图片代表的数字, 每个样本的 label 是一个 10 维向 量,只有 1 个值为 1,其余为 0,那个数字,其样本图 片的 label 向量对应位置为 1,其余为 0。 例如数字 0 的样本 label 就是[1,0,0,0,0,0,0,0,0,0]。由于 MNIST 数据集所有样本描述的数字图片 值为 0-9,所有样本就分为 10 类,即 0,1,2,3,4,5, 6,7,8,9, 手写数字图像识别问题就是计算测试集 中第 i 样本是数字 j(j=0,1,…9)的概率问题,基本以 上特点,可采用 softmax 回归算法实现。

Softmax 回归是 Logistic 回归的一般化, 将只能 够解决二分类问题的 Logistic 回归扩展至能够解决多分类问题。Softmax回归更适合类别间是互斥的,比如字符识别等。Softmax代价函数与logistic 代价函数在形式上非常类似,只是在Softmax损失函数中对类标记的 个可能值进行了累加。

我们总体实现手写数字识别的过程如下:首先载入 TensorFlow 库, 创建一个新的 InteractiveSession,然后创建一个 Placeholder,即输 入数据的地方,Placeholder 的第一个参数是数据类 型,第二个参数[None,784]代表 tensor 的 shape,也 就是数据的尺寸,None 代表不限条数的输入,784 代表每条输入时一个 784 维的向量。创建 Softmax 回归模型的 weights 和 biases 的 Variable 对象。之后训练模型, 定义、计算损失函数。 损失函数描述模型对 问题的分类精度。 损失越小,代表模型的分类结果 与真实值的偏差越小,模型越精确。 初始时将模型 参数全部设置为零, 随着训练loss 值不断减小,直到达到一个全局最优或局部最优解。定义优化算法,采用随机梯度下降。迭代执行训练操作。 每次随机抽取 100 条样 本构成一个 mini-batch,并 feed 给 placeholder,然后 调用 train_step 对样本训练。训练完成后,需要测试模型的准确率。 tf.argmax 是从 tensor 中寻找最大值得序号,tfargmax(y,1)就是 求各个预测的数字总的概率最大的那个,tf.argmax (y_,1)则是寻找样本的真是数字类别。tf.equal 方法则 用来判断预测数字类别是否就是正确类别,最后返 回计算分类是否正确操作。我们毕业设计的目标就是确保我们所构建的手写数字识别模型的正确率达到96%以上。

3. 参考文献

[1]Abadi M, Agarwal A, Barham P, et al. TensorFlow: Large-Scale Machine Learning on Heterogeneous Distributed Systems[J]. 2016.

[2] 胡迪雨 .手写体数字识别方法的应用与研究 [D].南 昌:南 昌大 学 ,2012

[3] Kumar A. Handwritten Digit Recognition Using Deep Learning[J]. 2017.

[4] 杜俊. 基于TensorFlow手写数字识别模型设计与实现[J]. 甘肃科技, 2017, 33(21):14-16.

剩余内容已隐藏,您需要先支付 10元 才能查看该篇文章全部内容!立即支付

企业微信

Copyright © 2010-2022 毕业论文网 站点地图