神经网络总结范文

时间:2024-03-27 18:02:53

导语:如何才能写好一篇神经网络总结,这就需要搜集整理更多的资料和文献,欢迎阅读由公务员之家整理的十篇范文,供你借鉴。

神经网络总结

篇1

关键词 神经网络;BP;优化算法

中图分类号:TP183 文献标识码:A 文章编号:1671-7597(2014)13-0066-01

1 人工神经网络模型

人工神经网络简称ANN,它是一种将人类大脑的组织结构和运行机制作为其研究基础来模拟人类大脑内部结构和其智能行为的处理系统。人工神经网络中的神经元细胞将其接收到的所有信号进行处理,如加权求和等操作,进行操作后经轴突输出。

2 人工神经网络的分类

2.1 前馈型神经网络

前馈型神经网络通过对其网络中的神经元之间的连接关系进行复合映射,因此这种网络模型具有非常强的非线性处理的能力。如图1所示,在这里前馈型神经网络模型被分为三层,分别为输入层、输出层和隐含层,一般常用的前馈型神经网络有BP神经网络、RBF神经网络、自组织神经网络等。

图1 前向神经网络模型

2.2 反馈型神经网络

反馈型神经网络其结构,在这个模型中我们假设网络总的神经元个数为N,则每个神经元节点都有N个输入值及一个输出值,每个神经元节点都如此,节点之间相互联系。现在被大量使用的反馈型神经网络一般有离散Hopfield神经网络模型、Elman神经网络模型等等。

3 BP神经网络

3.1 BP神经网络简介

1986年,Rumelhant和McCelland提出了BP神经网络的一般模型,BP神经网络是一种具有多层网络的反向传播学习算法。BP神经网络模型的基本思想是:整个过程主要由信号的正向传播和误差的反向传播两个过程组成。目前,BP神经网络的应用范围为数据压缩、数据分类、预测分析和模式识别等领域。

3.2 BP神经网络的结构

如图2所示,这里是BP神经网络的一种模型结构,在这种模型结构中输入信号量为m,具有隐含层的数量为j,输出信号量为q的模型结构。

BP神经网络一般具有一个或多个隐含层单元,其差别主要体现在激活函数的不同。针对BP神经网络所使用的激活函数一

图2 BP神经网络模型结构

般采用S型对数函数或者采用正切激活函数,而输出层则一般采用线性函数作为激活函数。

3.3 BP神经网络的改进方法

BP神经网络作为当今对研究电力负荷预测应用最多的一种神经网络,但标准的BP神经网络算法存在的一些缺陷,这里就对一些经常使用的典型改进方法进行描述。

1)增加动量项。在一般的BP神经网络算法中,其模型中的各层权值在进行更新的过程中,是按照t时刻误差曲线进行梯度下降方式进行调整的,在这里并没有考虑其之间的梯度下降的方向,如果使用这种方式进行调整则会造成训练的过程不稳定,容易发生振荡,导致收敛过程缓慢的结果。因此有些学者就为了使网络训练的速度提高,收敛过程加快,就在一般网络模型的权值更新环节添加了一个动量项因子即:

(1)

在这个式子中,W表示BP神经网络中每一层的权值矩阵,O则表示神经网络中每一层的输出向量矩阵,α则被称为该神经网络的动量系数因子,其取值范围在0到1之间,在该网络在进行训练的过程中,如果其误差梯度网线出现了局部极小值现象,虽然在这里的第一项会趋搂于零,但是这一项,

这样就会使该训练过程避免了限入局部极小值区域的形势,从而加快了其训练速度,使该神经网络收敛速度加快,因此这种带有动量项因子的BP神经网络算法应用到了很多的BP网络中。

2)学习速度的自适应调节方法。学习速度η在一个标准的BP神经网络中是以一个常数出现的我们也称为之步长,而在实际的运算过程中,很难找到一个数值作为最优学习速度。我们从误差曲面图形中可以看出,当曲面中区域处于一个平坦区域时,我们需要设置一个比较大的η值,使它能够跳出这个平坦的区域;而当曲面中的区域处于变化比较很大的区域时,这时的η的数值我们又需要将其进行减小或者增大操作。自适应调整学习速度η则可以根据网络的总误差来进行自我调整,在网络经过多次调整后,如果E总继续上升,则表明这里的调整是无效的,且η=βη, ;而经常调整这里的E总下降了,则表明这里的调整是有效果的,且η=αη,。

3)引入陡度因子(防止饱和)。在网络训练的过程中,由于其误差曲面具有平坦区,当处于这个区域时,由于S型激活函数有饱和特性,促使权值的调整速度放慢,从而影响了调整的速度。在训练的过程中,如果算法调整进入了这个区域,我们可以减小神经元的输入量,使其输出值迅速脱离激活函数的饱和区域,这里误差函数的数值则会随之发生改变,其权值的调整也就脱离了该平坦区。想要实现以上思路则需要在激活函数中引入一个陡度因子λ。

(2)

当趋近于0时,而数值较大时,调整其进入误差曲面中的平坦区,此时λ的值应选择大于1的数值;而当调整脱离平坦区域后,再设置λ大于1,使激活函数能够恢复到原始数值。

4 总结

综上所述,设计一个人工神经网络应用到实际问题中,可以归结为网络自身权值参数的学习与合理的设计网络拓扑结构这两大类优化问题。由于人工神经网络的训练是一个非常复杂的问题,使用传统的学习算法进行训练则要花费很长的时间,BP算法用到了梯度下降法,才只能在一定范围内找到合适的参数值及其模型结构。因此,为了更好的提高神经网络的泛化能力,及将网络拓扑结构设计的更加合理,大量关于神经网络的优化算法相继产生。

参考文献

篇2

【关键字】 灰色理论 BP神经网络 预测模型

一、引言

随着大数据时代的到来,BP神经网络预测模型已成为学术界研究的热点,并应用到多领域中。BP神经网络具有很好的非线性逼近以及自学习的能力,可高精度拟合预测值,但是,由于很多系统存在不确定性,传统的BP神经网络将原始时间序列直接作为输入值,而原始时间序列中具有很大的随机性和不确定性,使得神经网络在预测结果中,存在较大偏差。解决此问题的有效方法是将原始时间序列经过灰色理论进行白化处理,过滤掉数列中的不确定性和随机性等灰色特性,再将白化处理后的结果作为BP神经网络的输入。

二、灰色预测理论研究

根据研究对象的特性可将其分为白、灰、黑三类,该分类取决于研究者对系统信息的掌握程度,是基于认识程度而言,具有相对性。其中白色系统信息完全明确,黑色系统信息完全缺乏,而灰色系统是介于白色系统和黑色系统之间,其信息具有不充分、不完全的特性。灰色预测为灰色系统最典型的应用,在样本数据量较少、预测结果具有一定的随机性时,灰色理论是应用最为广泛的,克服了系统周期短和数据不足的矛盾。对于样本少、贫信息的不确定性系统[1]而言,由于原始数据毫无规律可循,因此灰色理论首先将原始时间序列进行累加,使其具有递增规律,然后对其进行拟合,最终将累加数据进行还原。其具体原理如下所示:设原始时间序列为累加为时间序列为,累加后是单调不减时间序列,可见,一般累加可将非负的任意无规律数列转换为单调不减数列。根据该时间序列,建立白化方程并得到方程的解。所得即为的估计值,但是由原始数列累加变换所得,因此,还需对估计值进行累减处理,最终即为所求预测值。

三、BP神经网络理论研究

BP神经网络是一种具有连续传递函数的前馈神经网络,其训练方法是误差反向传播算法,常用的为梯度下降法[2]。以均方误差最小化为目标不断修改网络权值和阈值,最终能高精度地拟合数据。BP神经网络模型结构分为三层,第一层为输入层,输入值为预测系统的主要影响因素的定量值;第二层为隐含层,每个神经网络模型至少包含一个隐含层,为了计算方便,本论文中采用一个隐含层进行预测;第三层为输出层,输出即为系统的预测结果,输出可为一个或多个,本文采用一个输出模式。设输入层的输入值为,隐含层的神经元值为,输出层的神经元值为。输入层神经元与隐含层神经元的权值为,隐含层神经元与输出层神经元的权值为。隐含层神经元的阈值为,激发函数为,输出层神经元的阈值为,激发函数为。在神经网络进行训练时,分为两个方向:信息正向传递和误差反向传播。在信息正向传递的过程中,隐含层每个神经元通过该神经元的阈值、其与输入层各神经元的权值及输入层各神经元本身的值的结合,在本层激励函数的作用下取得。神经网络经过以上的正向信息传递,将M维向量的N个样本数据作为输入,计算出隐含层神经元的值,最后计算出实际输出值。利用其与期望输出值T可计算出均方误差。将所得MSE沿原来正向信息传递的路径逐层反向传递,依据输出的MSE计算出各层的,并将作为依据,更新各连接的阈值和权值,此时误差反向传递完毕。网络模型反复进行信息正向传递和误差反向传递着两个过程,直到MSE达到标准或小于标准ε。

