2.1 BP神经网络基本原理

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

2.2 BP神经网络模型

BP网络模型包含其输入输出模型、作用函数模型、误差计算模型和自学习模型。

(1)节点输出模型

隐节点输出模型:Oj=f(∑Wij×Xi-q j)    (1)

输出节点输出模型:Yk=f(∑Tjk×Oj-q k) (2)

f-非线形作用函数;q -神经单元阈值。

图1 典型BP网络结构模型

(2)作用函数模型

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

(3)误差计算模型

误差计算模型是反映神经网络期望输出与计算输出之间误差大小的函数:

Ep=1/2×∑(tpi-Opi)2                (4)

tpi- i节点的期望输出值;Opi-i节点计算输出值。

(4)自学习模型

神经网络的学习过程,即连接下层节点和上层节点之间的权重拒阵Wij的设定和误差修正过程。BP网络有师学习方式-须要设定期望值和无师学习方式-仅仅需输入模式之分。自学习模型为

△Wij(n+1)= h ×Фi×Oj+a×△Wij(n) (5)

h -学习因子;Фi-输出节点i的计算误差;Oj-输出节点j的计算输出;a-动量因子。

2.3 BP网络模型的缺陷分析及优化策略

(1)学习因子h 的优化

採用变步长法依据输出误差大小自己主动调整学习因子,来降低迭代次数和加快收敛速度。

h =h +a×(Ep(n)- Ep(n-1))/ Ep(n) a为调整步长,0~1之间取值 (6)

(2)隐层节点数的优化

隐节点数的多少对网络性能的影响较大,当隐节点数太多时,会导致网络学习时间过长,甚至不能收敛;而当隐节点数过小时,网络的容错能力差。利用逐步回归分析法并进行參数的显著性检验来动态删除一些线形相关的隐节点,节点删除标准:当由该节点出发指向下一层节点的全部权值和阈值均落于死区(通常取±0.1、±0.05等区间)之中,则该节点可删除。最佳隐节点数L可參考以下公式计算:

L=(m+n)1/2+c (7)

m-输入节点数;n-输出节点数;c-介于1~10的常数。

(3)输入和输出神经元的确定

利用多元回归分析法对神经网络的输入參数进行处理,删除相关性强的输入參数,来降低输入节点数。

(4)算法优化

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

 3. 优化BP神经网络在系统安全评价中的应用

系统安全评价包含系统固有危急性评价、系统安全管理现状评价和系统现实危急性评价三方面内容。当中固有危急性评价指标有物质火灾爆炸危急性、工艺危急性、设备装置危急性、环境危急性以及人的不可靠性。

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

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

3.2 BP神经网络在系统安全评价中的应用实现

(1)确定网络的拓扑结构,包含中间隐层的层数,输入层、输出层和隐层的节点数。

(2)确定被评价系统的指标体系包含特征參数和状态參数

运用神经网络进行安全评价时,首先必须确定评价系统的内部构成和外部环境,确定能够正确反映被评价对象安全状态的主要特征參数(输入节点数,各节点实际含义及其表达形式等),以及这些參数下系统的状态(输出节点数,各节点实际含义及其表达方式等)。

(3)选择学习样本,供神经网络学习

选取多组相应系统不同状态參数值时的特征參数值作为学习样本,供网络系统学习。这些样本应尽可能地反映各种安全状态。当中对系统特征參数进行(-∞,∞)区间地预处理,对系统參数应进行(0,1)区间地预处理。神经网络的学习过程即依据样本确定网络的联接权值和误差重复修正的过程。

(4)确定作用函数,通常选择非线形S型函数

(5) 建立系统安全评价知识库

通过网络学习确认的网络结构包含:输入、输出和隐节点数以及反映其间关联度的网络权值的组合;即为具有推理机制的被评价系统的安全评价知识库。

(6) 进行实际系统的安全评价

经过训练的神经网络将实际评价系统的特征值转换后输入到已具有推理功能的神经网络中,运用系统安全评价知识库处理后得到评价实际系统的安全状态的评价结果。实际系统的评价结果又作为新的学习样本输入神经网络,使系统安全评价知识库进一步充实。

3.3 BP神经网络理论应用于系统安全评价中的长处

(1)利用神经网络并行结构和并行处理的特征,通过适当选择评价项目,能克服安全评价的片面性,能够全面评价系统的安全状况和多因数共同作用下的安全状态。

(2)运用神经网络知识存储和自适应特征,通过适应补充学习样本,能够实现历史经验与新知识完满结合,在发展过程中动态地评价系统的安全状态。

(3)利用神经网络理论的容错特征,通过选取适当的作用函数和数据结构,能够处理各种非数值性指标,实现对系统安全状态的模糊评价。

