前馈神经网络模型课件_第1页
前馈神经网络模型课件_第2页
前馈神经网络模型课件_第3页
前馈神经网络模型课件_第4页
前馈神经网络模型课件_第5页
已阅读5页,还剩86页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1 第三章 前馈神经网络模型 2 v前馈神经网络:由一层或多层非线性处理单元组 成。相邻层之间通过突触权阵连接起来。由于前 一层的输出作为下一层的输入,因此此类神经网 络为前向神经网络。 在前向神经网络结构中输入输出之间包含着一层 或多层隐含层。 前向神经网络可以看成是一种一组输入模式到一 组输出模式的系统变换,这种变换通过对某一给 定的输入样本相应的输出样本集的训练而得到, 为了实现这一行为,网络的权系数在某种学习规 则下进行自适应学习,也就是有导师指导学习。 3 l感知器 l多层感知器 l自适应线性元模型 lBP算法 4 第一节 感知器 5 l线性阈值单元是前向网络(又称前馈网络)中最 基

2、本的计算单元,它具有n个输入(x1,x2,xn), 一个输出y,n个连接权值(w1,w2,wn),且 n i ii n i ii xw xw y 1 1 0)0( 1 01 若或 若 xi wi y 6 l 1958年,美国心理学家Frank Rosenblatt提出一种具 有单层计算单元的神经网络,称为Perceptron,即感知器。 感知器是模拟人的视觉接受环境信息,并由神经冲动进行 信息传递的层次型神经网络。感知器研究中首次提出了自 组织、自学习的思想,而且对所能解决的问题存在着收敛 算法,并能从数学上严格证明,因而对神经网络研究起了 重要推动作用。 l 感知器的结构与功能都非常简单,以

3、至于在解决实际 问题时很少采用,但由于它在神经网络研究中具有重要意 义,是研究其它网络的基础,而且较易学习和理解,适合 于作为学习神经网络的起点。 l 7 l感知器的模型结构如图所示。感 l知器是指只有一层处理单元的感 l知器,如果包括输入层在内,应 l为两层。图中输入层也称为感知 l层,有n个神经元节点,这些节点 l只负责引入外部信息,自身无信 l息处理能力,每个节点接收一个 l输入信号,n个输入信号构成输 l入列向量X。输出层也称为处理层,有m个神经元节点, 每个节点均具有信息处理能力,m个节点向外部输出处理 信息,构成输出列向量O。两层之间的连接权值用权值列 向量Wj表示,m个权向量构成

4、单层感知器的权值矩阵W。 3个列向量分别表示为: o1 oj om W1 Wj Wm x1 x2 xi xn 8 j=1,2,m T ni21 ,.,x,.x,xx)(X T mi21 ,.,o,.o,oo)(O T njijj2j1j ,.,w,.w,ww)(W 9 n 1i iijj xwnet )()()(XW T j n 0i iijjjj sgnxwsgnTnetsgno 10 一个最简单的单计算节点感知器具有分类功一个最简单的单计算节点感知器具有分类功 能。其分类原理是将分类知识存储于感知器的权能。其分类原理是将分类知识存储于感知器的权 向量(包含了阈值)中,由权向量确定的分类判向

5、量(包含了阈值)中,由权向量确定的分类判 决界面将输入模式分为两类。决界面将输入模式分为两类。 11 (1)设输入向量设输入向量X=(x1 ,x2)T 0Txwxw1 0Txwxw1 o j2j21j1 j2j21j1 j 输出:输出: 则由方程则由方程 w1jx1+w2jx2-Tj=0 确定了二维平面上的一条分界线。确定了二维平面上的一条分界线。 oj x1 -1 x2 12 w1j x1+w2j x2 Tj = 0 w1j x1 = Tj - w2j x2 x1 = (Tj -w2j x2) / w1j = - ( w2j/ w1j ) x2 +Tj / w1j = a x2 +c x1

6、* * * * O * * O * * O O * O x2 * * O O O O 13 (2)设输入向量设输入向量X=(x1,x2,x3)T 0Txwxwxw1 0Txwxwxw1 o j3j32j21j1 j3j32j21j1 j 输出:输出: 则由方程则由方程 w1jx1+w2jx2+w3j Tj=0 确定了三维空间上的一个分界平面。确定了三维空间上的一个分界平面。 x2 oj x1 x3 -1 14 w1j x1+w2j x2 +w3j x3 Tj = 0 x1 = a x2 +b x3 +c x1 * * * * O * * O * * O O * O x2 * * O O O x

7、3 15 (3) 设输入向量设输入向量X=(x1,x2,,xn)T 则由方程则由方程 w1jx1+w2jx2+wnj Tj=0 (3.6) 确定了确定了n维空间上的一个分界平面。维空间上的一个分界平面。 输出:输出:w1jx1+w2jx2+wnj Tj=0 (3.5) 16 x1x2y 000 010 100 111 逻辑逻辑“与与”真值真值 表表 17 感知器结构感知器结构 x1 0.5 0.5 y x2 0.75 -1 wix1+w2x2 -T=0 0.5x1+0.5x2-0.75=0 18 x1x2y 000 011 101 111 逻辑逻辑“或或”真值表真值表 19 感知器结构感知器结

8、构 x1 1 1 y x2 0.5 -1 wix1+w2x2 -T=0 x1+x2-0.5=0 20 l分界线的方程是什么? l感知器的模型如何表示? 数学表达式? 21 lRosenblatt已经证明,如果两类模式在分布空间中可以找 到一个超平面将它们分开,那么感知器的学习过程就一定 会收敛。否则判定边界就会振荡不休,永远不会稳定,这 也正是单层感知器所无法克服的缺陷,所以它连最简单的 异或(XOR)问题也解决不了。 “异或异或”的真值表的真值表 x1x2y 000 011 101 110 x1 O O x2 22 l关键问题就是求 0 T j XW 23 式中,当实际输出与期望值相同时,权

9、值不需要调整。感式中,当实际输出与期望值相同时,权值不需要调整。感 知器学习规则代表一种有导师学习。知器学习规则代表一种有导师学习。 24 感知器学习规则的训练步骤:感知器学习规则的训练步骤: (1) 对各权值对各权值w0j(0),w1j(0),wnj(0),j=1, 2,m (m为计算层的节点数)赋予较小的非零随机数;为计算层的节点数)赋予较小的非零随机数; (2) 输入样本对输入样本对Xp,dp,其中,其中Xp=(-1,x1p,x2p,x,xn np p), dp为期望的输出向量(教师信号),上标为期望的输出向量(教师信号),上标p代表代表 样本对的模式序号,设样本集中的样本总数为样本对的