四、灰色神经网络预测模型的建立

由于灰色系统具有明显的不确定性,因此用灰色模型先将原始输入数据进行累加,使其具有明显的指数特性,并对其进行白化即用微分方程对其进行拟合预测。对于有N个参数的灰色神经网络的微分方程为:

其中,xi(1)(i=2,3,...,N)为系统输入值,xi(1)为系统输出值。记微分方程系数为

将GM(1,N)的输出值作为神经网络的输入值,即可得到灰色神经网络模型。

总结和展望:由于现实世界中的系统很多属于灰色系统,在对未来数据的预测过程中,仅凭传统的BP神经网络预测存在很大的偏差。而本文提出的灰色神经网络预测模型可以有效地过滤系统中的灰色特性,并充分发挥灰色理论和BP神经网络各自的优势,二者取长补短,使得最终对灰色系统的预测更加准确。但值得注意的是在神经网络预测的过程中,采用的梯度下降法只能找到局部最有值[3],无法准确获取全局最优。可在以后的预测模型研究中考虑加入遗传算法等对此模型进行优化。

参 考 文 献

[1] 刘金英. 灰色预测理论与评价方法在水环境中的应用研究[D].吉林大学,2004.

篇3

关键词 :GA-RBF神经网络 预测模型 仿真

泵的性能预测研究就是根据泵的叶轮、蜗壳、导叶等过流部件的几何参数,分析内部流动特征,以此预测泵的性能,是在泵产品设计中必不可少的重要环节,具有缩短研发周期、降低开发成本和提高产品设计质量等优点。针对离心泵的性能研究不但具有重要的学术价值和社会效益,而且对研究其他泵的性能提供了可资借鉴的依据。

一、GA-RBF神经网络简介

GA-RBF神经网络是将遗传算法引入到前馈式神经网络(RBF)发展起来的一种神经网络。作为三层前向网路的RBF神经网络,由输入层、径向基层(RBF层)和输出层构成,它利用RBF作为隐含单元的“基”构成隐含空间,输入矢量不需要通过权连接直接进入隐含层,只要能够确定RBF的中心点,就能够确定其相应的映射关系,具有突出的最佳逼近性能和全局最有特性且构造简单、训练速度快,在非线性函数逼近及模式识别领域取得了很好的效果。

二、构建基于GA-RBF神经网络性能预测模型

在利用GA-RBF神经网络算法来实现对离心泵性能预测时可根据如图1所示的流程图进行。

因为在GA-RBF神经网络中,输入模式对于离心泵性能预测预测结果有比较大影响,因此我们选取对离心泵能量性能影响较大的离心泵几何参数和设计流量()作为GA-RBF神经网络的输入变量。其中,主要的离心泵几何参数包括:叶轮出口直径()、叶片出口宽度()、叶片出口安放角()、涡壳的基圆直径()、涡壳进口宽度()、蜗壳第八断面面积()、叶片包角()以及叶片数()。根据输入模式可以确定输入层神经元数目为9。考虑到RBF神经网络的隐含层神经元是径向基函数,该特性使RBF神经网络的拟合特性为局部性,于是本文将泵的扬程和效率预测设计为2个相类似结构的GA-RBF神经网络预测模型,即为离心泵扬程GA-RBF神经网络预测模型和离心泵效率GA-RBF神经网络预测模型,如图2所示。

三、仿真实验

为了考察建立的离心泵扬程GA-RBF神经网络预测模型和离心泵效率GA-RBF神经网络预测模型的有效性,我们选取沈阳水泵研究所编撰的《全国优秀水力模型汇编》和江苏大学关醒凡教授编撰的《现代泵技术手册》选取57组单级单吸离心泵的设计参数和试验参数作为训练样本数据和目标数据。

根据训练样本数据和目标数据输入离心泵扬程GA-RBF神经网络预测模型和离心泵效率GA-RBF神经网络预测模型进行训练,其训练学习效果分别如图3、图4所示。

为了考察建立的离心泵扬程GA-RBF神经网络预测模型和离心泵效率GA-RBF神经网络预测模型的效果,本文也从沈阳水泵研究所编撰的《全国优秀水力模型汇编》和江苏大学关醒凡教授编撰的《现代泵技术手册》选取6组单级单吸离心泵的设计参数和试验参数数据作为检验样本,其具体数据如表1所示。

采用表1的数据和利用已经建立的离心泵扬程GA-RBF神经网络预测模型和离心泵效率GA-RBF神经网络预测模型分别进行预测离心泵的扬程、效率等性能指标,与谈明高等人所做实验和撰写的文献参数进行对比,其结果如表2所示。

分析表2的离心泵性能的GA-RBF神经网络预测模型检验样本预测结果发现:GA-RBF神经网络预测的扬程最大相对误差的绝对值为12.06% 、最小相对误差的绝对值为2.34%、均方根相对误差为6.56%;效率误差最大相对误差的绝对值为6.99% 、最小相对误差的绝对值为0.67% 、均方根误差为3.99%。RBF神经网络预测的扬程最大相对误差的绝对值为13.86% 、最小相对误差的绝对值为2.29%、均方根相对误差为7.56%;效率误差最大相对误差的绝对值为6.00% 、最小相对误差的绝对值为1.78% 、均方根误差为3.70%。

由图3和图4我们可以看到,RBF神经网络及其改进的GA-RBF神经网络在离心泵扬程预测精度方面都低于效率预测精度;虽然GA-RBF神经网络在预测离心泵效率的精度虽然比RBF神经网络略低,但在预测离心泵扬程的精度明显要好得多。

四、总结

我们采用GA-RBF神经网络算法建立离心泵性能GA-RBF神经网络预测模型,在沈阳水泵研究所编撰的《全国优秀水力模型汇编》和江苏大学关醒凡教授编撰的《现代泵技术手册》选取57组单级单吸离心泵的设计参数和试验参数进行建模和验证,并通过阐述性能预测的实现过程,结果表明离心泵性能GA-RBF神经网络预测模型与原有的离心泵性能RBF神经网络预测模型通一样有效,并且设置参数更简单、更方便。

参考文献:

[1]关醒凡.现代泵技术手册[M].宇航出版社,1995.

[2]张顶学,刘新芝,关治洪.RBF神经网络算法及其应用[J].石油化工高等学校学报,2007,(03).

篇4

关键词:仿生算法;神经网络;遗传算法

中图分类号:TP183文献标识码:Adoi: 10.3969/j.issn.1003-6970.2011.03.017

An Improved Algorithm of Bionic Research and Analysis

Yue Tong-sen, Wang Da-hai

(XinXiang Vocational and Technical Collage, Xinxiang 453000,Henan,China)

【Abstract】In this paper the bionic algorithm of neural network and genetic algorithm were analyzed and summarized, aimed at slow speed of neural network training, recognition efficiency low, and genetic algorithm the optimum choice premature convergence problem, combined with neural network method and genetic algorithms of their respective characteristics, puts forward the improved algorithm.Without the destruction of single neurons based on input weights, adopt data pretreatment methods to reduce the number of input layers, so as to improve the ability of evolutionary learning.

【Key words】Bionic algorithm; Neural network; Genetic algorithm

0引言

人工神经网络[1]和遗传算法[2]是仿生算法[3]的典型方法,它们的优化问题一直是众多研究者所倍为关注的研究热点之一。在人工神经网络和遗传算法结构的研究中发现,人工神经网络具有很好的模式分类的特性,遗传算法有很好的动态变更权值的特性,基于此,本文提出了一种改进的基于人工神经网络和遗传算法的算法。本章的改进算法,就是对人工神经网络和遗传算法进行了变换,增强了对输入权值的变化速度,并提出用减少输入层个数的方法是加快神经网络学习的有效方法,取得了良好的实验效果。

1神经网络和遗传算法的特究点

