手写体数字字符识别算法仿真比较研究

2017-04-10 12:05郄小美黄信静
实验室研究与探索 2017年1期
关键词:手写体字符识别学习机

陈 龙, 郄小美, 黄信静, 林 虎

(杭州电子科技大学 电子信息学院, 杭州 310018)

手写体数字字符识别算法仿真比较研究

陈 龙, 郄小美, 黄信静, 林 虎

(杭州电子科技大学 电子信息学院, 杭州 310018)

采用BP神经网络、原始极限学习机、正则极限学习机和傅里叶变换优化极限学习机算法分别进行手写体数字字符识别仿真实验,通过MINIST数据库中的10 000个手写体数字样本训练神经网络数据传输过程中的参数,用训练所得神经网络参数进行手写体数字识别仿真测试。比较4种算法的仿真效果,BP网络识别效果最好、训练速度最慢,原始极限学习机训练速度最快,正则极限学习机和傅里叶变换极限学习机优化算法识别正确率高于原始极限学习机,但增加了算法的时间复杂度。将该手写体数字字符识别仿真实验用于学生实验教学,可加强学生对神经网络相关知识的学习和理解,提高学生编程和工程应用能力。

神经网络; 极限学习机; 手写数字识别; 实验教学

0 引 言

神经网络是模仿人的大脑神经网络结构和功能而建立的一种信息处理系统,具有高度的非线性特征。神经网络在神经科学、人工智能和计算机科学等领域具有广泛应用,其中Back Propagation (BP)神经网络是目前应用最广泛的神经网络模型之一[1-3]。BP神经网络是一种按误差逆传播算法训练的多层前馈网络,包括信号的正向传播和误差的反向传播两个过程。在多次信号的正向传播和误差的反向传播过程中,神经网络各权值通过梯度下降法得到修正,使得网络输出误差满足要求,或达到设定的学习次数为止[4]。极限学习机是一种快速的单隐层前馈神经网络(Single-hidden Layer Feedforward Neural Network, SLFN),在2004年由黄广斌教授等人提出,该算法通过大量的样本计算确定神经网络的传输参数,相对于BP神经网络因使用梯度下降法迭代计算传输参数耗费大量时间,极限学习机计算过程无需迭代,具有训练速度快的特点[5-7]。

手写数字识别在邮件分类、车牌识别和银行票据识别等方面的广泛应用使之成为了图像处理和模式识别领域的一个研究热点。目前已经存在的手写字符识别方法包括模板匹配法、支持向量机和决策树等[8-12]。本文采用BP神经网络、原始极限学习机、正则极限学习机和傅里叶变换优化极限学习机算法进行手写体数字字符识别仿真实验,对4种算法的识别率和时间复杂度进行了比较研究。该手写体数字字符识别实验用于本科生实验教学可提高学生对神经网络的理解和认识,让学生掌握利用神经网络实现手写体数字字符识别的方法,提高同学们综合运用所学知识解决实际问题的能力[13]。

1 极限学习机

单隐含层前馈神经网络模型如图1所示,包括输入层、隐含层和输出层,其中隐含层第i个神经元的模型如图2所示,隐含层第i个神经元的输入xj与对应的权值wij相乘求和后加偏置b,经激活函数g(x)限幅得隐含层神经元输出为

(1)

图1 单隐含层前馈神经网络模型图

图2 隐含层第i个神经元模型图

(2)

为了使模型的实际输出oj零误差逼近于期望输出tj,即

(3)

输入权值矩阵W和偏置矩阵b可随机设定[5-6],根据Moore-Penrose广义逆矩阵和最小范数最小二乘解[14]的相关定理,采用矩阵表达式得:

(4)

式中:H+为隐含层输出矩阵H的Moore-Penrose广义逆矩阵。

