bp神经网络输入输出 bp神经网络输入输出维数

BP神经网络在预测时输入与输出的个数不匹配的问题

你用的是Demux模块,错误的原因是输入和输出信号的维数不匹配。

bp神经网络输入输出 bp神经网络输入输出维数bp神经网络输入输出 bp神经网络输入输出维数


bp神经网络输入输出 bp神经网络输入输出维数


Demux模块的基本作用是把一个输入信号给展开成多个输出信号,有两种工作模式,即向量模式和总线选择(Bus selection)模式,取决于你是否选中了Bus selection mode参数(注意:MathWorks公司不鼓励使用Bus selection模式来展开总线信号)。猜测你很可能是按照默认情况下使用向量模式,所以下面的讨论以向量模式为前提。

Demux模块的参数Number of outputs可以是标量或向量,如果是标量,则指定了输出的个数;如果是向量,则向量的元素个数对应输出个数。关于该参数的详细规定可以用doc demux查看相关文档。

可能导致出错的主要有以下两种情况(其他条件下,Simulink会采取一种比较合理的方式来理解你的输入参数):

如果Number of outputs为标量,该标量的值大于输入向量的元素个数;

如果Number of outputs为向量,向量各元素均为正且求和与输入向量的元素个数不等。

BP神经网络(误反传网络)

虽然每个人工神经元很简单,但是只要把多个人工

神经元按一定方式连接起来就构成了一个能处理复杂信息的神经网络。采用BP算法的多层前馈网络是目前应用广泛的神经网络,称之为BP神经网络。它的功能就是能映射复杂的非线性函数关系。

对于已知的模型空间和数据空间,我们知道某个模型和他对应的数据,但是无法写出它们之间的函数关系式,但是如果有大量的一一对应的模型和数据样本,利用BP神经网络可以模拟(映射)它们之间的函数关系。

一个三层BP网络如图8.11所示,分为输入层、隐层、输出层。它是常用的BP网络。理论分析证明三层网络已经能够表达任意复杂的连续函数关系了。只有在映射不连续函数时(如锯齿波)才需要两个隐层[8]。

图8.11中,X=(x1,…,xi,…,xn)T为输入向量,如加入x0=-1,可以为隐层神经元引入阀值;隐层输出向量为:Y=(y1,…,yi,…,ym)T,如加入y0=-1,可以为输出层神经元引入阀值;输出层输出向量为:O=(o1,…,oi,…,ol)T;输入层到隐层之间的权值矩阵用V表示,V=(V1,…,Vj,…,Vl)T,其中列向量Vj表示隐层第j个神经元的权值向量;隐层到输出层之间的权值矩阵用W表示,W=(W1,…,Wk,…,Wl)T,

其中列向量Wk表示输出层第k个神经元的权值向量。

图8.11 三层BP网络[8]

BP算法的基本思想是:预先给定一一对应的输入输出样本集。学习过程由信号的正向传播与误的反向传播两个过程组成。正向传播时,输入样本从输入层传入,经过各隐层逐层处理后,传向输出层。若输出层的实际输出与期望的输出(教师信号)不符,则转入误的反向传播。将输出误以某种形式通过隐层向输入层逐层反传,并将误分摊给各层的所有神经元,获得各层的误信号,用它们可以对各层的神经元的权值进行调整(关于如何修改权值参见韩立群著作[8]),循环不断地利用输入输出样本集进行权值调整,以使所有输入样本的输出误都减小到满意的精度。这个过程就称为网络的学习训练过程。当网络训练完毕后,它相当于映射(表达)了输入输出样本之间的函数关系。

在地球物理勘探中,正演过程可以表示为如下函数:

d=f(m) (8.31)

它的反函数为

m=f-1(d) (8.32)

如果能够获得这个反函数,那么就解决了反演问题。一般来说,难以写出这个反函数,但是我们可以用BP神经网络来映射这个反函数m=f-1(d)。对于地球物理反问题,如果把观测数据当作输入数据,模型参数当作输出数据,事先在模型空间随机产生大量样本进行正演计算,获得对应的观测数据样本,利用它们对BP网络进行训练,则训练好的网络就相当于是地球物理数据方程的反函数。可以用它进行反演,输入观测数据,网络就会输出它所对应的模型。

BP神经网络在能够进行反演之前需要进行学习训练。训练需要大量的样本,产生这些样本需要大量的正演计算,此外在学习训练过程也需要大量的时间。但是BP神经网络一旦训练完毕,在反演中的计算时间可以忽略。

要想使BP神经网络比较好地映射函数关系,需要有全面代表性的样本,但是由于模型空间的无限性,难以获得全面代表性的样本。用这样的样本训练出来的BP网络,只能反映样本所在的较小范围数据空间和较小范围模型空间的函数关系。对于超出它们的观测数据就无确反演。目前BP神经网络在一维反演有较多应用,在二维、三维反演应用较少,原因就是难以产生全面代表性的样本空间。

bp神经网络对输入数据和输出数据有什么要求

p神经网络的输入数据越多越好,输出数据需要反映网络的联想记忆和预测能力。

BP网络能学习和存贮大量的输入-输出模式映射关系,而无需事前揭示描述这种映射关系的数学方程。它的学习规则是使用速下降法,通过反向传播来不断调整网络的权值和阈值,使网络的误平方和小。