1.1神经网络和遗传算法的不同点

1.神经网络是多层感知机,而遗传算法是单层感知机。神经网络是由输入层,隐含层和输出层够成,但遗传算法的基因组是一个数组,不管基因的长度有多长,其结构仍然是一个单层感知机。

2. 神经网络的隐含神经元个数是不确定的,而输出层和输入层的个数是可以确定的。我们希望输入层的个数用新的方法得到降低,这样神经网络的训练速度就可以提高。同时对于隐含层的层数,一般情况设为1。每层的神经元个数也并不是越多越好,是要根据问题的情况而变动的。但神经网络的隐含层是不确定的,而且隐含层的个数也是不确定的。对于遗传算法,它的二进制的长度是可以确定的,但是交叉和变异的比例是变动的。对于单点交叉比例,我们可以设定为黄金分割点。虽然设定为黄金分割点作为单点交叉比例没有用数学方法严格的证明,但是,大量的实验表明,选择黄金分割点往往可以得到较好的结果。对于变异比例,没有交好的方法确定,只能设计交互式的实验来调试决定。

3.权值的更新方式不一样。神经网络的权值的更新方式是时时的,而遗传算法权值的更新方式是批量的。

4.两者应用的范围不一样。神经网络主要应用于模式匹配,错误诊断,监视病人的状态,特征提取,数据过滤。而遗传算法主要应用在计算机辅助设计,日程安排,经济学的投资研究等。

1.2神经网络和遗传算法的相同点

1.有教师的学习。神经网络的输出是有目标的,当然是确定的。同时对于遗传算法的目标也是确定的。所以两者都是有目标的,也就是有教师的学习。

2.随机近似优化过程。神经网络中,如果把网络的权值初始化为接近于0的值,那么在早期的梯度下降步骤中,网络将表现为一个非常平滑的函数,近似为输入的线性函数,这是因为sigmoid函数本身在权值靠近0时接近线性。同样,遗传算法的初始个体都是随机产生的,它的交叉和变异都是一个不断近似的过程。

3.并行化。神经网络的每个神经元是独立的,如果把每个神经元分配一个处理器,那么就可以采用并行的方式。同样,遗传算法很自然地适合并行实现,有粗粒度并行方法和细粒度并行方法。有粗粒度并行方法就是把群体细分成相对独立的个体群,称为类属,然后为每个类属分配一个不同的计算节点,在每个节点进行标准的GA搜索。细粒度并行方法就是给每个个体分配一个处理器,然后相邻的个体间发生重组。

2算法的研究及改进

结合人工神经网络和遗传算法的研究的本质,通过两种算法结合的研究及改进,提高算法的收敛速度,从大量的数据中模拟生物的特性来完成特定的任务和解决问题的方法和方向。由于遗传算法是单层感知机,而神经网络是多层感知机,所以可以从多层感知机的多层性,我们想象为遗传算法是单层感知机作为神经网络是多层感知机的输入层。这样,我们就可以采用遗传算法的动态变更权值的特性来对神经网络输入层有效性的遗传和变异。这种算法适合与没有输入,只有输出的应用,就像无人驾驶技术中控制行驶的速度和方向的控制一样。基本的框架如图1:

图1结合人工神经网络和遗传算法的框图

Fig.1 Combined with artificial neural network and genetic algorithm diagram

最上面的是智能体,神经网络的输出来控制智能体,控制中心将神经网络的权值用遗传算法的初始体来提供。

2.1遗传算法的基因作为神经网络的权值变量

遗传算法的基因的初始化必须要满足神经网络的输入要求,一般遗传算法的基因都是0,1编码。但是为了达到神经网络的输入要求,是要在(-1,+1)之间随机产生。

2.2遗传传算法中杂交点选择

遗传算法中,一般都是采用随机平均变异[4][5]的方式,但是如果输入是由遗传算法的基因提供的话,为了保证在变异的时候,采用标记变异的方法。我们可以首先根据图2的神经网络来考虑:

图2遗传算法作为人工神经网络和的权值图

Fig.2 Genetic algorithm as artificial neural network and the weights of figure

很显然,(0.3,-0.8,-0.2)是神经元1的权值 ;(0.6,0.1,-0.1)是神经元2的的权值;(0.4,0.5) 神经元3的权值。为了在遗传算法中的杂交过程中,不破坏每个神经元的权值个数,特意标记(3,6)所在的箭头。

2.3引入神经网络输入层的数据预处理

神经网络的计算问题是神经网络应用中最为关键的问题。如何提高网络的训练速度是算法研究的重点。我们在思考问题的时候,总是希望问题越简单越容易解决。同样,我们也可以通过对数据的预处理,来降低问题的难度。

为了减少输入层的个数,我们可以先对数据进行预处理。预处理的方法为如下流程:

(1).计算机器人前进方向Position(x,y)和目标的所在的位置Location(x,y)。

(2).归一化Position(x,y) 和Location(x,y)。

(3).用点乘的计算公式计算两者点乘。

(4).用符号重载的方式计算是顺时针还是相反。

(5).计算角度=第3步的结果*第4步的结果。

3实验结果及分析

3.1实验框架

将本算法应用于扫雪机器人的智能控制中,设计的主要模块:

3.1.1神经网络部分的设计

神经网络的输入由四个变量组成:扫雪机器人方向向量(由两个变量组成,即在X和Y的分量),发现目标,即雪的向量(由两个变量组成,即在X和Y的分量)。神经网络的隐含层由一层组成,而且由10个神经元。神经网络的输出由两个变量组成,V1和V2,分别作用在机器人的左轮和右轮上。神经网络的响应函数采用SIGMOD。

3.1.2遗传算法部分的设计

遗传算法的初始化是为神经网络提供权值,所以是由[-1,1]随机数产生。遗传算法的变异是采用随机变量的变异,选择采用轮转法。

3.1.3扫雪机器人

扫雪机器人用神经网络来控制,当找到目标后,它的适值就加一。这样就随着发现目标越多,它的适值就越大。学习能力是通过不断的学习后,它的适值就会加强。如果直接采用机器人前进方向和目标的所在的位置,那么神经网络的输入为四个变量。

3.2结果与分析

如果直接采用机器人前进方向和目标的所在的位置,那么神经网络的输入为四个变量。通过对扫雪机器人的学习过程,没有进行预处理的数据,即四个变量输入神经网络后的参数设定:神经网络的输入为4,神经元为6个,输出个数为2个,如图3所示:

图3网络的参数设定图

Fig.3 Network parameters set figure

我们设定初始的适值为0,如果发现一个目标后,它所对应的适值就加上1,这样经过50次的进化后,没有进行数据预处理的最大值是25,平均值是10.1333。如表1所示:

将50次的统计结果用柱状图进行对比,如图4所示。

图4进化50代后的加入数据预处理和没有加入预处理的对比图

Fig.4 After 50 generation data preprocessing and did not join joined the pretreatment of contrast diagram

为了减少输入层的个数,我们可以先对数据进行预处理下面,用统计的方法对数据进行的结果分析,如表2所示。

将进化100代后,对比两者的对比柱状图如图5所示。

图5进化50代后的加入数据预处理和没有加入预处理的对比图

Fig.5 After 50 generation data preprocessing and did not join joined the pretreatment of contrast diagram

实验结果表明,为了减少输入层的个数,先对数据进行预处理。通过对扫雪机器人的过程的数据分析进行分析,数据预处理后的智能进化学习能力相对于原始数据的智能进化学习能力有明显的提高。

4结束语

本文提出了基于神经网络和遗传算法结合的改进算法,对于遗传算法的变异操作进行改进,不会破坏单个神经元的输入权值的基础上,采用数据预处理的方法来减少输入层的个数,从而提高进化学习的能力。从实验数据中可以看到,本章提出的改进算法加快了学习速度,达到了提高智能学习的预期

目的。

参考文献

[1] 乔俊飞,韩桂红.神经网络结构动态优化设计的分析与展望[J].控制理论与应用,2010,3(13):350-357.

[2] 葛继科,邱玉辉,吴春明,等.遗传算法研究综述[J].计算机应用研究,2008,10(9):2911-2916.

[3] 丁建立,陈增强,袁著祉.智能仿生算法及其网络优化中的应用研究进展[J].计算机工程与应用,2003,12(3):10-15

[4] 巩敦卫,等.交互式遗传算法原来及其应用[M].北京:国防工业出版社,2007.

篇5

