一种BP神经网络学习率的优化设计
BP神经网络分类器优化技术研究

BP神经网络分类器优化技术研究BP神经网络是一种常用的深度学习模型,具有强大的非线性映射能力和自适应学习能力。
然而,其性能受到多种因素影响,如网络结构、学习率、迭代次数等。
因此,研究如何优化BP神经网络分类器的性能,提高其准确率和泛化能力,具有重要意义。
BP神经网络分类器是一种有监督学习算法,通过反向传播算法调整网络权重,使输出结果更接近目标值。
然而,传统的BP神经网络分类器存在一些问题,如易陷入局部最小值、过拟合等。
因此,研究如何优化BP神经网络分类器的性能,提高其鲁棒性和泛化能力,具有重要意义。
为了提高BP神经网络分类器的性能,许多研究者提出了各种优化算法和技巧。
例如,有些人通过改变网络结构,增加隐藏层或神经元数量,以提高模型的表达能力。
有些人通过采用不同的激活函数,如ReLU、sigmoid等,以提高模型的非线性映射能力。
还有些人通过引入正则化项,如LL2正则化,以减少过拟合现象。
本文提出了一种基于遗传算法的BP神经网络分类器优化方法。
该方法采用遗传算法自动调整网络结构、学习率、迭代次数等超参数,以获得最佳的网络性能。
具体实现步骤如下:初始化BP神经网络分类器的超参数,如学习率、迭代次数等。
利用遗传算法自动调整超参数,以获得最佳的网络性能。
具体来说,通过交叉、变异等操作,生成新的超参数组合,并计算其适应度值(即网络性能的评价指标,如准确率、召回率等)。
选择适应度值较高的超参数组合进行进一步优化,直到达到预设的停止条件(如迭代次数或准确率阈值)。
通过对比实验,我们发现采用遗传算法优化的BP神经网络分类器在处理多种数据集时,均取得了比传统BP神经网络分类器更好的性能。
具体来说,实验结果显示,优化后的BP神经网络分类器在准确率、召回率等指标上均有显著提高,同时过拟合现象也得到了有效控制。
尽管我们采用遗传算法优化了BP神经网络分类器的性能,但是仍存在一些问题需要进一步探讨。
例如,如何更有效地评价网络性能,以及如何处理不同类型的数据集等问题。
BP神经网络优化的基本方法

BP神经网络优化的基本方法
1.神经网络调优:
(1) 选择合适的网络结构:神经网络优化的首要之务是选择一个合适的
网络结构,尽可能给出正确高效的结果,并且能够有效的优化解决模
型的问题。
一般来说,在计算机视觉任务中,可采用经典的CNN和RNN网络结构。
(2) 提高网络深度:网络深度是指神经网络中隐层的数目。
一般来说,
网络深度越深,网络的表达能力就越强,模型的精度也就越高。
然而,当网络的深度较大时,会出现梯度消失或梯度爆炸的情况,所以,要
在参数调优的过程中,控制网络的深度。
(3) 模型参数调优:另外还需要调整模型的各个参数,如学习率,优化
器类型,正则化等,以便有效提高模型的性能。
2.模型融合:
(1) 考虑不同特征模型之间的不同:一组特定任务上的模型融合模型,
既可以提高模型性能,也可以降低结果输出的方差。
同时还应该考虑
不同模型之间的差异,并结合起来形成不同的模型组合,以获得最优
模型。
(2) 考虑多种融合方式:除了考虑不同模型之间的模型融合外,还可以
考虑模型融合的不同种类,如加权模型融合,投票模型融合,stacking 模型融合。
(3) 使用效果评估工具:融合多种模型后,要使用有效的效果评估工具对融合结果进行评估。
可以从准确率,召回率,F1分数等方面对模型进行评估,以确定最佳模型融合方案。
一种BP神经网络的改进算法及其应用

图1 声波孔隙度确定流程图
经过传统BP网络运算后的结果如图2所示。
图2 传统BP算法迭代误差曲线
从图2中可以看出,当网络进行到第488次迭代时,即可获得满足精度要求的结果。
而从图3中可以看出BP网络具有很强的拟合能力。
图3 基于传统BP算法的拟合结果
下面利用改进共轭梯度法重新设计网络,再对相同的数据进行仿真训练,图4表示训练误差曲线,图5表示网络计算出的孔隙度与岩心孔隙度的对比情况。
从这三张图中可以
(下转第64页)
图4 易混淆字符有区别的部分
注:红色方框内区域即为矩形区域P
(上接第61页)
看出,改进后的共轭梯度BP算法不仅实现了预期目标,完成了岩层孔隙度的计算,而且网络的收敛速度也快于传统的BP网络,从图中可见在第70次迭代时即可完成计算,说明了改进后的BP网络的优越性。
图4 改进共轭梯度BP算法的迭代误差曲线
4 结 语
通过上文的例子可以看到,改进共轭梯度BP算法不仅能够达成神经网络的设计目标,而且运算速度与运算精度都有所提升。
在实际应用时,改进共轭梯度BP算法能够从误
图5 基于改进共轭梯度BP算法的预测结果
参考文献
[1]蔡正国,程露.共轭梯度神经网络的研究[J].西安交通大学学报,1995,29(8):72-76.
[2]丛爽.面向MATLAB工具箱的神经网络理论及应用
合肥:中国科学技术大学出版社,1998.。
标准的BP神经网络算法程序MATLAB

count=1;
while (count<=maxcount) %结束条件1迭代1000次
c=1;
while (c<=samplenum)
for k=1:outputNums
d(k)=expectlist(c,k); %获得期望输出的向量,d(1:3)表示一个期望向量内 的值
end
break;
end
count=count+1;%训练次数加1
end%第一个while结束
error(maxcount+1)=error(maxcount);
p=1:count;
pp=p/50;
plot(pp,error(p),"-"); %显示误差
deltv(i,j)=alpha*yitay(j)*x(i); %同上deltw
v(i,j)=v(i,j)+deltv(i,j)+a*dv(i,j);
dv(i,j)=deltv(i,j);
end
end
c=c+1;
end%第二个while结束;表示一次BP训练结束
double tmp;
for i=1:inputNums
x(i)=samplelist(c,i); %获得输入的向量(数据),x(1:3)表一个训练向量
字串4
end
%Forward();
for j=1:hideNums
net=0.0;
for i=1:inputNums
net=net+x(i)*v(i,j);
dw=zeros(hideNums,outputNums); %10*3
浅析BP神经网络算法的改进和优化

浅析BP神经网络算法的改进和优化摘要:本文简要介绍了BP神经网络的缺点,着重强调了BP神经网络的算法改进,并且,利用Matlab仿真了各种改进算法的学习速度,从结果看改进后的BP神经网络能较好地解决针BP算法学习速度慢的缺点。
关键词:神经网络;BP算法;学习速度1BP算法的缺点虽然神经网络模型已成功应用于模式识别、函数逼近、时间序列预测等领域。
并且BP网络也是目前应用最为广泛的一种神经网络模型,它具有思路清晰,结构严谨,可操作性强等优点。
但是由于BP学习算法仅改变网络的连接值和阀值,不改变网络的拓扑结构,因此BP网络在处理具体问题时还存在如下问题[1]:1.1网络的麻痹现象。
在网络训练过程中,加权调得较大可能迫使所有的或大部分节点的加权和输出较大,从而操作在S压缩函数的饱和区,此时函数在其导数非常小的区域,即函数的导数值很小或趋近0,由于在计算加权修正量的公式中,这使得调节几乎停顿下来,通常为了避免这种现象,将训练速率减小,但又增加了训练时间。
1.2网络学习收敛速度比较慢。
由于BP算法的学习复杂性是样本规模的指数函数,如果网络规模较大或学习样本较多时,往往需要很长的学习时间,甚至学习无法完成,这个主要由于学习速率太小所造成的;可采用变化的学习速率或者自适应的学习速率加以改进。
1.3易陷入局部极小值。
BP算法可以使网络权值收敛到一个解,但它并不能保证所求解为误差超平面的最小解,很可能是局部极小解;这是因为BP算法采用的是梯度下降法,训练是从某一起点沿误差函数的斜面逐渐达到误差的极小值,对于复杂的网络,其误差函数为多维空间的曲面,就像一个碗,其碗底是最小值点,但是这个碗的表面凹凸不平的,因而在对其进行训练的过程中,可能陷入某一小谷区,而这一小谷区产生一个局部最小值,由此点向各个方向变化均使误差增加,以至于使训练无法逃出这一局部最小值。
为了解决BP网络训练的以上缺点,人们提出了多种有益的改进。
改进方法主要有两类:第一类是基于启发式学习方法的改进算法:如附加动量的BP算法、自适应学习率BP算法、弹性BP算法等;第二类是基于数值优化的改进算法:如共扼梯度法、拟牛顿法和Levenberg-Marquardt(LM)法等。
毕业设计论文基于遗传算法的BP神经网络的优化问题研究.doc

