2007年第5期 沙洋师范高等专科学校学报 j-oumal of Shayang Teachers CollegeNo.5 2007 ‘ BP神经网络模型及其应用 邢进良 (沙洋师范高等专科学校数理系,湖北沙洋448200) 摘要:本文提出了一类神经网络模型,介绍了它的算法及其如何设计出该模型,最后通过神经网络对字符进行识 别的例子,说明了神经网络在实际中的应用。 关键词:神经网络模型;网络训练;网络仿真;BP算法 中图分类号:TP183。TP391.4 文献标识码:A 文章编号:1672—0768(2007)05—0046—04 1、人工神经网络模型 若干层,每一层的神经元只接受前一层神经元的 人工神经网络是一个并行、分布处理结构,它 输出。而相互连接型网络中任意两个神经元之间 由处理单元及称为联接的无向信号通道互连而 都有可能连接,因此输入信号要在神经元之间反 成。这些处理单元具有局部内存,并可以完成局部 复往返传递,从某一初态开始,经过若干次的变 操作。每个处理单元有一个单一的输出联接,这个 化,渐渐趋于某一稳定状态或进入周期振荡等其 输出可以根据需要被分支成希望个数的许多并行 他状态。 联接,且这些并行联接都输出相同的信号,即相应 处理单元的信号,信号的大小不因分支的多少而 变化。处理单元的输出信号可以是任何需要的数 学模型,每个处理单元中进行的操作必须是完全 局部的。[ ](胛;m 图1—2 PDP模型下的人工神经网络模型 2、 P神经网络的结构和算法 BP神经网络是一种具有一个输入层,一个或 多个隐层和一个输出层的多层网络。隐层和输出 ∑ +0‘0 =jr(j ) 层上的每个神经元都对应一个激发函数和一个阈 其中( =1,2,…… )表示对该神经元的输入, 值。每一层上的神经元都通过权重与其相邻层上 为神经元的阈值,∞ 表示从神经元 到神经元 的 的神经元互枢连接。对于输入层上的神经元其阈 连接投值,n为输入信号数目,0 为神经元输出, 值为零,其输出等于输入。图2—1给出了一个带 jr(。)称为传递函数。 单隐层的二 履(不含输入层)BP卒申经网络的一般 n 神经网络的基本处理单元是神经元,它是一 个多输入、单输出的非线性元件,其输入输出关系 可描述为: =;结构。靠'f)牵 经网络隐层和输出层t的某神经元 的输出出下式确定: : (胁0)= =( + ) 式中. (。)表示对应该神经元的激发函数; 表 图l一1人工神经元谟 示该神经霓的阈值; 表示对该神经元的输入;∞ 激发函数 神经网络是由大量神经元广泛互连而成的网 表示从神经元 到神经元 的连接权值;络。根据连接方式的不同,神经网络可分成两大 霞前多采用连续可微非线性的Sigmoid函数 ) 类:没有反馈的向前网络和相互结合型网络。向前 5j 1+P—x。 网络由输入层、中阉层和输出层组成,中间层可有 一一 收稿日期:2007—05—16 作者简介:邢进良(1960一),男,河南省淅川县人,沙洋师范高等专科学校副教授,主要从事数学应用及数学教 育教学研究。 46 维普资讯 http://www.cqvip.com 邢进良 圈2—1 BP网络模型结构 】 BP算法所采用的学习过程(即权煎调整过 程)由正向传播和反向传播组成。在正向传播过 程中,每一层神经元的状态只影晌到下一层神经 元网络。如果输出层不能得到期望输出,就是实际 输出值与期望输出值之间有误差,那么转入反向 传播过程,将误差信号沿原来的连接通路返圈,通 过修改各层神经元的权值 逐次地向输入层传播 去进行计算,再经过正向传播过程,这两个过程的 反复运用,使得误差信号最小。实际上,淡差廷到 人们所希望的要求时,网络的学习过程就结 c3](P912; ̄) 承0 设育P个n维输入样本 (P=l,…, ’)和 相应的m维期望目标输出 。(p:i,…,P) 若构 造网络的误差函数为: =÷∑∑( ~Opi)。 刚采用层p学习算法总能使E在学习中接梯 皮下降。 蠹 学习算法可以筒述女R下: 黪步jl 将鲁衩蕈和阉值的驾始值爨爱匀小 的随机数: 穆步2、输入学习样本 (P=1.…,P)和相 应的目标输出t (p=l,…。P),对每个学习训练 {Xp,t }进行步3一一步5; e步3、计算网络的实际输出及隐层神经元 的输出: 0 =Ji kNet )= ∑ 。+ ) O步4、计算学习误差 输出层: =0 (1一 (t 一0何) 隐 层: = (1一 )∑ 肿计算从输出层开始,逐层向后进行; BP神经网络模型及其应用 ●步5、更新权重刹阈值:∞ (t+i)=∞ + D f+ (甜 ( )一∞ (t一1)) oj(t+1)=8,叼 ,+ ( ,(£)一8,(t一1)) 其中研为学习速率, 为动量系数; ●步6、判断误差函数E是否收敛到所给学习 精度 (E≤占?),若满足学习精度要求则结束学 习,否则转步2继续进行。 (参见图2—2) 图2—2 BP网络模型的算法框图 3、BP神经网络设计的一般过程 3 i,生成BP神经网络 采用 e 函数可以用来创建一前馈BP网 络。怼e ’函数的常用格式为 net 昆 <艘, sl s2…SN ,;TFI TF2… FⅣ},BTF) 其中 贾为R 2维矩阵,表示R为维输入矢 量中每维输入的最小值与最大值的范围;若神经 网络有Ⅳ层 则[5 …S叫中各元素分别表示 各层神经元的数目;; i F2…”w}中各元素 分别表示各层神经元荣耀的传递函数;B 表示 神经网络训练时所使用的训练函数。另外, c厂 可以创建一多层翦绩BP网络;n8{ 可以创建一 前馈输入延迟露 髓络。 3.2 网络初始化 用小的随祝数对每一一层 权麓"tfd和偏差6初 始化,以像证网络不被大的加投输入饱和。可以采 用rana s通过下列语句完成。 =rands(S,PR)B=randsts)输入S为神 经元个数; 为随机权值矩阵;刀为闭值矩阵。 3.3.网络训练参数的设定 在BP神经网络生成和初始化以后,即可利用 现有的“输入—~目标”样本矢量数据对网络进 行训练。BP网络的训练通常采用train函数来完 成。 对不同问题,在训练之前有必要对网络的训 练参数net。train。Param进行适当的设置。表2—1 为几个主要的神经网络训练参数及含义。 47 维普资讯 http://www.cqvip.com 2007年第5期 沙洋师范高等专科学校学报 Journal of Shayang Teachers College No.5 2007 表2—1几个主要的神经网络训练参数及含义 训练参数 参数含义 默认值 /let.train.Param.epoch 训练步骤 l00 net.train.Param.show 显示训练结果的间隔步骤 25 net.train.Param.goal 训练目标误差 0 net.train.Param.time 训练允许时间 | net.trai.nParam.min..grad 训练中最小允许梯度值 Le一6 3.4.网络训练 在设置完训练参数之后,就可以调用train函 数对网络进行训练了。train函数的常用格式如下: [net,tr]=train(net,P,T) 其中,P为输人样本矢量集;T为对应的目标 样本矢量集;等号右、左两侧的net分别用来表示 训练前、后的神经网络对象;tr存储训练过程中的 步骤信息和误差信息。当训练步骤大于net.train. Param.epoch、训练误差小于net.train.Param. goal、训练时间超过net.train.Param.time,或误差 梯度值小于net.train.Param.rain_grad时,训练 都将被自动终止,并返回训练后的神经网络对象。 3.5.网络仿真 利用sim函数可以对训练后的网络进行仿真。 sim函数的常用格式如下: Y=sim(net,P) 3.6.数据预处理和后处理函数 为了提高神经网络的训练效率,在某些情况 下需要对”输人一目标”样本集数据作必要的预 处理。如利用premnmx或prestd函数可以对输人和 目标数据集进行归一化处理,使其落人[一1,1] 区间;利用prepca函数可以对输人样本集进行主 元分析,以减小输人个样本矢量间的相关性,从而 起到降维的目的;利用postreg函数可对训练后网 络的实际输出和目标输出作线性回归分析,以检 验神经网络的训练效果。 4、利用BP神经网络进行字符识别 4.1.字母数字化过程 将实际问题抽象转化为神经网络可以接受的 数据输人,经神经网络计算后,再把网络的输出转 化为实际问题的解。把一个字母横向分为7份,纵 向分为5份,如图4—1所示。 图4—1理想字母 48 图中由×表示的黑方格记为1,空白方格记为 0。这样每个字母都转化为一个7×5的Boral矩 阵。例如字母 所对应的Boral矩阵为[1,1,1,1, 1;1,0,0,0,0;1,0,0,0,0;1,1,1,1,1;1,0,0,0,0; 1,0,0,0,0;1,1,1,1,1]。 但是,上图只是理想图像系统得到的结果,实 际中的图像系统总会存在一些噪声干扰或者是非 线性因素,实际得到的字母的网格图如图4—2所 示。 | l, ÷ × t 图4—2带有噪声的字母日 设计的网络要不仅能够对理想的输人向量进 行很好的分类,也要对含有误差的输人向量有合 理的准确度。在本问题中,把35个Boral值作为一 个具有35个元素的输人向量。需要网络通过输出 一个具有26个元素的输出向量来区分字母。这个 26元素向量的每一个代表着一个字母。在正常运 行的情况下,对于一个输人字母,网络要能输出一 个向量,它的对应位置元素值为1,其他位置为0。 例如,字母 对应的向量,其第一个位置的元素值 为l(因为 是字母表中的第一个字目),第2—26 个位置的元素值均为0。 4.2.网络结构设计 网络的设计目标是为了使其输出矢量在正确 的位置上输出为1,而在其他位置上输出为0。在 实际中,网络不可能接收到一个理想的Boral向量 作为输人。为了使网络具有抗干扰能力,网络还必 须能够有容错能力。 建立一个前馈BP神经网络net,网络结构为 35—20—26的结构,即输人层35个神经元输出层 26个神经元。隐含层取一层,20个神经元。 4.3.网络的训练 输人层为35个神经元,即用7×5矩阵的Bora 值表示每个数字,用此7×5:35的元素组成的一 个字母的列矩阵,那么26个字母则分别由表示26 个字母输人的列矩阵组成35×26的输人矩阵。然 后把这26个字母送人名为alphabet的变量中: alphabet=[fe2,ze2,……Ie26]。 输出层为26个神经元。因为目标矢量是希望 在每一个字母输入时,在26个字母中它所排顺序 的位置上输出为1,而在其他位置上的输出为0。 因此,取目标矩阵为对角线上为1的26×26的单 维普资讯 http://www.cqvip.com 邢进良 位阵,可用以下MATLAB命令来实现:target= eye(26)。 训练函数为梯度下降w/动量和自适应fr的 P算法训练函数(traingdx)。三层传递函数分别 为对数s形传递函数、对数S形传递函数和线性传 递函数(1ogsig,logsig,purelin)。MATLAB命令具 体实现如下: >>net=newff(PR,[35,20,26],{logst‘g BP神经网络模型及其应用 一 … …L 图4—4带有噪声的英文字母 用这6个字母代替变量(alphabet)中所对应 logsig',purelin1,traingdx ̄); >>net.trainParam.epochs=2000: >>net.trainParam.show=50: >>net=train(net,alphabet,target); 其中PR为35×2的网络输入矢量取值范围 矩阵,即[0,1;0,J;……0,1];训练次数为2000 次;两次显示之间的训练次数为50;网络性能目标 为0;其他学习速率、动量常数等训练参数均选择 系统默认值。 生成的net网络功能函数如下: ifmctions: adaptFcn: ̄rains initFcn: ̄nitlay performFcn:饥se trainFcn: ̄raingdx 4.4.网络的仿真 对训练好的网络进行仿真。用|,表示网络的 输}}{结果,MATKAB命令语句如下: >>Y=sier(net,alphabet)。 再将输出y经过一层竞争网络函数(Compet) 处理,使网络的输出只在最近输入值的输出位置 输出为1,保证在其他位置输出为0。把处理后的 结果记录为矩阵OnS,则arts为26阶的单位矩阵. 与f=j标输出target矩阵完全相同。说明该网络对 26个英文字母进行了正确的模式识别。 4.5.带有噪声信号的洲练 为了获得…个对噪声不敏感的网络,采用“理 想加随机噪声”的输入矢量训练神经网络。本文 选取的含有噪声的6个英文字母如图4—4所示。 . 的理想字母,其他理想字母不做变化。即创造了这 样一个变量,它由20个理想字母和6个带有噪声 的字母组成。把它输入刚络进行训练,这迫使网络 学习适当地对含有噪声的字母进行正确的识别, 不过要求是对理想的输入矢量仍能有正确的响 应。其训练结果图4—5所示。 图4—5带有噪声的网络训练训练过程误差 变化情况 4.6.再次对无噪声信号训练 在上述神经网络训练后,也可能出现神经网 络虽能够辨识出带有噪声的字母的正确位置,但 这却是以牺牲理想无噪声输入辨识的正确性作为 代价的,换言之。此时网络可能出现对理想无噪声 输入辨识错误的可能性。为此,应将网络经训练后 的权矢量作为初始值,对无噪声输入再进行训练。 以此保证网络训练对理想输入输出的正确性。 程序运行结果显示最终网络不仅能够对理想 英文字母进行识别,而且对带有噪声的英文字母 也能够完全正确地识别。 神经网络是一门涉及计算机、信息与控制、物 理学、神经生物学、心理学、语言学等各方面知识 的高度综合性学科。人工神经网络的研究还存在 着许多待研究的问题。具体来讲,今后的研究应致 力于以下几个方面:(Z)研究人工神经网络的通用 网络规模及算法,包括网络的层数、每层节点数、 连接方式、激发函数的类型等。(2)研究学习算 法,使网络的训练能即快又稳地收敛到全局最小 点,即全局最优解。(3)研究人工神经网络类似人 类的知识获取过程。… 参考文献: [1]荣辉、张济世.人工神经网络及其现状与展 望[J],电子技术应用,1995,(10). 49 维普资讯 http://www.cqvip.com 2007年第5期 J沙洋师范高等专科学校学报 Nournal of Shayang Teachers College o.5 2007 [2]蒋宗礼.人工神经网络导论[M].北京:高等 [J],南昌大学学报,1994,18,(3). 教育出版社,2001. [5]李英龙、童光煦,神经网络在采矿工程统计分 [3]孙志强,葛哲学.神经网络理论与MATLAB7 析中的应用[J],昆明工学院学报,1994,19,(5). 实现[M].北京:电子工业出版社. (责任编辑:周军虎) [4]龚向东.BP神经网络模拟软件的设计和实现 BP Neural Network Pattern and Application XING Jin—.1iang (Mathematics&physics Department,Shayang Teachers college,Jingmen。Hubei 448200) Abstract:In this passage,the author brings out the pattern of neural network and introduces its algorithm as well as the course of designing the pattern.Finally,the author reveals the application of neural network in reality,through the examples of characters which is iden ̄qed by the neural network. Key words:neural network pattem,network training,network simulation,BP algorittun (上接第3O页)辐射源类非均匀性校正算法具有 [J].1993,26,(4):307—3l1. 计算量小、校正效果较好等特点,特别是对于两点 [2]Sergio N Tortes.Kalman filtering for adaptive 多段校正法,具有校正精度高,动态范围大的特点, nonuniformity correction in infrared focal——plane ar-- 并且对IRFPA各探测单元的非线性影响不敏感。 rays[J].J.Opt.Soc.Am.&2003,20,(3). 随着均匀参考辐射源的增加,其校正精度越来越 [3]董时珍,刘小波.红外焦平面探测器非均匀性 高,即具有较好的收敛性。所以该类算法在线计算 的简化数学模型[J].激光与红外,33(3),2003. 量小,适于工程上实时实现。 [4]李庆林,皮德富,周士源.非致冷微测辐射热计 的数学模型[J].红外技术,2000,2 r、5):1O—l4. 参考文献: [5]吴亚平,张天序.红外图像的计算机仿真及仿 [1]Mark Hewich.Focal—plane Arrays Revolution— 真软件[J].红外与激光工程,2000,29(4). ize Themal Imaging.Internaional Defense Review (责任编辑:周军虎) Simulation Implement of Nonuniformity Correction Algorithms Based on Radiant Point CHEN Hua—feng TANG Yuan (1 Department of Computer,Shayang Teachers College,Jingraen,Hubei 48200 2.Faculty of Information Engineering and Auotomation,Kunming University of Science and Technology。Kuraning 65005 1) AllSTIL ̄CT:In this Article.the mathematics model of IRFPA nonunifortuity correction is firstly analyzed。and then he re— sponse model of IRFPA using the MATLAB sofwtare is established.Re! ̄ng on this model,necessary simulative data are gained nad the nonunifornfity correction algorihtms based on refcrence radinat point are simulatcd.Finally。tlm I e !uj elTiPrlt.: 10d of nonuniformity is discussed. KEY W0ltDS:IRFPA,Nonuniformity,Nonuniformity correction,MA1’I B simulation
因篇幅问题不能全部显示,请点此查看更多更全内容