前言:一篇好文章的诞生,需要你不断地搜集资料、整理思路,本站小编为你收集了丰富的神经网络初始化方法主题范文,仅供参考,欢迎阅读并收藏。
关键词:垃圾邮件;深度置信网络;分类;受限玻尔兹曼机;支持向量机
0 引言
电子邮件的速度快、成本低等优势使其成为人们用于思想和信息交流的强大工具,然而伴随而来的垃圾邮件成为当今网络的一个重要问题[1]。根据Ferris的研究估计,垃圾邮件数量占美国一家企业组织总电子邮件的15%至20%。在这样的情况下,垃圾邮件造成了大量的带宽浪费和邮件系统超载。由于以上严重问题,必须采取措施来解决垃圾邮件现象。已有研究证明最好的方法是垃圾邮件过滤。
通常有两种邮件过滤的方法:知识工程(Knowledge Engineering, KE)以及机器学习(Machine Learning, ML)。基于第一种方法的垃圾邮件过滤通常使用预定义的集合和用户定义的规则,这样的规则尝试识别信息中垃圾邮件的典型特点;然而,已经证明在实践中该方法的泛化能力较差。
实验表明机器学习分类器具有更好的性能,因此大量的分类方法被提出来实现垃圾邮件检测任务。Puniskis等[2]将神经网络方法应用到垃圾邮件分类。也有其他研究人员将朴素贝叶斯法(Naive Bayes, NB)和支持向量机(Support Vector Machine, SVM)[3-9]应用到垃圾邮件分类任务中。深度置信网络(Deep Belief Net, DBN)是拥有深层架构的前馈神经网络,其中包含多个隐含层,而使用DBN的障碍在于如何训练这样的深层网络。通常情况下,由于网络权值的随机初始化,基于梯度的优化容易陷入局部最小值[10]。Hinton等[11]提出了一种新的贪婪逐层非监督算法来初始化基于受限玻尔兹曼机(Restricted Boltzmann Machine, RBM)的DBN。这个算法提供了网络权值的初始化方法,随后使用基于梯度的算法如梯度下降法来微调网络权值。研究指出,DBN初始化方法的有效性在多个数据集中得到验证[12]。
在受限玻尔兹曼机的快速学习算法的驱动下, 本文提出了使用深度置信网络来解决垃圾邮件问题,并且在三个充分研究的垃圾邮件数据集上评价分类方法的性能。将本文的算法和较好的垃圾邮件检测方法支持向量机分类器[13]进行比较,结果表明,基于深度置信网络的方法表现出和SVM相似的性能或者说比SVM更好的性能。
1 深度置信网络分类
人工神经网络(Artificial Neural Network, ANN)研究主要关注的是训练网络来找到正确的权重,可以正确地将输入样本分类。最成功的算法是著名的反向传播(Back Propagation,BP)算法。反向传播的问题是:ANN代表一个f(X,W)的非线性映射,其中:X是输入向量,W是整个网络的权重矩阵。随着网络层数的增加,函数f变得越来越复杂,如此一来将得到多个局部最小值。反向传播算法根据权重W的初始化来收敛到某一最小值,但有时它会收敛到一个表现差的局部最小值而不是全局最小值。对于一些人工智能任务,有些局部最小值是没有问题的,但是有些是不可以接受的。此外,随着网络层数的增加,训练时间变得越来越长。反向传播的另一问题是它需要大量的标签数据,这对于许多需要分类的人工智能任务来说是不可能的。对于之前提到的问题,Hinton等[11]基于DBN和RBM介绍了一种快速学习算法来训练深度人工神经网络。
1.1 深度置信网络模型
DBN由多层RBM和一层BP神经网络构成,它的结构如图1所示。其中,多层RBM网络采用无监督的学习方法,而BP神经网络采用有监督的学习方法。自底向上每一层RBM对输入数据进行提取、抽象,尽可能保留重要信息,将最后一层RBM网络的输出信息作为BP神经网络的输入数据。由于每层RBM训练只能使该层网络参数达到最优,而不能使整个网络达到最优,因此本文使用有监督的BP神经网络将误差反向传播,自顶向下微调整个模型。同时,经过若干层RBM网络优化得到的信息作为BP神经网络的输入数据,解决了BP神经网络由于随机初始值容易陷入局部最小值和收敛速度慢的问题。DBN网络是一种深层学习模型,增加RBM网络的层数,可以使提取的信息更抽象,网络的精度更高。
3.3 实验结果
下面描述DBN和SVM训练的细节以及在三个数据集上的分类性能表现。对于LingSpam,设置k=1500,而对于SpamAssassin和Enron1设置k=1000。对于SpamAssassin,需要去掉其中的HTML标签。三个数据集上的实验都使用10折交叉验证[15]。Lingspam已经被其创建者划分为10份;对于其他两个数据集,随机将语料库拆分成10份,并保证每一部分保留原有语料库的垃圾邮件比例。
为了将DBN应用到垃圾邮件检测,必须决定隐含层个数
以及每层隐含单元的个数的合适值。
根据已有研究,实验选择了比较简单的有3个隐含层的网络[11-12];通过选择不同隐含单元为网络尝试不同的配置,设置三个隐含层的神经元个数分别为50、50、200,每一层神经元的数量适度的变化并没有显著的影响结果。为了强调DBN方法对于不同架构的鲁棒性,本文实验使用相同的架构。
4 结语
通过逐层无监督的学习方法预训练深度网络的权值参数,解决了权值的初始化问题,提出了基于深度置信网络的分类方法,并将其应用到垃圾邮件过滤中。实验结果表明,深度置信网络的分类方法在垃圾邮件过滤中有较好的表现,但是也有一些问题将在今后的工作中继续探讨,例如,如何更好地选择深度置信网络隐藏层数以及每层的单元个数来提高算法的性能。
参考文献:
[1]PU C, WEBB S. Observed trends in spam construction techniques: a case study of spam evolution [C]// CEAS 2006: Proceedings of the Third Conference on Email and AntiSpam. Mountain View, California: CEAS, 2006: 104-112.
[2]PUNIKIS D, LAURUTIS R, DIRMEIKIS R. An artificial neural nets for spam Email recognition [J]. Electronics and Electrical Engineering, 2006, 69(5): 73-76.
[3]ANDROUTSOPOULOS I, PALIOURAS G, MICHELAKIS E. Learning to filter unsolicited commercial Email [M]. Athens, Greece: "DEMOKRITOS", National Center for Scientific Research, 2004.
【谷歌图书查找】
[4]METSIS V, ANDROUTSOPIULOS I, PALIOURAS G. Spam filtering with naive Bayes ― which naive Bayes? [C]// CEAS 2006: Proceedings of the Third Conference on Email and AntiSpam. Mountain View, California: CEAS, 2006: 27-28.
[5]ZHANG L, ZHU J, YAO T. An evaluation of statistical spam filtering techniques [J]. ACM Transactions on Asian Language Information Processing, 2004, 3(4): 243-269.
[6]HOVOLD J. Naive Bayes spam filtering using wordpositionbased attributes [C]// CEAS 2005: Proceedings of the Second Conference on Email and AntiSpam. Palo Alto, CA: CEAS, 2005: 41-48.
[7]FUMERA G, PILLAI I, ROLI F. Spam filtering based on the analysis of text information embedded into images [J]. The Journal of Machine Learning Research, 2006, 7: 2699-2720.
[8]ALMEIDA T A, ALMEIDA J, YAMAKAMI A. Spam filtering: how the dimensionality reduction affects the accuracy of Naive Bayes classifiers [J]. Journal of Internet Services and Applications, 2011, 1(3): 183-200.
[9]ALMEIDA T A, YAMAKAMI A, ALMEIDA J. Evaluation of approaches for dimensionality reduction applied with Naive Bayes antispam filters [C]// ICMLA09: Proceedings of the 2009 International Conference on Machine Learning and Applications. Piscataway: IEEE, 2009: 517-522.
[10]SUN Z, XUE L, XU M, et al. Overview of deep learning[J]. Application Research of Computers, 2012, 29(8): 2806-2810. (孙志军,薛磊,许明阳,等.深度学习研究综述[J]. 计算机应用研究, 2012, 29(8): 2806-2810.
[11]HINTON G E, OSINDERO S, TEH YW. A fast learning algorithm for deep belief nets [J]. Neural Computation, 2006, 18(7): 1527-1554.
[12]BENGIO Y, LAMBLIN P, POPOVICI D, et al. Greedy layerwise training of deep networks [C]// NIPS06: Proceedings of the 2007 Twentieth Annual Conference on Neural Information Processing Systems. Cambridge: MIT Press, 2007, 19: 153-160.
[13]BEUGES C J C. A tutorial on support vector machines for pattern recognition [J]. Data Mining and Knowledge Discovery, 1998, 2(2): 121-167.
关键词:小波分析;小波神经网络;传感器;非线性校正
中图分类号:TN97 文献标识码:A文章编号:1009-3044(2007)05-11370-03
1 引言
传感器是各类控制系统和测量系统的核心部件。其精度直接影响到整个系统的性能。大多数传感器都容易受到环境的影响。同时,任何传感器自身存在无法避免非线性因素。因此,在实际应用中,对传感器进行非线性和环境影响的综合校正是必不可少的工作。因此有大量的工作关注传感器的修正问题。校正方法通常分为两类。一类是硬件电路法。另一类则是为传感器添加特殊的接口,对传感器的非线性和环境误差进行黑箱式的综合逆向建模。这一类校正的传统方法有:查表法,非线性AD编码和BP神经网络方法[4]。
小波神经网络是一种建立于小波分析理论基础之上,具有良好的多维函数逼近性能[2],并存在高效的算法对网络进行初始化和获得权值[1]的新型网络。在构建传感器综合修正模型中有着重要的价值。文献[5]给出了使用小波神经网络进行虚拟仪器非线性修正的模型,但在网络的训练算法中并未充分利用小波神经网络具有的特性对网络进行初始化和训练,其训练复杂度类似于BP网络。本文采用离散二进小波框架来构造小波神经网络,对热电偶进行修正。并采用高效的构造算法对网络进行初始化和权值训练。通过数值仿真实验,可知这种网络收敛速度较传统方法快,并避免了局部极值点。
2 传感器神经网络校正模型
假设,传感器的系统传输函数可写为:y=f(x,c1,c2,...,ck)。其中,输入传感器的变量为x。ck(k=1,2,...,k)为第K个环境参变量。在这里需要修正的因素存在于两个环节。第一是当环境参量一定时,即 恒定不变的情况下,对f(x,c1,c2,...,ck)的非线性进行修正。另一因素则是传感器输入x一定的情况下环境参变量对f(x,c1,c2,...,ck)输出产生的综合影响。如果能够找到函数f(x,c1,c2,...,ck)的接口函数
f-1(x,c1,c2,...,ck),也就能够实现传感器的精确读数。并能够根据环境变量对采集量测量的影响调整读数值。从而排除环境变量的干扰。一般情况下,系统的非线性是各个部分非线性综合作用的结果,情况复杂。接口函数f-1(x,c1,c2,...,ck)往往并不存在解析表达式;考虑到神经网络的非参数回归(Nonparametric Estimation)能力,可以通过高精度的测量系统采集校正数据,训练神经网络逼近f-1(x,c1,c2,...,ck),从而实现对传感器的综合校正(如图1所示[5])。实践中,一般以传感器输出t和K个环境参量作为小波神经网络的输入,待测物理量y为期望输出,对小波神经网络进行训练,当网络达到要求之后,网络推广训练样例的结果即可获得近似的传感器接口函数f-1(x,c1,c2,...,ck)。
图1 传感器神经网络校正原理
3 小波理论与小波神经网络
小波神经网络是建立在小波分析理论上的一种神经网络工具。函数ψ(t)∈L2(Rd)为径向函数,那么他的傅立叶变换 (ω)也为径向函数。设 (ω)=η(ω)(其中η唯一单值函数)。若式(1)满足,则函数ψ为一个小波函数。
如果函数ψ满足(1),则函数f∈L2(Rd)的连续小波变换可定义为:
同时f(x)的逆小波变换定义为:
其中a∈R+和t∈Rd分别被称为尺度系数和平移系数。
由于小波分解(变换)公式(2)将单变量函数f∈L2(Rd)映射到新的函数W(a,t)中,因此连续小波分解存在冗余。因此可以对其进行离散化处理而不必担心丢失目标函数的信息。在此我们仅仅给出离散小波逆变换公式:
式(4)同时定义了隐层节点传输函数为小波函数,输出层节点为线性神经元的小波神经网络。其中wi,ai,ti作为网络参数,取决于训练样本。
传统的小波神经网络采用BP法训练。这一训练算法确定尺度和平移系数ai,ti时,计算需要进行反传,即需要计算小波函数的导数。这一过程将消耗大量的时间。考虑到参数ai,ti计算的复杂性问题,如果能够在构造网络时,获得ai,ti的固定值,仅仅对参数wi进行调整,则可以使得训练时间大大缩短。
文献[1]给出了固定尺度和平移参数ai,ti的小波神经网络的一个构造方案,定义小波神经网络为式(5),其中w0为一常数,方便逼均值不为零的函数,实际应用过程中通常先移动目标函数使其平均值靠近零,从而可以忽略掉这一常数。
构造过程分为三步。
第一步:构造小波函数ψ扩张和平移后的集合:
其中xk为训练数据输入。由于W为无限集,不可能完全构造。考虑到一般的目标函数都支撑集有限,小波系数大部分是零元。因此,实际需要的小波集是有限的。于是,W的构造主要依据为目标函数的支集。计算各个参数,仅留下覆盖在目标函数支集上的小波,去掉无用的小波。根据离散二进小波的原理,设ai为2的n∈Z次方,t为ai-n・k,k∈Zd。采用了二进方式简化的W为:
确定n的范围后,精简过后的W包含的小波函数将大大减少。而参数n的范围确定较为复杂,我们将在后面详细讨论。
第二步:通过某种机制确定小波神经网络的隐层节点数目M。通常使用Akaike的最终预测误差条件(FPE)[4]:
npa为回归参数的数量。
第三步:从集合W中优化选择出M元集合I∈W,构成网络表达式:
其中wi为构造并初始化后的网络节点的权值。由于W中包含的小波数量较大,相应的状态空间无法进行全局的搜索。因此,文献[1]给出了启发式的选择算法。这一算法特点在于,每一次的选择都基于小波与目标函数的内积,即靠近程度。在选择“靠近”的小波后,使用Gramdchmidt正交算法对剩下的小波函数进行规范正交化处理。重复这一过程,直到选择出M个小波函数。同时,这一算法还给出了wi的初始值。
在小波集构造过程中,未能确定小波尺度函数范围的选择。根据小波理论,尺度参数范围的下限应该根据目标函数所属的多分辨空间来决定[6]。但在通常的情况下,目标函数属于哪一个多分辨空间并不能预先知道。我们只能够根据训练数据的采样情况来预估函数的多分辨空间。当尺度参数使小波函数支撑收缩到不能覆盖两个以上的数据采样点时,则可认为此时的小波函数与目标函数在同一个多分辨空间,可将此时的尺度参数作为下限。同时,文献[2]给出一种普通小波神经网络的尺度和平移参数的初始化建议,能够较为合理的初始化尺度和平移参数。在这里有一定的参考意义。综合考虑上述选择的启发式算法,我们给出一种改进到二进小波神经网络上的尺度函数范围选择方法。
考虑到所用二进小波。设所需逼近的函数区间为[a,b],选择最大的二进尺度的指数n为:
设训练样本点间隔为?驻x,则有二进小波尺度指数的最小值nmin为:
经过以上步骤对小波神经网络(6)构造完成之后,网络(6)已经高度逼近目标函数。如果逼近效果仍未能够达到所需的要求,可继续采用LMS算法对网络继续进行训练。在之后的应用举例中可以看出,小波神经网络构造后训练次数较普通的网络少。在很多情况下,网络构造完成后就已经达到了精度要求。因此,整个网络可以在可控的时间内实现收敛。
4 网络仿真试验
使用所介绍的网络对传感器数据进行修正,并在Matlab上进行仿真。
热电偶传感器是一种温度传感器。根据比较两端温差产生的热电效应对温度进行检测。表1给出了热电偶传感器的读数表。表2为热电偶在参考端温度不为0℃时的修正值。
表1 铂铑30-铂铑6热电偶(B型)分度表(ITS-90)
表2 B型热电偶参考端温度非0℃时的校正表(修正值加上所查的热电势)
从Matlab对应的图(图2)上可以看出,热电偶在一端温度恒定的情况下,传感器曲线存在非线性。采用读数修正表本质是对传感器进行查表折线修正,在两个精准值之间,读数往往误差较大。构造单输入单输出小波神经网络,对表1所示曲线进行逆向建模,逼近表1函数的逆函数。设横坐标为传感器输出,纵坐标为环境温度。可得出逆向函数的大致图像(图3)。修正表的图标描述见(图4)。
同时,参考端温度非零时需要调整读数。将参考端温度列为环境参量输入系统进行校正。由于校正与测量的过程是简单的加合过程,可采用简化的模型[4],即分开用两个网络进行建模,最终合成传感器读数。
修正采用单输入但输出的网络结构。神经元上的小波函数采用墨西哥草帽小波。
图4 B型热电偶参考端温度非0℃查表校正曲线
根据waveinfo函数提供的信息,墨西哥草帽小波的有效支撑为[-5,5]。训练采样点数量为19个,区间为[0,14],由Akaike FPE标准可得,用于逆向函数建模的网络隐层节点的数量为10。
由于函数在定义域上积分不为0。w0将会影响逼近。为了获得良好的逼近效果。需要函数积分尽量靠近0。一个简单的做法是先将逆函数延纵坐标下移w0。即下移到函数重心位置,本例中w0=11。移动过后,函数的积分接近于0。最终重构时,再将这一常数加入网络。
需要注意的是,逆向函数训练节点在定义域上步进长度不均匀。为了不丢失信息,在构造W时,以最小步长为?驻x基准构造网络。由式(9),(10)计算,最终获得二进小波函数集:
确定式(12)中的参数kn,使得每一个小波函数的支集与目标函数支集相交,完成对W的构造。从图5中可看出小波函数集W包含44个小波,同时显示了每一个小波与目标函数的相关程度。
图5 小波函数元素与目标函数规内积示意图
根据启发式选择算法经过一系列的选择和正交归一化,最终获得权值集合wi。在采样点上的回归效果如图6,均方误差值为0.0022(相对误差0.016%)。可在这一基础上对网络采用LMS算法进行进一步训练,使网络均方误差小于10e-3。
图6 网络逼近效果
网络推广能力是一个重要的问题。重新设定传感器输出的电压,从0mV到13mV均匀步长为网络输入。输入网络对数据进行验证。最终逼近如图7所示。
图7 网络推广效果
与上述情况类似,构造环境参数修正网络。需要注意的是,为了使得逼近效果更佳,可以对数据进行对称延拓,根据数据表,在最左边增加数据点:(-10,0.002),以获得对称训练样例。计算网络节点为4时误差达到最小化。均方误差为:1.2499e-005(但是如果去除添加的点,余下数据逼近的均方误差为:8.5028e-006)修正表的网络逼近结果以及推广效果如图8(小于0的延拓数据需要忽略)。
图8 修正曲线逼近及推广效果图
5 结论
通过以上的神经网络仿真实验可以看出,这种快速收敛的小波神经网络能够在可控的范围内收敛到所需的最优值。并且,构造过程与问题规模大小成多项式复杂度。同时,小波神经网络的高度非线性模型,使得这一网络能够应用于任何一种传感器的非线性校正,而无需了解传感器本身的原理。考虑到需要进行统一尺度的小波网络构建,本文没有采用正交的小波神经元。理论证明,正交小波在权值的确定上有着更加高效的算法,并有着更为良好的逼近性能。有待进一步研究。
参考文献:
[1]Q. Zhang. Using Wavelet Network in Nonparametric Estimation [J]. IEEE trans., neural networks, 1997(8),2:227-236.
[2]Q. Zhang, A. Benveniste.Wavelet Networks[J].IEEE trans., neural networks,1992(13),6:889-898.
[3]Shengtun Li,Shuching Chen.Function Approximation using Robust Wavelet Neural Networks [J]. ICTAI2002.2002:483-488.
[4]Jagdish Chandra Patra, Alex C. Kot, and Ganapati Panda. An Intelligent Pressure Sensor Using Neural Networks [J]. IEEE trans. Instrum., Meas., Vol. 49, No. 4, Aug 2000.
[5]谭超,许泽宏,李维一.基于小波神经网络建立虚拟仪器非线性软校正模型[J].传感器与仪器仪表.2005,13(1):157-159.
[6]唐远炎,王玲.小波分析与文本文字识别[M].北京:科学出版社,2002.
关键词:ZISC78;径向基函数神经网络(RBFNN);实时;预报
1引言
神经网络是近年来得到广泛关注的一种非线性建模预报技术。它具有自组织、自学习、自适应和非线性处理、并行处理、信息分布存储、容错能力强等特性,对传统方法效果欠佳的预报领域有很强的吸引力。基于神经网络的非线性信息处理方法已应用于军事信息处理及现代武器装备系统的各个方面,并有可能成为未来集成智能化的军事电子信息处理系统的支撑技术。该技术在一些先进国家已部分形成了现实的战斗力。
船舶在波浪中航行,会受到风、浪和流的影响,因而将不可避免地发生摇荡运动。严重的摇荡会使船员工作效率下降、物品损坏、军舰的战斗力下降。如果能够预知未来一段时间船舶的运动情况,不仅有利于尽早采用先进控制算法控制舰载武器平台隔离船舶运动的影响,使其始终稳定瞄准目标,而且还可获得未来一个海浪周期内的船舶运动情况,以研究船载武器上层的控制策略,从而提高火力密度,因此,有必要研究在海浪中具有一定精度的海浪中船舶运动的短期预报。此外,如能有效准确地预报船舶的横摇运动,对于提高船舶的耐波性和适航性也有重要意义。
国内外学者也将神经网络用于船舶运动预报研究,但往往没有考虑实时性等实现问题,因而不能实用化。神经网络实现技术是神经网络研究的一个重要方面。神经网络实现可分为全硬件实现和软件实现两种。目前神经网络的实现还主要以软件模拟为主,由于现行的冯诺曼计算机体系结构不能实现并行计算,因而神经网络软件的实时应用还受到一定限制。
目前,一些著名集成电路制造公司如Intel、Mo-torola、松下、日立、富士通等均已推出自己的模拟或数字神经网络芯片,这些芯片无论在网络规模还是运行速度上都已接近实用化的程度,因而给神经网络应用的发展以极大的推动。由于舰载武器系统,需选用具有在片学习功能的神经网络芯片,即将网络训练所需的反馈电路及权值存储、计算和修正电路都集成在了一个芯片,因而可实现全硬件的、具有自学习能力的神经网络系统,也可以说,这是一种具有自适应能力的神经网络。
2ZISC78的功能及工作原理
ZISC78是由IBM公司和Sillicon联合研制的一种低成本、在线学习、33MHz主频、CMOS型100脚LQFP封装的VLSI芯片,图1所示是ZISC78的引脚排列图。ZISC78的特点如下:
内含78个神经元;
采用并行结构,运行速度与神经元数量无关;
支持RBF/KNN算法;
内部可分为若干独立子网络;
采用链连接,扩展不受限制;
具有64字节宽度向量;
L1或LSUP范数可用于距离计算;
具有同步/异步工作模式。
2.1ZISC78神经元结构
ZISC78采用的神经元结构如图2所示,该神经元有以下几种状态:
(1)休眠状态:神经网络初始化时,通常处于这种状态。
(2)准备学习状态:任何时侯,神经网络中的神经元都处于这种状态。
(3)委托状态:一个包含有原型和类型的神经元处于委托状态。
(4)激活状态:一个处于委托状态的神经元,通过评估,其输入矢量处于其影响域时,神经元就被激活而处于激活状态。
(5)退化状态:当一个神经元的原型处于其它神经元类型空间内,而大部分被其他神经元类型空间重叠时,这个神经元被宣布处于退化状态。
2.2ZISC78神经网络结构
从图3所示的ZISC78神经网络结构可以看出,所有神经元均通过“片内通信总线”进行通信,以实现网络内所有神经元的“真正”并行操作。“片内通信总线”允许若干个ZISC78芯片进行连接以扩大神经网络的规模,而这种操作不影响网络性能。
ZISC78片内有6bit地址总线和16bit数据总线,其中数据总线用于传输矢量数据、矢量类型、距离值和其它数据。
2.3ZISC78的寄存器组
ZISC78使用两种寄存器:全局寄存器和神经元寄存器。全局寄存器用于存储与所有神经元有关的信息,每片仅有一组全局寄存器。全局寄存器组中的信息可被传送到所有处于准备学习状态和委托状态的神经元。神经元寄存器用于存储所属神经元的信息,该信息在训练学习操作中写入,在识别操作中读出。
2.4ZISC78的操作
ZISC78的操作包括初始化、矢量数据传播、识别和分类等三部分。
初始化包括复位过程和清除过程。
矢量数据传播包括矢量数据输入过程和神经元距离计算过程。神经元距离就是输入矢量和神经元中存储的原型之间的范数。通常可选L1范数或Lsup范数:
其中,Xi为输入矢量数据,Xs为存贮的原型数据。
对于识别和分类,ZISC78提供有两种可选择的学习算法RBF和KNN。其中RBF是典型的径向基函数神经网络。在该RBF模式下,可输出识别、不确定或不认识的状态;KNN模式是RBF模式的限制形式,即在KNN模式下,新原型的影响域总被设为1,输出的是输入向量和存储原型之间的距离。需要指出的是,ZISC78具有自动增加或减小神经元个数以适应输入信号的分类和识别功能,神经元个数的最大值和最小值在全局寄存器组中设定。
2.5ZISC78的组网
一个ZISC78芯片内可以通过寄存器操作定义若干个独立的网络。若干个ZISC78芯片通过层叠可以组成一个更大的神经网络,组网芯片数量没有限制,小于10个ZISC78组网时,甚至连电源中继器件也不需要。所以,ZISC78具有最大的灵活性,能够满足不同的需要。
3仿真实例
为了验证ZISC78用于船舶运动实时预报的精度,本文对径向基函数神经网络预报进行了仿真,图4给出了基于径向基函数神经网络和船舶运动惯导实测信号预报的0.3秒(15步)误差曲线图。
通过以惯导实测数据ZHX_lg.dat为例预报0.3秒(15步)以后的船舶运动,作者运用相空间重构理论已经判断出本数据为非线性信号。
该仿真的最大预报误差方差为6.4666e-004,该数据可以满足战技指标。
为降低神经网络的冗余连接及不必要的计算代价,将量子免疫克隆算法应用于神经网络的优化过程,通过产生具有稀疏度的权值来优化神经网络结构。算法能够有效删除神经网络中的冗余连接和隐层节点,并同时提高神经网络的学习效率、函数逼近精度和泛化能力。该算法已应用于秦始皇帝陵博物院野外文物安防系统。经实际检验,算法提高了目标分类概率,降低了误报率。
关键词:神经网络;量子免疫克隆算法;目标分类;冗余连接;网络优化
中图分类号: TP273
文献标志码:A
Quantum-inspired clonal algorithm based method for optimizing neural networks
Abstract:
In order to reduce the redundant connections and unnecessary computing cost, quantum-inspired clonal algorithm was applied to optimize neural networks. By generating neural network weights which have certain sparse ratio, the algorithm not only effectively removed redundant neural network connections and hidden layer nodes, but also improved the learning efficiency of neural network, the approximation of function accuracy and generalization ability. This method had been applied to wild relics security system of Emperor Qinshihuangs mausoleum site museum, and the results show that the method can raise the probability of target classification and reduce the false alarm rate.
Key words:
neural network; quantum-inspired clonal algorithm; target classification; redundant connection; network optimization
0 引言
神经网络已经被广泛地应用于模式分类、函数逼近、信号预测等各种领域,是近年来的研究热点之一[1-2]。在应用过程中,研究人员发现,当神经网络的规模过大会产生连接数量冗余大、计算代价过高的问题,降低了大规模神经网络的实用性。针对此问题,研究人员提出了多种方法在保持神经网络的前提下优化神经网络的结构和参数权值。Leung等[3-4]改进了传统的遗传算法(Genetic Algorithm, GA)并将其应用于神经网络的结构和权值优化过程,利用遗传算法的快速收敛性来提高神经网络的学习速度,其缺点在于当目标函数维数过大时容易陷入局部最优。Xiao等[5]使用混合优点(Hybrid Good Point, HGP)优化前向神经网络的参数和结构,避免权值陷入局部最优,但其对网络结构的优化没有达到最优。Shu等[6]提出正交模拟褪火(Orthogonal Simulated Annealing, OSA)算法, 使用褪火算法和正交算法的优点来同时优化神经网络结构和参数,其算法收敛速度快、鲁棒性好,缺点则在于计算代价较大。杜文莉等[7]提出了使用量子差分进化(Cooperative Quantum Differential Evolution, CQGADE)算法来优化神经网络权值,使用量子遗传算法优化网络结构和隐层节点数,算法综合了量子遗传算法和量子差分算法的优点,收敛速度快,但其缺点在于需要同时协同两种算法的优化结果,算法复杂度较高,且容易陷入局部最优。Tsai等[8]提出混合田口遗传算法(Hybrid Taguchi Genetic Algorithm, HTGA),将传统的GA与Taguchi方法结合起来,使得算法具有鲁棒性好、收敛性快等优点,但其缺点在于获得最优解的计算代价较大。
量子免疫克隆算法[9-12](Quantum-inspired Immune Clonal Algorithm, QICA)也称为量子遗传算法(Quantum Genetic Algorithm, QGA),其将量子搜索机制和免疫算法克隆选择原理相结合,利用量子编码的叠加性和随机性构造抗体,利用遗传算法的克隆操作产生原始种群和克隆子群实现种群扩张,使搜索空间扩大,提高了局部搜索能力;同时借助全干扰交叉操作避免陷入局部最优。QICA采用了多状态量子比特编码方式和通用的量子旋转门操作, 引入动态调整旋转角机制和量子交叉[11]。QICA在组合优化问题中具有良好的表现。
针对上述问题,提出了使用量子克隆免疫算法对神经网络的结构和连接权值同时进行优化,通过产生具有一定稀疏度的连接权值对网络隐层数量和连接权值进行优化,提高了算法的效率和收敛速度,避免了算法陷入局部最优。
1 带开关权值的神经网络模型
在经典的神经网络理论中,网络结构在初始化后便不再变动,仅通过权值的变化来计算产生结果,这种算法增加了神经网络的结构复杂性,在实际应用中增加了计算结果的代价。Leung等[3-4]提出了带开关权值的神经网络,通过调整开关的通断就能调整神经网络的结构和连接数量,从而减少计算代价。带开关权值的神经网络模型如图1所示[7]。
2.2 权值计算及优化方法
根据量子克隆免疫理论,将神经网络权值计算及优化过程分为以下四个过程。
2.2.1 权值抗体初始化
量子克隆免疫算法是基于量子计算和遗传算法组成的,其抗体的编码方式采用量子比特编码。一个抗体中的量子位的状态是不确定的,可以为0或1,其状态表示为式(5):
3.1 算法复杂度分析
量子克隆免疫算法的实质是通过量子理论的随机特性提供丰富的种群数量,并通过使用遗传算法对种群进行淘汰和进化,因此其算法的复杂度等于种群生成算法的复杂度:假设神经网络有x个输入,其隐层节点数量为N,输出为y,则网络中的输入与隐层节点间的连接权值ω的数量为:x*N,隐层节点与输出层的连接权值v的数量为:N*y。种群生成需要对所有节点进行权值初始化,并将随机位置的n(nN)个节点的权值设置为0, 其算法复杂度为O(n2)。而克隆免疫算法在种群克隆及抗体选择过程中使用遗传算法,因此其算法的复杂度与传统遗传算法相同,其算法复杂度也为O(n2)。因此,使用量子免疫克隆的神经网络优化算法的复杂度为O(n2)。
3.2 非线性函数逼近
选取复杂交互非线性函数(Complicated Interaction Function,CIF):
其中0
选取样本700组,其中500组用于训练,其余200组用于检测性能。神经网络的初始隐层神经元设置为20个,初始网络结构为:2-20-1,初始连接权值为随机值。在此条件下验证不同稀疏度条件下对CIF的二维逼近效果如图3所示。
图3显示随着稀疏度的不断降低,神经网络的逼近能力有所减弱,逼近误差则逐渐增大。这主要是因为神经网络中的连接权值数量降低,造成神经网络的适应性差。具体逼近效果见表2。
从表2中可以看出,隐层节点数量直接影响着神经网络的性能。高稀疏度条件下的计算量大,但逼近精度高;低稀疏度条件下的计算量小,但逼近精度较差。实验表明当稀疏度大于0.6时,算法的逼近精度高于90%,优化后的网络具有较好的非线性逼近能力。当神经网络隐层节点数量低于12时逼近精度大幅下降,说明此时神经网络处理信息的能力也随之大幅减弱,隐层节点的最合适的数量为12~14个,这也符合文献[14]的实验结果。
图4为不同稀疏度下,算法适应度的收敛情况。可以看出量子克隆免疫算法具有很好的收敛特性,算法收敛速度很快,能够在很短的进化次数内收敛至极值,且稀疏度越低,神经网络的连接权值数量越少,算法收敛速度越低,最优适应度越差。
表3为相同条件下,不同算法的最优计算结果,包括目标分类的准确度、隐藏层节点数量等。可以看出,当稀疏度高于0.8时,本文算法收敛性和适应度均优于混沌粒子群(Chaotic Particle Swarm Optimization,CPSO)[15]、粒子群优化算法(Particle Swarm Optimization,PSO)[16]、混合田口遗传算法[Hybrid Taguchi-Genetic Algorithm,HTGA][8]等其他算法,说明算法具有很好的收敛速度、寻优精度和鲁棒性。
3.3 微地震信号目标分类
实验场地选择在秦始皇兵马俑博物馆内K9901号坑旁。所有传感器节点沿公路一侧直线部署,距离公路1m左右。可能产生地震波的活动物体包括人员行走、机动车和挖掘活动。将采集到的微地震信号进行滤波、分帧、特征提取等处理后输入至神经网络进行模式识别。
系统对传感器采集到的数据进行分帧,并使用功率谱二次分析[17]算法对其进行处理,最后将经过预处理的数据输入至神经网络对其进行分类。根据其活动特点,将输出目标分为三类:人员活动、挖掘活动以及机动车辆活动。传感器采集到的三类活动的经典波形如图5所示。
表6中给出了算法的最优计算结果,包括不同稀疏度条件下神经网络的隐藏层节点数量、最优适应度以及分类准确率等。可以看出,算法能够有效减少冗余的隐藏层节点数量,并降低节点连接数量。算法的稀疏度越高,其适应度越好,其分类的准确性越好,但稀疏度高带来的则是计算代价增大、计算复杂度增加。当稀疏度低于0.7时,算法的适应度变差,目标的识别率为90%,在实际应用过程中带来了误判率较高的问题,降低了实用性。因此在秦始皇帝陵博物院野外文物安防系统中使用了稀疏度为0.7的算法对模式识别的神经网络进行优化。
4 结语
本文提出了基于量子免疫克隆算法的神经网络优化算法,该算法在训练神经网络优化权值的同时删除了冗余连接和多余的隐层节点,实现了神经网络结构和网络权值的优化。通过经典非线性函数逼近和目标识别检验,算法能够有效地优化神经网络,提高神经网络的优化效率,减少计算复杂度。使用优化后的神经网络已经用于秦始皇帝陵博物院野外文物安防系统中。
参考文献:
[1] QIAO H, ZHOU Y,SHAO N, et al. Software reliability prediction based on learning vector quantization neutral network[J]. Journal of Computer Applications, 2012,32(05):1436-1438.)(乔辉,周雁舟,邵楠,等.基于学习向量量化神经网络的软件可靠性预测[J].计算机应用,2012,32(5):1436-1438.)
[2] PAN Y, DENG Y, ZHANG Q, et al. Deterministic prediction of wavelet neural network model and its application[J]. Journal of Computer Applications,2013, 33(4):1001-1005.(潘玉民,邓永红,张全柱,等.小波神经网络模型的确定性预测及应用[J].计算机应用,2013,33(4):1001-1005.)
[3] LEUNG H F,LAM H F, LING S F, et al. Tuning of the structure and parameters of neural network using an improved genetic algorithm[C]// Proceedings of the 27th Annual Conference of IEEE Industrial Electronics Society. Piscataway: IEEE,2001:25-30.
[4] LEUNG H F, LAM H F, LING S H, et al. Tuning of the structure and parameters of a neural network using an improved genetic algorithm[J]. IEEE Transactions on Neural Network,2003,14(1):79-88.
[5] XIAO C, CAI Z, WANG Y, et al. Tuning of the structure and parameters of a neural network using a good points set evolutionary strategy[C]// Proceedings of the 9th International Conference for Young Computer Scientists. Piscataway: IEEE, 2008:1749-1754.
[6] SHU L, HO S Y, HO S J. Tuning the structure and parameters of a neural network using an orthogonal simulated annealing algorithm[C]// Proceedings of the 2009 Joint Conferences on Pervasive Computing. Piscataway: IEEE,2009:789-792.
[7] DU W, ZHOU R, ZHOU L, et al. Cooperative quantum differential evolution algorithm based method for optimizing neural networks[J].Journal of Tsinghua University: Science and Technology, 2012,52(3):331-335.(杜文莉,周仁,赵亮,等. 基于量子差分进化算法的神经网络优化方法[J].清华大学学报:自然科学版,2012,52(3):331-335.)
[8] TSAI J, CHOU J, LIU T. Tuning the structure and parameters of a neural network by using hybrid Taguchi-genetic algorithm[J]. IEEE Transactions on Neural Network, 2006,17(1):69-80.
[9] LI Y, JIAO L. Quantum-inspired immune clonal algorithm and its application[C]// Proceedings of the 2007 International Symposium on Intelligent Signal Processing and Communication Systems. Piscataway: IEEE, 2007:670-673.
[10] JIAO L, LI Y, GONG M,et al. Quantum-inspired immune clonal algorithm for global optimization[J]. IEEE Transactions on Systems, Man and Cybernetics, Part B: Cybernetics, 2008,38(5):1234-1253.
[11] ZHOU C, QIAN F. Improvement of quantum genetic algorithm and its application[J]. Journal of Computer Applications, 2008,28(2):286-288.(周传华,钱峰.改进量子遗传算法及其应用[J].计算机应用, 2008,28(2):286-288)
[12] ZHOU Q, JIANG S, ZHAO X, et al. Improved quantum genetic algorithm and its application in test data generation[J]. Journal of Computer Applications,2012,32(2):557-560.(周绮,姜淑娟,赵雪峰,等.改进的量子遗传算法及其在测试数据生成中的应用[J].计算机应用,2012,32(2):557-560.)
[13] QIAO J,LEE Y G, SCOTT D S, et al. Self-organizing radial basis function network for real-time approximation of continuous-time dynamical systems[J]. IEEE Transactions on Neural Networks,2008,19(3):460-474.
[14] HAN H, QIAO J, BO Y, et al. On structure design for RBF neural network based on information strength[J]. Acta Automatica Sinica, 2012,38(7):1083-1090.(韩红桂,乔俊飞,薄迎春,等.基于信息强度的RBF神经网络结构设计研究[J].自动化学报, 2012,38(7):1083-1090.)
[15] ZHAO L. Fuzzy identification and neural networks learning based on cooperative PSO algorithm[D]. Shanghai: Shanghai Jiao Tong University,2008.(赵亮.基于协同PSO算法的模糊辨识与神经网络学习[D].上海:上海交通大学,2008.)
关键词:BP神经网络 硬盘播出系统 电平诊断 人工神经网络
中图分类号:TN948.4 文献标识码:A 文章编号:1007-9416(2012)07-0070-04
Application And Implementation of Level Diagnosis In Hard Disk Broadcasting System Based on BP Neural Network
Zeng Qiwei
(Television Station of Nan’an District, Chongqing, 400060, China)
Abstract:In this paper the diagnosis classification problems for hard disk broadcasting system are solved using BP(Back Propagation)neural network on MATLAB condition. First, based on BP neural network, a fault diagnosis model is proposed. Second, the realization principle of level diagnosis is analyzed based on set structure. Finally, the method for solving the level diagnosis with BP neural network is investigated. In conclusion: not only the simulation effect is obviously for the solution of level diagnosis problems on MATLAB condition based on BP neural network, but also facilitates the engineering technology application.
Key Words:BP neural network hard disk broadcasting system; level diagnosis artificial neural network
硬盘播出系统是电视播出单位技术核心,其中又以电平值为重要的参数指标。系统的信息处理能力关系着视音频质量的好坏,电平诊断方法是解决此问题的关键。电平诊断的目的是监测系统各重要结点的输入输出电平值,以该值作为参考判断故障结点环节。正是由于电平诊断的必要性,许多致力于电平诊断的方法应运而生。随着计算智能的兴起,出现了一些有着模拟计算、全局分布、并行处理等的新技术,基于联结主义(connectionism)的人工神经网络就是这样一种技术,它具有良好的自组织性和自适应性,具备处理各类非线性系统的数值分析功能。基于人工神经网络的电平诊断的核心是模式识别与分类,人工神经网络能根据自身结构特性对电平值作分类处理,使其与参考故障类对比,从而得出诊断结果。BP神经网络是一种重要的人工神经网络模型,它是一种多层前向反馈神经网络,其权值的调整采用反向传播的学习算法,它可实现从输入到输出的任意的非线性映射,已被广泛应用在模式识别与分类领域。
1、BP神经网络的工作原理
1.1 BP神经元特性
用表示第i个输入信号,表示第i个输入信号到神经元之间的权值或简称权。由生物神经元在轴突上产生兴奋或抑制脉冲响应的特性使人工神经元对输入信号与权值进行向量相乘,得出总该神经元的网络输入:
1.2 激活函数的选择
激活函数主要有线性函数、非线性斜面函数、阀值函数和Logistic函数等。由于电平诊断的结果是一组二进制组合,所以,BP神经网络的隐藏层激活函数采用logistic函数,而输出层激活函数采用线性函数。
Logistic函数的一种简单公式为:
线性函数为:
式中,a,b为常数。a代表放大指数,b代表偏移量。
1.3 实现电平诊断的BP神经网络模型与算法
1.3.1 BP神经网络模型
为实现电平值的输入与期望输出值的并行处理,BP神经网络采用层次结构模型。该模型是两层神经网络,其中一层为隐藏层,一层为输出层(图1)。
设输入向量为:
经过变换后的输出向量为:
设该BP神经网络的期望输出向量为Y,则输入样本集为{ (X,Y) | X为输入向量,Y为X 对应的期望输出向量}
1.3.2 BP神经网络学习算法
BP神经网络算法步骤如下:
(1)用不同的小伪随机数初始化输出层和隐藏层的权值;
(2)初始化精度控制参数ε,学习率α;
(3)循环控制参数E=ε+1;
循环最大次数M;
循环次数控制参数N=0;
(4)while E>ε and N
N=N+1;E=0;
关键词:粒子群;神经网络;私家车保有量;权值和阈值
中图分类号:TP183文献标识码:A文章编号:1009-3044(2011)19-4676-03
Total Number of Private Cars Prediction Based on Entropy-based PSOBP Neural Network
YANG Hua, ZHOU Rui
(School of Computer Science and Technology, China University of Mining and Technology, Xuzhou 221116, China)
Abstract: In order to solve the existing problems such as the initial weights and threshold-sensitive, easily falling into local minima and slow convergence in the total number prediction of private cars by using BP neural network, this paper proposes the use of entropy-based particle swarm optimization algorithm BP neural network model. And we will use the model to predict the amount of private cars study and compare its results with the traditional BP algorithm and simulated annealing method. The results show that the new model is effective to prevent the network may fall into local minima and significantly improve the speed and accuracy of neural network model.
Key words: particle swarm; neural network; private car ownership; weights and threshold value; entropy; simulated annealing
据统计,截止到2008年底,我国的私家车量约为3501万辆,占全国汽车保有量的60%以上。私家车数量的增多给我国带来了环境污染和能源短缺等多种问题,私家车保有量的预测已经成为当下研究的一个重要问题。影响私家车保有量主要因素有:人均国内生产总值,全社会消费品零售总额,全社会固定资产投资总额, 运营公交车辆数,公交营运总数,公交车营运总里程,道路总长,居民人均可支配收入,居民储蓄款余额,汽油(93号)年均价等。不难看出,影响私家车保有量的因素较多,而且各影响因素随年份的变化而变化,各因素与私家车保有量之间存在非线性关系。因此,该文以1996年到2008年的私家车保有量数据的基础上,将利用基于熵值法的PSOBP神经网络算法对私家车保有量进行预测,仿真结果证明该模型具有较好的效果。
1 背景概述
当下,常用的预测的方法有[1]:时间序列法、相关分析法、回归分析法、专家系统预测法等。相对传统的预测方法,人工神经网络[2]因其具有大规模分布式处理、非线性、自组织、自学习、联想记忆等优良特性,是目前进行预测的较为先进的手段。但是,单纯的神经网络有许多缺陷,如训练速度慢、易陷入局部极小点等。
粒子群优化算法(Particle Swarm Optimization,PSO)最早于1995 年由Kenney与 Eberhart[3]提出,该算法源于对鸟群捕食的模拟逐渐演化而来的随机化搜索方法。该算法利用种群中的个体对信息的共享,自适应地调整搜索方向,具有局寻优能力,且流程简单实现、无需复杂的调整。针对BP神经网络存在收敛速度慢和易陷入局部极小值等缺陷,该文利用PSO的上述特点,提出一种基于PSO的BP网络预测方法。该方法的思想为:利用PSO训练BP网络的权值和阈值,综合BP神经网络可以在大量的数据中提取规律和PSO全局搜索的优点对私家车保有量进行预测。
2 模型的建立及计算过程
2.1 模型输入变量的选取
该文使用的私家车保有量的数据为1996年到2008年的数据(数据均来自中国统计年鉴)。由于影响私家车保有量的因素很多,但其中的一些因素对于预测来说并不能起到关键的作用,所以该文先利用熵值法[4]来确定各个影响因素的权重,以确定主要的影响因素。
在信息论中,熵是对不确定性的一种度量。信息量越大,不确定性就越小,熵也就越小;信息量越小,不确定性越大,熵也越大。根据熵的特性,我们可以通过计算熵值来判断一个事件的随机性及无序程度,也可以用熵值来判断某个指标的离散程度,指标的离散程度越大,该指标对综合评价的影响越大。
熵值法确定权重的步骤如下:
1) 按照公式1计算第j项指标下第i年私人汽车保有量占该指标的比重:
(1)
2) 第j项指标的熵值可由公式2得出
(2)
3) 计算第j项指标的差异系数。对于第j项指标,指标Xij的差异越大,对私人汽车保有量的作用也就越大,熵值就越小。以公式3来定义差异系数:
(3)
4) 按公式4求权重
(4)
于是可以得到各个指标的权重,如表1所示。
从表1中可以得到影响私家车保有量的各因素的影响程度,以权重=0.1为临界条件来选择影响私人汽车保有量的主要因素为:居民储蓄款余额、全社会消费品零售总额、公交车营运总里程、道路总长。
2.2 PSO算法原理
在PSO算法中,优化问题的每个解都是搜索空间中的 “粒子”,粒子的位置代表问题的潜在解,每个粒子都有一个适应值和一个速度,其中适应值决定被优化函数,速度决定粒子运动的方向和距离。即算法初始化为一群随机解,通过迭代寻优来更新自己。更新的过程中需要跟踪两个极值,分别是粒子本身所找到的最优解pbest和整个种群目前找到的最优解gbest。粒子根据以公式(5)和(6)更新自己的速度和位置:
(5)
(6)
式中d=1,2, …,n; i=1,2, …,m,m,n为搜索空间维数,m为种群粒子数;t为当前进化代数,w为惯性权重,r1,r2 为分布于[0,1]之间的随机数;c1,c2为粒子的加速常数,称为学习因子。此外,为使粒子速度不致过大,可设定速度上限Vmax,即当式5中Vid>Vmax时,取Vid=Vmax,当Vid
2.3 PSOBP模型的核心思想
研究表明对BP模型的初始权阈值先采用一定的策略进行优化,然后再采用BP算法进行二次优化确定最终权阈值可以提高模型的运行效率[5]。因此,该文将粒子群优化算法与BP算法融合,利用粒子群算法寻找模型的初始权值与阈值,然后再采用改进的算法得到模型最终的权值与阈值,并利用此值进行预测。这样构造的模型可以克服单纯BP神经网络学习稳定性差、可靠性低与易陷入局部极小等缺点。
2.4 参数选择及计算
PSO-BP算法模型对汽车保有量进行预测的步骤如下:
1) 确定粒子群规模,即粒子的个数m和维度n。粒子个数m=30。设模型结构为 M-N-1,其中,M为输入结点数,N为隐层结点数,1为输出结点数。
2) 设置惯性权重w的值。惯性权重的值比较重要,它会影响到粒子的全局搜索和局部搜索的能力。该文采用线性递减权值策略[6],如式(7)所示,它能使w由wini随迭代次数线性递减到wend。
W(t)=(wini-wend) ×(Tmax-t)/Tmax+wend (7)
式中,Tmax―最大进化代数,t―当前进化代数。wini―初始惯性的权值,wend―迭代至最大代数时的惯性的权值。其中wini =0.7,wend =0.3,Tmax =250。
3) 设置学习因子c1与c2的值。c1和c2分别代表将每个粒子推向pbest和gbest位置的统计加速项的权重,它们可以用来调整粒子自身经验和社会群体经验。 c1和c2是固定常数,该文中取c1= c2= 2。
4) 确定适应度函数。该文选择的粒子适应度函数为:
(8)
式中:N―训练的样本数,y(ireal)―第i个样本的期望值,yi―第i个样本输出值。算法迭代停止时适应度最低的粒子对应的位置为问题所求的最优解。
5) 初始化速度与位置。BP神经网络的权值与阈值一般初始化为[-1,1]之间的随机值, 故可将粒子群中每个粒子位置的参数取为[-1,1]之间的随机值。
6) 计算适应度。根据公式(8)计算适应度。
7) 更新极值与速度。将种群当前的个体适应度值与迭代前的个体适应度值相比较, 若当前值更优,则替代迭代前的值,并保存当前位置为pbest,否则不做改变。同样,对于gbest来说,若当前适应度值比历史全局最优适应度值更优,则当前适应度值为最优,并保存当前位置为gbest。对于粒子的速度可以根据pbest与gbest的值,利用公式9[7]进行速度更新,其中r3是[0,1]之间的随机数。
(9)
8) 更新解。根据步骤7得到的极值与速度调整BP神经网络的权值与阈值即可对解进行更新。
此时,若训练误差达到期望误差(取为0.001)或迭代次数达到最大(250代)且满足相应的条件,则得到的对应值即为最优解,否则,返回步骤7继续迭代。将最优解代入BP神经网络模型中进行二次训练,形成改进的私家车保有量预测模型。
3 实验结果分析
3.1 数据来源及预处理
根据上述的熵值法分析后,BP神经网络的4个输入变量分别为:居民储蓄款余额、全社会消费品零售总额、公交车营运总里程、道路总长。将原始数据利用式10进行归一化[8]:
(10)
得到如表2的归一化后的10组样本数据。
3.2 预测结果的分析
将表2中的10组数据作为学习样本来训练网络,输出为私家车的保有量。该预测算法采用单隐层BP神经网络。输入样本为4维向量,因此可确定输入层有4个神经元。输出数据只有一个,所以输出层只有1个神经元。经过多次试验,得到隐含层节点数为9个。即神经网络的结构为4-9-1。
通过使用Matlab神经网络工具箱进行预测[9],将PSOBP算法和传统BP算法以及模拟退火方法做比较,该文的基于熵值法的粒子群优化的神经网络的运行时间为27.785s,训练次数、时间较之于传统BP算法和模拟退火法有所减少(见表3) 。图1的结果也表明PSOBP算法的预测精度优于传统的BP算法和模拟退火法。除此之外还将PSO-BP算法和传统BP算法以及模拟退火方法三种算法对于2005-2008年的私家车保有量预测值绘制成表(表4),相对误差和平均误差数据清晰可见。由此可知,粒子群算法与BP算法相合是十分有效的算法,其在一定程度上提升了传统BP神经网络的预测精度,且准确度明显高于模拟退火法和传统BP神经网络算法。
4 结论
该文提出了一种基于熵值法的利用PSO优化的BP神经网络的预测方法并应用于私家车保有量的预测当中。实验测试结果表明新的预测方法对于私家车保有量的预测有更好的效果,对建立其他相关问题的预测模型有一定的参考价值。
参考文献:
[1] 杨居义.基于BP神经网络的地震预测研究[J].微电子学与计算机,2008,25(10):129-133.
[2] 罗晓曙.人工神经网络理论[M].桂林:广西师范大学出版社,2005:31-32.
[3] Eberhart R C, Kennedy J. A new optimizer using particles swarm theory[C]. //Proceeding of the Sixth International Symposium on Micro Machine and Human Science. Nagoya, Japan: IEEE Service Center, Piscataway, 1995: 39-43.
[4] 邱菀华.管理决策与应用熵学.[M].北京.机械工业出版社,2002:276-282
[5] 岳琳,张宏伟,王亮.粒子群优化算法在城市需水量预测中的应用[J].天津大学学报,2007,40(6):742-746.
[6] Shi Y H, Eberhart R C. A Modified Particle Swarm Optimizer[C].In: IEEE International conference of Evolutionary Computation, Anchorage, Alaska, 1998: 69-73.
[7] 曹红珍,胡亮.具有随机附加项的PSO改进算法[J]. 计算机工程与设计,2007,28(5):2245-2247.
[8] 周开利,康耀红.神经网络模型及其 MATLAB仿真程序设计[M].北京:清华大学出版社,2005.
BP神经网络基于误差反向传播算法的多层前向神经网络。其中BP网络是目前应用最为广泛的神经网络模型之一。网络隐节点过多会导致算法存在过拟合现象,影响了网络的泛化能力,使得网络最终失去实用价值。在满足精度的要求下,逼近函数的阶数越少越好,低阶逼近可以有效防止"过拟合"现象。在实际应用中,还没有成熟的方法确定网络的隐节点,隐节点的确定基本上依赖经验,主要式采用递增或递减的试探方法来确定网络隐节点[1]。
2 遗传算法
遗传算法是自然淘汰、遗传选择的生物进化过程的计算模型,它是基于自然遗传、选择变异等生物机制的全局概率搜索算法。其应用优势在于处理传统搜索方法难于解决的复杂和非线性问题,包含问题编码、初始化群。
3 基于遗传算法的神经网络训练方法(GA-BP)
遗传算法优化神经网络的思路:改变BP算法依赖梯度信息来调整网络权值的方法,利用遗传算法全局性搜索的特点,寻找最佳网络连接权和网络结构,遗传算法在进化过程中能以较大概率搜索到全局最优解存在的区域,在遗传算法搜索到最优解附近之后,再采用训练样本优选最好的网络连接权系数及网络结构。
遗传-神经网络模型:
GA-BP算法的步骤:
3.2遗传算法是以目标函数最大值为适应度函数,函数为:
3.3基本解空间编码 遗传算法优化网络结构需对隐含层编码。编码的码串由控制码和权重系数码组成。控制码控制隐节点个数,由0-1组成的串,其中0表示无连接,1表示有连接。权重系数用浮点数编码。按一定的顺序组成一个长串,每个串对应一组解。
3.4初始群体由P个个体组成,每个个体由两个部分组成,第1部分是串长为l1 的0-1串;第2部分是区间[umin-δ1,umax+δ2 上的l2个均匀分布随机数。
3.5由控制码得到网络的隐节点数,由权重系数码可以知道网络的连接权值,输入用于训练样本,按照式(2)计算个体适应度。
3.6保留群体中适应度最高的个体,不参与交叉和变异运算,直接将其复制到下一代。 对其它个体,按归一化适应度大小为概率进行选择,进行遗传操作。当某个神经元被变异运算删除时,相应的有关权重系数编码被置为0,而当变异运算增加某个神经元时,则随机初始化有关权重系数编码。以Pc的概率对选择后的个体的Wij神经元权值进行交叉算子如下:
3.7将新个体放到种群P中,没有交叉、变异操作的个体直接生成新一代群体。反复4~8,每次群体就进化一代,连续进化到K代。把最终个体解码得到相应解,ANN误差平方和不合要求εGA则转4,继续遗传操作,反复进行如果N次依然不能达到要求则训练失败。以GA遗传出的优化初值作为初始权值,BP算法继续训练网络,直到给定精度εBP(εBP<εGA)或迭代次数,最终个体解码即得到网络连接权及隐节点数。
4 遗传算法的神经网络对心电图的自动识别
心电图在诊断心血管疾病等临床医学领域得到了大量应用,近年来,基于心电图的稳定性和唯一性,易于采集,不能复制和仿造等优势,其在身份识别领域也具有广泛的应用前景。
将测量电极放置在心脏或人体表面的一定部位,用心电图机记录出来的心脏电变化的连续曲线,即为心电图。将立体的P、QRS、T环经过投影到额面、水平面和右侧面上,临床上用心向量图表示;此即空间心电向量环的第一次投影。将额面心向量环的每一点依次再投影到各肢体导联轴上,可记录出各肢体导联的心电图;横面心向量环在各胸导联轴上的投影,可描记出各胸导联的心电图。此即心向量环的第二次投影。
4.1波形数据预处理 ①首先对心电信号进行高频滤波处理。由于数据是通过FRANK导联七电极采集的,所以心电信号必然夹杂有电极的50Hz交流干扰、肌电干扰等。需要对心电信号进行50Hz高频滤波处理,以去除工频和肌电干扰,可以采用多点平均值法进行滤波;②其次需要对心电图作基线漂移处理。心电信号的漂移主要有放大器零点漂移和呼吸交流漂移。放大器零点漂移体现在基线偏离原点上下移动,交流漂移表面为基线倾斜。
4.2波形识别 由于心电向量图是由各面心电图的各波起止点间的所有点组成的,所以绘制向量图前必须先将心电图的各波的起止点确定下来,这就是波形识别。主要是对选择的典型波形,识别出P波、QRS波、T波等各波段的特征点即峰点、起止点等。
4.3 QRS波群识别 QRS波群识别方法目前主要有闭值法、轮廓限制法、面积法、数字滤波法和倾斜法,该系统采用闭值法。这种方法通过对正交三导联同时记录的X、Y、Z心电信号进行空间向量模的运算,计算其空间向量长度,以最大空间向量长度作为闭值K,以K作为识别QRS波的依据。然后在K值前后一定时间内(30~80ms),对各点心电向量模值进行测量。如果连续若干点的模值相同,K前相同模值的第一个起点作为X、Y、Z三导联公共起点和K后最远点作为公共终点。再根据公共起点、终点范围、检测X、Y、Z导联中的QRS波的峰点和谷点的时间和幅度。
4.4 T波检测 T波比QRS波小,识别方法与QRS波有所不同。T波的识别方法在识别QRS波群基础上,规定在K值后一定时间(100ms)左右,寻找空间向量的最大值做为T波阐值Ko.以Ko值做为识别T波的依据。T波检测也用面积增量法,可直接或间接检测出T波峰值,T波始、终点及宽度。S-T段上升与下降程度采用传统的J+X法判别标准,J+X法中的J点是S点之后的第一个拐点,ST段被确定在J+X ms的心电信号部分,X的典型值为80ms,一般认为X在20~120ms范围中。ST段水平根据基线可以计算出其绝对值,或可表示为相对于R波峰值的归一化值。
4.5 P波检测 P波的识别方法与T波类似,只是搜 寻区间和闻值规定不同。P波检测是房室传导阻滞,P-R间隔检测的主要参数。但其幅度过小,实时检测十分困难。因此目前采用的方法主要是面积增量法。
4.6心电图的识别 本文收集了房室传导阻滞、S-T段下降、S-T段抬高、T波低平、T波倒置、正常窦律、正常七类心电图。提取其诊断特征值,将其输入神经网络进行训练,识别正确率可达到96%[5-10]。
5 结束语
心电图的识别分析,是一项笼琐而又细致的工作。心电图自动诊断可以将医务人员从烦琐的图形识别中解脱出来,提高工作效率。本文采用遗传算法优化三层BP神经网络的连接权和网络结构克服BP神经网络的瓶颈,有效提高神经网络泛化性能,并将其应用于心电图自动识别,得到了较高的识别率。
关键词:人脸朝向识别 学习向量量化 神经网络 特征向量提取
中图分类号:TP391 文献标识码:A 文章编号:1007-9416(2016)05-0000-00
Abstract: Aiming at the low accuracy disadvantage of traditional facial orientation recognition algorithm, the paper employs the recognition method based on the Learning Vector Quantization neural network. By means of extracting the feature vector of eyes positions in the face images and studying the different facial image samples, the paper optimizes the weighting parameters of the LVQ neural network, which achieves good recognition result. The simulation results indicates that the facial orientation recognition based on the learning vector quantization neural network is feasible and effective, and the correct recognition rate can reach more than 95%. Besides, the paper ultimately proofs the accuracy and the validity of the learning vector quantization neural network is better than the Back-Propagation neural network.
Key Words: Facial orientation recognition, Learning vector quantization, Neural network,Feature vector extraction
人脸识别作为一个复杂的模式识别问题,是生物特征识别领域最困难的研究课题之一,其目的是从图像中剔除背景、提取人脸区域。人脸识别系统主要包括图像数据库采集、人脸图像预处理、人脸特征建模及识别匹配。计算机技术的告诉发展使人脸图像在人机交互中发挥着越来越重要的作用,由于实际应用中,人脸外形的不稳定性以及光照条件的多样性使人脸视觉图像在位置、朝向以及旋转角度等方面产生巨大的差异,因此对人脸进行准确识别变得异常困难。
学习向量量化(LVQ)神经网络是一种用于训练竞争层的有监督学习方法的输入前向神经网络,其算法是从Kohonen竞争算法演化而来的[1]。与其他模式识别和映射方法相比,它的优势在于网络结构简单,并且不需要对输入向量进行归一化、正交化处理,只通过计算输入向量与竞争层之间的距离,从而完成复杂的分类处理[2]。当人脸朝向与旋转角度不同时,眼睛局部特征与人脸图像的几何关系有较强的可区分性,因此提取人眼位置信息的特征向量并获得有助于人脸朝向分类的特征数据,将该特征信息作为LVQ神经网络的输入,可实现对任意给出的人脸图像进行朝向的识别,通过仿真可证明该方法的有效性。
1学习向量量化(LVQ)神经网络
学习向量量化神经网络是在竞争网络结构的基础上提出的,是自组织(SOFM)神经网络的一种有监督形式的扩展。在网络学习过程中加入教师信号作为分类信息对权值进行微调,并对输出神经元预先指定类别,LVQ神经网络实现了二者有效的结合,能够更好发挥竞争学习与有监督学习的优点。
1.1 LVQ神经网络结构与工作原理
广义学习向量量化神经网络由三层神经元组成,即输入层、隐藏的竞争层和线性输出层[3],其网络结构如图1所示。输入层与竞争层之间采用全连接方式,竞争层与输出层之间采用部分连接方式[4]。竞争层神经元个数通常取输出层神经元个数的整数倍,每个竞争层神经元有且只有一个输出层神经元与之相连接且连接权值固定为1,而每个线性输出层神经元可以与多个竞争层神经元相连接[5]。在学习向量量化神经网络训练过程中,当某个输入模式被送入网络时,竞争层的神经元通过竞争学习规则产生获胜神经元,获胜神经元调整权值的结果是使权值进一步向当前的输入向量靠近。当下次出现相似的输入模式时,获胜神经元更容易得到修改权值的机会。在反复的竞争学习中,竞争层的各神经元对应的权值逐步被调整为输入样本空间的聚类中心[6]。该神经元被激活后输出状态为“1”,而其他竞争层神经元的状态均为“0”。因此,与被激活神经元相连的线性输出层神经元状态为“1”。其余输出层神经元状态为“0”,从而实现模式分类与识别。
LVQ各层的数学描述如下:设神经网络输入向量,其中为输入层神经元个数;竞争层输出,表达式为;输出层实际输出为,表达式为,网络期望输出为。输入层与竞争层之间的权系数矩阵,其中列向量为竞争层第个神经元对应的权值向量;同理可得,竞争层与输出层之间的权系数矩阵为,其中列向量为竞输出层第个神经元对应的权值向量。
1.2 LVQ神经网络学习算法
向量量化是利用输入向量的固有机构进行数据压缩的技术,学习向量量化是在向量量化基础上将输入向量分类的监督学习方法[7]。LVQ网络在训练前指定好线性输出层的神经元类别,在学习训练过程中不再改变竞争层与输出层之间的权系数矩阵,而是通过改变进行学习。该算法实质是根据训练样本的特征进行“奖励与惩罚”的一种迭代学习算法,即对分类正确的样本,“奖励”与其距离最近的权值点。经过若干次训练后,得到的权值不再变化,说明网络达到收敛状态[8]。而竞争层神经元的数目输入待分类的模式样本测试,根据最近邻法则得到输入样本模式的类别属性。
LVQ1具体算法步骤为:
(1) 初始化输入层与竞争层间的权值,确定初始学习速率与训练次数;
(2)将输入向量输入网络,计算竞争层神经元与输入向量的距离并寻找获胜神经元:
(3)根据分类是否正确调整获胜神经元的权值:当网络分类结果与教师信号一致时,向输入样本方向调整权值;反之,其他非获胜神经元的权值保持不变。
算法直接利用最小欧式距离选择与输入向量最接近的矢量,因此不需要对权值向量和输入向量进行归一化处理。
在上述LVQ学习算法中,有且只有一个神经元获胜并得到更新调整权值的机会。为了改善分类效果,Kohonen对该算法进行了改进,并命名为LVQ2算法[9]。改进算法基于光滑的移动决策边界逼近贝叶斯极限,其特点是引入“次获胜”神经元,使得“获胜”神经元与“次获胜”神经元的权值向量都被更新[10]。
LVQ2具体计算步骤如下:
(1)初始化参数、计算竞争层神经元与输入向量距离同LVQ1算法;
(2)选择与输入向量距离最小的两个竞争层神经元;
(3)若神经元对应于不同类别且与当前输入向量的距离满足,其中为输入向量可能落进的接近于两个向量中段平面的窗口宽度,经验值为左右,那么若神经元对应的类别=输入向量类别,则,若神经元对应的类别=输入向量类别,则。
(4)若神经元不满足上述条件,则按照LVQ1步骤(3)中进行更新即可。
2基于学习向量量化神经网络的人脸朝向识别方法
2.1输入向量与目标向量的设计
观察大量人脸图像容易察觉,当人脸图像旋转角不一样时,眼睛局部特征在图像中的位置差异明显,因此仅需提取描述眼睛局部位置信息的特征向量并作为LVQ神经网络的输入,分别用数字1,2,3,4,5表示五个朝向左方、左前方、前方、右前方、右方,并作为神经网络的输出。搜集10人共50幅不同朝向的人脸图像,随机选取其中30幅图像作为训练集,剩余20幅作为测试集,因此目标向量为305的向量,其中每列只有一个“1”,其余均为“0”。
2.2人脸特征向量的提取
如上文所述,文中将420420的图像划分为6行8列,人物双眼的局部特征信息通过第二行的8个子矩阵描述,在利用Sobel算子对图像进行边缘检测后第二行8个子矩阵中值为“1”的像素点个数可较为准确的表示人脸朝向。
2.3 LVQ神经网络的创建与训练
LVQ网络设计的关键因素包括训练样本是否具有普遍性与代表性,训练样本容量能否满足需要,竞争层神经元数量、初始权值等网络参数取值是否得到优化。根据特征向量与训练图像数量可知输入和输出节点分别为30和5,竞争层神经元的个数通常取决于输入输出关系的复杂性。为防止因竞争层神经元数过多产生“死”神经元,竞争层节点数经验值为线性输出层节点数的24倍,本文选取15作为竞争层节点数;其次是选择合适的学习率,为保证算法的收敛性与稳定性,学习率取恒定值或随时间单调减小,通常取。本文期望误差取值0.001,学习函数用LVQ1,最大训练步数设为100,初始化参数后对LVQ神经网络进行训练,训练算法达到预先指定的误差容限后停止。训练过程曲线如图2所示,由图可知网络收敛性较好,满足误差要求。
3实验结果与分析
3.1网络测试识别率与训练次数、学习算法关系
将测试的20幅不同朝向的人脸图像输入网络,网络识别率如表1所示。由表1结果可知,LVQ神经网络识别人脸朝向可行且有效,总体上取得了较好的识别结果。从训练次数分析,在一定范围内训练次数的增加会提高分类识别正确率,所需训练时间也会增加,识别错误主要因为样本数据较为复杂。当训练集较少时识别率会相对较低,因此在防止出现过拟合的同时应尽量增加训练集的样本数目,可有效改善网络识别结果。
从算法角度分析,结果显示LVQ2算法虽然是对LVQ1算法的改进但同时引入了新的误差,因此识别结果较差;同时LVQ1算法运用简单,识别率较高,具体应用时应开发更好的优化学习算法,综合考虑性能指标作折衷处理。
3.2 LVQ神经网络与BP神经网络识别效果对比
由于BP神经网络的输出为非二值数据,因此采用四舍五入方法:若网络输出小于0.5则认为是0,反之为1;并提前利用三位二进制数编码对五个朝向进行表述,如表2所示。
设置训练次数为100次,BP神经网络仿真结果识别率仅为85%,并出现错误预测值 [0;0;0],该状态不属于表2中任何一种,从结果判断不出图像中人脸朝向,而LVQ神经网络不仅可以很好的规避这一缺点,同时算法识别准确率明显较高。
4结语
本文提出了一种基于学习向量量化神经网络的人脸朝向识别方法,该方法第一步提取人脸图像中双眼的局部位置特征向量,并将提取的向量送入网络进行训练测试实现人脸朝向的准确识别,然后通过仿真实验证明利用LVQ神经网络进行人脸朝向识别方法的有效性,该方法能够发挥竞争学习和有监督学者的优点,且网络结构简单,有效提高了识别率。
参考文献
[1] 秦恺,曹龙汉 等.基于LVQ神经网络集成的柴油机气门故障诊断[J].UPS应用,2014:47-50.
[2] 董妍慧.基于LVQ神经网络模型的企业财务危机预警[J].大连海事大学学报,2008,7(1):92-94.
[3] 胡波,王文娟.基于向量量化网络的煤矿瓦斯监控系统改造[J].电力学报,2010,25(2):162-164
[4] 朱玉斌,李华聪.基于LVQ网络的航空发动机气路故障特征提取方法研究[J].测控技术,2014,33(6):24-27.
[5] 律方成,张波.LVQ神经网络在GIS局部放电类型识别中的应用[J].电测与仪表,2014,51(18):112-115.
[6] 戴金辉.基于混合神经网络的入侵检测技术的研究[D].东北大学硕士论文,2010:37-39.
[7] 程剑锋,徐俊艳.学习矢量量化的推广及其典型形式的比较[J].计算机工程与应用,2006(17):64-66.
[8] 李琳,张永祥.学习向量量化(LVQ)神经网络在周期信号识别方面的扩展应用[J].机械设计与制造,2006,6:120-122.
>> 基于人工神经网络过闸流量模型在南水北调中线工程的应用 基于人工神经网络的优化配置研究 基于BP神经网络的彩色温度软测量 基于小波神经网络的网络流量预测研究 基于改进小波神经网络的网络流量预测研究 基于混沌神经网络的区域物流量预测 基于BP神经网络的铁路客流量预测研究 基于人工神经网络的煤炭需求预测 基于人工神经网络的PPI预测模型 基于人工神经网络的自适应距离保护 基于人工神经网络的故障诊断 基于人工神经网络的化工安全评价 基于人工神经网络的人口预测 基于人工神经网络的图像识别 基于人工神经网络的车牌识别探究 基于人工神经网络的信息处理 基于人工神经网络的巨大儿预测的研究 基于BP人工神经网络的土壤含水量预测模型的研究 基于BP人工神经网络的知识管理战略选择研究 基于人工神经网络的水泵故障诊断技术研究 常见问题解答 当前所在位置:
关键词:BP网络;软测量;过闸流量;MATLAB神经网络工具箱
DOI: 10.3969/j.issn.1005-5517.2013.10.011
引言
通过闸门的水流量是一个非常重要的参数。只有获得准确的流量值,才能实现对水资源的优化配置。目前对于过闸水流量的测量已形成了几种方法:流速仪法、水力学公式法以及曲线法[1,2]。其中,被广泛运用与现场测流中的方法是流速仪法,它也是流量测量中最重要的方法。流速仪法是通过实测断面上的流速和水道断面积来确定流量的方法。测量时先在断面上布设测速垂线和测速点,再将流速仪放到测速点处测速,用分割法计算断面面积,推算出流量。虽然这种测流方法是目前的主导方法,但却存在着一些天生的缺陷:一是很难确定合适的测速垂线及测点,这是由于河道断面形状的不规则以及流速场分布情况复杂等原因造成的;二是实时性不高,测量时间比较长,从而导致管理部门不能及时了解过闸流量,耽误启闭闸门的最佳时机;三是需要的硬件资源比较多,因此大大增加了测流成本。鉴于此,研究一种新型的即简单、操作方便实时性又高,并且精度满足要求的测流方法已成为目前的迫切需求。而本文采用的BP网络软测量技术正好解决了以上诸多问题。
BP神经网络软测量模型
隐含层神经元数的确定
隐含层神经元数的选择在理论上并没有一个明确的规定。因此,选择合适的神经元数就显得十分麻烦。如果神经元太少,则网络不能很好地学习,需要的训练次数也多,训练的精度也不高。反而言之,如果隐含层神经元数选的太多,虽然功能会越大,但是循环次数也就是训练时间也会随之增加。另外可能还会出现其他的问题,如导致不协调的拟合。一般的选择原则是:在能够解决问题的前提下,再加上一到两个神经元以加快误差的下降速度即可[7]。
这里,我们通过对不同神经元数进行训练对比,以及通过简单的交叉验证法确定隐含层的神经元数为15个。基于BP网络的过闸流量软测量模型如图1所示。
数据样本的选取及处理
所用的人工神经网络的训练与测试集样本来源于碧口水电厂右泄工作门2001年水文历史数据。从中选取典型的60组数据,其中前40组作为训练样本,后20组作为测试样本。限于篇幅只列出部分数据,如表1所示。
由于输入样本各参数的集中取值范围不同,参数大小不一,为了使各类参数所起的作用大致相同,必须对输入数据进行标准化,把输入数据都规一到[0,1]闭区域内[8]。因此,我们对表1的数据做如下处理:H*G=HG/10;H*UP=HUP/1000;Q*=Q/Qmax。
运用MATLAB神经网络工具箱对网络进行训练与测试
在运用MATLAB神经网络工具箱对网络进行训练之前,要注意两方面问题。一是初始权值的选择,再个就是学习速率的选取。
由于系统是非线性的,初始值对于学习是否达到局部最小、是否能够收敛以及训练时间的长短的关系很大。一般选取初始权值为(-1,1)之间的随机数。在MATLAB工具箱中可采用函数initnw.m初始化隐含层权值。学习速率决定每一次循环训练中所产生的权值变化量。若学习速率过大可能导致系统的不稳定;但学习速率过小会导致训练时间较长,收敛速度很慢,不过能保证网络的误差值不跳出误差表面的低谷而最终趋于最小误差值。所以在一般情况下,倾向于选取较小的学习速率以保证系统的稳定性。学习速率的选取范围在0.01到0.8之间。综合考虑一下,本系统选取学习速率为0.1。BP网络训练程序如下所示[9]:
%定义输入向量和目标向量
P=[0.5 0.6 0.8 ??;0.7082 0.7081 0.7079 ??];
T=[0.3744 0.4533 0.3735 0.648??];
%创建BP网络和定义训练函数及参数
net=newcf( minmax(P),[15,1],{‘lo gsig’,‘purelin’},‘traingd’);
net=initnw(net,1);
net.trainParam.epochs=5000;
net.trainParam.lr=0.1;
net.trainParam.goal=0.00001;
%训练神经网络
[net,tr]=train(net,P,T);
待网络训练好后,利用选定的20组测试样本对其进行测试,以测量其泛化能力。测试结果如图2和图3所示。
图2为真实流量值与通过BP网络软测量模型的预测值之间的拟合曲线,方框代表预测值,圆点代表真实值。