基于改进LeNet-5网络的文件编号识别

2021-03-24 09:12李大华王宇高强于晓
现代计算机 2021年2期
关键词:卷积神经网络样本

李大华,王宇,高强,于晓

(天津理工大学电气电子工程学院,复杂系统控制理论与应用重点实验室,天津300384)

随着国家“科技强检”战略的实行,分类卷宗材料这种繁杂的工作无疑成为检务人员的负担,于是利用计算机识别文件表面的数字编号来对材料进行分类能提高检务人员的工作效率,同时也能减少由于人工可能导致的失误。由于传统的识别算法在支票、报表、卷宗材料等文件的识别中,识别精度和准确率都有所影响,提出一种基于改进LeNet-5网络的手写文字识别网络,通过对LeNet-5网络各层数据处理之前做一个归一化处理,来提高网络的训练速度,提升网络的学习率。从MNIST手写数字数据集中随机选取3000个训练样本,500个验证样本进行训练,实验证明,改进LeNet-5网络不仅能实现了对手写数字0-9的准确识别,并且相比于传统的LeNet-5网络,在训练数据较少的情况下,识别率也有提升。

手写数字;神经网络;LeNet-5;MNIST

0 引言

随着国家“科技强检”战略的实行,智慧检务平台的构建成为实施该战略的重要步骤。在构建智慧检务平台的过程中,需要将纸面材料上传到计算机进行保存,然后利用计算机的快速计算能力来对已有的卷宗材料进行相应的处理。在计算机保存材料的过程中,需要对材料进行分类整理,但由于有些材料保存时间太长以及经常查阅等原因,会出现材料误放、顺序错乱等问题,导致后期利用计算机进行类似案件分析会不方便。在保存的卷宗材料上面,通常会通过数字来进行编号排序,利用计算机对编号进行识别,不仅可以节省大量时间,还能减少由于人工失误导致的分类错误等问题。因此对数字编号的准确识别,能够在构建智慧检务平台的过程中起到非常重要的作用。

关于数字识别的问题,国内外学者进行了深入的研究。一般来说,广泛用于数字识别的算法有Bagging算法[1]、AdaBoost算法[2-3]、支持向量机等[4-5]。2005年赵万鹏等人[6]提出了一种新的基于集成学习算法Ada⁃Boost的手写体数字识别系统,被应用在OCR识别软件中。2009年Vikas K.Garg等人[7]提出了一种利用FS-SVM寻找近似α-MFC的算法,提高了识别速度,降低了过拟合的风险。2011年刘作军[8]以BP网络做基本分类器,用Bagging产生多个基本分类器,用简单多数投票法进行集成,实现了手写体数字的分类识别。2019年叶晓波等人[9]通过改进AdaBoost-BP二分类算法,实现用于多分类的AdaBoost-BP算法,提高了神经网络对手写数字的识别率。

经过实践证明,传统的识别算法在实践过程中能够做到比较好的效果,但在支票、报表、卷宗材料等文件的识别中,识别的准确率与精度都会有一定程度的影响。卷积神经网络(Convolutional Neural Networks,CNN)是一种常见的深度学习的架构,是受到生物自然视觉的认知机制启发而来,是一种特殊的多层前馈神经网络。由于CNN网络能够快速稳定地提取图片中的特征,所以被常用于图像识别领域。常用的CNN网络 有LeNet-5[10]、AlexNet[11]、VGGNet(Visual Geometry Group)[12]等。LeNet-5网络常用于手写数字的识别,但LeNet-5网络在数据样本较少时,会出现无法充分获取图像特征的问题,本文通过对LeNet-5进行改进解决样本较少时,识别率较低的问题。

1 问题分析

图1中三幅图像是不同卷宗上截图的三幅编号图片,图1(a)是打印体,打印体数字在笔画、大小以及与其他数字的辨识度上都十分的规范,识别相对容易;图1(b)是手写体数字,字体大小较为规范,但辨识度不高,容易与其他数字混淆;图1(c)是手写体数字,字体大小,辨识度都不太好。

图1 编号图片

由于本文选用的是LeNet-5网络模型,训练集使用的MNIST手写数字集,所以需要对数字图像进行一定程度的处理。首先对编号中每个数字进行分割,然后对其进行灰度化处理,并调整图片大小为28×28。处理完成的图片用于神经网络输入,如图2所示。

图2 标准化后数字图片

2 改进的LeNet-5网络

2.1 传统的LeNet-5网络模型

LeNet-5是Yann LeCun在1998年设计的用于手写数字识别的卷积神经网络,是早期卷积神经网络中最具有代表性的实验。LeNet-5一共有7层(不包括输入层),其中有2个卷积层、2个池化层,3个全连接层,结构如图3所示。

图3 传统的LeNet-5网络结构

LeNet-5输入的是32×32的矩阵图片,C1层是由6个特征图构成的卷积层,特征图中的每个神经元与输入中5×5的领域相连,特征图的大小为28×28。卷积层计算公式为:

其中l代表层数,k代表卷积核,Mj代表第j个特征图,b代表偏置,f代表激活函数。S2是一个池化层,利用图像局部相关的原理,对图像抽样,输出6个14×14的特征图,特征图中每个神经元与C1中对应特征图的2×2领域相连接。池化层计算公式为:

