神经网络的权值范文
时间:2024-04-01 18:17:27
导语:如何才能写好一篇神经网络的权值,这就需要搜集整理更多的资料和文献,欢迎阅读由公务员之家整理的十篇范文,供你借鉴。
篇1
关键词: 网络流量检测; 群智能算法; RBF神经网络; 网络安全
中图分类号: TN926?34; TP393 文献标识码: A 文章编号: 1004?373X(2016)20?0012?03
Abstract: The application of swarm intelligence optimizing neural network in network security and a network traffic detection model based on neural network algorithm are studied in this paper. QAPSO algorithm is used to optimize the basis function center and base function width of RBF neural network, and the connection weights of the output layer and the hidden layer as well. The detection model studied in this paper is analyzed by means of an example. The collected data is used to train the network traffic identification system and test its performance. The method researched in this paper is compared with the algorithms based on the conventional PSO and HPSO. The results show that the detection method has a faster recognition speed and better recognition accuracy, and can avoid the occurrence of local optimal solutions.
Keywords: network traffic detection; swarm intelligence algorithm; RBF neural network; network security
0 引 言
随着互联网技术不断发展和普及,互联网络中的应用和服务类型不断增加,为了提高网络安全,保护网民、公司企业以及政府部门等的财产与利益,需要对网络流量进行高效的监测[1?2]。
RBF神经网络具有强大的非线性拟合能力,即非线性映射能力,以及自学能力,同时便于计算机实现,因而在网络流量检测等网络安全领域得到了广泛应用。但是RBF神经网络的性能特别依赖网络参数选取的好坏,而传统RBF神经网络参数通常由人为按经验或随机选取,因此网络的性能具有较强的随机性[3?4]。
近年来,群智能优化算法逐渐发展并得到较为广泛的应用,其中粒子群优化算法是一种能够全局优化,具有建模速度快、收敛效率高的群智能优化算法,然而使用常规PSO算法优化神经网络仍然存在收敛速度和全局优化能力不能够达到平衡等问题[5?7]。因此本文研究一种基于量子自适应粒子群优化算法(QAPSO),对RBF神经网络的基函数中心[Ci]、基函数的宽度[σi]以及输出层与隐含层的连接权值[wi]进行优化。
1 基于群智能优化的神经网络算法
本文研究的QAPSO优化算法主要分为4部分,分别为初始化种群、估计进化状态、控制参数自适应以及处理变异[8]。
1.1 初始化种群
2 实例分析
为验证本文建立基于QAPSO优化RBF神经网络的网络流量检测模型的性能,使用基于Libsvm软件包的C#程序并结合数值计算软件Matlab R2014对网络流量进行采集、计算以及分类。网络流量检测类型如表2所示。
表2 网络流量检测类型
使用常规PSO优化算法及HPSO优化算法对RBF神经网络进行优化,并建立同样的网络流量检测模型,使用同样的训练数据样本进行训练,使用同样的测试数据样本进行性能测试。常规PSO优化算法的参数为空间维度[D=24],粒子数量[N=30],最大迭代次数[tmax=200],连接权值[w=0.9~0.4],加速系数[c1]和[c2]均为2。HPSO优化算法的参数为空间维度[D=24],粒子数量[N=30],最大迭代次数[tmax=200],连接权值[w=0.8~0.2],加速系数[c1]和[c2]均为2.5,[Vmaxd=0.5×Range]。QAPSO算法的参数为空间维度[D=24],粒子数量[N=30],最大迭代次数[tmax=200],连接权值[w=0.8~0.2],加速系数[c1]和[c2]为1.5~2.5,[Vmaxd=Range],[r1d]和[r2d]为0~1之间的随机数。
从图1可以看出,常规PSO优化算法使得适应度函数收敛到稳定值时的迭代次数为171次,HPSO优化算法使用了112次,而本文研究的QAPSO优化算法只使用了76次。同时,本文研究的QAPSO优化算法的收敛值更低,适应度函数的值即为RBF神经网络的训练误差,因此适应度函数越小,RBF神经网络的训练误差越小,性能越好。因此,本文研究的QAPSO优化算法相比另外两种PSO优化算法具有更快的收敛速度和更高的收敛精度,极大地提高了RBF神经网络的泛化能力。使用本文研究的QAPSO?RBF检测模型及常规PSO和HPSO优化RBF算法的检测模型对实验数据进行识别。表3为三种检测模型的检测准确率与反馈率对比。图2为三种模型的平均检测率和反馈率对比。
通过表3的数据可以看出,本文研究的QAPSO?RBF检测模型对12种类型网络服务与应用均有较好的识别准确率和反馈率,平均识别准确率达到了92.81%,比HPSO?RBF算法的平均识别准确率高出3.49%,比PSO?RBF算法的平均识别准确率高出6.99%。QAPSO?RBF识别算法的平均识别反馈率达到了94.81%,比HPSO?RBF算法的平均识别反馈率高出3.51%,比PSO?RBF算法的平均识别反馈率高出7.28%。可表明相比其他粒子群优化算法,本文研究的QAPSO优化算法在进行多次迭代后仍然具有较好的活跃性,跳出局部最优解,对最佳值的全局搜索能力具有非常显著的提高,加快了算法收敛速率,提高了识别准确率。
3 结 论
本文研究一种群智能优化神经网络算法的网络流量检测模型。通过实际测试验证,相比其他粒子群优化算法,本文研究的QAPSO优化算法在进行多次迭代后仍然具有较好的活跃性,跳出局部最优解,对最佳值的全局搜索能力具有非常显著的提高,加快了算法收敛速率,提高了识别准确率。
参考文献
[1] 卢金娜.基于优化算法的径向基神经网络模型的改进及应用[D].太原:中北大学,2015.
[2] 钟建坤,周永福.群智能算法优化神经网络在网络安全的应用研究[J].激光杂志,2015,36(4):143?146.
[3] 李博.粒子群优化算法及其在神经网络中的应用[D].大连:大连理工大学,2005.
[4] 蒋林利.改进的PSO算法优化神经网络模型及其应用研究[D].厦门:厦门大学,2014.
[5] 陈伟.基于群体智能算法的人工神经网络优化及其应用[D].无锡:江南大学,2007.
[6] 刘晓刚.群体智能算法在RBF神经网络中的应用[D].青岛:青岛大学,2008.
[7] 马汝辉.基于网络流量异常检测的网络安全技术研究[D].无锡:江南大学,2008.
篇2
关键词: FPGA; BP神经网络; 线性拟合; 非线性拟合; 自适应训练
中图分类号: TN702.2?34; TP183 文献标识码: A 文章编号: 1004?373X(2016)15?0115?04
Abstract: Using software for neural network has the disadvantages of low parallelism and slow speed, the hardware design resource utilization of the traditional neural network is high, and the network training is uncontrollable. To solve these problems, a new FPGA?based design method of back propagation (BP) neural network is proposed. The method can realize the Sigmoid excitation function through piecewise linear fitting and nonlinear fitting based on symmetry, and uses the finite state machine (FSM) to accomplish the training times adaption based on error. The Verilog HDL language is used to design the 1?3?1 BP neural network to approximate the function [y=cosx.] The resource occupancy of the network is 2 756 LEs, the training times are 1 583, the average relative error of the network test sample is 0.6%, and the maximum clock frequency is 82.3 MHz. The verification results show that the neural network designed with the method has the advantages of less resource occupancy, high accuracy and fast running speed, and can control the network training automatically.
Keywords: FPGA; BP neural network; linear fitting; nonlinear fitting; adaptive training
0 引 言
人工神经网络(ANNs)[1]通常都是采用基于软件的方法实现。但作为一个并行计算系统,软件实现的方法存在速度慢的缺点,而硬件方式具有高并行性的特点,适合于人工神经网络。FPGA作为一种通用的硬件设计平台,其内部分布式的资源与神经网络的结构非常契合,是一个实现神经网络硬件化设计的良好选择。
资源占用是FPGA设计的一个重要考量因素,而网络训练是神经网络功能实现的基础。已有的神经网络硬件设计工作在这两方面还存在巨大的空间。例如,薛维琴等利用FPGA实现了BP神经网络[2],该网络经过训练能够描述非线性函数,但没有提出BP神经网络的激励函数和训练控制模块的具体硬件实现方法。李利歌等提出了直接利用查找表实现神经网络激励函数的方法[3],但是查找表存在占用资源大,运行速度慢的缺点。张海燕等采用基于查找表的STAM算法实现神经网络激励函数[4],且文中也没有提到训练控制模块。Javier Valls等提出利用CORDIC算法实现神经网络的激励函数[5],资源利用率低,但是存在精度不足的问题。刘培龙利用分段拟合实现激励函数[6],但是激励函数资源占用较多。
基于这一现状,本文通过对Sigmoid函数基于对称性分段拟合以及基于误差的训练自适应技术,提出了一种新的神经网络FPGA设计方法。该方法设计的神经网络资源占用少,网络训练自适应,同时还具有精度高,运行速度快的优点。
1 BP神经网络的FPGA设计
根据BP神经网络的结构,本文将网络划分为神经元模块、激励函数模块、误差计算模块,权值更新模块、权值存储模块以及自适应网络训练模块。图1给出了不同功能模块之间的连接和训练过程。其中,权值存储模块和输入神经元将输入层的权值以及训练的样本输入到隐含层神经元进行乘累加运算,其结果输入到激励函数模块得到激励函数输出,该输出和隐含层的权值作为输出层神经元的输入得到本次训练结果。该结果再经过误差计算模块计算误差值和权值改变量。权值改变量在权值更新模块中得到新权值存入到权值存储模块。误差值输入到自适应网络训练模块判断网络训练是否达到最优。网络训练达到最优前,该过程循环,当网络训练达到最优,自适应训练模块控制网络停止训练。
系统中神经元模块、误差计算模块、权值更新模块按照BP网络算法规则可调用加、乘、乘累加等功能模块,权值存储模块可调用RAM模块。激励函数模块和自适应训练模块关乎系统资源占用及训练过程的实现,是本文BP神经网络FPGA设计的重点。
1.1 激励函数模块设计
激励函数模块是影响整个神经网络资源利用的主要因素之一,在保证误差足够小的前提下,激励函数模块资源占用越小越好。
式中含有指数运算,较难在FPGA 中直接实现。利用Sigmoid函数具有对称性以及较好的线性区域和非线性区域分界的特点,本文提出一种资源占用小、精度高的基于对称性分段拟合的激励函数硬件实现的方法。
考虑到Sigmoid函数的对称性,只需完成[x>0]的区域硬件实现,根据对称性即可求出[x0]区域,根据Sigmoid函数线性区域和非线性区域分界良好的特点,分别采用线性拟合和非线性拟合的方法分段逼近。具体而言,如图2所示,将整个激励函数模块分为预处理模块、函数逼近模块以及最终输出模块三个子模块。
1.1.1 预处理模块
激励函数的输入[x]为16位定点数,最高位为符号位,中间五位为整数部分,后十位为小数部分。当[x]输入到激励函数模块时,首先进行预处理。截取二进制输入[x]的最高位判断[x>0]或者[x0]时,[x=x,]将[x]输入到后续处理模块,若判断出[x
1.1.2 函数逼近模块
基于对输入[x]的预处理,此子模块只需要对[x>0]的情况做线性拟合和非线性拟合。分段逼近函数如表1所示。
1.1.3 最终输出模块
最终输出模块由预处理模块输出的控制信号控制。若[x>0,]则控制信号控制最终输出模块直接输出函数逼近模块中[x]对应的输出[fx;]若[x
1.1.4 激励函数模块分析
按照上述设计方法完成激励函数模块的设计后,对激励函数模块进行功能仿真和误差分析。从-8~8以0.001为间隔生成测试数据输入到激励函数模块,得到的ModelSim仿真结果如图3所示,其各区间绝对误差如表2所示。从中可以看出,各区间的误差值均很小且误差分布较为平均,体现出良好的逼近效果。
1.2 自适应训练模块设计
网络训练是神经网络功能实现的基础。神经网络随着训练的进行,权值逐渐改变,误差逐渐减小,但如果网络训练不能适时结束,造成过度训练,则网络性能会变差。然而对网络训练的控制在硬件上并不易设计,故很多工作未讨论这一点或简单的以固定周期来完成训练。本文提出了一种基于可容忍误差值的自适应网络训练硬件设计方法,可有效的自动控制神经网络训练过程。
分析神经网络的训练过程,每一次输入样本值都会在本次训练完成时得到一个误差值,当误差在可以容忍的范围内可以认为网络已经训练完成。认为在给定的可容忍误差值的情况下,如果连续两次整个样本集输入得到的误差绝对值都要比给定的可容忍误差值要小,则该神经网络训练已经达到最优。根据这个思想,提出利用有限状态机实现自适应网络训练。
如图4所示,有限状态机的状态数是样本集中样本数的两倍,状态机初始为零状态。当某一次训练得到的误差绝对值小于可容忍误差值时,状态机进入第一个状态。若紧邻的下一次训练得到的误差绝对值也小于可容忍误差值,状态机进入下一个状态,否则状态机状态回到第0个状态。当状态机跳转到最后一个状态时,网络训练完成,此时输出控制信号控制权值存储模块停止权值更新,提示信号提示训练完成。该模块的分析需要结合网络中的其他模块,故测试结果在下一节中给出。
2 验证和分析
2.1 验证平台
根据上述方法,设计了一个1?3?1三层BP神经网络验证其性能。验证平台为Altera公司的EP2C70F896C6。
以[y=cosx]函数为学习对象,从[0~2π]之间以[0.062 5π]为间隔选取33个样本组成样本集,随机选取其中25个作为训练样本,剩下8个作为测试样本。神经网络的初始权值和阈值的选取具有一定的随机性,根据网络需要逼近的函数数值大小,输入层到隐含层的初始权值矩阵[W1=[2.5,0.5,-0.3],]隐含层到输出层的初始权值矩阵[W2=[0.35,0.4,0.3],]隐含层阈值选为[0.2,0.3,0.4],输出层阈值选为[0.3]。隐含层的学习率设为0.4,输出层的学习率设为0.3,容忍误差设为0.01。
2.2 结果分析
ModelSim仿真得到的结果如图5所示,从图5中可以看出该BP神经网络的训练是自适应的。当网络训练到最优时,产生一个控制信号和一个提示信号以及网络训练的次数,此时权值存储器的值不再变化,训练完成。
25个训练样本集训练的平均误差为0.003,分析8个测试样本集的误差,如表3所示。从表3中可以看出,其误差与训练数据的误差大体相当且均很小。计算测试样本的平均相对误差为0.6%,小于1%,说明该方法实现的基于FPGA的BP神经网络精度较高。
将该网络下载至Altera公司EP2C70F896C6的FPGA中,其最高时钟频率为82.3 MHz,可见该方法具有运行速度快的优点。将该神经网络资源占用情况与已有相关工作的资源占用情况作对比,如表4所示。虽然其中各设计的规模和平台有所差异(如1 Slice≈4 LEs),但仍可估算出即便添加了自适应训练模块,本设计对资源的占用依然较低。
从表5中可以看到,当学习对象不同时,网络训练的次数也不同,实现了训练过程的自适应。由此亦可推至,若采用传统的预设固定次数的方式完成训练,则对于不同学习对象难免会造成训练不充分或过度训练的情况,从而影响网络的性能。因此,该表也进一步证明了该设计自适应训练的优越性。
3 结 论
本文以典型的BP神经网络为例,提出了一种自适应训练的神经网络FPGA设计方法。通过对Sigmoid激励函数基于对称性做分段拟合减少了资源占用,使用基于可容忍误差完成了网络训练自适应。该方法设计的神经网络具备训练可控、资源占用低、精度高的优点。此方法不仅适合于 BP网络,也可推广至采用Sigmoid函数及需要训练控制的其他类型的神经网络。
注:本文通讯作者为常胜。
参考文献
[1] 蒋宗礼.人工神经网络导论[M].北京:高等教育出版社,2001:15?16.
[2] 薛维琴,李莉华,戴明.基于FPGA的人工神经网络系统的实现方法[J].电子设计工程,2010,18(9):151?154.
[3] 李利歌,阎保定,侯忠.基于FPGA的神经网络硬件可重构实现[J].河南科技大学学报(自然科学版),2009,30(1):37?40.
[4] 张海燕,李欣,田书峰.基于BP神经网络的仿真线设计及其FPGA实现[J].电子与信息学报,2007,29(5):1267?1270.
[5] VALLS J, KUHLMANN M, PARHI K K. Evaluation of CORDIC algorithms for FPGA design [J]. Journal of VLSI signal processing, 2002, 32(3): 207?222.
篇3
【关键词】大学生身体素质评估 遗传算法 BP神经网络 MATLAB计算程序
在校大学生是国家重要的人才后备力量,大学生的身体素质培养和锻炼是学校体育教学中关注的重点。对大学生身体素质进行科学、切实的评价可制订更为有效的培养方案,帮助大学生提高其身体素质。身体素质评价就是将大学生的身体形态、生理机能及运动能力等方面的数据综合起来进行评价[1]。从以往的研究成果看,对大学生身体素质评价集中于采用概率统计、多元回归分析和神经网络[2]的方法。然而,概率统计仅得到整体评价结果,多元回归分析预测精度较低,且两者受样本空间影响较大。为此,本文利用遗传算法来训练初始网络模型,再用BP算法来进行精确求解,是对神经网络评估大学生身体素质的进一步优化应用。
基于遗传算法的BP神经网络理论
通过把神经网络和遗传算法合理、科学的结合,既能够利用神经网络较强的学习能力,又发挥了遗传算法全局寻优的搜索功能。首先利用遗传算法得到权值的较优初始取值,训练网络避免了局部极小,利用BP神经网络训练次数和最终权值也相对稳定,训练速度明显加快,从而既节约了时间,又提高了预测结果的准确性。
1.基于遗传算法的BP神经网络结构
BP网络的学习规则采用最速下降法,利用遗传算法根据训练目标函数对网络权值进行迭代,找到最佳初始网络权值。通过反向传播来不断调整网络权值,使网络误差平方和最小,该系统的网络结构,如图1所示。先对大学生身体素质的评估指标进行分类,抽取大学生身体素质的特征指标,并作为输入信息送入由输入层、中间层和输出层组成的三层网络模型进行评估。经过测试的网络,成为稳定的模式评估器,即可输出评估结果[3,4]。
该模型的输入层节点数为n,即大学生身体素质评价指标数,中间层节点数为 ,输出层节点数为1,即身体素质评估结果值,ωij和ωj为BP神经网络权值,初始化隐含层阈值为ɑ,输出层阈值为b,由此可给定学习速率和神经元激励函数。从图1可发现,BP神经网络可以看成一个非线性函数,网络输入值和输出值分别为该函数的自变量和因变量。当输入层节点数为n,输出层节点数为1时,BP神经网络就表达了从n个自变量到1个因变量的函数映射关系。
2.基于遗传算法的BP神经网络算法
遗传算法优化BP神经网络的核心是用遗传算法来优化BP神经网络的初始权值和阈值,使优化后的BP神经网络能够更好地预测函数输出,计算流程如图2所示。
1.背景资料
根据本校某班2011年大学生身体素质测评成绩,从中选取30名学生的测试结果作为神经网络的训练样本和校验样本。结合遗传算法和BP神经网络算法,在大型数学计算软件MATLAB中编程实现基于遗传算法的BP神经网络大学生身体素质评估[4]。
2.计算结果与分析
遗传算法优化过程中最优个体的适应度变化(如图3)。把最优初始权值、阈值赋给神经网络,用训练数据训练100次后,得到基于遗传算法的BP神经网络预测值。为了对比分析,也进行了BP神经网络预测分析(如图4)。
从图4可看出,采用BP神经网络及遗传算法优化的BP神经网络两种算法得到的预测结果,与专家判断(实际值)基本一致。但基于遗传算法的BP神经网络较BP神经网络预测精度高。特别在输入节点,即评价大学生身体素质的指标较多时,基于遗传算法的BP神经网络预测效果要好一些。
结 论
1.本文提出了基于遗传算法的BP神经网络大学生身体素质评价算法,并建立了相应的网络模型。
2.基于遗传算法的BP神经网络算法不但具有神经网络的函数逼近能力,而且应用遗传算法优化BP神经网络的权值、阈值,可使优化后的神经网络避免训练时间长、易陷入局部极值的缺点。
3.结合实例,将基于遗传算法的BP神经网络大学生身体素质评价算法,应用于本校学生身体素质评估。结果表明,该算法较BP神经网络预测精度及效率高,可作为今后大学生身体素质评价的一种新方法。
参考文献:
[1]范正森,张明如,周瑞琪.大学生身体素质综合评价数学模型[J].武汉工业大学学报,2001,4:92-94.
[2]陈海英,郭巧.短跑运动能力的神经网络评价方法[J].北京理工大学学报,2003,1:54-57.
[3]陈刚,何政伟,杨斌,杨洋.遗传BP神经网络在泥石流危险性评价中的应用[J].计算机工程与应用,2010,46(3).
篇4
关键词:模式识别;神经网络;感知器;权值
中图分类号: TP183 文献标志码: A 文章编码:2095-2163(2015)03-
Perceptron Network Weights Calculation and MATLAB Simulation in Pattern Recognition
ZHANG Guangjian
(1 Department of Information Engineering, Sichuan College of Architectural Technology,Deyang Sichuan 618000, China;2 Institute of Intelligent Computing, Sichuan College of Architectural Technology, Deyang Sichuan 618000, China)
Abstract:As the perceptron neural network pattern recognition, constructing the network model takes a very important parameters, which can be used by manual calculation, and can also carry out the training simulation obtained by MATLAB neural network toolbox. The paper uses two weights for building the classifier network model, and compares test results of the pattern recognition model.It is known that for the recognition rate of the samples tested, the weights are different,and in order to improve the generalization of the model, the construction of the network model need to test selects the optimal weights.
Keywords:Pattern Recognition; Neural Network; Perceptron; Weights
0 引 言
人工神经网络[1](artificial neural network,ANN),简称神经网络(neural network,NN),是一种对人脑功能实行模拟的简化模型结构,是一种功能型的数学模型(计算模型),可完成科学计算,并具有强大的处理问题能力。神经网络是由大量的人工神经元相互连接而成的信息处理系统,能够基于外界信息的引发改变内部结构,因而属于一种自适应系统。现代神经网络则是一种非线性统计性数据建模工具,常用来对输入和输出间的复杂关系进行建模,或用来探索数据的关联模式。
1943年,美国神经生理学家McCulloch和Pitts提出的第一个神经网络模型M-P模型,开创了人工智能的研究工作,奠定了神经网络的发展基础。其中的感知器(Perceptron)则是由美国计算机科学家罗森布拉特(Frank Rosenblatt)于1957年提出的。
具体来说,神经网络是一种运算模型[2],是由大量的节点(或称“神经元”,或“单元”)及其间的相互联接构成。每个节点代表一种特定的输出函数,称为激励函数(activation function)。每两个节点间的连接均表示对于通过该连接信号的加权值,称之为权重(weight),也就相当于人工神经网络的记忆。此外的网络输出则是依据网络的连接方式、权重值(权值)和激励函数的不同而各不相同。综合论述可得,网络自身通常都是对自然界某种算法或者函数的逼近,也可能是对一种逻辑策略的表达。因此,为解决模式识别问题创建的网络模型,若选用最优权值,就会极大地提高模式识别率。
1 感知器及学习算法
神经网络中,感知器神经网络[3]是一种典型的分层结构,信息从输入层进入网络后,将逐层向前传递至输出层。单层感知器是一个具有一层神经元、采用阈值激活函数的前向网络。通过对网络权值的训练,可以使感知器对一组输入矢量的响应完成结果为0或1的目标输出,从而实现对输入矢量分类的目的。没有反馈或竞争的简单神经元感知器模型如图1 所示。
图1 一个单一神经元的感知器模型
Fig.1 A single neuron perceptron model
在感知器学习算法[4]中,设输入向量 ,相应的权值向量 ,对一个输入模式 的网络输入 为
(1)
根据阈值函数产生一个输出 为:
(2)
感知器学习中,设t为目标输出,使用Hebbian学习,其误差公式为:
(3)
对任何新权值,具体计算公式为:
(4)
对于误差E的三种可能情况,新权值的调整公式为:
(5)
在公式(5)中, 是新的调整权值, 是前次或者初始权值; 是输入向量; 是学习率,且是一个常数, 。精准快捷地确定 值,将直接影响对后期的网络学习训练时间。
2 手工计算权值
样本集如表1所示。其中 x1,x2为两个输入,t为期望目标输出。感知器分类器的任务是将表1所示的二维模式进行分类。
表1 分类数据
Tab.1 Classification of samples
0.3,0.7 1
-0.6,0.3 0
-0.1,-0.8 0
0.1,-0.45 1
样本点如图2所示。
图2 输入向量与期望响应样本图
Fig.2 Input vector and the desired response sample figure
根据文献[2]的推理,假定 ,其中, 是学习率, 为网络初始权值。权值调整过程具体如下。
(0.3)=0.95
=-0.15
调整后的权值,继续计算第二组样本数据 。
如果分类正确,继续使用该组权值计算下一组数据;分类错误,即需应用公式(5)的规则进行权值调整,直到最终获得一组权值w=[1.05 0.025],完成对全部样本进行的正确分类。为此,根据权值和样本对感知器网络进行分类训练,其相应的分类结果如图3所示。
图3样本分类图
Fig.3 Sample classification map
3 MATLAB训练仿真
MATLAB神经网络工具箱(Neural Network Tool)[5],为神经网络提供了一种高效、集成的仿真手段,通过该工具箱,可以对神经网络进行设计、训练、可视化以及仿真。
使用MATLAB R2013a 的神经网络工具箱函数,设置p为输入向量,t为期望目标向量。
p= [0.3 -0.6 -0.1 0.1;
0.7 0.3 -0.8 -0.45];
t= [1 0 0 1];
net =newp(minmax(p),1);
网络传递函数指定为硬限值函数HARDLIM,学习函数指定为LEARNP。创建如图4所示的感知器神经网络模型。
图4 生成的感知器网络模型
Fig.4 Perceptron network model generation
使用命令net=train(net,p,t)进行网络训练,使用sim(net,p)进行仿真,得到输出向量为[1 0 0 1],完全匹配期望目标向量t ,训练结果达到零误差,网络权值w=[1.8 0],偏值为b=0。使用plotpc(net.iw{1,1},net.b{1}) 命令在样本中绘制分类线,如图5所示,从图中可以看出分类线能对输入样本完全分类。
图5 训练后的网络对输入样本的分类
Fig.5 Classification of the input sample after network training
4 网络测试[6]
通过样本训练得到的网络,但是测试样本的准确率却未必会高。一个性能良好的网络应该具有优秀的泛化能力。首先输入样本数据进行训练,通过修正权值来减小误差得到拟合程度很高的网络模型,而后的网络测试则是用另外的样本数据去测试网络的性能。
对于两种权值建立的网络模型,通过加入测试样本数据进行分类测试,测试样本为:
p1=[ 0.4 -0.5 0 0.2 ; 0.8 0.4 -0.7 -0.35 ]
使用MATLAB的sim(net,P1) 函数完成对输入样本的测试。
对于手工计算获得的权值W=[1.05,0.025],加入测试样本集后,分类结果如图6所示。
图6测试样本分类(手工计算)
Fig.6 Test sample classification (manual calculation)
对于使用MATLAB计算机仿真训练获得的权值W=[1.8 0] ,加入测试样本集,分类结果如图7所示。
图7测试样本分类(MATLAB)
Fig.7 The test sample classification (MATLAB)
对比图6和图7,可以清楚看到根据两种方式获得的权值,建立两种感知器神经网络模型,均能对样本进行分类,但却同时可知图6的网络模型可对测试样本集进行更见成效的分类。
5 结束语
感知器神经网络只能解决线性可分的模式分类问题,在应用上有一定的局限性,但对于线性可分问题建立的模型,总能通过训练,在有限的循环次数内找到网络权值,使网络达到期望的输出,进而完成模式分类。通过对同一模型的手工计算和MATLAB训练,得出的网络权值并不相同,但都可以对网络进行分类,只是对于使用MATLAB进行的计算机训练仿真,所获取的权值与计算精度、连同使用的学习函数及传递函数方面将会有一定的影响。而且,选取不同权值建立的模型,在泛化能力上也将存在一定差异。作为感知器分类器的模型建立,需要反复比对找到最优的权值,这样建立的模型在泛化能力上才会具有更好的适应性。
参考文献:
[1] (美)Martin T. Hagan等,著.神经网络设计[M]. 戴葵等,译.北京:机械工业出版社,2002.
[2] Domany, Eytan. Models of Neural Networks III:Association, Generalization, and Representation[M].New York: USA Springer press,2013.
[3] 张昭昭,乔俊飞,著.模块化神经网络结构分析与设计[M].沈阳:辽宁科学技术出版社.2014.
[4] Samarasinghe, Sandhya. Neural Networks for Applied Sciences and Engineering[M]. Boca Raton,Florida: The Chemical Rubber Company Press,2006
篇5
关键词:电气设备;故障诊断;神经网络;学习算法
中图分类号:TP183
近年来,随着电气设备复杂度的增加,其发生故障的概率也逐渐上升。即使是熟练工程师,面对日趋复杂的设备内部电气结构,也难以迅速分析及判别其故障原因。与此同时,涌现出的各种智能算法、专家系统等,为设备诊断问题提供了可行的方案。其中,神经网络以其特有优势在电气设备故障诊断中发挥了重要作用。神经网络理论是人工智能、认知学、脑神经学、信息学等诸多学科融合发展的结果,它是由大量简单的处理单元(称为神经元),通过广泛的互相连接而形成的复杂网络系统。神经网络具有学习能力,可以根据电气设备的正常历史数据训练,将训练结果信息与当前测量数据进行比较,以确定故障。同时它具有滤除噪声的能力,这使其能在噪声环境中有效地在线监测及诊断。其具有的分辩故障原因及类型的能力,为未来实现故障智能诊断奠定了基础。本文介绍神经网络结构及其学习算法,提出一种基于BP网络的电气设备故障诊断方法,通过网络训练及结果测试表明,该方法具有良好的故障诊断能力。[JP]
1 BP神经网络模型
神经网络有很多模型,例如BP网络、Kohonen,Hopfield及ART等。其中,反向传播网络(Back[CD*2]Propagation Network)在神经网络的实际应用中有着十分重要的影响,工程应用中的绝大多数网络模型都采用BP模型或其变形,可以说BP模型体现了神经网络中的精华。
1.1 BP神经网络模型
以三层前向BP网络为例,对神经网络结构进行分析,其组成包括输入层、隐含层和输出层。如图1所示,图中圆圈表示神经元,Wir表示输入层第i个神经元与隐含层第r个神经元的连接权值;Vrj表示隐含层第r个神经元与输出层第j个神经元的连接权值;其间的连线表示神经元之间的相互作用强度。И
从图1的结构中可以得到,隐含层节点的输出函数和输出层节点的输出函数分别为:
式中:Tr和θr分别为隐含层和输出层的单元阈值。在本文设计的BP神经网络结构中,式(1)中的f(•)采用sigmoid函数,即f(x)=(1+e-x)-1。И
1.2 BP学习算法
BP模型的成功得益于BP算法的应用,即误差反向传播算法。BP算法属于梯度下降算法,是一种监督式的学习算法。用网络的实际输出与目标矢量之间的误差来修正网络权值,使输出与期望尽可能接近(网络输出层的误差平方和达到最小);通过反复在误差函数梯度下降方向上调整网络权值的变化,逐渐逼近目标。每次权值和偏差的变化都与网络输出误差的影响成正比,并以反向传播的方式传递到每一层。BP网络是由两部分组成:信息的正向传递和误差的反向传播。
设神经元的输入矢量为[WTHX]X[WTBX]=\[x1,x2,…,xn\],其中n是输入层的神经元数。对应于输入[WTHX]X的输出矢量是Y[WTBX]=\[y1,y2,…,ym\],其中m 是输出层的神经元数。如果要求网络的期望输出是[WTHX]T[WTBX]=\[t1,t2,…,tm\],г蛭蟛詈数可以定义为:
BP算法采用梯度下降法来调整网络的权值,以使上述误差函数减小,即:
Иw(n+1)=w(n)-η(E/w)[JY](3)И
式中:常数Е鞘侨ㄖ档髡速率,通常取值0.01≤η≤1。权值WУ牡髡方法采用以下公式:
式中:ИΔwpq表示某层第p个节点到下一层第q个节点的权值修正量;xp表示节点p的输出;δq表示节点qУ亩说愕燃畚蟛,由输出层的等效误差反传而来:
式中:对应BP模型网络结构(见图1);节点q位于输出层;节点h位于隐层。
2 电气设备故障检测实例
在电气设备中发动机是故障率比较高的设备之一,其在故障诊断中比较具有代表性。在此,以发动机为例,分析BP神经网络在电气设备故障诊断过程中的一般模式及步骤。
2.1 网络样本选取及参数选择
分析发动机的常见故障模式,首先选择具有代表性的故障作为特征向量,取[WTHX]X[WTBX]=[x1,x2,x3,x4]作为神经网络的输入。其中:x1代表功率不足故障;x2代表声音异常故障;x3代表排气温度高故障;x4代表消耗量过大故障。通过分析故障原因,取[WTHX]Y[WTBX]=[y1,y2,y3,y4,y5]作为目标输出向量。其中:y1代表点火不正确;y2代表高压线圈损坏;y3代表出现燃爆现象;y4代表进气排气管故障;y5代表增压积炭过多故障。表1给出了输入故障现象[WTHX]X和输出原因分析Y[WTBX]е间的对应关系。
由此可知,在设计基于三层BP神经网络的发动机故障诊断系统中,输入层神经元节点数N=4,输出层神经元节点数M=5。由公式h=(N+M)+σ可得隐含层神经元节点数h取3~6之间的数。И
2.2 训练及测试
通过输入样本组对所设计的网络进行训练,选择训练误差为10-6。例如,输入样本[WTHX]X[WTBX]=[0,0,1,0],调整网络状态,使其输出接近目标[WTHX]Y[WTBX]=[1,0,0,1,0],即当发生排气温度过高故障时,可能原因是点火不正确以及进气排气管问题。训练网络的过程,实际上就是调整网络参数的过程,具体来说,最主要的就是确定各个网络权值。最终训练好的网络在测试过程中,能较为准确地诊断出故障问题的原因。在工程使用过程中,选择故障检测过程中各种仪器测量出来、有代表意义的测量数据,根据先验知识及专家分析,组成输入样本和目标向量组,对设计的网络结构训练。在训练过程中,可增加输入样本的数量。因为通过大量样本训练,神经网络能具有更好的适应性和鲁棒性,其故障诊断的准确性有所提高。采用C++builder及Matlab混合编程,前者负责做界面系统的开发,后者集中在神经网络算法的设计上,据此进一步提高本工作的实际应用能力。
篇6
关键词: 变电站变压器; 裂纹图像; 特征提取; 神经网络
中图分类号: TN911.73?34; TP181 文献标识码: A 文章编号: 1004?373X(2017)13?0066?04
Abstract: In order to guarantee the normal operation of the electric power system, and improve the identification precision of the substation transformer crack image, a substation transformer crack image recognition model based on the improved neural network algorithm is proposed. The substation transformer crack image is collected and denoised. And then the features of the substation transformer crack image are extracted, and proceeded with dimensionless processing. The neural network is used to establish the recognition model of the substation transformer crack image, and its deficiency is improved correspondingly. The simulation test of the substation transformer simulation crack image recognition was carried out in Matlab 2104R. The results show that the improved neural network can obtain better result of the substation transformer crack image recognition, and the recognition speed can meet the requirements of the substation transformer crack image detection.
Keywords: substation transformer; crack image; feature extraction; neural network
0 引 言
随着经济的不断发展,人们的生活水平日益提高,各种家用电器以及办公室的电器使用更加频繁,电力系统的稳定工作面临巨大的挑战[1]。变压器是一种重要的电气设备,变电站变压器裂纹严重影响电力系统的正常运行,因此如何对变电站变压器裂纹图像进行准确识别具有重要的意义[2]。
国内外学者对变电站变压器裂纹图像技术进行了深入、广泛的研究,提出了一些可行的变电站变压器裂纹图像识别模型[3],目前变电站变压器裂纹图像识别模型主要基于图像进行识别,通过对变压器裂纹图像进行分类,对变压器裂纹图像的类别进行正确划分。在实际应用中,变压器裂纹图像采集受到天气、环境以及采集设备的干扰,图像中难免会包含一定的噪声,这些噪声对变压器裂纹图像准确识别产生了不利影响,因此需去除变压器裂纹图像中的噪声[4?5]。变压器裂纹图像识别主要基于特征进行建模分析,因此特征对变压器裂纹图像识别结果影响十分重要,当前变压器裂纹图像识别特征很多,其中不变矩阵特征具有惟一性、鲁棒性和可分性,在目标识别、字符识别等领域得到了广泛的应用[6]。变压器裂纹图像类别与特征之间的联系十分复杂,传统方法采用欧式距离估计样本之间的特征联系,建立的变压器裂纹图像识别模型的误识率比较高[7?8]。神经网络具有很好的非线性拟合性能,可以较好地描述变压器裂纹图像类型与特征之间的变化关系,广泛应用于变电站变压器裂纹图像的识别中。然而神经网络自身也存在一定的不足,如参数的确定全凭经验进行,导致变压器裂纹图像识别结果具有一定的盲目性和主观性,识别结果不理想[9?10]。
为了保证电力系统的正常运行,提高变电站变压器裂纹图像的识别精度,提出基于改进BP神经网络[11]算法的变电站变压器裂纹图像识别。首先收集变电站变压器裂纹图像,并进行去噪处理,然后提取变电站变压器裂纹图像的特征,最后采用改进神经网络建立变电站变压器裂纹图像识别模型,在Matlab 2014R平台上仿真测试结果表明,改进神经网络提高了变电站变压器裂纹图像的识别精度,加快了变电站变压器裂纹图像的检测速度。
1 小波变换和神经网络
1.1 小波变换
小波变换可以对信号进行小波分解,小波系数描述不同分辨率上的信息,而且自适应能力强,其基本思想为:
式中:和分别表示高分辨率空间和低分辨率空间。
时,小波变换的空间分解见图1。
和是尺度空间和小波空间的正交基函数,分别定义如下:
1.2 BP神经网络
神经网络属于非线性理论中的机器学习算法,它们可以通过一个结构网络对非线性问题进行无限逼近,在图像处理、人脸识别等领域得到成功应用,其中BP神经网络的性能要优于其他神经网络,通用性更强,BP神经网络的基本结构如图2所示,包括输入层、输出层和隐含层。
在图2中,为BP神经网络的输入向量,为BP神经网络的输出向量,其中隐含层神经元的节点数量通过输入和输出的数和决定,一般情况下,采用Sigmoid函数构建隐含层的转移函数,具体如下:
BP神经网络具有反馈功能,选择输出层期望输出与预测输出的误差平方和作为反馈误差,具体为:
1.3 BP神经网络的改进
在BP神经网络的工作过程中,BP神经网络的权值直接影响其性能,传统BP神经网络采用经验确定权值,对于不同问题,神经网络的性能差别很大,为此,本文对标准神经网络进行相应的改进,采用遗传算法BP神经网络的权值进行在线优化,以提高变电站变压器裂纹图像识别的效果,遗传算法优化神经网络权值具体设计过程为:
Step1:个体编码。采用十进制对BP神经网络的权值进行编码,那么编码长度为:
式中:表示输入层与隐含层的权重;表示隐含层与输出层之间的权重。
Step2:适应度函数的构建。对个体进行解码,得到BP神经网络的权值和隐含层的输出和输出层的输出它们分别为:
式中是训练输出数据。
Step3:通过选择、交叉和变异等遗传操作,不断产生新的种群,将个体解码为BP神经网络的权值,然后根据权值对训练样本进行学习,得到反馈误差,根据反馈误差进行反馈操作,最后得到BP神经网络最优的权值。
2 变电站变压器裂纹图像识别模型
2.1 变电站变压器裂纹图像的特征提取
设变电站变压器裂纹图像为其原点矩和中心矩分别为:
2.2 变电站变压器裂纹图像识别模型的工作步骤
(1) 收集变电站变压器裂纹图像。
(2) 采用小波变换对变电站变压器裂纹图像进行去噪处理,消除噪声的干扰。
(3) 提取变电站变压器裂纹图像的不变矩特征,并进行如下处理:
(4) 采用BP神经网络对训练样本进行学习,并采用遗传算法优化权值,建立变电站变压器裂纹图像识别分类器。
(5) 采用测试样本对变电站变压器裂纹图像识别结果进行分析。
3 仿真实验
3.1 实验环境
为了测试改进BP神经网络的变电站变压器裂纹图像识别性能,在Matlab 2014R仿真平台上进行了仿真实验,选择不同类型的变电站变压器裂纹图像作为实验对象,它们共有4种类型,编号分别为1,2,3,4。
3.2 结果与分析
选择传统神经网络作为对比实验,变电站变压器裂纹图像识别结果如图3和图4所示,平均识别正确率和训练时间如表1所示。
对识别结果进行分析可以得到如下结论:
(1) 传统BP神经网络的变电站变压器裂纹图像识别正确率低,这主要是由于传统BP神经网络的权值随机确定,无法描述变电站变压器裂纹图像的类别,因此识别效果差。
(2) 改进神经网络的变电站变压器裂纹图像识别结果相对更优,这主是由于小波变换消除了变电站变压器裂纹图像中的噪声,并通过遗传算法确定BP神经网络权值,提高了变电站变压器裂纹图像识别的正确率,而且变电站变压器裂纹图像训练时间更快,加快了变电站变压器裂纹图像的识别速度。
4 结 论
变电站变压器裂纹图像具有重要的应用价值,为了解决当前变电站变压器裂纹图像识别中存在的局限性,提出改进神经网络的变电站变压器裂纹图像的识别模型,并通过具体应用实验对其有效性进行测试,具体结论如下:
(1) 针对变电站变压器裂纹图像的噪声,采用小波分析对变电站变压器裂纹图像进行变换和处理,消除外界环境以及其他因素带来的噪声干扰,便于后续变电站变压器裂纹图像特征提取和分类器建立,有助于改善变电站变压器裂纹图像的识别效果。
(2) 通过提取变电站变压器裂纹图像的不变矩图像,作为变电站变压器裂纹图像分类器的输入,建立了变电站变压器裂纹图像识别的依据,准确反映了变电站变压器裂纹图像类型。
(3) 采用改进神经网络对变电站变压器裂纹图像进行分类与识别,可以反映变电站变压器裂纹图像类型与图像特征之间的映射关系,通过神经网络的自学习建立变电站变压器裂纹图像的识别模型,提高变电站变压器裂纹图像的识别精度。
(4) 通过引入遗传算法对神经网络参数进行优化,解决了神经网络参数确定的难题,建立了结构更优的神经网络,降低了变电站变压器裂纹图像识别的错误率。
(5) 与其他识别模型相比,改进神经网络提高了变电站变压器裂纹图像识别的正确率,而且识别速度也有显著的优势,对比结果验证了改进神经网络应用于变电站变压器裂纹图像识别的优越性。
参考文献
[1] 郭创新,朱传柏,曹一家.电力系统故障诊断的研究现状与发展趋势[J].电力系统自动化,2006,30(8):98?103.
[2] 苏鹏声,王欢.电力系统设备状态监测与故障诊断技术分析[J].电力系统自动化,2003,27(1):61?65.
[3] 项新建.粗糙集理论在变压器故障诊断专家系统中的应用研究[J].科技通报,2003,19(4):288?291.
[4] 应鸿,李天云,张宇辉.变压器故障诊断的神经网络法[J].东北电力学院学报,1996,16(4):54?58.
[5] 孙才新,郭俊峰,廖瑞金,等.变压器油中溶解气体分析中的模糊模式多层聚类故障诊断方法的研究[J].中国电机工程学报,2001,21(2):37?41.
[6] 张冠军,严璋,张仕君.电力变压器故障诊断中断新方法的应用[J].高压电器,1998(4):32?35.
[7] 颜湘莲,文远芳.模糊神经网络在变压器故障诊断中的应用研究[J].变压器,2002(7):41?43.
[8] 谢可夫,罗安.遗传算法在变压器故障诊断中的应用[J].电力自动化设备,2005(4):55?58.
[9] 何成才.电力机车牵引变压器油箱体裂纹故障的分析及处理[J].郑州铁路职业技术学院学报,2009,21(1):13?14.
篇7
关键词:火灾探测 模糊神经网络 智能 Matlab
根据燃烧对象,火灾分为A,B,C,D四种。A类火灾为固体可燃物引发的火灾,亦是最常见的燃烧对象;B类火灾为液体可燃物火灾;C类火灾为气体可燃物火灾;D类火灾为可燃金属火灾。火灾发生后蔓延速度极快,燃烧产生大量CO2,CO1等大量气体及烟雾,并伴随光、热,损失将不可估计。对待火灾,我们应采取“防消结合,预防为主”。火灾探测技术的应用便担任着前锋的作用,有效的提高探测器的灵敏度成为一个重大课题。本为将采用智能型报警系统,做早期发现和通报火灾,研究模糊神经网络的应用。
1.火灾探测系统
探测器是自定报警系统中的最重要部分。随着火灾的发生,火灾初期可燃物燃烧产生大量烟雾(S)和CO2,CO1等大量气体(G),火灾达到全火焰时温度(T)急剧上升,并伴随着光(L)和热(H)。因此在图书馆设感温探测器,感烟探测器,气体探测器及感光探测器。由于感烟探测器动作较早,可探测到70%以上的火灾,因此使用较为普遍。
2.模糊神经网络的结构设计
2.1 模糊神经网络的应用
模糊神经网络(Fuzzy Neural Network,简称FNN)是全部或部分采用模糊神经元所构成的一种可处理模糊信息的神经网络系统,也是现代热门研究是技术,是模糊控制与神经网络控制的有机结合,博采众长,以长补拙[1]。其特点是利用模糊逻辑较强的结构性知识表达能力和神经网络强大的自学能力与定量数据的直接处理能力,在温度、烟雾、气体、光等信号处理上,提高火灾探测的准确度、加快火情识别速度,使火灾报警信号处理更具逻辑性、可靠性,直接指导消防控制室的操作和应用,在火灾报警系统中发挥良好的作用。
2.2 模糊控制规则设计[2-3]
模糊控制规则可根据火灾发生可能性大小分为不可能即NP,可能性小即PS,一定发生即PB三种。隐层的温度隶属度生成函数采用三角函数:
( x - a)/( b - a) a < x < b
μ(x) =
( x - c)/ ( b - c) b < x < c
图1 隶属度函数
2.3神经网络模型
本文给出一个3层前馈网络结构,如图2所示。设输入信号为s:烟雾;g:CO2气体;t:温度;l:光;输入信号为第一层,含3个神经元;第二层为模糊层,设为9个节点,第三层为输出层,有3个节点,表示无火、火小和火灾发生。
图2 BP前馈网络模型
3.算法及Matlab 网络仿真
3.1 算法
本文采用反向传播算法,学习训练过程由正向信号传输和反向误差传播组成。当正向传输的实际输出与期望输出不符合时,转入误差反向传播。
输出误差逐层反向传播到隐层再到输入层。误差分给各层所有节点单元,获得各层单元的误差信号,且将该信号作为修正各单元权值的根据。通过不断的调整权值,训练到误差符合要求为止。
因此可知,设输入向量为X;隐层输出向量为Y;输出层输出向量为O;期望输出向量为T;输出层至隐层的权值矩阵为V;隐层至输入层权值为W。隐层,输出层的转换函数分别采用双曲正切S型函数tansig和S型对数函数logsig。
定义网络的输出误差函数为均方误差函数
E=1/2(T-O)2.
将输出误差函数展开到隐层,在展开到输入层,并通过调节权值和阈值改变误差E,从而减小误差。即:
对于输出层,设Y,δ0为输出层的误差信号,则输出层的权值调整V=η(δ0YT) T;
对于输入层,设X,δy为隐含层的误差信号,则隐含层的权值调整为W=η(δyXT) T, η为学习率,在0~1间取值,这里取值0.1。
具体算法步骤:①初始化,对所有权值赋予任意小量,并对阈值设定初值;②给定训练数据集,即提供向量X和期望输出Y;③计算实际输出y;④调整权值,按误差方向传播方向,从输出接点返回到隐层修正权值;⑤返回第②步重复计算,直至误差满足要求为止[4]。
3.2 Matlab 网络仿真
模糊规则层设9个节点,输出层有3个节点。用新浪天气给出的郑州市2012年8月1日到8月4日的天气,归一化处理:温度/100℃,加上天气特征值(0代表晴天,0.5代表阴天,1代表雨天),有4组数据。并将8月4日天气数据作为导师信号。打开Matlab的编辑,输入newff()创建前向BP网络,使用神经元上的传递函数tansig()及tansig(),建立一个训练函数使用梯度下降法的训练函数trainlm()的BP网络[5]。误差训练下降曲线如图3:
4.结语
在1000次训练后,输出的均方误差非常小, MSE=1.04678e-013/0,此时的网络输出应该是非常精确的。这说明将模糊神经网络理论应用在火灾报警系统中,有效地提高系统精度和减少误报率,并且充分发挥了它的自学习、自适应能力,使系统的灵敏度提高,同时又提高了系统的智能化程度。
参考文献:
篇8
安全评价的关键与基础是选取与确立评价的指标体系,它对评价的结果是否符合实际情况至关重要。化工企业安全评价指标体系应尽可能反映化工企业的主要特征和基本状况。评价过程中指标体系的要素组成非常关键,如果选取的要素太多,有可能使评价指标体系更加庞大和冗杂,从而增加评价的困难程度,甚至会使一些重要因素被忽略;如果指标因素太少,则难以较完整地反映被评价系统的客观实际情况。•33•通过查阅研究某大型炼油化工企业的相关文献和资料[4],由人、机和环境3个方面构成的系统模型出发,把生产系统所有重要环节包含其中,从而建立出化工企业的安全评价指标体系如图1和表1至表4所示。
2化工企业的遗传神经网络安全评价模型
2.1遗传神经网络遗传算法优化神经网络的方法主要有2种:对神经网络的初始权值和阈值进行优化;对神经网络的结构进行优化[5]。本文在保持神经网络的结构不变的情况下,用遗传算法对BP神经网络初始权值和阈值进行优化。
2.2遗传神经网络评价模型遗传神经网络优化的数学模型[6]如下:本文构建的遗传神经网络模型的运行过程如下:(1)初始化BP神经网络。(2)把BP神经网络的全部权值与阈值实数编码,确定其长度l,确定其为遗传算法的初始种群个体。(3)设置遗传算法的相关参数以及终止条件,执行遗传算法;遗传算法包括对群体中个体适应度进行评价,执行选择、交叉、变异遗传操作,进化生成新的群体;反复操作至设定的进化代数,最终取得最佳染色体个体。(4)把最佳染色体个体解码,分解为BP网络对应的权值、阈值,输入训练样本,利用BP网络进行训练。(5)得到训练好的BP神经网络,则可输入实例样本进行评价。
3遗传神经网络评价模型在化工企业的应用
3.1学习样本的准备根据前文所确定的评价指标体系和对某大型炼油化工有限公司成氨分厂提供的空气分离、渣油气化、碳黑回收、一氧化碳变换、甲醇洗涤、液氮洗涤等工序的安全原始数据,参考文献中化工企业安全评价指标取值标准,进行分析和整理,得出11个实例样本,如表5所示。选择10个样本作为遗传神经网络的训练样本,1个样本作为测试样本。
3.2BP网络结构的确定BP网络拓扑结构一般是由网络层数、输入层节点数、隐含层节点数、隐含层数以及输出层节点数等来确定。本文建立的遗传神经网络模型是根据经验来确定神经网络的层数,一般选取BP神经网络的层数为3层[7]。通过化工企业安全评价指标的分析,得出BP神经网络输入层神经元数目为评价指标的总数12+6+8+5=31。模型最后输出的结果为综合安全评价结果,因此,神经网络的输出层节点数确定为1。隐含层中节点数的范围通过经验公式来确定,本文在其确定范围内选12。依据训练样本的规模,设定学习率为0.1,最大训练误差值设为10-5,循环学习次数为1000次。网络输出层为1个节点,即化工企业的安全评价结果。化工企业安全等级一般分为5级[7],如表6所示。
3.3遗传算法优化遗传算法中,参数设定如下:种群规模设为300,交叉概率设为0.7,进化代数设为100,变异率设为0.05。本文运用MATLAB软件中的遗传算法工具箱gads,在GUI操作界面中输入以上参数,并输入适应度函数,对神经网络的权阈值进行优化。经过遗传操作后,运行遗传算法工具箱,则可得出最佳适应度曲线图和最佳个体图(图2),得到最佳适应度个体,将其进行解码,作为该网络的初始权值和阈值赋给BP神经网络。
3.4GA-BP神经网络训练在MATLAB界面中编程语言,得到输出向量和网络均方差变化图。训练结果与期望输出见表7,BP网络训练过程如图3所示。从训练结果可以看出,该网络的误差值不超过10-5,满足设定要求。用该网络对实例样本进行安全评价,得到结果为3.9956,对照安全评价输出结果等级表为较安全,与目标值吻合。从而训练后的网络稳定性得到验证,可以用于化工企业安全评价。
4结论
篇9
关键词:BP神经网络 动量因子法 变步长法 学习速率
1.引言
人工神经网络(Artificial Neural Networks,ANN)是通过对人脑神经元建模、联结模拟生物脑或世界系统的网络模型,是一种具有学习、记忆和模式识别等智能信息处理功能的人工系统。通常研究和使用的十种神经网络模型中,人们较多用的是Hopfield网络、BP网络、Kohonen网络和ART网络模型。其中的BP神经网络是基于反向传播(BackPropagation)的网络,也是神经网络领域中研究最多、应用最广的网络模型。它采用最小均方差的学习方式,可用于函数逼近及语言综合、识别和自适应控制等。
2.标准BP神经网络算法
BP算法作为前馈网络的主要学习算法,对神经网络的推广应用起了举足轻重的促进作用。标准的BP网络,优化计算的方法很多,比较典型的是采用一阶梯度法,即最速下降法。在BP神经网络训练中,主要是针对一定的输入,所得到的输出是否与期望输出接近,即误差的代价函数达到最小。其简单的实现步骤为:(1)通过网络输入反向传播;(2)通过网络将敏感性反向传播;(3)使用近似均方误差的BP算法更新权值和偏置值。
标准的BP算法因具有简单、易行、计算量小及并行性强等优点,是目前神经网络训练采用最多、最成熟的训练算法。由于BP网络中待寻优的参数太多,往往导致算法收敛速度慢。对于复杂问题,训练过程需迭代几千、几万次才能收敛到期望的精度。因此,标准的BP网络在很大程度上实用性不强,尤其对于实时性很强的系统而言。
3.BP算法的改进
BP多层前馈网络已成为神经网络的重要模型之一,但实际上的BP多层前馈网络并不是利用标准的BP算法对网络进行训练的,而是对BP算法进行了启发式改进。
(1)增加动量因子法
BP算法的神经网络的误差曲面具有不同的区域有不同的误差改变率的特点。假若开始训练的学习速率较高,那么算法的收敛速度可能很快。但当迭代进入的区域包含极小点时,此时算法发散,来回振荡,收敛不到极小值点。如果用平均改变参数的方法进行轨迹的过滤,就可以对震荡进行平滑并可产生稳定的轨迹。当动量滤波器的参数得到了改变,获取反向传播的动量,使用了动量项,可以在保证算法较为稳定的前提下,在网络训练进入局部最小值时产生一个继续向前的正向斜率运动,使得搜索能够跳出较浅的峰值;当网络搜索位于误差曲面平坦区的区域时,该方法能够较快地提高训练速度。
(2)变步长法
变步长法通过调整网络训练的学习率,故也称为可变学习速率的方法。BP算法中对连接权值的调整,取决于两个因子,即学习速率和梯度。其中通过调整学习速率提高算法收敛收率的方法,是当前认为最简单、有效的方法。学习率不能随意选取,选得太小,收敛会变慢;选得太大,可能调整过多,使得算法振荡或发散。所以,在对学习率进行调整时,一般遵循的准则是:首先检查修正值,看该值是否明显降低了误差。如果降低了,则学习率的值选取偏小,可以作为对学习率调整的参考;否则,学习率值调整过大,就应该对该值进行减小。增加可变速率参数后,得到改进的BP算法如下:
①如果整个训练集上的均方误差权值在更新后增加的,且该值超过了预设的某个百分数,如:1%~5%,则不对权值进行更新。学习速率被乘以一个大于零且小于1的因子,并且动量系数被设置为0。
②如果均方误差在权值更新后变小了,则接受权值更新。学习速度将被乘以一个大于1的因子。假若学习率被设置为0,则恢复之原来的值。
③如果均方误差的增长变小,则权值更新被接受,但学习速度保持不变。如果学习率过去被设置为0,则恢复到以前的值。
4.实验结果
分别对目标误差为0.001的网络训练。实验结果如下:
(1)采用标准BP网对样本进行训练,迭代次数近5000次尚未收敛。
(2)采用增加动量法,迭代375次,学习过程收敛。
(3)采用变步长法,迭代1728次收敛。
由此可见,未改进的标准BP学习算法存在收敛速度慢的缺陷;改进后的BP学习算法都从不同程度上提高了算法的收敛速度,训练的次数大大减小了。对BP算法采用启发式改进措施后,明显提高了学习速度。
篇10
关键词: 径向神经网络 故障诊断 观测器
一、径向神经网络
在众多的神经网络中,径向神经网络是一种结构简单、训练速度快并且具有最佳逼近性能的多层前向神经网络。多年来,人们对径向神经网络进行了大量的研究,并成功地应用于故障诊断领域。主要原因有:
(1)它能存储有关过程的知识,直接从历史故障信息中学习,可以根据对象历史数据训练网络,然后将此信息与当前测量数据进行比较,比确定故障的类型。
(2)它具有滤除噪声即在噪声的情况下得出正确结论的能力,可以训练人工神经网络来识别信息,使其在噪声环境中有效地工作。
(3)它具有很强的非线性逼近能力。
(4)它具有分辨故障原因及故障类型的能力。
径向神经网络(Radial Basis Function Neural Network,RBFNN)是20世纪80年代提出的一种以函数逼近理论为基础的前向神经网络,其设计思想就是将径向基函数(RBF)应用于神经网络作为激励函数。不同于BP网络的全局逼近性能,RBF是一种局部逼近网络,对于每个训练样本,它只需对少量的权值进行局部的修正,因此速度很快,具有最佳的逼近性能。RBF神经网络的机构与多层前向网络结构类似,其拓扑结构如图所示。
RBF神经网络是由输入层、隐含层和输出层构成的三层前向神经网络。第一层为输入层,由信号源节点组成,其单元个数是由所描述问题的需要决定的;第二层为隐含层,是由一组径向基函数构成的非线性映射层,这样就将输入矢量直接映射到隐含层空间,当径向函数的中心确定以后,这种映射关系也就确定了;第三层为输出层,提供从隐单元空间到输出空间的一种线性变换。其中隐含层是网络的核心,隐含层神经元的变换函数是一种局部分布的对中心点径向衰减的非线性函数,利用径向基函数作为隐含层神经元的基构成隐含层空间,实现输入矢量到输出矢量的映射变换。这里主要研究以高斯函数为变换函数的径向基神经网络。
RBF神经网络的输入与输出之间可认为是一种映射关系:f(x):R R
其中式中,i=1,2,…,n为隐含层节点数,n(y ,…,y ,…, y )∈R 表示神经网络的输出,x∈R 为网络输入矢量,w∈R 表示输出权值,g∈R 为径向基函数,g 表示隐层第i个神经元的输出值,w 表示第i个神经元到输出层第j个神经元的权值。
式中,m ∈R 为径向基神经元的中心,r ∈R为径向基神经元的宽度,.表示2-范数或欧式距离。
径向基神经网络的权值、中心与宽度是径向基神经元的三个重要参数。构造和训练一个RBF神经网络的就是要是网络通过学习,确定出每个隐层神经元基函数的中心m 、宽度r 及隐层到输出层的权值w,从而可以完成所需的输入到输出的映射。RBF网络的三部分参数在映射中所起的作用是不同的。隐含层的径向基函数完成的是从输入空间到隐含层空间的非线性映射,而隐含层到输出层的权值是实现从隐含层空间到输出空间的线性映射,所完成的任务不同,决定了参数的训练方法和策略不同。
径向基神经元网络的学习可以看成是误差准则下,以误差函数f(x)为目标函数的无约束最优化问题。
式中,x表示网络的三个待求的参数(中心、权值与宽度);y 为网络输出,y 为期望输出,N为样本总数。
对于解决无约束最优化问题,通常采用迭代的方法进行计算,在给定初值x 后,按照等式
逐步修改直至收敛于解,其中为迭代步数,a 为学习速度,p 代表搜索方向。当用上式进行迭代时,函数f(x)应该在每次迭代时都减小。研究结果显示,最简单的下降方向就是沿负梯度的方向,此时
式中,g 为f(x)在x 处的梯度,这样我们就得到了最速下降的优化算法:
有上面的推导可以看出,算法的关键是梯度的计算,下面给出梯度的计算公式。为了便于推导计算,将RBF网络的数学模型表示如下:
式中,s=1,2,L,h为输出变量的个数;i=1,2,L,n为隐含层的个数;j=1,2,L,N(N为样本总数);k为迭代步数;y 为第s个输出;w 为输出层的权值;m 为神经元的中心;r 为神经元的宽度;x(j)为输入样本。
定义如下的误差函数:
式中,y 为网络输出,y 为期望输出。
根据上述式子,输出权值的梯度为: =-e (k)Q (k)(11)
具体步骤为:
(1)随即给定一组参数x ∶m ,r ,w ,并给定迭代终止精度ε的值。
(2)令RBF网络隐含层数目n=n ,n =l+m为任意小的正整数(其中l和m分别表示系统输入输出的维数)。
(3)根据所给定的样本,利用梯度法计算网络的三个参数值,根据参数值计算网络的输出。
(4)根据样本数据和网络输出计算误差e(n),如果e(n)≤ε转到下一步,否则让n=n +n(其中n >0为整数),判断是否n≤n (n 为预先设置的最大隐含层数目),满足条件则转上一步,否则转下一步。
(5)记录此时的n,m ,r ,w ,则得到RBF网络隐含层的数目、网络的中心、宽度和权值。
上述是基于最速度下降梯度法的径向神经网络算法可以看出,网络结构的构建与参数调整可以同时完成,具有学习时间短、计算量小等特点。
二、神经网络观测器的建立
通常情况下,非线性系统的状态空间模型可以表示如下:
x(k+1)=f(k,x(k))+g(k,x(k))u(k)+v(k)(14)
y(k+1)=h(k+1,x(k+1)+σ(k+1))(15)
式中,k为离散时间变量;x(k)∈R 为状态变量;u(k)∈R 为输入变量,y(k)∈R 为输出向量;f:R R ,h:R R 为映射函数;v(k)和σ(k)分别为噪声和模型不确定性函数。
根据RBF网路的最佳逼近性能,可以建立神经网络辨识模型,对于任意小的ε,存在RBF网络逼近于系统的实际输出:
e=y -y <ε(16)
式中,y 为网络输出,y 为期望输出,ε为输出残差。当无故障时,残差信号由状态估计的误差和噪声所决定,如果状态估计的误差足够小,则残差通常趋近于零。当传感器故障时系统的状态方程变为:
x(k+1)=f(k,x(k))+B(k,x(k))u(k)+v(k)(17)
y(k+1)=h(k+1,x(k+1))+σ(k+1)+D (k)(18)
式中,D ∈R 为传感器故障分配矩阵,此时输出残差r(k)发生了很大的变化,所以根据残差向量的改变进行传感器的故障监测与隔离。
在构造出系统的观测器之后,就可以将其用于系统的故障隔离。在本文中神经网络观测器是作为一个无故障的正常的模型来使用。基于神经网络的故障诊断系统结构如图所示:
三、故障诊断
基于神经网络的系统故障诊断的基本思想就是建立系统的辨识模型,根据模型输出和实际系统输出的残差进行故障检测与隔离,所以建立系统的辨识模型是研究的重点与核心。
针对于传感器,使用如下的方法来进行故障诊断;
由于神经网络具有很强的自学习能力,因此可以通过学习来获得传感器测量值,从而为故障诊断提供有效的信息。
首先,应用传感器组中的任一个输出信号和系统输入作为神经网络的输入信号,将所有传感器的输出信号作为神经网络的输出信号,构成输入样本集合,应用RBF网络离线训练如下m个神经网络模型:
y (k)=F [y (k),u(k)],i=1,2,…,m(19)
然后应用神经网络观测器可获得m组,,…,,其中=[,,…,] 是第i个观测器得到的,网络的输入和训练时的输入相同。在系统正常运行条件下,也即无故障时,接近系统传感器输出y 。当第i个传感器故障而其余的m-1个传感器正常运行时,由第i个神经网络观测器所得的传感器的输出估值将会偏离的输出估值,而其他神经网络观测器的输出则不受影响,仍接近实际输出。那么利用下面的逻辑检测实现传感器故障诊断。
定义阀值ε >0,j=1,2,…,m,计算判别函数。
式中,y 为第i个传感器测量值,为由第i个传感器的测量值获得的第j个传感器输出的估计值。则有下面的逻辑:
四、小结
径向神经网络具有最优的逼近性能,可以精确地对系统进行辨识。利用神经网络观测器进行系统故障诊断,需要建立精确的神经网络辨识模型。在精确模型的基础上可完成对系统的故障诊断,这种抗干扰能力很强,对不确定、非线性系统有很好的效果。
(指导老师:何晓薇教授)
(作者系中国民航飞行学院飞行技术学院研究生)
- 上一篇:市场工作总结及工作计划
- 下一篇:村级班子运行情况汇报