APP下载

基于多重卷积神经网络的大模式联机手写文字识别

2014-10-14葛明涛王小丽潘立武

现代电子技术 2014年20期
关键词:模式识别卷积神经网络

葛明涛+王小丽+潘立武

摘 要: 联机手写识别在日常生产生活中有着广阔的应用,模式识别也一直把其作为研究的重点。传统的识别方法是利用普通卷积神经网络技术,该方法在对小规模字符集联机手写文字识别时有着较高识别率,总体性能高,但在对大规模字符集识别时,识别率则大大降低。提出一种基于多重卷积神经网络的识别方法,旨在克服以往方法对大规模字符集识别时识别效率不高的问题,提高大规模字符集联机手写文字的识别率。系统使用随机对角Levenberg?Marquardt方法来优化训练,通过使用UNIPEN训练集测试该方法识别准确率可达89%,是一个有良好前景的联机手写识别方法。

关键词: 模式识别; 神经网络; 卷积; 文字识别

中图分类号: TN711?34; TP391.4 文献标识码: A 文章编号: 1004?373X(2014)20?0019?03

Large pattern online handwriting character recognition based on multi?convolution neural network

GE Ming?tao1, WANG Xiao?li1, PAN Li?wu2

(1. SIAS International School, Zhengzhou University, Zhengzhou 451150, China;

2. Henan University of Animal Husbandry and Economy, Zhengzhou 450011, China)

Abstract: Online handwriting character recognition is an important field in the research of pattern recognition. The traditional recognition method is based on the common convolutional neural networks (CNNs) technology. It has an efficient recognition rate for the small pattern character set online handwriting characters, but has low recognition rate for the large pattern character set recognition. A recognition method based on multi?convolutional neural networks (MCNNs) is presented in this paper to overcome the situation that the previous methods have the low recognition rate for large pattern character set and improve the recognition rate for the large pattern handwriting character set recognition. The stochastic diagonal Levenbert?Marquardt method is used in the system for training optimization. The experimental results show that the proposed method has the recognition rate of 89% and has a good prospect for online handwriting character recognition for large scale pattern.

Keywords: pattern recognition; neural network; convolution; character recognition

0 引 言

随着全球信息化的飞速发展和对自动化程度要求的不断提高 ,手写文字识别技术被广泛地应用到许多方面。特别是近几年拥有手写功能的手机、平板电脑等智能电子产品的普及,联机手写文字识别研究已经成为一个备受关注的主题。联机手写字符识别要求实时性较高,识别过程中要求特征空间的维数比较高,在进行特征样本训练时要求训练的数目很大,要匹配的特征值或特征对象比较多 [1?2]。

卷积神经网络(Convolutional Neural Networks,CNNs)的优点在于图像的识别过程中对视觉模式的获得是直接从原始图像中获得的,所以在设计系统时图像的预处理工作很少,与一般神经网络相比是一种高效的识别方法。卷积神经网络在模式识别的一些领域具有很好的鲁棒性,如在识别有变化的模式和对几何变形的识别方面。利用卷积神经网络的手写识别方法具有如下一些优点:对于要检测的图像可以与事先制定网络拓扑结构之间有较高的匹配率;特征提取和模式分类同时进行;训练参数往往是系统计算量的重要参数,而卷积神经网络中利用权值共享技术,这样就可以大大降低该参数,在设计系统结构时使得结构变得更简单,从而使得整个系统具有更好的适应性[3?5]。

目前,人机交互系统的手写字符识别、汽车车牌号识别和信息安全中常用的人脸识别等领域都有卷积神经网络的成功应用。文献[6]用一个4层的卷积神经网络LeNet?5对Mnist库进行识别实验,获得了98.4%的识别率,用2层的BP网络的识别率[4,6]是87%。许多学者对卷积神经网络在联机手写文字识别方面做了多方位的研究。 但是,这些成功的联机手写文字识别主要是针对小模式字符集,利用以往的这些方法对大规模模式分类的联机手写文字的识别依然有识别率不高的问题。本文介绍了卷积神经网络的基本概念和一种典型的卷积神经网络结构,给出了基于多重卷积神经网络的字符识别和词语识别模型。通过使用大字符集的UNIPEN数据库进行训练和测试,本文提出的方法在大模式联机手写识别上,取得了较高的识别速度和满意的识别率。

1 卷积神经网络

文献[6?7]中详细地描述了卷积神经网络如何保证图像对位移、缩放、扭曲鲁棒性能。典型的手写字符卷积神经网络LeNET 5的结构图如图1所示[6?7]。

图1 典型的卷积神经网络结构