神经网络训练过程即求传输参数的过程,对ELM而言即求输出矩阵β的过程,根据式(1)~(4)完成ELM的参数训练过程,用所得输出权值矩阵β进行测试,对测试结果进行对比和分析,测试结果若不满足要求,可通过适当增加训练样本或增加隐含层神经元个数改善测试结果。

2 极限学习机优化算法

2.1 正则极限学习机

正则极限学习机是一种通过参数γ来调节原始极限学习机数学模型存在的经验和结构风险的比例,从而提高原始极限学习机泛化能力,防止原始极限学习机易导致过拟合问题的优化算法[15],其数学模型由下式表示,使J值达到最小:

(5)

用拉格朗日乘子法求解式(5)所示数学模型的最优解,R-ELM的数学模型可用拉格朗日方程表示为:

L(β,ε,α)=

(6)

求得输出权值矩阵

(7)

正则极限学习机通过优化参数γ和矩阵D优化输出权值矩阵,通过式(7)计算所得输出权值矩阵β进行正则极限学习机的测试。

2.2 傅里叶变换优化极限学习机算法

傅里叶变换是一种信号分析的方法,傅里叶变换优化极限学习机算法[16]将隐含层神经元的输出做傅里叶变换,将图像的特征转换为特定的频率信号,通过拉格朗日乘子法优化原始极限学习机的输入权值矩阵,具体模型如下式所示,使J取最小值:

(8)

(9)

用拉格朗日乘子法求解,列写拉格朗日方程为:

(10)

对式(10)求梯度得:

(11)

求得优化后的输入权值矩阵为:

(12)

优化输出权值矩阵的数学模型为

(13)

式中,ε=O-T=Hβ-T。列写优化输出矩阵的拉格朗日方程为:

(14)

与以上优化输入权值矩阵求解方式相同,解得优化后的输出权值矩阵为

(15)

傅里叶变换优化极限学习机算法在对输出权值矩阵β进行优化之前对输入权值矩阵w也进行了优化。

3 手写体数字字符识别仿真实验

实验采用BP、ELM、R-ELM和DFT-ELM 4种算法进行手写体数字字符识别仿真实验,样本选择MINIST数据库中的10 000个手写体数字作为训练样本,部分样本图片如图3所示,各字符笔画的粗细和形状各不相同,具有代表性。神经网络经过训练后,选择1 000个样本进行测试,其中0~9各数字均为100个,最后对4种算法手写体数字字符识别结果进行对比和分析。

图3 部分样本图片

3.1 手写体数字字符样本预处理

MINIST样本库中手写体数字图像均为28×28的灰度图,黑色值为0,白色值为255。为减少运算量,降低数据维数,采用式(16)对样本图片进行降维,其中r=c=2,图4为数字样本图片5的降维结果,经过降维后图像像素为14×14。图5为降维后的样本图片5的数据特征,横坐标为像素点顺序,纵坐标为灰度值。

(16)

图5 样本图片5的灰度特征图

3.2 手写体数字字符识别仿真

(1) 基于BP神经网络的手写体数字字符识别算法仿真。Matlab工具箱中为神经网络的训练提供了大量的库函数,本实验中采用newff函数创建BP神经网络,train函数完成BP神经网络的训练,图6所示为隐含层神经元个数为200时BP神经网络的训练过程。图6显示了该BP神经网络输入层具有196个神经元,隐含层具有200个神经元,输出层具有10个神经元,最大迭代次数为1 000次,训练时间为24 s。

图6 BP神经网络训练过程

(2) 基于ELM算法的手写体数字字符识别算法仿真。经过数据初始化后,通过对训练样本的学习确定ELM传输过程中的传输参数,即输出权值矩阵β,期望输出T为一个1×10的矩阵,数字为0~9时对应的期望输出,如表1所示。

表1 各数字对应的期望输出T

当隐含层神经元个数为200时测试所得神经网络的输出如图7所示,图7(a)~(j)分别表示测试样本为0~9时ELM网络输出。

