神经网络学习算法matlab仿真(借鉴参照)

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

东南大学自动化学院

智能控制概论

神经网络学习算法研究

学院:

姓名:

学号:

日期:

目录

1 任务要求叙述 ..................................................... 错误!未定义书签。

2 系统分析及设计原理 ......................................... 错误!未定义书签。

3 设计实现.............................................................. 错误!未定义书签。4仿真验证.. (6)

5 讨论与分析.......................................................... 错误!未定义书签。

一.任务要求叙述

(1)任务

(a) 运行算法,观察和分析现有学习算法的性能;

clear all;close all;

nu=20;pi=3.1415926;

for i=1:nu

p(i)=2*pi*i/nu;

t(i)=0.5*(1+cos(p(i)));

end

minmax=[min(p(:)) max(p(:))]

net = newff([ 0 7],[6 1],{'logsig' 'purelin'},'traingd');% traingd traingdm trainlm

net.trainParam.epochs = 10000;

net.trainParam.goal = 0.0001;

net.trainParam.show=200;

net.trainParam.lr=0.1;

net.trainParam.mc=0.6; %0.9 default value; available for momentum

net = train(net,p,t);

y1 = sim(net,p);

figure(2);

plot(p,t,'*-',p,y1,'r--')

%************** test data ******************

nu2=nu*3/2;

for i=1:(nu2)

p2(i)=2*pi*i/(nu2);

t2(i)=0.5*(1+cos(p2(i)));

end

y2 = sim(net,p2);

figure(3);

plot(t2,'*-');hold on; plot(y2,'r');

xlabel('times');ylabel('outputs');

figure(4);

plot(t2-y2);

xlabel('times');ylabel('error');

(b) 为了进一步提高学习逼近效果,可以采取那些措施,调节规律如何?根据所提的每种措施,修改算法程序,给出仿真效果验证、过程以及相应的曲线图,给出适当的评述;(c) 联系、结合前向神经网络的算法样本学习、测试等过程,谈谈本人对神经网络系统的一些认识和看法。

(2)要求

提交完整的报告,包括:封面(题目、个人学号姓名等信息)、目录、任务要求叙述、系统分析及设计原理(包括神经网络学习过程的原理图及文字分析)、完整的设计实现过程(包括神经网络结构、参数等选择与实现、计算、原理过程等)、仿真验证(算法流程图、实现手段介绍、系统参数选择、曲线图、结合调参对响应曲线的影响给出必要的分析)、讨论与分析,总字数要求在2000以上。

二.系统分析及设计原理

(1)神经网络的学习算法

学习过程实质上是针对一组给定的输入),2,1(N p x p =使网络产生相应的期望输出的过程。总的来说,神经网络的学习算法分为两大类: 有导师学习和无导师学习。

图 1:有导师指导神经网络学习方式 图 2无导师指导神经网络学习方式 由上图可见,所谓有导师学习就是在训练过程中,始终存在一个期望的网络输出。期望输出和实际输出之间的距离作为误差度量并用于调整权值。而无导师学习指的是网络不存在一个期望的输出,因而没有直接的误差信息,因此,为实现对网络的训练,徐建立一个简洁的评价函数,以对网络的某种行为取向做出评价。

(2)多层传播网络的学习算法

给定N 组样本);,;,;,(2211p p T X T X T X 。这里i X 为i n 维输入矢量,i T 为o n 维期望的输出矢量,P i 2,1=,.假设矢量y 和o 分别表示网络的输出层和隐含层的输出矢量。则训练过程为:

(1) 选0>η,m ax E 作为最大容许误差,并将权系数,,2,1,,L l W l

l =θ初始化成某

一小的随机权矩阵。 0,1←←E p

(2) 训练开始

p p p T T X O ←←,)1(

相关文档
最新文档