关键词:矢量量化;自组织特征映射神经网络;图像压缩;主元分析

中图分类号:TP183文献标识码:A文章编号:1009-3044(2008)36-2731-02

The Vector Quantization Based on PCA/SOFM Hybrid Neural Network

HUNG Cui-cui, ZHANG Jian

(Liaoning University of Technology Electronic and Information Engineering College, Jinzhou 121001, China)

Abstract: In order to improve the two main shortcomings of the Kohonen's self-organizing feature map(SOFM) that are high computation complexity and poor codebook quality, the author proposes a vector quantization algorithm based on PCA/SOFM hybrid neural network in this paper. Descend the dimension of imported vectors by using the principal component analysis (PCA) linear neural network. And then, use SOFM neural network to vector quantization. By modifying the learning-rate parameter, topology field weight and initial codebook of the SOFM neural network to optimize network. Simulation results demonstrate that the image compression algorithm can shorten the time and improve the performance of codebook.

Key words: Vector quantization(VQ); Self-organizing feature map neural network (SOFM); image compression; Principle component analysis(PCA)

1 引言

矢量量化[1,2]技术是一种利用图像数据空间相关性的高效有损压缩方法,它具有压缩比大,编码速度快等优点,目前己广泛用于信号识别、语音编码、图像压缩等领域中。矢量量化优越性的体现离不开性能良好的码书,因而,矢量量化的关键是如何设计一个最佳码书,使得用该码书中的码字表征输入矢量空间分布时所引起的量化平均失真最小。近年几来,许多学者将SOFM神经网络应用于码书的设计[3]。但SOFM算法存在收敛速度慢、计算量大等缺点。陆哲明和孙圣和针对SOFM基本算法的计算量大采用了快速搜索算法,为了提高码书性能对SOFM基本算法的权值调整方法作了一些改进[4]。目前越来越多的研究人员把目光投向将矢量量化与其他的编码方法相结合[5]。例如,矢量量化与小波变换结合的算法[6],分形变换与矢量量化相结合的算法[7]。PCA是一种有效的图像变换编码算法,它能够提取图像数据的主特征分量,因此能够降低图像输入数据维数。SOFM算法用于图像矢量量化则具有不易受初始码书的影响,同时能够保持图像数据的拓扑结构等优点。为此本文将两者结合,提出了PCA/SOFM混合神经网络图像混合编码算法。先用PCA对图像进行降维处理,再用SOFM神经网络进行码书设计。本文还对码书的初始化的选择问题和神经网络的学习参数进行研究。实验表明,该算法不但大大降低了计算量,而且提高了码书的性能。

2 PCA/SOFM混合神经网络的算法

尽管SOFM神经网络比起LBG算法有很大优势,但SOFM算法仍然存在收敛速度慢。计算量大等缺点。因此本文将PCA与SOFM神经网络相结合,提出了PCA/SOFM混合神经网络。PCA/SOFM混合神经网络结构如图1所示,先用PCA线性神经网络对输入矢量降维处理,从而使得压缩图像达到最小失真。然后用SOFM神经网络进行码书设计, PCA线性神经网络采用Sanger提出的广义Hebb算法[8]。

2.1 基本PCA/SOFM混合神经网络算法

1) PCA网络权值Wpi,j和SOFM网络权值初始化;

2) PCA网络输出矢量Yp(t):

(1)

N为PCA神经网络输入矢量Xp的维数。

3) Wpi,j网络权值调整:

(2)

4) 重复步骤(2)至(3),直至算法收敛。输出矢量Ypi(t),并将此作为SOFM的输入Xi(t);

5) 计算矢量Xi(t)与权值矢量Wi,j(t)的距离:

(3)

6) 选择具有最小距离的输出节点,j*作为获胜节点,即:

(4)

7) Wij(t) 网络权值调整:

(5)

8) 重复步骤(5)至(7),直至算法收敛。

9) 取输入训练矢量集的下一个输入矢量,回到步骤(2)反复进行,直到足够的学习次数或满足规定的终止条件为止。

10) 保存所有权值Wij的值,即设计码书。

2.2 PCA/SOFM混合神经网络的初始化和改进

在PCA/SOFM混合神经网络算法中网络的初始化、邻域函数和学习率函数非常重要,它直接影响到网络的收敛速度和码书的性能。本文要对这几个参数进行优化以提高压缩速度和压缩性能。本文采用一种改进的随机选取法,使空间分配均匀,不会出现码字空间分的过细或过粗的现象。首先,按k维矢量所有元素中最重要的单个元素(即k维欧氏空间中最敏感的方向)大小排序;然后按顺序每隔n个矢量取一个矢量作为初始码书的一个码字,完成码书的初始化(n=训练序列中矢量的总数/码书的大小)。

由SOFM基本算法可知,权矢量Wi(t+1)的更新实质上是权矢量Wit和训练矢量Xi(t)的加权和。其中学习率因子和邻域函数非常重要,它们决定算法的收敛速度。下面推导最优的学习率因子α(t)。由式(5)得:

(6)

可以总结得:

(7)

令多项式的各项相等可得到最优学习率因子:

(8)

其邻域函数取为:

(9)

式中,hcc典型地取为0.8。T为最大迭代次数,初始值σ0和最终值σT典型地取为0.8和0.1。

3 实验结果

为了验证算法的有效性,本文把基本SOFM编码算法、基本PCA/SOFM混合神经网络编码算法和改进PCA/SOFM算法分别用于图像的压缩编码。本文采用的是512×512像素,256级灰度的Lena图像用于训练图像进行码书设计。首先将图像分为4×4子块,然后将每一小块的16个像素灰度值作一个训练矢量,送入PCA线性神经网络。PCA线性神经网络输出节点为8维PCA变换系数矢量,同时将它作为SOFM神经网络的输入矢量,用于进行码本设计。进过多次实验,取其平均值作为实验结果,图3给出了各种算法在相同压缩比的情况下恢复图像的对比。表1给出了各算法编码后的尖峰信噪比PSNR和码书设计时间的比较。

从测试的结果可以看出改进PCA/SOFM算法优于基本SOFM算法和基本PCA/SOFM算法,该算法缩短了码书设计的时间,图像的恢复质量有所提高,取得了令人满意的结果。从而证明本文提出的算法是一种行之有效的方法。

4 结束语

篇6

[关键词] 水电工程 移民安置 项目成功度 后评价

一、引言

水电工程移民是水电工程建设的重要组成部分,涉及社会、经济、资源、生态、环境等诸多方面。水电工程移民能否得到妥善安置,影响着区域社会、经济与环境的协调发展,以及移民自身的可持续发展,因此备受各界关注。

水电工程移民安置项目成功度后评价就是对已完成的移民安置项目是否达到预期的效果,以及产生的作用和影响所进行的系统的、客观的评价,并分析其以后的发展趋势,总结经验教训,为今后移民安置工作提供建议,以期合理地进行后期扶持,并对移民区经济发展提供对策与建议。目前对其主要有以下几种研究方法:(1)专家打分法或经验判断法。(2)基于灰色聚类法的项目成功度评价,该方法能比较客观地反映项目的真实情况,但对于成功度指标比较复杂的大型项目,在计算速度和精度上存在缺陷。(3)运用神经网络对成功度进行评价。该方法目前只是处于尝试阶段。基于此,本文提出了基于模糊神经网络的水电工程移民安置项目成功度后评价方法。

二、基于模糊神经网络的项目成功度评价体系

1.建立指标体系的基本原则。水电工程移民安置项目成功度后评价的核心是对项目实施效果成功度进行评价。而水电工程移民是一个涉及多方面的复杂体系,因此需要为其构建科学完备的实施效果后评价指标体系。指标体系的构建要遵循以下原则:

(1)全面性。评价指标体系作为一个有机整体是多种因素综合作用的结果,同时水电工程移民内容的多样性要求指标体系具有足够的涵盖面,从不同角度反映出被评价系统的主要特征和状况。

(2)科学性。水电工程移民安置项目实施效果后评价指标体系应建立在科学的基础上,尤其是具体指标的设置、构成、层次等要建立在充分认识、系统研究的科学基础上,社会、经济、资源和环境等主要构成要素应在指标体系中得到充分的反映。

(3)动态性。作为一个系统,水电工程移民是一个不断变化发展的动态过程,要求其评价指标体系充分考虑系统动态变化的特点。