(3) R-ELM算法实现手写体数字字符识别。R-ELM优化算法的目标是提高原始极限学习机的泛化能力,根据式(7)计算R-ELM算法的输出权值矩阵,其中调节参数γ=0.25,矩阵D取单位对角矩阵,输出方式与ELM相同。

(4) DFT-ELM算法实现手写体数字字符识别。DFT-ELM根据式(12)计算输入权值矩阵,式(15)计算输出权值矩阵,其中d1=d2=0.01,γ1=γ2=0.5,输出方式与ELM相同。

(a)数字0的识别结果(b)数字1的识别结果

(c)数字2的识别结果(d)数字3的识别结果

(e)数字4的识别结果(f)数字5的识别结果

(g)数字6的识别结果(h)数字7的识别结果

(i)数字8的识别结果(j)数字9的识别结果

图7 神经元个数为200时ELM算法识别结果

3.3 实验结果分析与对比

为了比较BP、ELM、R-ELM和DFT-ELM 4种算法对手写体数字字符的识别效果,统计各数字识别正确的个数,识别结果如图8所示,横坐标为待识别的数字,纵坐标为该数字识别正确的个数,其中图8(a)、(b)、(c)、(d)为隐含层神经元个数为50时各算法的识别结果,图8(e)、(f)、(g)、(h)为隐含层神经元个数为200时各算法的识别结果。

对图8所示识别结果进行统计,4种算法在隐含层神经元个数分别为50和200时各数字字符识别正确的个数及平均识别率如表2各数字字符识别结果统计所示,各算法实现过程所需时间如表3所示。由表2各数字识别结果统计和表3各算法识别过程所需时

(a)BP网络识别结果(N=50)(e)BP网络识别结果(N=200)

(b)ELM识别结果(N=50)(f)ELM识别结果(N=200)

(c)R⁃ELM识别结果(N=50)(g)R⁃ELM识别结果(N=200)

(d)DFT⁃ELM识别结果(N=50)(h)DFT⁃ELM识别结果(N=200)

图8 隐层神经元个数为50和200时4种算法识别结果

间可知,各算法在隐含层神经元个数为200时的平均识别率均高于隐含层神经元个数为50时的平均识别率,且BP网络的识别率远远高于ELM及ELM的优化算法,但BP网络的训练过程消耗大量时间。

表2 各数字识别结果统计

表3 各算法识别过程所需时间

4 结 语

该实验以手写体数字字符识别为例,验证了BP神经网络、极限学习机及其优化算法的性能,极限学习机及其优化算法较传统的BP神经网络大大减少了算法的时间复杂度。BP神经网络已经在各领域得到了广泛应用,极限学习机及其优化算法除适用于手写体数字字符的识别,也可用于其他字符和图形符号的识别,同时为处理大批量数据时降低训练集规模、减少运算量和提高效率提供了新思路。将该手写体数字字符识别实验应用于本科生实验教学,通过Matlab软件编程实现手写体数字字符识别过程,让学生对神经网络的实现过程更加明确,其中图像降维和特征提取过程让学生对模式识别有了一定了解,掌握了利用Matlab软件进行程序编写和神经网络仿真实验的技能。

[1] 曹旭帆,胡同森.基于BP神经网络的含噪字符识别系统及Matlab实现[J].实验室研究与探索,2008(1):76-80.

[2] 蒋鼎国. 基于改进型BP神经网络PID控制器的温室温度控制技术[J].实验室研究与探索,2015(1):9-13.

[3] 曹旭帆,叶 舟,万 俊,等.基于BP神经网络的函数逼近实验及Matlab实现[J].实验室研究与探索,2008(5):34-38.

[4] 周 品,Matlab神经网络设计与应用[M].北京:清华大学出版社,2013,164-171.

[5] Huang Guangbin,Qin YuZhu, CheeK. Extreme learning machine:Theoryandapplications [J]. Neuroco-mputing,2006,70:489-501.