在图1中,输入层接收要识别32×32的手写字符图像,经过简单的大小归一化和图像灰度处理,之后的结果作为一个采样层的图像;然后用一个可学习核进行卷积操作,卷积结果经过激活函数的输出形成这一层的神经元,每个神经元与输入图像的一个5×5的邻域相连接,从而得到由6幅特征图组成的第一个隐层(C1层)。每个特征图有25个权值(如方向线段,端点、角点等),考虑到边界效果,得到的特征图的大小是28×28,小于输入图层[3?9]。卷积层的数学计算过程可表示为:

[xlj=fi∈Mjxl-1j*kernellij+blj] (1)

式中:[l] 代表层数;kernel是卷积核;[Mj]代表输入特征图的一个选择。每个输出图有一个偏置[b]。

每个卷积层的结果作为下一个次采样层的输入,次采样层的作用是对输入信息进行抽样操作。如果输入的特征图为n个,则经过次采样层后特征图的个数仍然为n,但是输出的特征图要变小(例如,各维变为原来的50%)。因此隐层S2是由6个大小为14×14的特征图组成的次采样层。次采样层计算公式可以用式(2)表示:

[xlj=fβl-1jdown(xl-1j)+blj] (2)

式中down(·) 表示次采样函数。次采样函数一般是对该层输入图像的一个n×n大小的区域求和,因此,输出图像的大小是输入图像大小的[1n]。每一个输出的特征图有自己的β和b。

类似的,C3层有16个10×10的特征图组成的卷积层,特征图的每个神经元与S2网络层的若干个特征图的5×5的邻域连接。网络层S4是由16个大小为5×5的特征图组成的次采样层。特征图的每个神经元与C3层的一个2×2大小的邻域相连接。网络层C5是由120个特征图组成的卷积层。每个神经元与S4网络层的所有特征图的5×5大小的邻域相连接。网络层F6,包括84个神经元,与网络层C5进行全连接。最后,输出层有10个神经元,是由径向基函数单元(RBF)组成,输出层的每个神经元对应一个字符类别。RBF单元的输出yi的计算方法如式(3)所示:

[yi=j(xj-wij)2] (3)

很多研究人员通过对字符集作弹性训练,经测试发现在MNIST字符集上的识别率可以高达99%以上[6?7] 。卷积神经网络的优势主要是对小模式集上,如对数字或26个英文字母组成的集合都有着较高的识别率。然而,对大模式集的识别仍然是一个挑战,因为设计一个优化的并足够大的单一网络是比较困难的,且训练时间也较长。因此,本文的目的旨在通过组合多个对某一字符集有高识别率的卷积神经网络,从而构成多重卷积神经网络,进而提高卷积神经网络对大模式集手写字符的识别率。

2 多重卷积神经网络

2.1 多重卷积神经网络字符识别

根据传统卷积神经网络的运算过程以及其在处理大模式集手写字符时存在的不足,本文提出一种多重卷积神经网络来改进传统的卷积神经网络模型,用多个拥有高识别率的小卷积神经网络组成一个多重卷积神经网络。每一重小卷积神经网络对某一具体字符集有较高的识别率,另外,单重卷积神经网络除了有一个正式的输出集之外,还产生一个未知的输出(即难以识别的字符),即如果一个输入字符没有被正确识别,它将被输出为一个未知字符,然后输入模式转到下一重卷积神经网络进行识别。最后,通过一个拼写检查模块进行判断,选择最好的结果输出。系统的流程如图2所示。

其中CNN 1是识别手写数字的卷积神经网络,CNN 2是识别手写小写英文字母的卷积神经网络,该模型具有极强的扩展性,可以添加多任意模式的卷积神经网络(如中文,日文等)。

图2 多重卷积神经网络字符识别示意图

2.2 随机对角Levenberg?Marquardt训练方法

传统的结构比较简单、单一的卷积神经网络多采用基本的Back Propagation(BP)规则训练网络,往往需要几百次迭代,网络的收敛速度较慢。本文采用LeCun博士提出的随机对角Levenberg?Marquardt 算法对网络作训练,该算法需要的迭代次数明显比基本的BP 算法少[4,9]。随机对角Levenberg?Marquardt算法的公式为:

[ηki=ε?2E?w2ij+μ] (4)

式中[ε]是全局的学习率,一般取初始值0.01,太大会使网络无法收敛,太小则会降低收敛速度,且使网络更容易陷入局部极小值,训练过程中可以用启发式规则改变[ε]的值,本文取最下值为5e-005; [?2E?w2ij]是一个估计值,根据训练集的大小可以调整样本数量,文中随机选取200个样本估算它的值;[μ]用来避免[?2E?w2ij] 太小时[ηki]的变化过大 。

