神经网络学习笔记(九):多层感知机(上)


     在前面我们所讨论的Rosenblatt感知机,其本质是一个单层神经网络。但这一网络局限于线性可分模式的分类问题。而由Widrow和Hoff(1960)提出的最小均方算法(LMS)也是基于权值可调的单个线性神经元。同样限制了这一算法的计算能力。为了克服上述局限,多层感知机(MLP)应运而生。


多层感知机:


    多层感知机的基本特征:

  •    网络中每个神经元模型包含一个可微的非线性激活函数。
  •    网络中包含一个或多个隐藏在输入与输出神经节点之间的层。
  •    网络展示出高度的连接性,其强度由网络的突触权值决定的。神经网络学习笔记(九):多层感知机(上)_第1张图片 

     训练感知机的一个流行方法是反向传播算法,LMS是反向传播算法的一个特例。训练分为如下两个阶段:

   1、前向阶段:网络的突触权值是固定的,输入信号在网络中一层一层传播,直到到达输出端。其实这一阶段就是利用现有的权值以及输入得到输出的过程。因此,在这一阶段,输入信号的影响限制在网络中激活隐藏神经元的输出神经元上。如上图所示,箭头所指方向即是前向传播方向。

   2、反向传播阶段:通过比较网络的输出和期望输出产生的一个误差信号。得到的误差信号再次通过网络一层一层传播,但是这一次传播是在反向方向进行的。目的是对于网络的突触权值进行不断的修正。也正是由于反向传播算法的出现才的得以让神经网络算法广泛应用。

     神经网络学习笔记(九):多层感知机(上)_第2张图片

   如上图描绘了多层感知机的一部分。在这个网络中,两种信号都能被识别:

  1、函数信号:函数信号是从网络输入端而来的一个输入信号(刺激),通过网络向前传播,到达网络输出端即成为一个输出信号。函数信号也被认为是输入信号。

  2、误差信号:一个误差信号产生于网络的一个输出神经元,并通过网络反向传播。之所以称之为误差信号是由于网络的每一个神经元对它的计算都以这种或者那种形式涉及误差依赖函数。

  多层感知器每一个隐藏层或输出层神经元的作用是进行两种计算:

  1、计算一个神经元的输出处出现的函数信号,它表现为关于输入信号以及与该神经元相关连的突触权值的一个连续非线性函数。

  2、计算梯度向量(误差曲面对于神经元权值的梯度)的一个估计,它需要反向通过网络。

  隐藏神经元扮演着特征检测算子的角色;它们在多层感知机的运转中起着决定性作用。随着学习过程通过多层感知机不断进行,隐藏神经元开始逐步“发现”刻画训练数据的突出特征。它们是通过将输入数据非线性变换到新的特征空间而实现的。例如,在模式分类问题中,感兴趣的类在这个新的空间中可能比原始输入数据空间中更容易分隔开。甚至,正是通过监督学习形成的这一特征空间将多层感知机与Rosenblatt感知机分别开来。


批量学习和在线学习:


  批量学习:在监督学习的批量方法中,多层感知机的突触权值的调整是训练样本的N个样例都出现以后进行。一个非常直观的例子就是前面介绍的最小二乘法,将N个样例误差平方和来调节权值。从统计的角度看,批量学习可以看成是某种形式的统计推断,因此更适合回归问题。
  
  在线学习:在监督学习的在线方法中,对于感知机的权值调整是以样例-样例为基础的。即每出现一次实例,即对权值进行一次修正。这样的算法更容易执行,并且对于大规模的分类问题可以提供有效解。Rosenblatt感知机以及LMS算法即是典型的在线学习算法。之后的大不部分算法也是采用在线学习的方式。






参考文献:神经网络与机器学习(加)S.Haykin著 申富饶 徐烨 郑俊 晁静 翻译

                  Neural Networks and Learning Machines S.Haykin















你可能感兴趣的:(Machine,Learning,机器学习,神经网络,MLP)