神经网络算法原理
4.2.1概述人工神经网络的研究与计算机的研究几乎是同步发展的。
1943年心理学家McCulloch和数学家Pitts合作提出了形式神经元的数学模型,20世纪50年代末,Rosenblatt提出了感知器模型,1982年,Hopfiled引入了能量函数的概念提出了神经网络的一种数学模型,1986年,Rumelhart及LeCun等学者提出了多层感知器的反向传播算法等。
神经网络技术在众多研究者的努力下,理论上日趋完善,算法种类不断增加。目前,有关神经网络的理论研究成果很多,出版了不少有关基础理论的著作,并且现在仍是全球非线性科学研究的热点之一。
神经网络是一种通过模拟人的大脑神经结构去实现人脑智能活动功能的信息处理系统,它具有人脑的基本功能,但又不是人脑的真实写照。它是人脑的一种抽象、简化和模拟模型,故称之为人工神经网络(边肇祺,2000)。
人工神经元是神经网络的节点,是神经网络的最重要组成部分之一。目前,有关神经元的模型种类繁多,最常用最简单的模型是由阈值函数、Sigmoid函数构成的模型(图4-3)。
图4-3人工神经元与两种常见的输出函数神经网络学习及识别方法最初是借鉴人脑神经元的学习识别过程提出的。
输入参数好比神经元接收信号,通过一定的权值(相当于刺激神经兴奋的强度)与神经元相连,这一过程有些类似于多元线性回归,但模拟的非线性特征是通过下一步骤体现的,即通过设定一阈值(神经元兴奋极限)来确定神经元的兴奋模式,经输出运算得到输出结果。
经过大量样本进入网络系统学习训练之后,连接输入信号与神经元之间的权值达到稳定并可最大限度地符合已经经过训练的学习样本。
在被确认网络结构的合理性和学习效果的高精度之后,将待预测样本输入参数代入网络,达到参数预测的目的。
4.2.2反向传播算法(BP法)发展到目前为止,神经网络模型不下十几种,如前馈神经网络、感知器、Hopfiled网络、径向基函数网络、反向传播算法(BP法)等,但在储层参数反演方面,目前比较成熟比较流行的网络类型是误差反向传播神经网络(BP-ANN)。
BP网络是在前馈神经网络的基础上发展起来的,始终有一个输入层(它包含的节点对应于每个输入变量)和一个输出层(它包含的节点对应于每个输出值),以及至少有一个具有任意节点数的隐含层(又称中间层)。
在BP-ANN中,相邻层的节点通过一个任意初始权值全部相连,但同一层内各节点间互不相连。
对于BP-ANN,隐含层和输出层节点的基函数必须是连续的、单调递增的,当输入趋于正或负无穷大时,它应该接近于某一固定值,也就是说,基函数为“S”型(Kosko,1992)。
BP-ANN的训练是一个监督学习过程,涉及两个数据集,即训练数据集和监督数据集。
给网络的输入层提供一组输入信息,使其通过网络而在输出层上产生逼近期望输出的过程,称之为网络的学习,或称对网络进行训练,实现这一步骤的方法则称为学习算法。
BP网络的学习过程包括两个阶段:第一个阶段是正向过程,将输入变量通过输入层经隐层逐层计算各单元的输出值;第二阶段是反向传播过程,由输出误差逐层向前算出隐层各单元的误差,并用此误差修正前层权值。
误差信息通过网络反向传播,遵循误差逐步降低的原则来调整权值,直到达到满意的输出为止。
网络经过学习以后,一组合适的、稳定的权值连接权被固定下来,将待预测样本作为输入层参数,网络经过向前传播便可以得到输出结果,这就是网络的预测。
反向传播算法主要步骤如下:首先选定权系数初始值,然后重复下述过程直至收敛(对各样本依次计算)。
(1)从前向后各层计算各单元Oj储层特征研究与预测(2)对输出层计算δj储层特征研究与预测(3)从后向前计算各隐层δj储层特征研究与预测(4)计算并保存各权值修正量储层特征研究与预测(5)修正权值储层特征研究与预测以上算法是对每个样本作权值修正,也可以对各个样本计算δj后求和,按总误差修正权值。
谷歌人工智能写作项目:爱发猫
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油田的组成部分。
神经网络算法的人工神经网络
人工神经网络(ArtificialNeuralNetworks,ANN)系统是20世纪40年代后出现的。
它是由众多的神经元可调的连接权值连接而成,具有大规模并行处理、分布式信息存储、良好的自组织自学习能力等特点。
BP(BackPropagation)算法又称为误差反向传播算法,是人工神经网络中的一种监督式的学习算法。
BP神经网络算法在理论上可以逼近任意函数,基本的结构由非线性变化单元组成,具有很强的非线性映射能力。
而且网络的中间层数、各层的处理单元数及网络的学习系数等参数可根据具体情况设定,灵活性很大,在优化、信号处理