课件:神经网络感知机

上传人:优*** 文档编号:85000697 上传时间:2019-03-06 格式:PPT 页数:53 大小:1.22MB
返回 下载 相关 举报
课件:神经网络感知机_第1页
第1页 / 共53页
课件:神经网络感知机_第2页
第2页 / 共53页
课件:神经网络感知机_第3页
第3页 / 共53页
课件:神经网络感知机_第4页
第4页 / 共53页
课件:神经网络感知机_第5页
第5页 / 共53页
点击查看更多>>
资源描述

《课件:神经网络感知机》由会员分享,可在线阅读,更多相关《课件:神经网络感知机(53页珍藏版)》请在金锄头文库上搜索。

1、1,感知机,人工神经网络模型,大脑是由生物神经元构成的巨型网络,它在本质上不同于计算机,是一种大规模的并行处理系统,它具有学习、联想记忆、综合等能力,并有巧妙的信息处理方法。,3,人工神经网络是模拟人脑思维方式的数学模型,从微观结构和功能上对人脑进行抽象和简化,模拟人类智能。人工神经网络(简称神经网络)也是由大量的、功能比较简单的形式神经元互相连接而构成的复杂网络系统,用它可以模拟大脑的许多基本功能和简单的思维方式。,4,我们不可能对生物学上的神经网络作完全的了解,只可能在某种成度上描述我们所了解的情况。同样,人工神经网络也只可能是在某种程度上对真实的神经网络的一种模拟和逼近。,5,神经元模型

2、 生物神经元模型 神经元neuron,neural cell也就是神经细胞。人脑就是由大量神经元组合而成的。 神经元由 细胞体、树突和轴突组成。 中心 接受器 传导信息,人工神经元模型,如图所示,感知机是最早被设计并被实现的人工神网络。感知器是一种非常特殊的神经网络,它在人工神经网络的发展历史上有着非常重要的地位,尽管它的能力非常有限,主要用于线性分类。,或,某个神经元 j 的输入输出关系为 其中, 为阀值, 为连接权,f()为变换函数,也称活化函数(activation function)。,9,感知机的结构,10,我们以单层感知器来说明: 两个输入 x1 和 x2 。 一个阀值 两个待调整

3、的权值W1和W2 决策函数为 样本集分别属于2类。,11,1 特点:,)多输入,单输出 )激活函数传递函数为二值,一般为阶跃函 数或符号函数 )输出为二值:或 ),1 u0,-1 u 0,或,1 u0, u 0,12,2 感知机的工作方式: 学习阶段修改权值 (根据“已知的样本”对权值不断修改;有导师学习) 工作阶段 计算单元变化,由响应函数给出新输入下的输出。,13,样本:,pp1, p2 pp,Yy1, y2 yp,学习的过程,主要是修正权值,阈值,感知机的学习阶段:,14,设有N个训练样本 当给定某个样本p的输入/输出模式对时,感知机输出单元会产生一个实际输出向量,用期望输出(样本输出)

4、与实际输出之差来修正网络连接权值。,15,权值修改采用简单的误差学习规则 基本思想: 利用某个神经单元的期望输出与实际输出之间的差来调整该神经单元与上一层中相应神经单元的的连接权值,最终减小这种偏差。 即:神经单元之间连接权的变化正比于输出单元期望输出与实际的输出之差,16,对于所有的i和j,il,2,s;j1,2,r,感知器修正权值公式为:,上述用来修正感知器权值的学习算法在MATLAB神经网络工具箱中已编成了子程序,成为一个名为1earnp.m的函数。只要直接调用此函数,即可立即获得权值的修正量。此函数所需要的输入变量为:输入、输出矢量和目标矢量:P、A和T。调用命令为: dW,dBlea