编号:审定成绩:重庆邮电大学毕业设计(论文)设计(论文)题目:基于遗传算法的BP神经网络的优化问题研究学院名称:学生姓名:专业:班级:学号:指导教师:答辩组负责人:填表时间:2010年06月重庆邮电大学教务处制摘要本文的主要研究工作如下:1、介绍了遗传算法的起源、发展和应用,阐述了遗传算法的基本操作,基本原理和遗传算法的特点。
2、介绍了人工神经网络的发展,基本原理,BP神经网络的结构以及BP算法。
3、利用遗传算法全局搜索能力强的特点与人工神经网络模型学习能力强的特点,把遗传算法用于神经网络初始权重的优化,设计出混合GA-BP算法,可以在一定程度上克服神经网络模型训练中普遍存在的局部极小点问题。
4、对某型导弹测试设备故障诊断建立神经网络,用GA直接训练BP神经网络权值,然后与纯BP算法相比较。
再用改进的GA-BP算法进行神经网络训练和检验,运用Matlab软件进行仿真,结果表明,用改进的GA-BP算法优化神经网络无论从收敛速度、误差及精度都明显高于未进行优化的BP神经网络,将两者结合从而得到比现有学习算法更好的学习效果。
【关键词】神经网络BP算法遗传算法ABSTRACTThe main research work is as follows:1. Describing the origin of the genetic algorithm, development and application, explain the basic operations of genetic algorithm, the basic principles and characteristics of genetic algorithms.2. Describing the development of artificial neural network, the basic principle, BP neural network structure and BP.3. Using the genetic algorithm global search capability of the characteristics and learning ability of artificial neural network model with strong features, the genetic algorithm for neural network initial weights of the optimization, design hybrid GA-BP algorithm, to a certain extent, overcome nerves ubiquitous network model training local minimum problem.4. A missile test on the fault diagnosis of neural network, trained with the GA directly to BP neural network weights, and then compared with the pure BP algorithm. Then the improved GA-BP algorithm neural network training and testing, use of Matlab software simulation results show that the improved GA-BP algorithm to optimize neural network in terms of convergence rate, error and accuracy were significantly higher than optimized BP neural network, a combination of both to be better than existing learning algorithm learning.Key words:neural network back-propagation algorithms genetic algorithms目录第一章绪论 (1)1.1 遗传算法的起源 (1)1.2 遗传算法的发展和应用 (1)1.2.1 遗传算法的发展过程 (1)1.2.2 遗传算法的应用领域 (2)1.3 基于遗传算法的BP神经网络 (3)1.4 本章小结 (4)第二章遗传算法 (5)2.1 遗传算法基本操作 (5)2.1.1 选择(Selection) (5)2.1.2 交叉(Crossover) (6)2.1.3 变异(Mutation) (7)2.2 遗传算法基本思想 (8)2.3 遗传算法的特点 (9)2.3.1 常规的寻优算法 (9)2.3.2 遗传算法与常规寻优算法的比较 (10)2.4 本章小结 (11)第三章神经网络 (12)3.1 人工神经网络发展 (12)3.2 神经网络基本原理 (12)3.2.1 神经元模型 (12)3.2.2 神经网络结构及工作方式 (14)3.2.3 神经网络原理概要 (15)3.3 BP神经网络 (15)3.4 本章小结 (21)第四章遗传算法优化BP神经网络 (22)4.1 遗传算法优化神经网络概述 (22)4.1.1 用遗传算法优化神经网络结构 (22)4.1.2 用遗传算法优化神经网络连接权值 (22)4.2 GA-BP优化方案及算法实现 (23)4.3 GA-BP仿真实现 (24)4.3.1 用GA直接训练BP网络的权值算法 (25)4.3.2 纯BP算法 (26)4.3.3 GA训练BP网络的权值与纯BP算法的比较 (28)4.3.4 混合GA-BP算法 (28)4.4 本章小结 (31)结论 (32)致谢 (33)参考文献 (34)附录 (35)1 英文原文 (35)2 英文翻译 (42)3 源程序 (47)第一章绪论1.1 遗传算法的起源从生物学上看,生物个体是由细胞组成的,而细胞则主要由细胞膜、细胞质、和细胞核构成。
神经网络中的优化算法与学习率调整策略

神经网络中的优化算法与学习率调整策略神经网络是一种模仿人脑神经系统的计算模型,通过多层神经元之间的连接和信息传递,实现对复杂问题的学习和处理。
然而,在神经网络的训练过程中,如何优化网络的参数以提高其性能成为一个关键问题。
而优化算法和学习率调整策略则是解决这一问题的重要手段。
一、优化算法神经网络的优化算法主要用于寻找最优的网络参数,以使得网络的输出与真实值之间的误差最小化。
常见的优化算法有梯度下降法、随机梯度下降法和Adam算法等。
1. 梯度下降法梯度下降法是一种基于梯度信息的优化算法,通过迭代更新网络参数,以使得损失函数逐渐减小。
具体而言,梯度下降法通过计算损失函数对参数的偏导数,然后按照负梯度方向更新参数。
这样,网络的参数会逐渐朝着损失函数的最小值移动,从而实现对网络的优化。
2. 随机梯度下降法随机梯度下降法是梯度下降法的一种改进方法,其主要区别在于每次迭代只使用一个样本来计算梯度。
相比于梯度下降法,随机梯度下降法的计算速度更快,但也更容易陷入局部最优解。
为了解决这个问题,可以采用一些改进的随机梯度下降算法,如随机梯度下降法的动量法和自适应学习率的随机梯度下降法。
3. Adam算法Adam算法是一种自适应学习率的优化算法,它结合了动量法和自适应学习率的思想。
Adam算法通过计算梯度的一阶矩估计和二阶矩估计来自适应地调整学习率。
这样,网络的参数可以在不同的方向上以不同的速度进行更新,从而更好地适应不同的数据分布和损失函数。
二、学习率调整策略学习率是神经网络训练中的一个重要超参数,它控制了参数更新的步长。
合适的学习率可以加快网络的收敛速度,而过大或过小的学习率则会导致网络性能的下降。
因此,如何调整学习率是神经网络训练中的一个关键问题。
1. 固定学习率固定学习率是最简单的学习率调整策略,它将学习率设置为一个固定的常数。
然而,在实际应用中,由于数据分布的不同和网络的复杂性,固定学习率往往无法满足网络的训练需求。
BP神经网络的优化算法研究

