整理神经网络的控制设计.docx

上传人:b****4 文档编号:27071539 上传时间:2023-06-26 格式:DOCX 页数:10 大小:277.22KB
下载 相关 举报
整理神经网络的控制设计.docx_第1页
第1页 / 共10页
整理神经网络的控制设计.docx_第2页
第2页 / 共10页
整理神经网络的控制设计.docx_第3页
第3页 / 共10页
整理神经网络的控制设计.docx_第4页
第4页 / 共10页
整理神经网络的控制设计.docx_第5页
第5页 / 共10页
点击查看更多>>
下载资源
资源描述

整理神经网络的控制设计.docx

《整理神经网络的控制设计.docx》由会员分享,可在线阅读,更多相关《整理神经网络的控制设计.docx(10页珍藏版)》请在冰豆网上搜索。

整理神经网络的控制设计.docx

整理神经网络的控制设计

x=0:

0.01:

3

y=3*sin(x)+0.1*rand(1,length(x))

针对前述函数,建立一个单输入单输出的3层BP网络,并撰写报告,激励函数等可自行选择:

要求:

神经网络输出与函数输出的误差应小于某小值;

由于所给函数x取值范围是[03],而题目要求输入输出样本集x取值范围应该覆盖0度到360度。

所以x在[32*pi]内,应观察已训练好的神经网络是否满足目标函数,以此检验训练完的网络。

建立网络与参数设置

一、先分析几个常用的激励函数

(1)logsig对数S型(sigmoid)传递函数,它可以将神经元的输入范围是(-∞,+∞)映射到(0,1)的区间上,它是可微函数,其表达式为:

y=1/1+e-x。

(2)tansig双曲正切S型(sigmoid)传递函数,它可以将神经元的输入范围(-∞,+∞)映射到(-1,+1)的区间上,它是可微函数。

对logsig传递函数而言,输出范围是(0,1),对tansig传递函数而言,输出范围是(-1,1)。

如果是purelin型神经元,则整个网络的输出可以是任意值。

对三层BP网络而言,如果最后一层是sigmoid型神经元,那么整个网络的输出就限制在一个较小的范围内。

我们选择purelin函数作为输出层神经元的激励函数,tansig函数作为隐层神经元的激励函数。

二、学习算法

BP算法的主要缺点是:

收敛速度慢,局部极值、难以确定隐层结点个数。

改进主要有两种途径:

一种是采用启发式学习算法,另一种是采用更有效的优化算法。

启发式算法主要体现在函数梯度上,包括有动量的梯度下降法、自适应lc的梯度下降法、有动量和自适应lc的梯度下降法和能复位的BP训练法。

基于数值优化的训练方法有三种:

共轭梯度法、高斯牛顿法和Levevberg-Marquardt法。

由于trainlm具有收敛快,误差小的优点,且本实验中数据量不算大,故我们这里采trainlm学习算法。

误差小的优点,且本实验中数据量不算大,故我们这里用trainlm学习算法。

各个算法特点见表1

表1

学习算法

适用问题类型

收敛性能

占用存储空间

其它特点

trainlm

函数拟合

收敛快

误差小

性能随网络规模增大而变差

trainrp

模式分类

收敛最快

较小

性能随网络训练误差减小而变差

trainscg

函数拟合

模式分类

收敛较快

性能稳定

中等

尤其适用于网络规模较大的情况

trainbfg

函数拟合

收敛较快

较大

计算量随网络规模的增大呈几何增长

traingdx

模式分类

收敛较慢

较小

适用于提前停止的方法

B.环境影响登记表三、节点数

隐层节点数的确定是神经网络设计中非常重要的一个环节,一个具有无限隐层节点的两层BP网络可以实现任意从输入到输出的非线性映射。

一般认为,隐层节点数与求解问题的要求、输入输出单元数多少都有直接的关系。

而且,隐层节点数过少,则无法产生足够的连接权组合数来满足若干样本的学习;隐层节点数过多,则学习以后网络的泛化能力变差。

(4)跟踪评价的结论。

确定隐层的节点数有如下几种方法:

(1)如果要求逼近的样函数变化剧烈、波动很大,则要求可调整地连接权数多,从而隐层的节点数也应该多一些;

