人工神经网络及其应用第 3讲 感知机及 BP网络何建华电信系,华中科技大学
2003年 2月 25日
2009-7-25
2
一,内容回顾二,感知机三,自适应线性元件四,内容小结内容安排
2009-7-25
3
生物神经元
人工神经网络结构
神经网络基本学习算法一、内容回顾
2009-7-25
4
生物神经元
– 生物神经元模型
– 突触信息处理
– 信息传递功能与特点
人工神经网络结构
神经 网络基本学习算法一、内容回顾
2009-7-25
5
生物神经元模型一、内容回顾
2009-7-25
6
生物神经元
人工神经网络结构
– 人工神经网络
– 人工神经元模型
– 常见响应函数
– 人工神经网络典型结构
神经网络基本学习算法一、内容回顾
2009-7-25
7
生物神经元
人工神经网络结构
神经网络基本学习算法
– 权值确定
– Hebb学习规则
– 误差校正学习规则
– 相近(无教师)学习规则一、内容回顾
2009-7-25
8
Hebb学习规则
Donall Hebb根据生理学中条件反射机理,于
1949年提出的神经元连接强度变化的规则
– 如果两个神经元同时兴奋 (即同时被激活 ),则它们之间的突触连接加强
– a为学习速率,Vi,Vj为神经元 i和 j的输出
Hebb学习规则是人工神经网络学习的基本规则,
几乎所有神经网络的学习规则都可以看作 Hebb
学习规则的变形
2009-7-25
9
误差校正规则
用已知样本作为教师对网络进行学习
学习规则可由二次误差函数的梯度法导出
误差校正学习规则实际上是一种梯度方法
– 不能保证得到全局最优解
– 要求大量训练样本,收敛速度慢
– 对样本地表示次序变化比较敏感
2009-7-25
10
无教师学习规则
这类学习不在于寻找一个特殊映射的表示,而是将事件空间分类为输入活动区域,并有选择地对这些区域响应,从而调整参数一反映观察事件的分部
输入可以为连续值,对噪声有较强抗干扰能力
对较少输入样本,结果可能要依赖于输入序列
在 ART,Kohonen等自组织竞争型网络中采用
2009-7-25
11
2.1 感知机简介
2.2 神经元模型
2.3 网络结构
2.4 功能解释
2.5 学习和训练
2.6 局限性二、感知机
2009-7-25
12
感知器由美国计算机科学家罗森布拉特
( F.Roseblatt)于 1957年提出
收敛定理
– F.Roseblatt证明,如果两类模式是线性可分的(指存在一个超平面将它们分开 ),则算法一定收敛
感知器特别适用于简单的模式分类问题,也可用于基于模式分类的学习控制中
本讲中感知器特指单层感知器
2.1 感知机简介
2009-7-25
13
2.2 神经元模型
2009-7-25
14
2.3 网络结构
ni 第 i个神经元加权输入和
ai第 i个神经元输出,i= 1,2,…,s
2009-7-25
15
2.4 功能解释
感知器的基本功能是将输入矢量转化成 0或 1的输出
根据输出值通过测试加权输入和值落在阈值函数的左右对输入数据进行分类
2009-7-25
16
2.4 功能解释
这一功能可以通过在输人矢量空间里的作图来加以解释
– 以输入矢量 r= 2为例
– 对选定的权值 w1,w2和 b,可以在以 p1和 p2分别作为横、纵坐标的输入平面内画出 W*P+b= w1 p1十 w2 p2
十 b= 0的轨迹
– 它是一条直线,此直线上及其线以上部分的所有 p1、
p2值均使 w1 p1十 w2 p2十 b> 0,这些点通过由 w1,w2
和 b构成的感知器的输出为 1;该直线以下部分的点通过感知器的输出为 0
2009-7-25
17
2.4 功能解释
2009-7-25
18
当采用感知器对不同的输入矢量进行期望输出为 0或 1的分类时,其问题可转化为对已知输入矢量在输入空间形成的不同点的位置,设计感知器的权值 W和 b
感知器权值参数设计目的,就是根据学习法则设计一条 W*P+b= 0的轨迹,使其对输入矢量能够达到所期望的划分
2.5 网络学习与训练
2009-7-25
19
学习规则
用来计算新的权值矩阵 W及新的偏差 B的算法
权值的变化量等于输入矢量
假定输入矢量 P,输出矢量 A,目标矢量为 T的感知器网络
2.5 网络学习与训练
2009-7-25
20
如果第 i个神经元的输出是正确的,即 ai= ti,
那么与第 i个神经元联接的权值 wij和偏差值 bi保持不变
如果第 i个神经元的输出是 0,但期望输出为 1,
即有 ai= 0,而 ti= 1,此时权值修正算法为:新的权值 wij为旧的权值 wij加上输人矢量 pj;新的偏差 bi为旧偏差 bi加上 1
如果第 i个神经元的输出为 1,但期望输出为 0,
即有 ai= 1,而 ti= 0,此时权值修正算法,新的权值 wij等于旧的权值 wij减去输入矢量 pj;新的偏差 bi为旧偏差 bi减去 1
2.5 网络学习与训练
2009-7-25
21
上述用来修正感知器权值的学习算法在 MATLAB
神经网络工具箱中已编成了子程序,成为一个名为 1earnp.m的函数。
只要直接调用此函数,即可立即获得权值的修正量。此函数所需要的输人变量为:输入、输出矢量和目标矢量( P,A和 T)
调用命令为:
[dW,dB]= learnp(P,A,T)
2.5 网络学习与训练
2009-7-25
22
训练思想
在输入矢量 P的作用下,计算网络的实际输出
A,并与相应的目标矢量 T进行比较,检查 A是否等于 T,然后用比较后的误差量,根据学习规则进行权值和偏差的调整
重新计算网络在新权值作用下的输入,重复权值调整过程,直到网络的输出 A等于目标矢量 T或训练次数达到事先设置的最大值时训练结束
2.5 网络学习与训练
2009-7-25
23
训练算法
对于所要解决的问题,确定输入矢量 P,目标矢量 T,
并确定各矢量的维数及神经元数目,r,s和 q;
( 1)参数初始化
a)赋给权矢量 w在 (—l,1)的随机非零初始值;
b)给出最大训练循环次数 max_epoch;
( 2) 初始化网络表达式 。 根据输人矢量 P以及最新权矢量 W,计算网络输出矢量 A;
( 3) 检查过程 。 检查输出矢量 A与目标矢量 T是否相同 。 如果是,或已达最大循环次数,训练结束,否则转入 ( 4)
( 4) 学习过程 。 根据感知器的学习规则调整权矢量,
并返回 ( 3)
2.5 网络学习与训练
2009-7-25
24
由于感知器的激活函数采用的是阀值函数,输出矢量只能取 0或 1,所以只能用它来解决简单的分类问题
感知器仅能够线性地将输入矢量进行分类
当输入矢量中有一个数比其他数都大或小得很多时,可能导致较慢的收敛速度
2.6 局限性
2009-7-25
25
三、自适应线性元件
3.1 Adline简介
3.2 网络结构
3.3 网络学习
3.4 网络训练
3.5 应用举例
3.6 局限性
2009-7-25
26
3.1 Adline简介
自适应线性元件 (Adaptive Linear Element
简称 Adaline)
由威德罗 (Widrow)和霍夫 (Hoff)首先提出
自适应线性元件的主要用途是线性逼近一个函数式而进行模式联想。
它与感知器的主要不同之处
– 在于其神经元有一个线性激活函数,这允许输出可以是任意值,而不仅仅只是像感知器中那样只能取
0或 1
– 它采用的是 W-H学习法则,也称最小均方差 (LMS)规则对权值进行训练
2009-7-25
27
3.2 网络结构神经元 (a)与网络 (b)
2009-7-25
28
3.3 学习规则
W-H学习规则是由威德罗和霍夫提出的用来修正权矢量的学习规则
采用 W-H学习规则可以用来训练一定网络的权值和偏差使之线性地逼近一个函数式而进行模式联想 (Pattern
Association)
定义一个线性网络的输出误差函数
目的是通过调节权矢量,使 E(W,B)达到最小值所以在给定 E(W,B)后,利用 W-H学习规则修正权矢量和偏差矢量,使 E(W,B)从误差空间的某一点开始,沿着 E(W,
B)的斜面向下滑行
2009-7-25
29
3.3 学习规则
根据梯度下降法,权矢量的修正值正比于当前位置上 E(W,B)的梯度,对于第 i个输出节点有:
或表示为
2009-7-25
30
3.3 学习规则
η 为学习速率。在一般的实际运用中,实践表明,η
通常取一接近 1的数,或取值为:
自适应线性网络还有另一个潜在的困难,当学习速率取得较大时,可导致训练过程的不稳定
采用 W-H规则训练自适应线性元件使其能够得以收敛的必要条件是被训练的输入矢量必须是线性独立的,且应适当地选择学习速率以防止产生振荡现象
2009-7-25
31
3.4 网络训练
自适应线性元件的网络训练过程可归纳为以下四个步骤
– 初始化。权值 W,B和 T
– 表达。计算训练的输出矢量 A=W*P+B,以及与期望输出之间的误差 E=T-A
– 检查。将网络输出误差的平方和与期望误差相比较,如果其值小于期望误差,或训练已达到事先设定的最大训练次数,则停止训练;
否则继续
– 学习。采用 W-H学习规则计算新的权值和偏差,并返回到,表达,过程
2009-7-25
32
3.5 应用举例
考虑一个较大的多神经元网络的模式联想的设计问题
输入矢量 P和目标矢量 T
2009-7-25
33
3.5 应用举例
求解-精确解
– 这个问题的求解同样可以采用线性方程组求出,即对每一个输出节点写出输入和输出之间的关系等式
2009-7-25
34
3.5 应用举例
求解-神经网络
– 训练误差记录
– 训练后权值
2009-7-25
35
3.5 应用举例
求解-神经网络
– 由输入矢量和目标输出矢量可得,r= 3,s
= 4,q= 4。网络的结构如下图示
2009-7-25
36
3.5 应用举例
分析- Adline与方程求解
– 求解前述 16个方程不太容易,需要一定时间
– 对一些实际问题,如果不需要求出其完美的零误差时的解,也即允许存在一定的误差时,采用自适应线性网络求解可以很快地训练出满足一定要求的网络权值
– 如果输入矢量具有奇异性,用函数 solvelin.m求解精确解时将产生问题。而神经网络则能得到较好的性能
2009-7-25
37
3.6 Adline与感知机
网络模型结构 上
– 感知器和自适应线性网络而言,结构上的主要区别在于激活函数,分别为二值型和线性
学习算法
– 感知器的算法是最早提出的可收敛的算法
– 它的自适应思想被威德罗和霍夫发展成使其误差最小的梯度下降法
– 在 BP算法中得到进一步的推广,它们属于同一类算法
适用性与局限性
– 感知器仅能够进行简单的分类。感知器可以将输入分成两类或四类等,但仅能对线性可分的输入进行分类。
– 自适应线性网络除了像感知器一样可以进行线性分类外,还可以实现线性逼近,因为其激活函数可以连续取值而不同于感知器的仅能取 0或 1的缘故
2009-7-25
38
四、内容小结
内容回顾
感知机
自适应线性元件
下次讲课内容
2009-7-25
39
四、内容小结
内容回顾
– 生物神经元
– 人工神经网络结构
– 神经网络基本学习算法
感知机
自适应线性元件
下次讲课内容
2009-7-25
40
四、内容小结
内容回顾
感知机
– 感知机简介
– 神经元模型
– 网络结构
– 功能解释
– 学习和训练
– 局限性
自适应线性元件
下次讲课内容
2009-7-25
41
四、内容小结
内容回顾
感知机
自适应线性元件
– Adline简介
– 网络结构
– 网络学习
– 网络训练
– 应用举例
– 局限性
下次讲课内容
2009-7-25
42
四、内容小结
内容回顾
感知机
自适应线性元件
下次讲课内容
– BP神经网络
2009-7-25
43
The End
Questions & Suggestions
Thanks!
2003年 2月 25日
2009-7-25
2
一,内容回顾二,感知机三,自适应线性元件四,内容小结内容安排
2009-7-25
3
生物神经元
人工神经网络结构
神经网络基本学习算法一、内容回顾
2009-7-25
4
生物神经元
– 生物神经元模型
– 突触信息处理
– 信息传递功能与特点
人工神经网络结构
神经 网络基本学习算法一、内容回顾
2009-7-25
5
生物神经元模型一、内容回顾
2009-7-25
6
生物神经元
人工神经网络结构
– 人工神经网络
– 人工神经元模型
– 常见响应函数
– 人工神经网络典型结构
神经网络基本学习算法一、内容回顾
2009-7-25
7
生物神经元
人工神经网络结构
神经网络基本学习算法
– 权值确定
– Hebb学习规则
– 误差校正学习规则
– 相近(无教师)学习规则一、内容回顾
2009-7-25
8
Hebb学习规则
Donall Hebb根据生理学中条件反射机理,于
1949年提出的神经元连接强度变化的规则
– 如果两个神经元同时兴奋 (即同时被激活 ),则它们之间的突触连接加强
– a为学习速率,Vi,Vj为神经元 i和 j的输出
Hebb学习规则是人工神经网络学习的基本规则,
几乎所有神经网络的学习规则都可以看作 Hebb
学习规则的变形
2009-7-25
9
误差校正规则
用已知样本作为教师对网络进行学习
学习规则可由二次误差函数的梯度法导出
误差校正学习规则实际上是一种梯度方法
– 不能保证得到全局最优解
– 要求大量训练样本,收敛速度慢
– 对样本地表示次序变化比较敏感
2009-7-25
10
无教师学习规则
这类学习不在于寻找一个特殊映射的表示,而是将事件空间分类为输入活动区域,并有选择地对这些区域响应,从而调整参数一反映观察事件的分部
输入可以为连续值,对噪声有较强抗干扰能力
对较少输入样本,结果可能要依赖于输入序列
在 ART,Kohonen等自组织竞争型网络中采用
2009-7-25
11
2.1 感知机简介
2.2 神经元模型
2.3 网络结构
2.4 功能解释
2.5 学习和训练
2.6 局限性二、感知机
2009-7-25
12
感知器由美国计算机科学家罗森布拉特
( F.Roseblatt)于 1957年提出
收敛定理
– F.Roseblatt证明,如果两类模式是线性可分的(指存在一个超平面将它们分开 ),则算法一定收敛
感知器特别适用于简单的模式分类问题,也可用于基于模式分类的学习控制中
本讲中感知器特指单层感知器
2.1 感知机简介
2009-7-25
13
2.2 神经元模型
2009-7-25
14
2.3 网络结构
ni 第 i个神经元加权输入和
ai第 i个神经元输出,i= 1,2,…,s
2009-7-25
15
2.4 功能解释
感知器的基本功能是将输入矢量转化成 0或 1的输出
根据输出值通过测试加权输入和值落在阈值函数的左右对输入数据进行分类
2009-7-25
16
2.4 功能解释
这一功能可以通过在输人矢量空间里的作图来加以解释
– 以输入矢量 r= 2为例
– 对选定的权值 w1,w2和 b,可以在以 p1和 p2分别作为横、纵坐标的输入平面内画出 W*P+b= w1 p1十 w2 p2
十 b= 0的轨迹
– 它是一条直线,此直线上及其线以上部分的所有 p1、
p2值均使 w1 p1十 w2 p2十 b> 0,这些点通过由 w1,w2
和 b构成的感知器的输出为 1;该直线以下部分的点通过感知器的输出为 0
2009-7-25
17
2.4 功能解释
2009-7-25
18
当采用感知器对不同的输入矢量进行期望输出为 0或 1的分类时,其问题可转化为对已知输入矢量在输入空间形成的不同点的位置,设计感知器的权值 W和 b
感知器权值参数设计目的,就是根据学习法则设计一条 W*P+b= 0的轨迹,使其对输入矢量能够达到所期望的划分
2.5 网络学习与训练
2009-7-25
19
学习规则
用来计算新的权值矩阵 W及新的偏差 B的算法
权值的变化量等于输入矢量
假定输入矢量 P,输出矢量 A,目标矢量为 T的感知器网络
2.5 网络学习与训练
2009-7-25
20
如果第 i个神经元的输出是正确的,即 ai= ti,
那么与第 i个神经元联接的权值 wij和偏差值 bi保持不变
如果第 i个神经元的输出是 0,但期望输出为 1,
即有 ai= 0,而 ti= 1,此时权值修正算法为:新的权值 wij为旧的权值 wij加上输人矢量 pj;新的偏差 bi为旧偏差 bi加上 1
如果第 i个神经元的输出为 1,但期望输出为 0,
即有 ai= 1,而 ti= 0,此时权值修正算法,新的权值 wij等于旧的权值 wij减去输入矢量 pj;新的偏差 bi为旧偏差 bi减去 1
2.5 网络学习与训练
2009-7-25
21
上述用来修正感知器权值的学习算法在 MATLAB
神经网络工具箱中已编成了子程序,成为一个名为 1earnp.m的函数。
只要直接调用此函数,即可立即获得权值的修正量。此函数所需要的输人变量为:输入、输出矢量和目标矢量( P,A和 T)
调用命令为:
[dW,dB]= learnp(P,A,T)
2.5 网络学习与训练
2009-7-25
22
训练思想
在输入矢量 P的作用下,计算网络的实际输出
A,并与相应的目标矢量 T进行比较,检查 A是否等于 T,然后用比较后的误差量,根据学习规则进行权值和偏差的调整
重新计算网络在新权值作用下的输入,重复权值调整过程,直到网络的输出 A等于目标矢量 T或训练次数达到事先设置的最大值时训练结束
2.5 网络学习与训练
2009-7-25
23
训练算法
对于所要解决的问题,确定输入矢量 P,目标矢量 T,
并确定各矢量的维数及神经元数目,r,s和 q;
( 1)参数初始化
a)赋给权矢量 w在 (—l,1)的随机非零初始值;
b)给出最大训练循环次数 max_epoch;
( 2) 初始化网络表达式 。 根据输人矢量 P以及最新权矢量 W,计算网络输出矢量 A;
( 3) 检查过程 。 检查输出矢量 A与目标矢量 T是否相同 。 如果是,或已达最大循环次数,训练结束,否则转入 ( 4)
( 4) 学习过程 。 根据感知器的学习规则调整权矢量,
并返回 ( 3)
2.5 网络学习与训练
2009-7-25
24
由于感知器的激活函数采用的是阀值函数,输出矢量只能取 0或 1,所以只能用它来解决简单的分类问题
感知器仅能够线性地将输入矢量进行分类
当输入矢量中有一个数比其他数都大或小得很多时,可能导致较慢的收敛速度
2.6 局限性
2009-7-25
25
三、自适应线性元件
3.1 Adline简介
3.2 网络结构
3.3 网络学习
3.4 网络训练
3.5 应用举例
3.6 局限性
2009-7-25
26
3.1 Adline简介
自适应线性元件 (Adaptive Linear Element
简称 Adaline)
由威德罗 (Widrow)和霍夫 (Hoff)首先提出
自适应线性元件的主要用途是线性逼近一个函数式而进行模式联想。
它与感知器的主要不同之处
– 在于其神经元有一个线性激活函数,这允许输出可以是任意值,而不仅仅只是像感知器中那样只能取
0或 1
– 它采用的是 W-H学习法则,也称最小均方差 (LMS)规则对权值进行训练
2009-7-25
27
3.2 网络结构神经元 (a)与网络 (b)
2009-7-25
28
3.3 学习规则
W-H学习规则是由威德罗和霍夫提出的用来修正权矢量的学习规则
采用 W-H学习规则可以用来训练一定网络的权值和偏差使之线性地逼近一个函数式而进行模式联想 (Pattern
Association)
定义一个线性网络的输出误差函数
目的是通过调节权矢量,使 E(W,B)达到最小值所以在给定 E(W,B)后,利用 W-H学习规则修正权矢量和偏差矢量,使 E(W,B)从误差空间的某一点开始,沿着 E(W,
B)的斜面向下滑行
2009-7-25
29
3.3 学习规则
根据梯度下降法,权矢量的修正值正比于当前位置上 E(W,B)的梯度,对于第 i个输出节点有:
或表示为
2009-7-25
30
3.3 学习规则
η 为学习速率。在一般的实际运用中,实践表明,η
通常取一接近 1的数,或取值为:
自适应线性网络还有另一个潜在的困难,当学习速率取得较大时,可导致训练过程的不稳定
采用 W-H规则训练自适应线性元件使其能够得以收敛的必要条件是被训练的输入矢量必须是线性独立的,且应适当地选择学习速率以防止产生振荡现象
2009-7-25
31
3.4 网络训练
自适应线性元件的网络训练过程可归纳为以下四个步骤
– 初始化。权值 W,B和 T
– 表达。计算训练的输出矢量 A=W*P+B,以及与期望输出之间的误差 E=T-A
– 检查。将网络输出误差的平方和与期望误差相比较,如果其值小于期望误差,或训练已达到事先设定的最大训练次数,则停止训练;
否则继续
– 学习。采用 W-H学习规则计算新的权值和偏差,并返回到,表达,过程
2009-7-25
32
3.5 应用举例
考虑一个较大的多神经元网络的模式联想的设计问题
输入矢量 P和目标矢量 T
2009-7-25
33
3.5 应用举例
求解-精确解
– 这个问题的求解同样可以采用线性方程组求出,即对每一个输出节点写出输入和输出之间的关系等式
2009-7-25
34
3.5 应用举例
求解-神经网络
– 训练误差记录
– 训练后权值
2009-7-25
35
3.5 应用举例
求解-神经网络
– 由输入矢量和目标输出矢量可得,r= 3,s
= 4,q= 4。网络的结构如下图示
2009-7-25
36
3.5 应用举例
分析- Adline与方程求解
– 求解前述 16个方程不太容易,需要一定时间
– 对一些实际问题,如果不需要求出其完美的零误差时的解,也即允许存在一定的误差时,采用自适应线性网络求解可以很快地训练出满足一定要求的网络权值
– 如果输入矢量具有奇异性,用函数 solvelin.m求解精确解时将产生问题。而神经网络则能得到较好的性能
2009-7-25
37
3.6 Adline与感知机
网络模型结构 上
– 感知器和自适应线性网络而言,结构上的主要区别在于激活函数,分别为二值型和线性
学习算法
– 感知器的算法是最早提出的可收敛的算法
– 它的自适应思想被威德罗和霍夫发展成使其误差最小的梯度下降法
– 在 BP算法中得到进一步的推广,它们属于同一类算法
适用性与局限性
– 感知器仅能够进行简单的分类。感知器可以将输入分成两类或四类等,但仅能对线性可分的输入进行分类。
– 自适应线性网络除了像感知器一样可以进行线性分类外,还可以实现线性逼近,因为其激活函数可以连续取值而不同于感知器的仅能取 0或 1的缘故
2009-7-25
38
四、内容小结
内容回顾
感知机
自适应线性元件
下次讲课内容
2009-7-25
39
四、内容小结
内容回顾
– 生物神经元
– 人工神经网络结构
– 神经网络基本学习算法
感知机
自适应线性元件
下次讲课内容
2009-7-25
40
四、内容小结
内容回顾
感知机
– 感知机简介
– 神经元模型
– 网络结构
– 功能解释
– 学习和训练
– 局限性
自适应线性元件
下次讲课内容
2009-7-25
41
四、内容小结
内容回顾
感知机
自适应线性元件
– Adline简介
– 网络结构
– 网络学习
– 网络训练
– 应用举例
– 局限性
下次讲课内容
2009-7-25
42
四、内容小结
内容回顾
感知机
自适应线性元件
下次讲课内容
– BP神经网络
2009-7-25
43
The End
Questions & Suggestions
Thanks!