前馈神经网络的介绍

前馈神经网络的介绍,第1张

前馈神经网络(feedforward neural network),简称前馈网络,是人工神经网络的一种。在此种神经网络中,各神经元从输入层开始,接收前一级输入,并输入到下一级,直至输出层。整个网络中无反馈,可用一个有向无环图表示。前馈神经网络是最早被提出的人工神经网络,也是最简单的人工神经网络类型。按照前馈神经网络的层数不同,可以将其划分为单层前馈神经网络和多层前馈神经网络。常见的前馈神经网络有感知机(Perceptrons)、BP(Back Propagation)网络、RBF(Radial Basis Function)网络等。

深度前馈网络 (deep feedforward network),也叫作前馈神经网络(feedforward neural network)或者 多层感知机 (multilayer perceptron,MLP)。对深度前馈网络的理解,从感知机的角度可能更易。感知机又被成为最简单的神经网络,顾名思义,多层感知机就是在感知机的基础上设计添加了更多层。

前馈网络的目标是近似一个函数 ,意思是说对于目标函数 ,网络学习的最终目标是输出一个函数 ,并且 尽可能接近 。举个例子,一个二分类器 会将输入 映射到一个类别 ,前馈网络会定义一个新的映射 ,然后通过学习参数 的值,使得新的映射能够得到最佳的函数映射。

对于深度前馈网络,如图11,由输入层、隐藏层、输出层和各层之间的连接组成,其中隐藏层根据模型的大小和复杂程度可以设计成数量任意的多层,各层之间的连接一般实际表示特征的权重。“深度”是指一个神经网络模型通常是由不止一层组成的,设计的层数越多,深度就越大,模型也越复杂。对于前馈网络中的“前馈”,因为网络中的数据流向是单向的, 只会按照输入层-隐藏层-输出层的顺序流动,即数据流经当前一层处理后,只会作为下一层的输入流入,而不会对上一层有任何影响和反馈。如果当前层会对前面一层给出反馈或影响,这样的网络模型叫做循环神经网络。

神经网络之所以被成为“网络”,是因为我们可以认为这样的一个模型是由许多不同的函数复合在一起组成的,也就是说神经网络的每一层可以认为是一个函数,加上层与层之间的连接,就表示了多个函数复合在一起的过程。例如,对于一组输入 ,我们希望得到的输出是 ,现在有三个函数 ,那么经过 的复合,就能产生近似的输出,其中每一个函数就可以认为是神经网络的一层。我们只关注模型的输入和输出,而对于具体的复合过程,也就是层与层之间的连接细节并不关注,因此将这层处理的层成为“隐藏层”。

深度前馈网络又叫多层感知机,那么从很早就被提出的感知机模型到多层感知机,有怎样的区别和变化呢?

感知机最大的局限是只能处理线性的样本空间,如图21左,而对于线性不可分的数据无能为力。为了将线性不可分的样本空间变换到线性可分,从而可以利用线性函数近似,就引入了隐藏层,即通

过隐藏层的处理,原有的样本空间就变成了新的可以使用线性模型处理的样本空间。

异或问题是指对于给定的两个二进制输入,通过异或逻辑门得到一个预测输出,当输入不相等时输出1,否则输出0。图31展示了异或函数所有可能结果。

为什么这里是解决异或问题,而不是与、或问题?前者的样本空间是非线性的,而与、或问题的样本空间都是线性可分的,即通过引入一个线性函数就能解决,如图32。

本问题的全部样本空间是四个样本点:(0,0)(0,1)(1,0)(1,1),首先需要选取损失函数 ,这里我们使用均方误差函数(MSE)

                                           

训练一个神经网络模型与其他机器学习算法一样,一般都需要三个步骤:选择一个优化模型、确定代价函数和输出单元的形式。那么,我们应该怎样选取优化模型呢?一般说来,线性模型是优先被考虑的,假如 是线性函数, 包含 和 ,那么模型可以定义为:

                                                       

使用正规方程,可以解得 。我们发现线性模型在任意一点都输出05,所以线性模型不能用来表示XOR函数。根据已有经验,我们总是希望能够通过使用一个线性模型来解决问题,但XOR问题的特征空间不允许这样做,如果能够使用一个模型来学习一个不同的特征空间,在这个新学得的空间上线性模型能够表示这个解,那么问题就能得到解决,这样的思路正是神经网络隐藏层的设计需要达到的目的。

为了学的一个新的特征空间,我们引入一个非常简单的前馈神经网络,如图33。该神经网络含

有一层隐藏层,包含两个单元,对于输入 ,神经网络将其变换到一个新的特征空间 ,在新学得的空间中,使用一个线性模型就能得到期望的输出 。

                                           

                                        

完整的模型是

现在 是明确的使用线性模型,那么 应该是那种函数呢?

如果 是线性的,那么前馈网络作为一个整体对于输入依然是线性的,因此 必须是非线性的。

神经网络通过仿射变换之后紧跟一个被成为激活函数的固定非线性函数来实现 。定义: ,其中 是权重矩阵, 是偏置。

现代神经网络中,默认推荐使用 定义的整流线性单元作为激活函数。那么我们问题的整体模型就是:

                           

至此,我们已经导出了使用含有一层隐藏层的前馈神经网络解决异或问题的完整模型。最后给出XOR问题的一个解。

1、前馈型神经网络

常见的前馈型神经网络包括感知器网络、BP神经网络、RBF网络(径向基函数神经网络)

(1)感知器网络:也被称作感知机,主要用于模式分类,也可以用作学习控制和基于模式分类的多模态控制

(2)反向传播神经网络(BP神经网络),利用了权值的反向传播调整策略,基于Sigmoid函数。可以实现从输入到输出的任意非线性函数

(3)RBF网络能逼近任意非线性函数,可以处理难以解析的规律性问题。具有良好的泛化能力和快速收敛速度。常用于分类问题,模式识别,信号处理,图像处理,系统建模等。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/12178003.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存