10、模式序号,设样本集中的样本总数为P, 则则p=1,2,P,P; 25 (3)计算各节点的实际输出计算各节点的实际输出ojp(t)=sgnWjT(t)Xp, j=1,2,.,m; (4)调整各节点对应的权值,调整各节点对应的权值,Wj(t+1)= Wj(t)+djp-ojp(t)Xp, j=1, 2,m, 其中其中为学习率,用于控制调整速度,太为学习率,用于控制调整速度,太 大会影响训练的稳定性,太小则使训练的收敛速度变慢,大会影响训练的稳定性,太小则使训练的收敛速度变慢, 一般取一般取0 011; (5)返回到步骤返回到步骤(2)输入下一对样本,周而复始直到对所有输入下一对样本,周而复始直到对

11、所有 样本,感知器的实际输出与期望输出相等。样本,感知器的实际输出与期望输出相等。 26 27 28 29 30 31 1.初始化:权值初始化为一个较小的随机非零值。 2.将一模式送入输入神经元,并给出理想输出值。 3.计算神经网络模型的实际输出: 4.调节权值: 5.转2,直到这次迭代完所给定的所有输入样本。 6.计算结束判据。条件符合,结束;否则转2。 ii xydw)( 32 例三例三 单计算节点感知器,单计算节点感知器,3个输入。给定个输入。给定3对训练样对训练样 本对如下:本对如下: X1 = (-1,1,-2,0)T d1 = 1 X2 = (-1,0,1.5,-0.5)T d2

12、= 1 X3 = (-1,-1,1,0.5)T d3 =1 设初始权向量设初始权向量W(0)=(0.5,1,-1,0)T,=0.1=0.1。注意,注意, 输入向量中第一个分量输入向量中第一个分量x0恒等于恒等于-1,权向量中第一个分,权向量中第一个分 量为阈值,试根据以上学习规则训练该感知器。量为阈值,试根据以上学习规则训练该感知器。 33 解:第一步解:第一步 输入输入X1,得得 WT(0)X1=(0.5,1,-1,0)(-1,1,-2,0)T=2.5 o1(0)=sgn(2.5)=1 W(1)= W(0)+d1- o1(0) X1 =(0.5,1,-1,0)T+0.1(-1-1)(-1,1

13、,-2,0)T =(0.7,0.8,-0.6,0)T 34 第二步第二步 输入输入X2,得,得 WT(1)X2=(0.7,0.8,-0.6,0)(-1,0,1.5,-0.5)T=-1.6 o2(1)=sgn(-1.6)=-1 W(2)= W(1)+d2- o2(1) X2 =(0.7,0.8,-0.6,0)T+0.1-1-(-1)(-1,0,1.5,-0.5)T =(0.7,0.8,-0.6,0)T 由于由于d2= o2(1),所以,所以W(2)= W(1)。 35 第三步第三步 输入输入X3,得,得 WT(2)X3=(0.7,0.8,-0.6,0)(-1,-1,1,0.5)T=-2.1 O3

14、(2)=sgn(-2.1=-1 W(3)= W(2)+d3- o3(2) X3 =(0.7,0.8,-0.6,0)T+0.11-(-1)(-1,-1,1,0.5)T =(0.5,0.6,-0.4,0.1)T 第四步第四步 返回到第一步,继续训练直到返回到第一步,继续训练直到dp- op=0,p=1,2,3。 36 第二节 多层感知器 37 l多层感知器(Multilayer Perceptron)是一种在输入层 与输出层之间含有一层或多层隐含神经元的具有正向传 播机制的神经网络模型。 l多层感知器克服了单层感知器的许多局限, 单层感知器 只能实现线性可分问题和简单布尔函数,多层感知器可 以实现

15、线性不可分问题和任意布尔函数。 38 输入层隐含层输出层 39 l一个单层感知器构成一个 半平面判定区域,一个两 层感知器可以构成任意无 边界的空间区域,这些判 定区域有的是凸多边形, 有的是无边界的凹区域。 凸区域是多层感知器中第 一层各个神经元所构成的 半平面判定区域(即判定 区域)相交而成。 40 l第一层中的神经元就 像一单层感知器,所 形成的凸区域的边数 最多和第一层神经元 个数一样多。一个三 层感知机能够形成任 意复杂的判定区域, 也能把那些相互渗透 的区域分开。 41 l1、用单层感知器实现简单逻辑运算。 (1) (与)等价于 ,即 (2) (或)等价于 ,即 (3) (非) 等

16、价于 ,即 21 xxy2 21 xxy 2; 1; 1 21 ww 21 xxy 5 . 0 21 xxy 5 . 0; 1; 1 21 ww xy 5 . 0 xy 5 . 0; 1 1 w 42 n2、用两层感知器实现异或运算。 0 1 x 0 2 x 1 1 x 1 2 x 2 1 x 5 . 011 0 2 0 1 1 1 xxx )5 . 1() 1() 1( 0 2 0 1 1 2 xxx 211 1 2 1 1 2 1 xxx 43 l试用单个感知器神经元完成下列分类,写出其训练迭 代过程,画出最终的分类示意图。 0, 2 2 11 dX1, 2 1 22 dX0, 2 2 3

17、3 dX1, 0 1 44 dX x1 w1 y x2w2 f n 0 1 ii xydw)( 44 第三节第三节 自适应线性元模型自适应线性元模型 45 l自适应线性元件于1961年由美国的Widrow教授 提出。适用于信号处理中的自适应滤波、预测 和模式识别。 46 k w1 k w2 nk w 1 0 x 阈值权 ok w LMS 算 法 误 差 二 值 输 出 模 拟 输 出 k y k q k x1 k x1 k x 2 nk x 47 l输入输入 该模型是一自适应阈值逻辑单元。图中x0,x1k,x2k,xnk为该自 适应线性元在t时刻的外部输入,用向量表示为: Xk(x0,x1k,

18、x2k,xnk)T 这个向量称为自适应线性元的 输入信号向量或输入模式向量。k w1 k w2 nk w 1 0 x 阈值权 ok w LMS 算法 误差 二值输出 模拟输出 k y k q k x1 k x1 k x2 nk x 48 l连接权值连接权值 与输入向量Xk相对应有一权值向量: Wk=(w0k,w1k,w2k,wnk)T 其中Wk每一元素与输入向量 Xk中的每一元素相对应。 w0k为基权,称为门限权,它 用来调整自适应线性元的阈值。 k w1 k w2 nk w 1 0 x 阈值权 ok w LMS 算法 误差 二值输出 模拟输出 k y k q k x1 k x1 k x2 n

19、k x 49 l输出输出 模拟输出 二值输出 k T kk T kk XWWXy 0 0 , , 1 1 )sgn( k k kk y y yq k w1 k w2 nk w 1 0 x 阈值权 ok w LMS 算法 误差 二值输出 模拟输出 k y k q k x1 k x1 k x2 nk x 50 l理想输出理想输出 l在图中的自适应线性元中 有一特殊的输入dk,即理 想输出。 l该输出是用来将理想响应 信号送入自适应线性元中, 在自适应线性元中通过比 较yk和理想响应dk,并将差 值送入最小均方差(LMS)学 习算法机制中来调整权向 量Wk,使得yk和所期望的 输出dk相一致。 k

20、w1 k w2 nk w 1 0 x 阈值权 ok w LMS 算法 误差 二值输出 模拟输出 k y k q k x1 k x1 k x2 nk x 51 k w1 k w2 nk w 1 0 x 阈值权 ok w LMS 算 法 误 差 二 值 输 出 模 拟 输 出 k y k q k x1 k x1 k x 2 nk x 52 l与单层感知器的差别在于:输出分为模拟和数 字两个部分。 l数字部分与感知器单元完全相同,可进行线性 分割 l模拟部分是作为误差调节之用,对单个Adaline, 其误差为模拟输出和要求响应输出差。 53 l样本数i=0,连接权值随机初始化一个较小的 不等于0的值

21、; l提交第i个学习样本; l计算神经网络的输出; l计算实际输出和理想输出的误差; l按照权值修改规则修改神经网络权值; li+;i=N?;否,转2。 l计算学习结束判据; l学习结束否? l达到要求学习结束,否则转1。 54 l其中: 为当前的误差(即理想输出与模拟实 际输出之间的差值), 称为学习速度 (Learning Rate)。 kk k kk X X tWtW 2 )() 1( k 55 kk k kkk X X tWtWW 2 )() 1( k T kkk T kkk XWdWXd k T kk T kkk WXWXd)( kk k k T kk T kk X XXWX 2 k

22、 T kk XXX 2 56 l 的选择决定了学习算法收敛的稳定性和收敛 的速度。 l稳定性要求:0 2。但是 过大可能会修正 过度,一个比较好的选择范围是: 0.1 1 57 kk k k X X W 2 )(tWk ) 1( tWk k X 58 l若ADALINE输入为二值,它可以完成一定的逻辑功能。 l若有n个输入,即则有2n个可能的输入模式。在一般的 逻辑实现中,依照所期望的输出响应,可以将个输入 模式划分成和两类。每一个自适应线性元模型可 以完成某一种逻辑功能,因而我们也可以把自适应线 性元看成是一逻辑部件。 59 l每个自适应线性元的 功能也主要由各个权 值所确定。 l每个自适应

23、线性元只 能实现逻辑空间上的 线性划分。 121202 02211 )/(/ 0 xwwwwx wwxwxy 60 l网络模型 x1=1.2 x2=2.7 x0=1 w1=0.344 w2=1.1 w0=1 d=2.3 02211 wwxwxy y =4.57 E=-2.27 w0=0.870 w1=0.5 w2=0.749 y =3.305 E=-1.05 ii xXw)/( 2 5 . 0 61 l结束判据结束判据 总体误差降低到某个预 设的极小值; 迭代了一定的次数。 0 3 迭代次数 误差 62 63 l感知器神经网络的学习规则和最小均方差(LMS) 学习算法只能训练单层神经网络,而单

24、层神经网 络只能解决线性可分的分类问题。多层神经网络 可以用于非线性分类问题。但需要寻找训练多层 网络的学习算法。 lBP算法-适于多层网络的学习算法。 lBP网络广泛应用于函数逼近、模式识别/分类、数 据压缩等。 l80%90%的人工神经网络采用BP网络或者它的变 化形式,它也是前馈网络的核心部分,体现了人 工神经网络最精华的部分。 64 lBP神经元与其他神经元类 似,不同的是BP神经元的 传输函数为非线性函数,常 用的有S型函数。 lBP网络的信息从输入层流 向输出层,是一种多层前馈 神经网络。 i iijj ownet )( jj netfo x e xf 1 1 )( 65 l在确定

25、了BP网络的结构以后,要通过输入和输出样本 集对网络进行训练,亦即对网络的阈值和权值进行学 习和修正,以使网络实现给定的输入输出映射关系。 lBP网络学习分两个阶段: l第一个阶段是输入已知学习样本,通过设置的网络结 构和前一次迭代的权值和阈值,从网络的第一层向后 计算各神经元的输出 l第二个阶段是对权和阈值进行修改,从最后一层向前 计算各权值和阈值对总误差的影响(梯度),据此对 各权值和阈值进行修改。 l以上两个过程反复交替,直到达到收敛为止。 66 l由于误差逐层往回传递,以修正层与层之间的 权值和阈值,所以称该算法为误差反向传播算 法,这种误差反传学习算法可以推广到有若干 个中间层的多层

26、网络,因此该多层网络常称之 为BP网络。 67 lBP算法的基本过程 初始化阶段 前馈阶段 权值调整阶段 学习精度计算 学习结束判断 68 l对所有神经元的阈值及 连接权值取一个较小的 非零随机值。 l设一个较小的数作为学 习期望达到的最终学习 精度。该值作为学习过 程的结束判断条件。 69 l给定输入样本和理想输出。 l对p 层的神经元i,按下式计算 p 层中神经元i的活跃值,也即 输出到 p+1 层的输出值。 T m dddD),( 21 , T n xxxX),( 21 , )( exp1 1 j jijo w i o 70 l利用下面公式,从输 出层开始向输入层方 向进行权值调整: j

27、iijij otwtw)() 1( 71 l输出层误差项求解 l隐含层误差项求解 实际输出 理想输出 i d i y )(1 ( iiiii ydyy ik k kiii woo )1 ( 72 实际输出 理想输出 i d i y )(1 ( iiiii ydyy ik k kiii woo )1 ( l输出层误差项求解 l隐含层误差项求解 jiijij otwtw)() 1( 73 l若把层p中神经元的阈值 看成是层p-1中神经元到 某一个附加的常数输入 联接权值,也可以按照 类似的方法进行该神经 元阈值的修改。 实际输出 理想输出 i d i y 74 l按下式计算当前学习 样本的误差:

28、m i iik ydE 1 2 )( 实际输出 理想输出 i d i y 75 l在当前迭代周期内,样本学习完否?没有学习完, 转前馈阶段; l计算所有样本的累积误差: l判 E 否?是,学习过程结束,否则转前馈阶段。 pm E E p i i 1 76 l(1)从数学上看它是一个非线性优化问题,这就不可 避免地存在有局部极小问题; l(2)学习算法的收敛速度很慢,通常要几千步迭代或 更多; l(3)网络运行还是单向传播,没有反馈。目前的这种 模型并不是一个非线性动力系统,而只是一个非线性 映射; l(4)网络的隐节点个数选取尚无理论上的指导,而是 根据经验选取的; l(5)对新加入的样本要影

29、响到已经学完的样本,刻画 每个输入样本的特征的数目也要求必须相同。 77 l在BP算法中步长是不变的,这是因为E是一个 十分复杂的非线性函数,很难通过最优求极小 的方法得到步长,同时如果每一步都要求计算 输出,则计算量变得很大。 l推荐一种步长调整的方法,如下 )()()() 1(kwkkwkw 78 l步长调整方法:先设一初始步长,若一次迭代后 误差函数E增大,则将步长乘以小于1的常数,沿 原方向重新计算下一个迭代点,若一次迭代后误 差函数E减小,则将步长乘一个大于1的常数,这 样既不增加太多的计算量,又使步长得到合理的 调整。 0E1当 0E1当 79 l另外,有加入动量项的改进方法,有加

30、入 因 子的改进算法。 p1 l 80 l1、输入输出层的设计 l输入输出的维数完全根据使用者的要求来设计, 若BP网络用作分类器,其类别数为m个,那么 输出一般取m个神经元,其训练样本集中的x 属于第j类,要求输出为 l即第j个输出为1,其他输出为0。 jm T (0,0,1,0,0,0)y 81 l输入的神经单元可以根据需要求解的问题和数 据表示的方式而定 l如果输入的是电压波形,那么输入单元可根据 电压波形的采样数值和采样点数来决定输入单 元的维数,也可以用一个单元输入,但输入样 本为采样的时间序列。 l若输入为图像,则输入单元可以为图像像素, 也可为图像处理后的图像特征。 l即问题确定,输入输出单元层数确定。 82 l1989年,Robert证明了:对

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论