神经网络原理篇1
关键词:神经网络 BP网络
中***分类号:TP3 文献标识码:A 文章编号:1672-3791(2014)01(c)-0240-02
神经网络是一门发展十分迅速的交叉学科,它是由大量的处理单元组成非线性的大规模自适应动力系统。神经网络具有分布式存储、并行处理、高容错能力以及良好的自学习、自适应、联想等特点。该模型对于拟合现实复杂世界有着重要的实用价值。
1 神经网络简介
人工神经网络(Artificial Neural Network,ANN),亦称神经网络(Neural Network,NN),是一种应用类似于大脑神经突触连接结构进行信息处理的数学模型,它是在人类对自身大脑组织结合和思维机制的认识理解基础之上模拟出来的,它是根植于神经科学、数学、统计学、物理学、计算机科学以及工程科学的一门技术。心理学家Mcculloch,数学家Pitts在20世纪40年代第一次提出了神经网络模型,从此开创了神经科学理论的研究时代,此后半个世纪神经网络技术蓬勃发展。神经网络是一种计算模型,由大量的神经元个体节点和其间相互连接的加权值共同组成,每个节点都代表一种运算,称为激励函数(activation function)。每两个相互连接的节点间都代表一个通过该连接信号加权值,称值为权重(weight),神经网络就是通过这种方式来模拟人类的记忆,网络的输出则取决于网络的结构、网络的连接方式、权重和激励函数。而网络本身通常是对自然界或者人类社会某种算法或函数的逼近,也可能是一种逻辑策略的表达。神经网络的构筑理念是受到生物的神经网络运作启发而产生的。人工神经网络则是把对生物神经网络的认识与数学统计模型向结合,借助数学统计工具来实现。另一方面在人工智能学的人工感知领域,我们通过数学统计学的方法,使神经网络能够具备类似于人的决定能力和简单的判断能力,这种方法是对传统逻辑学演算的进一步延伸。
2 神经网络模型及训练
2.1 生物神经元模型
人脑是自然界所造就的高级动物,人的思维是由人脑来完成的,而思维则是人类智能的集中体现。人脑的皮层中包含100亿个神经元、60万亿个神经突触,以及他们的连接体。神经系统的基本结构和功能单位就是神经细胞,即神经元,它主要由细胞体、树突、轴突和突触组成。人类的神经元具备以下几个基本功能特性:时空整合功能;神经元的动态极化性;兴奋与抑制状态;结构的可塑性;脉冲与电位信号的转换;突触延期和不延期;学习、遗忘和疲劳;神经网络是由大量的神经元单元相互连接而构成的网络系统。
2.2 人工神经网络模型
人工神经网络,使通过模仿生物神经网络的行为特征,进行分布式并行信息处理的数学模型。这种网络依靠系统的复杂度,通过调整内部大量节点之间相互连接的关系,从而达到信息处理的目的。人工神经网络具有自学习和自适应的能力,可以通过预先提供的一批相互对应的输入输出数据,分析两者的内在关系和规律,最终通过这些规律形成一个复杂的非线性系统函数,这种学习分析过程被称作“训练”。神经元的每一个输入连接都有突触连接强度,用一个连接权值来表示,即将产生的信号通过连接强度放大,每一个输入量都对应有一个相关联的权重。处理单元将经过权重的输入量化,然后相加求得加权值之和,计算出输出量,这个输出量是权重和的函数,一般称此函数为传递函数。
2.3 神经网络的训练
当神经网络的结构确定以后,接下来的工作就是训练和学习。神经网络不是通过改变处理单元的本身来完成训练和学习过程的,而是依靠改变网络中各神经元节点的连接权重来完成的。因此若处理单元要学会正确的处理所给定的问题,唯一用以改变处理单元性能的元素就是连接权重。
2.4 神经网络的分类
神经网络按照不同的结构、功能,以及学习算法,对网络进行分类,可以分为:(1)感知器神经网络:最简单的神经网络类型,只有单层的神经网络结构,采用硬限值作为网络传递函数,主要适用于简单的线性二类划分问题,在此类问题中处理的效率较高。但不适合本论文的课题。(2)线性神经网络:单层结构的神经网络,采用线性函数作为网络的传递,主要也是用于解决线性逼近问题。
3 BP神经网络
目前应用最为广泛的网络,具有多层网络结构,可以由一个或者多个隐含层。BP网络采用Widrow―Hoff学习算法和非线性传递函数,典型的BP网络采用的是梯度下降算法,也就是Widrow―Hoff算法所规定的。BP,即Back Propagation,就是指为非线性多层网络训练中梯度计算是采用信号正向传播、误差反向传播的方式。通过采用非线性传递函数,BP网络能够以仁义的精度逼近任何非线性函数,由于采用隐含中间层的结构,BP网络能够提取出更高阶的统计性质,尤其是当输入规模庞大时,网络能够提取高阶统计性质的能力就显得非常重要了,结合本文的课题,将采用BP神经网络及其改进算法进行组合集成实验,用以解决财务预警的实际问题,在后面的章节会采用相关实验证明组合集成的BP神经网络的优势。
4 径向基神经网络
径向基神经网络又称为RBF网络,它与BP网络同为多层前向网络,也能够以任意的精度逼近任何非线性函数,只是它与BP网络采用的传递函数不同,BP通常采用的是Sigmoid函数或线性函数作为传递函数,而RBF网络则采用径向基函数作为传递函数。本文后面将采用径向基函网络与BP网络进行对比。
5 竞争神经网络
竞争神经网络的特点是它的各个神经元之间是相互竞争的关系,众多神经元之间相互竞争以决定胜出者,或胜神经元决定哪一种原模型最能代表输入模式。
6 反馈神经网络
BP神经网络(Fredric M.Ham Ivica Kostanic Principles of Neurocomputing for Science―Engineering 2007)BP神经网络具有sigmoid隐含层以及线性输出层,具有很强的映射能力,本节我们对BP网络神经元和网络结构进行介绍。神经网络方法的具体步骤是:向网络提供训练例子,即学习样本,包括输入和期望的输出。确定网络的实际输出和期望输出之间允许的误差。改变网络中所有连接权值,使网络产生的输出更接近于期望输出,直到满足确定的允许误差。下***给出了一个具有N个输入的基本的BP神经元模型结构。途中每一个输入都被赋予一定的权值,与偏差求和和后形成神经元传递函数的输入。
我们来看看三层BP神经网络模型的数学表达,首先我们来确定途中各个参数所代表的涵义:
(1)输入向量:X=(x1,x2,…,xi,…,xn)T;
(2)隐层输出向量:Y=(y1,y2,…,yj,…,ym)T;
(3)输出层输出向量:O=(O1,O2,…,Ok,…,Ol)T;
(4)期望输出向量:d=(d1,d2,…,dk,…,dl)T;
(5)输入层到隐层之间的权值矩阵:V=(V1,V2,…,Vj,…,Vm);
(6)隐层到输出层之间的权值矩阵:W=(W1,W2,…,Wk,…,Wl)。
BP神经网络就是通过构建上述变量来完成网络的描述。
我们从上至下,从输出层开始看BP网络的工作原理,对于输出层:
k=1,2,…,l (1)
k=1,2,…,l (2)
对于隐层:j=1,2,…,m (3)
j=1,2,…,m (4)
其中的是传递函数我们可以采用单极性Sigmoid函数: (5)
(1)网络误差与权值调整
输出误差E定义:
(6)
(7)
在这一步的基础上,进一步展开至输入层:
(8)
j=0,1,2,…,m;k=1,2,…,l (9)
i=0,1,2,…,n;j=1,2,…,m (10)
式中负号表示梯度下降,常数η∈(0,1)表示比例系数。在全部推导过程中,对输出层有j=0,1,2,…,m;k=1,2,…,l,对隐层有i=0,1,2,…,n;j=1,2,…,m
(2)BP算法推导
对于输出层,式(9)可写为:
(8)对隐层,式(9)可写为:(10),对于隐层,利用式(7):
可得: (11)
将以上结果代入式(8),并应用式(5):,得到:
(12)
(13)
至此两个误差信号的推导已完成。将式(12)代回到式(8),得到三层前馈网的BP学习算法权值调整计算公式为:
(14)
神经网络原理篇2
信息技术的发展繁荣给人类带来了机遇与挑战,为了应对计算机网络技术的安全问题人们引入了神经网络体系。从仿生学角度来说计算机神经网络体系仿照了人脑的工作方法。人脑具有接受信息,分析信息,处理信息的能力。科学家从中获得启发将这一方法引入了计算机安全防御中去,并形成了计算机安全评价的标准。
1计算机神经网络体系
人们为了因对计算机迅猛发展带来的危机在上世纪40年代就提出了神经网络体的设想,并对此加以研究实验。自80年代后已经成为人们评价计算机网络安全的重要标准。大量简单的神经元通过相互连接形成更复杂的神经结构,神经结构之间相互连接最终形成神经网络体系。神经网络体系具有十分强的的信息处理工能,可以存储分布、处理分布,有包容性和学习能力,能够处理非线性的复杂关系,是一个成长型的系统。神经网络系统通过调节自身节点之间的关系,来完成对信息的分析处理,模仿人的大脑对信息的处理方式。其具有很强的灵活性和针对性,可以进行初步的理性分析,优化其自身的信息资料库,找寻最优的解决方案。计算机神经网络系统是人类迈向人工智能化时代的一大创举,随着人工智能技术的不断进步,更加智能的机器人将随之产生。
2计算机网络安全的评估标准
计算机的使用者们根据当前计算机的使用状态制定了一系列的计算机网络安全现行标准。
2.1网络安全的定义
网络安全指的就是人们在运用互联网时信息的安全保密不被窃取和恶意破坏,系统、软件设备、硬件设备都处在良好的状态中。在计算机系统运行时不会受到木马病毒、恶意插件的攻击。信息安全、密码安全、通信安全等领域的安全都处在网络安全的范畴之中。计算机网络安全有四大原则:可控性原则,即计算机网络信息的传播控制在一定的范围内,网络上流传的信息要在法律允许的范围之内,网络管理者可以通过网络对其进行有力的控制。完整性原则,即网络数据信息未经过***和其发行者的授权不可以私人篡改,保持网络数据的完整性就是保证网络信息的可用性。可用性原则,即网络使用者当前是否能够使用网络中的信息。保密性原则,即对计算机网络数据进行访问时,不得随意泄露信息给未获得网络授权的用户。在这个信息全球化的时代,网络安全是人们生活安全中至关重要的一项。
2.2网络安全评估标准
当今社会人们对网络信息的要求逐步提高,相应的产生了一套大家公认的评估标准。这套标准是依据现有的计算机网络技术,全面的、合理的、客观的、科学的,考虑计算机网络运用的方方面面制定出来的。坚持评估标准与实际生活相结合,便于检测和操作的可行性原则;坚持条理清晰、层次分明,有代表性的简明性原则;坚持真实准确,避免环节重复,避免节点之间相互影响的***性原则;坚持运用完整的、全面的、准确可靠的完备性原则为信息全评价标准;坚持联系实际以现行的计算机技术水平为评价指标的准确性原则。按照以上的网络安全标准一定要与当前所在的区域网相结合,做到具体问题具体分析。
2.3网络安全体系的设定
根据计算机网络安全检查建立不同的计算机网络安全等级,大致可分为四个层次:很危险、危险、有风险、安全。很危险可用红色表示,计算机网络系统存在高危漏洞,需要紧急查杀木马病毒和恶意插件,关机后再重新启动。危险可用橙色表示,表示网络系统中有安全隐患需要处理,网络的安全等级有限,需要及时的进行杀毒处理。有风险可用黄色表示,这种情况表示计算机中有风险项,需要对计算机网络进行检测处理。安全表示当前的计算机网络状态良好无任何风险项,可用绿色表示。这种设计可以给计算机的应用者最直观的感受来判断计算机的状态。
3神经网络系统在计算机网络安全中的应用
计算机网络的主要作用是传递信息,其广泛的应用于电子商务,信息处理,电子办公等方方面面。网络黑客通过木马病毒盗取用户信息,倒卖客户资料,窃取他人财产,对网络的和谐安全产生了及其恶劣的影响。神经网络系统在计算机网络信息的传播当中起到了桥梁和过滤器的作用。信息在网络中传播不是单向的而是双向的,信息的输入和输出都是通过神经网络的神经元来完成的。计算机神经网络有三个层次组成,分别是输出层、隐藏层、输入层,通过这三个部分对信息进行加工处理。其中的隐藏层起到了传输中枢的作用,输入的信息输出时需要先输入到隐藏层中,再由隐藏层对其进行处理,最后传输到输出层中输出。在此时系统发现信息有误将会回溯至上一阶段对信息进行核对,信息精确后会再次传输回来发送至输出层。通过神经网络系统的应用能够大量准确的对信息进行合理的处理,方便了人们的生活,提高了人们的工作效率。
4神经网络系统对计算机网络安全的影响
神经网络系统作为广泛应用于人们生活中的技术,其即存在着优点,也存在着不足。神经网络技术具有良好的灵活性包容性,与传统的曲线拟合体系相比其对缺失信息和噪音反应不灵敏。一个节点只能反应一个问题,一个节点中发现的问题在整个神经网络体系的表现中将产生严重影响。其具有良好的延展性,可以把个体中的多数样本引入部分当中,将部分当中的多数样本引入到整体当中。神经网络系统具有强大的学习适应能力,可以自行总结系统处理的信息中的规律,自我调整输出模式,减少系统的误差。神经网络有线应用潜力,有线应用潜力是神经网络系统自身的基本能力,神经网络是由一个又一个节点连接而成的,两点之间的直线距离最短,处理信息的速度最快。神经网络系统具有自动处理信息关系的能力。其已经具有初步的人工智能化能力,可以自主分析较为简单的问题。虽然神经网络系统功能十分强大,但是也存在着一些不足之处。神经网络系统的结构多样化,在信息处理的过程中也会出现多种组合。因此只能出现最精确的处理结果,无法得出最准确的处理结果。神经网络系统自身的结构决定了其对局部极小问题的忽视,这种特性会影响其处理问题的准确性。对于非常复杂的数据问题其处理效果会减慢。随着计算机的应用大量的信息被记载入数据库,信息量过于庞大会影响到信息处理的效率。神经网络系统并不是真正的人脑只达到了出步的人工智能程度,其处理问题存在一定的机械性。这种问题只有通过科学家的不断研究才能得到改善。
5结语
神经网络原理篇3
计算机网络的安全评价是计算机操作和运行过程中的一个重要的环节。影响计算机网络安全的因素有很多,例如硬件、软件设备、计算机程序、操作方式、网络环境等。传统的计算机网络安全评价是一个线性评价的过程,不能对各种影响因素进行综合的评价,在评价的精度上也不高。神经网络是在传统评价方式上进行优化的一种评价手段,采用了更为合理的评价标准,然后通过专家打分的方式确定各个影响因素在评价指标中所占到的比重,最后得出计算机网络的安全评价。
关键词:
神经网络;计算机;网络安全评价;应用
伴随着网络技术的发展,计算机网络安全的影响因素也在不断增加,病毒、系统漏洞、黑客入侵等多种安全隐患对计算机的功能和操作都能产生了极大的影响。这些影响因素之间还会相互影响,形成错综复杂的非线性关系,给网络系统安全性的定量评价带来了极大的难度。计算机网络安全的传统评价方式采用的是线性评价的模式,在操作上较为复杂,且精度不高,已经无法在实际应用中发挥有效的作用。另一种专家评价方式则带有较强的主观性,且对专家自身的专业素质和工作经验有着较高的要求,评价的结果往往难以验证。神经网络是近几年发展起来的新型评价方式,它是由许多神经元组成的,能够对网络的安全性进行非线性的评价,并完成对网络的简单维护和控制,与传统评价方式相比,神经网络在评价精度和效率上都有较大的提高。
1神经网络的特点及发展
神经网络的提出是在上个世纪中期。生物学家和物理学家首次尝试将两个学科的研究结合起来,形成了神经网络模型。这种模型是以人脑的神经网络为模板,模拟了人脑处理信息和传递信息的过程。通过数学学科对网络的结构、神经元的组成等进行研究,以及生物学对神经元的功能、作用原理等进行研究,成功模拟出了神经网络模型。这一模型的提出为神经网络在计算机安全评价方面的应用奠定了基础。上个世纪中后期,计算机领域的专家将神经网络的模型应用到了计算机网络安全的研究上,并在原始模型的基础上,增加了模型的感知功能,并与计算机技术进行了结合,在工程学领域进行了应用。神经网络模型在计算机网络上的应用能够实现对声波的检测和识别,并且确定目标物的精确位置。这促进了神经网络技术的进一步发展。上个世纪末,计算机专家又提出了一种新的映射网络模型,利用映射中的拓扑结构,对计算机的功能进行了模拟。1982年,生物学家对神经网络的性质进行了更深层的研究,从而发现神经网络是一种非线性的结构,由此神经网络为计算机网络安全的评价提供了一条新的思路。
2计算机网络安全评价体系概述
计算机网络安全是现在人们关注的重点问题之一,所谓的计算机网络安全就是指通过合理的措施确保计算机中的数据信息的安全性和可靠性。计算机网络安全包括两部分的内容,第一部分是逻辑安全,所谓的逻辑安全是指保证计算机中存储的数据信息的完整性和安全性;第二部分是物理安全,所谓的物理安全是指要对计算机的硬件设施进行检查,保证计算机的硬件设施、系统处于安全运行状态,避免出现计算机硬件设施运行异常的情况。但需要注意的是计算机网络安全不仅仅包括上述这些内容,随着网络技术的不断发展,计算机网络安全还应包括网络信息共享的安全性。通过上述的分析不难发现,计算机网络安全具有下述几个特征。第一,计算机网络安全具有一定的保密性,计算机网络中传输的数据信息有很大一部分是需要保密的,因此为了保证网络传输信息的安全,必须要加强计算机网络安全建设;第二,计算机网络安全具有一定的完整性,计算机中无论是存储的数据还是传输的数据都应保证其完整性,这样才能满足相应的使用要求;第三,计算机网络安全应具有一定的可控性,计算机网络安全性应是处于可以控制的范围内,如果不能满足这一要求,则会影响计算机网络的使用效果。近年来,随着科学技术的不断发展,计算机网络安全面临的挑战愈加严峻,在这种情况下,必须要加强对计算机网络安全的重视。计算机网络安全评价是实现网络安全保护的重要环节之一,只有对网络中存在的安全隐患进行有效的评估和检测,才能有针对性地制定解决方案,从而实现网络的安全稳定运行。随着评价方式的不断丰富和评价标准的不断完善,逐渐形成了一个完整的网络安全评价体系。网络安全评价体系的建立需要遵循一些基本的原则。首先是准确性原则,建立计算机网络安全评价体系的根本目的就是要有效识别网络中的安全隐患,确保网络环境的安全可靠,评价的准确性直接影响了网络安全维护的质量。其次是***性,要对网络安全进行评价必须要有一定的安全标准,这就需要设置一系列的评价指标,各个指标之间都应当是相互***的,不应当在内容上产生重叠,防止指标之间的相互影响。第三是简洁性原则,在确保评价准确的基础上,要使评价的过程尽量的简化,这样才能提高评价的效率。第四是完善性原则,完善性就是要求指标应当包含对网络安全性各个方面的评价,能够从整体上反映出整个系统的运行状态。最后是可行性原则,在选择评价指标时应当考虑到指标能否在实际中进行操作和执行,因此,指标的设定应当尽量与实际操作结合起来。
3网络安全体系的设定
根据网络安全的状况可以将计算机的网络安全分为四个等级,分别是安全、有风险、有危险、非常危险。不同的安全等级可以采用不同的颜色进行标注。例如十分危险可以用红色进行标注,表明网络中存在极大的漏洞,需要立即进行处理。有危险可以用橙色进行标注,说明网络中存在安全隐患,需要对网络进行检查,并进行一定的杀毒处理。有风险可以用黄色进行标注,说明网络的运行的过程中出现了风险项,需要对网络进行一定的检测和调试,及时排除网络中的风险项。安全可以用绿色来表示,说明网络安全状况良好,可以进行放心的使用。用颜色来表示不同的安全状态是一种十分直观的表示方式,能够方便用户在最短的时间内确认网络的运行状况。
4各评价指标的取值及标准化问题
计算机网络安全评价由于各个指标所评价的因素不同,因此在指标的取值和标准上也有所不同。评价的方式主要有两种,分别是定性评价和定量评价。这两种评价方式的侧重点有所不同,因此将两项评价指标结合起来能够更全面反映网络的安全状况。定量指标在进行取值时应当根据实际情况进行选取,不能对所有的定量指标采取一样的评价指标。在进行标准化处理时则要将取值的范围限定在0-1之间。对定性标准而言,采用专家打分的方式是较好的取值方式,不同的系统也要根据实际情况进行不同的等级评价。定性指标也应当进行一定的标准化处理。
5借助神经网络建立计算机网络安全评价的必要性
与传统的算法相比,神经网络算法有着明显的优势,例如,有较强的学习能力,能够进行自我调解,精确度较高等。
5.1较强的适应性神经网络具有良好的环境适应能力,当其处于输入或输出的状态时,可以进行自我调节从而提高计算的精度,并对计算的过程进行反馈。
5.2容错性神经网络与传统算法相比,最大的优势在于它对噪音和不完善的信息具有较高的敏感度,这是由于神经网络的每一个节点对应着网络中的一个特征,当某一个节点中输入的信息出现问题时,神经网络能够立即作出反应。
5.3可***应用神经网络运行的核心环节在训练过程,因此在这一个阶段会耗费较长的时间。一旦神经网络完成这一个阶段的工作后,就能快速的获得计算结果,从而提高了安全评价的效率,能够在***系统的应用中获得良好的效果。
6计算机网络安全评价模型的设计
6.1输入层输入层的神经元节点数量应当根据计算机网络安全评价指标的数量来确定。例如,当计算机安全评价模型中含有20个指标时,输入层的神经元指标也必须为20个。
6.2隐含层绝大多数神经网络的隐含层属于单向隐含层。隐含层节点的数量直接决定着神经网络的性能。当隐含层的数量过多时会导致神经网络的结构过于复杂,信息传输的速率较低。当隐含层的节点数量较少时,神经网络的容错能力会减弱。因此,隐含层节点的数量必须进行合理地选择。根据实际操作的经验,通常隐含层的节点数量为5个时能够起到较好的评价作用。
6.3输出层输出层的节点数量通常为2个,可以通过不同的组合方式来表示不同等级的网络安全状态。例如,(1,1)表示安全,(1,0)表示存在风险,(0,1)表示存在危险,(0,0)表示非常危险。
7计算机网络评价的具体步骤
计算机网络评价的具体过程分为两个步骤:首先是构建计算机网络安全评价体系,其次是使用粒子群优化的方法对BP神经系统进行优化,改善BP神经网络自身的缺陷,提高其性能。BP神经网络的优化方法有以下几点:对BP神经网络的目标量、函数等进行初始化;对粒子的初始速度、初始位置、动量参数等进行设置和调整;通过粒子群的集中来完善BP神经网络的功能,对网络的适应度作出评价;对每个神经元进行历史适应度与当前适应度的对比,若当前的适应度是历史最高时,就应当及时保存,并将此作为评价的标准;计算每个粒子的惯性;当粒子的位置和运动速率产生变化时,记录粒子群之间的适应度误差,并做好相应的记录;对系统适应度的误差进行统计。
8计算机网络安全评价的原理
计算机的安全评价原理是依据相关的评价标准,先确定评价的范围和内容,再根据网络的实际运行状况和安全状态,对网络中可能出现安全隐患的区域进行预测,并采取制定的标准进行评价,最终得到网络安全等级。在这一过程中,合理地选择计算机网络的评价因素、建立正确的评价模型是关键的环节。计算机网络是一个非线性的结构,安全漏洞的出现具有突发性和多变性。而神经网络具有非线性的评价功能,用它来进行计算机网络的安全等级评价是一种科学性较高的评价模式,能够有效地提高评价的精度。
8.1计算机网络安全评价指标体选择计算机是一个十分复杂的体系,影响其安全等级的因素有很多,要确保安全评价的准确性就要建立起一个完善、合理的评价体系。计算机网络安全评价指标的选择应当从管理安全、物理安全、逻辑安全等几个方面进行考虑,并采用专家系统对安全评价标准的选择进行调整和确定,确定各个指标在最终的评价体系中所占的比重。
8.2计算机网络安全指标的归一化处理由于各个指标之间的评价方式有所不同,因此不同的指标之间是无法进行直接的比较的。为了便于进行指标之间的比较,并加快神经网络的收敛速率,需要对指标进行归一化处理。定性指标可以通过专家打分的方式进行归一处理,定量指标则需要经过一定的公式计算进行归一化处理。
8.3BP神经网络算法BP神经网络是当前最常用的一种神经网络模型。它采用的是梯度下降的算法,可以对误差进行反向计算,从而对网络的阈值进行不断的调整,减少计算的误差。BP神经网络具有强大的非线性逼近能力,计算方法较为简单,但是也有一定的缺陷,例如容易陷入局部极值,从而防止了有效的收敛,此外,BP神经网络还有全局能力不强的缺点,由于BP神经网络采用的是反向传播的下降算法,所以收敛速度极慢。
9神经网络系统在计算机网络安全中的应用
计算机网络具有传递数据、分享信息的功能,当前已经在众多领域进行了应用,包括商务、贸易、信息管理等。而网络黑客则利用了计算机网络的安全漏洞,对系统进行攻击和入侵,并窃取了客户重要的个人信息和商业信息,给用户造成了极大的经济损失,并对整个社会造成恶劣影响。神经网络系统在计算机信息传递的过程中起到了过滤非法信息的作用。在网络世界中,信息的传递是双向的,而在神经网络的模式下,信息的输入和输出都要经过神经网络的过滤作用。神经网络的三个组成部分,输入层、输出层、隐含层都对信息有过滤的作用,经过三层的过滤作用,信息的安全性有了更好的保障。在这三层中,隐含层起到了关键性的作用。输入的信息都要先经过隐含层,在经过隐含层的处理后,再通过输出层传出。在信息传输的过程中,若发现信息存在异常,可以输送回上一层进行信息的重新核对,信息重新进行上述的处理过程,直到确认信息无误后才会输出。神经网络系统的应用极大地提高了网络的安全性,从而为人们提供了一个良好的网络环境。尽管神经网络系统有上述的这些优点,但也存在一定的缺陷。虽然神经网络的灵活性和适应性较强,但对缺失信息的反应不如传统算法灵敏。在神经网络中,一个节点只能反映一个网络问题,一旦一个节点发生问题后,整个神经网络都会作出相应的反应。神经网络具有较好的延展性,可以容纳多种类型的样本数据。神经网络还具有较好的学习适应能力,可以归纳总结运行过程中的运算规律,自动调节信息输入输出的形式,从而减少数据的误差。神经网络还能在有线网络中进行应用,因此可以进行大范围的推广。大量的节点共同组成了神经网络,相邻的节点之间都是相互连接的,从而确保了信息传递的效率。神经系统能够自动的调节节点之间的关联,具有一定的智能化操作功能,还可以对问题进行简单的分析。神经系统的结构较为复杂,在处理信息的过程中可以产生多种不同的组合类型,并从这些组合中优选出最佳的组合方式。但这种结构也会导致在信息处理的过程中一些细小的问题容易被忽视,在一定程度上影响信息处理的精度。一些复杂的数据采用神经网络的处理方法速率会十分的缓慢。在输入信息不断增加的过程中,计算机内部的存储压力会显著上升,进一步影响信息的处理速度。神经网络与人工智能的功能还是存在一定的差距的,在性能和结构上还有进一步完善的空间。
10结束语
神经网络是将生物学与数学进行结合的典范,将两个学科的优势充分的利用起来。神经网络在计算机网络安全评价中能够起到良好的效果,可以在未来进行进一步的推广应用。
参考文献:
[1]李忠武,陈丽清.计算机网络安全评价中神经网络的应用研究[J].现代电子技术,2014(9):11-13.
[2]郑刚.计算机网络安全评价中神经网络的应用研究[J].网络安全技术与应用,2014(7):33-36.
神经网络原理篇4
关键词:模拟电路;故障诊断;模糊数学;BP网络;模糊BP网络
0引言
电路故障是指在规定的条件下,电路工作时它的一个或几个性能参数不能保持在要求的上、下限之间,其结构、组件、元器件等出现性能减退、老化、破损、断裂、击穿等现象,丧失了在规定条件和环境下完成所需功能的能力。
长期以来,学界对模拟电路工作特点的研究已相当深入,但对于故障诊断方法的研究却困难较大,这是由于模拟电路本身的特性决定的:1)输入激励和输出响应都是连续量,模拟电路中的故障模型复杂,量化难度大;2)模拟电路信号量程宽,不管电压、电流的量程还是频率都可达十几个数量级,测量难度大;3)模拟电路中的元器件参数具有容差,导致电路的故障状态的模糊性,而无法准确定位;4)模拟电路中存在广泛的反馈回路和非线性问题,使计算的难度更加复杂。因此,学界提出了许多模型和方法来完成对某些符合特定条件的模拟电路的故障诊断。其中神经网络法的使用就相当普遍,在硬和软故障诊断中都有应用,因为神经网络的技术优势针对模拟电路故障诊断有较好的适用性,这主要体现在:1)神经网络的大规模并行处理特点,大大提高了诊断效率;2)自适应与自组织能力使神经网络在学习和训练中改变权重值,发展出新的功能。同时,模糊数学也与神经网络相结合,这是利用了模糊数学对待诊断模拟元器件的故障不确定性进行量化处理,能够有效克服模拟电路元器件因为容差、非线性及噪声造成的电路参数模糊性。
本文的研究目的就是分别利用单纯BP神经网络和模糊BP神经网络的方法建立模拟电路故障诊断模型,利用电路仿真收集电路不同工作状态下的关键点电压,代入诊断模型并得到诊断结果。根据各网络的结果分析比较各诊断模型的优缺点,找出模糊数学对改进模拟电路故障诊断模型的具体表现。
1模糊神经网络的故障诊断模型
1.1典型模糊神经网络诊断模型介绍
***1显示的是一个典型的模糊神经网络模型,该模型由原始知识获取(Fundamental Knowledge Acquire,FKA)、特征参数处理(Characteristic Parameter Produce,CDP)、知识提取(Knowledge Extracted,KE)、经验知识库(Experience Knowledge Base,EKB)、学习样本集(Learning Sample Set,LSS)和模糊神经网络(Fuzzy Neural Networks,FNN)共6个模块共同组成,其工作流程是:
***1 典型模糊神经网络诊断模型
1)原始知识获取模块通过对电路工作原理进行分析,模拟或仿真各类故障发生时输入和输出参数,从而获取原始知识(X,Y),将其传入知识提取模块中供系统学习,所得经验集存入经验知识库中;
2)将原始知识和已经存放在经验知识库中的经验知识(初始库可为空)一起输入学习样本组织模块中,进行学习样本的构建,合成训练样本集为(X1,Y1);
3)将(X1,Y1)输入到模糊神经网络模块,学习训练,并在达到指定精度后停止;
4)将从模拟电路中获得的实测参数Xc输入至特征参数提取模块中,完成数据分析和处理,输出特征参数数据Xc‘;
5)将特征参数数据输入到学习收敛后的模糊神经网络中,进行诊断推理,得出诊断结果Yc‘;
6)将得到的实测数据集(Xc‘,Yc‘)输入学习样本组织模块,动态增强模糊神经网络的自适应能力;
7)将得到的实测数据集(Xc‘,Yc‘)输入知识提取模块,进行分析和处理,如能提取出经验知识,则归入经验知识库中[1]。
1.2模糊神经网络结构
模糊神经网络的结构应该包括4层,如***2所示。
模糊层的作用是将输入量进行模糊化。每一个模糊层节点对应一个该论域中的模糊子集和隶属函数。该层接收精确数值输入,经过模糊化计算得出对应的隶属度并输出。
***2 模糊神经网络结构***
输入层、隐含层和输出层共同构成一个完整的神经网络。输入层不具有运算功能,它只是将所感知的输入值精确传递到神经网络中;隐含层的作用相当于特征检测器,提取输入模式中包含的有效特征信息,使输出层所处理的模式是线性可分的,该层节点是模糊神经元,与输入层间的连接权值是随机设定的固定值;输出层节点也是模糊神经元,与隐含层之间采用全连接方式,其连接权值是可调的,作用是输出用模糊量表示的结果。
1.3输入层、输出层和隐含层节点数确定
输入层的个数代表了电路故障诊断的关键测试点的个数N1,输出点为电路所具有的潜在故障模式种类数N3。
根据输入层和输出层的个数,隐含层节点数N2的确定有以下4种经验公式:
(1)
(为0~10之间的常数)(2)
(为0~10之间的常数)(3)
(4)
2模糊数学和神经网络的算法介绍
2.1模糊数学和隶属度函数
模糊数学的作用是对测试点测得的电压信号进行特征提取——模糊化处理。因为在模拟电路测试中,参数值会随着故障原因的不同和故障阶段不同而发生变化,所以在进行数据处理时常用方法是使用精确事实规则。即用正态分布函数作为隶属度函数表示“大约为a”的模糊概念,此外还有如三角分布和梯形分布等。在使用中,正态分布使用较多,其中的a是该测试点的理想状态工作点,b为该测试点在各种可能状态下的工作电压均方差。
2.2BP神经网络与算法
***3BP神经网络模型结构***
反向传播网络(Back-Propagation Network,简称BP网络),是一种有隐含层的多层前馈网络。每一层均有一个或多个神经元节点,信息从输入层依次经各隐含层向输出层传递,层间的连接关系强弱由连接权值W来表征。BP算法是一种监督的学习,基本原理是梯度最速下降法,中心思想是调整权值使网络总误差最小。通过连续不断地在相对于误差函数斜率下降的方向上计算网络权值和偏差值的变化而逐渐逼近目标的。每一次权值和偏差的变化都与网络的误差的影响成正比,并以反向传播的方式传递到每一层。BP网络模型结构如***3所示。 转贴于
以BP神经网络模型结构***为例进行BP算法推导,其输入为P,输入神经元有r个,隐含层内有s1个神经元,激活函数为F1,输入层内有s2个神经元,对应的激活函数为F2,输出为A,目标矢量为T。
1)隐含层输出:(i=1,2,…,s1)(5)
2)输出层输出: (k=1,2,…,s2) (6)
3)定义误差函数:(7)
4)输入层的权值变化量:(8)
其中:
同理可得:(9)
5)隐含层权值变化有: (10)
其中:
同理: (11)
BP网络经常使用的是S型的对数、正切激活函数或线性函数。
3电路故障诊断算法验证
***4 共集-共射电路的直流通路***
例:如***4所示的直流通路***,电阻的标称值如***中所注。利用Multism软件在直流状态下进行多次Monte Carlo分析仿真该电路,并考虑电阻的容差影响,取40个样本作为模糊神经网络的训练样本,另取5个样本为测试样本。设电阻R1~R5的容差值为-5%~5%。测试点选为A、B、C、D和E五点,所测电压值为VA、VB、VC、VD和VE。
表1 部分电路实验样本原始数据
表2 测试样本原始数据
表1列举了40组电路实验样本原始数据的11组,包含了该电路在11种工作状态下的五个关键点电压值,所以N1=5,N2=11,隐含层的节点数可以依据公式2.3确定为12个,其中a为5。
表2则列举了5组测试样本的原始数据。
步骤一:数据模糊化
根据用正态分布函数作为隶属度函数表示“大约为a”模糊概念的思路,可以分别得到各测试点上电压隶属度函数的参数值。
a1=5.57、a2=4.97、a3=4.9、a4=5.7和a5=5.69以及b1=4.3729、b2=4.4817、b3=3.9091、b4=4.2870和b5=3.7944。
由各测试点的隶属度函数可得到网络的训练样本见表3。
表3 神经网络部分输入、输出训练样本
步骤二:将训练样本输入神经网络进行训练
将全部40个原始值和模糊化值的输入样本和对应的输出样本分别输入BP神经网络中进行训练。
步骤三:将测试样本输入神经网络进行检测
将全部5个原始值和模糊化值的输入样本和对应的输出样本分别输入已经训练好的BP神经网络中,输出诊断结果见表4。
表4 输出诊断结果
表4中的数据是经过故障诊断后得到的结果,在此只是各随机选用了一组数据加以比较说明。通过对故障诊断的试验观察和结果的比较可以作出以下分析。
1)模糊化数据能够有效减少神经网络的收敛次数。如在BP网络诊断中,使用模糊化数据的迭代次数由886减少到263次,收敛速度明显加快;
2)模糊化数据能够有效提高神经网络训练的效果。通过表4中数据的对比可以发现对于相同的神经网络,经过模糊化数据的训练,其准确性更高。这主要表现在电路所对应的状态结果普遍高于未经模糊化数据训练的网络得出的结果;同时,其他状态对应的机率更低,皆低于0.1,且更多值为0,说明数据模糊化能使神经网络的诊断结果更集中,正确率更高,有效性更加明显。
4结论
通过分别采用BP网络和模糊BP网络建立了电路故障诊断模型,对电路相同工作状态参数的诊断结果进行比较,得出了模糊数学对提高电路故障诊断模型精度和有效性效果明显的结论。模糊数学和神经网路理论的组合有效地提高了模拟电路故障诊断模型的收敛速度,提高了故障诊断的工作效率,还提高了诊断的准确性,有效性得到了充分显示。
参考文献
[1] 吕律,魏蛟龙.基于模糊神经网络的板级电路故障诊断研究[J].计算机与数字工程,2003(3):21-23.
李国勇.智能预测控制及其MATLAB实现[M].北京:电子工业出版社,2010.
MATLAB中文论坛.MATLAB神经网络30个案例分析[M].北京:北京航空航天大学出版社,2010.
朱大奇.电子设备故障诊断原理与实践[M].北京:电子工业出版社,2004.
神经网络原理篇5
关键词:神经网络; BP网络; 天线; EDA
中***分类号:TP18文献标识码:A
文章编号:1004-373X(2010)15-0071-03
Application of Neural Network in Antenna Design
ZHANG Shan-shan
(Xi’an Institute of Electronic Engineering, Xi’an 710100, China)
Abstract: The application of neural network in antenna design is put forward because the processing speed of many antenna design softwares is not fast enough. A neural network-based optimization is to train the neural network with the input and output of a system, and by its associative memory self-learning function to make the output of the network is similar to the output of the original system in the case of the same input. In this way, the network can be used to simulate the output of the original system to achieve the fast calculation since the processing speed of neural networks is generally fast enough.
Keywords: neural network; BP network; antenna; EDA
0 引 言
随着通信技术和计算机技术的日趋成熟和完善,微波通信、移动通信、卫星通信等无线通信都在高速的发展,人们预计无线通信将在通信行业占领愈来愈重要的地位。天线是无线通信领域中非常重要的元器件,对天线的研究是无线通信研究中的一个重要的课题。目前,有很多电磁仿真软件可以用来辅助天线设计,应用较为广泛的Agilent公司的ADS和Ansoft公司HFSS,分别基于矩量法(Method of Moments,MoM)与有限元法(Finite Element Method,FEM),均具有较精确的天线设计方案,但是处理速度一般都不是很理想。随着天线设计的复杂程度提高,而设计周期却在减小,提高微波EDA的处理速度成为迫切需要解决的问题。如果在不大幅度降低精确性的同时对处理速度进行改进,就要找到一种处理方法,它必须满足两点:第一,可以充分逼近任意复杂的非线性关系;第二,使得快速进行大量运算成为可能[1]。
而神经网络就满足这两个条件,基于神经网络的优化计算就是利用神经网络的联想存储及自学习功能,以某一系统的输入作为网络的输入,以这一系统的输出作为网络的目标,反复训练网络,最终使网络具有与原系统相似的输出。这样,在相同的输入下,就可以用网络的输出来模拟原系统的输出。这里以天线设计中某些要变化的参数作为网络的输入,以天线的某些性能指标为网络的训练目标,用少量的原始数据(由微波EDA得出)训练网络,直到误差符合要求,并且用一定量的数据来测试网络,以确保网络的输出接近真实值。训练完毕后,就可以用所训练的网络来代替原EDA进行计算,而神经网络的处理速度要快得多,从而达到了加速的目的。
1 神经网络简介
人工神经网络(Artificial Neural Network,ANN)早期的研究工作应追溯至20世纪40年代,W.Mcculloch和W.Pitts首先提出神经元的数学模型。1982年和1984年美国物理学家Hopfield在美国科学院院刊上发表了两篇关于人工神经网络研究的论文,引起了巨大的反响。随即,一大批学者和研究人员围绕着 Hopfield提出的方法展开了进一步的工作,形成了上世纪80年代中期以来人工神经网络的研究热潮[2]。
表征神经网络需要3个方面:网络拓扑结构、神经元特性、以及学习(或训练)方法。人工神经网络是由简单的处理单元所组成的大量并行分布的处理机,这种处理机具有存储和应用经验知识的自然特性,它与人脑的相似之处概括为两方面:一是通过学习过程利用神经网络从外部环境中获取知识;二是内部神经元用来存储获取的知识信息[3]。
2 天线馈电匹配设计
微带贴片天线以其体积小、重量轻、易与载体共形、电气性能多样化等特点,在无线通信领域得到越来越广泛的应用,因此,本文以贴片天线的贴片尺寸对S11参数影响为例说明神经网络在天线馈电匹配设计中的应用。
利用Ansoft公司HFSS建立天线模型,如***1所示。基底:中心坐标(-30,-30,0) mm,x轴90 mm,y轴80 mm,z轴1.6 mm,介电常数4.4。贴片:中心坐标(0,0,1.6) mm,x轴37.5 mm,y轴25 mm。馈电探针:中心坐标(2.76,10,0) mm,方向z轴,直径0.63 mm,高16 mm。接地探针:中心坐标(1,10,0) mm,方向z轴,直径0.32 mm,高1.6 mm。以贴片长宽为变量,设为fx,fy,在本例中fx范围[3.5,4.0] cm,步长01 cm;fy范围[2.2,2.7] cm,步长01 cm;频率范围[22,24] GHz, 步长0002 GHz。以fx,fy,f为变量进行扫描,共扫描点数:3 636个。
***1 贴片天线HFSS模型
目前,神经网络结构的选择尚无一种统一而完整的理论指导,一般只能由经验选定。而网络的结构直接影响网络的逼近能力及推广性质。因此,应用中如何选择合适的网络结构是一个重要的问题。本文中采取三层的BP网络,BP网络实质上是实现了一个从输入到输出的映射功能,而数学理论已证明它具有实现任何复杂非线性映射的功能。这使得它特别适合于求解内部机制复杂的问题,而且网络能通过学习带正确答案的实例集自动提取合理的求解规则,即具有自学习能力,并具有一定的推广、概括能力[4]。
为了使网络收敛速度加快对训练样本(输入和输出),一般采取先归一化再训练的方法[5],即样本的取值范围都是[0,1]。中间层训练函数tansig,输出层训练函数tansig的定义域都是[-1,+1],都包括了样本的取值范围。在这里学习函数设为trainlm收敛速度较其他学习函数要快。误差设为0000 1,是因为训练样本采取了先归一化再训练的方法,其结果的误差会随着反归一化变换时被放大,所以目标误差设定要小一点,但是不能太小,否则会产生过拟和现象。
Matlab程序(BP网络的训练部分):
net=newff(Pr,[75,1],{′tansig′,′tansig′},′trainlm′); net.trainParam.epochs=1 500; net.trainParam.goal=0000 1;
net.trainParam.show=1; net.trainParam.lr=0.08; net =train(net,p,T);
网络的逼近、推广能力同学习样本的典型性密切相关,而从问题中选取典型样本实例组成训练集是一个很困难的问题。一般来说,要保证BP网络模拟曲线逼近原参数曲线,在选取训练点时注意两个条件:第一,尽量使训练点分布平均,即在各个S参数曲线上的训练点尽量相等[6];第二,尽量在S参数曲线上保持平均分布。本文为了说明BP网络性质是随机选取的训练点,可能不满足这两个条件,但是在应用HFSS时,就可以在平均在各个S参数曲线上取训练点,而且在各个S参数曲线上按一定步长选取训练点,这样就可以保证上述两个条件,使BP网络模拟曲线尽量逼近原参数曲线,获得一定数量的预测值[7]。
2.1 改变样本点数量
***2为样本点为2 500时的模拟S11曲线。***3为样本点为1 500时的模拟S11曲线。训练误为差0000 1,学习效率为008,中间层数为75,中间层训练函数tansig,输出层训练函数tansig,学习函数trainlm。
***2 样本点为2 500时的模拟S11曲线
由***2,***3可知,在训练目标误差为0000 10的情况下,用1 500个点频值模拟3 600个值的S11参数曲线,减小了多一半的工作量,可以看出,随着样本数量的减少,网络逼近能力变差。
一般来说,随着样本数量的减少,网络的泛化能力将变差。泛化能力差,预测能力(也称逼近能力)也差,并且一定程度上,随训练能力地提高,预测能力也提高。但这种趋势有一个极限,当达到此极限时,随训练能力的提高,预测能力反而下降,即出现所谓“过拟合”现象[8]。此时,网络学习了过多的样本细节,而不能反映样本内含的规律。
***3 样本点为1 500时的模拟S11曲线
2.2 改变中间层数量
***4(a)是中间层为200的情况,训练目标误差为0000 10,训练达到目标误差所用步数为98步。***4(b)是中间层为75 的情况,训练目标误差为0000 10,训练达到目标误差所用步数为153步。***4(c)是中间层为50的情况,训练目标误差为0000 10,训练达到目标误差所用步数为512步。
由***4可知,中间层数量对训练函数所用迭代次数有影响,这实质上是网络容量的可能性与可行性的关系问题,即学习复杂性问题。同时中间层数量对训练函数的收敛性也有重要的影响,中间层数过少,可能会导致训练函数过程的不收敛[9]。从数学角度看,BP算法为┮恢知局部搜索的优化方法,但它要解决的问题为求解复杂非线性函数的全局极值,因此,中间层数量过少时,算法很有可能陷入局部极值,使训练失败[10]。
2.3 改变学习效率
***5(a)是学习效率为0.08的情况,训练达到目标误差所用步数为153步。***5(b)是学习效率为0.04的情况,训练达到目标误差所用步数209步。***5(c)是学习效率为0.02的情况,训练达到目标误差所用步数为296步。
由***5可知,学习效率对BP网络预测效果,即泛化能力影响不大,对训练达到目标误差所用迭代次数有影响。由于BP算法本质上为梯度下降法,而它所要优化的目标函数又非常复杂,因此,随着学习效率降低,必然会出现锯齿形现象,这使得BP算法低效,而且由于优化的目标函数很复杂,它必然会在神经元输出接近0或1的情况下,出现一些平坦区,在这些区域内,权值误差改变很小,使训练过程几乎停顿,即存在***现象[7]。
***4 不同中间层数的模拟S11曲线
***5 不同学习效率下的模拟S11曲线
3 结 语
本文以计算贴片天线的S11参数为例,具体说明了神经网络(这里用的是BP网络)在天线设计中的应用, 基于神经网络的优化计算是用某系统的输入输出来训练网络,利用神经网络的联想存储及自学习功能,在相同的输入下,使网络具有与原系统相似的输出。这样,就可以用网络的输出来模拟原系统的输出,而神经网络的处理速度一般来说是很快的,从而达到加快计算的目的。随着天线设计的复杂程度提高,设计周期在减小,本方法具有广泛的应用前景。
参考文献
[1]钟顺时.微带天线理论与应用[M].西安:西安电子科技大学出版社,2000.
[2]张青贵.人工神经网络导论[M].北京:中国水利水电出版社,2004.
[3]海金.神经网络原理[M].叶世伟,译.北京:机械工业出版社,2004.
[4]飞思科技产品研发中心.神经网络理论与Matlab 7实现[M].北京:电子工业出版社,2005.
[5]哈根.神经网络设计 [M].戴葵,译.北京:机械工业出版社,2005.
[6]Georg Dorffner. Artificial Neural Networks [M]. [S.l.]: ICANN, 2001.
[7]许东.基于Matlab 6.X 的系统分析与设计――神经网络[M].西安:西安电子科技大学出版社,1998.
[8]田景文,高美娟.人工神经网络算法研究及应用[M].北京:北京理工大学出版社,2006.
神经网络原理篇6
关键词: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,该数据可以满足战技指标。
神经网络原理篇7
关键词:网络故障;故障检测;故障定位;故障诊断;专家系统;数据挖掘;神经网络
中***分类号:TP393.06
随着计算机、通信以及互联网技术的飞速发展及应用,网络作为一种重要的工具,在***事、***治、经济和科研等诸多领域起着越来越重要的作用,已经成为社会生产和生活必不可少的一部分。与此同时,网络的规模和复杂性不断增大,一旦网络发生故障,如果不能在有效时间内对网络故障进行诊断与修复,将会造成巨大的损失,甚至严重威胁社会的安全与稳定,因此对网络故障诊断技术进行研究具有越来越重要的应用价值和现实意义。
1 网络故障诊断一般过程
通常来说,网络故障诊断是以网络原理、网络配置和网络运行的知识为基础,根据网络出现的故障现象,并使用专门的网管理和检测工具以获取告警信息进而对网络中出现的故障进行诊断、恢复以及预测的过程,一般可分为以下五个部分[1]:
(1)故障检测,即网络故障告警信息的获取。网络发生故障时,通过主动轮询或异步收集方式,对网络中的相关设备或服务的相关告警信息、设置和性能参数,状态信息等进行收集和分析,及时发现网络出现的故障及问题。
(2)故障定位,即定位故障源。对故障检测阶段收集的海量告警数据进行分析和处理,在网络中找出故障,为下一步的故障原因的诊断提供依据。
(3)故障原因的诊断,即查找故障产生的根源。根据故障定位的结果综合运用各种规则进行系统的推理,快速的找到故障产生的原因或者最可能的原因。
(4)故障修复。根据网络故障诊断结果修复网络故障,恢复网络的正常运行。
(5)故障预测,即根据先验知识和监测数据预测网络可能发生的故障。
其中故障检测,故障定位,故障原因诊断是必不可少的三个步骤,下面将重点对上述三个步骤进行详细的介绍。
2 网络故障检测
通常计算机网络通过以下两种方式收集信息,通过分析收集到的信息来检测故障[2]。
(1)Trap机制。在网络中每一个被管设备中都要运行一个程序以便和管理站中的管理程序进行通信。
(2)主动轮询。网络中发生故障的被管设备或服务主动向网络管理系统发出告警信息,能够及时发现网络中的故障,网络管理系统还需通过主动轮询这种方式了解与网络性能密切相关的信息,并对这些影响网络性能信息设置阈值,来判断网络性能,超过设定阈值也会触发事件。
3 网络故障定位
网络系统中,一般通过监测被管设备或服务等各种方法获取大量原始告警数据或历史积累信息,这些数据往往由于通信系统的复杂性、网络结构异构性、噪声、外界因素、因果关系等原因而具有相当大的不确定性和不精确性,导致故障症状和故障原因都存在非线性映射关系,需要利用关联技术对数据进行处理和分析才有效的进行故障定位[3],目前常用的故障定位技术主要有下面几种:
3.1 基于人工智能的故障定位技术
3.1.1 基于规则的推理技术
基于规则的推理(Rule-based Reason,RBR)是最简单的关联技术,已被用于多种构架。一般而言,基于规则的系统由三个组成部分组成,如***1所示。
(1)推理引擎,主要提供解决问题所需要的策略。
(2)知识库,提供和定义与问题相关的规则和专家知识。
(3)工作内存,主要提供解决问题所需要的数据。
在基于规则的推理的网络故障定位系统中,知识库充当一个专家的角色,利用从人类专家获取专家积累的经验和知识,这些知识主要包括对网络问题的定义以及当某一特定问题发生时,网络故障定位系统需要执行的操作。工作内存主要是利用具体的网络协议对网络中的被管设备或服务进行监测,得到有关被管设备或服务的各种信息。在对网络故障进行定位时,推理引擎与知识库共同合作,将监测得到的网络中被管设备或服务的状态信息与知识库中定义好的条件部分进行比对,根据条件满足与否,来进行网络故障的定位。
基于规则的网络故障定位系统,由于无需对专家系统的具体结构和操作细节进行深入了解,从而具有结构简单等诸多优点,并且实现起来比较简单,非常适用于小型系统。但是基于规则的网络故障定位系统在匹配规则时,需要网络状态与知识库中的规则条件精确匹配,否则将推出整个推理过程,无法定位故障,并且规则存在不易维护性和指数增长性,所有这些缺点决定了基于规则的网络故障定位系统不适用大型系统。
3.1.2 基于模型的推理技术
基于模型的推理(Model-based Reason,MBR)是建立在面向对象上的基础之上,利用现有的专家经验和知识,将具体的目标系统中的实体都模型化诊断对象,并且明确地表现出现实目标系统中对象之间存在的各种关联关系,再根据系统模型对具体的目标系统的行为进行推测。由于通常情况下,具体的目标系统与理想的系统模型之间存在差异性,因此基于模型的推理的专家系统需要对推测的行为和目标系统的实际行为进行不一致诊断,以确定具体目标系统中的故障根源。
为了更好地说明基于模型的推理专家系统的工作流程,文献[4]使用一个物理模型和对应的对等模型分别如***2、3所示的网络系统。网络系统按一定的周期,有规律的向***2中的被管设备发送ping命令以监测网络系统中的被管设备是否运行正常。管理系统和被管设备之间通过一个模型对象实现彼此之间的相互通信,具体来说,如***2所示,系统中的集线器模型向被管设备集线器发送ping命令,路由器模型则向被管设备路由器发送ping命令。当目标网络发生故障时,如果故障发生在集线器1,则集线器1模型可以将其发现并且识别出来,如果集线器1模型连续3次向被管设备集线器1发送ping命令,在3次响应超时以后,集线器模型1根据现有的网络现象推测被管设备集线器1有可能发生故障,或者说目标系统中的故障位于集线器1。集线器1模型则会在确定故障并正式发送告警信息之前,集线器1模型将分析自身与***2中其他被管设备的模型之间的关系以此来确定其是否应该询问网络中路由器模型,如网络中的路由器模型返回的是相应的被管路由器设备工作处于正常状态,则集线器1触发警报。
3.1.3 基于范例的推理技术
基于范例的推理(Case-based Reason,CBR)故障定位技术与前面的基于规则推理技术和基于模型推理技术相比具有很大的差异性,主要因为基于范例的推理技术的思想源于人类现实生活,主要根据过去积累的实际经验或经历,利用类比的推理方法对现有的新问题做出相似的解答,然后根据新问题与旧问题之间的差异对解答进行修改从而得到新问题的完全解答。基于范例推理的网络故障定位技术主要由四个部分组成,检索 (Retrieve)、复用(Reuse)、修正(Revise)、保存(Retain),简称4R过程。
基于范例推理的故障定位技术与基于规则推理的故障定位技术相比,由于在基于范例推理的故障定位技术中检索只是基于对案例的部分匹配,而基于规则推理的故障定位技术则是完全匹配,因此基于范例推理的故障定位技术对网络配置变化的适应度更好,更适用于问题的总体解决方案。
3.2 模型遍历技术
模型遍历技术(Model traversing techniques)是一种构建网络故障传播模型的方法,该方法在构建故障传播模型时,主要根据网络在运行时各种被管对象之间的相互关系,并且按照从引起事件的被管对象开始的顺序进行构建。该方法主要适用于网络中被管对象之间的相互关系类似于***形,并且一般情况下较容易获取的情况,并且在系统配置变化较频繁时该方法的鲁棒性很好。模型遍历技术主要具有两大特点,事件驱动和事件关联,所谓事件驱动是指在一个故障症状报告到来之前,系统一直处于等待故障症状状态;事件关联则是确定两个故障症状是否来源同一个事件源。
一般情况下,模型遍历技术需要在其事件报告中明确标识网络系统中故障的征兆类型、征兆目标等相关信息,如果网络系统中出现故障征兆,且不妨用si来表示该故障征兆,当si的目标和si来源相同,则说明si是一个次要征兆也就说明某些告警信息可以被忽略。模型遍历技术的整个处理可分为以下3步:
(1)首先,对网络中的每个事件,依据网络在运行时各种被管对象之间的相互关系对其构建一个和事件源相关的对象***。
(2)当给定的两个事件的对象***相交时,此时说明两个***至少包含同一个对象,则认为这两个对象***的事件源是关联的。
(3)当给定三个故障症状si,sj,sk,其中si,sj相互关联,sj,sk相互关联,则根据故障症状的传递性可知si是一个次要的故障症状。
4 网络故障原因诊断
(1)基于信号处理方法。该方法主要是依据信号模型,直接对网络系统中的可测信号进行分析与处理,并通过提取可测信号的频率等特征值,对网络中存在的故障原因进行诊断。
(2)基于解析模型的方法。基于解析模型的方法主要依据数学模型和数学方法来进行故障原因的诊断,在诊断时需要建立对象的精确数学模型。
(3)基于知识检测的方法。与基于解析模型方法相比,此方法最大的特点在于其并不需要对象的精确数学模型就可以对网络中的故障原因进行诊断。
下面主要介绍几种目前国内外研究学者研究比较多的基于知识检测的方法,基于专家系统故障原因诊断方法和基于模糊理论故障原因诊断方法以及基于BP神经网络故障原因检测方法。
4.1 基于专家系统故障原因诊断方法
基于专家系统故障原因诊断系统主要是利用人类专家的经验和历史积累诊断数据,使用一定的方法将其转化为系统能够识别的规则存在专家系统的知识库中。当网络中出现故障时,诊断系统利用专家系统知识库中的规则,对发生故障网络中的被管对象的各项性能参数进行处理与分析以正确的确定网络故障发生的具体原因[5]。组成由人机接口、推理机、知识库等六部分组成:
目前,国内外学者公认的专家系统瓶颈是知识获取问题,因为专家系统在诊断过程中主要依赖于从人类专家领域内获取的知识、经验和以往诊断数据,而这些获取起来途径有限,操作起来具有一定的局限性和复杂性。另外,专家系统在实时性和学习能力等方面也存在一定的局限性,因此目前通常将专家系统同其他方法相结合以提高专家系统在这些方面存在的局限性和不足。
4.2 模糊故障诊断方法
很多时候,网络中的故障与系统得到的网络现象之间存在非线性的映射关系,这种非线性的映射关系很难用确定的数学公式或者模型来刻画,相应的在故障原因诊断时,很难给出故障的精确原因。相反,只能给出故障发生的可能原因。对于这种存在一定模糊性的问题,可以使用模糊逻辑来解决。
目前使用的比较多的是向量识别法,其诊断过程可分为以下3步:
首先,需要根据网络中的故障与表征网络故障的数据,建立二者之间的关系,通常用关系矩阵R来表示。
其次,对需要诊断的目标网络系统(对象)进行状态检测,提取相关的特征参数以构建特征向量矩阵X。
最后,根据模糊理论和矩阵理论,求解前面两步构建的关系矩阵方程Y=X・R,得到关系矩阵方程的解Y,再根据隶属度等原则,对目标网络系统的故障向量Y进行处理,得到故障的原因。
从上述诊断过程可知,在模糊故障诊断中,正确的进行故障原因诊断的前提是建立关系矩阵R、隶属函数、特征值向量X,而这些矩阵、函数、向量的建立是人为构造而成,难免具有一定的主观性,并且由于该模糊诊断方法对特征元素的选取也有一定的要求,所以两者若处理不当,会导致该方法的诊断结果精度严重下降甚至完全错误。
4.3 BP神经网络诊断方法
由于人工神经网络的这些特性以及网络中故障与征兆之间有可能存在的非线性映射关系,使得人工神经网络在网络故障诊断中大有用武之地。目前,人工神经网络已经大量应用在网络故障诊断领域。BP神经网络是常用的人工神经网络模型[6]。
BP神经网络故障诊断分为训练和诊断两个阶段:
(1)训练阶段。BP神经网络对样本进行训练,以选定网络结构和规模,确定网络总层数、各层神经元数。借助BP学习算法,将原始网络收集到的故障样本的特征参数作为BP神经网络输入样本集,以与之对应的网络故障原因编码为BP神经网络的输出,以此对BP神经网络进行训练。
(2)故障诊断阶段。主要对待检测对象的故障样本进行特征提取和归一化处理,然后输入到BP神经网络进行诊断输出诊断结果,整个过程分为以下4个步骤:1)故障样本集预处理。2)BP网络结构设计。3)训练BP神经网络。4)故障诊断。
5 结束语
本文对网络故障的概念以及基本过程进行了概述,重点对当前网络故障中的故障检测、故障定位、故障诊断的关键技术及方法进行了研究和总结归纳,对开展网络故障诊断技术研究具有一定的指导意义。
参考文献:
[1]王成等.网络故障诊断技术研究[J].科技信息,2011(11).
[2]陈琳.一种网络环境中的故障诊断模型[J].北京航空航天大学学报,2004(11).
[3]张燕.网络故障诊断关键技术[J].电脑知识与技术,2009(31).
[4]李千目.战略互联网智能诊断技术研究[D].南京理工大学,2005.
[5]吴晓知,李兴明.网络故障管理专家系统中知识库的构造[J].微计算机信息,2008(06).
[6]戚涌,刘凤玉.基于BP神经网络的网络智能诊断系统[J].微电子学与计算机,2004(10).
神经网络原理篇8
【关键词】 BP神经网络; 疾病预测; BP算法; 精神***症
BP神经网络是人工神经网络的一种,它通过模仿生物大脑神经系统信息处理功能实现输入与输出之间的任意非线性优化映射,有着传统统计方法无法比拟的适应性、容错性及自组织性等优点,特别是用传统统计方法效果不好或不能达到目的时,采用BP神经网络往往能收到较好的效果,它在疾病预测中有着广阔的应用前景。
1 BP神经网络基本结构及BP算法基本原理
BP神经网络的基本处理单元是神经元(即节点),大量神经元广泛连接构成神经网络。BP网络通常含有输入层、隐含层(中间层)和输出层,每层均包括多个神经元,输入层与输出层各有一层,隐含层根据需要可以设多层,也可不设。神经元之间通过权相互连接,前一层神经元只对下一层神经元作用,同层神经元之间无相互作用,权值的大小代表上一级神经元对下一级神经元的影响程度,如***1 所示。网络中作用于神经元的激励函数通常采用的是S 型函数(sigmoid 可微函数),见式(1)。
f(x)=(1+e-Qx)-1(1)
式中Q 为调节激励函数形式的参数,称增益值。Q 值越大,S 形曲线越陡峭;反之,曲线越平坦,通常取Q =1。
BP算法(Back Propagation) 是为了解决多层前向神经网络的权值调整而提出来的,也称为反向传播算法,即网络权值的调整规则是向后传播学习算法,具体来说,BP算法是建立在梯度下降法的基础上的,训练过程由正向传播和反向 传播组成,在正向传播过程中,输入信息由输入层经隐含层逐层处理,并传向输出层,如果输出层得不到期望的输出,则转入反向传播,逐层递归的计算实际输入与期望输入的差即误差,将误差信号沿原来的连接通道返回,通过修改各层神经元的权值,最终使得误差信号最小。
2 BP网络的建模过程及模型设计要点
在流行病学中,可以应用BP网络建立疾病的预测模型,建模的基本过程如下:首先收集导致疾病发生的主要影响因素及疾病发生的结果;然后把影响因素及疾病结果输入到设计好神经网络模型中进行反复训练,直到网络收敛(即达到预期的训练误差),在训练过程中可适当采用一定的技巧使网络的训练速度最快、误差最小、模型最优;最后用建立好的模型进行疾病预测。下面具体探讨网络模型的设计要点。
2.1 确定训练样本
训练样本应来源于研究总体的一个随机无偏样本,并且按随机、对照、重复及盲法等原则收集资料、整理资料、分析资料,保证训练结果的无偏性。训练样本含量适宜,含量过大会造成训练速度偏慢,训练结果过分逼近训练集(或者说是该研究的外部真实性较差),使得网络的推广泛化能力降低,况且,大样本的收集大大增加了工作量;样本过小其代表性不够,使训练结果不够可靠(或者说是该研究的内部真实性较差)。一般来说,网络的结构越复杂,所需样本越多,结构越简单,所需样本可相应减少。对于单层BP网络可参照Logistic回归对样本含量的一般要求,当样本含量与连接权的个数比为10:1时[1],就基本能够满足要求,多层BP网络的样本量应在此基础上根据网络的复杂程度适当增加。
2.2 变量值的归一化处理
归一化处理的目的是把变量值归一到区间[-1,1]内,此原因大致有两个:一是因为BP网络中非线性传递函数的值域一般在区间[-1,1]内,因此输入及输出变量的取值都限于这个区间之内。二是为了使输入值(特别是那些比较大的输入值)均落在Sigmoid传递函数变化较大的区间,使网络的训练速度最快,改善网络的性能,当然如果输入及输出值原本就位于[0, 1]区间内,可不进行的归一化处理,归一化处理可采取以下两种形式:
xbji=xji/ (xji,max-xji,min)(2)
xbji=xji/ (xji,max)(3)
上式中xbji 为归一化后样本中第j 个样品的第i 个输入变量,xji 为原始资料第j个样品的第i 个输入变量; xji,max 与xji,min 为原始资料第j 个样品的第 i个输入变量的最大值和最小值。
2.3 BP网络的初始化
开始训练时,首先进行网络权值的初始化,这是因为如果初始权值选择不当,有可能造成训练时间过长,误差平面陷入局部极小[2],甚至不收缩。所以网络的初始权值一般取[-1 1]之间的随机数,这样可保证每个神经元的权值都能够在 型传递函数变化梯度最大的地方进行调节。
2.4 输入层的设计
输入层仅设一层,输入神经元的个数与输入变量的个数相同。
2.5 隐含层的设计
一是隐含层的层数,对BP网络而言,一个三层BP网络就可以完成任意的n维到m维的映射,一般情况下,采用单隐层的网络就可满足要求;二是隐含层神经元的个数,隐单元数目的确定比较复杂,与资料的特点、输入输出单元的数目都有关系,往往根据设计者的经验和多次试验来确定,本文采取类似于统计学中建立"最优"多元回归方程中逐步向前法和向后法的方式来确定隐单元的数目,该方法如下:先根据以下公式[3]确定一个隐单元数的范围,n1=n+m+a(4) 式中n 为输入单元数,m 为输出单元数,a 为[1,10]之间的常数。
然后放入足够多的隐单元,通过训练将那些不起作用的隐单元逐步剔除,直到不收缩为止(此即灵敏度修剪算法[4]);或者在开始时放入比较少的神经元,逐步增加隐单元的数目,直到达到比较合理的隐单元数目为止。
2.6 输出层的设计
输出层仅有一层,输出层神经元的个数与所希望得出的预测变量数目相等。
3 其它需要注意的问题
如何提高网络的泛化能力。网络的泛化能力,通俗的说就是网络对新样本的预测能力。网络的泛化能力与网络的结构和训练样本的特性有关,一般说来,网络的隐节点数与隐层数越少,网络的泛化能力越强,因此在实际应用时尽可能采用较少的隐节点数和隐层数来得到较优的网络,另外,加入噪声等也可以提高网络的泛化能力[5]。
如何提高网络的训练速度与收敛速度。为提高训练速度,可采用变化的学习速率或自适应的学习速率[6]。
如何克服局部极小。BP算法可以使权值收缩到某个值,但并不能保证其误差平面的全局最小值,这是因为采用梯度下降发可能会产生一个局部最小值。对于这个问题,可采用附加动量法[7]、遗传算法等。
4 模型拟合实例
某市通过随机抽样、多因素逐步Logistic回归分析该市的4所精神病医院的精神***症新发病例及其对照各131例,筛选出影响精神***症发病的主要因素共10个:X1(本人学历)、X2(母亲学历)、X3(婚姻状况)、X4(事件经历史)、X5(性格)、X6(工作学习压力)、X7(母亲孕龄)、X8(出生体重)、X9(家族史)、X10(非双亲抚养史)。变量赋值如表1。表1 精神***症发病影响因素及量化(略)
4.1 确定训练样本及测试样本。以上述131对样品作为训练样本,另外选取精神***症患者及正常人各20例作为测试样本。
4.2 设计合适的神经网络参数。输入神经元10个,单层隐含层,隐含层神经元数目4~13个之间,通过灵敏度修剪算法确定隐含层的最佳神经元个数,输出层神经元个数为1;训练次数1000次,训练目标0.01,学习速率0.1;隐含层采用 型正切函数tansig,输出层采用 型对数函数logsig ,网络训练的函数设定为trainlm。
4.3 编写程序。应用Matlab7.0编写BP神经网络程序如下:p=[ 0 1 3 1 0 0 3 0 1 0;0 1 1 2 2 1 4 1 2 1;......] '; %输入训练样本的输入变量p
for i=1:10
P(i,:)=(p(i,:)-min(p(i,:)))/(max(p(i,:))-min(p(i,:)));
%输入变量的归一化处理
end t=[1 1 1 1 1 1 1...... ]'; %输入训练样本的输出变量tthreshold=[0 1;0 1;0 1;0 1;0 1;0 1;0 1;0 1;0 1;0 1];
%限定输入变量的最大值与最小值no=[4 5 6 7 8 9 10 11 12 13 14];%隐含层神经元的个数 for i=1:11net=newff(threshold,K[no(i),1],{ 'tansig','logsig'},'trainlm');
%设定网络训练函数net.trainParam.epochs=1000; %设定训练次数net.trainParam.goal=0.01; %设定训练目标LP.lr=0.1;%设定学习速率net=init(net); %网络的初始化net=train(net,P,t); %网络训练
p_test=[0 1 3 1 0 0 3 0 1 0;0 1 1 2 2 1 4 1 2 1;......]'; %输入预测样本的输入变量for i=1:10
P_test(i,:)=(p_test(i,:)-min(p_test(i,:)))/(max(p_test(i,:))-min(p_test(i,:))); %归一化处理 end
Out=sim(net,P_test); %输出预测变量X=[1 1 1 1 1 1 1 1......]; %输入预测样本的实际结果
plot(1:40,X-Out); %绘制预测误差曲线
4.4 训练结果。通过反复训练发现,当隐含层神经元个数为8时,网络的训练速度最快,仅需要9次训练便达到到了预期的训练误差,训练的速度也比均匀,网络振荡最小。
4.5 测试样本的前瞻性考核。把40个测试样本的调查资料输入上述训练好的BP神经网络模型进行前瞻性考核,如果按照预报误差大于0.05时为预测错误的标准,则病例中有2例预测错误,正常人有3例预测错误,灵敏度及特异度分别为90%、85%,预测的一致率为87.5%,前瞻性考核的效果较好,通过预测误差曲线也可看出,如***2。
5 讨论
BP神经网络是一种非传统的多元非线性模型,可以识别变量间复杂的非线性关系,功能十分强大,而且无论变量是何种类型,是否满足正态性、***性等条件均可用于BP网络建模。疾病的发病过程亦是一个受多因素影响的复杂过程,利用传统的统计方法预测疾病的发生过程往往存在很大的局限性,而BP神经网络的优点恰恰适合预测疾病的发生过程。BP神经网络的设计直接关系到网络的应用效果,在应用时按照资料的特点从每一细节考虑网络的设计。当然,BP网络在流行病学领域的应用刚刚起步,尚存在一些问题有待解决,如权重系数的假设检验,计算权重系数的可信区间,含隐含层时权重系数的流行病学意义,输入变量的选择等都还需要进一步研究。
参考文献
1 Martin S,Werner V,Reinhard R.Neural networks and logostoc regression:Part I.Comp Stat Data Analy ,1996,21:661.
2 Haykin,S.神经网络原理(叶世伟等译).第2版.机械工业出版社,2004.
3 飞思科技产品研发中心.神经网络理论与MATLAB7实现.第1版.电子工业出版社,2005 .
4 邓伟,金丕焕,林果为.BP神经网络修剪算法筛选白血病预后危险因素.复旦学报(医 学版),2003,2:154~157.
5 HolmstromL,KoistinenP -Using Additive Noise in Back-Propagation-IEEE Trans·Neural Networks.1992,3:24~38.
6 张洪,邹乐君,沈晓华. BP神经网络在测井岩性识别中的应用.地质与勘探 ,2002,38(6):63~65.
神经网络原理篇9
[关键词] Spiking神经网络 学习模型 股市预测
一、引言
随着经济的增长,对于股市的预测将变得越来越重要,也成为经济理论研究中的一个重要课题。股票市场的变化有很多因素,是一个复杂的非线性系统,而人工神经网络能够从大量复杂的数据中找到数据间的内在联系,具有良好的自我学习和抗干扰能力,在股票预测领域中取得了显著的效果。本文应用一种更接近于生物神经系统的Spiking神经网络,采用基于粒子群算法的学习模型,构建了沪市上证综合指数的学习预测模型,并用实际数据进行了分析实验。
二、Spiking神经网络及其学习模型
Spike神经元模型是更接近生物神经元的一个数学模型,由Spike神经元构成的人工神经网络称为Spiking神经网络。在Spiking神经网络中,一个Spike神经元在t时刻接收来自于父突触神经元的多个post-synaptic potential(PSP)信号,不断改变自己的膜电压。当它的膜电压超过阈值时,产生一个spike,并通过突触连接向外发送PSP信号。用于描述PSP信号的spike响应函数定义为:
三、上证综合指数的预测
沪市上证综合指数是上海证券交易所编制的,以上海证券交易所挂牌上市的全部股票为计算范围,以发行量为权数综合,上证综指反映了上海证券交易市场的总体走势,所以对上证综指的预测具有重要的意义。文中选取了2006年6月~2007年7月共286个工作日的沪市上证综合指数作为研究的原始数据,利用滑动窗口技术,通过前6天收盘时的上证指数来预测第7天收盘时的上证指数。
我们构建了具有6个输入神经元、4个隐含层神经元和1个输出节点的前向全连接Spiking神经网络,并利用以上的Spiking神经网络学习模型进行测试。选取了原始数据中的前276个数据构成神经网络的训练集,后10个数据用于测试。在实验前,我们对原始数据进行归一化的处理转换为[0,1]之间的值。把归一化后的前6天收盘时的上证指数分别作为6个输入神经元的spike时间加入到Spiking神经网络中进行学习和计算,获得神经网络输出节点的spike时间,该时间对应于第7天的收盘指数。按本文式(3)计算获得Spiking神经网络的学习误差,通过粒子群算法不断调整神经网络的参数使误差最小化。获得了最优的Spiking神经网络后,用测试集的数据对其性能进行了测试。经Spiking神经网络学习预测后的上证指数变化如***。
结果表明,与传统BP算法相比,基于粒子群算法的Spiking神经网络具有较快的运算速度和逼近性能, 同时可以克服SpikeProp算法陷入局部最优解和对权值有约束的缺点,可以较好地处理股票类非线性数据的学习和预测。
四、结论
股票市场的不确定因素太多,是一个复杂的非线性系统,而神经网络具有自我学习的能力,能很好地解决不明确环境中的非线性应用问题。Spiking神经网络作为一种新型的动态的神经网络,其利用动态的spike时间进行信息编码和计算的特点与股票市场中动态的时间序列相吻合。文中对应用Spiking神经网络预测国内股票市场做了初步的探讨,获得了较好的拟合效果。进一步改进原始数据的处理方式,提高Spiking神经网络的自适应能力,将能得到更好的预测效果。
参考文献:
[1]Sander M:Bohte, Spiking Neural Networks [D].ISBN 90-6734-167-3, 2003
[2]Gerstner W, Kistler W. Spiking Neuron Models: Single Neurons, Populations, Plasticity [M]. Cambridge University Press, 2002
[3]韩文蕾王万诚:概率神经网络预测股票市场的涨跌[J].计算机应用与软件,2005,22(11):133~135
神经网络原理篇10
关键词:模糊聚类;神经网络;选址决策
中***分类号:TP18文献标识码:A 文章编号:1009-3044(2009)33-9328-04
Multiple Logistic Distribution Center Allocation Strategy Based on Fuzzy Clustering Neural Network
CAO Xue-hua
(Jiangyin Polytechnic College,Jiangyin 214405, China)
Abstract: In this paper a novel multiple logistic distribution center allocation strategy is proposed. Via constructing an effective fuzzy clustering neural network algorithm, the new strategy could achieve multiple candidate distribution center's estimated fitness value, as well as the standard distribution center's reference guideline system, and multiple candidate distribution center's subjection degree to the standard center. The application of the algorithm shows that the new algorithm has better performance in stable convergence rate, convergence speed, and threshold sensitivity. The result illuminates that the proposed algorithm provides more efficient and more stable application worthiness.
Key words: fuzzy clustering; neural network; allocation strategy
1 概述
随着我国经济的快速增长和市场经济体系的建立,各类经济实体之间的经济交往日益频繁,消费需求特性发生了很大的变化,多品种、多批次、小批量的个性化需求成为主流,对相应的物流活动提出很高的要求。为了满足消费者的多样化需求,降低成本、提高效率和敏捷化程度,产品的物流过程已逐步从传统的资源供应点直接到需求点,演变为资源供应点到公共物流中心再到需求点。物流配送中心在物流网络中处于重要的枢纽地位,是实现物流活动集约化、现代化和低成本化的战略据点。由于物流配送中心建设投资大、涉及因素多、服务周期长、效应长且风险大,中心选址是否合理直接影响到物流系统的顺畅性、运营效率。
长期以来,科研人员对此问题从不同的角度进行了研究,建立了许多的模型和算法。如模糊综合评判法、层次分析法以及结合层次法的模糊排序方法等。但这些方法也有一些缺点。利用模糊综合评判法,其指标权重难以确定;专家打分法确定权重,人为因素又过重;利用层次分析法确定权重可以弱化人为因素,但是层次分析法要求指标的层次结构系统中的要素互相***,但这些指标之间却往往存在依赖关系,如地价和运输条件、***府***策和经营环境等。而且以上方法只能对单一的配送中心进行辅助选址决策,对于多个物流中心同时进行选址规划的情况,是无能为力的。
本文利用模糊聚类神经网络的方法,既可以同时得到现有侯选中心的优劣评价值,标准物流配送中心的参考指标体系,和现有多个侯选配送中心相对于标准中心的权重。从而对多物流配送中心选址决策进行有效辅助决策。
后绪章节是这样组织的,第2部分讲述了模糊聚类的原理,第3部分讲述了利用模糊聚类神经网络实现配送中心选址决策的算法,然后是物流配送中心选址决策的设计和结果,最后是总结。
2 模糊聚类
模糊聚类能确定样本属于各个类别的不确定性程度,表达了样本类别的概率偏向,更客观地反映现实世界的聚类规则,因而目前广泛应用于辅助决策、模式识别、***象处理、系统建模等领域。
目前,针对不同的应用领域,根据不同的理论已经提出了许多模糊聚类算法和实现途径。基于无监督学习的模糊聚类算法被广泛应用于对未知样本进行自适应的学习,其中最著名的是FCM算法[1],算法的实现是采用基于目标函数的方法,该方法设计简单、解决问题的范围广,最终可以转化为优化问题求解,易于计算机实现。
基于目标函数的模糊聚类主要是利用模式集O的观测值X={x1,x2,…,xN}与聚类原型特征值V={vi, 1≤i≤c}之间的距离构造一个目标函数,然后通过优化这一带约束的非线性规划问题获得最佳的模糊c-划分。算法的实现途径主要有基于交替优化(AO)、神经网络(NN)和进化计算(EC)等方法。
模糊聚类问题用数学语言描述:把一组给定的模式X={x1,x2,…,xN}划分为c个模糊子集(聚类)S1,S2,…,Sc。如果用μik(1≤i≤C, 1≤k≤N)表示模式xk隶属于模糊子集Si的程度,那么就得到了这组模式的模糊c-划分U={μik|1≤i≤c, 1≤k≤n }。假定每个模糊子集Si(1≤i≤c)都有一个典型模式vi,又称聚类原型或聚类中心,这样任一模式xk与模糊子集Si的相似性可以通过模式ok与聚类原型vi间的失真度dik=D(xk, vi)来度量。
模糊C-均值聚类算法的目标函数为原始输入空间类内加权平方误差,公式如下:
(1)
约束条件为:
(2)
m为模糊加权参数,又称为平滑因子,控制着模式在模糊类间的分享程度,目前一般根据应用领域的经验在[1,5]之间取值。
应用拉格朗日乘子法求解min(Jm(U,V)),可得模糊聚类结果公式:
(3)
(4)
可见,利用模糊聚类,可以同时得到聚类中心及输入空间各原始向量对聚类中心的隶属程度。
3 多物流配送中心选址决策算法
物流配送中心的选址通常是在一定的原则,如降低成本原则、经济效益原则、提高客户服务水平等原则的指导下,预先选择一些方案,然后再通过各种方法对这些方案进行比较,最终从中选出满意的一个或几个方案作为新的中心的地址。配送中心选址的影响因素很多,一般应根据物流学的原理,结合自身的实际情况,选择其中较重要的一些因素,作为指导决策的指标。这样,一组因素的组合,就是一个待选方案。
本文采用模糊聚类神经网络的方法对方案进行比较,得到理想方案。首先,根据已有配送中心选址方案和专家经验得到一个模糊评价矩阵,然后,用模糊评价矩阵训练神经网络,一旦神经网络的结果达到了专家评价一样的效果,则说明此神经网络经过有指导的机器学习,已具备了对方案优劣进行正确判断的能力,则此神经网络就可用来对侯选的配送中心地址方案进行判断,辅助选址决策。
具体思路是,根据FCM算法,用已有配送中心方案做为原始训练用输入向量,用专家经验设置聚类中心的初始值,用已建立的模糊评价矩阵中的专家评价值和当前系统实际输出评价值之间的误差作为网络误差不断训练直至误差小于特定阈值,可以得到使网络误差最小的若干聚类中心和相应隶属度矩阵和方案评价值。也就是说,此时的神经网络已具备了专家一样的评价能力,不但能对方案进行评价,同时还得到了若干标准配送中心的参考标准指标体系,和现有配送中心相对于标准中心的权重。
由于客观环境的限制,以上标准指标体系只是一种参考,但由于同时得到了方案评价值和方案相对于标准中心的权重,使本文提出的多中心选址决策相对于现有的决策算法有更高效、实用、简便的特性。
神经网络训练好以后,用侯选配送中心方案做为测试用输入向量,用已训练好的聚类中心计算相应隶属度矩阵,就实现了对侯选方案进行评价,同时还得到多个侯选方案相对于标准中心的权重。从而实现了多物流配送中心的选址决策。
3.1 建立模糊评价矩阵
设配送中心选址考虑八个因素:地质条件,水文条件. 交通运输,候选地地价,候选地面积. 经营环境. 通讯条件. 道路设施。搜集已有的正在运营的配送中心的关于此8个关键指标的详细历史数据资料,根据专家经验对这些已有方案进行优劣打分,就可以得到训练用的模糊评价矩阵,见表1。
3.2 建立模糊聚类神经网络
根据神经网络的有教师指导的机器学习原理和模糊聚类的原则,设计了如下模糊聚类神经网络实现之。整个神经网络系统由2部分组成,第1部分是神经网络模糊聚类器,第2部分是系统输出合成。
3.2.1 神经网络模糊聚类器
神经网络模糊聚类器是1个3层BP神经网络,其结构如***1。输入层由P个节点组成,表示输入向量的P个分量。隐含层和输出层都由C个节点组成。
输入层到隐含层的传递函数由Dik=xk-vi 2实现,表示输入向量与第i个聚类中心的偏差距离,输入层到隐含层1的连接权定义为该隐含节点所代表的vi。
隐含层的输出直接无权连接到输出层,输出层的输出U代表输入向量对某类别的隶属度,传递函数由公式3实现。
3.2.2 系统输出合成
由模糊聚类器得到了输入向量对各聚类模式的隶属度矩阵后,系统的整体输出为下式:
(5)
将其代入公式6,用于神经网络训练时的误差控制。
总结模糊聚类神经网络(FCNN)的整体结构如***2。
3.3模糊聚类神经网络训练算法实现模糊评价体系的机器学习
根据以上的构建,算法中需要优化的参数包括聚类中心,结合神经网络训练特点,得到模糊聚类神经网络算法如下:
1)根据专家经验,初始化聚类中心vi。
2)利用带冲量项的神经网络梯度下降训练算法迭代更新vi。
3)根据vi,利用公式3,计算uik。
4)重复2,3直至神经网络误差函数小于特定阈值,误差函数定义如下:
(6)
其中tk即表1中的专家评价值。
4 算法在物流中心选址决策中的应用设计及分析
本文采用的数据是物流配送中心选址的一个标准数据集,见表1。数据集包含10组不同的方案,每组方案包含8个决定配送中心选址的关键因素和专家对此方案的打分。根据专家经验将方案归为3个不同的聚类模式。
将此数据集分别作为训练数据集应用在模糊聚类神经网络进行计算,采用上面的神经网络构造和训练算法。
表2对比给出了网络合理收敛时对方案的评价值和表1中专家的评价值。
可见,神经网络通过学习达到了与专家几乎相同的评价能力。
表3给出了模糊聚类神经网络得到的3个聚类中心,作为标准中心的参考指标体系。
***3,4是FCNN算法合理收敛的典型误差变化曲线。
表4总结了算法合理收敛时的性能参数。
表4
可以看出,FCNN算法一般迭代100次就可以达到较好的收敛和逼近,而且适应于较大的初始误差范围,也就是说,算法对不同的初始误差不敏感,算法对初值不敏感。由此可见,FCNN算法在收敛稳定性,收敛速度,初值敏感性方面都有较好的表现。
因此,将表5所示的侯选物流配送地址方案作为神经网络的输入向量,应用已得到的聚类中心vi, 利用公式3,计算得输出评价和各侯选方案对标准中心的权重如表6,7。
经过已训练好的神经网络计算,得到评价值如表6。
综合应用表6,7,可以实现对多哥侯选物流配送中心地址的判别,辅助选址决策。
5 结束语
本文针对传统选址决策的局限,提出了利用模糊聚类神经网络实现多物流配送中心的选址决策,算法同时得到现有侯选中心的优劣评价值,标准物流配送中心的参考指标体系、现有多个侯选配送中心相对于标准中心的权重。并构造了一种有效的模糊聚类神经网络实现算法。将算法应用在物流配送中心选址决策的结果表明,算法在有效收敛稳定性、收敛速度、初值敏感性等方面都有良好效果。说明本文提出的决策算法高效、实用、简洁的应用特性,具备先进稳定的实用效果。
参考文献:
[1] Witold Pedrycz,George Vukovich.Logic-oriented Fuzzy Clustering[J].Pattern Recognition Letters,2002,vol,23,pp.1515-1527.
[2] 何丕廉,侯越先.模糊聚类神经网络的非对称学习[J].计算机应用与发展,2001,38(3):296-301.
[3] 邓赵红,王士同.鲁棒性的模糊聚类神经网络[J].软件学报,2005,16(8):1415-1422.
[4] 韩庆兰,梅运先.基于BP人工神经网络的物流配送中心选址决策[J].中国软科学,2006,6:140-143.
[5] Bart Kosko.Fuzzy Engineering[M].黄崇福,译.西安:西安交通大学出版社,1996,118-126,60-72.
[6] A.Staiano, R.Tagliaferri, W.Pedrycz.Improving RBF networks performance in regression tasks by means of a supervised fuzzy clustering[J]. Neurocomputing,2006, vol.69, pp. 1570-1581.