2.3 多重卷积神经网络词句识别

本文提出的多重卷积神经网络对手写词语的识别方法可以简单地描述为:首先对输入的手写图像进行预处理和分割,然后通过多重卷积神经网络模块分别进行识别,最后采用单词识别模块对识别结果进行判断,选择最好的结果输出。其过程如图3所示。

图3 多重卷积神经网络联机手写词句识别过程

本文提出的多重卷积神经网络联机手写文字识别方法克服了传统卷积神经网络文字识别的对字符集的限制,每一重卷积神经网络是一个针对小模式的卷积神经网络,易于训练和优化,更重要的是此方案的灵活性非常好易于调节参数,可扩展性强。每一重卷积神经网络都具有可重用能力,可以根据需要加载一个或多个网络,可以根据新的模式添加新的网络而不需改变或重建原来的网络。

3 训练和实验

为了评估多重卷积神经网络对基于大模式字符集的联机手写文字识别的性能,本系统采用MNIST和UNIPEN两种不同的手写字符训练集进行测试。UNIPEN数据库是在1992年举行的IEEE IAPR会议上提出并建立的,其目的是创建一个大型的手写体数据库用于为在线手写识别提供研究和开发的基础,得到了多个知名公司或研究所的支持并完成了UNIPEN的规范设计。在进行数据比对实验中,本文采用许多研究使用的MNIST手写数字数据库,该数据库是NEC 研究中心设计的,是NIST(The National Institute of Standards and Technology)数据库的一个子集,该训练集中有大量训练样本和测试用例。本文默认用以下定义:

[识别率=正确识别数样本总数×100%]

[失误率误识率=错误识别数样本总数×100%]

实验测试是在通用的台式电脑上进行的。整个识别原型系统采用C#编写,运行在.NetFrame 4.5平台上。经测试对MNIST训练集识别正确率可达[9]99%,对UNIPEN数字识别正确率可达97%,对UNIPEN数字和大写字母识别正确率可达89%(1a,1b) ,对UNIPEN小写字母识别正确率可达89%(1c) 。图4是对UNIPEN小写字母3次训练的均方误差比较。

图4 训练的误差数据

从图4中可以看出,在开始的几个训练周期内,均方误差(MSE)下降得很快,然后在第13个周期后神经网络达到一个稳定的值,约为0.148 5。也就是说,网络在第13个周期后,改善程度就很小。所以修改训练错误率的值为0.000 45后重新进行18代的第二次训练,均方误差有所降低。经过第三次的训练后趋于稳定,对UNIPEN小写字母识别正确率可达89%。经测试,通过使用随机对角Levenberg?Marquardt方法,收敛速度比基本BP算法快了许多,经过68代训练后识别正确率可达89%。

4 结 语

本文提出了基于多重卷积神经网络的联机手写字符的识别方法,通过使用多个识别率高的卷积神经网络和随机对角 Levenberg? Marquardt方法,可以适用于大模式联机手写识别。经过实验数据比较,该方法在大模式联机手写识别过程中具有很高的识别率,与此同时识别速度也很快,有很好的实时性,总体效果很好。在当今触摸屏应用遍及生产生活的各个方面的趋势下,该方法有着广阔的应用前景。同时此方法为今后多手写汉字识别的研究提供了很好的借鉴。

注:本文通讯作者为潘立武。

参考文献

[1] 吴鸣锐,张钹.一种用于大规模模式识别问题的神经网络算法[J].软件学报,2001,12(6):851?855.

[2] 张辉.大规模联机手写汉字识别数据库整理、统计与实验分析[D].广州:华南理工大学,2012.

[3] 徐姗姗,刘应安,徐昇,等.基于卷积神经网络的木材缺陷识别[J].山东大学学报:工学版,2013,43(2):23?28.

[4] 吕刚.基于卷积神经网络的多字体字符识别[J].浙江师范大学学报:自然科学版,2011,34(4):425?428.

[5] PHAM D V. Online handwriting recognition using multi convolution neural networks [M]. Berlin Heidelberg: Springer, 2012: 310?319.

[6] LECUN Y, BOTTOU L, BENGIO Y, et al. Gradient?based learning applied to document recognition [C]// Proceeding of IEEE. USA: IEEE, 1998: 2278?2324.

[7] SIMARD P Y, STEINKRAUS Dave, PLATT John. Best practices for convolutional neural networks applied to visual document analysis [C]// International Conference on Document Analysis and Recognition (ICDAR). Los Alamitos: IEEE Computer Society, 2003: 958?962.

