APP下载

基于卷积神经网络的手写数字识别应用

2021-04-18翟高粤

甘肃科技纵横 2021年1期
关键词:卷积神经网络深度学习

翟高粤

摘要:数字识别(Digit Recognition),是计算机从纸质文档,照片,或其他来源接收和理解并识别可读的数字的能力。根据数字来源的產生方式的不同,目前数字识别问题可以区分为手写体数字识别,印刷体数字识别,光学数字识别,自然场景下的数字识别等,具有很大的实际应用价值。目前比较受到关注的问题主要是手写体数字识别,由于其具有MNIST这种大型标准易用的成熟数据集,简单的0-9数字识别已经被作为计算机视觉领域的入门问题。介绍手写数字识别的特点和应用,并指出传统研究方法及其不足之处;然后引入深度学习的概念,以卷积神经网络为例,详细介绍卷积神经网络的关键技术特点,最后通过一个实例说明卷积神经网络在手写数字识别方面的应用。

关键词:MNIST;深度学习;卷积神经网络;手写数字

中图分类号:TP183 文献标志码:A

0引言

目前,利用计算机进行手写数字识别应用广泛,它是人类与计算机进行交互的一种方法。现在已经有多种方法进行手写数字识别,识别方法的性能通常取决于一些属性,如数字的大小、书写风格和识别率。手写数字识别的主要挑战之一是个人笔迹风格(即数字尺寸和风格)的不一致性,以及收集笔迹的设备类型,因此需要有一个能够自动识别高识别率的手写模式的系统。在过去的手写体数字识别中,提出了许多识别方法,比如基于反向传播神经网络的数字识别方法、贝叶斯分类器的进化策略和梯度下降方法。本论述通过使用深度学习卷积神经网络技术,可以降低手写数字的分类错误数量,并减少完成识别所花费的时间。

1深度学习简介

加拿大多伦多大学教授Geoffrey Hinton长期坚持神经网络的研究,但由于当时支持向量机的流行,神经网络相关的研究工作遇到了重重阻碍。2006年,Geof-frey Hinton提出了一种逐层预训练的算法,可以有效地初始化Deep BeliefNetworks(DBN)网络,从而使得训练大规模、深层数(上百万的参数量)的神经网络成为可能。在论文中,Geoffrey Hinton把深层的神经网络叫做Deep Neural Network,这一块的研究也因此称为Deep karning(深度学习)。本论述将讨论深度学习的典型网络一卷积神经网络,这也是层数可以轻松达到上百层的一类神经网络。

2卷积神经网络简介

2.1卷积神经网络的特点

卷积神经网络作为深度学习的一个典型网络,通过充分利用局部相关性和权值共享的思想,大大地减少了网络的参数量,从而提高训练效率,更容易实现超大规模的深层网络。2012年,加拿大多伦多大学Al-ex Krizhevskv将深层卷积神经网络应用在大规模图片识别挑战赛ILsvRc 2012上,在ImageNet数据集上取得了15.3%的Top-5错误率,排名第一,相对于第二名在Top-5错误率上降低了10.9%。这一巨大突破引起了业界强烈关注,卷积神经网络迅速成为计算机视觉领域的新宠。随后在一系列的任务中,基于卷积神经网络的形形色色的模型相继被提出,并在原有的性能上取得了巨大提升。

2.2卷积神经网络的基本原理

在数字图像处理中有一种基本的处理方法叫线性滤波。它将待处理的二维数字看作一个大型矩阵,图像中的每个像素可以看作矩阵中的每个元素,像素的大小就是矩阵中的元素值。而使用的滤波工具是另一个小型矩阵,这个矩阵就被称为卷积核。卷积核的大小远远小于图像矩阵,具体的计算方式就是对于图像大矩阵中的每个元素,计算周围的像素和卷积核对应位置的乘积,之后将结果相加最终得到的终值就是该像素的值,这样就完成了一次卷积。

如果采用卷积神经网络来替代以上提到的手写数字识别浅层神经网络,采用三个卷积层,和两个全连接层,一共只需要13450个参数,而且识别的准确率大幅上升。经过测试,可由原来的91%上升到98%以上。由此可见,卷积层的参数量非常少,主要的参数量集中在全连接层。由于卷积层将输入特征维度降低很多,从而使得全连接层的参数量不至于过大,因此通过卷积神经网络可以显著降低网络参数量,同时增加网络深度,大幅提高了识别的准确率。

