线性神经网络_第1页
线性神经网络_第2页
线性神经网络_第3页
线性神经网络_第4页
线性神经网络_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

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

文档简介

线性神经网络第一页,共十七页,编辑于2023年,星期三2.3.1线性神经元网络模型线性神经元模型它与感知器的主要不同之处在于其神经元有一个线性激活函数,这允许输出可以是任意值,而不仅仅只是像感知器中那样只能取0或1。第二页,共十七页,编辑于2023年,星期三2.3.1线性神经元网络模型线性神经元激活函数第三页,共十七页,编辑于2023年,星期三2.3.1线性神经元网络模型线性神经元网络分类图示双输入输出如下式所示第四页,共十七页,编辑于2023年,星期三2.3.1线性神经元网络模型线性神经网络的结构第五页,共十七页,编辑于2023年,星期三2.3.2线性神经网络的学习算法Widrow-Hoff学习规则又称为最小均方误差LMS(LeastMeanSquareError)学习算法,由Widrow-Hoff提出,属于有导师学习算法LMS学习规则定义如下:目标是通过调节权值,使mse从误差空间的某点开始,沿着mse的斜面向下滑行,最终使mse达到最小值。BernardWidrow第六页,共十七页,编辑于2023年,星期三2.3.2线性神经网络的学习算法算法实现步骤第一步:初始化给各个连接赋一个较小的随机值第二步:输入一个样本,计算连接权值的调整量第七页,共十七页,编辑于2023年,星期三2.3.2线性神经网络的学习算法其中表示第次循环中的第个输入向量。则有:第三步:调整连接权值根据负梯度下降的原则,网络权值和阈值修正公式如下式中为学习率,当其取较大值时,可以加快网络的训练速度,但是如果其值太大,会导致网络稳定性的降低和训练误差的增加。所以,为了保证网络进行稳定的训练,学习率的值必须选择一个合适的值。第八页,共十七页,编辑于2023年,星期三2.3.2线性神经网络的学习算法第四步:计算均方误差第五步:判断误差是否为零或者是否达到预先设定的要求。如果是,则结束算法,否则输入下一个样本,返回第二步进入下一轮求解过程第九页,共十七页,编辑于2023年,星期三2.3.3线性神经网络的MATLAB实现

MATLAB中线性神经网络相关的常用函数和基本功能函数名功能newlin()新建一个线性层learnwh()Widrow-Hoff的学习函数purelin()线性传输函数mse()最小均方误差性能函数第十页,共十七页,编辑于2023年,星期三2.3.3线性神经网络的MATLAB实现MATLAB中线性神经网络相关的常用函数和基本功能newlin()功能新建一个线性神经网络函数。格式

(1)net=newlin(2)net=newlin(PR,S,ID,LR)说明式(1)返回一个没有定义结构的空对象,并显示图形用户界面函数nntool的帮助文字;式(2)中net为生成的线性神经网络;PR为网络输入向量中的最大值和最小值组成的矩阵[Pmin,Pmax];S为输出向量的个数;ID为输入延时向量(可省略);LR为学习速率(可省略),默认值为0.01。learnwh()功能线性神经网络学习函数格式(1)[dW,LS]=learnwh(W,P,Z,N,A,T,E,gW,gA,D,LP,LS)(2)[db,LS]=learnwh(b,ones(1,Q),Z,N,A,T,E,gW,gA,D,LP,LS)

第十一页,共十七页,编辑于2023年,星期三2.3.3线性神经网络的MATLAB实现MATLAB中线性神经网络相关的常用函数和基本功能Purelin()功能纯线性传输函数格式A=purelin(N)说明函数purelin(N)为返回网络输入向量N的输出矩阵a;神经元最简单的传输函数是简单地从神经元输入到输出的线性传输函数,输出仅仅被神经元所附加的偏差所修正,newlin和newlind函数建立的网络都可以用该函数做为传递函数。mse()功能均方误差性能函数格式perf=mae(E,w,pp)说明perf表示均方误差,E为误差矩阵或向量(网络的目标向量与输出向量之差),w为所有权值和偏值向量(可忽略),pp为性能参数(可忽略)。第十二页,共十七页,编辑于2023年,星期三2.3.3线性神经网络的MATLAB实现例2-2要求设计一个线性神经网络,寻找给定数据之间的线性关系。P=[1.1-1.3];T=[0.61];%创建一个只有一个输出,输入延时为0,学习速率为0.01的线性神经网络,minmax(P)表示样%本数据的取值范围net=newlin(minmax(P),1,0,0.01);%对创建的线性神经网络进行初始化,设置权值和阈值的初始值net=init(net);net.trainParam.epochs=500;%设置网络训练后的目标误差为0.0001net.trainParam.goal=0.0001;net=train(net,P,T);y=sim(net,P)%求解网络的均方误差值E=mse(y-T)第十三页,共十七页,编辑于2023年,星期三2.3.3线性神经网络的MATLAB实现例2-2的输出结果%使用TRAINB作为训练函数,最大训练次数为500,开始训练时的均方误差值为0.68,%目标误差为0.0001>>TRAINB,Epoch0/500,MSE0.68/0.0001.......TRAINB,Epoch200/500,MSE0.000193748/0.0001.TRAINB,Epoch217/500,MSE9.87777e-005/0.0001.%训练到217次时,达到目标误差要求,结束训练TRAINB,Performancegoalmet.y=0.58830.9922E=9.8778e-005第十四页,共十七页,编辑于2023年,星期三2.3.3线性神经网络的MATLAB实现例2-2的训练误差曲线第十五页,共十七页,编辑于2023年,星期三2.3.3线性神经网络的MATLAB实现原数据关系与线性

温馨提示

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

评论

0/150

提交评论