计算机与现代化2009年第1期J I S UANJ I Y U X I A NDA I HUA 总第161期文章编号: 1006 22475 ( 2009) 0120073 203B P神经网络的优化算法研究张山,何建农(福州大学数学与计算机科学学院,福建福州350002 )摘要: B P学习算法通常具有收敛速度慢,易陷入局部极小值等缺点; 遗传算法是全局优化算法,具有较强的全局搜索性能,但它在实际应用中容易产生早熟收敛的问题,且在进化后期搜索效率较低; 模拟退火算法具有摆脱局部最优点的能力,能抑制遗传算法的早熟现象。
因此,本文在B P算法结合遗传算法的同时,再加入模拟退火算法,可以有效地缓解遗传算法的选择压力。
关键词:遗传算法; 模拟退火算法; 神经网络中图分类号: TP183文献标识码: ARe s ea r ch on O p t i m i zed A lgor ith m for BP Neura l Ne t work sZ HAN G Shan , H E J ian2nong( C o l lege of M a t he m a t ic s and Comp u t e r Sc i ence, Fuzhou U n i ve r sity, Fuzhou 350002 , Ch i na)A b stra c t:B P lea rn ing a lgo rith m conve rge s sl ow and the s o lu ti on g o t is u sua lly l oca l op ti m a l s o lu ti on. Gene tic A lg o rith m is gl oba lop ti m iza ti on a lgo rith m and ha s str ong gl oba l sea rch ab ility. B u t it can ea sily cau se p re m a tu re conve rgence p r ob le m s in p rac tica l app lica ti on and the effic ien t of sea rch in la te r evo lu ti on is l ow. Si m u lted A nnea ling A lg o rith m ha s the advan tage s of av o id ge tting the l oca l op ti m a l s o lu ti on and p re m a tu re conve rgence p r ob le m. S o B P a lg o rith m co m b ine s Gene tic A lg o rith m and Si m u la ted A n2 nea l ing A lgo r ith m can effec t ive l y ea s e the p re s su r e of gene t ic a l go r ith m se l ec t i on p re s su r e.Key word s: gene t ic a l go r ith m; si m u l a t ed annea l ing a l go r ith m; B P neu r a l ne t w o r k s0 引言据统计, 近些年在神经网络学习算法中, B P 算法[ 1 ]是应用最广泛的算法之一。
一种BP神经网络算法的改进模型

VoI.34。
No.1lNov。
2009火力与指挥控镧FireControl&CommandControl第34卷第11期2009年11月文章编号:1002—0640(2009)11一0057一04一种BP神经网络算法的改进模型廖建国,张弛(94907部队,江西南昌330013)摘要:首先对BP网络的结构和算法进行了分析,针对BP网络收敛速度慢。
容易陷入局部极小等问题.提出了一种改进的BP网络模型,并对该模型算法进行了改进.通过激活函数的选择,网络的初始化,学习率的调整和训练样本数据的处理等方法,可实现加快网络的收敛速度,并且较好的解决局部最优同题。
关键词:BP网络模型.网络算法,神经元中图分类号:TQ32文献标识码:AAnImproVedModelofBPNeuralNetworkAlgoritbmL1AOJian—guo,ZHANGChi((,雄拓949070厂P£A·盹以咖馏330013·c^i加)Abstract:BasedonanalyzingstructureandAlgorithmofBPnetwork,asfortheseproblemsofslowconVergenceandeasilygettingintothelocalminimuminthestudyalgorithmofBPnet,thispaperdesignsoneimproVedmodelofBPneuralnetwork.Bychoosingsuitableactivatedfunction,takingitssensibilityintoaccounts,andstandingoutresearchingthenet’sinitializingmatteretc,thefasterconvergencespeedcouldbeimplementedandtheproblemoflocaloptimizationbesolvedbetter.Keywords:BPnetworkmodel,networkalgorithm,neuralcell引言BP网络模型是目前应用最广泛的神经网络模型[1]。
构建高性能BP神经网络的优化技术

构建高性能BP神经网络的优化技术随着人工智能的发展,神经网络已经广泛应用于各种领域,在图像、自然语言处理、语音识别等方面都有非常出色的应用。
神经网络的训练一直是心理学界、计算机科学界最为关心的问题之一,基于反向传播(Backpropagation,BP)算法的神经网络训练方法是目前应用最广泛的方法之一。
本文将围绕如何构建高性能的BP神经网络的优化技术展开。
1. BP神经网络简介BP神经网络是一种常用的监督学习算法,主要用于分类和回归问题。
它是一种有向无环图,由输入层、隐藏层和输出层组成。
输入层接受输入数据,输出层给出分类或回归的结果,而隐藏层则完成特征提取和转换的任务。
在BP神经网络的训练中,我们需要通过损失函数进行误差计算,以求解合适的权重和偏置值。
2. 构建高性能BP神经网络的优化技术2.1. 梯度下降算法梯度下降算法是BP神经网络中最基本的优化算法之一,其目标是寻找损失函数最小化的权重和偏置值。
在梯度下降算法中,我们需要计算损失函数对权重和偏置的偏导数,然后通过调整这些参数来使损失函数最小化。
在实际应用中,我们需要确保选择合适的学习速率以避免陷入局部最优解。
2.2. 正则化技术正则化技术是一种经常用于控制模型过度拟合的技术,它可以有效地防止模型出现过拟合的情况。
其中最常用的正则化方法就是L1和L2正则化技术。
在L1正则化中,我们将权重矩阵中的每个元素乘以一个小于1的参数,以减小权重的大小;而在L2正则化中,我们将权重矩阵中的每个元素平方并相加,然后在损失函数中加入这个值来对训练做出惩罚。
2.3. 批量归一化技术批量归一化技术是一种常用的神经网络优化技术,其主要目的是通过消除内部协变量移位,使隐藏层的激活函数能够更加稳定和有效。
在批量归一化技术中,我们需要对每个批次数据都进行归一化操作,以消除协变量移位的影响。
2.4. 学习率调整技术学习率调整技术是一种针对梯度下降算法的优化技术,它主要用于解决学习速率大、小或不稳定的问题。
一种改进的bp神经网络算法

信息通信INFORMATION & COMMUNICATIONS2019年第10期(总第202期)2019(Sum. No 202)一种改进的BP 神经网络算法吴鹏程,刘娅,李少夫(武汉轻工大学电气与电子工程学院,湖北武汉430023)摘要:针对传统BP 神经网络存在学习率设置不当与深度神经网络过拟合导致准确率不高的问题,提出改进的BP 神经网络算法。
该算法引入了 drop-out 机制来防止神经网络过拟合,并针对学习率设置不当的问题,将用指数衰减学习率代 替传统BP 神经网络中固定学习率。
实验结果表明,改进后的BP 神经网络相较于传统BP 神经网络有效地提高了 3.06%的测试准确率。
关键词:BP 神经网络;MNIST ;学习率;深度学习;Tensorflow中图分类号:TP389.1文献标识码:A 文章编号:1673-1131(2019)10-0039-03An Improved BP Neural Network AlgorithmWu Pengcheng, Liu Ya, Li Shaofu(College of Electrical and Electronic Engineering, Wuhan Polytechnic University Wuhan 430023, China)Abstract: In order to solve the problems of i mproper learning rate setting and low accuracy caused by over-fitting of n eural net work in traditional BP deep neural network, an improved BP neural network algorithm is proposed. In this algorithm, drop-out mechanism is introduced to prevent neural network from overfitting, and in order to solve the problem of i mproper learning rate, exponential attenuated learning rate will be used instead of fixed learning rate in traditional BP neural network, the experimental results show that compared with the traditional BP neural network, the improved BP neural network can effectively improve the test accuracy by 3.06%.Key words:BP neural network; MNIST;leaming rate; deep-learning; Tensorflow0引言随着人工智能的迅速发展,计算机视觉技术已经日趋完 善,如今早已应用于无人驾驶、医疗养老、人脸识别等生活领域。
一种BP神经网络学习率的优化设计

维普资讯
2
湖 北 工 业 大 学 学 报
20 0 7年 第 3期
束; 如果 未 满足要 求 , 返 回 3 执行 . 则 ) 该 学 习算 法 , 于任一 给定 的样本 X 一 ( 对 x
X … , )和 期 望 输 出 Y X却 p一 ( 。Yp, , ) Xp, … y
2 输 入 一个 样本 X 一 ( X , , ) 以及 对 ) X , … X ,
应 的期望 输 出 Y 一 ( , 2 … , ). y y , 3 计 算 各层 的输 出. ) 对于 第 k 第 i 层 个神 经元 的
输 出 X 有 ,
+1
Ru lat等 提 出 的 误 差 反 向 传 播 ( a k me r h B c P o a ain 学 习算 法是 训 练 神 经 网络 的强 有 力 的 rp g t ) o 工具. 是 B 但 P算 法存 在 收敛 速 度 慢 、 陷入 局部 极 易
[ 收稿 日期 ]2 0 -0 — 2 07 3 0 [ 金 项 目]湖 北 省 自然 科 学 基 金 项 目(0 4 A0 5 . 基 2 0 AB 6 ) [ 者 简 介 ]刘 幺  ̄ (9 4 ) 男 ,湖 北 武 汉 人 , 北 工 业 大 学 教 授 , 国 AS 作 1 15 一 , 1 湖 美 ME和 I E E E专 业 会 员 , 究 方 向 : 能 控 制 研 智
本 的 UO 问题 变 为 非线 性 优 化 问题 , P 神 经 网络 B
5 ห้องสมุดไป่ตู้ 正权 系 数 w 和 阀值 0有 )
△V ( + z £ )一 △V ( )一 叩・d £ ・x .
模 型一 般 由输 入 层 、 中间 层 、 出层 构 成 ( 1 , 输 图 ) 该 方法 的数学 原理 和推 导方 法见 文献 [ ] 2. 算 法 的执行 步 骤如下 . j 1 对权 系数 w 初值 . 各层 的权 系 数 w 置 ) 置 对
一种BP神经网络学习率的改进方法