3卷积神经网络在手写数字识别的关键技术介绍

卷积神经网络可以应用在人工智能的很多领域,比如图像和自然语言处理等等。其结合特征提取和目标训练为一体的模型,能够很好地利用已有的信息对结果进行反馈训练。对手写数字识别的卷积神经网络来说,同样也是充分利用提取的手写数字的图像特征进行训练并最终实现手写数字的识别。

3.1 MNIST数据集介绍

在本论述中,利用MNIST手写数字的数据库作为实验数据,MNIST数据库中60000个图片作为训练数据,另外10000个图片作为测试数据,每张图片分别显示0-9中的某一个数字,样本中还包含了各个训练数据相应的标签,其中标签集包含了0,1,2,3,4,5,6,7,8,9一共10个分类数据。该数据集由美国国家标准与技术研究所(NIST)开发,数据库的每个图像为28x28像素的灰度图像。训练数据集如图1所示。

3.2卷积神经网络在手写数字识别中的原理和应用

卷积神经网络(cNN)是人工神经网络(ANN)的一种特殊类型。CNN由五个基本层组成,分别是输入层、卷积层、池化层、全连接层和输出层。CNN主要有两个处理阶段:特征学习阶段和分类阶段。每个阶段由一个或多个层组成。特征学习阶段通过结合两种层(即卷积层和池化层)来实现。这个阶段提供了从训练示例中提取的最重要的特征,然后把这些提取的特征传送到全连接的ANN层进行数字分类识别。CNN手写数字识别的结构图,如图2所示。

图2中网络一共有8层,下面依次对各层的作用进行介绍。

第1层为输入层,输人大小为28*28像素的手写数字图片。

第2层对输入图像进行第一次卷积运算,使用的是6个大小为5*5的卷积核,卷积结果是6幅大小为28*28的图像。

第3层对第2层卷积运算的结果进行池化,使用2*2的核进行池化,得到了6个14*14的特征图。

第4层对第3层的输出进行第二次卷积运算,卷积核的大小是5*5,得到的16幅10*10的特征图。

第5层对第4层卷积运算的结果进行池化,也是使用2*2的核进行池化,所以得到12个7*7的特征图。

第6层是卷积层,对第5层的输出结果进行全连接,形成256个1*1的特征图。

第7层是全连接层,对第6层的输出进行全连接,形成128个1*1的特征图。

第8层是输出层也是全连接层,共有10个节点,分别代表0-9这10个数字。每个神经元的激活值表示对应字符的响应强度,最大值则为对应的识别结果。

3.3实验结果分析

数据是学习过程中不可分割的一部分,它提供了实验的指导思想和建立一个准确的CNN。在本论述案例研究中,从60000个样本中随机抽取30000个样本作为训练示例,另外3000个样本用于验证,最后10000个测试样本用于测试的示例。实验表明,进行到14040次迭代之后,损失率和准确率趋于稳定。最终准确率达到98%以上。实验结果如图3所示。

4总结

本论述首先介绍手写数字识别的特点和应用,进而引入深度学习的概念,并详细介绍了深度学习的典型网络一卷积神经网络的特点和基本原理,最后通过使用TensorFlow2.3建立卷积神经网络,对卷积的原理和步骤进行详细说明。总体而言,在手写数字识别处理方面,卷积神经网络方法不仅在准确性方面优于传统方法,而且在从运行的效率和鲁棒性也优于传统方法。

猜你喜欢

卷积神经网络深度学习
基于卷积神经网络温室智能大棚监控系统的研究
基于深度卷积神经网络的物体识别算法
有体验的学习才是有意义的学习
电子商务中基于深度学习的虚假交易识别研究
MOOC与翻转课堂融合的深度学习场域建构
大数据技术在反恐怖主义中的应用展望
深度学习算法应用于岩石图像处理的可行性研究
基于深度卷积网络的人脸年龄分析算法与实现
基于卷积神经网络的树叶识别的算法的研究