BP神经网络原理

更新时间:2023-09-02 06:16:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

BP神经网络原理

BP网络模型处理信息的基本原理是:输入信 号Xi通过中间节点(隐层点)作用于输出节 点,经过非线形变换,产生输出信号Yk,网 络训练的每个样本包括输入向量X和期望输出 量t,网络输出值Y与期望输出值t之间的偏差, 通过调整输入节点与隐层节点的联接强度取 值和隐层节点与输出节点之间的联接强度Tjk 以及阈值,使误差沿梯度方向下降,经过反 复学习训练,确定与最小误差相对应的网络 参数(权值和阈值),训练即告停止。此时 经过训练的神经网络即能对类似样本的输入 信息,自行处理输出误差最小的经过非线形 转换的信息。

BP神经网络模型BP网络模型包括其输入输出模型、作用函数模型、 误差计算模型和自学习模型。 (1)节点输出模型 隐节点输出模型:Oj=f(∑Wij×Xi-qj) (1) 输出节点输出模型:Yk=f(∑Tjk×Oj-qk) (2) f-非线形作用函数;q -神经单元阈值。

2作用函数模型 作用函数是反映下层输入对上层节点刺激脉冲 强度的函数又称刺激函数,一般取为(0,1)内连续 取值Sigmoid函数: f(x)=1/(1+e-x)

( 3)误差计算模型 误差计算模型是反映神经网络期望输出与计算输出 之间误差大小的函数: Ep=1/2×∑(tpi-Opi)2 tpi- i节点的期望输出值;Opi-i节点计算输出值。 (4)自学习模型 神经网络的学习过程,即连接下层节点和上层节点 之间的权重拒阵Wij的设定和误差修正过程。BP网 络有师学习方式-需要设定期望值和无师学习方式只需输入模式之分。自学习模型为 △Wij(n+1)= h ×Фi×Oj+a×△Wij(n) h -学习因子;Фi-输出节点i的计算误差;Oj-输出节 点j的计算输出;a-动量因子。

BP网络模型的缺陷分析及优化策略(1)学习因子h 的优化 采用变步长法根据输出误差大小自动调整学习因子,来减少 迭代次数和加快收敛速度。 h =h +a×(Ep(n)- Ep(n-1))/ Ep(n) a为调整步长,0~1之间取值 (2)隐层节点数的优化 隐节点数的多少对网络性能的影响较大,当隐节点数太多时, 会导致网络学习时间过长,甚至不能收敛;而当隐节点数过 小时,网络的容错能力差。利用逐步回归分析 法并进行参 数的显著性检验来动态删除一些线形相关的隐节点,节点删 除标准:当由该节点出发指向下一层节点的所有权值和阈值 均落于死区(通常取±0.1、±0.05等区间)之中,则该节 点可删除。最佳隐节点数L可参考下面公式计算: L=(m+n)1/2+c (7) m-输入节点数;n-输出节点数;c-介于1~10的常数。

(3)输入和输出神经元的确定 利用多元回归分析法对神经网络的输入参数 进行处理,删除相关性强的输入参数,来减 少输入节点数。 (4)算法优化 由于BP算法采用的是剃度下降法

,因而易陷 于局部最小并且训练时间较长。用基于生物 免疫机制地既能全局搜索又能避免未成熟收 敛的免疫遗传算法IGA取代传统BP算法来克 服此缺点。

优化BP神经网络在系统安全评价中的应用系统安全评价包括系统固有危险性评价、系 统安全管理现状评价和系统现实危险性评价 三方面内容。其中固有危险性评价指标有物 质火灾爆炸危险性、工艺危险性、设备装置 危险性、环境危险性以及人的不可靠性。

基于优化BP神经网络的系统安全评价模型

BP神经网络在系统安全评价中的应用实现(1)确定网络的拓扑结构,包括中间隐层的层数,输入层、输 出层和隐层的节点数。

(2)确定被评价系统的指标体系包括特征参数和状态参数运用神经网络进行安全评价时,首先必须确定评价系统的 内部构成和外部环境,确定能够正确反映被评价对象安全状 态的主要特征参数(输入节点数,各节点实际含义及其表达 形式等),以及这些参数下系统的状态(输出节点数,各节 点实际含义及其表达方式等)。 (3)选择学习样本,供神经网络学习 选取多组对应系统不同状态参数值时的特征参数值作为学 习样本,供网络系统学习。这些样本应尽可能地反映各种安 全状态。其中对系统特征参数进行(-∞,∞)区间地预处理,对 系统参数应进行(0,1)区间地预处理。神经网络的学习过程即 根据样本确定网络的联接权值和误差反复修正的过程。