[8] SERMANET P, CHINTALA S, LECUN Y. Convolutional neural networks applied to house numbers digit classification [C]// International Conference on Pattern Recognition. [S.l.]: IEEE, 2012: 3288?3291.

[9] LECUN Y, BOTTOU L, ORR G B, et al. Efficient BackProp in neural networks: tricks of the trade, LNCS [M]. Heidelberg: Springer, 1998, 1524: 9?50.

3 训练和实验

为了评估多重卷积神经网络对基于大模式字符集的联机手写文字识别的性能,本系统采用MNIST和UNIPEN两种不同的手写字符训练集进行测试。UNIPEN数据库是在1992年举行的IEEE IAPR会议上提出并建立的,其目的是创建一个大型的手写体数据库用于为在线手写识别提供研究和开发的基础,得到了多个知名公司或研究所的支持并完成了UNIPEN的规范设计。在进行数据比对实验中,本文采用许多研究使用的MNIST手写数字数据库,该数据库是NEC 研究中心设计的,是NIST(The National Institute of Standards and Technology)数据库的一个子集,该训练集中有大量训练样本和测试用例。本文默认用以下定义:

[识别率=正确识别数样本总数×100%]

[失误率误识率=错误识别数样本总数×100%]

实验测试是在通用的台式电脑上进行的。整个识别原型系统采用C#编写,运行在.NetFrame 4.5平台上。经测试对MNIST训练集识别正确率可达[9]99%,对UNIPEN数字识别正确率可达97%,对UNIPEN数字和大写字母识别正确率可达89%(1a,1b) ,对UNIPEN小写字母识别正确率可达89%(1c) 。图4是对UNIPEN小写字母3次训练的均方误差比较。

图4 训练的误差数据

从图4中可以看出,在开始的几个训练周期内,均方误差(MSE)下降得很快,然后在第13个周期后神经网络达到一个稳定的值,约为0.148 5。也就是说,网络在第13个周期后,改善程度就很小。所以修改训练错误率的值为0.000 45后重新进行18代的第二次训练,均方误差有所降低。经过第三次的训练后趋于稳定,对UNIPEN小写字母识别正确率可达89%。经测试,通过使用随机对角Levenberg?Marquardt方法,收敛速度比基本BP算法快了许多,经过68代训练后识别正确率可达89%。

4 结 语

本文提出了基于多重卷积神经网络的联机手写字符的识别方法,通过使用多个识别率高的卷积神经网络和随机对角 Levenberg? Marquardt方法,可以适用于大模式联机手写识别。经过实验数据比较,该方法在大模式联机手写识别过程中具有很高的识别率,与此同时识别速度也很快,有很好的实时性,总体效果很好。在当今触摸屏应用遍及生产生活的各个方面的趋势下,该方法有着广阔的应用前景。同时此方法为今后多手写汉字识别的研究提供了很好的借鉴。

注:本文通讯作者为潘立武。

参考文献

[1] 吴鸣锐,张钹.一种用于大规模模式识别问题的神经网络算法[J].软件学报,2001,12(6):851?855.

[2] 张辉.大规模联机手写汉字识别数据库整理、统计与实验分析[D].广州:华南理工大学,2012.

[3] 徐姗姗,刘应安,徐昇,等.基于卷积神经网络的木材缺陷识别[J].山东大学学报:工学版,2013,43(2):23?28.

[4] 吕刚.基于卷积神经网络的多字体字符识别[J].浙江师范大学学报:自然科学版,2011,34(4):425?428.

[5] PHAM D V. Online handwriting recognition using multi convolution neural networks [M]. Berlin Heidelberg: Springer, 2012: 310?319.

[6] LECUN Y, BOTTOU L, BENGIO Y, et al. Gradient?based learning applied to document recognition [C]// Proceeding of IEEE. USA: IEEE, 1998: 2278?2324.

[7] SIMARD P Y, STEINKRAUS Dave, PLATT John. Best practices for convolutional neural networks applied to visual document analysis [C]// International Conference on Document Analysis and Recognition (ICDAR). Los Alamitos: IEEE Computer Society, 2003: 958?962.

[8] SERMANET P, CHINTALA S, LECUN Y. Convolutional neural networks applied to house numbers digit classification [C]// International Conference on Pattern Recognition. [S.l.]: IEEE, 2012: 3288?3291.

[9] LECUN Y, BOTTOU L, ORR G B, et al. Efficient BackProp in neural networks: tricks of the trade, LNCS [M]. Heidelberg: Springer, 1998, 1524: 9?50.

3 训练和实验