(4)理论性与实践性相结合。水电工程移民安置项目实施效果成功度后评价指标体系的构成应以理论分析为基础,但在实际应用中往往受到资料来源和数据支持的制约。因此,要求评价指标体系中相应指标的量化应是可行的,且获取数据较为容易、准确可靠,尽量利用现存数据和己有的规范标准。

2.水电工程移民安置项目成功度评价指标体系。根据以上原则,结合大量相关项目后评价报告资料,本文构建了水电工程移民安置项目成功度评价指标体系(见上表)。

三、模糊神经网络成功度评价模型构建方法

1.构建评价指标相对隶属度矩阵。步骤:

(1)构建n个级别,m个评价因子的成功度后评价标准值矩阵X:,式中,是第i项评价因子所对应的第j级评价标准值

(2)假设已计算得到该项目成功度的成功度值,构成检测样本值矩阵Y:,式中,表示第i项成功度指标的值。

(3)运用模糊数学中的相对隶属度来描述项目的成功度指标的值,规定第i项成功度指标的第1级别的标准值对于模糊集“成功”的相对隶属度pi1,而第n级标准值对应的相对隶属度pin=1。介于1级与n级之间的第i项指标的第j级标准值的相对隶属度为pij,采用线性内插公式进行计算: (1)

(4)应用公式(1),构造成功度评价指标标准值相对隶属度矩阵R:

(5)把项目的各个成功度指标值转化为评价等级集合的相对隶属度,计算方法见下式:(2)

(6)应用公式(2),构造实际项目检测样本指标相对隶属度矩阵T:

2.构建BP神经网络模型。BP神经网络属于正向前馈神经网络,具有很强的自学习和自组织能力,对输入的数据和规则计算有很强的容错性和稳健性,因此用来评价项目成功度是可行的。下面以三层BP网络建立模型,其拓扑结构如图所示。

设有k个样本向量,网络输入层神经元个数为n,中间层神经元个数为p,输出层神经元个数为m,网络输入向量,输出向量,期望输出向量,为输入层到中间层的连接权,为中间层到输出层的连接权,为中间层单元的阈值,为输出层单元的阈值,其中。其计算步骤如下:

(1)对样本向量进行归一化处理,将数据处理为(0,1)之间的数据,给权值和阈值赋予(-1,1)之间的随机初值,选取一组输入和目标样本提供给网络。

(2)计算隐含层和输出层各单元的输入和相应输出。 (3)

(3)根据网络输出计算输出层误差和隐含层误差。(4)

(4)利用误差调整值对各层权值和阈值进行调整。(5)

(5)选取下一个学习样本向量提供给网络,返回步骤2,直到全局误差E小于预先设定值,则学习结束。

3.移民安置后评价模糊神经网络模型的实现

(1)模糊神经网络模型的学习过程。据构造出的成功度评价指标标准值相对隶属度矩阵R,和实际项目检测样本指标相对隶属度矩阵T,对网络进行训练。为了提高训练精度,需要对R进行有限次内插,要求内插样本k的指标i对评价级别j的相对隶属度均为,则内插样本k的隶属于评价级别j的隶属度为,并且其满足。定义内插样本k对应的标准级别值为,则有:(6)(7)

式中,i=1,2,…,n;j=1,2,…,m;q=1,2,…,c-1;c值可根据插值样本个数进行调整。并且从中选取部分样本连同评价标准样本作为学习样本,对应的级别值作为输出样本,余下的作为网络的检验样本。

(2)项目成功度后评价步骤。水电工程移民安置项目可以根据上述方法确定学习样本和目标输出,调整隐含层和输入层个数,构建BP神经网络。具体步骤:①根据上表中水电工程移民安置项目成功度评价指标体系, 构建神经网络的输入层。②将各指标的评价值进行模糊处理后, 作为神经网络的训练样本集。③启动神经网络进行学习, 经反复迭代直到收敛到相应的精度条件, 储存学习好的神经网络综合评价模型。④将标准化的评价矩阵输入设计好的模型, 即可得出评价、评价结果。

四、结论

本文运用模糊神经网络对水电工程移民项目进行成功度后评价, 弱化了评价过程中的随机性和评价人员确定指标权重的主观性,保证了评价结果的客观性和科学性,具有很强的实际意义。由于本文主要从后评价的方法层面进行研究,所以需要进一步开展实证研究,来验证该方法的科学性和实用性。

参考文献:

[1]刘向富:BP神经网络在水电工程移民安置后评价中的应用[J].水利技术监督,2008,03:34~35

[2]张君伟:水利水电工程移民安置项目后评价研究[D]. 南京,河海大学,2006

篇7

国内外已不少学者通过构建不同模型对经济周期进行监测预警,人工神经网络是方法之一。神经网络实质是一个大规模的连续的非线性时间动力系统,它具有并行分布处理、连续时间非线性动力学、网络全局作用及学习联想能力和高度的鲁棒性等特点。[1]与此同时,它也具有不可预测性、自适应性、耗散性和吸引性等非线性动力系统的所共有的特性。[2]对于宏观经济这样一个复杂的“黑箱”运作系统,人工神经网络体现出其优良性。

再者,崔胜铉和瓦里安(2011)认为利用大数据信息可以为实时预测提供服务。[3]比如,提前捕获GDP这样的经济数据。人们可以依靠网络技术和实时信息的可采集性,比如,在2016年12月31日得到我国本月GDP的数值。本文将通过构建以经济理论为支撑的宏观经济的指标体系,然后采用径向基神经网络进行宏观经济预测分析。

二、径向基函数神经网络介绍

(一)径向基函数神经网络

径向基函数网络(Radial Basis Function,RBF)由三层构成:输入层、隐藏层和输入层。输入向量首先与权值向量相乘,输入到隐藏层的节点;再计算样本点与节点中心的距离,该距离通过径向基函数的转换形成隐藏层的输出;最后通过输出层的线性表达形成网络的最终输出。

在这个过程中,重点之一是如何确定隐藏层节点的中心和其标准差σ,以及隐藏层与输出层之间的权值矩阵。[4]其中节点中心可用聚类的方法确定,或直接从样本中选择;而标准差则可通过经验公式

其中dmax表示所选中心之间的最大距离,n为隐藏层节点个数。根据径向基函数中心确定的方法不同,RBF神经网络有不同的学习策略。本文将使用有监督选取中心的方法。“监督”即神经网络的权值通过输出数据来调整,整个过程采用误差修正来学习,其代价函数如下定义:

设E为一个输出节点的误差,N为训练样本的个数,ej为输入第j个训练样本所得结果与期望结果之间的误差:

其中,I表示隐含节点的个数[6]。学习时,正是通过寻找合适的自由参数使代价函数最小。

由于RBF网络能够逼近任意的非线性函数,可以处理系统内的难以解析的规律性,并且具有很快的学习收敛速度,因此RBF网络具有较为广泛的应用。[5]

三、基于径向基神经网络宏观经济预测的实现

宏观经济预测的影响因素众多,且各因素之间关系复杂,是具有高度不确定的非线性系统,故而先构建影响宏观经济的指标体系,再采用径向基神经网络实现宏观经济预测,以陕西省1996年~2015年的数据作为实证样本。

(一)宏观经济预警指标体系的构建

以陕西省省内内生产总值(亿元)表示陕西省的经济水平。以经济学理论为基础,划分出四类一级指标:消费、投资、政府支出及净出口;[6]但人力资本在地方经济发展中起着越来越重要的作用,所以增加技术、教育投资和文化公共事业这三项一级指标。兼顾指标数据的可获得性,选取以下指标来衡量陕西省的经济发展:

所有数据均来源于中国统计局,原始数据见附表1。

(二)径向基神经网络预测的实现

基于径向基神经网络进行陕西省宏观经济预测的实现依照以下步骤实现:

1.数据的预处理。利用RStudio处理初始数据,调用matrixplot查看是否存在缺失数据,结果显示共有7个缺失数据。补充方法如下:对于教育经费(EF)的第一处缺失、图书(TB)、期刊(TJ)和报纸(TN)的缺失采用均值插样做补充;教育经费(EF)的第二处缺失参考新闻“教育经费不少于地区总产值的4%”[5],加之2014年、2013年的教育经费投入都大于陕西总产值的5%,那么一定程度上用2015年地区总产值的5%作为本地的教育费投入。博物馆数量(NM)的两处均以1998年的67个类推。

接着定义样本并划分训练样本和测试样本。其中1996~2000年的数据为训练样本,2001~2005年的数据为测试样本。