其中down为池化函数,β和b为特征图中的参数。C3是一个卷积层,其中含有16种不同的大小为5×5的卷积核,它通过5×5的卷积核去卷积S2,得到的特征图只有10×10个神经元。S4是一个池化层,由16个5×5大小的特征图构成,特征图种每个单元与C3中相应特征图的2×2领域相连接。C5层是一个卷积层,含有120个5×5的卷积核,每个单元与S4层的全部16个单元的5×5的领域相连,由于S4层特征图的大小也为5×5,故输出120个特征图的大小为1×1。F6层有84个神经元,与C5层全相连接。最后输出层含有10个神经元,由欧氏径向基函数(Euclidean Radial Basis Function)单元组成,每个神经元对应一个数字类。

2.2 批量归一化层[13](BN层,Batch Normalization)

随着神经网络训练过程中,激活输入值会逐渐发生偏移和变动,整体分布逐渐往非线性函数的取值区间的上下限两端靠近,导致反向传播时低层神经网络的梯度消失,使得神经网络收敛越来越慢,BN层作用就是将训练中每层神经元的输入值转换为均值为0方差为1的标准正态分布,让反向传播时低层神经网络的梯度变大,提高网络学习的速度和效率。

BN层和激活函数层、卷积层、全连接层、池化层一样,都属于网络的一层。由于神经网络除了输出层以外,其他层因为底层网络在训练时更新了参数,会导致后层网络数据分布的变化。BN层的作用就是通过规范化所有层的输入,从而可以固定每层输入信号的均值与方差,来保证后层网络数据的稳定性

2.3 改进的LeNet-5网络模型

由于每层网络内操作的不同,随着网络层数的增加,会导致出现过拟合问题。为了防止过拟合,解决样本较少导致网络学习效率较低的问题,本文在神经网络各层数据处理之前做一个归一化处理,也就是在每一层网络前加上归一化层(BN层),防止出现每一层训练后的数据分布都不同,造成网络模型更加复杂的问题,从而能提高网络的训练速度,提升网络的学习率,同时也防止了梯度弥散的问题,改进网络的结果如图4所示。

图4 改进LeNet-5网络结构

2.4 LeNet-5的训练算法

改进LeNet-5网络的训练算法相比于传统的LeNet-5网络没有进行太大的改变,利用的是反向传播算法(Back Propagation,BP),一共分为两个阶段,每个阶段由两步构成。第一阶段是向前的传播阶段,第一步是从样本集中随机选取一个样本,并将选取的样本输入至网络,第二步是计算网络的实际输出。在该阶段中,信息从输入层经过网络逐级的变换,最后从输出层输出。这是网络在正常运行的训练过程。在该过程中,网络实际上起到的是计算的作用,输入与网络每层的权值矩阵相点乘,最后得到输出的结果。第二阶段是向后传播阶段,第一步是计算实际输出值与相应的理想输出值的差,第二步是通过极小化误差的方法进行反向传播从而来调整权矩阵。

反向传播算法的的输入包括:总层数L以及每个隐藏层与输出层的神经元的个数,激活函数,损失函数,迭代步长α,最大迭代次数MAX与停止迭代的阈值ε,输入的m个训练样本为((x1,y1),(x2,y2),…,(xm,ym)),初始化参数为W,b。从第二层到第L层,前向传播算法计算公式为(l为当前网络层数):

然后通过损失函数计算输出层的梯度,进行反向传播算法计算,反向传播是从L-1层到第二层网络,公式为:

通过梯度下降算法更新权重W和b的值,α为学习率,其中α∈(0,1]。

当所有W,b的变化值都小于停止迭代的阈值ε时,跳出迭代循环。此时输出各层的W和b。

3 实验结果与分析

为了验证改进的LeNet-5网络模型的训练效果,本文利用MATLAB软件进行了实验研究,从MNIST手写数字数据集中随机选取了3000个训练样本,500个验证样本,并将得到训练过程和训练结果与传统的LeNet-5网络进行对比,如图5所示。

图5 改进LeNet-5网络训练过程

图5中,实线为训练效果,虚线为验证效果,由图可以看出,改进LeNet-5网络相比传统LeNet-5网络,在验证准确率方面有所提高,同时也降低了验证集的损失值。在此基础上通过10次实验来对两种模型进行评估,实验样本都是取自文书材料编号。记录每次实验两种模型的正确率,最后计算出平均正确率,测试结果如表1所示。

表1 正确率

通过表1可以看出,改进LeNet-5网络通过给每层网络前加入BN层的方法,能够更好的提取数字图像的特征,防止网络的过拟合。因此改进LeNet-5网络对于取自文书材料的样本集的识别率比传统的LeNet-5网络识别率更高,表现出了更好的识别效果。

4 结语

随着图像技术的飞速发展与神经网络的不断进步,利用这些技术来为人类工作提高效率是也是一项非常重要的工作。智慧检务平台的构建是国家实施“科技强检”战略的重要保障,由于传统算法对于卷宗材料表面编号识别效果并不理想,于是通过给每层网络前加入BN层的方法来对神经网络中的LeNet-5网络进行改进,来对卷宗材料的编号进行识别。实验结果表明,该算法拥有更强的准确性。

猜你喜欢
卷积神经网络样本
基于全卷积神经网络的猪背膘厚快速准确测定
基于神经网络的船舶电力系统故障诊断方法
基于人工智能LSTM循环神经网络的学习成绩预测
基于图像处理与卷积神经网络的零件识别
MIV-PSO-BP神经网络用户热负荷预测
基于深度卷积网络与空洞卷积融合的人群计数
三次样条和二次删除相辅助的WASD神经网络与日本人口预测
卷积神经网络概述
直击高考中的用样本估计总体
随机微分方程的样本Lyapunov二次型估计