第29卷第4期V ol 129 N o 14长春师范学院学报(自然科学版)Journal of Changchun N ormal University (Natural Science )2010年8月Aug.2010一种BP 神经网络学习率的改进方法陈 思(长春师范学院计算机科学与技术学院,吉林长春 130032)[摘 要]针对动态BP 神经网络学习率优化方法收敛速度慢而且对误差曲面变化不敏感等不利因素,提出了一种改进的BP 神经网络学习率的优化算法。
通过判断网络误差变化的趋势来决定动态学习率的调整方向,尤其网络误差处于下降状态时,不需调整。
该策略使网络对误差曲面变化敏感且收敛速度快。
最后,对两种算法的仿真比较证明了优化算法的有效性。
[关键词]BP 神经网络;学习率;收敛速度[中图分类号]TP389 [文献标识码]A [文章编号]1008-178X (2010)04-0025-03[收稿日期]2010-04-11[作者简介]陈 思(1977-),女,吉林长春人,长春师范学院计算机科学与技术学院讲师,从事图像处理研究。
0 引言近几年来人工神经网络技术在很多领域都得到广泛应用,尤其是Rumelhart [1]等人提出的BP 算法已经成为训练前馈网络的有力工具.但传统的BP 算法存在缺陷,首先使网络达不到全局最优,其次收敛时间长,速度慢[2],因此现在很多学者主要研究对BP 算法的改进.在人工神经网络训练中,学习率是影响训练速度和训练精度的重要因素之一.如果学习率太小,收敛性容易得到保证,但收敛速度太慢;学习率太大,学习速度快,但可能导致振荡或发散[3].针对这个问题,笔者以前人的研究理论为基础,提出了一种BP 神经网络的优化算法,该算法能有效地改善网络的学习率.1 BP 神经网络BP 神经网络是一种通用性较强的前馈网络,它主要采用模式正向传递、误差信号反向传播的BP 算法,实现输入到输出的映射,并且是非线性的,具有结构简单、可操作性强等优点,目前已被广泛应用.其算法主要思想如下[4]:网络训练过程即为学习过程,首先信号作用于输入层,由输入层进入隐含层,并且向输出层传递,这就是模式顺传播.如果输出信号不满足期望值,则将实际输出与期望输出的误差信号沿着逆向逐层返回,这个过程就是误差反向传播阶段,并且以此作为修改各层网络权值的依据.这种学习训练过程一直进行到网络输出误差达到预先设定的误差精度要求为止.2 网络学习率的优化方法BP 算法是通过不断调整网络权值进行学习的,修正量的大小受到学习率的控制,对学习率的改进是BP 算法改进的重要部分.为加速网络的学习速度,文献[5]提出了一种优化BP 神经网络学习率的方法,其具体优化公式为・52・η=Ae-λn.(1)公式中n为网络训练过程中的迭代次数,情况不同,A和λ的取值也不同,一般1ΦAΦ50,010001ΦλΦ01001.虽然此算法优于学习率固定的传统BP算法,减少了网络训练过程中的学习次数,但同样存在着其他问题.首先,模型中A的取值范围并不适用于所有神经网络,由于它的取值决定了网络学习率的初始值,通过A 确定的网络初始学习率可能使网络不收敛.其次,当网络误差下降速度快时,该算法反倒使网络收敛速度比较慢,这说明此时网络不适应这种情况.3 改进的BP网络学习率的优化算法上述模型主要采用在网络学习过程中,逐渐减小学习率的可变学习率法.该模型的另外一种表达形式为η(k)=e-λη(k-1).(2)其中010001ΦλΦ01001,k为迭代次数.不难看出,此模型中学习率的比例系数是固定的,且小于1.但如果网络权值在实际情况中更新之后使误差值减小了,此时就没有必要再减小学习率,如果保持原学习率不变,不仅增加了训练速度,而且修改权值的幅度会大些,训练效果也会更好一些.改进后的模型为η(k)=η(k-1),e-λη(k-1), E(k)<E(k-1);E(k)ΕE(k-1).(3)其中010001ΦλΦ01001,k为迭代次数.此算法认为,如果网络误差下降速度明显增快时,则说明此时的学习率比较合适,不需调整.4 仿真实验及结果分析利用Matlab神经网络工具箱,以函数f(x,y)=015(1+sin(2πx)cos(2πy))(0<x<1,0<y<1)为例,用改进前后两种算法分别做此函数逼近试验.网络结构为输入层2个神经元,隐含层12个神经元和输出层1个神经元.在对此二输入单输出函数进行非线性逼近过程中,本文采用400组数据作为训练样本,以相同的目标误差(err goal=0101)进行仿真比较.在训练中,设最大迭代次数为1000,学习率初始取012,λ取为01001,(1)式和(3)式仿真结果如图1、图2所示,每幅图都包括目标直线和训练过程曲线.图1 学习率优化方法收敛过程 图2 改进学习率优化方法收敛过程 从仿真结果图1和图2明显看出,未改进算法训练次数比改进算法多了3倍以上.在训练过程中,当网络误差处于下降状态,尤其下降趋势明显时,我们再减小学习率会影响网络的收敛速度,此时应保持不变学习率以较大幅度修改权值.由此可见改进算法比没经过改进的算法收敛速度更快,这说明了改进算法对误差梯度曲面发生变化的区域更为敏感,能更好地达到学习目的.另外,笔者用两种算法都各进行了多次训练,仿真结果如・62・表1所示,从表1中的数据可以看出改进算法的平均收敛速度要快一些.表1 两种算法仿真结果比较算 法平均训练次数实际误差 BP学习率优化模型 4060100999628改进BP学习率优化模型26801009995195 结束语学习速率是BP神经网络中一个重要性能参数,本文提出了一种改进的学习率算法模型,根据实际均方误差变化在学习过程中适时地调整学习速率.分别对这两种算法进行仿真比较,结果表明改进算法对误差曲面的变化更为敏感,比原算法收敛速度更快,能达到较好的学习目的.[参考文献][1]Rumelhart D E,W ollians R J.Learning internal representa-tion by error-propagation[J].Parallel Distributel Processing,Cambridge,M A MIT press,1986(1):318-362.[2]杨东侯,年晓红,杨胜跃.两种改进的BP神经网络学习算法[J].长沙大学学报,2004,18(4):54-57.[3]龚安,张敏.BP网络自适应学习率研究[J].科学技术与工程,2006,6(1):64-66.[4]史忠植.智能科学[M].北京:清华大学出版社,2006.[5]刘幺和,陈睿,彭伟,等.一种BP神经网络学习率的优化设计[J].湖北工业大学学报,2007,22(3):1-3.An Improvement of Learning R ate of BP N eutral N etw orkCHE N Si(C ollege of C om puter Science and T echnology,Changchun N ormal University,Changchun130032,China)Abstract:In view of the low convergence rate and the poor sensitivity to the variation of the error curved surface of the dy2 namic BP neural netw orks learning rate optimization,this paper proposed an im provement alg orithm of the BP neural net2 w orks learning rate.The direction of the adjustment of the dynamic learning rate is determined by judging the trend of net2 w ork error changes,in particular the netw ork error is in the state of decline,it needs no adjustment.The strategy makes net2 w ork m ore sensitive to the variation of the error curved surface and has a fast convergence rate.At last,the com parative simu2 lation results dem onstrate the effectiveness of the im provement alg orithm.K ey w ords:BP neural netw orks;learning rate;convergence rate・・72。
BP神经网络学习率参数改进方法