BP神经网络基本原理的更多相关文章

  1. BP神经网络的基本原理

    2.1 BP神经网络基本原理 BP网络模型处理信息的基本原理是:输入信号Xi通过中间节点(隐层点)作用于输出节点.经过非线形变换,产生输出信号Yk,网络训练的每一个样本包含输入向量X和期望输出量t,网 ...

  2.  BP神经网络

     BP神经网络基本原理 BP神经网络是一种单向传播的多层前向网络,具有三层或多层以上的神经网络结构,其中包含输入层.隐含层和输出层的三层网络应用最为普遍. 网络中的上下层之间实现全连接,而每层神经元之 ...

  3. BP神经网络学习笔记_附源代码

    BP神经网络基本原理: 误差逆传播(back propagation, BP)算法是一种计算单个权值变化引起网络性能变化的较为简单的方法.由于BP算法过程包含从输出节点开始,反向地向第一隐含层(即最接 ...

  4. bp神经网络及matlab实现

    本文主要内容包含: (1) 介绍神经网络基本原理,(2) AForge.NET实现前向神经网络的方法,(3) Matlab实现前向神经网络的方法 . 第0节.引例  本文以Fisher的Iris数据集 ...

  5. 神经网络中的BP神经网络和贝叶斯

    1 贝叶斯网络在地学中的应用 1 1.1基本原理及发展过程 1 1.2 具体的研究与应用 4 2 BP神经网络在地学中的应用 6 2.1BP神经网络简介 6 2.2基本原理 7 2.3 在地学中的具体 ...

  6. 模式识别之ocr项目---(模板匹配&BP神经网络训练)

    摘 要 在MATLAB环境下利用USB摄像头采集字符图像,读取一帧保存为图像,然后对读取保存的字符图像,灰度化,二值化,在此基础上做倾斜矫正,对矫正的图像进行滤波平滑处理,然后对字符区域进行提取分割出 ...

  7. 字符识别OCR研究一(模板匹配&BP神经网络训练)

    摘 要 在MATLAB环境下利用USB摄像头採集字符图像.读取一帧保存为图像.然后对读取保存的字符图像,灰度化.二值化,在此基础上做倾斜矫正.对矫正的图像进行滤波平滑处理,然后对字符区域进行提取切割出 ...

  8. 基于BP神经网络的简单字符识别算法自小结(C语言版)

    本文均属自己阅读源代码的点滴总结.转账请注明出处谢谢. 欢迎和大家交流.qq:1037701636 email:gzzaigcn2009@163.com 写在前面的闲话: 自我感觉自己应该不是一个非常 ...

  9. BP神经网络原理及python实现

    [废话外传]:终于要讲神经网络了,这个让我踏进机器学习大门,让我读研,改变我人生命运的四个字!话说那么一天,我在乱点百度,看到了这样的内容: 看到这么高大上,这么牛逼的定义,怎么能不让我这个技术宅男心 ...

随机推荐

  1. 自定义modal一个控制器的效果, presentViewController

    presentViewController 一.主要用途 弹出模态ViewController是IOS变成中很有用的一个技术,UIKit提供的一些专门用于模态显示的ViewController,如UI ...

  2. iOS oc 中的闭包

    //闭包 NSString* s =@"123"; void (^block)() = ^() { NSLog(@"%@",s); }; block();// ...

  3. Tomcat基础教程(四)

    一.将Web应用部署到Tomcat中 为什么要部署?将Web应用部署到Tomcat中,那么Tomcat就能找到相应的Web应用,当Tomcat启动时就会加载和初始化Web应用,而在Tomcat启动后, ...

  4. IntelliJ IDEA 创建web项目后添加Java EE (Tomcat)的依赖包

    本文讲述的是IntelliJ IDEA 12版本 如果在编译器中创建一个web项目后,没有设置tomcat的依赖包,就不能成功的编译,会缺少javax.servlet.*等类. 添加的方法是: 打开p ...

  5. Mozilla研究—深入理解mozilla所需的背景知识

    mozilla是一个以浏览器为中心的软件平台,它在我们平台中占有重要地位.我们用它来实现WEB浏览器.WAP浏览器.邮件系统.电子书和帮助阅读器等应用程序.为此,我最近花了不少时间去阅读mozilla ...

  6. 灰度图像--图像增强 直方图均衡化(Histogram equalization)

    灰度图像--图像增强 直方图均衡化(Histogram equalization) 转载请标明本文出处:http://blog.csdn.net/tonyshengtan,欢迎大家转载,发现博客被某些 ...

  7. 使用表达式避免拼接SQL语句

    在SQL语句编写过程中,无论在存储过程中还是在程序中,有时为了使语句兼容全部情况与某字段的特殊情况,不得不拼接SQL字串 如下表 商品ID 类别ID 1 1 2 1 3 2 4 3 5 3 如果我们要 ...

  8. c语言开源项目--SQLite学习资料总结

    同行博客: 1.http://www.cnblogs.com/hustcat/category/175618.html; 2.http://blog.csdn.net/zhoudaxia/articl ...

  9. 【转】Windows7 下安装 JDK 7 时版本冲突问题解决

    原文网址:http://wxl24life.iteye.com/blog/1966058 自己电脑上一直用的 JDK 版本是 1.6,今天决定更新到 1.7,在安装 JDK 1.7 后,控制台输入 j ...

  10. pyhton 查找一个数的所有因子 以及 判断一个数是否是质数 两个小脚本

    最近看到一个网站, 欧拉计划.挺好玩,都是一些算法题.这是本站:http://projecteuler.net/problems 这个是中文站:http://pe.spiritzhang.com/ 下 ...