5、rnp(P,A,T);,(4-5),17,输入矢量P,输出矢量Y,目标矢量为T的感知器网络,其学习规则为:,如果第i个神经元的输出是正确的,即有:yiti,那么与第i个神经元联接的权值wij和偏差值bi保持不变;,18,如果第i个神经元的输出是0,但期望输出为1,即有yi0,而ti1,此时权值修正算法为:新的权值wij为旧的权值wij加上输入矢量pj;类似的,新的偏差bi为旧偏差bi加上它的输入1;,19,如果第i个神经元的输出为1,但期望输出为0,即有yi1,而ti0,此时权值修正算法为:新的权值wij等于旧的权值wij减去输入矢量pj;类似的,新的偏差bi为旧偏差bi减去1。,20,感知器

6、学习规则的实质为:权值的变化量等于正负输入矢量。,21,举例:用感知器实现“与”的功能,1)设w1=0;w2=0; =0; 2 ) 输入x=x1,x2 输出y 样本:x1=0 0 1 1 x2=0 1 0 1 y=0 0 0 1,要求:确定此感知器中的3个参数“w1,w2,”。,22,即,,,时 y1=0, y2=0, y3=0, y4=1;,23,计算感知机在ui作用下的输出yi 由模型可描述为:,j=1,2 n=2 i=1,2,3,4, 用矩阵表示为,24,由响应函数,Y=1 1 1 1, 即y1=y2=y3=y4=1;,25,调整权值和阈值 由ei(t)=|di-yi(t)| e(t)=