BP神经网络学习率参数改进方法BP神经网络是一种常用的神经网络模型,通过反向传播算法进行训练,通过调整权重和偏置来逼近目标函数的最小值。
学习率是BP神经网络中的重要参数之一,它决定了权重和偏置的更新步长,直接影响训练的速度和收敛性。
因此,如何选择和调整学习率是训练BP神经网络的关键问题之一、本文将介绍几种改进BP神经网络学习率参数的方法。
一、动态学习率调整方法传统的BP神经网络中,学习率是一个固定的常数,在训练过程中不发生变化。
然而,在实际应用中,固定学习率可能会导致训练过程中出现震荡、收敛速度太慢等问题。
因此,可以采用一些动态学习率调整方法来改进BP神经网络的学习率参数。
1.指数衰减学习率指数衰减学习率是一种简单而有效的动态学习率调整方法。
在该方法中,学习率按照指数函数衰减,随着训练的进行逐渐降低。
公式如下:learning_rate = initial_learning_rate * decay_rate ^ (global_step / decay_steps)其中,initial_learning_rate表示初始学习率,decay_rate是衰减率,global_step表示当前迭代次数,decay_steps表示每经过多少个迭代衰减一次学习率。
2. AdaGrad算法AdaGrad是一种自适应学习率调整方法,其基本思想是根据权重参数的更新情况来调整学习率大小。
具体地,对于每一个参数,AdaGrad会维护一个累积平方梯度的历史信息,并根据这个历史信息来动态调整学习率。
这样可以使得在训练的早期阶段,学习率较大,能够更快地收敛;而在训练的后期阶段,学习率会逐渐减小,避免震荡和过拟合。
3. RMSprop算法RMSprop是对AdaGrad算法的改进,主要是为了解决其累积平方梯度过于保守的问题。
具体地,RMSprop引入了一个衰减系数(decay_rate),用来控制历史信息对学习率的影响。
BP神经网络学习参数优化研究

3.3 BP 神经网络的软件实现
调整参数 α 和 β, 使得在学习次数一定的情况下网络总误差趋
为了配合 BP 网络的训练, 笔者采用 VC++6.0 编写了一个 于更小呢?所以笔者设定了下个实验。笔者选择几组
专门的 BP 网络训练器,把 BP 的所应实现的功能封装成一个类
实验数据如下:
(Class)。
技 术 创 新
3 基 于 BP 神 经 网 络 的 字 符 特 征 分 类
器的设计
3.1 BP 的学习算法
(1) 前向传播运算
BP 学习算法属于 δ 学习律, 是一种有教师的学习算法,设
输入学习样本为 p 个: x , x ,....., x , 已知与其对应的教师值 为: t ,t ,.....,t 。学习算法就是将实际输出 y1, y2 ,....., y p 与 t1, t2,....., t p 的误差来修改其连接权核阈值,使得实际输出与教
LIN Shi-gao OU Yuan-xian
摘要: 讨 论 了 在 训 练 BP 神 经 网 络 的 过 程 中 总 结 出 一 些 基 础 参 数 的 设 定 , 给 出 了 一 个 快 速 收 敛 并 避 免 局 部 最 小 点 的 神 经 网
络 训 练 方 法 并 用 VC++6.0 编 程 实 现 之 。
通过对比两算法的运行结果,可以发现在四维情况下,利用 文化算法进行求解优化,利用信仰空间中知识引导,能够较为准 确的分离出高危数据。
两种算法的迭代次数如图 2 所示:
ቤተ መጻሕፍቲ ባይዱ
图 2 两种算法收敛速度比较 虚线代表基于文化算法的 SDFCM 算法, 实线代表 SDFCM 算法,从收敛速度上看,利用文化算法的聚类分析具有较高的收 敛速度,平均收敛于 23 代,而不利用文化算法来进化的聚类分 析则收敛于 50 代,且容易陷入局部极值点。因此,利用标准化知
神经网络中的BP算法改进研究

神经网络中的BP算法改进研究神经网络是一种基于生物神经系统结构和功能而设计的计算模型,通常用于解决一些非线性问题。
而BP算法则是在神经网络中较为常用的一种算法,主要用于训练和调整网络参数,以使网络的输出与期望输出尽可能接近。
然而,由于BP算法本身存在一些问题,如容易陷入局部最优解、收敛速度慢等,因此近年来研究人员一直在探索如何改进BP算法的效率和准确性。
一、BP算法的基本原理BP算法基于反向传播原理,即从输出层开始,将网络输出与期望输出进行比较,计算输出误差,并将误差向前传播至所有隐藏层和输入层,从而调整网络的权值和阈值。
BP算法的基本过程可以分为两个步骤:正向传递和误差反向传播。
正向传递:输入层将输入向前传递至所有隐藏层和输出层,并根据网络的权值和阈值计算每个神经元的输出:$O_j=\sigma(\sum\limits_{i=1}^{n}w_{ji}x_i+b_j)$其中,$O_j$为第$j$个神经元的输出,$\sigma(.)$为激活函数,$x_i$为第$i$个神经元的输入,$w_{ji}$为第$j$个神经元与第$i$个神经元之间的连接权值,$b_j$为第$j$个神经元的阈值。
误差反向传播:计算输出误差并将误差向后传播至所有隐藏层和输入层,根据误差调整权值和阈值:$\Delta w_{ji}=-\eta\frac{\partial E}{\partial w_{ji}}$$\Delta b_j=-\eta\frac{\partial E}{\partial b_j}$其中,$\eta$为学习率,$E$为输出误差。
BP算法将误差反向传播至网络的所有隐藏层和输入层,其基本原理是通过不停地计算并调整权值和阈值,使得网络输出的误差逐渐减小,从而达到期望的输出效果。
二、BP算法存在的问题尽管BP算法是一种较为常用的神经网络算法,但是其在实际应用中仍然存在一些问题。
以下列举了BP算法存在的一些问题:1. 容易陷入局部最优解。
构建高性能BP神经网络的优化技术

