《自适应滤波器的实现ppt课件.ppt》由会员分享,可在线阅读,更多相关《自适应滤波器的实现ppt课件.ppt(30页珍藏版)》请在三一办公上搜索。
1、第四章 自适应线性神经元,2006-11-28,1,北京科技大学 付冬梅,第四章 自适应线性神经元,自适应线性神经元模型 单个自适应线性神经元的学习方法 单层自适应线性神经元的学习方法 MATLAB程序仿真 关于自适应线性神经元的几点说明,2006-11-28,2,北京科技大学 付冬梅,4.1自适应线性神经元模型,线性神经元模型如图所示:I/O关系 a=purelin(W*P+b),2006-11-28,3,北京科技大学 付冬梅,2006-11-28,4,北京科技大学 付冬梅,基于最小二乘的一次性学习算法,4.2单个自适应线性神经元的学习方法,注意到O=KO+b,所以有O=(O-b)/K,同理
2、有: y=(y-b)/K,所以X,Y仍是样本对。,2006-11-28,5,北京科技大学 付冬梅,基于梯度的学习算法(内部反馈),后),对于输入 ,,个,次学习以后(即得到第,设经过,后,或者没有初始权值,感知机的输出为:,其中,4.2单个自适应线性神经元的学习方法,2006-11-28,6,北京科技大学 付冬梅,4.2单个自适应线性神经元的学习方法,2006-11-28,7,北京科技大学 付冬梅,4.2单个自适应线性神经元的学习方法,2006-11-28,8,北京科技大学 付冬梅,理想输出不一定非得是+1或-1,可以使其他的实数。,4.2单个自适应线性神经元的学习方法,2006-11-28,
3、9,北京科技大学 付冬梅,基于梯度的学习算法(外部反馈),后),对于输入 ,,个,次学习以后(即得到第,设经过,后,或者没有初始权值,感知机的输出为:,其中,4.2单个自适应线性神经元的学习方法,2006-11-28,10,北京科技大学 付冬梅,根据建立在梯度法基础上的最小均方差(LMS)算法得知,被调整的参数(这里是,)的修改应该向着梯度的反方向进行,,此处梯度为:,因此我们有:,即:,4.2单个自适应线性神经元的学习方法,基于梯度的学习算法(外部反馈),2006-11-28,11,北京科技大学 付冬梅,4.3单层自适应线性神经元的学习方法,基于最小二乘的一次性学习算法,2006-11-28
4、,12,北京科技大学 付冬梅,基于梯度的学习算法,设样本集为(X,Y),取 、 样本。设已训练了n0次得到的权值为:,则由网络计算得到的输出为:,4.3单层自适应线性神经元的学习方法,2006-11-28,13,北京科技大学 付冬梅,用分量表示之为:,则此时网络的误差为:,根据梯度下降法我们可以知道:,4.3单层自适应线性神经元的学习方法,2006-11-28,14,北京科技大学 付冬梅,故有:,4.3单层自适应线性神经元的学习方法,2006-11-28,15,北京科技大学 付冬梅,由此可得递推算法如下:,(1)随机初始化权值和阈值,即令:,系数取不等于零的正小数 ,以使初始化权值比较小。,(
5、2)在样本集合(X,Y)中,任选一个 和 作为训练样本,计算感知器的实际输出:,4.3单层自适应线性神经元的学习方法,2006-11-28,16,北京科技大学 付冬梅,3)若 (规定的最小误差),则不需调整权值,回到(2)步,取另一样本进行训练,否则进行如下的(4)步。,4)调整权值:然后返回2)。,4.3单层自适应线性神经元的学习方法,2006-11-28,17,北京科技大学 付冬梅,4.4 MATLAB程序仿真,例1、设计自能够适应线性神经网络实现从输入矢量到输出矢量的变换关系,其输入矢量和输出矢量分别为: P=1.0 -1.2 T=0.5 1.0程序1P=1.0 -1.2;T=0.5 1
6、.0;Q,R=size(P);S,Q=size(T);lr=0.4*maxlinlr(P); %最佳学习率net=newlin(minmax(P),S,0,lr); %创建线性网络net.inputWeights1,1.initFcn=rands; %初始化权值net.biases1.initFcn=rands; %初始化偏差net=init(net); %把初始化的权值和偏差函数赋给网络,2006-11-28,18,北京科技大学 付冬梅,W0=net.iw1,1 %显示初始化权值和偏差B0=net.b1net.trainParam.epochs=20; %最大循环次数net.trainPar
7、am.goal=0.001; %期望误差net,tr=train(net,P,T); %进行线性自适应网络权值的训练W=net.iw1,1 %显示训练好的初始化权值和偏差B=net.b1,4.4 MATLAB程序仿真,W = -0.2475B = 0.7431,2006-11-28,19,北京科技大学 付冬梅,例1、设计自能够适应线性神经网络实现从输入矢量到输出矢量的变换关系,其输入矢量和输出矢量分别为: P=1.0 -1.2 T=0.5 1.0程序2P=1.0 -1.2;T=0.5 1.0;net=newlind(P,T); %得到准确的线性自适应网络W=net.iw1,1 %显示训练好的初
8、始化权值和偏差B=net.b1,4.4 MATLAB程序仿真,W = -0.2273B = 0.7273,2006-11-28,20,北京科技大学 付冬梅,例2:设计自能够适应线性神经网络实现从输入矢量到输出矢量的变换关系,其输入矢量和输出矢量分别为:P=1.0 1.5 1.2 -0.3 -1.0 2.0 3.3 -0.5 2.0 1.0 -1.6 0.9T=0.5 3.0 -2.2 1.4 1.1 -1.2 1.7 -0.4 3.0 0.2 -1.8 -0.4 -1.0 0.1 -1.0 0.6,4.4 MATLAB程序仿真,2006-11-28,21,北京科技大学 付冬梅,程序:P=1.0
9、 1.5 1.2 -0.3 -1.0 2.0 3.3 -0.5 2.0 1.0 -1.6 0.9;T=0.5 3.0 -2.2 1.4 1.1 -1.2 1.7 -0.4 3.0 0.2 -1.8 -0.4 -1.0 0.1 -1.0 0.6;Q,R=size(P);S,Q=size(T);lr=0.9*maxlinlr(P); %最佳学习率net=newlin(minmax(P),S,0,lr); %创建线性网络net.inputWeights1,1.initFcn=rands; %初始化权值net.biases1.initFcn=rands; %初始化偏差,4.4 MATLAB程序仿真,2
10、006-11-28,22,北京科技大学 付冬梅,net=init(net); %把初始化的权值和偏差函数赋给网络W0=net.iw1,1 %显示初始化权值和偏差B0=net.b1A=sim(net,P)e=T-A; %求训练前网络的输出误差sse=(sumsqr(e)/(S*Q); %求误差平方和的平均值fprintf(Before training ,sum squrared error=%g.n,sse) %显示训练前网络的均方差net.trainParam.epochs=400; %最大循环次数net.trainParam.goal=0.0001; %期望误差net,tr=train(n
11、et,P,T); %进行线性自适应网络权值的训练W=net.iw1,1 %显示训练好的初始化权值和偏差B=net.b1,4.4 MATLAB程序仿真,2006-11-28,23,北京科技大学 付冬梅,W = -2.7153 2.4511 3.5284 2.3781 -1.9358 -2.3482 2.2205 -1.3512 -0.1580 -1.7947 1.0453 1.1494B = -1.3735 1.4670 -0.2634 -0.4531,4.4 MATLAB程序仿真,2006-11-28,24,北京科技大学 付冬梅,4.5关于自适应线性神经元的几点说明,一、自适应线性神经元与感知
12、器的不同之处,1)网络模型的不同:,感知器是二值形式的,自适应线性神经元是线性的。前者只能作分类工作,后者可以完成分类以及线性逼近任务。,2)学习算法的不同:,感知器的学习算法是最早提出的可收敛的学习算法,算法的本质是:如果网络的计算输出与样本不同,则表明分类错误,则自动修正权值。 自适应线性神经元的学习算法是:使网络计算输出与样本输出之间的误差达到最小的梯度下降法。这种算法是感知器学习算法的推广,而BP算法又是本算法的进一步推广。,2006-11-28,25,北京科技大学 付冬梅,4.5关于自适应线性神经元的几点说明,3)适应性与局限性的不同:,感知器:适应对线性可分问题进行线性分类;自适应
13、线性神经元:适应对线性可分问题进行线性分类, 还可以实现线性逼近,可用于系统 线性的建模,即线性辨识问题。,二、自适应线性神经元的应用,1)系统的线性辨识:,自适应线性网络的输入P与输出Y的关系可以表达为:,Y=W*P,从自动可知理论的角度来说,可以将W看成是传递函数,但是W不是计算得到的,而是学习训练出来的,而且,2006-11-28,26,北京科技大学 付冬梅,4.5关于自适应线性神经元的几点说明,W只能表达P、Y之间的线性关系。当某系统的输入输出之间是非线性关系时,通过网络的训练和学习,可以得出线性逼近关系,这就是线性逼近模型的建立过程。,2)自适应滤波器的实现:,自适应滤波是自适应线性
14、神经元的主要应用领域之一。,自适应滤波器网络的输入/输出关系为:,结构图如左图所示。,2006-11-28,27,北京科技大学 付冬梅,4.5关于自适应线性神经元的几点说明,若是多如多出关系,则如右图和下式所示:,3)线性化建模:,一般情况下,线性自适应网络能够给出满足误差要求的网络权值,这个求解过程就是设计一个线性自适应网络,也就是从系统的输入输出样本对中获得线性模型的过程。,2006-11-28,28,北京科技大学 付冬梅,4.5关于自适应线性神经元的几点说明,所获得的线性模型形式一般为:,这实际上是自适应滤波器的一个推广使用情况。输入和输出样本分别是y(k)和u(k)。同学们可自行设计完成之。,4)噪声的消除:,可以采用线性自适应网络去逼近带有噪声信号n(k)的有用信号m(k)。原理如右图所示。e(k)是逼近误差。,2006-11-28,29,北京科技大学 付冬梅,本章结束,谢谢大家!,2006-11-28,30,北京科技大学 付冬梅,