神经网络算法原理
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后求和,按总误差修正权值。
谷歌人工智能写作项目:神经网络伪原创
神经网络原理及应用
神经网络原理及应用1.什么是神经网络?神经网络是一种模拟动物神经网络行为特征,进行分布式并行信息处理的算法好文案。
这种网络依靠系统的复杂程度,通过调整内部大量节点之间相互连接的关系,从而达到处理信息的目的。
人类的神经网络2.神经网络基础知识构成:大量简单的基础元件——神经元相互连接工作原理:模拟生物的神经处理信息的方式功能:进行信息的并行处理和非线性转化特点:比较轻松地实现非线性映射过程,具有大规模的计算能力神经网络的本质:神经网络的本质就是利用计算机语言模拟人类大脑做决定的过程。
3.生物神经元结构4.神经元结构模型xj为输入信号,θi为阈值,wij表示与神经元连接的权值,yi表示输出值判断xjwij是否大于阈值θi5.什么是阈值?
临界值。神经网络是模仿大脑的神经元,当外界刺激达到一定的阈值时,神经元才会受刺激,影响下一个神经元。
6.几种代表性的网络模型单层前向神经网络——线性网络阶跃网络多层前向神经网络(反推学习规则即BP神经网络)Elman网络、Hopfield网络、双向联想记忆网络、自组织竞争网络等等7.神经网络能干什么?
运用这些网络模型可实现函数逼近、数据聚类、模式分类、优化计算等功能。因此,神经网络广泛应用于人工智能、自动控制、机器人、统计学等领域的信息处理中。
虽然神经网络的应用很广,但是在具体的使用过程中到底应当选择哪种网络结构比较合适是值得考虑的。这就需要我们对各种神经网络结构有一个较全面的认识。8.神经网络应用。
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)。
什么是神经网络学习呢
神经网络的学习,也就是训练过程,指的是输入层神经元接收输入信息,传递给中间层神经元,最后传递到输出层神经元,由输出层输出信息处理结果的过程。
在这个过程中,神经网络通过不断调整网络的权值和阈值,达到学习、训练的目的,当网络输出的误差减少到可以接受的程度,或者预先设定的学习次数后,学习就可以停止了。
神经网络算法原理?
神经网络预测学习样本中的驾驶行为特征。
如图显示了某个驾驶场景的行驶路径深度学习训练,通过神经网络可以学习驾驶人的行为,并根据当前获取的环境信息决策行驶轨迹,进而可以控制车辆的转向、制动、驱动实现轨迹跟踪。
什么是神经网络学习
神经网络学习由称为神经元的基本处理单元互连而成的平行工作的复杂网络系统,简称神经网络。当已知训练样本的数据加到网络输入端时,网络的学习机制一遍又一遍地调整各神经元的权值,使其输出端达到预定的目标。
这就是训练(学习、记忆)过程。
神经网络是什么?
生物神经网络主要是指人脑的神经网络,它是人工神经网络的技术原型。
人脑是人类思维的物质基础,思维的功能定位在大脑皮层,后者含有大约10^11个神经元,每个神经元又通过神经突触与大约103个其它神经元相连,形成一个高度复杂高度灵活的动态网络。
作为一门学科,生物神经网络主要研究人脑神经网络的结构、功能及其工作机制,意在探索人脑思维和智能活动的规律。
人工神经网络是生物神经网络在某种简化意义下的技术复现,作为一门学科,它的主要任务是根据生物神经网络的原理和实际应用的需要建造实用的人工神经网络模型,设计相应的学习算法,模拟人脑的某种智能活动,然后在技术上实现出来用以解决实际问题。
因此,生物神经网络主要研究智能的机理;人工神经网络主要研究智能机理的实现,两者相辅相成。