(2)如果规定的逼近精度高,则隐含层单元数也应该多一些;(3)可考虑开始时放入较少的隐含层单元,根据以后的学习情况逐渐增加;

(一)安全预评价依据总之,若隐层节点数太少,网络可能根本不能训练或网络性能很差;若隐层节点数太多,虽然可使网络的系统误差减小,但一方面使网络训练时间延长,另一方面,训练容易陷入局部极小点而得不到最优点,也是训练时出现“过拟合”的内在原因。

因此,合理隐层节点数应在综合考虑网络结构复杂程度和误差大小的情况下用节点删除法和扩张法确定。

(三)环境价值的定义隐层的节点数与求解问题的要求,输入输出单元数多少有关。

对于模式识别/分类的节点数可按下列公式设计

其中n为输入节点数目;m为输出节点数目;a为1-10之间的常数。

这里n为1,m为1,N应为3-12。

不妨设为10。

四、它参数设置

(1)步长:

步长,即学习速率,它决定每一次循环训练中所产生的权值变化量。

步长太小,收敛就非常慢。

步长太大,可能会导致网络的瘫痪和不稳定。

这里我们令lr为0.01。

(1)非煤矿矿山的建设项目(注:

对煤矿建设项目有单独特别规定);

(2)结束参数:

设置最大重复次数epochs为10000次,精度goal达到0.0001。

精度过高时收敛过快。

(二)环境影响经济损益分析的步骤五、实验过程及结果

学习前(选择初始权值时)神经网络的输出曲线与实际函数的曲线对比图

图1学习前输出曲

 

发现规划存在重大环境问题的,审查时应当提出不予通过环境影响报告书的意见;学习后(选择初始权值时)神经网络的输出曲线与实际函数的曲线对比图

B.可能造成重大环境影响的建设项目,应当编制环境影响报告书

图2学习后输出曲线

4.将环境影响价值纳入项目的经济分析

(一)规划环境影响评价的适用范围和责任主体

图3误差的变化曲线图

六、各个参数对网络的影响

1、神经元数目N不同

图4N=5时网络输出

图5N=50时网络输出

增加隐层节点数对改进逼近效果的作用并不很明显。

但是增加隐层节点会增加精度、增加训练时间,在本题中N为10时,用时36s;N为50时,所用时间为266s;N为5时,所用时间为21s

2.步长不同

图6、图7、图8分别为lr为0.001、0.01、0.1的误差曲线图。

图6

图7图8

步长不同,虽然对误差有影响,但不明显,且每次运行结果不同。

但,步长太小,速度很慢。

3.算法不同

图9、图10、图11、图12分别为采用trainrp算法、trainscg算法、trainbfg算法、traingdx算法时的误差输出曲线

图9

图10

图11

图12

由图可知:

trainrp算法、trainscg算法、traingdx算法与trainlm算法相比误差大,而trainbfg算法不收敛且达不到精度要求。

由此可知:

trainlm算法是最佳选择。

七.结论

网络非线性程度越高,对于BP网络的要求就越高,则相同的网络逼近效果要差一些;隐层神经元的数目对于网络逼近效果出有一定的影响,一般来说,隐层神经元数目越多,则BP网络逼近能力越强,而本题中,3种情况网络训练的误差非常接近。

所以并不是神经元越多就越精确。

步长太小,收敛就非常慢,太浪费时间。

步长太大,可能会导致网络的瘫痪和不稳定。

训练时,学习速率太快可能引起不稳定,太慢则要花费太多时间,不同的训练算法也对网络的性能有很大影响。

多层神经网络能够对任意的线性或者非线性函数进行逼近,其精度也是任意的。

但是BP网络不一定能找到解。

例如本题,采用trainbfg算法拟合时,神经网络的输出很不理想。

尽管尝试增加节点数,变换学习函数,调整其他参数等到,但是效果仍不尽人意。

有时,网络的收敛速度及性能比较差,受到初始权值、样本取值、学习速率等因素的影响,对函数的选择也有一定的要求。

因此,标准的BP算法应结合一些其他的措施(如增加动量项,引入全局优化技术等)进行改进和优化。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 语文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1