[6] Huang Guangbin,Wang Dianhui, Lan Yuan. Extreme learning machines: a survey [J]. Int.J. Mach. Learn. & Cyber.(2011)2:107-122.

[7] 赵文华,张文涛,杜欣慧. 形相似的ELM在电铁短期负荷预测中应用[J]. 实验室研究与探索,2013(11):279-282,328.

[8] 潘炜深,金连文,冯子勇. 基于多尺度梯度及深度神经网络的汉字识别[J].北京航空航天大学学报,2015(4):751-756.

[9] 杨 怡,王江晴,朱宗晓. 基于仿射传播聚类的自适应手写字符识别[J]. 计算机应用,2015(3):807-810.

[10] 李 琢,王亚利,卢奇茂,等. 带有格线边框的手写体数字串处理系统[J]. 清华大学学报(自然科学版),2002(3):387-390.

[11] 王 璇,薛 瑞.基于BP神经网络的手写数字识别的算法[J]. 自动化技术与应用,2014(5):5-10.

[12] 王一木,潘 赟,龙彦辰,等.基于自组织映射的手写数字识别的并行实现[J]. 浙江大学学报(工学版),2014(4):742-747.

[13] 王艳芬,丛潇雨,王 刚,等. 基于Simulink的Chirp-UWB通信系统综合实验设计[J]. 实验室研究与探索,2015(7):90-93,234.

[14] 张娟娟. 稳健线性回归中再生权最小二乘法的有效性研究[D].太原:太原理工大学,2013.

[15] Deng W, Zheng Q, Chen L. Regularized Extreme Learn- ing Machine[C].Computational Intelligence and Data Mining, 2009. CIDM '09.IEEE Symposium on IEEE, 2009:389-395.

[16] Man ZhiHong,LeeK,WangDianhui,etal. A robust single-hidden layer feedforward network based pattern classifier[J].IEEE Transactions on Neural Networks and Learning Systems,2011,P-3489-R2.

A Comparative Study on Handwritten Digital Character Recognition Algorithm by Simulation

CHENLong,QIEXiao-mei,HUANGXin-jing,LINHu

(School of Electronic Information, Hangzhou Dianzi University, Hangzhou 310018,China)

In this paper, we use back propagation (BP) neural network, extreme learning machine (ELM), regularized extreme learning machine (R-ELM) and DFT extreme learning machine (DFT-ELM) to realize the recognition of handwritten digital characters. Ten thousands handwritten digital samples from MINIST database are used to train neural network parameters in the process of data transmission, use the trained neural network parameters to do handwritten digital recognition test. In the light of the simulation results, BP has the best recognition accuracy, regardless of the training speed. Compared with ELM, although R-ELM and DFT-ELM have higher recognition accuracy, both of them increase the time complexity. This handwritten digital recognition simulation experiment can use to strengthen student's studying and understanding of neural networks and improve students' ability in programming and engineering application.

neural networks; extreme learing machine(ELM); handwritten digital recognition; experiment teaching

2016-03-03

浙江省2013年高等教育课堂教学改革项目(kg2013125);浙江省2015年度高等教育教学改革项目(jg2015060)

陈 龙(1979-),男,山东宁阳人,硕士,副教授,研究方向为嵌入式系统设计与应用、神经网络与机器学习。

Tel.:0571-86915094; E-mail:chenlong@hdu.edu.cn

G 642.423

A

1006-7167(2017)01-0093-05

猜你喜欢
手写体字符识别学习机
基于大数据下的手写体识别的设计与研发
披着书法外衣的手写体
极限学习机综述
基于极限学习机参数迁移的域适应算法
一种改进深度学习网络结构的英文字符识别
分层极限学习机在滚动轴承故障诊断中的应用
对维吾尔语手写体在线计算机识别技术的几点探讨
仪表字符识别中的图像处理算法研究
模糊聚类算法下的手写体数字识别
基于CUDA和深度置信网络的手写字符识别