2.训练样本。为了充分利用样本,对15份训练样本进行插值得到100份样本。具体操作为先将训练样本和对应的目标输出合并为16×100矩阵,采用Matlab2013(a)中的二维插值函数interp2插值后,再将该矩阵拆分为样本和对应目标输出。

3.创建径向基神经网络。使用newrb函数创建径向基神经网络,其中设定设误差容限为,扩散因子为22,最大神经元个数为101。调用函数后,得到的误差下降曲线图如下:

考虑到不同指标的数据量级不同,对数据做归一化后得到的神经网络如图3:

相比初次得到的RBF网络结构图(图4),数据归一化后误差下降速率更稳定:

4.测试显示测试结果。

相对误差结果总结如下:

四、总结

从实证过程可以归纳出以下三点:第一,指标有效,合适的数据预处理可以保证算法的收敛速;第二,预测结果的平均相对误差仅有0.071629,因此有理由认为,径向基神经网络可以准确预测宏观经济的走势;第三,预测值随着时间的推后,预测偏差逐渐扩大,这说明该方法和其他预测方法有着同样的确定,即只适合短时期内的预测,预测误差会随着预测期的延长而变大。

参考文献

[1]李爱军.前馈神经网络工作机理分析与学习算法[D].北京交通大学,2005.

[2]赵贵玉.多层前向网络泛化能力研究与应用[D].中国人民信息工程大学,2005.

[3]Hyunyoung Choi,Hal Varian,“Using Search Engine Data for Nowcasting -An Illustration”,In Actes des Rencontrees Economiques;Aix-en-Provence,FRANCE,Recontres Economiques d'Aix-en- Provence,LeCercle des economists,http://Lecercledesecono- mistes.asso.fr/IMG/pdf /Actes_ Rencontres_Economiques_d_Aix-en- Provence_2011.Pdf,2011.L.Wu,E.Brynjolfsson,“The Future of Prediction:How Google Searches Foreshadow Housing Prices and Quantities”,Thirtieth International Conference on Information System,Phoenix 2009,pp.1-14.

[4]陈明等.MATLAB神经网络原理与实例精解[M].清华大学出版社,2013,3.

[5]韩力群编著.人工神经网络理论、设计及应用[M].化学工业出版社,2007,7.

篇8

关键词:BP神经网络 BP算法改进 脱机手写汉字识别 误差函数

中图分类号:TP183 文献标识码:A 文章编号:1674-098X(2014)01(b)-0047-01

汉字识别有两种,一种是印刷体汉字,因比较规范,容易识别;第二种是手写汉字,分联机手写和脱机手写两类,前者准确率较高,后者则偏低,是当前的研究重点。作为模式识别的重要组成部分,汉字识别技术应用广泛,但由于涉及图像处理、人工智能、计算机、数字信号处理等多种技术,加上汉字的复杂繁多,使得汉字识别存在着很大困难,如尤其是相似字,使得识别更为困难,如“裸”和“”、“壶”和“”、“禅”和“”等,极易出现错误。

1 神经网络和BP神经网络

1.1 神经网络

神经网络是在现代神经科研成果的基础上提出并发展起来的,通过对生物大脑神经的模拟建立的一种信息处理系统,由许多简单元件连接构成,具有非线性和容错性,从能力特征来讲,具有自适应和自组织性。其优势主要体现在:能够模仿人脑进行联想记忆;对存储的信息进行分类识别;能够自动总结归纳经验。在长期的实践发展中,神经网络技术不断完善,在语音处理、机器人研究、模式识别等诸多领域都有广泛应用。

1.2 BP神经网络

用于文字识别的神经网络模型有很多,BP神经网络是其中较为常用的一种,该网络模型是以BP算法(即反向传播算法)为基础的,除了函数逼近功能,还具有良好的机器学习能力。

BP神经网络属于多层前向网络,能够进行反向传递、修正误差,通过结构和权值将颇为复杂的非线性映射关系表达出来。多由输入层、输出层以及隐含层组成,每层都有若干神经元,前向网络是指其计算过程呈单向型,即由输入层到中间层,再到输出层。

BP算法有两个阶段,一是正向传播,二是反向传播,在第一个阶段,将信号输进系统的输入层,由其内部神经元进行处理,主要是加权求和、激励函数等,而后传递到中间层(即隐含层),在经过内部逐层处理,传到输出层,将实际的输出值和预期值相比,若超过了规定的误差范围,就开始反向传播,把误差值从输出层输入,向中间层和输入层传递,求得每层内各单元的误差,将相应的权值进行修改,经不断的调整,直至误差值符合要求。

2 BP网络神经在小字符集汉字识别中的实际应用

2.1 缺陷

(1)站在数学的角度看,BP网络神经所使用的梯度下降法属于非线性优化算法的一种,以至于局部极小值大的问题很难得到解决,在实际计算中,BP算法能够将网络权值进行收敛,但收敛值为局部极小解的可能性较大,是否是全局的最小解则没有可靠的保证。若解决的问题比较复杂,很容易致使误差函数陷入局部的极小区域。

(3)中间层的结点

在确定训练集之后,输入层和输出层的结点数目也相应的确定下来,然而中间层及选取层内结点时,缺乏足够的理论作指导,中间层的结点数直接影响着网络的学习效率和复杂程度,因此,在选取中间层变得结点时,也应做一定的改进,积极建立相关的指导理论。

3 结语

针对脱机手写汉字识别技术存在的难度,可运用BP神经网络技术,而实际应用中,收敛速度过慢以及局部最小点问题对BP神经网络技术影响较大,为此,需从初始权值的选取、激励函数、误差函数等方面对其算法加以改进,以达到提升脱机手写汉字识别速度和精确度的目的。

参考文献

篇9

关键词:人工神经网络;信息处理;风险评估

中图分类号:TP18 文献标识码:A 文章编号:1009-3044(2014)06-1285-02

Research on the Application of Artificial Neural Network

LI Hong-chao

(China University of Petroleum (East China), Qingdao 266580,China)

Abstract: Artificial neural networks are part of an integrated artificial intelligence, it is proposed is based on research of modern neuroscience. With the continuous development of artificial neural networks, and their use more widely. This article first analyzes the basic concepts and features of artificial neural networks, from six aspects of information, medicine, psychology and other details of the application of artificial neural networks.

Key words: artificial neural network; information processing; risk assessment

1 人工神经网络

人工神经网络,英文名为“Artificial Neural Network”,简称ANN,它充分分析大脑神经突触联接的结构特点,对其进行模拟,然后进行信息处理。简单来说,人工神经网络就是对人脑结构、人脑功能的模仿。它的特点有很多,比如非线性、非局限性、非常定性、非凸性等。这些特点铸就了人工神经网络的各种功能,促进了它的应用。

2 人工神经网络的应用

随着人们对人工神经网络的不断研究,人工神经网络的作用越来越大,给人们提供了更好的服务,下面就以人工神经网络在信息领域、医学、经济领域、控制领域、交通运输、心理学六个方面分别介绍其应用。

2.1 信息领域

人工神经网络在信息领域的应用分为两个方面,一个是信息处理,一个是信息识别。

1)信息处理

由于现代信息的多样化和多变性的特点,信息处理就变得复杂起来,人工神经网络可以对人的一部分思维能力进行模仿甚至代替,解决传统信息处理的困难。在通常情况下,人工神经网络可以自动诊断问题,开启问题求解模式。另外,人工神经网络系统的容错性能高,当其连接线遭到破坏,自身的组织功能还是可以保持它的优化工作状态。因此,军事系统充分利用这一优势,在其电子设备广泛应用人工网络信息系统。

2)模式识别

这项功能的理论基础有两个,一个是贝叶斯的概率论,另一个是申农提出的信息论。模式识别主要是分析和处理存在于目标体上的各种形式的信息,然后在处理和分析的基础上对目标体进行描述、辨认等过程。随着人工神经网络在模式识别中的应用,传统的模式识别逐渐被取代。随着模式识别的发展,已经逐渐应用到语音识别、人脸识别、文字识别等各个方面。

2.2 医学领域

人体是非常复杂的,在医学中,想要弄清楚疾病的类型、疾病的严重情况等,仅仅依靠传统的望闻问切诊断方法是远远不够的,医学的发展需要运用新技术。人工神经网络应用于医学中,可以分析生物信号,观察信息的表现形式以及研究信息的变化规律,将这三者的结果进行分析和比较,从而掌握病人的病情。