构建高性能BP神经网络的优化技术1. 引言人工神经网络(Artificial Neural Network,ANN)作为近年来复兴发展了的一种计算模型,受到了广泛的关注。
其中,BP (Back Propagation)神经网络是最为常用和广泛应用的一种网络。
BP神经网络具有较强的非线性逼近能力,但是在应用中常常受到训练速度慢、易陷入局部极小和收敛性差等问题的困扰,如何优化BP神经网络的性能成为了研究的热点之一。
2. BP神经网络的优化技术2.1 权值初始化神经网络的权值初始化对神经网络的性能有着至关重要的影响。
权值初始化的不合理会导致神经网络陷入局部极小点,从而使神经网络的模型无法得到充分的训练。
对于BP神经网络的权值初始化,常用的方法有使用较小的随机数进行初始化、PCA(Principal Component Analysis)等。
2.2 学习率的选择学习率通常是指神经网络在进行权值更新时所采取的步长。
学习率的选择对神经网络的收敛速度和稳定性起到了至关重要的作用。
若学习率过大,会导致神经网络的权值更新过于剧烈,使得神经网络的训练过程中出现震荡现象,从而使神经网络难以达到理想的收敛效果。
若学习率过小,则会导致神经网络需要较长时间才能学习到足够的训练信息,从而影响神经网络的收敛效果。
通常,合理的学习率可以通过交叉验证的方法进行确定。
2.3 正则化技术由于BP神经网络具有较强的非线性逼近能力,在训练过程中容易出现过度拟合的情况。
过度拟合会导致神经网络在训练集上表现良好,但是在测试集或未知数据集上的表现却不能令人满意。
正则化技术可以使得神经网络能够在一定程度上避免过度拟合,常用的正则化技术有L1、L2正则化等。
2.4 动量法动量法可以加速神经网络收敛的速度,使得神经网络收敛更加迅速和稳定。
在训练BP神经网络时,通常需要选择一个较小的学习率来保证神经网络的稳定性,但是这样做会降低神经网络的训练速度。
动量法可以帮助神经网络在不影响稳定性的情况下加速收敛,从而提高神经网络的训练速度和效率。
面向BP神经网络的优化算法研究

面向BP神经网络的优化算法研究BP神经网络是一种较为常用的人工神经网络,它具有很强的非线性建模能力和自适应学习能力,广泛应用于分类、回归、聚类等数据处理领域。
然而,由于BP神经网络的训练过程存在局部极小点、梯度消失等问题,导致训练效果较差,需要通过优化算法来提高学习效率和模型准确率。
目前,针对BP神经网络的优化算法有很多种,如梯度下降法、共轭梯度法、牛顿法、拟牛顿法、遗传算法、粒子群优化算法等。
本文将从不同角度对这些算法进行系统阐述,并探讨它们的优缺点。
一、梯度下降法梯度下降法是一种常用的优化算法,它通过求取目标函数的梯度以更新权值参数,直至达到最小值。
在BP神经网络中,梯度下降法可以使用反向传播算法来计算误差梯度,并更新权值。
梯度下降法的优点是算法简单易懂,收敛速度较快。
但是,在面对高维度的目标函数时,梯度下降法容易陷入局部最优解,无法全局搜索最优解,同时容易受到噪声的影响,导致训练效果不佳。
二、共轭梯度法共轭梯度法是针对梯度下降法发展起来的一种优化算法,它通过选择合适的搜索方向,避免了梯度下降法的局部最优解问题。
在BP神经网络中,共轭梯度法需要计算误差函数的一阶导数和二阶导数,以找到共轭梯度方向。
与梯度下降法相比,共轭梯度法的迭代次数更少,算法效率更高。
然而,共轭梯度法也存在一些不足,比如对初始条件比较敏感,在选择搜索方向时可能发生方向锁死问题,同时对矩阵的条件数较为敏感,需要进行特殊的矩阵变换。
三、牛顿法牛顿法是一种基于二阶导数信息的优化算法,它通过Taylor展开式来近似目标函数,并通过求解其导数的方程组来更新权值参数。
在BP神经网络中,牛顿法需要计算误差函数的一阶导数和二阶导数,以实现更快的收敛速度和更好的精度。
但是,牛顿法需要显式地计算Hessian矩阵,导致计算复杂度较高,同时可能会受到局部最优解问题的影响。
四、拟牛顿法拟牛顿法是针对牛顿法的改进版本,它通过采样一些权值更新路径上的点,建立近似的Hessian矩阵,以实现更快的收敛速度和更好的鲁棒性。
神经网络BP算法的改进与拓展

神经网络BP算法的改进与拓展神经网络是一种模仿人类神经系统的人工智能技术。
它由若干个神经元组成,每个神经元都有输入和输出,通过对输入的处理得出一个输出。
在神经网络的学习过程中,神经元之间的连接会不断地调整权值,以达到一个最优的结果。
而BP算法则是神经网络中最常用的一种学习算法,它通过反向传播误差,不断地调整权值来达到更优的结果。
然而,BP算法也存在一些问题,如梯度消失、收敛速度慢等,因此有必要对其进行改进和拓展。
一、BP算法的基本原理BP算法是基于梯度下降法的一种反向传播学习算法,它通过计算误差来不断地调整权值,以减小误差。
其中,误差可以用均方差来计算,即:其中,y表示神经网络的输出,t表示样本的正确输出。
通过误差的计算,可以得到误差的梯度,即:其中,w表示权值,α表示学习率。
通过梯度的计算,可以不断地调整权值,以减小误差。
二、BP算法存在的问题1.梯度消失在神经网络中,梯度的计算需要通过链式法则不断地进行乘法,这就导致了梯度的大小会不断地缩小,最后会趋近于0。
这种现象被称为梯度消失,它会使得神经网络的训练变得非常困难甚至无法训练。
2.收敛速度慢BP算法的训练需要不断地计算误差和梯度,并且每次训练只能更新一个样本,导致训练的速度非常慢。
三、BP算法的改进为了解决BP算法存在的问题,研究人员提出了很多改进方法,其中一些方法被广泛应用到神经网络中。
1.改进的激活函数激活函数是神经元中很重要的一部分,它可以将输入的信号转化为输出信号。
在BP算法中,激活函数的选择对收敛速度和精度影响非常大。
因此,研究人员提出了很多新的激活函数,如ReLU、Leaky ReLU、ELU等,它们可以有效地解决梯度消失的问题,并且提高了神经网络的收敛速度和精度。
2.正则化方法正则化方法可以帮助减少过拟合的发生,从而提高了神经网络的泛化能力。
一种BP神经网络学习率的优化设计

