添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

单层感知机结构

神经网络最简单的结构就是单输出的单层感知机,单层感知机只有输入层和输出层,分别代表了神经感受器和神经中枢。下图是一个只有2个输入单元和1个输出单元的简单单层感知机。在图中, x 1、 w 2 代表神经网络的输入神经元受到的刺激, w 1 、 w 2 代 表输入神经元和输出神经元间连接的紧密程度, w 3代表输出神经元的兴奋阈值。Y是输出神经元受到的刺激总和,y为输出神经元的输出。

(单层感知机)

如果整形函数(如 sigmoid )确定,网络拓扑和连接权重就足以表示一个网络。在网络拓扑确定的情况下,利用训练数据修改连接权重的过程就是 BP 算法。我们利用一个例子说明单层感知机的训练过程。有一个单层感知机的网络拓扑如下图 所示,权重 w i ( i=1,2,3 )被初始化为 0~1 之间的随机小数。一个训练的样本我们用式子 [(x 1 , x 2 ),T] 表示, x 1 , x 2 为输入神经元的兴奋值, T 教师信号,即期望输出神经元产生的输出, T 取值一般为 0 或者 1 。

(单层感知机的错误信号)

单层感知机的 BP 训练分为三个过程:前向过程、错误反向传导过程和连接权重修改过程。

(1) 前向过程

利用当前的权重和输入兴奋计算 Y 和 y 的过程就是 BP 训练的前向过程,前向过程模拟的是脑神经的工作过程。 Y 和 y 的计算满足公式 3 。

Err(Y) =  y * (1-y) * (T-y)

Err(y) = T-y

对于未经训练的网络, y 往往和期望输出 T 不一样, y 和 T 的差值构成整个神经网络的源错误信号,该信号要用来指导网络权重的修正。我们按照 定义输出神经元的输入错误信号 Err(Y) 和输出错误信号 Err(y) 。

( 3 )连接权重的修改

权重的修改,有两个感性直观的方法:

a .某个输出神经元的错误越大,与之相关的连接 (w) 就需要越多的修改;例如: Err(Y) 很大,说明 w 修改量 delta(w) 也应该很大。

b .在输入神经元中,谁的兴奋值越大,对错误产生的责任就越大,其与输出神经元的连接就需要越多的修改。

例如:x1=0.1,x2=0.8。Err(Y)的出现,x2的责任更大,连接权重w2的修改量delta(w2)要比delta(w1)要更大。

基于以上两点,我们把一条连接权重的修改量定为该连接的前层神经元的输出 x 乘以后层神经元的 Err(Y) ,用公式 表示:

我们可以得到 各权重修改量为:

算出 delta(w) 之后,我们通过如下公式 完成对网络的更新:

我们可以从 多元函数求极值 角度解释上述过程。模型的训练的理念是经验风险最小化,也就是要使训练数据的错误 |Err(y)| 最小,但是由于 |Err(y)| 带有绝对值的目标不方便求导,我们把模型训练目标用函数 lossFun 表示。 lossFun 定义如下公式 :

对于一个样本 [(x 1 ,x 2 ),T] ,特征为 x 1 、 x 2 ​ ;类别或输出目标为 T 。 lossFun 是一个以 [(x 1 ,x 2 ),T] 为常量,以 [w 1 ,w 2 ,w 3 ] 为变量的多元函数。模型的训练优化可看成一个多元函数求极值的问题。

已知条件为:

在上面公式 中, x 1 , x 2 , T 为常量, w 1 、 w 2 , 、 w 3 为变量。 lossFun 对 w 1 求偏导得到:

同理可得:

训练样本 [(x 1 ,x 2 ),T] 时,网络参数按照梯度下降的方向求解。偏导数算出的是 lossFun 上升最快的方向, W 的修改量 delta(W) 是 lossFun 下降最快的方向,所以 delta(W) 方向与梯度方向相反。