1)生物信号的检测与分析

在医学诊断中,医生基本上都是通过对医学设备中呈现出来的连续波形进行分析。人工神经网络中有一套自适应的动力学系统,该系统由一些数量庞大的简单处理单元互相连接。因此,它具有多种功能,比如Massively Parallelism,即所谓的巨量并行,分布式存贮功能以及强大的自组织自学习功能等。用常规处理法处理生物医学信号分析非常困难,而人工神经网络的功能可以有效解决难题,其在生物医学人脑检测与处理中的应用非常广泛,比如分析电脑信号,对心电信号进行压缩处理,医学图像的识别等,在很大程度上促进了医学的发展。

2)医学专家系统

对于传统的专家系统而言,其工作原理基本上就是先由专家根据自己多年的医学经历,总结自己的经验和所掌握的知识,以某种规则的形式将这些经验和知识存储在电脑中,建立一个专家的知识库,然后借助逻辑推理等方式开展医疗诊断工作。但是,随着专家知识的不断增长和经验的日益丰富化,数据库的规模会越来越大,极有可能产生知识“爆炸”的现象。同时,专家在获取知识的过程中也会遇到困难,导致工作效率低下。人工神经网络中的非线性并行处理方式解决了传统专家系统中的困难,在知识推理、自组织等方面都有了很大的提高,医学专家系统也开始逐渐采用人工神经网络系统。

在医学领域中,麻醉和危重医学的研究过程中,存在很多的生理方面的分析与检测工作,人工神经网络系统有良好的信号处理能力,排除干扰信号,准确检测临床状况的相关情况,有力促进了医学的发展。

2.3 经济领域

经济的快速有效增长是基于人们对市场规律良好的掌握和运用以及对经济活动中的风险评估,及时应对和解决,这样才能保障经济活动的快速发展。人工神经网络应用于经济领域,主要有预测市场价格和评估经济风险两个方面。

1)预测市场价格的波动情况

商品的价格主要是由市场的供求关系和国家宏观调控来变化的。国家的宏观调控是客观存在的,我们可以在遵循国家宏观调控的前提之下分析市场的供求关系,从而预测商品的市场价格。在传统的统计学方法中,在预测价格波动时因其自身的局限性,难以做出科学的判断。人工神经网络可以有效处理不完整数据和规律性不强的数据,它是传统统计方法所不能达到的。人工神经网络系统基于市场价格的确定机制,综合分析影响商品价格的因素,比如城市化水平、人均工资水平、贷款情况等,将这些复杂的因素综合起来,建立一个模型,通过模型中的数据显示,科学预测商品的市场价格波动情况,有效利用商品的价格优势。

2)评估经济风险

经济风险,即Economic Exposure,它指的是由于经济前景的一些不确定因素,导致经济实体出现重大的经济损失。在处理经济风险的时候,做好的措施就是防患于未然,做好评估和预测,将经济风险扼杀在萌芽时期。人为的主观判断经济风险具有一定的可靠性,但是也存在很多的不足。将人工神经网络系统应用于评估经济风险,可以有效弥补人为判断风险的不足。人工神经网络先提取具体风险来源,然后在此基础上构建出一个模型,这个模型一般要符合实际情况,通过对模型的研究,得出风险评价系数,最终确定有效的解决方案。

2.4 控制领域

随着人工神经网络的不断发展,人们开始研究其在控制领域的应用。比如现在的机器人的摄像机控制、飞机控制等。它主要是通过控制图像传感器,再结合图像表面的非线性关系,进行计算和分析,另外,它还可以将图像传感器瞄准到处于运动状态中的目标物上。

2.5 交通运输

交通问题具有高度的非线性特点,它的数据处理是非常庞大和复杂的,这与人工神经网络有很大的吻合性。就目前来讲,人工神经网络应用到交通领域有模拟驾驶员的行为、分析交通的模式等等。

2.6 心理学

人工神经网络是对人脑神经元的信息处理能力的模拟,本身就带有一定的抽象性,它可以训练很多的认知过程,比如感觉、记忆、情绪等。人们通过对人工神经系统的不断研究,多个角度分析了其认知功能。就目前来看,人工神经网络可以分析人的认知,同时对认知方面有缺陷的病人进行模拟,取得了很大的进步。当然,人工神经网络应用于心理学领域也存在很多的问题,比如结果精确度不高、模拟算法的速度不够等,这些都需要人们持之以恒的研究。突破这些难题,促使人工神经网络有效应用于心理学领域。

3 结束语

综上所述,随着人工神经网络的不断发展,它特有的非线性适应能力和自身的模拟结构都有效推动了其应用范围。我们应该不断运用新技术,不断完善人工神经网络的功能,拓宽其应用范围,促进其智能化、功能化方向发展。

参考文献:

[1] 毛健,赵红东,姚婧婧.人工神经网络的发展及应用[J].电子设计工程,2011(12).

[2] 林和平,张秉正,乔幸娟.回归分析人工神经网络[J].吉林大学学报:信息科学版,2010(3).

[3] 李雷雷.人工神经网络在建筑工程估算中的应用研究[D].华北电力大学,2012.

篇10

关键词: BP算法; 入侵检测; 神经网络; 随机优化算子

中图分类号: TN915.08?34; TP393.08 文献标识码: A 文章编号: 1004?373X(2017)11?0091?04

Research on BP algorithm based on neural network and its application

in network intrusion detection

LUO Junsong

(College of Information Science and Technology, Chengdu University of Technology, Chengdu 610059, China)

Abstract: By analyzing the problems of BP neural network applied to the detection system, the automatic variable?rate learning method, forgetting factor and random optimization operator are introduced into the BP algorithm on the basis of traditional BP algorithm. The BP algorithm is applied to the network intrusion detection system. The simulation results show that the improved BP neural network algorithm applied to intrusion detection has the characteristics of fast speed and easy convergence, and can quickly obtain the target accuracy of 0.02. The detection rate, missed detection rate and false alarm rate of the improved BP neural network algorithm can reach up to 96.17%, 3.83% and 4.15% respectively, whose detection rate is 11.65% higher than that of the traditional BP algorithm, the missed detection rate is 10.66% lower than that of the traditional BP algorithm, and the false alarm rate is 4.07% lower than that of the traditional BP algorithm. The superiority of the algorithm is obvious.

Keywords: BP algorithm; intrusion detection; neural network; random optimization operator

0 引 言

随着通信技术和计算机技术的快速发展,计算机的网络规模越来越大,通信系统也越来越复杂,由于计算机网络本身具有漏洞,同时还有黑客对网络进行攻击,因此计算机网络受到的威胁和攻击日益增加[1?3]。网络安全形势越来越严峻。通过入侵检测技术可收集计算机网络中的若干关键点信息,同时对这些信息进行分析,并对网络是否遭到袭击、是否存在违反安全策略行为进行检查,并做出及时响应,对网络连接进行切断并报警等[4?6]。目前倾向于通过入侵检测技术结合人工智能算法进行相关研究,对于各种入侵行为,采用人工智能算法通过自学习、自适应能力进行识别、检测[7]。

作为一种重要的模式识别方法,人工神经网络具有自学习、自组织、推广能力强等特点[8]。在入侵检测系统中,应用人工神经网络方法可使系统能较好地识别已知攻击,同时还具有对未知攻击进行检测的能力[9]。但是在异常入侵检测系统中,应用标准BP算法存在收敛局部极小值、学习速度慢等缺点,这在很大程度上影响了入侵检测系统的性能[10]。本文在对原有BP神经网络算法进行改进的基础上,研究了优化的神经网络BP算法及其在网络入侵检测中的应用。

1 BP神经网络

BP神经网络是一种多层前馈神经网络,包括输入信号前向传递和误差反向传播两个过程,在结构上一般由输入层、隐含层、输出层三层构成,每一层的神经元状态只影响下一层神经元状态。它被广泛应用在BP神经网络预测模型中。网络结构一般只需单个隐含层就能以任意精度逼近任意有理函数。训练样本的输入、输出向量的维数分别决定了网络的输入、输出层神经节点个数,典型的只有单个隐含层、单个输出的BP神经网络结构如图1所示。

图1 BP神经网络拓扑结构

