当然可以,这就是输入模式和输出模式的制定,可以自由设置,多输入多输出。但要注意如果预测多组,输入必须要提供足够的信息拥有足够多维。
BP(BackPropagation)神经网络是86年由Rumelhart和McCelland为首的科学家小组提出,是一种按误差逆传播算法训练的多层前馈网络,是目前应用最广泛的神经网络模型之一。
BP网络能学习和存贮大量的输入-输出模式映射关系,而无需事前揭示描述这种映射关系的数学方程。它的学习规则是使用最速下降法,通过反向传播来不断调整网络的权值和阈值,使网络的误差平方和最小。
BP神经网络模型拓扑结构包括输入层(input)、隐层(hiddenlayer)和输出层(outputlayer)。
首先要知道你建立的这个模型的内部逻辑关系A8U神经网络。。1,确定隐层数,画出简要模型图。2,确定采用什么样的神经网络来建立模型3.通过测试数据来训练模型。。
4.根据测试训练得到的数据和实际数据进行比对,或者算出误差。从而修改隐层中的权值和阀值。反复重复3-4.。最后得到一个最优的模型。大致是这样。。。楼主说的太概略。。。无法回答清楚请抱歉。
(一)方法原理人工神经网络是由大量的类似人脑神经元的简单处理单元广泛地相互连接而成的复杂的网络系统。理论和实践表明,在信息处理方面,神经网络方法比传统模式识别方法更具有优势。
人工神经元是神经网络的基本处理单元,其接收的信息为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油田的组成部分。
BP(BackPropagation)网络是1986年由Rumelhart和McCelland为首的科学家小组提出,是一种按误差逆传播算法训练的多层前馈网络,是目前应用最广泛的神经网络模型之一。
BP网络能学习和存贮大量的输入-输出模式映射关系,而无需事前揭示描述这种映射关系的数学方程。它的学习规则是使用最速下降法,通过反向传播来不断调整网络的权值和阈值,使网络的误差平方和最小。
BP神经网络模型拓扑结构包括输入层(input)、隐层(hidelayer)和输出层(outputlayer)。人工神经网络就是模拟人思维的第二种方式。
这是一个非线性动力学系统,其特色在于信息的分布式存储和并行协同处理。虽然单个神经元的结构极其简单,功能有限,但大量神经元构成的网络系统所能实现的行为却是极其丰富多彩的。
人工神经网络首先要以一定的学习准则进行学习,然后才能工作。现以人工神经网络对手写“A”、“B”两个字母的识别为例进行说明,规定当“A”输入网络时,应该输出“1”,而当输入为“B”时,输出为“0”。
所以网络学习的准则应该是:如果网络作出错误的的判决,则通过网络的学习,应使得网络减少下次犯同样错误的可能性。
首先,给网络的各连接权值赋予(0,1)区间内的随机值,将“A”所对应的图象模式输入给网络,网络将输入模式加权求和、与门限比较、再进行非线性运算,得到网络的输出。
在此情况下,网络输出为“1”和“0”的概率各为50%,也就是说是完全随机的。这时如果输出为“1”(结果正确),则使连接权值增大,以便使网络再次遇到“A”模式输入时,仍然能作出正确的判断。
如果输出为“0”(即结果错误),则把网络连接权值朝着减小综合输入加权值的方向调整,其目的在于使网络下次再遇到“A”模式输入时,减小犯同样错误的可能性。
如此操作调整,当给网络轮番输入若干个手写字母“A”、“B”后,经过网络按以上学习方法进行若干次学习后,网络判断的正确率将大大提高。
这说明网络对这两个模式的学习已经获得了成功,它已将这两个模式分布地记忆在网络的各个连接权值上。当网络再次遇到其中任何一个模式时,能够作出迅速、准确的判断和识别。
一般说来,网络中所含的神经元个数越多,则它能记忆、识别的模式也就越多。如图所示拓扑结构的单隐层前馈网络,一般称为三层前馈网或三层感知器,即:输入层、中间层(也称隐层)和输出层。
它的特点是:各层神经元仅与相邻层神经元之间相互全连接,同层内神经元之间无连接,各层神经元之间无反馈连接,构成具有层次结构的前馈型神经网络系统。
单计算层前馈神经网络只能求解线性可分问题,能够求解非线性问题的网络必须是具有隐层的多层神经网络。神经网络的研究内容相当广泛,反映了多学科交叉技术领域的特点。
主要的研究工作集中在以下几个方面:(1)生物原型研究。从生理学、心理学、解剖学、脑科学、病理学等生物科学方面研究神经细胞、神经网络、神经系统的生物原型结构及其功能机理。(2)建立理论模型。
根据生物原型的研究,建立神经元、神经网络的理论模型。其中包括概念模型、知识模型、物理化学模型、数学模型等。(3)网络模型与算法研究。
在理论模型研究的基础上构作具体的神经网络模型,以实现计算机模拟或准备制作硬件,包括网络学习算法的研究。这方面的工作也称为技术模型研究。(4)人工神经网络应用系统。
在网络模型与算法研究的基础上,利用人工神经网络组成实际的应用系统,例如,完成某种信号处理或模式识别的功能、构作专家系统、制成机器人等等。
纵观当代新兴科学技术的发展历史,人类在征服宇宙空间、基本粒子,生命起源等科学技术领域的进程中历经了崎岖不平的道路。我们也会看到,探索人脑功能和神经网络的研究将伴随着重重困难的克服而日新月异。
神经网络可以用作分类、聚类、预测等。神经网络需要有一定量的历史数据,通过历史数据的训练,网络可以学习到数据中隐含的知识。
在你的问题中,首先要找到某些问题的一些特征,以及对应的评价数据,用这些数据来训练神经网络。虽然BP网络得到了广泛的应用,但自身也存在一些缺陷和不足,主要包括以下几个方面的问题。
首先,由于学习速率是固定的,因此网络的收敛速度慢,需要较长的训练时间。
对于一些复杂问题,BP算法需要的训练时间可能非常长,这主要是由于学习速率太小造成的,可采用变化的学习速率或自适应的学习速率加以改进。
其次,BP算法可以使权值收敛到某个值,但并不保证其为误差平面的全局最小值,这是因为采用梯度下降法可能产生一个局部最小值。对于这个问题,可以采用附加动量法来解决。
再次,网络隐含层的层数和单元数的选择尚无理论上的指导,一般是根据经验或者通过反复实验确定。因此,网络往往存在很大的冗余性,在一定程度上也增加了网络学习的负担。最后,网络的学习和记忆具有不稳定性。
也就是说,如果增加了学习样本,训练好的网络就需要从头开始训练,对于以前的权值和阈值是没有记忆的。但是可以将预测、分类或聚类做的比较好的权值保存。
人工神经网络(artificialneuralnetwork,ANN)指由大量与自然神经系统相类似的神经元联结而成的网络,是用工程技术手段模拟生物网络结构特征和功能特征的一类人工系统。
神经网络不但具有处理数值数据的一般计算能力,而且还具有处理知识的思维、学习、记忆能力,它采用类似于“黑箱”的方法,通过学习和记忆,找出输入、输出变量之间的非线性关系(映射),在执行问题和求解时,将所获取的数据输入到已经训练好的网络,依据网络学到的知识进行网络推理,得出合理的答案与结果。
岩土工程中的许多问题是非线性问题,变量之间的关系十分复杂,很难用确切的数学、力学模型来描述。
工程现场实测数据的代表性与测点的位置、范围和手段有关,有时很难满足传统统计方法所要求的统计条件和规律,加之岩土工程信息的复杂性和不确定性,因而运用神经网络方法实现岩土工程问题的求解是合适的。
BP神经网络模型是误差反向传播(BackPagation)网络模型的简称。它由输入层、隐含层和输出层组成。
网络的学习过程就是对网络各层节点间连接权逐步修改的过程,这一过程由两部分组成:正向传播和反向传播。
正向传播是输入模式从输入层经隐含层处理传向输出层;反向传播是均方误差信息从输出层向输入层传播,将误差信号沿原来的连接通路返回,通过修改各层神经元的权值,使得误差信号最小。
BP神经网络模型在建立及应用过程中,主要存在的不足和建议有以下四个方面:(1)对于神经网络,数据愈多,网络的训练效果愈佳,也更能反映实际。
但在实际操作中,由于条件的限制很难选取大量的样本值进行训练,样本数量偏少。(2)BP网络模型其计算速度较慢、无法表达预测量与其相关参数之间亲疏关系。
(3)以定量数据为基础建立模型,若能收集到充分资料,以定性指标(如基坑降水方式、基坑支护模式、施工工况等)和一些易获取的定量指标作为输入层,以评价等级作为输出层,这样建立的BP网络模型将更准确全面。
(4)BP人工神经网络系统具有非线性、智能的特点。
较好地考虑了定性描述和定量计算、精确逻辑分析和非确定性推理等方面,但由于样本不同,影响要素的权重不同,以及在根据先验知识和前人的经验总结对定性参数进行量化处理,必然会影响评价的客观性和准确性。
因此,在实际评价中只有根据不同的基坑施工工况、不同的周边环境条件,应不同用户的需求,选择不同的分析指标,才能满足复杂工况条件下地质环境评价的要求,取得较好的应用效果。
我们现在来分析下这些话:“是一种按误差逆传播算法训练的多层前馈网络”BP是后向传播的英文缩写,那么传播对象是什么?传播的目的是什么?传播的方式是后向,可这又是什么意思呢。
传播的对象是误差,传播的目的是得到所有层的估计误差,后向是说由后层误差推导前层误差:即BP的思想可以总结为利用输出后的误差来估计输出层的直接前导层的误差,再用这个误差估计更前一层的误差,如此一层一层的反传下去,就获得了所有其他各层的误差估计。
“BP神经网络模型拓扑结构包括输入层(input)、隐层(hidelayer)和输出层(outputlayer)”我们来看一个最简单的三层BP:
地面沉降是多种自然和人为因素共同作用的结果。
各种要素发生作用的时空序列、影响强度和方向以及它们之间的关系处于不断变化之中,同时各因素的变化及其影响并不是单方面的,各变量之间相互形成制约关系,这使得地面沉降过程极具复杂性。
因此,要求预测模型能以在现有资料、信息基础,准确反映研究区的自然背景条件、地下水开采行为与地面沉降过程之间的复杂联系,并能识别和适应不同影响因素随时间发生的改变。
BP神经网络作为一个非线性系统,可用于逼近非线性映射关系,也可用于逼近一个极为复杂的函数关系,是解释和模拟地面沉降等高度复杂的非线性动力学系统问题的一种较好的方法。
8.4.1.1训练样本的确定根据第4章的分析,影响研究区域地面沉降过程的变量包含着复杂的自然和人为因素,超采深层地下水是造成研究区1986年以后地面沉降的主要原因,深层地下水的开采量和沉降监测点附近的各含水层组水位均与地面沉降有着很好的相关性。
本区第四系浅层地下水系统(第Ⅰ含水层组)除河漫滩地段,一般为TDS都高于2g/L的咸水,因此工农业用途较少,水位一般保持天然状态,在本次模型研究中不予考虑。
由于区内各地面沉降监测点的地面高程每年测量一次,为了保持与地面沉降数据的一致性,使神经网络模型能准确识别地下水开采与地面沉降之间的关系,所有数据均整理成年平均的形式。
本章选择了控沉点处深层地下水系统的年均水位和区域地下水开采量作为模型的输入变量,考虑到水位和开采量的变化与沉降变形并不同步,有明显的滞后性存在,本章将前一年的开采量和年均水位也作为输入,故模型的输入变量为四个。
以收集到的区内每个地面沉降监测点的年沉降量作为模型的输出变量,通过选择适合的隐含层数和隐层神经单元数构建BP模型,对地面沉降的趋势进行预测。
本次收集到的地面沉降监测点处并未有常观孔的水位数据,如果根据历年实测等水位线推算,会产生很大的误差,导致预测结果的不稳定性。
基于已经建立好的Modflow数值模型,利用ProcessingModflow软件里的水井子程序包,在控沉点处设置虚拟的水位观测井,通过软件模拟出的不同时期的水位,作为地面沉降神经网络模型的输入层,从而避免了以往的将各含水层组平均水位作为模型输入所带来的误差[55]。
考虑到深层地下水系统各含水层组的水力联系较为密切,本次在每个地面沉降监测点处只设置一个水位观测井,来模拟深层地下水系统的水位。
水井滤水管的起始位置与该点含水层的位置相对应,即滤水管的长度即为含水层的厚度。观测井在模型中的位置如8.31所示,绿色的点即为虚拟水位观测井。
从图中可以看出6个沉降点在研究区内分布均匀,处于不同的沉降区域,有一定的代表性,通过对这6个点的地面沉降进行预测,可以反映出不同区域的沉降趋势。数值模型模拟得到的各沉降点年均水位如图8.32所示。
图8.31控沉点虚拟水井在Modflow数值模型中的分布示意图图8.32模拟得到的各沉降点处虚拟水井年均水位动态8.4.1.2样本数据的预处理由于BP网络的输入层物理量及数值相差甚远(不属于一个数量级),为了加快网络收敛的速度,在训练之前须将各输入物理量进行预处理。
数据的预处理方法主要有标准化法、重新定标法、变换法和比例放缩法等等。
本章所选用的是一种最常用的比例压缩法,公式为[56]变环境条件下的水资源保护与可持续利用研究式中:X为原始数据;Xmax、Xmin为原始数据的最大值和最小值;T为变换后的数据,也称之为目标数据;Tmax、Tmin为目标数据的最大值和最小值。
由于Sigmoid函数在值域[0,0.1]和[0.9,1.0]区域内曲线变化极为平坦,因此合适的数据处理是将各输入物理量归至[0.1,0.9]之间。
本章用式(8.7)将每个样本输入层的4个物理量进行归一化处理变环境条件下的水资源保护与可持续利用研究处理后的数据见表8.14。
表8.14BP神经网络模型数据归一化表续表8.4.1.3网络结构的确定BP神经网络的建立,其重点在于网络结构的设计,只要隐层中有足够多的神经元,多层前向网络可以用来逼近几乎任何一个函数。
一般地,网络结构(隐层数和隐层神经元数)和参数(权值和偏置值)共同决定着神经网络所能实现的函数的复杂程度的上限。结构简单的网络所能实现的函数类型是非常有限的,参数过多的网络可能会对数据拟合过度。
本章将输入样本的个数定为4个,输出样本为1个。
但是对于隐含层数及隐含层所含神经元个数的选择,到目前为止还没有明确的方法可以计算出实际需要多少层或多少神经元就可以满足预测精度的要求,在选择时通常是采用试算的方法[56,57]。
为了保证模型的预测精度和范化能力,根据收集到的资料的连续性,本次研究利用1988~2002年15组地面沉降历史观测数据和对应的当年及前一年的开采量、年均水位组织训练,以2003年和2004年的实测地面沉降数据校验模型的预测能力,尝试多种试验性网络结构,其他模型参数的选择采取保守方式,以牺牲训练速度换取模型稳定性。
以2003年和2004年的平均相对误差均小于20%作为筛选标准,最终选择三层BP网络作为模型结构,隐层神经元的个数设置为3。网络结构如图8.33所示,参数见表8.15。
表8.15BP网络模型参数一览表图8.33神经网络模型结构图8.4.1.4网络的训练与预测采用图8.33确定的网络结构对数据进行训练,各个沉降点的训练过程和拟合效果如图8.34、图8.35所示。
从图8.35可以看出,训练后的BP网络能很好地逼近给定的目标函数。说明该模型的泛化能力较好,模拟的结果比较可靠。
通过该模型模拟了6个沉降点在2003和2004年的沉降量(表8.16),可以看出2003年和2004年模拟值和实际拟合较好,两年的平均相对误差均小于20%,说明BP神经网络可以用来预测地面沉降的趋势。
表8.16监测点年沉降量模拟误差表图8.34各沉降点训练过程图8.4.1.5模型物理意义探讨虽然现今的BP神经网络还是一个黑箱模型,其参数没有水文物理意义[58]。
但从结构上分析,本章认为地面沉降与ANN是同构的。
对于每个控沉点来说,深层地下水系统的开采量和含水层组的水位变化,都会引起地层应力的响应,从而导致整体的地面标高发生变化,这一过程可以与BP神经网络结构进行类比。
其中,深层地下水系统的3个含水层组相当于隐含层中的3个神经元,各含水层组对地面沉降的奉献值相当于隐含层中人工神经元的阈值,整体上来说,本次用来模拟地面沉降的BP神经网络结构已经灰箱化(表8.17)。
图8.35各监测点年沉降量神经网络模型拟合图表8.17BP神经网络构件物理意义一览表。
。
clearall;closeall;clc;%p=[205623952600229816341600183714781900239526002298163416001873147819001500260022981634160018731478190015002046];t=[187314781900150020461556];p=[205623952600229816341600];%--归一化输入输出--映射到[0,1]--%pmax=max(p);pmin=min(p);P=(p-pmin)./(pmax-pmin);tmax=max(t);tmin=min(t);T=(t-tmin)./(tmax-tmin);net=newff(P,T,5,{'tansig','purelin'},'traingdx');%--设置训练参数--%=50;=0.05;net.trainParam.epochs=1000;=1e-3;net.divideFcn='';[net,tr]=train(net,P,T);A=sim(net,P);a=A.*(tmax-tmin)+tmin;x=7:12;figureplot(x,t,'+');holdon;plot(x,a,'or');holdoff;xlabel('month');ylabel('**')legend('实际','预测')。