BP神经网络模型拓扑结构包括输入层(input)、隐层(hide layer)和输出层(output layer)。BP网络具有高度非线性和较强的泛化能力,但也存在收敛速度慢、迭代步数多、易于陷入局部极小和全局搜索能力等缺点。

扩展资料:

BP算法主要思想是:输入学习样本,使用反向传播算法对网络的权值和偏进行反复的调整训练,使输出的向量与期望向量尽可能地接近,当网络输出层的误平方和小于指定的误时训练完成,保存网络的权值和偏。

1、初始化,随机给定各连接权及阀值。

2、由给定的输入输出模式对计算隐层、输出层各单元输出

3、计算新的连接权及阀值,计算公式如下:

4、选取下一个输入模式对返回第2步反复训练直到网络设输出误达到要求结束训练。

参考资料来源:

关于matlab的BP神经网络

1、数据归一化,输入的数据通常为P,输出数据通常为T,数据格式为,每列对应一个样本,归一化常用函数,是归一化后的数据,是归一化的结构体,在后面反归一化预测值;

2、建立网络并设定参数,中括号里面的是输入层数,隐含神经元数,输出层数,设定传递函数的参数,训练的次数,训练的误目标值,学习速率,通常在0到1之间;

3、预测并分析,根据之前归一化的标准,对预测结果进行反归一化,得到结果,对误进行输出,也可以作图,看预测值和真实值能否吻合,还可以在神经网络训练完成后的对话框中看MSE和R方。

bp神经网络中输入就是影响因素吗

BP(Back Propagation)神经网络是1986年由Rumelhart和McCelland为首的科研小组提出,参见他们发表在Nature上的论文 Learning representations by back-propagating errors 。

BP神经网络是一种按误逆传播算法训练的多层前馈网络,是目前应用广泛的神经网络模型之一。BP网络能学习和存贮大量的 输入-输出模式映射关系,而无需事前揭示描述这种映射关系的数学方程。它的学习规则是使用速下降法,通过反向传播来不断 调整网络的权值和阈值,使网络的误平方和小。

二、BP算法的基本思想

它的基本思想是,学习过程由信号的正向传播与误的反向传播两个过程组成。

1、正向传播时,输入样本从输入层传入,经各隐层逐层处理后,传向输出层。若输出层的实际输出与期望的输出(教师信号)不符,则转入误的反向传播阶段。

2、反向传播时,将输出以某种形式通过隐层向输入层逐层反传,并将误分摊给各层的所有单元,从而获得各层单元的误信号,此误信号即作为修正各单元权值的依据。

三、BP网络特性分析—BP三要素

我们分析一个ANN(人工神经网络)时,通常都是从它的三要素入手,即

1)网络拓扑结构;

2)传递函数;

3)学习算法。

1、BP网络的拓扑结构

由于单隐层(三层)感知器已经能够解决简单的非线性问题,因此应用为普遍。三层感知器的拓扑结构如下图所示。

一个简单的三层BP:

2、BP网络的传递函数

BP网络采用的传递函数是非线性变换函数——Sigmoid函数(又称S函数)。其特点是函数本身及其导数都是连续的,因而在处理上十分方便。为什么要选择这个函数,等下在介绍BP网络的学习算法的时候会进行进一步的介绍。

单极性S型函数曲线如下图所示。

3、BP网络的学习算法

BP网络的学习算法就是BP算法,又叫 δ 算法(在ANN的学习过程中我们会发现不少具有多个名称的术语), 以三层感知器为例,当网络输出与期望输出不等时,存在输出误 E ,定义如下

将以上误定义式展开至隐层,有

进一步展开至输入层,有

![容易看出,BP学习算法中,各层权值调整公式形式上都是一样的,均由3个因素决定,即:

1)学习率 η η η

2)本层输出的误信号 δ δ δ

3)本层输入信号 Y Y Y(或 X X X)

其中输入层误信号与网络的期望输出与实际输出之有关,直接反应了输出误,而各隐层的误信号与前面各层的误信号有关,是从输出层开始逐层反传过来的。

可以看出BP算法属于δ学习规则类,这类算法常被称为误的梯度下降算法。δ学习规则可以看成是Widrow-Hoff(LMS)学习规则的一般化(generalize)情况。LMS学习规则与神经元采用的变换函数无关,因而不需要对变换函数求导,δ学习规则则没有这个性质,要求变换函数可导。这就是为什么我们前面采用Sigmoid函数的原因。

bp神经网络原理

BP神经网络被称为“深度学习之旅的开端”,是神经网络的入门算法。

开始发展——在人工神经网络的发展历史上,感知机网络曾对人工神经网络的发展发挥了极大的作用,它的出现曾掀起了人们研究人工神经元网络的热潮。单层感知网络(M-P模型)做为初的神经网络,具有模型清晰、结构简单、计算量小等优点。

只能解决线性可分——但是,随着研究工作的深入,人们发现它还存在不足,例如无法处理非线性问题,即使计算单元的作用函数不用阀函数而用其他较复杂的非线性函数,仍然只能解决解决线性可分问题.不能实现某些基本功能,从而限制了它的应用。

BP神经网络登场——20世纪80年代中期,Did Runelhart。Geoffrey Hinton和Ronald W-llians、DidParker等人分别发现了误反向传播算法,简称BP,系统解决了多层神经网络隐含层连接权学习问题,并在数学上给出了完整推导。人们把采用这种算法进行误校正的多层前馈网络称为BP网。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 836084111@qq.com,本站将立刻删除。