前言:一篇好文章的诞生,需要你不断地搜集资料、整理思路,本站小编为你收集了丰富的bp神经网络主题范文,仅供参考,欢迎阅读并收藏。
[关键词]有机碳含量评价 神经网络
中图分类号:TP183 文献标识码:A 文章编号:1009-914X(2015)45-0356-01
BP神经网络,即误差反传误差反向传播算法的学习过程,由信息的正向传播和误差的反向传播两个过程组成。输入层各神经元负责接收来自外界的输入信息,并传递给中间层各神经元;中间层是内部信息处理层,负责信息变换,根据信息变化能力的需求,中间层可以设计为单隐层或者多隐层结构;最后一个隐层传递到输出层各神经元的信息,经进一步处理后,完成一次学习的正向传播处理过程,由输出层向外界输出信息处理结果。当实际输出与期望输出不符时,进入误差的反向传播阶段。误差通过输出层,按误差梯度下降的方式修正各层权值,向隐层、输入层逐层反传。周而复始的信息正向传播和误差反向传播过程,是各层权值不断调整的过程,也是神经网络学习训练的过程,此过程一直进行到网络输出的误差减少到可以接受的程度,或者预先设定的学习次数为止。
2 BP神经网络工作机理
2.1 正向传播
图中,表示神经元的输入,表示输入层与隐含层之间权值,为隐含层与输出层之间的权值,f()为传递函数,为第k个神经元输出。假设BP神经网络输入层有n个节点,隐含层有q个节点,输出层m个节点。
隐含层第k个神经元的输入:
经过传递函数f()后,则隐含层第k个神经元的输出:
其中f()为单调递增且有界,所以一定有最大值。
输出层第j个神经元输出:
2.2 反向传播
输入P个学习样本,通过传入网络后,输出,第P个样本误差:
式中:期望
全局误差E:
输出层权值的变化,通过调整,使得全局误差E最小,得出输出层神经元权值调整公式:
隐含层神经元的调整公式:
3 应用实例
选择AC,DEN,CNL,GR,PE,RD作为输入曲线。XX井的53个点的岩心数据,从中选出30个点作为训练样本,23个点作为预测,构建网络,对全井段处理。结果对比(如图3-1),发现神经网络计算的TOC比传统的法计算的TOC效果好。其中TOC_NN为神经网络预测TOC,TOC_DaltalogR_AC为法计算的TOC。
4 结论
BP神经网络预测TOC克服了常规解释模型的缺陷,不用选择解释参数,计算结果与解释人员经验无关,预测结果精度有较大幅度的提高。利用多种测井解释数据及岩心分析资料作为网络训练样本,通过网络的训练、学习,建立了BP网络TOC模型,并利用该模型预测该地区新井的TOC值,实验证明用该模型进行TOC预测是可行的。
参考文献
[1]杨斌.神经网络及其在石油测井中的应用[M].北京:石油工业出版,2005:111-115.
[2]罗利,姚声贤.神经网络及模式识别技术在测井解释中的应用[J].测井技术,2002.
关键词: 时间序列; BP神经网络; EMD; 本征模函数; 预测模型
中图分类号:TP311.1 文献标志码:A 文章编号:1006-8228(2014)02-01-04
0 引言
时间序列是将某种现象某一个统计指标在不同时间上的各个数值,按时间先后顺序排列而形成的序列。时间序列分析是一种动态的数列分析[1],出发点是承认数据的有序性和相关性,通过数据内部的相互关系来辨识系统的变化规律。常用的时间序列分析法主要是建立在回归――移动平均模型(ARMA)[2-3]之上,被用来对股价(最高价、最低价、开盘价、收盘价)及综合指数进行预测[4-5]。然而,这些经典回归分析暗含着一个重要假设:数据是平稳的。如果数据非平稳,往往导致出现“虚假回归”,严重影响预测效果。股票等金融数据是典型的非平稳时间序列,一般地说,股票价格的变化主要包括经济性因素、政治性因素、人为操纵因素、有关行业及投资者心理等多种因素的影响,各因素的影响程度、时间范围和方式也不尽相同;且股市各因素间相互关系错综复杂,主次关系变化不定,数量关系难以提取及定量分析[6]。因此,需要寻找一种好的方法来避免或减弱这些因素的影响,于是学者研究小波分析[6]和神经网络[7-8]用于时间序列分析预测。小波变换可以使非平稳数据中的有效成分和噪声呈现出各自不同的特征,但小波变换中小波基的选取会对数据去噪的效果产生很大的影响,因此利用小波变换对非平稳数据分析的方法缺乏自适应性。Zhaohua Wu[11]等人通过大量的实验,证实经验模态分解(EMD,Empirical mode decomposition)具有类似小波变换中的二进滤波器特性,通过分解、数据重组后实现了数据的去噪,汲取了小波变换优势,同时又克服了小波变换中的小波基选择难的问题。
本文将经验模态分解和BP神经网络相结合,构建了一种基于EMD-BP神经网络的预测模型,通过对中国石化股票进行预测模拟仿真,实验结果得出结论,将EMD用于时间序列的预测分析,大大降低了扰动因素的影响,提高了预测精度。
1 时间序列的BP神经网络训练
神经网络具有较强的学习能力和适应能力,在非线性系统中的预测方面得到了广泛的应用。考虑到金融数据是一类非线性较强的时间序列,本文选用BP神经网络作为预测工具。BP网络[9-10]是一种多层前馈型神经网络,其神经采用的传递函数一般都是Sigmoid(S形弯曲)型可微函数,是严格的递增函数,在线性和非线性之间显现出较好的平衡,所以可实现输入和输出间的任意非线性映射,适用于中长期的预测;逼近效果好,计算速度快,不需要建立数学模型,精度高;理论依据坚实,推导过程严谨,所得公式对称优美,具有强非线性拟合能力。目前,已经有一些比较成熟的神经网络软件包,其中MATLAB的神经网络工具箱应用最为广泛。
在网络训练中,最重要的三个参数是权值、学习率和单元数。权值可能变得很大,这会使神经元的输入变得很大,从而使得其激活函数的导函数在输入点的取值很小,这样训练的步长就会变得非常小,进而导致训练的速度下降到很小的程度,最终可能使得网络停止收敛,即网络瘫痪。因此在对网络的连接权矩阵进行初始化时,随机给定各层之间的权值与阈值的初始值比单纯地随机给定某一部分层的收敛速度更快。学习率的选择,其合理与否是网络是否稳定的关键:太高的学习率,可以减少网络训练的时间,但是容易导致网络的不稳定与训练误差的增加;太低的学习率,需要较长的训练时间。在一定的条件下,较少的单元数目往往能够提高网络的收敛速度,而较多的单元数目有可能在规定的训练长度里不能满足要求。因此,对于参数数目的选择,并没有一个固定的模型,往往根据更多的经验成分。
2.1 经验模态分解(EMD)
经验模态分解法EMD[11]是由美国NASA的黄锷博士提出的一种信号分析方法。它适合于分析非线性、非平稳信号序列,具有很高的信噪比。该方法的关键是经验模式分解,它能使复杂信号分解为有限个本征模函数(Intrinsic Mode Function,简称IMF),所分解出来的各IMF分量包含了原信号的不同时间尺度的局部特征信号。
EMD是基于以下假设条件:①数据至少有一个最大值和一个最小值两个极值点;②数据极值点间的时间尺度惟一确定局部时域特性;③如果数据没有极值点但必须有拐点,通过对数据微分一次或多次求得极值,再通过积分来获得分解结果。
2.2 数据重构
对原始数据进行EMD分解后,得到有限个IMF分量。为了降低原始数据中的非平稳性,需要对得到的各分量进行相关系数分析,筛选出有用的IMF分量,对其进行重构,以得到一个与原始数据近似的新数据进行预测实验。
数据重组的方法有多种,本文采用相关系数分析法进行数据的筛选。由于篇幅有限,关于EMD分解与重构的代码不在本文提供。
2.3 应用训练好的神经网络对合成数据预测
对于非线性系统,BP神经网络预测有着明显的优势。但是在复杂的非线性系统中,非平稳因素给预测带来了一定的困难。正是因为EMD分解降低了各个分量的平稳性[12],才得到了广泛应用[13-15]。金融数据等时间序列随着时间,以及在多种因素的影响下会随之改变,所以数据本质上是非平稳的,因此利用神经网络对该数据进行预测,数据的平稳性使得其预测结果不是很理想,为了提高预测精度,我们用EMD方法对数据进行分解,以降低其非平稳性对预测精度的影响。然后对分解后的各分量进行相关系数分析比较,选取有用的IMF分量,进行数据的合成,从而得到一个与原始数据近似的新数据。将重组后的拟合数据输入到训练好的BP神经网络进行预测。预测过程如图1所示。
3 应用实例和分析
3.1 股票数据的BP神经网络训练
将中国石化股票从2011年6月至2011年12月共130天的股票价格数据进行样本划分。用前60天的数据来预测后5天的数据,作为网络训练集。选取剩下的60天数据预测最后的5天,作为测试集。
3.3 数据合成及预测
本文对中国石化股票数据(图3)进行EMD分解后得到4个IMF分量和1个剩余分量。对4个分量分别进行与剩余分量的相关系数分析。分析结果表明,IMF3和IMF4相关性较大,并与剩余分量的相关性也较大(相关门限值选取0.3)。所以选取IMF3和IMF4两个分量与剩余分量进行重构,得到与原始数据近似的较平滑的新数据如图9所示。
经过比较可知,对于具有非平稳强烈的股票时间序列的预测,基于EMD的BP神经网络预测要比直接BP神经网络预测更为准确。
对于非平稳的时间序列,BP神经网络预测有着明显的优势,但是对于影响因素复杂的非平稳数据,多种因素的干扰给预测带来了一定的困难。EMD分解分离了各个不同因素的相互干扰,通过对各分量单独预测再合成的处理,从而提高了预测精度。从表1可以看出最终的预测误差经过EMD分解的信号要精确于直接神经网络预测。从图4中可以看出影响信号平稳性程度最大的是IMF1,如果再对其进行分解处理,整个系统的预测精度会得到更大的改善。
4 结束语
对于非平稳的时间序列,BP神经网络预测有着明显的优势,但是对于影响因素复杂的非平稳数据,多种因素的干扰给预测带来了一定的困难。EMD分解分离了各个不同因素的相互干扰,通过对各分量分析再合成的处理,提高了预测精度。目前EMD方法主要用于模拟信号和大气数据分析[13-15],用于金融数据预测还较为少见。本文将其与BP神经网络结合,构建了EMD-BP神经网络预测模型。从本文的预测过程和仿真结果可以看到,利用EMD分解的BP神经网络预测优于直接BP神经网络预测,相比其精确度有了明显的提高。
参考文献:
[1] 刘瑛慧,曹家琏.时间序列分析理论与发展趋势[J].电脑知识与技术,2010.2:257-258
[2] 刘佳,赵文慧,刘光荣.基于SAS的非平稳时间序列分析及实证研究[J].汕头大学学报.2010.2(1):48-53.
[3] 李海林,郭崇慧,时间序列数据挖掘征表示与相似性度量研究综述[J].计算机应用研究,2013.5(30):1285-1290
[4] 魏宇.中国股票市场的最优波动率预测模型研究[J].管理学报,2010.6(6):936-942
[5] 方启东,温鑫,蒋佳静等.基于时间序列的股价预测[J].宿州学院学报,2010.8(8):71-74
[6] 杜建卫,王超峰.小波分析方法在金融股票数据中的应用[J].数学的实践与认识,2008.7(38-7):68-75
[7] 刘海,白艳萍.时间序列模型和神经网络模型在股票预测中的分析[J].数学的实践与认识,2011.2(4):14-19
[8] 张媛,刘红忠.基于行为金融的神经网络模型在股票价格预测中的有效性研究[J].世界经济情况,2011.2(2):62-67
[9] 焦淑华,夏冰,徐海静,刘莹.BP神经网络预测的MATLAB实现[J].哈尔滨金融高等专科学校学报,2009.3(97):55-56
[10] 李萍,曾令可,税安泽,金雪莉,刘艳春,王慧.基于MATLAB的BP神经网络预测系统的设计[J].计算机应用与软件,2008.4(25-4):149-151
[11] Zhaohua Wu, Norden E. Huang. A study of the characteristics of white noise using the empirical mode decomposition method[J].The Royal Society,2004.3(10):1597-1611
[12] 刘慧婷,倪志伟,李建洋.经验模态分解方法及其应用[J].计算机工程及应用,2006.1(32):44-47
[13] 徐世艳.经验模态分解的时频分析方法及其应用[J].吉林大学学报,2009.9(27-5):487-492
关键词: BP神经网络;生存分析;贲门癌
Abstract:Objective To explore the application of BP neural network in the survival analysis.Method Three approaches have been illustrated how to fit survival model for carcinoma of the gastric cardia.Results The neural network models have good predictive ability.Conclusion BP neural network is very flexible without making assumption of proportionality of hazards,it can allow non-linear predictors and the effect of the covariates to vary over time,so it has broad application prospects.
Key words:BP neural network; survival analysis; carcinoma of the gastric cardia
生存分析(survival analysis)起源于19世纪对寿命表的分析,目前已广泛应用到临床研究中,可以处理含有删失值的数据,可以同时考虑事件发生的结局及发生结局的时间。目前处理生存资料的方法有参数模型、非参数模型及半参数模型。参数模型对生存时间的分布要求非常严格,医学资料中很少能满足;生存分析中传统的回归模型,例如:Cox比例风险模型、加速失效时间模型也要求模型满足一定的假设前提,而实际数据往往难以满足这些假设。神经网络近年来受到普遍的关注,在医学领域中的应用主要预测与分类,与传统回归模型不同,它可以克服这些缺点,在模型中可以容纳非线性效应,交互效应、协变量的效应可以随时间变化。目前国内研究神经网络在生存分析中的应用尚较少,本文拟探讨几种不同的神经网络生存模型在贲门癌预后中的应用。
1 方法
BP神经网络是目前应用最多的神经网络,一般由一个输入层(input layer)、一个输出层(output layer)、一个或几个中间层(隐层)组成,每一层可包含一个或多个神经元,其中每一层的每个神经元和前一层相连接,同一层之间没有连接。输入层神经元传递输入信息到第一隐层或直接传到输出层,隐层的神经元对输入层的信息加权求和,加一个常数后,经传递函数运算后传到下一个隐层(或输出层),常用的传递函数是logistic函数,即φh=1/(1+exp (-z)),输出层神经元对前一层的输入信息加权求和经传递函数φ0(线性或logistic函数或门限函数)运算后输出,例如:如果输入为xi,对于含一个隐层的神经网络可以得到:
g(xi,θ)=φ0(αk+∑i≠kwikxi+∑jwjkφh(αj+∑iwijxi))(1)
θ表示未知的参数矢量(即各层的网络权值),BP神经网络一般采用BP算法训练网络,训练开始时选择初始值0,BP算法通过梯度下降法得到估计值,使得g(x,)能很好地估计实测值,关于BP算法及改进可参考相关文献[1]。
利用BP神经网络模型建立生存分析模型,常用的方法有:连续时间模型(continuous time models)与离散时间模型(discrete time models)。
1.1 连续时间模型(continuous time models)
最常用的是Faraggi和Simon[2]提出的方法,在Cox比例风险模型中,风险函数与时间、协变量有如下关系:
h(t,xi)=h0(t)exp (βxi)(2)
通过最大化偏似然函数,使用Newton-Raphson法得到参数的估计值,现在使用神经网络的输出值g(xi,θ)来代替(2)中的线性项 βxi,比例风险模型变成h(t,xi)=h0(t)exp [g(xi,θ)],有偏似然函数:
Lc(θ)=∏i∈uexp ∑jwjk/(1+exp (-wijxi))/∑j∈Riexp ∑jwjk/(1+exp (-wijxj))(3)
g(xi,θ)可以依赖时间和协变量变化,也就是说协变量的效应可以随时间而变化,这给我们提供了一个可以处理删失变量但又不需要满足比例风险模型的PH假定的可供选择的方法。
1.2 离散时间模型(discrete time models)
常用的模型有[3]:(1)直接预测患者是否可以存活到某年(例如5年),是最简单的神经网络模型,模型的输出层只有一个神经元结点,如欲预测多个时间点,则需建立多个神经网络模型(每个模型对应一个时间区间);(2)多个输出结点的单个神经网络模型。
1.2.1 输出层有单个结点的神经网络模型 是一个标准的分类神经网络模型,生存时间被分成2个区间,例如生存时间是否大于5年。其似然函数为:
∏patientsptii(1-pi)(1-ti)
其对数似然函数为:
∑patientstilog pi+(1-ti)log (1-pi)
pi:第i个病人死亡的概率,ti:第i个观测在某时间点(例如5年)的结果,如观测死亡,取值为1,否则取值为0。对于删失的观测不能简单地排除,这样会造成偏性,我们使用Cox线性比例风险模型产生的个体预测值对删失值做填补。 1.2.2 输出层有多个结点的神经网络模型 将生存时间分成几个离散的区间,估计某个区间事件发生的概率。
【关键词】BP神经网络;函数逼近
1.绪论
人工神经网络(artificial neural network,ANN)是模仿生物神经网络功能的一种经验模型。生物神经元受到传入的刺激,其反应又从输出端传到相联的其它神经元,输入和输出之间的变换关系一般是非线性的。
1.1 BP神经网络定义
BP (Back Propagation)神经网络是一种神经网络学习算法。相邻层之间各神经元进行全连接,而每层各神经元之间无连接,网络按有教师示教的方式进行学习,当一对学习模式提供给网络后,各神经元获得网络的输入响应产生连接权值(Weight)。此过程反复交替进行,直至网络的全局误差趋向给定的极小值,即完成学习的过程。
1.2 BP神经网络模型及其基本原理
网络的输入层模拟的是神经系统中的感觉神经元,它接收输入样本信号。输入信号经输入层输入, 通过隐含层的复杂计算由输出层输出,输出信号与期望输出相比较,若有误差,再将误差信号反向由输出层通过隐含层处理后向输入层传播。在这个过程中,误差通过梯度下降算法,分摊给各层的所有单元,从而获得各单元的误差信号,以此误差信号为依据修正各单元权值,网络权值因此被重新分布。此过程完成后, 输入信号再次由输入层输入网络,重复上述过程。这种信号正向传播与误差反向传播的各层权值调整过程周而复始地进行着,直到网络输出的误差减少到可以接受的程度,或进行到预先设定的学习次数为止。权值不断调整的过程就是网络的学习训练过程。
2.BP网络在函数逼近中的应用
2.1 基于BP神经网络逼近函数
步骤1:假设频率参数k=1,绘制要逼近的非线性函数的曲线。
步骤2:网络的建立
应用newff()函数建立BP网络结构。隐层神经元数目n可以改变,暂设为n=3,输出层有一个神经元。选择隐层和输出层神经元传递函数分别为tansig函数和purelin函数,网络训练的算法采用Levenberg Marquardt算法trainlm。
同时绘制网络输出曲线,并与原函数相比较,结果如图3.3所示。
其中 “――” 代表要逼近的非线性函数曲线;
“……” 代表未经训练的函数曲线;
因为使用newff( )函数建立函数网络时,权值和阈值的初始化是随机的,所以网络输出结构很差,根本达不到函数逼近的目的,每次运行的结果也有时不同。
步骤3:网络训练
应用train()函数对网络进行训练之前,需要预先设置网络训练参数。训练后得到的误差变化过程如图2.1所示。
步骤4: 网络测试
对于训练好的网络进行仿真:
其中 “――” 代表要逼近的非线性函数曲线;
“” 代表未经训练的函数曲线;
“” 代表经过训练的函数曲线;
从图中可以看出,得到的曲线和原始的非线性函数曲线很接近。这说明经过训练后,BP网络对非线性函数的逼近效果比较好。
3.结束语
神经网络在近几年的不断发展,在人工智能、自动控制、计算机科学、信息处理、机器人、模式识别等众多方面都取得了不错的成绩,给人们带来了很多应用上的方便,和一些解决问题的方法,期待神经网络可以应在在更多的领域,为人类做出更大的贡献。
参考文献:
[1] 刘焕海,汪禹.《计算机光盘软件与应用》. 北京: 高等教育出版社,2011.10:15-30.
关键词:BP;神经网络;PID控制器
1 分层调整学习速率的改进BP算法
BP算法本质上是梯度下降法。若要改进BP算法,首先要熟悉了解梯度下降法的原理。
设函数f(x)具有一阶连续导数,假设在x=x*处取得函数极小值,用xk代表在第k次接近极小值点,则在第k+1次接近极小值点为xk+1=xk+λpk,对函数f(x)在xk+1处进行泰勒级数展开:
f(xk+1)=f(xk+λpk)=f(xk)+λ?荦f(xk)Tpk+o(λ)(1-1)
上式中?荦f(xk)为函数f(x)在xk处的梯度,当λ取得非常小的值时,o(λ)为λ的高阶无穷小。如果有
?荦f(xk)Tpk<0 (1-2)
能推出
f(xk+λpk)<f(xk) (1-3)
这就表明在第k+1次迭代时的函数值小于第k次迭代的函数值。为了使?荦f(xk)Tpk取得最小值,对其求模变化:
?荦f(xk)Tpk=||?荦f(xk)||・||pk||・cosθ (1-4)
上式中,θ为向量?荦f(xk)与pk的夹角。
假设||pk||为固定值,当θ=0时,即向量?荦f(xk)与pk同向,则cosθ=1,?荦f(xk)Tpk取得最大值;反之,当θ=180时,即向量?荦f(xk)与pk反向,则cosθ=-1,?荦f(xk)Tpk<0,所以向量pk的正方向就是梯度的负方向。沿其负梯度方向进行搜索能够使f(x)函数值减小的速率加快,能够快速地找到极小点。
根据式(1-1)可知,λ作为梯度?荦f(xk)与向量pk的系数,称为步长,同时影响着网络在负梯度方向上的搜索能力。选取最佳步长的计算公式如下:
λk=(1-5)
把求得最佳步长代入式(1-3)得
f(xk-λkpk)<f(xk) (1-6)
我们在最佳步长的计算中能够发现,公式(1-5)的计算增加了网络计算量,可以通过使用学习速率η替代步长来降低计算量。在文章中我们提出了一种分层调整学习速率的方法,它能够同时调整输入层与隐含层及隐含层与输出层之间的网络连接权值的学习速率。
设定网络的学习速率η为一个较小的值,当满足f(xk-λkpk)<f(xk)条件时,则学习速率的改变趋势为:
η?坩2η (1-7)
当满足f(xk-λkpk)>f(xk)条件时,则学习速率的改变趋势为:
η?坩0.5η (1-8)
2 以改进的BP神经网络参数为基础的自整定PID控制器
相比较其他而言,BP神经网络主要优胜点在于能够将网络连接权值不断代入计算来修正误差,使之可以不断接近适应度函数。学习算法的实现难度比较小,所以在构建PID控制器时,用BP网络结构来构建是比较常见的。以BP算法为基础的神经网络能够通过自学及自适应能力找到一组最优PID参数,使系统的性能达到最优。
①常规的PID控制器:闭环控制被控对象,在线整定KP、KI、KD参数;
②BP神经网络:BP神经网络通过自学习和自适应能力不断更新整定网络的连接权值,通过不断整定使输出值极限接近目标值。当输出值为KP、KI、KD时,系统的性能为最佳。
假定BP神经网络优化PID控制器是一个由三层网络构成的,且其输入层节点有M个,隐含层节点Q个、输出层节点3个。
输出节电输出对应KP、KI、KD可调参数值,隐含层的激发函数可以取Sigmoid函数,可正可负。然而输出层的激发函数为非负。
BP神经网络输入层节点的输出为
公式中,g′(x)=g(x)・(1-g(x)),f′(x)=(1-f2(x))/2。
以改进的BP神经网络为基础的PID控制器算法:
一是对BP神经网络的结构进行明确,在明确了网络结构的同时也就明确了输出层及隐含层的节点个数。并对各层的(0)初始化,k=1;
二是为计算e(k)=r(k)-y(k),可以通过样本采集得到的r(k)及y(k)代入计算;
三是在将r(i),y(i),u(i-1),e(i)(i=k,k-1,...,k-p)输入到神经网络之前进行统一化处理;
四是通过式(2-2)和(2-3)将各层神经元的输入输出计算出来,输出层输出的数据就是PID控制器的KP(k)、K1(k)、KD(k);
五是PID的控制输出u(k)可以由式u(t)=KP[e(t)]得到;
六是当所有网络权值刷新一次之后,若误差e(k+1)满足e(k+1)<
e(k),那么按照式(1-7)对其学习速率增大,当误差不再变化时,此时记录连接权值。若误差e(k+1)满足e(k+1)>e(k),那么按照式(1-8)对其学习速率减小,当误差减小时,记录连接权值
七是将k赋值为k+1,返回第二步。
3 改进的BP神经网络PID仿真
将被控对象假定为:
网络结构采用4-5-3结构,输入信号为γ(k)=1.0,此信号是阶跃信号。网络结构中的4代表输入层有四个输入,为给定输入r(k)、
e(k)=r(k)-y(k)、y(k)和1。网络结构中的3代表输出层有三个参数,为KP、KI、KD。η=0.01,加权系数初值在[-1,1]区间内随机赋值。经过仿真得到的曲线图如图1和图2所示。
图1 单位阶跃响应曲线图
图2 误差变化曲线
被控对象是二阶的,所以阶跃响应曲线以正弦的方式衰减,并在系统稳定水平线上下振荡。从图1和图2可以看出,刚启动时系统振荡幅度较大,误差也比较大,系统在0.2s左右时振荡幅度变小,误差也迅速变小,在0.3s之后系统达到稳定运行,误差几近于0。由图可知在单位阶跃响应中改进的BP神经网络相较BP神经网络而言,超调量小,收敛速度快。
4 总结
提出了一种分层调整学习速率的BP神经网络改进方法,并把改进的方法与传统的PID结合。并基于MATLAB平台建立了模型进行仿真验证,仿真结果验证了改进的BP神经网络PID具有更快的响应速度、更高的精度,且稳定性更强。
参考文献:
[1]李楠.基于神经网络直流无刷电机控制策略的研究[D].兰州理工大学,2005.
[2]黄家圣.人工神经网络在无刷直流电动机中的应用研究[D].上海海事大学,2005.
[3]王国玲,李振宇,范自道.无刷直流电机自适应模糊PID控制系统[J].机电工程技术,2013(2):30~33.
【关键词】GPS;高程异常;BP神经网络;拟合模型
Research on the Models of GPS Height Fitting Based on BP Neural Network
Li Yongquan
【Abstract】International and domestic multifarious control nets in use of GPS’s positioning techniques are only to solve the horizontal coordinates, but the height still follow to use the geometric leveling.Therefore, The basic theory of neural network and algorithm of BP are described, Discuss the problem of GPS height fitting based on BP neural network by trials. BP neural network is a kind of nonlinear mapping for its inputs and outputs,BP neural network is a high precise method for translating height.
【Key words】GPS;height anomaly;back propagation neural networks; fitting models
1. 引言
GPS平面定位的精度目前已经可以达到毫米级,但相对于平面定位精度,GPS在高程方面的定位精度较低。 神经网络是一种高度自适应的非线性动力系统,神经网络的数学理论本质上是非线性数学理论,通过BP神经网络学习可以得到输入和输出之间的高度非线性映射,因此,使用神经网络可以建立起输入和输出之间的非线性关系。BP神经网络本身也是一种高精度的高程转换方法。
2. 神经网络的模型及BP算法
2.1 神经网络的模型
(1)生物神经元模型。神经元模型是基于生物神经元的特点提出的,人脑由大量的生物神经元组成,神经元之间互相有连接,从而构成一个庞大而复杂的神经元网络。神经元是大脑处理信息的基本单元,结构如图1。神经元由细胞体、树突和轴突三部分组成,其中突触是神经元之间的连接。细胞体是由很多分子形成的综合体,内部含有细胞核、细胞质和细胞膜。细胞体的作用是接受和处理信息。树突是细胞体向外延伸的纤维体,是接受从其他神经元传入信息的入口。轴突是神经元的信息通道,是细胞体向外延伸最长、最粗的树枝纤维体,也叫神经纤维。(2)神经元模型。神经元一般表现为一个多输入(多个树突和细胞体与其他多个神经元轴突末梢突触连接)、单输出(每个神经元只有一个轴突作为输出通道)的非线性器件,通用的结构模型如图2所示。
(3)神经网络模型。神经网络的神经元之间的互连模式有前向网络、有反馈的前向网络、层内有相互结合的前向网络和相互结合型网络四种。
前向网络神经元分层排列,组成输入层、中间层(隐含层)和输出层。每一层的神经元只接受来自前一层神经元的输入,后面的层对前面的层没有信号反馈。输入模式经过各层次的顺序传播,最后在输出层上得到输出。目前对前向网络得出的一致的结论是:甚至是单中间层网络,只要隐节点数目足够多,前向网络就可以通过训练学习样本,以任意精度逼近(或表达)期望目标。
2.2 神经网络BP算法
(1)BP(Back Propagation)网络模型结构。BP网络的结构如图4所示,BP网络具有三层或三层以上神经元的神经网络,包括输入层、中间层(隐层)和输出层。上下层之间实现全连接,而每层神经元之间没有连接。当一对学习样本提供给网络后,神经元的激活值从输入层经各中间层向输出层传播,在输出层的各神经元获得网络的输入响应。接下来,按照减少目标输出和实际输出之间的方向,从输出层反向经过各中间层回到输入层,从而逐层修正各连接权值,这种算法称为“误差反向传播算法”,即BP算法。
(2)BP算法的数学描述。BP算法基本原理是利用输出后的误差来估计输出层的直接前导层的误差,再用这个误差估计更前一层的误差,如此一层一层的反传下去,就获得了所有其他各层的误差估计。
BP网络学习规则的指导思想是:对网络权值和阈值的修正要沿着表现函数下降最快的方向――负梯度方向。
xk+1=xk-akgk(1)
其中xk是当前的权值和阈值矩阵,gk是当前表现函数的梯度,ak是学习速率。
三层BP网络,输入节点xi,中间层节点yi,输出节点zl。输入节点与中间层节点间的网络权值为wji,中间层节点与输出节点间的网络权值为vlj。当输出节点的期望值为tl时,模型计算公式如下。
中间层节点的输出:
yi=f(∑iwjixi-θj)=f(netj)(2)
输出节点的计算输出:
zl=f(∑jvljyj-θl)=f(netl)(3)
3. BP神经网络用于GPS高程拟合
3.1 山区高程异常拟合实例:以本溪GPS和水准资料作为样本来源,进行BP高程异常拟合。
通过山区高程异常拟合实例,对数据分析可以得到如下结论,学习样本数与测试样本数之比在1/4之间时网络稳定性较好。高程拟合的精度与学习样本数量有关,学习样本数越多,拟合精度就越高。
3.2 平原地区高程异常拟合实例:以某市D级GPS部分数据进行实验研究
通过平原地区高程异常拟合实例,对数据分析可以得到如下结论,学习样本数与测试样本数之比在 1/3 之间时网络稳定性较好。学习样本数对测试对象的精度也有着重要的影响,一般随着学习样本数的增多,中误差会有所改善。这主要是更多的学习样本就更能表述出所研究问题的一些基本特征,进而仿真的效果就能更好。
4. 结束语
重点研究基于BP神经网络的GPS高程异常拟合算法,详细介绍了人工神经网络基本理论,重点讨论了基于BP神经网络的GPS高程拟合,包括BP神经网络的基本原理、主要特点。分析了神经网络的BP算法,包括其数学模型、网络结构。构造了基于BP神经网络的GPS高程拟合模型,结合具体工程数据进行了神经网络性能分析。
参考文献
[1] 国家测绘局测绘发展研究中心.测绘发展研究动态[R].北京:国家测绘局,2008,8:1-7
[2] 李征航、黄劲松.GPS测量与数据处理[M].武汉:武汉大学出版社,2005,277-278
[3] 曹先革.基于人工神经网络的GPS高程异常拟合方法研究[D],北京:中国地质大学,2008
[4] 徐绍铨.GPS高程拟合系统的研究[J],武汉:武汉测绘科技大学学报,1999,24(4),11-15
[5] 阎平凡.人工神经网络与模拟进化计算[M],北京:清华大学出版社,2000,5-6
[6] 徐丽娜.神经网络控制[M].哈尔滨:哈尔滨工业大学出版社,1999,1-40
【关键词】BP神经网络;变形检测;沉降预报最佳值为7;输入层和隐层的传递函数(Tfi)用缺省的正切S形函数(tansig),输出层用线形函数(purelin);网络训练函数(BTF)使用动量批梯度下降函数(traingdm),它具有更快的收敛速度,而且引入了一个动量项mc,避免了局部最小问题的出现;网络权值、阈值学习函数(BLF)和性能函数(PF)采用MATLAB缺省值;对输入数据、目标数据、输出数据的处理,使用MATLAB提供的归一化函数(premnmx)和反归一化函数(postmnmx)。运行程序时先用训练样本对网络进行训练,然后利用训练好的网络对预报样本进行预报。灰色理论GM(1,1)模型同样利用MATLAB编程实现。
2.3结果分析
首先用MATLAB编写的灰色理论GM(1,1)模型和BP神经网络模型分别处理训练样本,得到相应的拟合误差。其中GM(1,1)相对模型拟合误差主要为18.97、4.48、9.07、33.71、7.63、4.08、9.50等,等维BP网络模型拟合误差主要为6.66、0.97、0.29、6.16、2.06、4.44.并且通过之前得到的模拟数据可以得出BP神经网络模型拟合的平均误差以及GM(1,1)模型拟合的平均误差为11.82%。BP神经网络模型拟合的误差小于GM(1,1)模型拟合的误差为3.10%,其拟合精度高于灰色理论GM(1,1)模型。为了进一步检测灰色理论GM(1,1)模型和BP神经网络模型的预报精度,再分别用两种模型对监测点的沉降数据的预报样本进行预报,并可从中得出BP神经网络模型的预报精度远高于灰色GM(1,1)模型的结果。
三、结论
本文引入灰色理论中新陈代谢思想构造神经网络的学习样本,建立BP神经网络预测模型,并用该模型进行了实际的沉降预测。工程模拟实例表明:用等维BP神经网络模型进行沉降预测是可行的,预报精度远高于灰色GM(1,1)模型。为了提高BP神经网络模型的预测精度,一方面需要有足够的观测数据序列,以保证神经网络学习所需的样本数。另一方面需要恰当地确定输入层神经元的个数,目前尚无据可依,只能通过根据试算确定。
参考文献
关键词:BP神经网络;电力负荷;短期预测
中图分类号:TP183 文献标识码:A文章编号:1007-9599 (2010) 09-0000-02
Power Load Short-term Forecasting Based on BP Neural Network
Wang Jing,Yang Xiao
(School of Economics&Management,North China Electric Power University,Beijing102206,China)
Abstract:Load forecasting is an important task in power system.We forecasted short-term load for a region of southern based on BP neural network.Firstly,we introduce the structure of BP neural network,and then we make use of the data to do empirical research by using BP neural network of the region.And we consider the meteorological factors in the design of the BP neural network structure.
Keywords:BP Neural Network;Power Load;Short-term Forecast
一、引言
目前,全国供电紧张,部分严重地区经常缺电,造成许多发电设备不能及时检修,处于超负荷的运转状态。会导致机组老化加速,出现不可预见的事故,造成人员、财产的伤亡。因此对未来电网内负荷变化趋势的预测,是电网调度部门和设计部门所必须具备的基本信息之一。
电力系统负荷预测是电力生产部门的重要工作,通过精确的预测电力负荷,可以经济的调度发电机组,合理安排机组启停、机组检修计划,降低发电成本,提高经济效益。负荷预测对电力系统控制、运行和计划都有着重要的意义。电力系统负荷变化受多方面的影响,包括不确定性因素引起的随机波动和周期性变化规律。并且,由于受天气、节假日等特殊情况影响,又使负荷变化出现差异。神经网络具有较强非线性的映射功能,用神经网络来预测电力负荷越来越引起人们的关注。
二、BP网络理论
(一)BP网络结构
BP神经网络全称为Back-Propagation Network,即反向传播网络,是一种多层前馈神经网络,结构图如图1所示,根据图示可以知道BP神经网络是一种有三层或三层以上的神经网络,包括输入层、中间层(隐层)和输出层。前后层之间实现全连接,各层之间的神经元不进行连接。当学习样本输入后,神经元的激活之经由各层从输入层向输出层传递。之后,根据减少目标输出与实际输出误差的原则,从输出层反向经过各层至输入层,逐级修正各连接的权值,该算法成为“误差方向传播算法”,即BP算法。由于误差反向传播不断进行,网络对输入模式响应的正确率也不断上升。
BP神经网络传递函数不同于感知器模型传递函数,BP神经网络要求其必须是可微的,所以感知器网络中所用到的硬阈值传递函数在BP神经网络中并不适应。BP神经网络中常用的传递函数有正切函数、Sigmoid型的对数或线性函数。由于这些函数均是可微的,所以BP神经网络所划分的区域是一个非线性的超平面组成的区域,是一个比较平滑的曲面,它比线性划分更加的精确。另外,网络才有严格的梯度下降法进行学习,权值修正的解析式分非常明确。
(二)BP网络算法
(1)初始化。给没给连接权值 、 、阈值 与 赋予区间 内的随机值
(2)确定输入P和目标输出T。选取一组输入样本 和目标输出样本 提供给网络。
(3)用输入样本 、连接权 和阈值 计算中间层各单元的输入 ,然后用 通过传递函数计算中间层各单元的输出 。
(4)利用中间层的输出 、连接权 和阈值 计算输出层各单元的输出 ,然后通过传递函数计算输出层各单元的响应 。
(5)利用目标向量 和网络的实际输出 ,计算输出层各单元的一般化误差 。
(6)利用连接权 、输出层的一般化误差 和中间层的输出 计算中间层各单元的一般化误差 。
(7)利用输出层各单元的一般化误差 与中间呈个单元的输出 来修正连接权 和阈值 。
(8)利用中间层各单元的一般化误差 ,和输入层各单元输入P来修正连接权 和阈值 ,计算方法同(7)。
(9)达到误差精度要求或最大训练步数,输出结果,否则返回(3)
三、实证研究
(一)神经网络结构设计
本文以南方某缺电城市的整点有功负荷值,在预测的前一天中,每隔2小时对电力负荷进行一次测量,这样,可以得到12组负荷数据。此外电力负荷还和环境因素有关,文章选取预测日最高气温、最低气温和降雨量气象特征作为网络输入变量。所以设计的网络结构为:15个输入层节点和12个输出向量,根据Kolmogorov定理可知,网络中间层的神经元可以去31个。
(二)输入数据归一化处理
获得输入变量后,为了防止神经元饱和现象,在BP神经网络输入层进行归一化,文章才有如下公式进行变换。
(三)实证分析
中间层神经元传递函数和输出层传递函数分别采用S型正切函数tansig和S型对数函数logsig,因为这连个函数输出区间为[0,1],满足网络设计的需求。
利用以下代码创建一个满足上述要求的BP神经网络。
threshold=[0 1; 0 1; 0 1; 0 1; 0 1; 0 1; 0 1; 0 1; 0 1; 0 1; 0 1; 0 1; 0 1; 0 1; 0 1];
netbp=newff(threshold,[31,12],{’tansig’,’logsig’},’trainlm’)
其中变量threshold用于规定输入向量的最大值和最小值,规定了网络输入向量的最大值为1,最小值为0,。“trainlm”是为网络设定的训练函数,采用的是Levenberg-Marquardt算法进行网络学习。该方法明显优于共轭梯度法及变学习效率的BP算法,LM算法可大大提高学习速度,缩短训练时间。
使用该地区2007年8月11日到20日的负荷和气象数据作为输入向量,8月12日至8月21日负荷数据作为目标向量,对网络进行训练,再用8月20日负荷数据和21日的气象特征数据来预测21日用电负荷,检验预测误差是否能带到要求。
利用MATLAB进行仿真,经过79次训练后达到误差要求结果。如图2
网络训练参数的设定见下表
从图3和图4中可以看出运用BP神经网络方法很好的预测了负荷走势,并且预测误差较小,负荷工程预测的要求。四、结论
在进行电力负荷预测时,必须考虑气象因素的影响。在不同的地区气象因素对电力负荷的影响不同,因此本文在设计神经网络结构时,结合该地实际情况考虑气象因素。本文研究了BP神经网络在电力负荷短期预测中的应用,根据上述的预测结果可以说明BP神经网络对电力负荷进行短期预测是目前一种比较可行的方法。
参考文献
[1]蒋平,鞠平.应用人工神经网络进行中期电力负荷预报[J].电力系统自动化,1995,6(19):15-17
[2]苏宁.MATLAB软件在电力负荷预测中的应用[J].华北电力技术,2007(8):16-19
[3]康重庆,夏清,张伯明.电力系统负荷预测研究综述与发展方向的探讨[J].电力系统自动化,2OO4,28(17):1-11
[4]姜勇.电力系统短期负荷预测的模糊神经网络方法[J].继电器,2002,36(2):11-13
[5]田景文,高美娟.人工神经网络算法研究及应用[M].北京:北京理工大学出版社,2006
【关键词】BP神经网络模型; 煤相; 训练; 预测
煤相最早是由前苏联学者热姆丘日尼科夫于1951年提出的,定义为煤的原始成因类型即一定泥炭沼泽环境下形成的煤成因类型和煤岩类型[1]。应用煤相分析实现煤层气潜力评价和生气有利带预测已成为煤层气勘探开发中十分重要的方法,然而成煤环境中不同的层位(纵向上)和不同地区(平面上)的煤相特征存在明显差异,野外露头观察、薄片分析等地质方法工作量巨大,而传统数学归纳统计方法又很难准确描述,因此寻找到一种高效、准确的方法成为亟待解决的问题。
1 煤相分析参数及类型划分
1.1 煤相分析参数
不同煤相反映出泥炭沼泽的覆水深度水介质的酸度氧化还原电位堆积方式和成煤植物种类等成煤环境的不同,可通过凝胶化指数(GI)、植物保存指数(TPI)、镜惰比(V/I)、流动性指数(MI)和森林指数(WI)五个煤岩学参数反映。
凝胶化指数GI反映泥炭沼泽的覆水程度,高值表明环境相对潮湿,低值则相对干燥,一般以4为界。
植物保存系数TPI是古代植物遗体遭受微生物降解程度的反映,在一定程度上反映PH的高低。
一般镜惰比(V/I)是成煤泥炭遭受氧化程度的参数,小于1.0反映成煤泥炭层暴露于氧化环境。
流动性指数MI是水流动介质和相对停滞介质的比值,可以反映成煤环境水体的流动性,一般大于0.4表明为流动相。
森林指数WI反映了成煤环境的森林情况,大于0.5表示为森林沼泽[2]。
1.2 煤相类型划分
根据成煤环境中煤相参数的划分依据,结合实际沉积环境的沉积相分析研究,将煤相特征划分为如下三类:干燥泥炭沼泽、森林泥炭沼泽和活水泥炭沼泽。
干燥泥炭沼泽类型反映高位干燥森林沼泽,包括潜水条件或者水下短时间干燥的氧化沼泽,该煤相广泛发育于辫状河三角洲等沉积环境。
森林泥炭沼泽体现极为潮湿、覆水较深的森林面貌,植物遗体遭受分解破坏弱,水流活动差,该煤相广泛发育于上三角洲平原等沉积环境。
活水泥炭沼泽反映处于流动的水动力条件,微生物活动强烈,强覆水的沼泽泥炭环境,该煤相广泛发育于三角洲间湾等沉积环境[3]。
其中在森林泥炭沼泽相发育地带,煤层厚度大且分布稳定,是煤层气生成有利地带,同样,煤储层物性也发育良好,有利于煤层气聚集成藏地带。
2 BP神经网络概述
BP神经网络(Back-Propagation Neural Networks)是一种典型的多层神经网络,由输入层、中间层和输出层组成,其学习过程包括正向传播和反向传播两部分,在正向传播中,信号从输入神经元传入,传播到各隐层神经元,经过激活函数输出,传播到输出层;判断误差函数的最小值,如果达不到所要求的精度,则自动转入反向传播,通过修改学习率、学习步长等参数,调整输出层与隐层、隐层与输入层之间的连接权值,重新进行正向传播,反复训练,直到误差函数达到所要求的精度为止,此时网络模型自动将各层连接权值加以保存,用于对未训练样本值进行预测[4-5](图1)。
图1 BP神经网络示意图
Fig.1 Back-Propagation Neural Networks
BP神经网络模型中输入层节点和输出层节点根据需要求解的问题、数据而定,隐层数一般在1到3之间,隐层节点数目前只能根据经验公式获得,根据Komogorov理论,一个具有n 个节点输入层,隐层节点数为2n+1。
输入层各节点数据的量纲差异往往对网络训练和预测结果会产生影响,,因此首先要对数据进行归一化处理,使数据经过归一化后全部分布在[0,1]区间内。数据标准化处理有如下几种:
(1)X’(i)=,(2)X’(i)=,(3)X’(i)=,本文采用方法(3)。
3 使用BP神经网络算法进行煤相预测
图2 学习次数与误差分析关系图
Fig.2 Learning times and error analysis
3.1 BP神经网络模型建立
选取凝胶化指数(GI)、植物保存系数(TPI)、一般镜惰比(V/I)、流动性指数(MI)、森林指数(WI)作为输入层节点变量;输出层划分为三个节点:干燥泥炭沼泽相、活水泥炭沼泽相、森林泥炭沼泽相,分别赋予期望输出值为0.99、0.66和0.33;隐层数设为1,隐层节点数为11;最大误差精度要求在达到10-3数量级,最大训练次数为3500次。此外针对BP神经算法收敛速度慢和易陷入局部极小的缺点,本文选择采用改进的BP神经网络算法,通过加入动量常数,可有效提高运算速度并避免不收敛情况的发生。
3.2 BP神经网络模型训练
选取了西北地区柴达木盆地、鄂尔多斯盆地的不同地区、不同层位的25个样点煤相分析结果作为训练样本 [1],应用专业软件Matlab进行BP神经网络模型训练,通过对学习率、学习步长、动量常数等参数的调整,使误差精度达到了预期要求[6-8],实际的训练次数为1095次,并且没有出现不收敛情况(图2)。
将参与训练的样本代回已经训练好的网络模型进行验证,验证结果表明,训练值与期望值之间的相对误差全部在10%以内,对于网络输出值小于1的神经网络模型,认定训练成功,模型可用于煤相类型的神经网络预测(表1)。
表1 西北地区柴达木盆地、鄂尔多斯盆地的几十个地区的
样点的煤相分析
Tab.1 The coal facies analysis of samples in qaidam basin
and ordos basin
3.3 BP神经网络模型预测
随机选取8个未参与训练的样点,将煤相参数代入已经训练好的网络中,进行网络预测,结果表明8个预测样本全部判别正确,判别效果非常好(表2)。
表2 样本预测及预测结果
Tab.2 Prediction of samples and results
4 结论
4.1 不同煤相反映出泥炭沼泽的覆水深度水介质的酸度氧化还原电位堆积方式和成煤植物种类等成煤环境的不同,通过凝胶化指数、植物保存指数、镜惰比、流动性指数和森林指数五个煤岩学参数量化反映。根据成煤环境中煤相参数的划分依据,将煤相划分为:干燥泥炭沼泽、森林泥炭沼泽和活水泥炭沼泽。
4.2 由于煤相类别与分析参数之间存在着较强的非线性关系,用传统的地质方法和数学归纳方法难以处理,而BP神经网络具有极强的自适应学习能力,能准确刻画出两者之间复杂的非线性关系,通过加入动量常数,则有效地提高了运算速度并避免了不收敛的发生。
4.3 本文将煤相分析参数作为输入层节点,典型煤相类别作为输出层节点,建立了基于BP神经网络的煤相分析预测模型,通过模型训练和预测,BP神经网络预测煤相结果准确,为开展区域上煤相研究提供了高效快速的方法。
【参考文献】