(4)确定作用函数,通常选择非线形S型函数 (5) 建立系统安全评价知识库 通过网络学习确认的网络结构包括:输入、输出 和隐节点数以及反映其间关联度的网络权值的组合; 即为具有推理机制的被评价系统的安全评价知识库。 (6) 进行实际系统的安全评价 经过训练的神经网络将实际评价系统的特征值转 换后输入到已具有推理功能的神经网络中,运用系 统安全评价知识库处理后得到评价实际系统的安全 状态的评价结果。实际系统的评价结果又作为新的 学习样本输入神经网络,使系统安全评价知识库进 一步充实。

BP神经网络理论应用于系统安全评价中的优点(1)利用神经网络并行结构和并行处理的特征, 通过适当选择评价项目,能克服安全评价的片面性, 可以全面评价系统的安全状况和多因数共同作用下 的安全状态。 (2)运用神经网络知识存储和自适应特征,通过 适应补充学习样本,可以实现历史经验与新知识完 满结合,在发展过程中动态地评价系统的安全状态。 (3)利用神经网络理论的容错特征,通过选取适 当的作用函数和数据结构,可以处理各种非数值性 指标,实现对系统安全状态的模糊评价。

BP神经网

络收敛速度阈值、学习率、隐层层数、隐层节点个数等对神 经网络的学习速度(收敛速度)都有较大的影响。本 文在BP网络的基础上,研究讨论了各个参数对收敛 速度的影响,以减小选取网络结构和决定各参数值的 盲目性,达到提高收敛速度的目的。 (1)初始权值和阈值对收敛速度的影响 初始权值和阈值要选得小一些。选择隐层节点数的 原则是尽量使网络结构简单,运算量小。从实验数据 分析可知:当节点数太少时,每个节点负担过重,迭代 而有的选择却要迭代几千次,或者更多,甚至不收敛。

(2)学习率对收敛速度的影响 学习率的设置对BP算法的收敛性有很大的影响。 学习率过小,误差波动小,但学习速度慢,往往由于训 练时间的限制而得不到满意解;学习率过大,学习速 度加快,会引起网络出现摆动现象,导致不收敛的危 险。因此,选择一个合适的学习率是B P算法的一个 较关键的问题。学习率的主要作用是调整权值、阈 值的修正量. (3)隐层层数的选择对收敛速度的影响 通过实验发现,用两个隐层比用一个隐层的收敛速 度还要慢。 (4)隐层节点数对收敛速度的影响 目前,对隐层节点数的设定缺乏理论指导,但是实验 研究表明,隐含节点数增加会影响收敛速度。

BP神经网络设计步骤BP网络的设计主要包括输入层,隐层,输出层及各层之间的 传输函数几个方面。 (1)网络层数 大多数通用的神经网络都预先预定了网络的层数,而BP网 络可以包含不同的隐层。对多层BP神经网络,隐层层数至 少为1层或1层以上,每个隐层的神经元个数至少为1个或1个 以上,否则与多层网络的命题矛盾而不成立。 (2) 输入层的节点数 网络的输入个数应等于应用问题的输入数,MATLAB的BP 网络的建立是通过函数newff或newcf实现的. (3)网络数据的预处理 预处理方法有归一化处理、标准化处理和主成分分析。常 采用的是归一化处理,即将输入、输出数据映射到[-1,1]范围 内,训练结束后再反映射到原数据范围。 (4)输出层的节点数 输出层节点数取决于两个方面,输出数据类型和表示该类 型所需要的数据大小。

5 隐层的节点数 i.根据经验,可以参考以下公式进行设计: n=sqrp(ni+n0)+a或者n=sqrt(nl) 式中:n为隐层节点数;ni为输入节点数;n0 为输出节点数;a为1~10之间的常数。 ii.改变n,用同一样本集训练,从中确定网络误 差最小时对应的隐层节点数。 6 传输函数 BP网络中传输函数常采用S(sigmoid)型函 数.在某些特定情况下,还可能采用纯线性 (Pureline) 函数.

(7)训练方法及其参数选择 net.trainParam.show=.. ; %显示训练结果的间隔步 数 net.trainParam.epochs= .. ; %最大训练步数 net.trainParam.goal=.. ; %训练目标误差 net.trainParam.mu=.

. ; %学习系数的初始值, Marquardt调整参数 net.trainParam.mu_dec= ..; %学习系数的下降因子 net.trainParam.mu_inc=.. ; %学习系数的上升因子 net.trainParam.mu_max= ..;%学习系数的最大值 net.trainParam.min_grad=.. ; %训练中最小允许梯 度值

(8)初始权值的设计 通常使用如下两种方法: i.取足够小的初始权值 ii.使初始值为+1和-1的权值数相等。

本文来源:https://www.bwwdw.com/article/gzai.html

Top