



全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
文章编号:100622475(2006)1120067204 收稿日期:2006207217 作者简介:戴永伟(19812 ) , 男,山东济宁人,西安工业大学电信学院硕士研究生,研究方向:图像处理,模式识别。 BP网络学习算法研究及其图像模式识别应用 戴永伟,雷志勇 (西安工业大学电信学院,陕西 西安 710032) 摘要:BP神经网络的训练性能主要包括收敛速度和收敛精度等方面,该训练性能在很大程度上取决于所选择的网络学 习算法。本文针对模式识别应用领域,通过实例,运用Matlab编程对部分较好的网络学习算法的训练性能进行了比较研 究,给出了模式识别应用过程中BP网络学习算法的选择依据。在此基础上,运用BP网络编程实现了对常见单位符号图 像目标的模式识别,并通过识别算法的实现过程,分析了用BP网络进行图像目标模式识别的具体思路和方法。 关键词:BP神经网络;学习算法;训练性能;模式识别;Matlab编程 中图分类号:TP183 文献标识码:A Research on BP Network Learning Algorithm and Application in Picture Pattern2recognition DAI Y ong2wei ,LEI Zhi2yong (Electronic and Information Institute , Industry University of Xian ,Xian 710032 ,China) Abstract :Training performance of BP neural network includes convergence precision and convergence rate and depends on the learning algorithm chosen to a great extent.Aiming at pattern2recognition application , with Matlab programming tool ,this paper studies the training performance of some learning algorithms through comparison and offers the choice basis of learning algorithms in pattern2recognitionfield. On this basis , this paper offers a kind of programming realization of using BP network to recognize the picture objects of common unit symbols. Further ,through the realization course of the recognition algorithm ,this paper analyses the concrete thinking and method of using BP network in pattern2recognition application of picture objects. Key words :BP neural network;learning algorithm;training performance ; pattern2recognition; Matlab programming 0 引 言 BP神经网络是由众多的神经元经可调的连接权 值连接而成,其结构简单,可操作性强,能模拟任意的 非线性输入输出关系,广泛应用于函数逼近、 模式识 别、 分类、 数据压缩等领域。模式识别是指在面对某 一事物时将其正确地归入某一类别。模式识别系统 一般都由设计和实现两个过程组成。设计是指用一 定量的样本进行分类器的设计,实现是指用所设计的 分类器对待识别的样本进行分类决策。这两个过程 分别对应于神经网络的训练和识别应用。在具体的 模式识别应用训练过程中,BP网络的学习收敛速度 及收敛精度跟所选择的学习算法密切相关。 1 BP神经网络算法原理 1.1 BP网络结构及运算机制 图1 三层BP神经网络 BP网络由输入层i、 隐含层j、 输出层k及各层之 间的节点连接权所组成,其拓扑结构如图1所示。网 计算机与现代化 2006年第11期JISUANJI Y U XIANDAIHUA总第135期 1994-2008 China Academic Journal Electronic Publishing House. All rights reserved. 络的学习过程由信息正向传播和误差反向传播构成: (1)正向传播过程:输入信息从输入层经隐含层逐层处 理,传向输出层。若输出层的实际输出与期望的输出不符,则 转入误差的反向传播。 输入层:输入值一般为样本各分量输入值,输出值一般 等于输入值。 隐含层:对于节点j ,其输入值netj为其前一层各节点 输出值Oj的加权和; netj= i wijOi(1) 输出值为:Oj=fs (net j) (2) 式中fs(3)称为激励函数或作用函数,一般采用sigmoid 函数。隐含层可为一层或多层。 输出层:输出层的输入netk和输出Ok与隐含层类似。 (2)反向传播过程:运用链导数法则将连接权关于误差函 数的导数沿原来的连接通路返回,通过修改各层的权值使得 误差函数减小。设网络输入模式样本为xp= xpi ,期望输出 为tpk ,对于所有的学习样本,系统的均方误差为: E= 1 2p p k (t pk- Opk) 2 (3) 为了达到学习目的,要根据误差函数来相应地调整网络 的连接权值,标准BP学习算法采用最速梯度下降法调整权 值,输出层的权值调节公式: wjk(t + 1) =wjk (t) + wjk(4) wjk= - 9 9wjk = kOj(5) k= (tk- Ok )O k(1 - Ok) (6) 式中: 0 1 ,称为学习率。 隐层权值调节公式与输出层类似。 1.2 标准BP算法即最速梯度下降算法的不足 最速梯度下降算法,可以使权值和阈值向量得到 一个稳定的解,但存在一些缺点,如收敛速度慢,网络 易陷入局部极小,学习过程常常发生震荡等。 2 BP网络改进学习算法 1.动量BP算法。 动量BP算法在梯度下降算法的基础上引入动量因子,以 前一次的修正结果来影响本次修正量。一方面当前一次的修 正量过大时,算法使本次修正量减少,以保持修正方向向着收 敛的方向进行;另一方面,该算法总是加速同一梯度上的修正 量。 2.学习率可变的BP算法。 在训练的过程中,该算法使学习的步长尽量地大,学习率 则根据局部误差曲面进行相应的调整。当误差以减小的方式 趋于目标时,学习率增加,进而步长增加;而当误差增加超过 事先设定值时,该算法使学习率减少,从而步长减小,同时舍 去前一次修正过程。 3.弹性BP算法。 RPROP算法在进行权值的修正时,仅仅用到梯度的符号, 而权值大小的改变取决于与幅值无关的修正值。当连续两次 迭代的梯度方向相反时,权值和阈值的修正值增加,否则减 小,从而克服梯度幅度偏导的不利影响。 4.变梯度算法。 最速梯度下降算法是沿着梯度最陡下降方向修正权值 的,这时,虽然误差函数的误差值减小的速度是最快的,但收 敛的速度不一定是最快的。而变梯度算法,沿着变化的方向 进行搜索,使其收敛速度更快。变梯度算法的第一次迭代沿 最陡梯度下降方向开始搜索,然后,决定最佳距离的线性搜索 沿着当前搜索的方向进行。当前的搜索方向,由上一次迭代 的梯度和搜索方向共同决定。 5.拟牛顿算法。 牛顿法是一种基于二阶泰勒级数的快速优化算法。其基 本方法是: x(t + 1) = x(t) - A21(t)g(t)(7) 式中 :A(t) 为误差性能函数在当前权值和阈值下的矩阵 (二阶导数)。 牛顿法需要计算Hessian矩阵,付出的代价比较大。拟牛 顿法,用近似值来修正Hessian矩阵,修正值被看成梯度的函 数,从而节省了计算时间。 6.LM算法。 当误差性能函数具有平方和误差的形式时,Hessian矩阵 可以近似表示为: H=JTJ(8) 梯度的计算表达式为: g =JTe(9) 式中:H是包含网络误差性能函数对权值和阈值一阶导 数的雅可比矩阵,是网络的误差向量。LM算法用上述近似 Hessian矩阵按下式进行修正: x(t + 1) = x(t) - JTJ +I21JTe(10) 3 基于模式识别应用域的BP学习算 法训练性能分析 下面通过实例,对上述BP网络学习算法在模式识 别应用域的训练性能进行比较分析研究。为了体现比 较的全面性和通用性,本文依据网络规模选取了三类 模式识别实例,第一类网络包含有几十个权值,第二类 网络包含有数百个权值,第三类包含有数千个权值。 下面对各实验的实验条件及结果分别介绍如下: 实例一 两类模式识别。 输入目标向量为:1 2 1 4; - 1 1 2 4; - 2 1 2 3; - 4 0 2 5 ; 输出目标向量为:0.2 0.8 0.8 0.2 ; 待识别向量包含4个输入元素,选用两层神经网络,隐层 神经元个数为9 ,输出层神经元个数为1;隐层和输出层采用 的传输函数均为logsig ,误差性能函数为均方误差性能函数, 权值和阈值的调整函数为trains;训练的最大步长值为5000 , 误差性能目标值为0.001 ,学习率为0.08。 实例二 印刷体字符09的识别。 输入为印刷体数字88的二值图像,输出为09的数 值量,每个数字的训练集均包含有不同字体、 字号的9个训练 样本;待识别向量包含64个输入元素,选用两层神经网络,隐 86 计 算 机 与 现 代 化2006年第11期 1994-2008 China Academic Journal Electronic Publishing House. All rights reserved. 层神经元个数为18 ,输出层神经元个数为1;隐层和输出层采 用的传输函数分别为sigmoid和pureline ,误差性能函数为均方 误差性能函数,权值和阈值的调整函数为trains;训练的最大 步长值为2500 ,误差性能目标值为0.001 ,学习率为0.05。 实例三 印刷体大写英文字母AZ的识别。 输入为印刷体大写英文字母1616的二值图像,输出为 025的数值量,每个符号的训练集均包含有不同字体、 字号 的9个训练样本;待识别向量包含256个输入元素,选用两层 神经网络,隐层神经元个数为25 ,输出层神经元个数为1;其 他实验条件同实例二。 三个实例的实验结果总结如表1所示。 表1 模式识别应用中BP学习算法训练性能实验对比 训练 函数 BP算法 实例一实例二实例三 训练 次数 收敛 精度 训练 次数 收敛 精度 训练 次数 收敛 精度 Traingd标准BP3411 0. 992500 0. 982350. 96 T raingdm动量BP3200. 992500 2. 8725003. 97 Traingda变学习率标准BP800. 962400 0. 992750. 99 Traingdx变学习率动量BP830. 955210. 991210. 97 Trainrp弹性BP160. 511120. 99280. 52 Traincgf变梯度F2R修正70. 58670. 96320. 70 Trainscg变梯度SCG算法50. 42700. 90300. 88 Trainbfg拟牛顿BFGS算法150. 59510. 97 训练失败无 Trainoss拟牛顿OSS算法150. 881190. 99500. 99 TrainlmLM算法60. 15110. 26 训练失败无 由上述实验数据可知,在模式识别领域,所选择 的学习算法的训练性能不仅和学习算法的类别有关, 而且和所构造BP网络的网络规模密切相关。在网 络规模比较小时,弹性BP算法、 变梯度算法、 拟牛顿 算法和LM算法都有较好的训练性能。但随着网络 规模的变大,弹性BP算法和变梯度算法的性能依旧 比较好,而拟牛顿算法和LM算法的训练性能则开始 下降甚至训练失败。本文分析认为,拟牛顿算法和 LM算法的训练性能之所以随着网络规模的变大而开 始下降,这是与它们的算法原理分不开的,这两种算 法都是以近似二阶训练速率对权值进行修正,它们虽 然用近似值的计算来代替了Hessian矩阵的计算,但 其近似值的计算量仍比较大,而且对存储空间的要求 较高。网络规模越大,它们的这种存储和计算需求也 越明显。 4 常见单位符号的图像目标模式识别 算法Matlab编程实现 依据上述BP学习算法训练性能的比较结论,本 文选用弹性BP算法设计并编程实现了常见单位符 号图像目标的神经网络模式识别算法。本文选取的 待识别单位符号集具体为 ? kg mg cc 。下面将具体介绍识别算 法的原理及实现步骤,与此同时分析并阐述用BP网 络进行图像目标模式识别的具体思路和方法。 (1)图像的预处理。 预处理是为图像目标特征的提取做准备,所选用的图像 目标识别特征不同,所用的图像预处理算法也不同。本识别 算法选取了单位符号图像目标的灰度特征作为识别特征,其 所采用的基本预处理方法为:将待识别图像转化为灰度图像, 对图像进行二值化,分离出背景和图像目标,截取图像目标的 最大矩形区域,将此区域的图像经过集合变换,使之变成N N的二值图像(其中N值可根据图像具体情况进行选取,它决 定了图像目标特征集的维数,本算法中选取N为16) ; 该部分的主要实现代码如下: x = imread(m ,bmp ) ; bw = im2bw(x ,0.5) ; i ,j =find(bw = = 0) ; bw1 = bw(imin:imax ,jmin:jmax) ; rate =N/ max(size(bw1) ; bw1 = imresize(bw1 ,rate) ; i ,j = size(bw1) ; p1(i1 + 1:i1 + i ,j1 + 1:j1 + j) = bw1; p1 = - 1.3p1 +ones(16 ,16) ; (2)图像目标特征的提取即网络训练样本集的构建。 对于图像目标来说,它的图像特征有许多种,诸如:色彩、 亮度、 面积、 形状、 长宽比等,我们所选择的识别特征矢量集应 由图像目标的典型特征构成,对于不同的应用场合,其所选取 的图像目标的典型特征是不固定的。本算法选取了图像目标 的灰度特征作为识别特征,用NN维的图像目标灰度值构 成训练样本集的输入矢量;该部分的实现代码如下: for m = 0:N - 1 p(m3N + 1:(m + 1)3N) =p1(1:N ,m + 1) ; t =M; 上述代码只是提取了一个训练样本,将上述算法应用于 不同单位符号的不同图像的特征提取,便可以形成一个训练 样本集; (3)构造BP神经网络,并根据训练样本集对其进行训练。 在构造BP神经网络时,训练函数根据第3部分的函数训 练性能实验结论进行选取,对于网络的传输函数、 权值调节函 数、 隐层神经元个数以及训练参数等,它们的选取应根据具体 的实际情况进行确定。本算法中选用两层神经网络:隐层神 经元个数为25 ,输出层神经元个数为1;隐层和输出层采用的 传输函数分别为sigmoid和pureline ,误差性能函数为均方误差 性能函数,权值和阈值的调整函数为trains;训练的最大步长 值为2500 ,误差性能目标值为0. 001 ,学习率为0. 05。该部分 的主要实现代码如下: net = newff (pr , 1 25 , logsig purelin ,trainrp, learngdm ) ; net.trainParam. epochs = 2500; net.trainParam. goal = 0.001; net = train(net ,p ,t) ; save net1 net ; 96 2006年第11期戴永伟等:BP网络学习算法研究及其图像模式识别应用 1994-2008 China Academic Journal Electronic Publishing House. All rights reserved. (4) BP神经网络的识别应用。 将待识别的测试样本向量输入已训练完毕的BP网络,输 出识别结果; a ,Pf ,Af = sim(net ,p) ; a = round(a) 上面便是整个算法的Matlab编程实现过程。对该算法程序 进行识别仿真实验后发现,该算法对常见单位符号测试样本集具 有良好的识别效果,特别是对印刷体符号测试样本,识别率达到 了95 %,对非印刷体测试样本识别率也达到85 %以上。 5 总结与展望 本文对模式识别领域BP学习算法的训练性能 给出了比较性结论,在此基础上编程实现了常见单位 符号图像目标的BP网络识别算法,并结合该算法对 应用BP网络进行图像目标模式识别的具体思路和 方法进行了分析和阐述。对于图像目标的模式识别 来说,它是一个整体性的实现过程,包括图像预处理、 特征空间选择与提取、 识别算法等环节,各个环节相 互依赖,相互协作,而其中又以识别算法的选择为中 心应用环节。对于BP神经网络来说,它是整体性的 网络系统,其网络的整体性能决定于网络结构、 隐层 结点数、 学习函数选择等许多方面,而其中又以学习 函数的选择最为核心关键。我们在研究图像目标BP 网络模式识别算法的过程中,应当根据具体应用背景 与条件,将模式识别过程的整体性和网络性能的整体 性结合起来进行考虑。本文从网络训练性能的角度 出发,研究比较了BP学习算法的性能,下一步还需 从提高网络系统的整体性能着手,突出解决网络结 构、 隐层结点数、 学习函数选择等环节的组合协作及 优化问题。 参考文献: 1 周开红,康耀红.神经网络模型及其Matlab仿真程序设 计M.北京:清华大学出版社,2005. 2 R Hecht Nielsen. Theory of the back propagation neural net2 workJ . Proc.of IJCNN ,1989(1) . 3 边肇祺,张学工.模式识别M.北京:清华大学出版社, 1999. 4 王永骥,涂键.神经元网络控制M.北京:机械工业出版 社,1998. 5 楼顺天,施阳.基于Matlab的系统分析与设计 神经 网络M.西安:西安电子科技大学出版社,1998. (上接第32页) (1)新加入的Peer使用该Peer的身份标识UUID作为管道的 名字创建JxtaServerSocket等待其他Peer的连接。将该管道广 告进行本地和远程发布。 (2)新加入的Peer使用点组成员资格服务获得点组其他 成员的名字,和成员对应的身份标识。 (3)选择希望建立群体通信的成员,使用对应成员的身 份标识也就是该成员创建的管道建立和其他希望建立群体通 信的成员之间的双向通信。 (4)将需要发送的消息按照预先规定的协议格式化处理 并发送。 图4反映了点组内多个成员使用上面群组通信 的算法进行协同绘图。 图4 点组成员协同绘图 4 结束语 由于JXT A具有互操作性、 平台无关性、 安全支持 和开放性等特点,JXT A的应用越来越广,更加突出了 JXT A的优势所在。本文
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 合肥市招聘政府专职消防员笔试真题2024
- 2025年玉环社区专职工作人员招聘真题
- 家庭教育指导服务市场供需关系优化与人才培养策略报告
- 偏瘫护理题库及答案
- 烹饪原料题库及答案
- 喷漆考试题及答案
- office基础题目及答案
- hp同人题目及答案
- 金融科技赋能下2025年金融机构风险管理的创新实践报告
- 钢结构专业考试题库及答案
- 在县政协党组理论学习中心组2025年第六次集中学习上的研讨发言(五个进一步到位)
- 第8课 认识TCP-IP 课件 2025-2026学年七年级上册信息技术浙教版
- 足球裁判规则讲解
- 2025年重庆对外建设集团招聘考试笔试试题(含答案)
- 信访工作心得及改进措施总结报告
- 企业总监管理办法
- 2025年中小学体育教师招聘考试专业基础知识考试题库及答案(共2337题)
- 云南省康旅控股集团有限公司招聘考试真题2024
- 2025年教育法律法规试题库及答案
- (标准)第三方合同转让协议书
- GB/T 20988-2025网络安全技术信息系统灾难恢复规范
评论
0/150
提交评论