图1中,为BP神经网络的一组输入向量;为网络的目标输出值;为输入层与隐含层之间的连接权值;为隐含层c输出层之间的连接权值;分别为隐含层和输出层的节点阈值。若设隐含层节点个数为则在前向传递中,输入信号向量从输入层经隐含层逐层传输,最后到输出层,通过各层连接权值矢量、阈值矢量和每一层相应的激励函数进行计算。得到输出层的预测输出值若预测值与目标值之间有误差,则误差部分转入反向逐层传递,沿误差减小方向调整网络各层连接的权值、阈值。反复执行以上过程,使得BP神经网络的预测值不断逼近实际输出值。

2 入侵检测算法

网络入侵检测通过分析系统数据,一旦有网络攻击行为、非授权网络访问时,入侵检测系统就会报警,同时对入侵线路进行切断。入侵检测系统应具有监视系统、用户的活动,对系统、用户活动进行分析,对异常行为模式进行分析,对已知进攻模式进行识别,审计系统弱点、构造,跟踪管理系统审计,对系统、数据文件完整性进行评估,对用户违反安全策略行为进行识别。常见的攻击手段目前包括非授权获得权限、非授权访问、探测、拒绝服务等。在实际中,这些攻击手段变异很大,入侵检测难度较大。BP神经网络具有较强的自学习和自组织能力,经过训练后,对以前观察到的入侵检测行为模式,BP神经网络会进行归纳和总结,可识别出已观察到的攻击和已知攻击变异的新攻击,图2为网络的入侵检测过程。

3 改进的BP神经网络入侵检测

3.1 BP神经网络用于检测系统存在的问题

BP神经网络采用分布式存储,但传统的BP算法存在一些不足,包括极小的局部,较慢的学习收敛速度,缺乏理论隐含层节点的选取,已经学完样本会受到新加入样本的影响,每次样本的输入必须具有确定相同的特征数目。

在入侵检测中,BP神经网络的实现方式主要是与现有系统结合进行,BP神经网络与应用模式识别系统相结合使用,例如与专家系统结合。在这种方式中,BP神经网络可作为系统组成部分,通常是作为信息过滤模块或信息预处理模块,当信息输入系统后,神经网络会对信息做过滤处理。另外,神经网络可规则自动生成模块,进而更新入侵检测系统规则库、模式库。这种方式的优点是能将入侵检测系统的工作性能提高,缺点是这种方式神经网络的真正优势不能得到充分发挥。

3.2 改进的神经网络算法

在信号检测、非线性处理、模式识别等领域,人工神经网络应用较多,这是因为人工神经网络自组织性、自适应性非常好,同时其非线性特性明显,信息存储为分布式模式、可进行大规模的并行处理。实质上BP神经网络算法属于非线性优化的梯度算法,在收敛性上,该算法存在不足,也就是说该算法的学习结果有可能落入到均方误差全局最小点,也有可能落入到局部极小点,造成算法不收敛,使工作模式陷入错误。

入侵检测系统的主要功能是对入侵计算机网络的行为和计算机系统进行检测,包括数据聚类、数据采集、分析判断行为、对入侵行为进行响应、报警等。BP网络各层神经元仅连接相邻层神经元;在各层内部,神经元间无连接;同时各层神经元间也无反馈连接。在信号输入后,传播到隐节点经变换函数再将信息传播到输出节点,经过处理,输出结果。本文将改进的BP 神经网络用于入侵检测系统,其检测模型见图3。

3.2.1 采用自动变速率学习法

传统BP算法在梯度基础上,采用最陡下降法LMS学习问题,学习步长为一个较小值,并且这个值是固定不变的,对网络收敛无益处。因而选择基于梯度方向自动对学习速率进行调节。通过梯度对学习方向做最终确定,在梯度方向上,学习步长由速率决定。若相邻两次梯度方向是相同的,表明该方向的收敛有利;若相邻两次梯度方向是相反的,表明该方向的收敛不稳定。根据这个规律,通过两次相对梯度的变化确定学习步长。当两次梯度为相同方向时,学习步长增大,该方向上学习速度要加快;在两次梯度为相反方向时,学习步长减小,整个网络收敛速度要加快,自适应速率调节方法如下:

(1)

(2)

式中表示在时刻和时刻梯度的乘积。

3.2.2 引入遗忘因子

根据相邻两次梯度变化,通过自适应变速率学习法对学习步长算法进行确定。变化单纯学习速率,这时收敛速度不能完全保证,但不会有振荡产生,因此考虑变速率学习法,在权值调节量上,加一个量,这个量正比于前几次的加权,权值调节量采用式(3)计算:

(3)

式中:表示遗忘因子,引入遗忘因子项,在学习过程中可通过对学习速率进行等效微调的效果进行说明。遗忘因子的作用是缓冲平滑,并使调节的平均方向朝底部变化。

3.2.3 引入随机优化算子

BP神经网络算法在引入遗忘因子,采用自动变速率学习法后,虽然可微调学习速率,但BP神经网络的不足和限制仍存在,为了进一步对BP神经网络进行优化,本文引入随机优化算子,当网络权值误差迭代达到一定次数后,收敛不明显或连续几次发生系统误差函数梯度变化,这种情况表明网络进入疲乏状态,要借助外界推动力对网络进行激活。当出现这两种情况时,与权值维数相同的随机数就产生了,直接将权值和随机数相加,对系统误差变化进行判断,若误差未降低,继续产生随机数,进行权值修改,当误差出现减少时停止,然后再从新权值继续开始BP算法,随机优化算子可随机变化搜索方向,局部极小点就摆脱掉了,图4为改进的BP算法流程图。

4 仿真实验

本文的仿真实验在Matlab 7.0实验平台进行,以此来验证提出改进的BP神经网络算法是否能达到较好的效果,本文同时给出采用未改进的BP算法网络入侵检测和改进的BP神经网络算法网络入侵检测模型仿真实验结果。

图5为两种算法得到的训练精度。从两种算法的实验仿真结果可看出,将改进的BP神经网络算法用于入侵检测,速度快、易收敛,目标精度0.02很快达到。在规定周期内,未改进的BP算法不能达到规定的目标精度,易陷入局部极小,本文提出的改进的BP算法所用训练周期较短,学习时间缩短显著,效果良好。

评价检测模型的标准为漏报率、误报率、检测率,其定义分别如下:

表1为未改进的BP算法与改进的BP算法的比较结果,从表1中可看出,改进的BP神经网络算法的检测率、漏报率、误报率分别为96.17%,3.83%,4.15%,检测率比未改进的BP算法要高出11.65%,漏报率比未改进的BP算法要低10.66%,误报率比未改进的BP算法要低4.07%。

表1 两种算法的入侵检测结果

[算法 训练周期 /s 检测率 /% 漏报率 /% 误报率 /% 基本BP算法 480 84.52 14.49 8.22 改进的BP算法 480 96.17 3.83 4.15 ]

5 结 语

本文在对原有BP 神经网络算法进行改进的基础上,研究了改进优化的BP神经网络算法及其在网络入侵检测中的应用。通过分析BP神经网络用于检测系统存在的问题,在传统BP算法基础上,采用自动变速率学习法,引入遗忘因子、随机优化算子,并将其用于网络入侵检测系统。仿真实验表明,改进的BP神经网络算法用于入侵检测,速度快易收敛,目标精度0.02很快达到。本文算法具有明显的优越性,各种入侵行为检测率得到明显提高,系统误报率也降低了,入侵检测系统性能得到有效改进,本文算法优越性明显。

参考文献

[1] 宋玲,常磊.变异粒子群优化的BP神经网络在入侵检测中的应用[J].智能系统学报,2013,8(6):558?563.

[2] 刘伉伉,谢福,郭雪雪.基于BP神经网络的云计算入侵检测技术研究[J].计算机与数字工程,2014(12):2357?2361.

[3] 黄煜坤.基于BP神经网络算法的入侵检测技术[J].电子制作,2015(10):60?62.

[4] 沈夏炯,王龙,韩道军.人工蜂群优化的BP 神经网络在入侵检测中的应用[J].计算机工程,2016,42(2):190?194.

[5] 王玲.基于BP 算法的人工神经网络建模研究[J].装备制造技术,2014(1):162?164.

[6] 王俊士,李江涛.一种改进的BP神经网络算法在入侵检测中的应用[J].电脑知识与技术,2014,10(3):614?617.

[7] 颜谦和,颜珍.遗传算法优化的神经网络入侵检测系统[J].计算机仿真,2011,28(4):141?144.

[8] 汪洁.基于神经网络的入侵z测系统的设计与实现[J].计算机应用与软件,2013(5):320?322.