神经网络的前向传播范文
时间:2023-10-31 17:58:54
导语:如何才能写好一篇神经网络的前向传播,这就需要搜集整理更多的资料和文献,欢迎阅读由公务员之家整理的十篇范文,供你借鉴。
篇1
本文主要介绍了人工神经网络的概念,并对几种具体的神经网络进行介绍,从它们的提出时间、网络结构和适用范围几个方面来深入讲解。
【关键词】神经网络 感知器网络 径向基网络 反馈神经网络
1 引言
人工神经网络是基于对人脑组织结构、活动机制的初步认识提出的一种新型信息处理体系。它实际上是一个由大量简单元件相互连接而成的复杂网络,具有高度的非线性,能够进行复杂的逻辑操作和非线性关系实现的系统,通过模仿脑神经系统的组织结构以及某些活动机理,人工神经网络可呈现出人脑的许多特征,并具有人脑的一些基本功能,利用这一特性,可以设计处具有类似大脑某些功能的智能系统来处理各种信息,解决不同问题。下面对几种具体的神经网络进行介绍。
2 感知器网络
感知器是由美国学者Rosenblatt在1957年首次提出的,感知器可谓是最早的人工神经网络。感知器具有分层结构,信息从输入层进入网络,逐层向前传递到输出层。感知器是神经网络用来进行模式识别的一种最简单模型,属于前向神经网络类型。
2.1 单层感知器
单层感知器是指只有一层处理单元的感知器,它的结构与功能都非常简单,通过读网络权值的训练,可以使感知器对一组输入矢量的响应达到元素为0或1的目标输出,从而实现对输入矢量分类的目的,目前在解决实际问题时很少被采用,但由于它在神经网络研究中具有重要意义,是研究其他网络的基础,而且较易学习和理解,适合于作为学习神经网络的起点。
2.2 多层感知器
多层感知器是对单层感知器的推广,它能够成功解决单层感知器所不能解决的非线性可分问题,在输入层与输出层之间引入隐层作为输入模式的“内部表示”,即可将单层感知器变成多层感知器。
3 线性神经网络
线性神经网络类似于感知器,但是线性
神经网络的激活函数是线性的,而不是硬限转移函数。因此线性神经网络的输出可以使任意值,而感知器的输出不是0就是1。线性神经网络最早的典型代表就是在1963年由美国斯坦福大学教授Berhard Windrow提出的自适应线性元件网络,它是一个由输入层和输出层构成的单层前馈性网络。自适应线性神经网络的学习算法比感知器的学习算法的收敛速度和精度都有较大的提高,自适应线性神经网络主要用于函数逼近、信号预测、系统辨识、模式识别和控制等领域。
4 BP神经网络
BP神经网络是1986年由以Rumelhart和McCelland为首的科学家小组提出的,是一种按误差逆传播算法训练的多层前馈网络,在人工神经网络的实际应用中,80%~90%的人工神经网络模型采用BP网络或者它的变化形式,它也是前向网络的核心部分,体现了人工神经网络最精华的部分,BP神经网络由信息的正向传播和误差的反向传播两个过程组成。输入层各神经元负责接收来自外界的输入信息,并传递给中间层各神经元;中间层是内部信息处理层,负责信息变换,根据信息变化能力的需求,中间层可以设计为单隐层或者多隐层结构;最后一个隐层传递到输出层各神经元的信息,经过一步处理后完成一次学习的正向传播处理过程,由输出层向外界输出信息处理结果。当实际输出与期望输出不符时,进入误差的反向传播阶段。误差通过输出层,按误差梯度下降的方式修正各层权值,向隐层、输入层逐层反传。周而复始的信息正向传播和误差反向传播过程,是各层权值不断调整的过程,也是神经网络学习训练过程,此过程一直进行到网络输出的误差减少到可以接受的程度,或者达到预先设定的学习次数为止。
BP网络主要应用于以下方面:
(1)函数逼近:用输入矢量和相应的输出矢量训练一个网络逼近一个函数。
(2)模式识别:用一个特定的输出矢量将它与输入矢量联系起来。
(3)分类:对输入矢量以所定义的合适方式进行分类。
(4)数据压缩:减少输出矢量维数以便于传输或存储。
5 反馈神经网络
美国加州理工学院物理学家J.J.Hopfield教授于1982年发表了对神经网络发展颇具影响的论文,提出一种单层反馈神经网络,后来人们将这种反馈网络称作Hopfield网。在多输入/多输出的动态系统中,控制对象特性复杂,传统方法难以描述复杂的系统。为控制对象建立模型可以减少直接进行实验带来的负面影响,所以模型显得尤为重要。但是,前馈神经网络从结构上说属于一种静态网络,其输入、输出向量之间是简单的非线性函数映射关系。实际应用中系统过程大多是动态的,前馈神经网络辨识就暴露出明显的不足,用前馈神经网络只是非线性对应网络,无反馈记忆环节,因此,利用反馈神经网络的动态特性就可以克服前馈神经网络的缺点,使神经网络更加接近系统的实际过程。
Hopfield神经网络的应用:
(1)在数字识别方面。
(2)高校科研能力评价。
(3)应用于联想记忆的MATLAB程序。
6 径向基神经网络
径向基RBF网络是一个3层的网络,除了输入、输出层之间外仅有一个隐层。隐层中的转换函数是局部响应的高斯函数,而其他前向网络,转换函数一般都是全局响应函数。由于这样的差异,要实现同样的功能,RBF需要更多的神经元,这就是RBF网络不能取代标准前向型络的原因。但是RBF网络的训练时间更短,它对函数的逼近时最优的,可以以任意精度逼近任意连续函数。隐层中的神经元越多,逼近越精确。
径向基网络的应用:
(1)用于曲线拟合的RBF网络。
(2)径向基网络实现非线性函数回归。
7 自组织神经网络
自组织竞争型神经网络是一种无教师监督学习,具有自组织功能的神经网络,网络通过自身的训练。能自动对输入模式进行分类,一般由输入层和竞争层够曾。两层之间各神经元实现双向连接,而且网络没有隐含层。有时竞争层之间还存在着横向连接。
常用自组织网络有一下几种:
(1)自组织特征映射网络。
(2)学习矢量量化网络。
(3)自适应共振理论模型。
(4)对偶传播网络。
参考文献
[1]韩力群.人工神经网络教程[M].北京:北京邮电大学出版社,2006.
[2]周品.神经网络设计与应用[M].北京:清华大学出版社,2013.
作者简介
孔令文(1989-),男,黑龙江省齐齐哈尔市人。现为西南林业大学机械与交通学院在读研究生。研究方向为计算机仿真。
篇2
关键词:发电燃料;供应预测;BP神经网络;预测方法
中图分类号:TM 762 文献标示码:A
0 引言
发电燃料的供应受到能源政策、供需形势、资源分布、供应价格、交通运输、市场博弈等多种复杂因素的影响,长期以来缺乏合理有效的供应预测方法和技术手段,尤其是厂网分离后鲜见相关的研究工作。
文献1《辽宁火电厂燃料管理信息系统的开发与研制》开发和研制了覆盖辽宁全体直属电厂燃料公司并同东电局进行广域网数据交换,同时能进行审核管理和业务信息方便传输的燃料综合管理信息系统。
文献2《电力系统燃料MIS系统开发研究》探讨了燃料管理信息系统的组成、功能、结构及开发应用,为综述性理论研究。
以上文献均未对发电燃料供应提供较有效的预测方法。本文提出一种基于BP神经网络的发电燃料供应量预测方法,利用神经网络原理,通过数据收集、数据修正和神经网络结构选择建立起基于BP神经网络的发电燃料供应预测模型。通过MATLAB实际仿真,证明该预测方法预测较准确,并具有灵活的适应性。
基金项目:中国南方电网有限责任公司科技项目(K-ZD2013-005)
1 预测方法
按预测方法的性质不同,预测可分为定性预测和定量预测。常用的定性预测方法有主观概率法、调查预测法、德尔菲法、类比法、相关因素分析法等。定量方法又可以分为因果分析法和时间序列分析法等,因果分析法也叫结构关系分析法。它是通过分析变化的原因,找出原因与结果之间的联系方式,建立预测模型,并据此预测未来的发展变化趋势及可能水平。时间序列分析法也叫历史延伸法。它是以历史的时间序列数据为基础,运用一定的数学方法寻找数据变动规律向外延伸,预测未来的发展变化趋势。由于时间序列模型无法引入对负荷影响的其它变量,所以,单纯应用时间序列模型进行供应预测精度难以提高。
运用人工神经网络技术进行预测,其优点是可以模仿人脑的智能化处理过程,对大量非结构性、非精确性规律具有自适应功能,具有信息记忆、自主学习、知识推理和优化计算的特点,特别是其自学习和自适应功能是常规算法和专家系统所不具备的,因此,预测是人工神经网络的最有潜力的应用领域之一,有非常广泛的前途。
2 BP神经网络模型
2.1 人工神经网络概述
人工神经网络是由神经元以一定的拓扑结构和连接关系组成的信息表现、储存和变换系统,是模仿人脑结构的一种信息系统,可较好地模拟人的形象思维能力。它是对自然界中生物体神经系统进行抽象和改造,并模拟生物体神经系统功能的产物。神经网络的重要特点是具有记忆和学习能力,经过一定训练之后,能够对给定的输入做出相应处理。
人工神经网络适用于处理实际中不确定性、精确性不高等引起的系统难以控制的问题,映射输入输出关系。人工神经网络优于传统方法在于:
1)实现了非线性关系的隐式表达,不需要建立复杂系统的显示关系式;
2)容错性强,可以处理信息不完全的预测问题,而信息不完全的情况在实际中经常遇到;
3)由于神经网络具有一致逼进效果,训练后的神经网络在样本上输出期望值,在非样本点上表现出网络的联想记忆功能;
4)由于大规模并行机制,故预测速度快;
5)动态自适应能力强,可适应外界新的学习样木,使网络知识不断更新。
图1是一个人工神经元的典型结构图。
图1 神经元典型结构图
它相当于一个多输入单输出的非线性阈值器件。,表示该神经元的输入向量;为权值向量;θ为神经元的阈值,如果神经元输入向量加权和大于0,则神经元被激活;f表示神经元的输入输出关系函数,即传输函数。因此,神经元的输出可以表示为:
其中传输函数是神经元以及网络的核心。网络解决问题的能力与功效除了与网络结构有关,在很大程度上取决于网络所采用的传输函数。
几种常见的传输函数如图2所示:
(1)为阈值型,将任意输入转化为0或1输出,其输入/输出关系为:
(2)为线性型,其输入/输出关系为:
(3)、(4)为S型,它将任意输入值压缩到(0,1)的范围内,此类传递函数常用对数(logsig)或双曲正切(tansig)等一类S形状的曲线来表示,如对数S型传递函数的关系为:
而双曲正切S型曲线的输入/输出函数关系是:
(1) (2)
(3) (4)
图2 常见的传递函数图形
2.2 BP神经网络概述
神经网络的魅力在于它超强的映射能力,单层感知器可实现性分类,多层前向网络则可以逼近任何非线性函数。可以将BP网络视为从输入到输出的高度非线性映射,而有关定理证明BP神经网络通过对简单的非线性函数进行数次复合,可以近似任何复杂的函数。
在人工神经网络的实际应用中,80%-90%的人工神经网络模型是采用BP网络和它的变化形式,它也是前向网络的核心,体现了人工神经网络最精华的部分。在人们掌握反向传播网络的设计之前,感知器和自适应线性元件都只能适用于对单层网络模型的训练,只是后来才得到进一步拓展。
BP神经网络主要应用有:
(1)函数逼近:用输入矢量和相应的输出矢量训练一个网络逼近一个函数。
(2)模式识别:用一个特定的输出矢量将它与输入矢量联系起来。
(3)分类:把输入矢量以所定义的合适方式进行分类。
(4)数据压缩:减少输出矢量维数以便于传输或存储。
2.3 误差反向传播算法原理
BP神经网络是一种多层前馈神经网络,名字源于网络权值的调整规则,采用的是误差反向传播算法(Error Back-Propagation Training Algorithm)即BP算法。BP神经网络是单向传播的多层前向神经网络。除输入输出节点之外,有一层或多层的隐藏节点,同层节点之间无任何连接。典型的BP网络是三层前馈阶层网络,即:输入层、隐含层(中间层)和输出层,各层之间实行全连接。BP神经网络结构如图3所示:
图3 BP神经网络结构示意图
BP网络学习过程包括误差正向传播和反向传播两个过程。在正向传播过程中,输入样本从输入层传入,经各隐含逐层处理后,传向输出层,每一层神经元的状态只影响下一层神经元的状态。若输出层的实际输出与期望的输出不符,则转入误差的反向传播阶段。误差反传是将输出误差的某种形式通过隐含层向输入层逐层反传,并将误差分摊给各层的所有单元,从而获得各层单元的误差信号,此误差信号即作为修正各神经元之间权值的依据。这种信号正向传播与误差反向传播的各层权值调整过程,是周而复始地进行的。权值不断调整的过程,也就是网络学习训练的过程。此过程一直进行到网络输出的误差减小到可接受的程度,或进行到预先设定的学习次数为止。
BP神经元与其他神经元类似,不同的是,由于BP神经元的传递函数必须是处处可微的,它不能采用二值型{0,1}或符号函数{-1,1},所以其传递函数为非线性函数,最常用的函数S型函数,有时也采用线性函数。本文采用S型(Sigmoid)函数作为激发函数:
式中,为网络单元的状态:
则单元输出为:
其中,为单元的阀值。在这种激发函数下,有:
故对输出层单元:
对隐层单元:
权值调节为:
在实际学习过程中,学习速率对学习过程的影响很大。是按梯度搜索的步长。越大,权值的变化越剧烈。实际应用中,通常是以不导致振荡的前提下取尽量大的值。为了使学习速度足够快而不易产生振荡,往往在规则中再加一个“势态项”,即:
式中,是一个常数,它决定过去权重的变化对目前权值变化的影响程度。
图4为BP算法流程图。
图4 BP算法流程图
3 发电燃料供应预测BP神经网络模型建立
3.1 数据的收集与整理
发电燃料供应是一个庞大的系统,其中的数据资料纷繁复杂。在进行模型的搭建之前,需要进行历史资料的整理,提取出所需的数据。本模型中,选取与燃料供应有关的数据作为影响因素,如电厂发电量、能源政策、能源供需形势、交通运输状况、燃料价格和机组能耗等。
3.2 数据的修正
如果在数据采集与传输时受到一定干扰,就会出现资料出错或数据丢失的情况,此时都会产生影响预测效果的坏数据,这些坏数据将会掩盖实际模型的规律,直接影响模型的效果与精度。据此,需对样本数据进行预处理,以确保在建模和预测过程中所运用的历史数据具有真实性、正确性和同规律性。一般样本数据预处理方法主要有经验修正法、曲线置换法、插值法、20%修正法、数据横向纵向对比法、小波分析去噪法等。对于简单问题,采用数据的横向纵向对比即可实现坏数据的剔除。
3.3 BP神经网络的结构选择
理论证明,3层前向式神经网络能够以任意精度实现任意函数,所以,本模型中采用3层前向网络。同时,当有N个影响时, 3层BP神经网络的输入层节点数为N个,隐含层节点数一般为2N ~ 4N,最佳取值可根据实际问题试凑得,输出层为1个节点, 因此可以取其平均结构为N - 3N - 1型, 输入层激发函数为线性函数, 中间层和输出层的激发函数为S型函数。
3.4 BP神经网络模型建立
对于实际的燃料供应模型,数据的选择要有针对性,结构要合适,这在预测过程中是重中之重。为便于模型选择、结果对比,可同时采用几种不同的数学模型进行预测。在完成对恰当的预测模型的选择后,利用提取自历史资料的训练数据对建立好的预测数学模型进行参数训练。当模型的参数训练好以后,即可利用此模型进行预测。
具体操作步骤如下:
(1)对训练样本与预测样本进行归一化预处理,公式表示如式(1)。
(1)
其中表示经过归一化后的值,表示实际值,,分别是训练集中数据的最大值和最小值,k表示输入向量的维数,i表示有作用因素的个数。
(2)对预测的数据样本进行提取,并分别列出训练与测试的样本集合。
(3)对BP神经网络的输入层、隐含层、输出层的节点进行定义,对网络的权重、阈值进行初始赋值。
(4)利用训练样本对BP神经网络进行训练,建立符合实际问题的模型。
(5)利用事先预备的测试样本对训练好的网络进行测试,若效果不佳,则重新训练,若效果好则继续下一步。
(6)利用预测样本及训练好的模型进行预测。
具体流程图如图5所示:
图5 模型建立流程图
4 基于BP神经网络模型的发电燃料供应预测
(1)样本数据的选择
以各类影响耗煤的因素作为输入 。
(2)进行归一化处理
避免量纲对模型的影响。同时,降低数据的数量级,可以提高BP网络的训练的速度,避免饱和。
(3)确定BP神经网络的结构
3层BP神经网络的输入层节点为1个(可根据实际情况调整),对应于输入样本,隐含层节点为15,输出层节点为1,对应于输出样本。网络初始连接权及神经元初始阈值采用随机赋值方式。神经元的激发函数为S函数,最大迭代次数为400,学习步长为0.001,学习误差为0.00001。
(4)利用训练样本进行网络的训练
(5)利用测试样本进行模型的测试
人为选定5%相对误差为模型训练好坏的判别标准。若测试样本的测试结果的相对误差在5%以内,则进行下一步,否则重新训练。
(6)利用预测样本和已训练好的模型进行预测
南方电网全网发电燃料供应量预测结果值与实际值的对比如图6所示:
图6 南网全网发电燃料供应预测值与实际值对比图
5 结论
随着厂网分离的实施,电网公司和电力调度机构对发电燃料供应的掌握严重不足,已经不能满足电力供应工作的要求,尤其是在来水偏枯、电力供应紧张的时期,发电燃料供应的预测对缓解电力供需矛盾、有序做好发用电管理起着举足轻重的作用,因此,迫切需要开展发电燃料供应影响因素及预测方法的研究工作。
本文在收集、掌握发电燃料供应来源、价格、运输等情况的基础上,基于BP神经网络研究建立发电燃料供应量的预测模型和预测方法。通过MATLAB仿真预测,对预测结果值和实际值进行了对标分析,证明该预测方法预测较准确,并具有灵活的适应性。本文的研究有利于提升发电燃料的管理水平和掌控力度,为合理有序做好电力供应工作提供有力支持。
参考文献:
[1]孙长青.基于OSGI的发电集团燃料管控系统设计与实现[D].导师:陈有青.中山大学,2011.
[2]史新梅,裴珍.辽宁火电厂燃料管理信息系统的开发与研制[J].安徽工业大学学报,2001,(04):359-362+366.
[3]付民庆.基于J2EE架构燃料管理信息系统的研究与实现[D].导师:申晓留.华北电力大学(北京),2008.
[4]魏学军.DF电厂燃料管理信息系统的研究与应用[D].导师:胡立德;戴鹤.重庆大学,2008.
[5]孙文君.发电企业燃料自动监管系统设计及应用[D].导师:张庆超;关万祥.天津大学,2010.
篇3
【关键字】混沌时间序列;BP神经网络;负荷预测
引言
短期负荷预测工作是电力系统运行计划的一个重要组成部分,是电力系统分析系统安全、安排生产计划、进行实时调度的重要参考依据之一,其预测精度直接影响着电力系统的经济效益。
1 电力负荷的混沌特性分析
1.1重构相空间
电力系统负荷数据是按照固定的时间间隔取样而得到的离散时间序列。对于这样的时间序列,Pakark和Takens等人提出了重构相空间的思想,该理论的基本思想:系统中全部分量的变化都是由与之相互作用着的其它分量的变化所决定的,所以全部分量的隐含信息就包含在与其相关联的其它分量里。
假设负荷序列为:,将该序列嵌入到m维相空间中,会得到m维相空间下的相点如下:
(1)
式中,为延迟时间,表示由N个X点构成m维的相空间的点数为n。这样就将单变量时间序列嵌入到了m维空间。
1.2延迟时间和嵌入维数m的确定
延迟时间和嵌入维数m的选取非常重要。的选取既不能太小也不能太大,其意义在于不仅要保持相空间轨迹的连续性,又要让参加系统重构的相点尽可能的不相关。
延迟时间选取的方法有很多种,自相关函数法是选取延迟时间的最主要的方法。对于时间序列,N是序列的长度,自相关函数为:
(2)
当自相关函数出现到第一个极小值时,所得到的即为所求的最佳延迟时间,以某市2011年1-3月份的负荷数据作为历史负荷数据,计算得延迟时间。
计算嵌入维数的一个非常简单易行的方法是G-P算法。首先定义嵌入时间序列的关联积分函数为:
是一个累积式的分布函数,当取某个定值之后,表示相空间中全部吸引子两点之间的距离小于的概率。在一定范围内,吸引子的关联维数d与累积分布函数会满足对数线性关系,即:
(3)
以某市2011年1-3月份的负荷数据作为历史负荷数据,做出其关联维数d随m值的变化曲线,如图1所示。
由上图可知:当嵌入维数m=8时,吸引子维数d=3.419,并且此时吸引子维数d在一定误差范围内保持不变,所以,选择此时的空间维数为重构相空间的最佳嵌入维数,即m=8。
2 BP神经网络的结构和算法
2.1 BP神经网络的结构
任意复杂的映射问题都可以用BP神经网络实现,BP网络是没有反馈的前向网络。前向网络是多层映射网络,每一层中的神经元都是只接受来自前一层神经元的信号,信号是单向传播的。所以BP网络也被称作单向传播的多层前向网络。结构图如图2所示:
BP网络除输入输出节点外,可以有一层或者多层隐含层节点,同层节点间没有任何耦合。输入信号从输入层节点,依次传过各隐含层节点,然后传到输出节点,每一层节点的输出只影响下一层节点的输出[1]。
图3是单个神经元的结构图,它是一个多输入、单输出的非线性元件,其输入输出关系可以描述为:
(4)
(5)
其中,i为前一层神经元,j为后一层神经元,k为前一层神经元的个数,I和O分别为神经元的输入和输出。
神经元的结构非常简单,是神经网络最基本的工作单元,所以它的处理能力也比较单一。但是大量这种结构简单、功能单一的神经元所组成的神经元网络却有许多非常优越的特性。神经元网络对信息的处理是由很多的神经元共同完成的,是一种集合的功能。大规模并行互连、非线性处理、互连结构的可变性等固有结构特性决定了神经网络信息处理的快速性和强大功能[2]。
2.2 BP神经网络算法
神经网络中各神经元之间的连接权值决定了神经网络卓越的信息处理能力。神经网络具有学习功能才可以模拟人脑的信息处理能力。调整各神经元之间的连接权值就是学习的本质,不同的学习算法有不同的调整连接权值的方法[3]。
人们己经提出了多种神经网络的学习规则,基本的有以下四种: .Hebbian学习规则、学习规则、概率式学习规则、竞争式学习规则[4]。
BP学习算法是学习规则的推广和发展。学习规则的实质是利用梯度最速下降算法,使权值沿误差函数的负梯度方向改变。
数据前向传播和误差后向传播是BP网络的两个主要过程。数据前向传播完成的是:当网络的输入给定时,它由输入层单元送到隐含层单元,经隐含层单元逐层处理后再传到输出层单元,由输出层单元处理后生成一个输出。误差后向传播是:如果实际输出响应和期望输出响应的误差不满足精度要求,就将误差值沿连接通路逐层向前传输并修正各层的连接权值[5]。
3 建立预测模型
由前面可知,对于时间序列,N是序列的长度。则将此时间序列重构相空间为:,n为重构相空间中相点的个数,。由前面的介绍可以得到:
(6)
运用BP神经网络来拟合重构函数,最佳延迟时间和最佳嵌入维数m分别采用前面自相关函数法和G-P算法得到的计算结果,即最佳延迟时间,最佳嵌入维数m=8。首先设参考相点为,,之后从n个相点中根据空间欧式距离选择出距离参考相点最近的k个相点为:。
其中,空间欧式距离的计算公式如下式:
(7)
这k个相点的数据作为训练样本的输入,它们各自对应的作为目标样本,就构成了训练样本集:
(8)
训练样本和目标样本共同构成了训练样本集,这样就可以训练神经网络了。至此,建立了基于混沌时间序列和BP神经网络的预测模型。训练完样本之后,把参考相点作为神经网络的测试样本,则输出数据就是神经网络的预测结果。
4 算例分析
以某市2011年1-3月份的负荷数据作为历史负荷数据,利用建立的基于混沌时间序列和BP神经网络的预测模型,对该市2011年4月1日的电力负荷进行预测。表1列出了具体的预测结果以及相对误差。
从表1可以看出最小误差为0.32%,最大误差为2.67%,误差在0-1%的点有33.3%,误差在1%-2%的点有41.7%,误差在2%-3%的点有25%,没有大于3%的点,平均相对误差为1.44%。
5 结论
以上预测结果表明:利用基于混沌时间序列和BP神经网络的预测模型进行短期电力负荷预测取得了精度很高的预测结果。证明了该预测方法的有效性和预测精度的可靠性。而且该方法可以不考虑风力、湿度、温度等因素的影响,仅仅利用电力系统的历史负荷数据就可以得到令人满意的预测结果。但是,由于该模型的算例分析所使用的负荷数据是大型电网数据,对于小型电网的实用性还需作进一步的探讨和验证。
参考文献:
[1]H. Chen and X. Yao, Regularized negative Correlation learning for neural network ensembles[J].IEEE Trans.Neural Networks, vol. 20, no. 12, pp. 1962–1979, 2009.
[2]S.J.Kiartzis,A.G.Bakirtzis,V.Petridis. Short Term Load Forecasting Using Neural networks[J].Electric Power Systems Research.1995,33(1): 1-6.
[3]赵福成,基于人工神经网络的短期负荷预测[D]. 华北电力大学硕士学位论文,2001.
篇4
旅游市场趋势预测是旅游业发展战略和旅游规划与开发工作的重要基础依据,一直是旅游市场研究中最重要的内容之一。根据市场趋势预测的结果,旅游相关部门才可以制定合理的旅游规划,进行旅游资源的优化配置。旅游市场趋势预测是在对影响市场的诸因素进行系统调查和研究的基础上,运用科学的方法,对未来旅游市场的发展趋势以及有关的各种因素的变化,进行分析、预见、估计和判断。
近年来,旅游研究者对旅游市场趋势预测的方法进行了探索。目前主要有时间序列法、回归分析法、指数预测法、人工神经网络法。由于旅游市场的变化受到诸多因素的影响,导致旅游市场的趋势预测难度较大,但我们对预测精度的要求却越来越高。
本文是基于人工神经网络方法,提出使用遗传算法对人工神经网络进行优化,探索更精确、更适用于旅游市场预测现实状况的预测方法。
1 方法概述
人工神经网络是近年来的热点研究领域,是人类智能研究的重要组成部分,已经成为神经科学、计算机科学、认知科学、数学和物理学等多学科关注的热点。其应用领域包括:分类、预测、模式识别、信号处理和图像处理等,并继续向其他领域延伸。
1.1 BP神经网络
BP神经网络是一种多层前馈神经网络,该网络的主要特点是信号前向传递,误差反向传播。在前向传递中,输入信号从输入层经隐含层逐层处理,直至输出层。每一层的神经状态只影响下一层神经元状态。如果输出层得不到期望输出,则转入反向传播,根据预测误差调整网络权值和阈值,从而使BP神经网络预测输出不断逼近期望输出。
图中,X1,X2,…,Xn是BP神经网络的输入值,Y1,Y2,…,Ym是BP神经网络的预测值,wij和wjk为BP神经网络权值。从图可以看出,BP神经网络可以看成一个非线性函数,网络输入值和预测值分别为该函数的自变量和因变量。当输入节点数为n,输出节点数为m时,BP神经网络就表达了从n个自变量到m个因变量的函数映射关系。
1.2 遗传算法
遗传算法(Genetic Algorithms)是1962年由美国Michigan大学Holland教授提出的模拟自然界遗传机制和重托进货论而成的一种并行随机搜索最优化方法。它把自然界“优胜劣汰,适者生存”的生物进化原理引入优化参数形成的编码串联群体中,按照所选择的适应度函数并通过遗传中的选择、交叉和变异对个体进行筛选,使适应度值好的个体被保留,适应度差的个体被淘汰,新的群体既继承了上一代的信息,又优于上一代。这样反复循环,直至满足条件。
1.3 遗传算法优化BP神经网络的流程
遗传算法优化BP神经网络分为BP神经网络结构确定、遗传算法优化和BP神经网络预测3个部分。其中,BP神经网络结构确定部分根据按拟合函数输入输出参数个数确定BP神经网络结构,进而确定遗传算法个体的长度。遗传算法优化使用遗传算法优化BP神经网络的权值和阈值,种群中的每个个体都包含了一个网络所有权值和阈值,个体通过适应度函数计算个体适应度。遗传算法通过选择、交叉和变异操作找到最优适应度值对应个体。BP神经网络预测用遗传算法得到最优个体对网络初始权值和阈值赋值,网络经训练后预测函数输出。
遗传算法优化BP神经网络是用遗传算法来优化BP神经网络的初始权值和阈值,使优化后的BP神经网络能够更好地预测函数输出。遗传算法优化BP神经网络的要素包括种群初始化、适应度函数、选择操作、交叉操作和变异操作。
1)种群初始化
个体编码方法为实数编码,每个个体均为一个实数串,由输入层与隐含层连接权值、隐含层阈值、隐含层与输出层连接权值以及输出层阈值4部分组成。个体包含了神经网络全部权值和阈值,在网络结构已知的情况下,就可以构成一个结构、权值、阈值确定的神经网络。
2)适应度函数
2 实证分析
旅游客流量与当地旅游硬件及软件设施建设、各种交通设备的完善程度有着密切的关系。一个旅游地的交通设施完善程度决定了该景区的可进入性以及客源地到旅游地的时间距离,直接影响该景区游客量。此外,景区建设情况及旅游接待设施的建设情况决定着景区的吸引力。需要指出的是,由于信息传达的特性,游客数量对景区旅游相关条件改善的反应具有延迟性的特点。本文中,采用2000 年以来北京旅客周转量、人均GDP、全国交通、A级及以上景区个数、北京公共交通运营线路长度、北京市基础投资,预测北京市旅游人数。
通过查询中国国家统计局及北京市统计局相关资料,得到全国人均GDP、全国交通、北京市旅客周转量、北京市A级及以上景区个数、北京市公共交通运营线路长度、北京市基础投资数据,如表1所示。
根据遗传算法和BP 神经网络理论,在MATLAB 软件中编程实现基于遗传算法优化的BP神经网络进行预测。预测误差及真实值与预测值对比如图2、图3所示。
3 模型的评价
篇5
关键词: BP神经网络;价格预测;归一化处理
期货市场是一个不稳定的、非线性动态变化的复杂系统。市场上期货合约价格的变动受金融、经济、政治及投资者心理等众多因素的影响,其过程具有非线性、混沌性、长期记忆性等特点。传统的经济模型大部分是线性模型,具有一定的局限性.而人工神经网络则能很好地解决这个问题。
一、BP神经网络原理与过程
BP神经网络(反向传播网络Back Propagation)是一种多层前馈型神经网络,其神经元的激活函数是sigmoid函数,一般为log sigmoid 函数和tan sigoid 函数,函数的图形是S 型的,其值域是为0到1的连续区间。它是严格递增函数,在线性和非线之间有着较好的平衡性。
1.数据归一化处理
数据归一化方法是神经网络预测前对数据常做的一种处理方法。数据归一化处理把所有数据都使其落在[0,1]或[-1,1]之间,其目的是取消各维数据间数量级差别。避免因为输入输出数据数量级差别较大而造成网络预测误差较大。数据归一化的方法主要有以下两种。
(1)平均数方差法,其公式如下:
2.BP神经网络的学习过程
BP网络的学习过程由信号的正向传播和误差的反向传播两个过程组成。其基本原理是:网络先根据输出层的误差来调整输出层和隐含层的权值和阈值,再将部分误差分配置隐含层,然后根据误差来调整隐含层和输入层之间的权值和阈值,并不断地重复上述过程,直到网络的输出与目标之间的误差趋于最小,达到规定的要求。
一般地,BP网络的学习算法描述为如下步骤。
(1)初始化网络及学习参数,如设置网络初始权矩阵,给出学习速率和神经元激活函数等。
(2)提供训练模式,训练网络,直到满足学习要求。
(3)前向传播过程:对给定训练模式输入,计算网络的输出模式,并与期望模式比较,若有误差,若执行步骤(4),否则,返回步骤(2)。
(4)反向传播过程:计算同一层单元的误差,修正权值和阈值,返回步骤(2)。
二、玉米期货价格预测分析
美国是世界上玉米生产大国和消费大国,良好的现货基础为美国玉米期货市场的发展提供了优越条件。其中,以CBOT为代表的美国玉米期货市场同现货市场有效接轨,不仅在美国内玉米生产流通领域发挥了重要作用,而且在世界玉米市场上也影响巨大。
发现价格作为期货市场的基本功能之一,CBOT作为全球最大的玉米期货交易市场,其玉米期货价格的国际影响力是非常巨大的。目前,在国际玉米市场上,玉米贸易价格的形成和交易活动是以CBOT的玉米期货价格为中心展开的,该价格是国际玉米贸易中签约双方需要考虑的最重要的依据之一。美国已经通过芝加哥玉米期货市场取得国际玉米贸易的定价权,在国际玉米市场中发挥着主导作用,并且能够对本国和其他国家玉米产业的发展产生深刻影响。
本文研究所采取的样本来自WIND资讯金融终端,以2008年07月-2015年10月的CBOT的玉米期货为研究对象。共计100组样本数据,将其中92组数据作为训练数据。8组作为分析样本。本文从影响全球玉米的供需平衡的角度出发,从期初库存、产量、进口、饲料消费、国内消费总计、出口、期末库存、总供给、贸易量共九个因素进行分析研究,对玉米期货的价格进行预测。利用MATLAB软件训练生成BP神经网络并进行预测,将隐含层神经元设为20个,训练次数为100次,训练精度为0.00005。最后得到结果见表1。
从表1中可以看出,通过BP神经网络计算得出的预测值与实际值绝对误差相对较小,这说明通过BP神经网络预测模型产生的预测结果的精确度较高。具有较强的实用性。但是由于玉米期货除了受到供需因素的影响外,同时还受金融、经济、政治及投资者心理等众多因素的影响。所以本文的结果还带有一定的局限性。若把上述因素考虑进去,其精确度可能进一步提高。
三、结语
本文采用BP神经网络对美国玉米期货的价格进行了研究。使用了多因素BP神经网络预测模型,对玉米期货的价格进行预测,得到了拟合度在较高的预测值。这说明BP神经网络方法可以对玉米期货价格走势进行有效预测。通过预测,可以对投资者的投资行为进行指导,从而达到规避风险而获取较好的经济利益。
参考文献:
篇6
关键词:物流;神经网络;Matlab;预测;多种模型
中图分类号:U294.1 文献标识码:A 文章编号:2095-1302(2016)01-00-02
0 引 言
现如今物流业的快速发展对人们的生活与产能经济都产生了重要影响,而整个物流链中的关键就是货运环节。影响货物运输的因素比较复杂,包括相关体制、交通条件、城市环境、产业布局等,这些因素在数学模型上是非线性且不确定的,于是给预测造成了较大困难。为了做好库存控制、信息管理的工作,在货物运输前对货运量进行预测是非常有必要的。
1 神经网络模型及其特点
1.1 系统概述
本文研究的预测模型是基于货运预测系统的,该系统的主要功能是将项目输入的数据确定为预测目标,并根据具体要求与有关资料动态分析出可执行计划,将预测结果保存到数据库备份。货运预测系统的具体结构包括初始数据模块、预测方法选择、结果处理模块、系统辅助管理及数据库模块等。系统结构图如图1所示。
图1 货运预测系统结构图
1.2 模型特点
神经网络分为单层前向网络(LMS学习算法)、多层前向网络(BP学习算法)、改进型神经网络等,其中BP神经网络是目前应用最广泛的模型之一,模型拓扑结构如图2所示。
图2 含有两个隐层的BP网络结构
多层前向网络是单层感知器的推广,解决了非线性可分问题,其由输入层、隐含层和输出层组成,其中隐含层可以为一层或多层。输入层中每个源节点作为激励单元,组成了下一层的输入信号,而该层的输出信号又成为后层的输入,以此类推。多层感知器中每个神经元的激励函数是可微的Sigmoid函数,见式(1)所示:
(1)
式中ui是第i个神经元的输入信号,vi是该神经元的输出信号。
BP学习过程具有工作信号正向传播、误差信号反向传播的特点。对于图2,设输入层任意一个输入信号用m表示,第一层、第二层、输出层任意神经元分别用i,j,p表示。按误差反向传播方向,从输出节点到隐含层的修正权值公式见式(2):
(2)
按Delta学习规则求得:
Δwjp(n)=ηδp(n)vj(n) (3)
其中,η是学习步长, vj(n) 可由信号的正向传播过程求得。
该系统的训练目标是总的平均误差能量Eav达到最小,。其中,ekp为网络输入第k个训练样本时输出神经元p的误差,N为训练样本的个数。
2 预测实例及结果分析
2.1 问题描述
货站是物流的一种重要形式,被认为是物流中心,包含着物资信息、资金流动等管理,这里取若干年的某货站数据进行预测并与实际结果对比,货运量走势如图3所示。
图3 近十年某货站物流量走势图
图中曲线很明显不适合做直线拟合,我们可运用指数平滑法、神经网络等进行外推预测。对于指数平滑法,历史数据影响程度逐渐减小,随着数据远离权数收敛趋近零,因此适用于短期预测;对于灰色模型,十分依赖于历史数据,其精度受原始数据的影响较大。本预测系统会根据输入数据的各项因子最终选择最合适的算法模型。下面就神经网络的一般预测步骤进行说明。
2.2 预测步骤
一般来说,BP算法的预测步骤如下:
(1)样本预处理。由于数据的评价标准或量纲不一样,所以需要对样本作归一化处理。可采取极差变换(xn-xmin)/(xmax-xmin)进行处理;
(2)样本分组。每组前m个值作为输入,后一个作为输出期望值;
(3)网络训练。使训练后的网络自适应样本数据的特征,网络训练状态如图4所示;
图4 网络训练状态
(4)得到预测值后。可通过对2001至2010年数据的网络训练,得到2011年的输出预测值。Matlab中仿真程序如下:
x=[105129.1 113918.7 121421.3 122757.9 122690.2 135560.5 159988.1 172152 210655.0 238749.2];
r=max(x)-min(x);
for n=1:length(x)
y(n)=[x(n)-min(x)]/r;
end
p=[y(length(x)-4) y(length(x)-3) y(length(x)-2) y(length(x)-1)]’;
L=length(p);
R1=zeros(1,L);
R2=ones(1,L);
R=[R1;R2]’;
t=y(length(x));
input=[y(length(x)-3) y(length(x)-2) y(length(x)-1) y(length(x))]’;
net=newff(R,[4,5,1],{‘logsig’,’logsig’,’purelin’},’trainlm’);
net.trainParam.show=20;
net.trainParam.lr=0.01;
net.trainParam.epochs=100; net.trainParam.goal=1.0e-030; net=train(net,p,t);
out=sim(net,input);
out=out*r+min(x);
(5)反归一化处理。由于第一步对样本进行归一化处理,则需要把结果还原,才能得到有效的预测值。
2.3 结果分析
最后得到2011年货运量预测值为259 137(吨)[实际值262 551(吨)],与指数平滑法的271 740(吨)相比误差由3.5%降为-1.3%。需要指出的是,增加隐含层的数目可以更加逼近非线性曲线提高映射能力,但多于某个值,会使整体预测性能降低。
3 结 语
货运预测影响因素的不确定性直接给预测系统的研究带来困难,人工神经网络模仿自人的大脑,具备自适应算法特性,拥有运算、推理、识别及控制等能力,若能将其很好地运用在货运预测方面,则能为物流业提供更大意义的帮助。
参考文献
[1] Simon Haykin.神经网络原理[M].叶世伟,史忠植,译.北京:机械工业出版社,2004.
[2]孙明玺.预测与评价[M].杭州:浙江教育出版社,2000.
[3]李采蓉.新的组合模型及在港口客流量预测上的应用[J].辽宁大学学报,2000,27(4):309-311.
[4]云俊,王少梅.物流系统的多目标预测[J].武汉理工大学学报(社会科学版),2001,14(3):243-245.
[5]骆温平.物流与供应链管理[M].北京:电子工业出版社,2002.
[6](美)Tom M.Mitchell.机器学习[M].曾华军,译.北京:机械工业出版社,2008.
[7](美)Martin T Hagan,Howard B.Demuth.神经网络设计[M].戴葵,等,译.北京:机械工业出版社,2005.
[8]党耀国,刘思峰,王正新.灰色预测与决策模型研究[M].北京:科学出版社,2009.
篇7
关键词:火灾探测 模糊神经网络 智能 Matlab
根据燃烧对象,火灾分为A,B,C,D四种。A类火灾为固体可燃物引发的火灾,亦是最常见的燃烧对象;B类火灾为液体可燃物火灾;C类火灾为气体可燃物火灾;D类火灾为可燃金属火灾。火灾发生后蔓延速度极快,燃烧产生大量CO2,CO1等大量气体及烟雾,并伴随光、热,损失将不可估计。对待火灾,我们应采取“防消结合,预防为主”。火灾探测技术的应用便担任着前锋的作用,有效的提高探测器的灵敏度成为一个重大课题。本为将采用智能型报警系统,做早期发现和通报火灾,研究模糊神经网络的应用。
1.火灾探测系统
探测器是自定报警系统中的最重要部分。随着火灾的发生,火灾初期可燃物燃烧产生大量烟雾(S)和CO2,CO1等大量气体(G),火灾达到全火焰时温度(T)急剧上升,并伴随着光(L)和热(H)。因此在图书馆设感温探测器,感烟探测器,气体探测器及感光探测器。由于感烟探测器动作较早,可探测到70%以上的火灾,因此使用较为普遍。
2.模糊神经网络的结构设计
2.1 模糊神经网络的应用
模糊神经网络(Fuzzy Neural Network,简称FNN)是全部或部分采用模糊神经元所构成的一种可处理模糊信息的神经网络系统,也是现代热门研究是技术,是模糊控制与神经网络控制的有机结合,博采众长,以长补拙[1]。其特点是利用模糊逻辑较强的结构性知识表达能力和神经网络强大的自学能力与定量数据的直接处理能力,在温度、烟雾、气体、光等信号处理上,提高火灾探测的准确度、加快火情识别速度,使火灾报警信号处理更具逻辑性、可靠性,直接指导消防控制室的操作和应用,在火灾报警系统中发挥良好的作用。
2.2 模糊控制规则设计[2-3]
模糊控制规则可根据火灾发生可能性大小分为不可能即NP,可能性小即PS,一定发生即PB三种。隐层的温度隶属度生成函数采用三角函数:
( x - a)/( b - a) a < x < b
μ(x) =
( x - c)/ ( b - c) b < x < c
图1 隶属度函数
2.3神经网络模型
本文给出一个3层前馈网络结构,如图2所示。设输入信号为s:烟雾;g:CO2气体;t:温度;l:光;输入信号为第一层,含3个神经元;第二层为模糊层,设为9个节点,第三层为输出层,有3个节点,表示无火、火小和火灾发生。
图2 BP前馈网络模型
3.算法及Matlab 网络仿真
3.1 算法
本文采用反向传播算法,学习训练过程由正向信号传输和反向误差传播组成。当正向传输的实际输出与期望输出不符合时,转入误差反向传播。
输出误差逐层反向传播到隐层再到输入层。误差分给各层所有节点单元,获得各层单元的误差信号,且将该信号作为修正各单元权值的根据。通过不断的调整权值,训练到误差符合要求为止。
因此可知,设输入向量为X;隐层输出向量为Y;输出层输出向量为O;期望输出向量为T;输出层至隐层的权值矩阵为V;隐层至输入层权值为W。隐层,输出层的转换函数分别采用双曲正切S型函数tansig和S型对数函数logsig。
定义网络的输出误差函数为均方误差函数
E=1/2(T-O)2.
将输出误差函数展开到隐层,在展开到输入层,并通过调节权值和阈值改变误差E,从而减小误差。即:
对于输出层,设Y,δ0为输出层的误差信号,则输出层的权值调整V=η(δ0YT) T;
对于输入层,设X,δy为隐含层的误差信号,则隐含层的权值调整为W=η(δyXT) T, η为学习率,在0~1间取值,这里取值0.1。
具体算法步骤:①初始化,对所有权值赋予任意小量,并对阈值设定初值;②给定训练数据集,即提供向量X和期望输出Y;③计算实际输出y;④调整权值,按误差方向传播方向,从输出接点返回到隐层修正权值;⑤返回第②步重复计算,直至误差满足要求为止[4]。
3.2 Matlab 网络仿真
模糊规则层设9个节点,输出层有3个节点。用新浪天气给出的郑州市2012年8月1日到8月4日的天气,归一化处理:温度/100℃,加上天气特征值(0代表晴天,0.5代表阴天,1代表雨天),有4组数据。并将8月4日天气数据作为导师信号。打开Matlab的编辑,输入newff()创建前向BP网络,使用神经元上的传递函数tansig()及tansig(),建立一个训练函数使用梯度下降法的训练函数trainlm()的BP网络[5]。误差训练下降曲线如图3:
4.结语
在1000次训练后,输出的均方误差非常小, MSE=1.04678e-013/0,此时的网络输出应该是非常精确的。这说明将模糊神经网络理论应用在火灾报警系统中,有效地提高系统精度和减少误报率,并且充分发挥了它的自学习、自适应能力,使系统的灵敏度提高,同时又提高了系统的智能化程度。
参考文献:
篇8
【关键词】介损值;BP算法;人工神经网络
1.引言
当前的电容型电气设备绝缘在线监测与诊断还停留在一个简单处理数据的层次上,如果能够结合先进的数学工具进行分析,将有助于提高监测与诊断的应用水平。模糊数学、专家系统、神经网络、灰关联分析等理论在电气设备的绝缘监测与诊断方面已经有了广泛的应用,并提供较完备的知识与信息,提高了绝缘监测与诊断的准确性。
大量停电试验和专门试验的介损值结果统计分析表明,介损值会对温度的变化较为敏感,环境的湿度对介损值也会有影响。在分析了各种因素影响介损值的基础上,文献[6]提出了基于人工神经网络的电容型电气设备的绝缘状况的预测方法。人工神经网络方法能够根据大量的故障机理研究以及经验性的直觉知识归纳出典型样本,通过对神经网络内部的竞争达到问题的求解,从本质上模拟专家的直觉。在此基础上本文提出了基于人工神经网络的电容型电气设备的介损值的预测方法,以BP神经网络作为主要的研究方法。BP网络的预测结果的准确与否取决于学习样本的优劣,本文根据实际情况选取了神经网络的学习样本并进行了仿真,结果表明该预测方法的误差满足工程误差的要求,基于人工神经网络的介质损耗值的预测方法是可行的、正确的和有效的。
2.基于BP神经网络预测方法的确定
人工神经网络的模型有数十种,可分为三大类:前向网络、反馈网络和自适应网络。但在人工神经网络的实际应用中,绝大部分的神经网络模型都采用BP网络及其变化形式。BP(Back Propagation)网络是一种多层前馈型神经网络,其神经元的传递函数是S型函数,输出量为0到1之间的连续量,它可以实现从输入到输出的任意非线性映射。BP神经网络的主要优点:
(1)BP神经网络具有分布式信息存储能力;
(2)BP神经网络的容错性和大规模并行处理能力;
(3)BP神经网络具有自学习、自组织和自适应能力;
(4)BP神经网络是大量神经元的集体行为,表现出一般复杂非线性系统的特性;
(5)BP神经网络可以处理一些环境信息十分复杂、知识背景不清楚和推理规则不明确的问题。
基于以上优点,本文选用BP神经网络作为主要研究方法。
3.BP算法基本思想和网络的基本结构
BP神经网络是一个多层前馈神经网络,包括了输入层、隐层和输出层。这种网络在输入层和输出层之间至少有一个隐含层,每一个神经元结点都与其后一层的结点相连接,但是没有后层结点向前层结点的反馈连接。BP网络具有结构简单、可靠性强的优点,能够满足工业应用的需要,而且有关网络的机理和算法的研究都很丰富,是众多网络中最为成熟,应用最为广泛的一种,是复杂系统建模的优秀工具。
BP算法的基本思想:当一对学习样本提供给网络后,神经元的激活值从输入层经隐层向输出层传播,在输出层的各神经元获得网络的输入响应。接下来,按照减少目标输出与实际误差的方向,从输出层经过各隐层逐层修正各连接权值,最后回到输出层,这种算法为“误差逆传播算法”。随着这种误差逆的传播修正不断进行,网络对输入模式响应的正确率也不断升高。
三层前馈网络中,输入向量为X=(x1,x2, ……,xi,……,xn)T;隐层输出向量为Y=(y1,y2,……,yj,……,ym);输出层输出向量为O=(o1,o2,……,ok,……,ol)T;期望输出向量为d=(d1,d2,……,dk,……,dl)T。输入层到隐层之间的权值矩阵用V表示,V=(v1,v2,……,vj,vm),其中列向量Vj为隐层第j个神经元对应的权向量;隐层到输出层之间的权值矩阵用W表示,W=(W1,W2,……,Wk,……,Wl),其中列向量Wk为输出层第k个神经元对应的权向量。如图3-1所示。
对输出层,有
Ok=f(netk) k=1,2,…,l (1)
netk= k=1,2,…,l (2)
对于隐层,有
yj=f(netj) j=1,2,…,m (3)
netj= j=1,2,…,m (4)
以上两式中,转移函数f(x)均为单极性(或双极性)sigmoid函数,f(x)具有连续、可导的特点。式(3.1)到式(3.4)共同构成了三层前馈网的数学模型。
图1 三层BP网络
三层前馈网络的BP学习算法权值调整计算公式为:
(5)
(6)
其中:
(7)
对于一般多层前馈网,设共有h个隐层,按前向顺序各隐层节点数分别记为m1,m2,…,mh,各隐层输出分别记为y1,y2,…,yh,各层权值矩阵分别记为W1,W2,…,Wh,Wh+1,则各层权值调整计算公式为:
输出层:
j=0,1,…,mh;k=1,2,… (8)
第h隐层:
i=0,1,…,mh-1;j=1,2,…,mh (9)
按以上规律逐层类推.则第一隐层权值调整计算公式:
p=0,1,…,n;j=1,2,…,m1 (10)
容易看出,BP学习算法中,各层权值调整公式形式上都是一样的,均由3个因素决定,即:学习率η、本层输出的误差信号δ以及本层输入信号Y(或X)。
4.基于MATLAB的BP神经网络的实现
4.1 网络的输入层和输出层设计
大量停电试验和专门试验的介损结果统计分析表明,电容型设备的介质损耗值的大小与环境等外界因素之间有着密切的关系。基于此,本文提出了基于环境等外界因素影响分析电容型设备绝缘状况的BP神经网络模型,其示意图如图2所示。
图2 神经网络模型示意图
为了更好的体现输入和输出变量的相应关系,输入层神经元应尽可能多采集与输出量相关性大的信息。本文以某一时刻设备的电压、电流、电容、环境温度、湿度和介质损耗值所为网络的输入参数,所以网络输入层的神经元有6个。输出层只有一个即预测时刻的介质损耗值,则输出层只有一个神经元。
为了统一量纲和防止因净输入的绝对值过大而使神经元输出饱和,继而使权值调整进入误差曲面的平坦区。BP神经网络的训练样本在输入网络之前要进行必要的归一化,也就是通过变换处理将网络的输入、输出数据限制在[0,1]或[-l,1]区间内。归一化方法有很多种形式,本文采用如下公式来进行样本数据的归一化:
令P为网络的输入向量,t为网络的目标向量,p_test、t_test为网络的测试样本向量,利用MATLAB归一化的代码为:
归一化后的输入向量P
for i=1:6
P(i,:)=(p(i,:)-min(p(i,:)))/(max (p(i,:))-min(p(i,:)));
end
归一化后的输入向量A
for i=1
T(i,:)=(t(i,:)-min(t(i,:)))/(max(t(i,:))-min(t(i,:)));
end
测试样本向量p_test和t-test的归一化同输入向量p和目标向量t的归一化,归一化后的向量为P_test和T_test。
4.2 隐层神经元数的选择
在设计多层前馈网时,一般先考虑设一个隐层.当一个隐层的隐节点数很多仍不能改善网络性能时,才考虑再增加一个隐层。由于本系统是一个比较小型的网络,且各结点采用S型函数进行处理,故采用单隐层。
隐层的神经元数目选择是一个非常复杂的问题,往往需要根据设计者的经验和多次试验来确定。隐单元的数目与问题的要求、输入/输出单元的数目都有直接的联系。隐单元数目太多和会导致学习的时间过长、误差不一定最佳,也会导致容错性差、不能识别以前没有看到的样本。选择最佳隐单元数的参考公式:
(1)
其中,k为样本数,n1为隐单元数,n为输入单元数。
(2)
其中,m为输出神经元数,n为输入神经元数,a为[1,10]之间的常数。
(3)
其中,n为输入单元数。
由于单隐层BP网络的非线性映射能力比较强,本文采用了单隐层的神经网络,而中间层神经元个数需通过实验来确定,输入层神经元个数有6个,中间层神经元的个数选择3个值,分别为13、15和20,并分别检查网络性能。通过实际的迭代训练,设置多种不同的隐节点情况,用同一样本集进行训练,比较迭代训练实验的结果,从中确定网络误差最小时对应的神经元个数。
MATLAB代码为:
隐层单元个数向量
a=[13 15 20];
for i=1:3
net=newff(threshold,[a(i),1],{‘tansig’, ‘logsig’},‘traindx’);
net.trainparam.epochs=1000;
net.trainparam.goal=0.01;
init函数用于将网络初始化
net=init(net);
net=train(net,P,T);
Y(i,:)=sim(net,P_test);
end
figure;
绘制误差曲线
中间神经元个数为13
polt(1:6,Y(1,:)-T_test);
hold on;
中间神经元个数为15
polt(1:6,Y(2,:)-T_test);
hold on;
中间神经元个数为20
polt(1:6,Y(3,:)-T_test);
hold off;
通过3种情况下的误差比较发现,中间层神经元个数为13、20时网络的误差比较大,当隐层节点数为15时,网络误差较小,收敛速度较快能得到最理想的输出,网络的预测性能最好。
通过上述分析,可以确定本文设计的神经网络结构为6-15-1,网络中间层的神经元传递函数,采用S型正切函数tansig,输出层神经元传递函数采用S型对数函数logsig。这是因为函数的输出位于区间[0,1]中,正好满足网络输出的要求。
图3 预测误差对比曲线
本文所要解决的问题是根据环境等外界因素对设备的绝缘状况进行预测,对网络的训练速度和稳定性有较高的要求,因此选择traingdx函数作为训练函数,该函数结合了动量梯度下降算法和自适应学习速率梯度下降算法。
该算法的基本过程为:首先计算出网络的输出误差,然后在每次训练结束之后,利用此时的学习率计算出网络的权值和阈值,并且计算出网络此时的输出误差。如果此时的输出误差与前一时刻的输出误差的比值大于预先定义的参数max_perf_inc,那么就减小学习率(通过乘以系数lr_dec来实现),反之,就增加学习率(通过乘以系数lr_inc来实现)。再重新计算网络的权值和阈值以及输出误差,直到前后输出误差的比值小于参数max_perf_inc为止。
4.3 网络学习速率和动量系数的选择
学习速率大小的选择,直接影响训练时间,当学习速率的选择不当,特别在严重时,将导致网络完全不能训练,这是因为1986年Rumelhart等人在证明BP训练算法收敛中,假设了无限小的权重调节速率。实际上这是不可能的,因为这表示需要无限的训练时间,所以,实际上必须选一个有限的学习速率大小,即η的值取0.01到1。一般来说要根据实验或经验来确定,还没有一个理论指导。若η选得太小,收敛可能很慢:若η选得太大,可能出现麻痹现象。为了避免这种现象,通常会选择减少η,但又会增加网络的训练时间。动量项可以加快BP算法的学习速度,但选项的时候应当注意避免学习时产生振荡。
因此,本文在确定网络的学习速率和动量系数的时候,采用不同的值的组合,利用55组训练数据进行了若干次网络的迭代训练。本文根据比较结果确定学习速率为0.1,动量系数为0.7作为网络训练时的参数。
5.基于BP神经网络介损值的预测应用
本文所建立的BP网络是基于MATLAB中的GUI建立。图形用户界面GUI (Graphical User Interfaces)是神经网络的工具箱提供的人机交互界面,它引导工程人员一步步的建立和训练网络,避免了代码的编写过程。借助图形用户界面GUI,可比直接利用工具箱函数更快捷和方便的完成神经网络的设计与分析。
利用BP神经网络理论和经过以上训练得到的网络参数,利用Matlab软件提供的GUI构造出了基于环境等外界因素影响分析设备绝缘状况的BP神经网络模型。表1列出了本文研究中建立的BP网络的各个参数和函数。
网络所用的训练数据和测试数据均出自于某110KV变电站主变套管的在线监测的数据],本文采用其中的55组典型数据,其中50组数据用于网络训练(训练次数为1000次,训练目标为0.01),5组数据用于仿真预测,利用仿真函数获得网络的输出,网络的预测结果及误差见表2,可见预测值与实际监测值之间的误差非常小,能满足实际要求。
表1 基于BP神经网络的电容型设备绝缘诊断模型参数
名称 参数
输入层节点数 6
隐含层节点数 15
输出层节点数 1
训练函数 traingdx
学习函数 learngdm
学习速率 0.1
动量系数 0.7
表2 外界环境相同时介损值的实际值与预测值的对比
序号 电压 电流 电容 温度 湿度 实 际
介损值 预 测
介损值 误差
1 119 7.047 326.479 18 50 0.003906 0.004025 0.000119
2 119 7.057 327.545 17 52 0.000440 0.004386 0.000014
3 118 7.022 328.078 17 55 0.003946 0.004108 0.000162
4 119 7.059 327.035 16 55 0.004471 0.004512 0.000041
5 119 7.069 327.406 17 59 0.003249 0.003178 0.000071
6.结束语
本章通过对BP网络模型和学习算法的研究,深入分析了BP网络在函数预测方面的优点,确定了用BP网络来实现对容性设备介质损耗值的预测,得到的结论如下:
(1)通过对BP网络结构的研究,将三层前向神经网络结构进行了改进,适应了本文对介质损耗值的预测要求。
(2)BP网络的预测结果的准确与否取决于学习样本的优劣,本文根据实际情况选取了神经网络的学习样本并进行了仿真,结果表明该预测方法的误差满足工程误差的要求,及基于人工神经网络的介质损耗值的预测方法是可行的、正确的和有效的。
(3)数据预测具有一定的精度,但是还存在误差,需选择相关大的、较合理的输入向量,还可以对网络的结构和算法选择方面进行改进,选择更合适的训练函数使其收敛速度更快,误差更小。
参考文献
[1]张寒,文习山,丁辉.用人工神经网络预测基于泄漏电流、气象因素的绝缘子等值附盐密度预测[J].高压电器,2003,39(6):31-35.
[2]韩力群.人工神经网络理论、设计及应用[M].北京:化学工业出版社,2002.
[3]闫志忠.BP神经网络模型的改进及其应用研究[D].长春:吉林大学,2003.
[4]闻新.MATLAB神经网络仿真与应用[M].北京:科学出版社,2000.
[5]许东,吴峥.基于MATLAB6.X的系统分析与设计-神经网络(第二版)[M].西安:西安电子科技大学出版社,2002.
[6]丛爽.面向MATLAB工具箱的神经网络理论与应用[M].合肥:中国科技大学出版社,1998
篇9
关键词:BP神经网络、图像分割、特征提取
Abstract: the image recognition process including the image preprocessing, feature extraction, image understanding and analysis. Which BP artificial neural network in the image segmentation using better; In the feature extraction phase BP neural network is also very good find application, and obtain the better feature extraction results; In the image understanding and the analysis phase using neural network classifier design, can get accurate classification results.
Keywords: BP neural network, image segmentation, feature extraction
中图分类号:TP183 文献标识码:A文章编号:
引言
BP人工神经网络算法是现今应用较为广泛的多层前向反馈式神经网络算法,BP人工神经网络有较好的容错能力、鲁棒性、并行协同处理能力和自适应能力,受到了国内外众多领域学者的关注。由于神经网络高效率的集体计算能力和较强的鲁棒性,它在图像分割方面的应用已经很广泛,Jain和Karu采用了多通道滤波与前向神经网络相结合的方法实现图像纹理分割算法。神经网络算法在特征提取阶段,压缩特征数量,以提高分类速度和精度。在图像识别领域中神经网络作为分类器的研究也得到了很大的进展,尤其是其学习能力和容错性对于模式识别是非常有利的,在一定程度上提高了训练速度和识别率。Le Cun等人提出了多层特征选择(Multilayer Selection Procedure)方法用于字符识别,每一层神经网络处理较低层次的特征,获取该层特征信息并传给上一层。
BP神经网络的基本原理
人工神经网络的研究起源于对生物神经系统的研究,它将若干处理单元(即神经元)通过一定的互连模型连结成一个网络,这个网络通过一定的机制可以模仿人的神经系统的动作过程,以达到识别分类的目的。人工神经网络区别于其他识别方法的最大特点是它对待识别的对象不要求有太多的分析与了解,具有一定的智能化处理的特点。神经网络的学习过程实际上就是不断地调整权值和阈值的过程。根据有无训练样本的指导可以将神经网络的学习方式分为两种:监督学习方式和非监督学习方式,也称为有导师指导学习方式和无导师指导学习方式。监督学习方式,是在给定固定的输入输出样本集的情况下,由网络根据一定的学习规则进行训练学习,每一次学习完成后,通过对比实际的输出和期望的输出,以此决定网络是否需要再学习,如果还没有达到期望的误差,则将实际误差反馈到网络,进行权值和阈值的调整,使实际的误差随着学习的反复进行而逐步减小,直至达到所要求的性能指标为止。非监督学习方式,是在没有外界的指导下进行的学习方式,在学习过程中,调整网络的权重不受外来教师的影响,但在网络内部会对其性能进行自适应调节。
BP神经网络分类器的设计
BP神经网络是基于误差反向传播算法(Back Propagation Algorithm,BPA)的多层前向神经网络,由输入层、输出层、一个或多个隐含层所组成。BP神经网络结构确定之后,通过对输出和输入样本集进行训练,反复修正网络的权值和阈值,达到学习训练的期望误差,以使网络能够实现给定的输入输出映射关系。BP人工神经网络的学习过程分为两个阶段,第一阶段是输入己知的学习样本数据,给定网络的结构和初始连接权值和阈值,从输入层逐层向后计算各神经元的输出;第二阶段是对权值和阈值进行修改,即根据网络误差从最后一层向前反馈计算各层权值和阈值的增减量,来逐层修正各层权值和阈值。以上正反两个阶段反复交替,直到网络收敛。具体实现步骤如下:
(1) 网络的初始化:首先对输入的学习训练样本进行归一化处理,对权值矩阵W和阈值向量赋初值,将网络计数器和训练次数计数器置为1,网络误差置为0。
(2) 输入训练样本,计算输入层,隐含层以及输出层的实际输出。
(3) 计算网络输出误差。将实际的输出和期望的输出值进行对比,采用均方根误差指标作为网络的误差性能函数。
(4) 若误差还没达到期望标准,则根据误差信号,逐层调整权值矩阵和阈值向量。
(5) 若最终调整之后的网络输出达到了误差范围之内,则进行下一组训练样本继续训练网络。
(6) 若全部的训练样本训练完毕,并且达到了期望的误差,则训练结束,输出最终的网络联接权值和阈值。
BP神经网络可以逼近任意连续函数,具有很强的非线性映射能力,而且BP神经网络中间层数、各层神经元数及网络学习速率等参数均可以根据具体情况设定,灵活性较强,所以BP神经网络在许多领域中广泛应用。一般来说,神经网络方法应同传统的人工智能方法相联系的。神经网络本身结构及性能上的特点使其对问题的处理更富有弹性,更加稳健。神经网络的基本特点是采用自下而上的设计思路,使其容易确定具体的目标分割或识别算法,在增加了不确定因素的同时也产生了网络最优化的问题,这就是所谓的伪状态(pseudo-trap)。尽管在实践中并非所有的伪状态对应完全失败的结果,但是毕竟这不符合对之完美的或者说合理的期望。人工智能则一般采用自上而下的方法,偏重于逻辑推理建立系统模型。因此将神经网络同人工智能结合起来,相当于赋予神经网络高层指导的知识及逻辑推理的能力,具有潜在的优势。
输入层中间层 输出层
图1 BP人工神经网络结构
BP神经网络的训练
4.1 BP神经网络的设计
BP神经网络的设计主要包括两方面内容:一是神经网络结构的确定,特别是隐含层层数及隐含层单元数目的确定;二是高精度收敛问题,隐含层和隐含层单元数过多,将导致训练时间过长并出现过度拟和的问题,隐含层单元数过少又导致网络收敛速度慢甚至不收敛,达不到误差精度要求。在确定隐含层层数以及隐含层单元数目时,没有一个严格的理论依据指导,需要根据特定的问题,结合经验公式确定大致范围来进行逐步试算比较得到。
4.2 数据预处理
为了加快网络的训练速度,通常在网络训练前进行神经网络输入和输出数据预处理,即将每组数据都归一化变为[-1,1]之间的数值的处理过程。
4.3 神经网络的训练
%当前输入层权值和阈值
inputWeights=net.IW{1,1}
inputbias=net.b{1}
%当前网络层权值和阈值
layerWeights=net.LW{2,1}
layerbias=net.b{2}
%设置训练参数
net.trainParam.show = 1000;%限时训练迭代过程
net.trainParam.lr = 0.1; %学习率,缺省为0.01
net.trainParam.epochs = 100000; %最大训练次数,缺省为100
net.trainParam.goal = 0.001; %训练要求精度,缺省为0
[net,tr]=train(net,P,T);%调用 TRAINGDM 算法训练 BP 网络
A = sim(net,P) %对 BP 网络进行仿真
E = T - A;%计算仿真误差
MSE=mse(E)
结束语
BP网络因为具有较强的学习性、自适应型和容错性,在很多领域均已经大量运用。本文将BP人工神经网络运用于图像的识别,探索人工神经网络在图像识别领域中的重要的现实意义。研究表明,BP人工神经网络应用于图像识别在一定程度上提高了识别的效率和准确率。但是,BP神经网络算法还存在以下几点不足之处:(1)权的调整方法存在局限性,容易陷入局部最优;(2)网络的结构需要提前指定或者在训练过程中不断的修正;(3)过分依赖学习样本,由于学习样本是有限的或者学习样本质量不高,那么会导致训练达不到效果;(4)对于规模较大的模式映射问题,存在收敛速度慢、容易陷入局部极小点、判断不准确等缺陷。总之,如何解决以上问题,如何进一步提高识别精度,扩大识别范围,使之更具有更好的工程实用性,是有待进一步研究的内容。
参考文献:
[1] WE Blanz,S L Gish.A Connectionist Classifier Architecture Applied to Image Segmentation.Proc.10th ICPR,1990,272-277.
[2] Y Le Cun,L D Jackel,B Boser,J S Denker,H P Graf,I Guyon,D Henderson,R E Howard,and W Hubbard,Handwriten Digit Recognition:Applications of Neural Network Chips and Automatic Learning,IEEE Comm.Magazine.Nov.1989.
[3] A K Jain and K Karu,Automatic Filter Design for Texture Discrimination,Proc.12th Int’l Conf.NeuralNetworks,Orlando,Oct.1994,454-458.
[4] 边肇其,张学工.模式识别(第二版)[M].清华大学出版社,北京.1999,12.
[5] 陈书海,傅录祥.实用数字图像处理[M].科学出版社,北京.2005.
[6] 万来毅,陈建勋.基于BP神经网络的图像识别研究[J].武汉科技大学学报(自然科学版).2006,6.
[7] 丛爽.面向MATLAB工具箱的神经网络理论与应用(第2版)[M].北京:中国科学技术出版社,2003.
[8] 王娟,慈林林等.特征方法综述[J].计算机工程与科学.2005.27(12).68-71.
[9] 贾花萍.基于神经网络的特征选择与提取方法研究[J].网络安全.2008,7.33-35.
[10] 龚声荣,刘纯平等编著.数字图像处理与分析[M].清华大学出版社,北京.2006.7.
篇10
【关键词】图像分割;细胞特征;人工神经网络
据统计,在各种癌症中,子宫颈癌对妇女的威胁仅次于乳腺癌。全世界每年因子宫颈癌死亡的人数为30万,确诊和发现早期症状者各为45万。虽然确诊病人的年龄一般都在35岁以上,但存在这种疾病诱因的妇女却往往远在这一年龄以下。如果及时得到诊断,早期子宫颈癌是可以治愈的。因此借助于现代先进的计算机技术结合病理专家的实践经验,开发出计算机辅助细胞学诊断系统,才是解决这一问题的关键所在。
本文从图像识别领域出发,应用人工神经网络模型对子宫颈癌细胞图像诊断进行探索。首先,对获取的子宫颈癌图像进行灰度转换。由原来的24位彩色图像转化为灰度图像。在对灰度图像进行分割,主要采取基于门限阈值化的分割方法。分别对细胞,细胞核进行了分割。分割后转化成为二值图像,采用八向链码算法对包括周长,面积似圆度,矩形度,核浆比等15个主要形态学参数进行测量。在取得了大量的数据样本后进行人工神经网络的训练。
人工神经网络是在对人脑神经网络的基本认识的基础上,从信息处理的角度对人脑神经网络进行抽象,用数理方法建立起来的某种简化模型[1]。通过模仿脑神经系统的组织结构以及某些活动机理,人工神经网络可以呈现出人脑的许多特征,并具有人脑的一些基本功能[2]。1988年,Rinehart等人提出了用于前向神经网络学习训练的误差逆传播算法(Back propagation,简称BP算法),成功解决了多层网络中隐含层神经元连接权值的学习问题[3]。BP算法是由教师指导的,适合于多层神经网络的学习训练,是建立在梯度下降算法基础上的。主要思想是把学习过程分为两个阶段:第一阶段(信号正向传播过程),输入信号通过输入层经隐含层逐层处理并计算每个节点的实际输出值;第二阶段(误差修正反向传播过程),若在输出层未得到期望的输出值,则逐层递归地计算实际输出与期望输出之间的误差,并已据此误差来修正权值。在学习过程中,对于每一个输入样本逐次修正权值向量,若有n个样本,那么一次学习过程中修正n次权值。
但是BP算法也存在一定的缺陷,如多解问题、学习算法的收敛速度慢以及网络的隐含节点个数的选取尚缺少统一而完整的理论指导。为了优化BP算法,我们采用加入动向量的方法对BP算法进行改进。基于BP算法的神经网络,在学习过程中,需要不断地改变权值,而权值是和权值误差导数成正比的。通常梯度下降方法的学习速率是一个常数,学习速率越大,权值的改变越大。所以要不断地修改学习速率,使它包含有一个动向量,在每次加权调节量上加上一项正比例与前次加权变化量的值(即本次权值的修改表达式中引入前次的权值修改量)。设计模型时,人工神经网络的输入输出变量是两个重要的参数。输入变量的选择有两个基本原则:其一必须选择对输出影响大并且能够检测或提取的变量,其二要求各个输入变量之间互不相关或相关性很小。我们将细胞的形态学特征值作为人工神经网络的输入变量。输出变量代表系统要实现的功能目标,这里以TBS分类法为依据,确定了人工神经网络的三个输出变量NORMAL(正常细胞),LSIL(低度鳞状上皮内病变),HSIL(高度鳞状上皮内病变)[4]。在人工神经网络的输入、输出确定后,就可以得到网络的结构图,从而对测得的细胞特征值进行分类。
本文中所设计的神经网络分类器,输入层15个节点、隐含层30个节点、输出层2个节点。细胞样本共161例,使用87例细胞样本数据对人工神经网络的权值进行训练。当误差小于规定值后,再用剩余的74例数据样本对人工神经网络进行测试。主要采取的算法是增加动量的BP算法。经实验,应用人工神经网络模型识别每张图片每个细胞,选出128个最有可能的异常细胞图。通过大量实验对比训练样本识别率最高达96.6%,测试样本识别率最高达87.8%,总体样本识别率最高达92.5%。
由实验可以看出增加动量的BP算法(BP标准算法)的学习次数适中,分类基本准确。增加学习速率可以加快收敛的速度,但同时也看到由于学习速率过大,而导致系统的不稳定,引起震荡。所以在增加学习不长的同时,动向量不能够过大,否则会引起震荡,影响分类的准确率。使用增加动量的BP算法对子宫颈癌细胞的识别效果比较理想,这在医学研究以及临床诊断方面具有一定的现实意义及比较广阔的应用背景。
参考文献
[1]何苗.径向基人工神经网络在宫颈细胞图像识别中的应用[J].中国医科大学学报,2006,35(1).
[2]刑仁杰.计算机图像处理[M].浙江:浙江大学出版社,1990:32-67.
[3]时淑舫.计算机辅助细胞检测方法在宫颈细胞学检查中的应用价值[J].临床和实验医学杂志,2003,2(2).