为了评估多重卷积神经网络对基于大模式字符集的联机手写文字识别的性能,本系统采用MNIST和UNIPEN两种不同的手写字符训练集进行测试。UNIPEN数据库是在1992年举行的IEEE IAPR会议上提出并建立的,其目的是创建一个大型的手写体数据库用于为在线手写识别提供研究和开发的基础,得到了多个知名公司或研究所的支持并完成了UNIPEN的规范设计。在进行数据比对实验中,本文采用许多研究使用的MNIST手写数字数据库,该数据库是NEC 研究中心设计的,是NIST(The National Institute of Standards and Technology)数据库的一个子集,该训练集中有大量训练样本和测试用例。本文默认用以下定义:

[识别率=正确识别数样本总数×100%]

[失误率误识率=错误识别数样本总数×100%]

实验测试是在通用的台式电脑上进行的。整个识别原型系统采用C#编写,运行在.NetFrame 4.5平台上。经测试对MNIST训练集识别正确率可达[9]99%,对UNIPEN数字识别正确率可达97%,对UNIPEN数字和大写字母识别正确率可达89%(1a,1b) ,对UNIPEN小写字母识别正确率可达89%(1c) 。图4是对UNIPEN小写字母3次训练的均方误差比较。

图4 训练的误差数据

从图4中可以看出,在开始的几个训练周期内,均方误差(MSE)下降得很快,然后在第13个周期后神经网络达到一个稳定的值,约为0.148 5。也就是说,网络在第13个周期后,改善程度就很小。所以修改训练错误率的值为0.000 45后重新进行18代的第二次训练,均方误差有所降低。经过第三次的训练后趋于稳定,对UNIPEN小写字母识别正确率可达89%。经测试,通过使用随机对角Levenberg?Marquardt方法,收敛速度比基本BP算法快了许多,经过68代训练后识别正确率可达89%。

4 结 语

本文提出了基于多重卷积神经网络的联机手写字符的识别方法,通过使用多个识别率高的卷积神经网络和随机对角 Levenberg? Marquardt方法,可以适用于大模式联机手写识别。经过实验数据比较,该方法在大模式联机手写识别过程中具有很高的识别率,与此同时识别速度也很快,有很好的实时性,总体效果很好。在当今触摸屏应用遍及生产生活的各个方面的趋势下,该方法有着广阔的应用前景。同时此方法为今后多手写汉字识别的研究提供了很好的借鉴。

注:本文通讯作者为潘立武。

参考文献

[1] 吴鸣锐,张钹.一种用于大规模模式识别问题的神经网络算法[J].软件学报,2001,12(6):851?855.

[2] 张辉.大规模联机手写汉字识别数据库整理、统计与实验分析[D].广州:华南理工大学,2012.

[3] 徐姗姗,刘应安,徐昇,等.基于卷积神经网络的木材缺陷识别[J].山东大学学报:工学版,2013,43(2):23?28.

[4] 吕刚.基于卷积神经网络的多字体字符识别[J].浙江师范大学学报:自然科学版,2011,34(4):425?428.

[5] PHAM D V. Online handwriting recognition using multi convolution neural networks [M]. Berlin Heidelberg: Springer, 2012: 310?319.

[6] LECUN Y, BOTTOU L, BENGIO Y, et al. Gradient?based learning applied to document recognition [C]// Proceeding of IEEE. USA: IEEE, 1998: 2278?2324.

[7] SIMARD P Y, STEINKRAUS Dave, PLATT John. Best practices for convolutional neural networks applied to visual document analysis [C]// International Conference on Document Analysis and Recognition (ICDAR). Los Alamitos: IEEE Computer Society, 2003: 958?962.

[8] SERMANET P, CHINTALA S, LECUN Y. Convolutional neural networks applied to house numbers digit classification [C]// International Conference on Pattern Recognition. [S.l.]: IEEE, 2012: 3288?3291.

[9] LECUN Y, BOTTOU L, ORR G B, et al. Efficient BackProp in neural networks: tricks of the trade, LNCS [M]. Heidelberg: Springer, 1998, 1524: 9?50.

猜你喜欢

模式识别卷积神经网络
基于3D-Winograd的快速卷积算法设计及FPGA实现
神经网络抑制无线通信干扰探究
从滤波器理解卷积
基于傅里叶域卷积表示的目标跟踪算法
浅谈模式识别在图像识别中的应用
第四届亚洲模式识别会议
基于神经网络的拉矫机控制模型建立
复数神经网络在基于WiFi的室内LBS应用
基于支持向量机回归和RBF神经网络的PID整定
第3届亚洲模式识别会议