7、(1,1,1,0) 求E(t)=3 ,设0.5 w1(t+1)=w1(t)+(|di-yi(t)|x1) =0+0.5(1,1,1,0)(0,0,1,1)=0.5; w2(t+1)=w2(t)+(|di-yi(t)|x2) =0+0.5(1,1,1,0)(0,1,0,1)=0.5; (t+1)= (t)+( E(t)2=0+9=9; 由此w1=0.5,w2=0.5, =9; 返回重新计算,直到E满足要求。,26,err_goal=0.001;lr=0.9; max_expoch=10000; X=0 0 1 1;0 1 0 1;T=0 0 0 1; M,N=size(X);L,N=size(T

8、); Wij=rand(L,M);y=0;b=rand(L); for epoch=1:max_expoch NETi=Wij*X; for j=1:N for i=1:L if(NETi(i,j)=b(i) y(i,j)=1; else y(i,j)=0; end end end,E=(T-y);EE=0; for j=1:N EE=EE+abs(E(j); end if(EEerr_goal) break end Wij=Wij+lr*E*X; %调整权值 b=b+sqrt(EE); %调整阈值 end epoch,Wij,b,27,算法步骤:,)设输入变量为x1,x2,xm;(j=1 ,

9、2,m),设置权系数初值wj(wj一般取-1,1之间的随机小数); )确定学习样本,即给定输入输出样本对, 输入:u=u1,u2un, ,(i=1,2,n) 输出:d=d1,d2dn, (i=1,2,n),28,)分别计算感知机在ui作用下的输出yi ; t指第t次计算并调整权值。,29,)调整权值和阈值 (1)求ei(t)=di-yi(t) (2)求E(t)若E(t) 0,调整权值; wj(t+1)=wj(t)+(di-yi(t)xji),写出矩阵为W(t+1)=W(t)+ (di-yi(t)ui); (t+1)= (t)+( E(t)2 返回3 若E(t)满足要求则结束。 :训练步长,一般

10、01 ,大收敛快,易振荡, 小,收敛慢,不易振荡,30,工作阶段 例题 x1为考试成绩、x2为平时成绩,将x1、x2作为两个输入,构建两输入、单输出的感知机实现成绩评定系统其权值w1=0.7、w2=0.3,阈值=60。求下列成绩的评定结果。,31,Net,32,%沿用例“求与”第二阶段工作期,验证网络 X1=X; NETi=Wij*X1;M,N=size(X1); for j=1:N for i=1:L if(NETi(i,j)=b(i) y(i,j)=1; else y(i,j)=0; end end end y,33,初始化:initp 训练:trainp 仿真: simup 初始化: i

11、nitp 可自动产生-1,1区间中的随机初始权值和阈值, 例: w,b=initp(2,8) 或 w,b=initp(p,t),34,训练: trainp 感知器网络学习和仿真的过程 tp=disp_freq max_epoch; (显示频率和训练的最大步数) w,b,te=trainpw,b,p,t,tp; Train函数完成每一步训练后,返回新的网络权值和阈值,并显示已完成的训练步数ep及误差te,35,仿真: simup 注意:使用trainp函数并不能保证感知器网络在取训练所得到的权值和阈值时就可以顺利达到要求,因此,训练完成后,最好要验证一下: a=simupp,w,b; if al

12、l(a=t); disp(Itworks!); end,36,%直接利用mat 工具箱(initp trainp simup) clear all NNTWARN OFF p=0 0 1 1 ; 0 1 0 1 t=0 0 0 1 w1,b1=initp(p,t) %初始化 w1,b1,epoches,errors=trainp(w1,b1,p,t,-1);%训练 %计算完毕 figure(2); ploterr(errors) a1=simup(p,w1,b1);%仿真 a1 if all(a=t),disp(It works!); e=t-a1; k=1:1:4; figure(3); p

13、lot(k,e),37,感知器的图形解释,由感知器的网络结构,我们可以看出感知器的基本功能是将输入矢量转化成0或1的输出。这一功能可以通过在输人矢量空间里的作图来加以解释。,感知器权值参数的设计目的,就是根据学习法则设计一条W*P+b0的轨迹,使其对输入矢量能够达到期望位置的划分。,38,以输入矢量r2为例,对于选定的权值w1、w2和b,可以在以p1和p2分别作为横、纵坐标的输入平面内画出W*P+bw1 p1十w2 p2十b0的轨迹,它是一条直线,此直线上的及其线以上部分的所有p1、p2值均使w1 p1十w2 p2十b0,这些点若通过由w1、w2和b构成的感知器则使其输出为1;该直线以下部分的

14、点则使感知器的输出为0。,39,所以当采用感知器对不同的输入矢量进行期望输出为0或1的分类时,其问题可转化为:对于已知输入矢量在输入空间形成的不同点的位置,设计感知器的权值W和b,将由W*P+b0的直线放置在适当的位置上使输入矢量按期望输出值进行上下分类。,40,输入矢量平面图,w的解并不唯一,能把两类分开即可,由于网络是以w1x1+w2x2+=0为分界线的,这可以看成一直线或一超平面。,所以,感知机具有线性分类能力,可用于两类模式分类,得到的w1,w2,不唯一,但只限于线性分类。,举例:用感知机实现“与”的功能,感知机只能对线性可分离的模式进行正确的分类。当输入模式是线性不可分时,则无论怎样

15、调节突触的结合强度和阈值的大小也不可能对输入进行正确的分类。,局限:,所以在1969年,Minsky和Papert发表了名为Perceptron的专著, 书中指出,这样的简单的线性感知器的功能非常有限,使得随后的研究处于低潮。,“或”运算,“异或”运算,可实现分类,无法用一条直线划分,对于异或,不能实现正确分类,16个布尔代数表,对y6和y9的情况,找不到相应的直线,感知机无法处理,46,(特征检测器),解决方法:构造多层感知机网络,即含有隐层的网络,但只能修改最后一层权值阈值,例:如图是一个含有两个输入,三个感知机隐层神经元和一个输出神经元的三层感知机网络,若取,y1,y2,z,x1,x2,y3,y1=sgn(2x1+2x2+1) y2=sgn(-x1+0.25x2+0.8) y3=sgn(0.75x1-2x2+1.4) z = sgn(y1+y2+y3-3),实现了非线性分类,y1,y2,y3,感知机小结:,1)训练时,逐个取样本进行计算,修改权值阈值 2)对于线性可分问题,1层感知机网络可以实现; 对于线性不可分问题,需2层或以上感知机网络 3)感知机只能解决输出是两态(二值)的问题,输出是0/1 4)单层感知机具有线性分类能力,M

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 医学/心理学 > 基础医学

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号