用样本去训练一个BP网络,然后用新的样本作为输入,再通过这个已经训练好的BP网络,得到的数据就是仿真的结果,这就是BP网络仿真。
我们训练一个BP网络就好像是在训练一个神经系统,然后用这个已经具备分析能力的神经系统去分析事情,这就是为什么要仿真,说到底就是为了用。
仿真的作用你可以从BP神经网络的用途上去看,例如很经典的可以用来做分类器等。你用不同类别的样本(输入+对应的期望输出)作为训练,然后给出一个新的输入,BP网就能给你这个所属的类别。
AI爱发猫 www.aifamao.com。
BP算法的基本思想是:学习过程由信号正向传播与误差的反向回传两个部分组成;正向传播时,输入样本从输入层传入,经各隐层依次逐层处理,传向输出层,若输出层输出与期望不符,则将误差作为调整信号逐层反向回传,对神经元之间的连接权矩阵做出处理,使误差减小。
经反复学习,最终使误差减小到可接受的范围。具体步骤如下:1、从训练集中取出某一样本,把信息输入网络中。2、通过各节点间的连接情况正向逐层处理后,得到神经网络的实际输出。
3、计算网络实际输出与期望输出的误差。4、将误差逐层反向回传至之前各层,并按一定原则将误差信号加载到连接权值上,使整个神经网络的连接权值向误差减小的方向转化。
5、対训练集中每一个输入—输出样本对重复以上步骤,直到整个训练样本集的误差减小到符合要求为止。
人工神经网络(artificialneuralnetwork,ANN)指由大量与自然神经系统相类似的神经元联结而成的网络,是用工程技术手段模拟生物网络结构特征和功能特征的一类人工系统。
神经网络不但具有处理数值数据的一般计算能力,而且还具有处理知识的思维、学习、记忆能力,它采用类似于“黑箱”的方法,通过学习和记忆,找出输入、输出变量之间的非线性关系(映射),在执行问题和求解时,将所获取的数据输入到已经训练好的网络,依据网络学到的知识进行网络推理,得出合理的答案与结果。
岩土工程中的许多问题是非线性问题,变量之间的关系十分复杂,很难用确切的数学、力学模型来描述。
工程现场实测数据的代表性与测点的位置、范围和手段有关,有时很难满足传统统计方法所要求的统计条件和规律,加之岩土工程信息的复杂性和不确定性,因而运用神经网络方法实现岩土工程问题的求解是合适的。
BP神经网络模型是误差反向传播(BackPagation)网络模型的简称。它由输入层、隐含层和输出层组成。
网络的学习过程就是对网络各层节点间连接权逐步修改的过程,这一过程由两部分组成:正向传播和反向传播。
正向传播是输入模式从输入层经隐含层处理传向输出层;反向传播是均方误差信息从输出层向输入层传播,将误差信号沿原来的连接通路返回,通过修改各层神经元的权值,使得误差信号最小。
BP神经网络模型在建立及应用过程中,主要存在的不足和建议有以下四个方面:(1)对于神经网络,数据愈多,网络的训练效果愈佳,也更能反映实际。
但在实际操作中,由于条件的限制很难选取大量的样本值进行训练,样本数量偏少。(2)BP网络模型其计算速度较慢、无法表达预测量与其相关参数之间亲疏关系。
(3)以定量数据为基础建立模型,若能收集到充分资料,以定性指标(如基坑降水方式、基坑支护模式、施工工况等)和一些易获取的定量指标作为输入层,以评价等级作为输出层,这样建立的BP网络模型将更准确全面。
(4)BP人工神经网络系统具有非线性、智能的特点。
较好地考虑了定性描述和定量计算、精确逻辑分析和非确定性推理等方面,但由于样本不同,影响要素的权重不同,以及在根据先验知识和前人的经验总结对定性参数进行量化处理,必然会影响评价的客观性和准确性。
因此,在实际评价中只有根据不同的基坑施工工况、不同的周边环境条件,应不同用户的需求,选择不同的分析指标,才能满足复杂工况条件下地质环境评价的要求,取得较好的应用效果。
我们最常用的神经网络就是BP网络,也叫多层前馈网络。BP是backpropagation的所写,是反向传播的意思。
我以前比较糊涂,因为一直不理解为啥一会叫前馈网络,一会叫BP(反向传播)网络,不是矛盾吗?
其实是这样的,前馈是从网络结构上来说的,是前一层神经元单向馈入后一层神经元,而后面的神经元没有反馈到之前的神经元;而BP网络是从网络的训练方法上来说的,是指该网络的训练算法是反向传播算法,即神经元的链接权重的训练是从最后一层(输出层)开始,然后反向依次更新前一层的链接权重。
因此二者并不矛盾,只是我没有理解其精髓而已。
随便提一下BP网络的强大威力:1)任何的布尔函数都可以由两层单元的网络准确表示,但是所需的隐藏层神经元的数量随网络输入数量呈指数级增长;2)任意连续函数都可由一个两层的网络以任意精度逼近。
这里的两层网络是指隐藏层使用sigmoid单元、输出层使用非阈值的线性单元;3)任意函数都可由一个三层的网络以任意精度逼近。其两层隐藏层使用sigmoid单元、输出层使用非阈值的线性单元。
BP就是后传神经网络算法,可以用来预测股票价格走势(要求已知过去一段时间内的股票最高、最低、收盘、开盘价等信息)、当然也可以用来预测科学工程上的问题。
属于高等数学的范畴,很多看似随机或没有明显规律的数据,都可以尝试使用BP算法推导出未来可能出现的数据。一般使用MATLAB软件编写此类算法。
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算法可以使权值收敛到某个值,但并不保证其为误差平面的全局最小值,这是因为采用梯度下降法可能产生一个局部最小值。对于这个问题,可以采用附加动量法来解决。
再次,网络隐含层的层数和单元数的选择尚无理论上的指导,一般是根据经验或者通过反复实验确定。因此,网络往往存在很大的冗余性,在一定程度上也增加了网络学习的负担。最后,网络的学习和记忆具有不稳定性。
也就是说,如果增加了学习样本,训练好的网络就需要从头开始训练,对于以前的权值和阈值是没有记忆的。但是可以将预测、分类或聚类做的比较好的权值保存。
人工神经网络有很多模型,但是日前应用最广、基本思想最直观、最容易被理解的是多层前馈神经网络及误差逆传播学习算法(ErrorBack-Prooaeation),简称为BP网络。
在1986年以Rumelhart和McCelland为首的科学家出版的《ParallelDistributedProcessing》一书中,完整地提出了误差逆传播学习算法,并被广泛接受。
多层感知网络是一种具有三层或三层以上的阶层型神经网络。
典型的多层感知网络是三层、前馈的阶层网络(图4.1),即:输入层、隐含层(也称中间层)、输出层,具体如下:图4.1三层BP网络结构(1)输入层输入层是网络与外部交互的接口。
一般输入层只是输入矢量的存储层,它并不对输入矢量作任何加工和处理。输入层的神经元数目可以根据需要求解的问题和数据表示的方式来确定。
一般而言,如果输入矢量为图像,则输入层的神经元数目可以为图像的像素数,也可以是经过处理后的图像特征数。
(2)隐含层1989年,RobertHechtNielsno证明了对于任何在闭区间内的一个连续函数都可以用一个隐层的BP网络来逼近,因而一个三层的BP网络可以完成任意的n维到m维的映射。
增加隐含层数虽然可以更进一步的降低误差、提高精度,但是也使网络复杂化,从而增加了网络权值的训练时间。
误差精度的提高也可以通过增加隐含层中的神经元数目来实现,其训练效果也比增加隐含层数更容易观察和调整,所以一般情况应优先考虑增加隐含层的神经元个数,再根据具体情况选择合适的隐含层数。
(3)输出层输出层输出网络训练的结果矢量,输出矢量的维数应根据具体的应用要求来设计,在设计时,应尽可能减少系统的规模,使系统的复杂性减少。
如果网络用作识别器,则识别的类别神经元接近1,而其它神经元输出接近0。
以上三层网络的相邻层之间的各神经元实现全连接,即下一层的每一个神经元与上一层的每个神经元都实现全连接,而且每层各神经元之间无连接,连接强度构成网络的权值矩阵W。
BP网络是以一种有教师示教的方式进行学习的。首先由教师对每一种输入模式设定一个期望输出值。然后对网络输入实际的学习记忆模式,并由输入层经中间层向输出层传播(称为“模式顺传播”)。
实际输出与期望输出的差即是误差。按照误差平方最小这一规则,由输出层往中间层逐层修正连接权值,此过程称为“误差逆传播”(陈正昌,2005)。
所以误差逆传播神经网络也简称BP(BackPropagation)网。随着“模式顺传播”和“误差逆传播”过程的交替反复进行。
网络的实际输出逐渐向各自所对应的期望输出逼近,网络对输入模式的响应的正确率也不断上升。通过此学习过程,确定下各层间的连接权值后。
典型三层BP神经网络学习及程序运行过程如下(标志渊,2006):(1)首先,对各符号的形式及意义进行说明:网络输入向量Pk=(a1,a2,...,an);网络目标向量Tk=(y1,y2,...,yn);中间层单元输入向量Sk=(s1,s2,...,sp),输出向量Bk=(b1,b2,...,bp);输出层单元输入向量Lk=(l1,l2,...,lq),输出向量Ck=(c1,c2,...,cq);输入层至中间层的连接权wij,i=1,2,...,n,j=1,2,...p;中间层至输出层的连接权vjt,j=1,2,...,p,t=1,2,...,p;中间层各单元的输出阈值θj,j=1,2,...,p;输出层各单元的输出阈值γj,j=1,2,...,p;参数k=1,2,...,m。
(2)初始化。给每个连接权值wij、vjt、阈值θj与γj赋予区间(-1,1)内的随机值。(3)随机选取一组输入和目标样本提供给网络。
(4)用输入样本、连接权wij和阈值θj计算中间层各单元的输入sj,然后用sj通过传递函数计算中间层各单元的输出bj。
基坑降水工程的环境效应与评价方法bj=f(sj)j=1,2,...,p(4.5)(5)利用中间层的输出bj、连接权vjt和阈值γt计算输出层各单元的输出Lt,然后通过传递函数计算输出层各单元的响应Ct。
基坑降水工程的环境效应与评价方法Ct=f(Lt)t=1,2,...,q(4.7)(6)利用网络目标向量,网络的实际输出Ct,计算输出层的各单元一般化误差。
基坑降水工程的环境效应与评价方法(7)利用连接权vjt、输出层的一般化误差dt和中间层的输出bj计算中间层各单元的一般化误差。
基坑降水工程的环境效应与评价方法(8)利用输出层各单元的一般化误差与中间层各单元的输出bj来修正连接权vjt和阈值γt。
基坑降水工程的环境效应与评价方法(9)利用中间层各单元的一般化误差,输入层各单元的输入Pk=(a1,a2,...,an)来修正连接权wij和阈值θj。
基坑降水工程的环境效应与评价方法(10)随机选取下一个学习样本向量提供给网络,返回到步骤(3),直到m个训练样本训练完毕。
(11)重新从m个学习样本中随机选取一组输入和目标样本,返回步骤(3),直到网路全局误差E小于预先设定的一个极小值,即网络收敛。如果学习次数大于预先设定的值,网络就无法收敛。(12)学习结束。
可以看出,在以上学习步骤中,(8)、(9)步为网络误差的“逆传播过程”,(10)、(11)步则用于完成训练和收敛过程。通常,经过训练的网络还应该进行性能测试。
测试的方法就是选择测试样本向量,将其提供给网络,检验网络对其分类的正确性。测试样本向量中应该包含今后网络应用过程中可能遇到的主要典型模式(宋大奇,2006)。
这些样本可以直接测取得到,也可以通过仿真得到,在样本数据较少或者较难得到时,也可以通过对学习样本加上适当的噪声或按照一定规则插值得到。
为了更好地验证网络的泛化能力,一个良好的测试样本集中不应该包含和学习样本完全相同的模式(董军,2007)。
最简单的BP神经网络?可能指单输入单输出的单隐层感知器模型。
BP(BackPropagation)神经网络是1986年由Rumelhart和McCelland为首的科学家小组提出,是一种按误差逆传播算法训练的多层前馈网络,是目前应用最广泛的神经网络模型之一。
BP网络能学习和存贮大量的输入-输出模式映射关系,而无需事前揭示描述这种映射关系的数学方程。它的学习规则是使用最速下降法,通过反向传播来不断调整网络的权值和阈值,使网络的误差平方和最小。
BP神经网络模型拓扑结构包括输入层(input)、隐层(hiddenlayer)和输出层(outputlayer)。