第22卷第3期湖 北 工 业 大 学 学 报2007年06月V ol.22N o.3 Journal of H ubei U niversity of T echnology Jun.2007[收稿日期]2007-03-20[基金项目]湖北省自然科学基金项目(2004ABA065).[作者简介]刘幺和(1954-),男,湖北武汉人,湖北工业大学教授,美国ASM E 和IEEE 专业会员,研究方向:智能控制.[文章编号]1003-4684(2007)0320001203一种B P 神经网络学习率的优化设计刘幺和1,陈 睿1,彭 伟2,周 蕾1(1湖北工业大学机械工程学院,湖北武汉430068;2湖北工业大学计算机学院,湖北武汉430068)[摘 要]考虑到结构优化设计的实用性和模糊性.在大量智能计算的基础上,提出了一种动态BP 神经网络的学习率优化方法,该方法如同Rough 集理论的数据分类简约功能去掉了多余属性的样本数据一样,从而使神经网络拓扑结构优化.实验表明,这种方法简单、实用且快速收敛.[关键词]BP 网络;优化设计;学习率[中图分类号]TP183[文献标识码]A 目前,智能计算在结构优化设计中已经得到广泛应用.智能计算是根据人和动物的3大系统(神经系统、遗传系统、免疫系统)特性,提出恰当的数学模型来进行智能计算.Rumelhart 等提出的误差反向传播(Back Propagation )学习算法是训练神经网络的强有力的工具.但是BP 算法存在收敛速度慢、易陷入局部极小等缺点,所以对BP 算法的改进是一个重要的研究课题.其中对学习率的研究是很重要的一个部分.如果学习率太小,收敛性容易得到保证,但收敛速度太慢;学习率太大,学习速度快,但可能导致振荡或发散[1].因而一个固定学习率不可能很好地适用于网络的整个学习过程.为实现快速而有效的学习收敛过程,人们提出了许多自适应地调节学习率的方法(自适应调节学习率,即在网络的学习过程中,学习率随着环境状态的变化不断自动调整).1 BP 神经网络BP 网络可实现输入空间到输出空间的非线性映射,它采用了优化算法中的梯度下降法,把一组样本的I/O 问题变为非线性优化问题,B P 神经网络模型一般由输入层、中间层、输出层构成(图1),该方法的数学原理和推导方法见文献[2].算法的执行步骤如下[2].1)对权系数W ij 置初值.对各层的权系数W ij 置一个较小的非零随机数,但其中W i ,n+1=-θ.2)输入一个样本X =(X 1,X 2,…,X n ),以及对应的期望输出Y =(Y 1,Y 2,…,Y n ).3)计算各层的输出.对于第k 层第i 个神经元的输出X k i ,有图1 BP 神经网络模型4)求各层的学习误差d k i .对于输出层k =m ,有d m i =X m i (1-X m i )(X mi -Y i ).对于其他各层,有d k i =X k i (1-X ki )・∑tW li・d k+l l . 5)修正权系数W ij 和阀值θ有ΔW ij (t +l )=ΔW ij (t )-η・d k i ・X k-1j.其中,ΔW ij (t )=-η・d k i ・X k-1j+αΔW ij (t -l )=W ij (t )-W ij (t -l ). 6)当求出了各层各个权系数之后,可按给定品质指标判别是否满足要求.如果满足要求,则算法结束;如果未满足要求,则返回3)执行.该学习算法,对于任一给定的样本X p=(X p1, X p2,…,X pn)和期望输出Y p=(X p1,Y p2,…,Y pn)都要执行,直到满足所有输入输出要求为止.2 遗传算法和免疫算法在结构优化中的应用 遗传算法是模拟生物在自然环境中的遗传和进化过程而形成的一种自适应全局优化概率搜索算法,其主要运算过程如下所示.步骤一:初始化.设置进化代数计算器t=0;设置最大进化代数T;随机生成M个个体作为初始群体P(0).步骤二:个体评价.计算群体P(t)中各个个体的适应度.步骤三:选择运算.将选择算子作用于群体.步骤四:交叉运算.将交叉算子作用于群体.步骤五:变异运算.将变异算子作用于群体.群体P(t)经过选择、交叉、变异运算后得到下一代的群体.群体P(t+1).步骤六:终止条件判断.若t≤T,则t=t+1,转到步骤二;若t>T,则以进化过程中得到的具有最大适应度的个体作为最优解输出,终止运算.基本免疫算法基于生物免疫系统基本机制,模仿了人体的免疫系统,它从体细胞理论和网络理论得到启发,实现了类似于生物免疫系统的抗原识别、细胞分化、记忆和自我调节的功能.如果将免疫算法与求解优化问题的一般搜索方法相比较,那么抗原、抗体、抗原和抗体之间的亲和性分别对应于优化问题的目标函数、优化解、解与目标函数的匹配程度.3 BP网络学习率的优化模型BP算法理论具有依据可靠、推导过程严谨、精度较高、通用性较好等优点,但是B P模型存在收敛速度缓慢、容易陷入局部极小值、难以确定隐层节点的数目等缺点[3].目前,有大量学者和研究人员试图采用遗传算法和免疫算法对B P网络学习率进行优化,建立了大量的数学模型.[4]但这些模型往往公式复杂、结构繁琐,既不利于学习和计算,也不利于计算机建模.针对以上的问题,笔者在大量遗传算法和免疫算法的实验基础上,提出一种简单优化方法将学习率的变化公式η=Ae-λn.其中n为迭代次数,A和λ的取值根据实际情况选择,一般情况下,1≤A≤50,0.001≤λ≤0.0001.鉴于工程应用的复杂性和结构优化的模糊性,对应不同的系统和实际要求,得出不同的取值范围.4 计算机仿真利用BP网络函数逼近的功能对B P网络及两种改进算法的性能进行比较,采用的神经网络有6个输入节点,6个隐藏节点和6个输出节点,共三层.输入样本为{0,0,0,0,0,0},输出样本为:{0.11,0.73,0.29,0.81,0.54,0.64}.训练最大步数取5000步,目标误差定为0.01,固定学习率定为2,A选为8.1,λ选为0.001.表1是BP 网络和优化算法的训练结果比较.表1 BP网络和优化算法的训练结果迭代次数结果误差基本BP网络960.001048优化学习率的BP网络190.0010705 结论以上实验仿真结果可以看出,在相同的误差要求下,优化过学习率的模型较之标准B P模型,训练次数明显减少,训练时间大大减短,而且结构简单,适用于计算机建模,该方法如同Rough集理论的数据分类简约功能去掉了多余属性的样本数据一样,从而使神经网络拓扑结构优化,快速收敛.[ 参 考 文 献 ][1] 武美先,张学良,温淑花,等.BP神经网络的双学习率自适应学习算法[J].现代制造工程,2005(10):29-32.[2] 史忠植.智能科学[M].北京:清华大学出版社,2006.[3] 杨东侯,年晓红,杨胜跃.两种改进的BP神经网络学习算法[J].长沙大学学报,2004,18(4):54-57. [4] 龚 安,张 敏.BP网络自适应学习率研究[J].科学技术与工程:2006,6(1):64-66.2湖 北 工 业 大 学 学 报2007年第3期 Optim al Design for Learning R ate of BP N eutral N et w orkL IU Yao 2he 1,C H EN Rui 1,PEN G Wei 2,ZHOU Lei 1(1S chool of Mechanical Engi n.,H ubei Univ.of Technolog y ,W u H an 430068,Chi na;2S chool of Com p uter ,H ubei Univ.of Technolog y ,W uhan 430068,Chi na )Abstract :Because of t he p racticability and f uzziness of optimum st ruct ure designing ,a kind of dynamic BP neural networks learning rate optimization is presented in t his paper on t he basis of a great amount of intel 2ligent calculation.The experimental result s show t hat t his met hod is simple ,f unctional and rapid in con 2vergence.K eyw ords :B P neut ral networkl ;optimal design ;learning rate[责任编辑:张岩芳]“高精度贴片机自动对准系统的开发研究”通过鉴定 该项目由机械工程学院测试计量技术及仪器学科带头人、博导钟毓宁教授负责,2004年获得武汉市科技攻关项目立项。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第22卷第3期湖 北 工 业 大 学 学 报2007年06月V ol.22N o.3 Journal of H ubei U niversity of T echnology Jun.2007[收稿日期]2007-03-20[基金项目]湖北省自然科学基金项目(2004ABA065).[作者简介]刘幺和(1954-),男,湖北武汉人,湖北工业大学教授,美国ASM E 和IEEE 专业会员,研究方向:智能控制.[文章编号]1003-4684(2007)0320001203一种B P 神经网络学习率的优化设计刘幺和1,陈 睿1,彭 伟2,周 蕾1(1湖北工业大学机械工程学院,湖北武汉430068;2湖北工业大学计算机学院,湖北武汉430068)[摘 要]考虑到结构优化设计的实用性和模糊性.在大量智能计算的基础上,提出了一种动态BP 神经网络的学习率优化方法,该方法如同Rough 集理论的数据分类简约功能去掉了多余属性的样本数据一样,从而使神经网络拓扑结构优化.实验表明,这种方法简单、实用且快速收敛.[关键词]BP 网络;优化设计;学习率[中图分类号]TP183[文献标识码]A 目前,智能计算在结构优化设计中已经得到广泛应用.智能计算是根据人和动物的3大系统(神经系统、遗传系统、免疫系统)特性,提出恰当的数学模型来进行智能计算.Rumelhart 等提出的误差反向传播(Back Propagation )学习算法是训练神经网络的强有力的工具.但是BP 算法存在收敛速度慢、易陷入局部极小等缺点,所以对BP 算法的改进是一个重要的研究课题.其中对学习率的研究是很重要的一个部分.如果学习率太小,收敛性容易得到保证,但收敛速度太慢;学习率太大,学习速度快,但可能导致振荡或发散[1].因而一个固定学习率不可能很好地适用于网络的整个学习过程.为实现快速而有效的学习收敛过程,人们提出了许多自适应地调节学习率的方法(自适应调节学习率,即在网络的学习过程中,学习率随着环境状态的变化不断自动调整).1 BP 神经网络BP 网络可实现输入空间到输出空间的非线性映射,它采用了优化算法中的梯度下降法,把一组样本的I/O 问题变为非线性优化问题,B P 神经网络模型一般由输入层、中间层、输出层构成(图1),该方法的数学原理和推导方法见文献[2].算法的执行步骤如下[2].1)对权系数W ij 置初值.对各层的权系数W ij 置一个较小的非零随机数,但其中W i ,n+1=-θ.2)输入一个样本X =(X 1,X 2,…,X n ),以及对应的期望输出Y =(Y 1,Y 2,…,Y n ).3)计算各层的输出.对于第k 层第i 个神经元的输出X k i ,有图1 BP 神经网络模型4)求各层的学习误差d k i .对于输出层k =m ,有d m i =X m i (1-X m i )(X mi -Y i ).对于其他各层,有d k i =X k i (1-X ki )・∑tW li・d k+l l . 5)修正权系数W ij 和阀值θ有ΔW ij (t +l )=ΔW ij (t )-η・d k i ・X k-1j.其中,ΔW ij (t )=-η・d k i ・X k-1j+αΔW ij (t -l )=W ij (t )-W ij (t -l ). 6)当求出了各层各个权系数之后,可按给定品质指标判别是否满足要求.如果满足要求,则算法结束;如果未满足要求,则返回3)执行.该学习算法,对于任一给定的样本X p=(X p1, X p2,…,X pn)和期望输出Y p=(X p1,Y p2,…,Y pn)都要执行,直到满足所有输入输出要求为止.2 遗传算法和免疫算法在结构优化中的应用 遗传算法是模拟生物在自然环境中的遗传和进化过程而形成的一种自适应全局优化概率搜索算法,其主要运算过程如下所示.步骤一:初始化.设置进化代数计算器t=0;设置最大进化代数T;随机生成M个个体作为初始群体P(0).步骤二:个体评价.计算群体P(t)中各个个体的适应度.步骤三:选择运算.将选择算子作用于群体.步骤四:交叉运算.将交叉算子作用于群体.步骤五:变异运算.将变异算子作用于群体.群体P(t)经过选择、交叉、变异运算后得到下一代的群体.群体P(t+1).步骤六:终止条件判断.若t≤T,则t=t+1,转到步骤二;若t>T,则以进化过程中得到的具有最大适应度的个体作为最优解输出,终止运算.基本免疫算法基于生物免疫系统基本机制,模仿了人体的免疫系统,它从体细胞理论和网络理论得到启发,实现了类似于生物免疫系统的抗原识别、细胞分化、记忆和自我调节的功能.如果将免疫算法与求解优化问题的一般搜索方法相比较,那么抗原、抗体、抗原和抗体之间的亲和性分别对应于优化问题的目标函数、优化解、解与目标函数的匹配程度.3 BP网络学习率的优化模型BP算法理论具有依据可靠、推导过程严谨、精度较高、通用性较好等优点,但是B P模型存在收敛速度缓慢、容易陷入局部极小值、难以确定隐层节点的数目等缺点[3].目前,有大量学者和研究人员试图采用遗传算法和免疫算法对B P网络学习率进行优化,建立了大量的数学模型.[4]但这些模型往往公式复杂、结构繁琐,既不利于学习和计算,也不利于计算机建模.针对以上的问题,笔者在大量遗传算法和免疫算法的实验基础上,提出一种简单优化方法将学习率的变化公式η=Ae-λn.其中n为迭代次数,A和λ的取值根据实际情况选择,一般情况下,1≤A≤50,0.001≤λ≤0.0001.鉴于工程应用的复杂性和结构优化的模糊性,对应不同的系统和实际要求,得出不同的取值范围.4 计算机仿真利用BP网络函数逼近的功能对B P网络及两种改进算法的性能进行比较,采用的神经网络有6个输入节点,6个隐藏节点和6个输出节点,共三层.输入样本为{0,0,0,0,0,0},输出样本为:{0.11,0.73,0.29,0.81,0.54,0.64}.训练最大步数取5000步,目标误差定为0.01,固定学习率定为2,A选为8.1,λ选为0.001.表1是BP 网络和优化算法的训练结果比较.表1 BP网络和优化算法的训练结果迭代次数结果误差基本BP网络960.001048优化学习率的BP网络190.0010705 结论以上实验仿真结果可以看出,在相同的误差要求下,优化过学习率的模型较之标准B P模型,训练次数明显减少,训练时间大大减短,而且结构简单,适用于计算机建模,该方法如同Rough集理论的数据分类简约功能去掉了多余属性的样本数据一样,从而使神经网络拓扑结构优化,快速收敛.[ 参 考 文 献 ][1] 武美先,张学良,温淑花,等.BP神经网络的双学习率自适应学习算法[J].现代制造工程,2005(10):29-32.[2] 史忠植.智能科学[M].北京:清华大学出版社,2006.[3] 杨东侯,年晓红,杨胜跃.两种改进的BP神经网络学习算法[J].长沙大学学报,2004,18(4):54-57. [4] 龚 安,张 敏.BP网络自适应学习率研究[J].科学技术与工程:2006,6(1):64-66.2湖 北 工 业 大 学 学 报2007年第3期 Optim al Design for Learning R ate of BP N eutral N et w orkL IU Yao 2he 1,C H EN Rui 1,PEN G Wei 2,ZHOU Lei 1(1S chool of Mechanical Engi n.,H ubei Univ.of Technolog y ,W u H an 430068,Chi na;2S chool of Com p uter ,H ubei Univ.of Technolog y ,W uhan 430068,Chi na )Abstract :Because of t he p racticability and f uzziness of optimum st ruct ure designing ,a kind of dynamic BP neural networks learning rate optimization is presented in t his paper on t he basis of a great amount of intel 2ligent calculation.The experimental result s show t hat t his met hod is simple ,f unctional and rapid in con 2vergence.K eyw ords :B P neut ral networkl ;optimal design ;learning rate[责任编辑:张岩芳]“高精度贴片机自动对准系统的开发研究”通过鉴定 该项目由机械工程学院测试计量技术及仪器学科带头人、博导钟毓宁教授负责,2004年获得武汉市科技攻关项目立项。
经过三年的研究,研制出基于机器视觉的自动对准系统样机。
项目组开发了利用小波变换、尺度映射、分层搜索预处理和亚象素边缘提取等多种算法的图像处理软件;提出并实现了一种利用正交光栅对CCD 自动对准系统进行高精度标定的方法;采用准对称光学系统和二维运动控制系统,开发了一套基于通用硬件的实时视觉细微定位和控制系统,实现了芯片和基底的自动对准。
4月26日,在由武汉市科技局组织的鉴定中,鉴定委员会一致认为,该项目已完成项目计划任务书所规定的各项任务,在CCD 自动对准系统高精度标定和图像快速精确匹配方面达到了国际先进水平。
3 第22卷第3期 刘幺和等 一种BP 神经网络学习率的优化设计。