建立BP神经网络预测 模型,可按下列步骤进行:1、提供原始数据2、训练数据预测数据提取及归一化3、BP网络训练4、BP网络预测5、结果分析现用一个实际的例子,来预测2015年和2016年某地区的人口数。
已知2009年——2014年某地区人口数分别为3583、4150、5062、4628、5270、5340万人执行BP_main程序,得到[ 2015, 5128.呵呵3946380615234375][ 2016, 5100.5797325642779469490051269531]代码及图形如下。
谷歌人工智能写作项目:神经网络伪原创
基坑降水引起地面沉降的BP神经网络预测模型建模过程如下:(1)样本选择因基坑降水引起的地面沉降量和距离基坑的距离关系密切,因此建模选用“基坑降水引起沉降工程数据(第二类)”(见表4.1)中的相关数据作为样本进行学习训练和检验写作猫。
(2)BP神经网络结构设计对于BP网络,对于任何在闭区间内的一个连续函数都可以用单隐层的BP网络逼近,因而一个三层BP网络就可以完成任意的n维到m维的映射。
根据网络结构简单化的原则,确定采用三层BP网络结构,即输入层为沉降点距基坑的距离L(m)、等效压缩模量E(MPa)、水位降深H(m)和支护刚度n四个参数,输出层为地面累积沉降量(mm),隐层层数为1层。
隐层的神经元数目选择是一个十分复杂的问题,往往需要根据设计者的经验和多次实验来确定,因而不存在一个理想的解析式来表示。隐单元的数目与问题的要求,与输入、输出单元的数目有直接的关系。
隐单元数目太多会导致学习时间过长,误差不一定最佳,也会导致容错性差、不能识别以前没有看到的样本,因此一定存在一个最佳的隐单元数。
研究通过一次编程比较了隐层神经元个数分别为5、10、15、20、25、30、40时训练速度及检验精度。
图4.2 BP神经网络程序框图(3)网络训练及检验BP网络采用梯度下降法来降低网络的训练误差,考虑到基坑降水地面沉降范围内沉降量变化幅度较小的特点,训练时以训练目标取0.001为控制条件,考虑到网络的结构比较复杂,神经元个数比较多,需要适当增加训练次数和学习速率,因此初始训练次数设为10000次,学习速率取0.1,中间层的神经元传递函数采用S型正切函数tansig,传输函数采用logsig,训练函数采用trainlm,选用38组数据中的33组作为训练样本,5组作为检验样本。
(4)网络实现及检验效果使用MATLAB6.0编程建立基于BP神经网络的基坑降水地面沉降预测模型(程序代码见附件1),其训练误差及检验效果如下:图4.3 训练误差曲线图4.4 预测误差曲线由图4.3、图4.4可见:样本数据收敛,训练误差较小,中间层神经单元个数为10时预测精度较好,误差小于20%,误差满足工程需求。
自己找个例子算一下,推导一下,这个回答起来比较复杂神经网络对模型的表达能力依赖于优化算法,优化是一个不断计算梯度并调整可学习参数的过程,Fluid中的优化算法可参考 优化器 。
在网络的训练过程中,梯度计算分为两个步骤:前向计算与 反向传播 。前向计算会根据您搭建的网络结构,将输入单元的状态传递到输出单元。
反向传播借助 链式法则 ,计算两个或两个以上复合函数的导数,将输出单元的梯度反向传播回输入单元,根据计算出的梯度,调整网络的可学习参数。BP算法隐层的引入使网络具有很大的潜力。
但正像Minskey和Papert当时所指出的.虽然对所有那些能用简单(无隐层)网结解决的问题有非常简单的学习规则,即简单感知器的收敛程序(主要归功于Widrow和HMf于1960年提出的Delta规刚),BP算法但当时并没有找到同样有技的含隐层的同培的学习规则。
对此问题的研究有三个基本的结果。一种是使用简单无监督学习规则的竞争学习方法.但它缺乏外部信息.难以确定适台映射的隐层结构。第二条途径是假设一十内部(隐层)的表示方法,这在一些先约条件下是台理的。
另一种方法是利用统计手段设计一个学习过程使之能有技地实现适当的内部表示法,Hinton等人(1984年)提出的Bolzmann机是这种方法的典型例子.它要求网络在两个不同的状态下达到平衡,并且只局限于对称网络。
Barto和他的同事(1985年)提出了另一条利用统计手段的学习方法。
但迄今为止最有教和最实用的方瑶是Rumelhart、Hinton和Williams(1986年)提出的一般Delta法则,即反向传播(BP)算法。
Parter(1985年)也独立地得出过相似的算法,他称之为学习逻辑。此外, Lecun(1985年)也研究出大致相似的学习法则。
首先要知道你建立的这个模型的内部逻辑关系。。1,确定隐层数,画出简要模型图。2,确定采用什么样的神经网络来建立模型3.通过测试数据来训练模型。。
4.根据测试训练得到的数据和实际数据进行比对,或者算出误差。从而修改隐层中的权值和阀值。反复重复3-4.。最后得到一个最优的模型。大致是这样。。。楼主说的太概略。。。无法回答清楚请抱歉。
第0节、引例 本文以Fisher的Iris数据集作为神经网络程序的测试数据集。Iris数据集可以在 找到。
这里简要介绍一下Iris数据集:有一批Iris花,已知这批Iris花可分为3个品种,现需要对其进行分类。不同品种的Iris花的花萼长度、花萼宽度、花瓣长度、花瓣宽度会有差异。
我们现有一批已知品种的Iris花的花萼长度、花萼宽度、花瓣长度、花瓣宽度的数据。一种解决方法是用已有的数据训练一个神经网络用作分类器。
如果你只想用C#或Matlab快速实现神经网络来解决你手头上的问题,或者已经了解神经网络基本原理,请直接跳到第二节——神经网络实现。
第一节、神经网络基本原理 1. 人工神经元( Artificial Neuron )模型 人工神经元是神经网络的基本元素,其原理可以用下图表示:图1. 人工神经元模型 图中x1~xn是从其他神经元传来的输入信号,wij表示表示从神经元j到神经元i的连接权值,θ表示一个阈值 ( threshold ),或称为偏置( bias )。
则神经元i的输出与输入的关系表示为:图中 yi表示神经元i的输出,函数f称为激活函数 ( Activation Function )或转移函数 ( Transfer Function ) ,net称为净激活(net activation)。
若将阈值看成是神经元i的一个输入x0的权重wi0,则上面的式子可以简化为:若用X表示输入向量,用W表示权重向量,即:X = [ x0 , x1 , x2 , ....... , xn ]则神经元的输出可以表示为向量相乘的形式:若神经元的净激活net为正,称该神经元处于激活状态或兴奋状态(fire),若净激活net为负,则称神经元处于抑制状态。
图1中的这种“阈值加权和”的神经元模型称为M-P模型 ( McCulloch-Pitts Model ),也称为神经网络的一个处理单元( PE, Processing Element )。
2. 常用激活函数 激活函数的选择是构建神经网络过程中的重要环节,下面简要介绍常用的激活函数。
(1) 线性函数 ( Liner Function )(2) 斜面函数 ( Ramp Function )(3) 阈值函数 ( Threshold Function )以上3个激活函数都属于线性函数,下面介绍两个常用的非线性激活函数。
(4) S形函数 ( Sigmoid Function )该函数的导函数:(5) 双极S形函数 该函数的导函数:S形函数与双极S形函数的图像如下:图3. S形函数与双极S形函数图像双极S形函数与S形函数主要区别在于函数的值域,双极S形函数值域是(-1,1),而S形函数值域是(0,1)。
由于S形函数与双极S形函数都是可导的(导函数是连续函数),因此适合用在BP神经网络中。(BP算法要求激活函数可导)具体。
由于目前研究的各种数学模型或多或少存在使用条件的局限性,或使用方法的复杂性等问题,预测效果均不十分理想,距离实际应用仍有较大差距。
NNT是Matlab 中较为重要的一个工具箱,在实际应用中,BP 网络用的最广泛。
神经网络具有综合能力强,对数据的要求不高,适时学习等突出优点,其操作简便,节省时间,网络初学者即使不了解其算法的本质,也可以直接应用功能丰富的函数来实现自己的目的。
因此,易于被基层单位预防工作者掌握和应用。
以下几个问题是建立理想的因素与疾病之间的神经网络模型的关键:(1)资料选取应尽可能地选取所研究地区系统连续的因素与疾病资料,最好包括有疾病高发年和疾病低发年的数据。
在收集影响因素时,要抓住主要影响伤寒、副伤寒的发病因素。
(2)疾病发病率分级神经网络预测法是按发病率高低来进行预测,在定义发病率等级时,要结合专业知识及当地情况而定,并根据网络学习训练效果而适时调整,以使网络学习训练达到最佳效果。
(3)资料处理问题在实践中发现,资料的特征往往很大程度地影响网络学习和训练的稳定性,因此,数据的应用、纳入、排出问题有待于进一步研究。
6.3.1 人工神经网络的基本原理人工神经网络(ANN)是近年来发展起来的十分热门的交叉学科,它涉及生物、电子、计算机、数学和物理等学科,有着广泛的应用领域。
人工神经网络是一种自适应的高度非线性动力系统,在网络计算的基础上,经过多次重复组合,能够完成多维空间的映射任务。
神经网络通过内部连接的自组织结构,具有对数据的高度自适应能力,由计算机直接从实例中学习获取知识,探求解决问题的方法,自动建立起复杂系统的控制规律及其认知模型。
人工神经网络就其结构而言,一般包括输入层、隐含层和输出层,不同的神经网络可以有不同的隐含层数,但他们都只有一层输入和一层输出。
神经网络的各层又由不同数目的神经元组成,各层神经元数目随解决问题的不同而有不同的神经元个数。
6.3.2 BP神经网络模型BP网络是在1985年由PDP小组提出的反向传播算法的基础上发展起来的,是一种多层次反馈型网络(图6.17),它在输入和输出之间采用多层映射方式,网络按层排列,只有相邻层的节点直接相互连接,传递之间信息。
在正向传播中,输入信息从输入层经隐含层逐层处理,并传向输出层,每层神经元的状态只影响下一层神经元的状态。
如果输出层不能得到期望的输出结果,则转入反向传播,将误差信号沿原来的连同通路返回,通过修改各层神经元的权值,使误差信号最小。
BP网络的学习算法步骤如下(图6.18):图6.17 BP神经网络示意图图6.18 BP算法流程图第一步:设置初始参数ω和θ,(ω为初始权重,θ为临界值,均随机设为较小的数)。
第二步:将已知的样本加到网络上,利用下式可算出他们的输出值yi,其值为岩溶地区地下水与环境的特殊性研究式中:xi为该节点的输入;ωij为从I到j的联接权;θj为临界值;yj为实际算出的输出数据。
第三步:将已知输出数据与上面算出的输出数据之差(dj-yj)调整权系数ω,调整量为ΔWij=ηδjxj式中:η为比例系数;xj为在隐节点为网络输入,在输出点则为下层(隐)节点的输出(j=1,2…,n);dj为已知的输出数据(学习样本训练数据);δj为一个与输出偏差相关的值,对于输出节点来说有δj=ηj(1-yj)(dj-yj)对于隐节点来说,由于它的输出无法进行比较,所以经过反向逐层计算有岩溶地区地下水与环境的特殊性研究其中k指要把上层(输出层)节点取遍。
误差δj是从输出层反向逐层计算的。各神经元的权值调整后为ωij(t)=ωij(t-1)+Vωij式中:t为学习次数。
这个算法是一个迭代过程,每一轮将各W值调整一遍,这样一直迭代下去,知道输出误差小于某一允许值为止,这样一个好的网络就训练成功了,BP算法从本质上讲是把一组样本的输入输出问题变为一个非线性优化问题,它使用了优化技术中最普遍的一种梯度下降算法,用迭代运算求解权值相当于学习记忆问题。
6.3.3 BP 神经网络模型在伤寒、副伤寒流行与传播预测中的应用伤寒、副伤寒的传播与流行同环境之间有着一定的联系。
根据桂林市1990年以来乡镇为单位的伤寒、副伤寒疫情资料,伤寒、副伤寒疫源地资料,结合现有资源与环境背景资料(桂林市行政区划、土壤、气候等)和社会经济资料(经济、人口、生活习惯等统计资料)建立人工神经网络数学模型,来逼近这种规律。
6.3.3.1 模型建立(1)神经网络的BP算法BP网络是一种前馈型网络,由1个输入层、若干隐含层和1个输出层构成。
如果输入层、隐含层和输出层的单元个数分别为n,q1,q2,m,则该三层网络网络可表示为BP(n,q1,q2,m),利用该网络可实现n维输入向量Xn=(X1,X2,…,Xn)T到m维输出向量Ym=(Y1,Y2,…,Ym)T的非线性映射。
输入层和输出层的单元数n,m根据具体问题确定。
(2)样本的选取将模型的输入变量设计为平均温度、平均降雨量、岩石性质、岩溶发育、地下水类型、饮用水类型、正规自来水供应比例、集中供水比例8个输入因子(表6.29),输出单元为伤寒副伤寒的发病率等级,共一个输出单元。
其中q1,q2的值根据训练结果进行选择。表6.29 桂林市伤寒副伤寒影响因素量化表通过分析,选取在伤寒副伤寒有代表性的县镇在1994~2001年的环境参评因子作为样本进行训练。
利用聚类分析法对疫情进行聚类分级(Ⅰ、Ⅱ、Ⅲ、Ⅳ),伤寒副伤寒发病最高级为Ⅳ(BP网络中输出定为4),次之的为Ⅲ(BP网络中输出定为3),以此类推,最低为Ⅰ(BP网络中输出定为1)(3)数据的归一化处理为使网络在训练过程中易于收敛,我们对输入数据进行了归一化处理,并将输入的原始数据都化为0~1之间的数。
如将平均降雨量的数据乘以0.0001;将平均气温的数据乘以0.01;其他输入数据也按类似的方法进行归一化处理。
(4)模型的算法过程假设共有P个训练样本,输入的第p个(p=1,2,…,P)训练样本信息首先向前传播到隐含单元上。
经过激活函数f(u)的作用得到隐含层1的输出信息:岩溶地区地下水与环境的特殊性研究经过激活函数f(u)的作用得到隐含层2的输出信息:岩溶地区地下水与环境的特殊性研究激活函数f(u)我们这里采用Sigmoid型,即f(u)=1/[1+exp(-u)](6.5)隐含层的输出信息传到输出层,可得到最终输出结果为岩溶地区地下水与环境的特殊性研究以上过程为网络学习的信息正向传播过程。
另一个过程为误差反向传播过程。
如果网络输出与期望输出间存在误差,则将误差反向传播,利用下式来调节网络权重和阈值:岩溶地区地下水与环境的特殊性研究式中:Δω(t)为t次训练时权重和阈值的修正;η称为学习速率,0<η<1;E为误差平方和。
岩溶地区地下水与环境的特殊性研究反复运用以上两个过程,直至网络输出与期望输出间的误差满足一定的要求。该模型算法的缺点:1)需要较长的训练时间。
由于一些复杂的问题,BP算法可能要进行几小时甚至更长的时间的训练,这主要是由于学习速率太小造成的,可采用变化的学习速率或自适应的学习速率加以改进。2)完全不能训练。
主要表现在网络出现的麻痹现象上,在网络的训练过程中,当其权值调的过大,可能使得所有的或大部分神经元的加权总和n偏大,这使得激活函数的输入工作在S型转移函数的饱和区,从而导致其导数f′(n)非常小,从而使得对网络权值的调节过程几乎停顿下来。
3)局部极小值。BP算法可以使网络权值收敛到一个解,但它并不能保证所求为误差超平面的全局最小解,很可能是一个局部极小解。
这是因为BP算法采用的是梯度下降法,训练从某一起点沿误差函数的斜面逐渐达到误差的最小值。
考虑到以上算法的缺点,对模型进行了两方面的改进:(1)附加动量法为了避免陷入局部极小值,对模型进行了改进,应用了附加动量法。
附加动量法在使网络修正及其权值时,不仅考虑误差在梯度上的作用,而且考虑在误差曲面上变化趋势的影响,其作用如同一个低通滤波器,它允许网络忽略网络上的微小变化特性。
在没有附加动量的作用下,网络可能陷入浅的局部极小值,利用附加动量的作用则有可能滑过这些极小值。
该方法是在反向传播法的基础上在每一个权值的变化上加上一项正比于前次权值变化量的值,并根据反向传播法来产生心的权值变化。
促使权值的调节向着误差曲面底部的平均方向变化,从而防止了如Δω(t)=0的出现,有助于使网络从误差曲面的局部极小值中跳出。
这种方法主要是把式(6.7)改进为岩溶地区地下水与环境的特殊性研究式中:A为训练次数;a为动量因子,一般取0.95左右。
训练中对采用动量法的判断条件为岩溶地区地下水与环境的特殊性研究(2)自适应学习速率对于一个特定的问题,要选择适当的学习速率不是一件容易的事情。
通常是凭经验或实验获取,但即使这样,对训练开始初期功效较好的学习速率,不见得对后来的训练合适。
所以,为了尽量缩短网络所需的训练时间,采用了学习速率随着训练变化的方法来找到相对于每一时刻来说较差的学习速率。
下式给出了一种自适应学习速率的调整公式:岩溶地区地下水与环境的特殊性研究通过以上两个方面的改进,训练了一个比较理想的网络,将动量法和自适应学习速率结合起来,效果要比单独使用要好得多。
6.3.3.2 模型的求解与预测采用包含了2个隐含层的神经网络BP(4,q1,q2,1),隐含层单元数q1,q2与所研究的具体问题有关,目前尚无统一的确定方法,通常根据网络训练情况采用试错法确定。
在满足一定的精度要求下一般认小的数值,以改善网络的概括推论能力。
在训练中网络的收敛采用输出值Ykp与实测值tp的误差平方和进行控制:岩溶地区地下水与环境的特殊性研究1)将附加动量法和自适应学习速率结合应用,分析桂林市36个乡镇地质条件各因素对伤寒副伤寒发病等级的影响。
因此训练样本为36个,第一个隐含层有19个神经元,第二个隐含层有11个神经元,学习速率为0.001。A.程序(略)。B.网络训练。
在命令窗口执行运行命令,网络开始学习和训练,其学习和训练过程如下(图6.19)。图6.19 神经网络训练过程图C.模型预测。
a.输入未参与训练的乡镇(洞井乡、两水乡、延东乡、四塘乡、严关镇、灵田乡)地质条件数据。b.预测。程序运行后网络输出预测值a3,与已知的实际值进行比较,其预测结果整理后见(表6.30)。
经计算,对6个乡镇伤寒副伤寒发病等级的预测符合率为83.3%。表6.30 神经网络模型预测结果与实际结果比较c.地质条件改进方案。
在影响疾病发生的地质条件中,大部分地质条件是不会变化的,而改变发病地区的饮用水类型是可以人为地通过改良措施加以实施的一个因素。
因此,以灵田乡为例对发病率较高的乡镇进行分析,改变其饮用水类型,来看发病等级的变化情况。
表6.31显示,在其他地质条件因素不变的情况下,改变当地的地下水类型(从原来的岩溶水类型改变成基岩裂隙水)则将发病等级从原来的最高级4级,下降为较低的2级,效果是十分明显的。
因此,今后在进行伤寒副伤寒疾病防治的时候,可以通过改变高发区饮用水类型来客观上减少疫情的发生。
表6.31 灵田乡改变饮用水类型前后的预测结果2)选取桂林地区1994~2000年月平均降雨量、月平均温度作为输入数据矩阵,进行样本训练,设定不同的隐含层单元数,对各月份的数据进行BP网络训练。
在隐含层单元数q1=13,q2=9,经过46383次数的训练,误差达到精度要求,学习速率0.02。A.附加动量法程序(略)。B.网络训练。
在命令窗口执行运行命令,网络开始学习和训练,其学习和训练过程如下(图6.20)。C.模型预测。a.输入桂林市2001年1~12月桂林市各月份的平均气温和平均降雨量。预测程度(略)。b.预测。
程序运行后网络输出预测值a2,与已知的实际值进行比较,其预测结果整理后见(表6.32)。经计算,对2001年1~12月伤寒副伤寒发病等级进行预测,12个预测结果中,有9个符合,符合率为75%。
图6.20 神经网络训练过程图表6.32 神经网络模型预测结果与实际值比较6.3.3.3 模型的评价本研究采用BP神经网络对伤寒、副伤寒发病率等级进行定量预测,一方面引用数量化理论对不确定因素进行量化处理;另一方面利用神经网络优点,充分考虑各影响因素与发病率之间的非线性映射。
实际应用表明,神经网络定量预测伤寒、副伤寒发病率是理想的。其主要优点有:1)避免了模糊或不确定因素的分析工作和具体数学模型的建立工作。2)完成了输入和输出之间复杂的非线性映射关系。
3)采用自适应的信息处理方式,有效减少人为的主观臆断性。虽然如此,但仍存在以下缺点:1)学习算法的收敛速度慢,通常需要上千次或更多,训练时间长。2)从数学上看,BP算法有可能存在局部极小问题。
本模型具有广泛的应用范围,可以应用在很多领域。从上面的结果可以看出,实际和网络学习数据总体较为接近,演化趋势也基本一致。
说明选定的气象因子、地质条件因素为神经单元获得的伤寒、副伤寒发病等级与实际等级比较接近,从而证明伤寒、副伤寒流行与地理因素的确存在较密切的相关性。
(一)方法原理人工神经网络是由大量的类似人脑神经元的简单处理单元广泛地相互连接而成的复杂的网络系统。理论和实践表明,在信息处理方面,神经网络方法比传统模式识别方法更具有优势。
人工神经元是神经网络的基本处理单元,其接收的信息为x1,x2,…,xn,而ωij表示第i个神经元到第j个神经元的连接强度或称权重。
神经元的输入是接收信息X=(x1,x2,…,xn)与权重W={ωij}的点积,将输入与设定的某一阈值作比较,再经过某种神经元激活函数f的作用,便得到该神经元的输出Oi。
常见的激活函数为Sigmoid型。
人工神经元的输入与输出的关系为地球物理勘探概论式中:xi为第i个输入元素,即n维输入矢量X的第i个分量;ωi为第i个输入与处理单元间的互联权重;θ为处理单元的内部阈值;y为处理单元的输出。
常用的人工神经网络是BP网络,它由输入层、隐含层和输出层三部分组成。BP算法是一种有监督的模式识别方法,包括学习和识别两部分,其中学习过程又可分为正向传播和反向传播两部分。
正向传播开始时,对所有的连接权值置随机数作为初值,选取模式集的任一模式作为输入,转向隐含层处理,并在输出层得到该模式对应的输出值。每一层神经元状态只影响下一层神经元状态。
此时,输出值一般与期望值存在较大的误差,需要通过误差反向传递过程,计算模式的各层神经元权值的变化量 。这个过程不断重复,直至完成对该模式集所有模式的计算,产生这一轮训练值的变化量Δωij。
在修正网络中各种神经元的权值后,网络重新按照正向传播方式得到输出。实际输出值与期望值之间的误差可以导致新一轮的权值修正。正向传播与反向传播过程循环往复,直到网络收敛,得到网络收敛后的互联权值和阈值。
(二)BP神经网络计算步骤(1)初始化连接权值和阈值为一小的随机值,即W(0)=任意值,θ(0)=任意值。(2)输入一个样本X。
(3)正向传播,计算实际输出,即根据输入样本值、互联权值和阈值,计算样本的实际输出。
其中输入层的输出等于输入样本值,隐含层和输出层的输入为地球物理勘探概论输出为地球物理勘探概论式中:f为阈值逻辑函数,一般取Sigmoid函数,即地球物理勘探概论式中:θj表示阈值或偏置;θ0的作用是调节Sigmoid函数的形状。
较小的θ0将使Sigmoid函数逼近于阈值逻辑单元的特征,较大的θ0将导致Sigmoid函数变平缓,一般取θ0=1。
(4)计算实际输出与理想输出的误差地球物理勘探概论式中:tpk为理想输出;Opk为实际输出;p为样本号;k为输出节点号。
(5)误差反向传播,修改权值地球物理勘探概论式中:地球物理勘探概论地球物理勘探概论(6)判断收敛。若误差小于给定值,则结束,否则转向步骤(2)。
(三)塔北雅克拉地区BP神经网络预测实例以塔北雅克拉地区S4井为已知样本,取氧化还原电位,放射性元素Rn、Th、Tc、U、K和地震反射 构造面等7个特征为识别的依据。
构造面反映了局部构造的起伏变化,其局部隆起部位应是油气运移和富集的有利部位,它可以作为判断含油气性的诸种因素之一。
在该地区投入了高精度重磁、土壤微磁、频谱激电等多种方法,一些参数未入选为判别的特征参数,是因为某些参数是相关的。
在使用神经网络方法判别之前,还采用K-L变换(Karhaem-Loeve)来分析和提取特征。S4井位于测区西南部5线25点,是区内唯一已知井。
该井在5390.6m的侏罗系地层获得40.6m厚的油气层,在5482m深的震旦系地层中获58m厚的油气层。
取S4井周围9个点,即4~6线的23~25 点作为已知油气的训练样本;由于区内没有未见油的钻井,只好根据地质资料分析,选取14~16线的55~57点作为非油气的训练样本。
BP网络学习迭代17174次,总误差为0.0001,学习效果相当满意。以学习后的网络进行识别,得出结果如图6-2-4所示。
图6-2-4 塔北雅克拉地区BP神经网络聚类结果(据刘天佑等,1997)由图6-2-4可见,由预测值大于0.9可得5个大封闭圈远景区,其中测区南部①号远景区对应着已知油井S4井;②、③号油气远景区位于地震勘探所查明的托库1、2号构造,该两个构造位于沙雅隆起的东段,其西段即为1984年钻遇高产油气流的Sch2井,应是含油气性好的远景区;④、⑤号远景区位于大涝坝构造,是yh油田的组成部分。
人工神经网络(artificialneuralnetwork,ANN)指由大量与自然神经系统相类似的神经元联结而成的网络,是用工程技术手段模拟生物网络结构特征和功能特征的一类人工系统。
神经网络不但具有处理数值数据的一般计算能力,而且还具有处理知识的思维、学习、记忆能力,它采用类似于“黑箱”的方法,通过学习和记忆,找出输入、输出变量之间的非线性关系(映射),在执行问题和求解时,将所获取的数据输入到已经训练好的网络,依据网络学到的知识进行网络推理,得出合理的答案与结果。
岩土工程中的许多问题是非线性问题,变量之间的关系十分复杂,很难用确切的数学、力学模型来描述。
工程现场实测数据的代表性与测点的位置、范围和手段有关,有时很难满足传统统计方法所要求的统计条件和规律,加之岩土工程信息的复杂性和不确定性,因而运用神经网络方法实现岩土工程问题的求解是合适的。
BP神经网络模型是误差反向传播(BackPagation)网络模型的简称。它由输入层、隐含层和输出层组成。
网络的学习过程就是对网络各层节点间连接权逐步修改的过程,这一过程由两部分组成:正向传播和反向传播。
正向传播是输入模式从输入层经隐含层处理传向输出层;反向传播是均方误差信息从输出层向输入层传播,将误差信号沿原来的连接通路返回,通过修改各层神经元的权值,使得误差信号最小。
BP神经网络模型在建立及应用过程中,主要存在的不足和建议有以下四个方面:(1)对于神经网络,数据愈多,网络的训练效果愈佳,也更能反映实际。
但在实际操作中,由于条件的限制很难选取大量的样本值进行训练,样本数量偏少。(2)BP网络模型其计算速度较慢、无法表达预测量与其相关参数之间亲疏关系。
(3)以定量数据为基础建立模型,若能收集到充分资料,以定性指标(如基坑降水方式、基坑支护模式、施工工况等)和一些易获取的定量指标作为输入层,以评价等级作为输出层,这样建立的BP网络模型将更准确全面。
(4)BP人工神经网络系统具有非线性、智能的特点。
较好地考虑了定性描述和定量计算、精确逻辑分析和非确定性推理等方面,但由于样本不同,影响要素的权重不同,以及在根据先验知识和前人的经验总结对定性参数进行量化处理,必然会影响评价的客观性和准确性。
因此,在实际评价中只有根据不同的基坑施工工况、不同的周边环境条件,应不同用户的需求,选择不同的分析指标,才能满足复杂工况条件下地质环境评价的要求,取得较好的应用效果。
BP神经网络预测的步骤:1、输入和输出数据。2、创建网络。fitnet()3、划分训练,测试和验证数据的比例。
net.divideParam.trainRatio; net.divideParam.valRatio;net.divideParam.testRatio4、训练网络。
train()5、根据图表判断拟合好坏。ploterrcorr();parcorr();plotresponse()6、预测往后数据。net()7、画出预测图。
plot()执行下列命令BP_prediction得到结果:[ 2016, 14749.呵呵6798210144042969][ 2017, 15092.847215188667178153991699219][ 2018, 15382.150005970150232315063476562][ 2019, 15398.85769711434841156005859375][ 2020, 15491.935150090605020523071289062]。