RBF神经网络.docx
- 文档编号:6374827
- 上传时间:2023-01-05
- 格式:DOCX
- 页数:8
- 大小:28.97KB
RBF神经网络.docx
《RBF神经网络.docx》由会员分享,可在线阅读,更多相关《RBF神经网络.docx(8页珍藏版)》请在冰豆网上搜索。
RBF神经网络
RBF神经网络
科学计算与数据处理实验报告
S312060007毛施平学姓名
号
实
验
RBF神经网络的非线性映射
名
称
1、深入研究MATLAB在神经网络方面的应用实
2、熟悉MATLAB中专业级Toolbox或Simulink的功能和用法验3、学会综合运用MATLAB解决神经网络方面的问题。
目
的
一、背景知识:
实
神经网络本质上是一个大规模非线性连续时间自适应的信息处理系统,通过大量验简单关系连接实现复杂的函数关系。
系统具有很强的鲁棒性和容错性,善于联想、概
括、类比和推广,有很强的自学习能力,可在学习过程中不断完善自己,不断创新。
神方
经网络模式识别理论的研究一直是非常活跃的学科,其发展与神经网络理论可以说是案同步。
RBF(Radialbasisfunction)网络是最早可能是Krige,他在1951年把矿藏
的沉积看成是一个各向同性的稳定的随机函数的实现.从而导出了广泛应用于
矿藏分析的Kriging方法。
1971年Hardy用径向基函数Multi-Quadric来处理飞
机外形设计曲面拟合问题,取得了非常好的效果。
1975年Duchon从样条弯曲能
最小的理论出发导出了多元问题的薄板样条.这些从不同领域导出的方法,事实
上都是径向基函数的插值方法,
二、BP学习过程
1、首先确定基函数的中心点和宽度
2、其次是权值的学习
本示例程序采用2层网络,隐层为径向基神经元,输出层为线性神经元,应用
newrb()函数构建径向基网络,预先设定均方差精度eg以及散布常数sc,本例中eg为
0.02,sc为1,。
应用grnn进行函数逼近,应用pnn进行变量的分类,使用离散的数
据点,通过更改输入变量进行网络测试,就可以模拟具有很好的非线性映射能力的RBF
神经网络。
三、实验步骤:
1、通过工具箱Toolbox函数newrb()函数构建径向基网络
2、通过改变输入值来获得不同的神经映射网络,来体会RBF神经网络的非线性
映射能力。
3、观察实验图形,总结实验。
1
1、实验程序实
验%应用newrb()函数构建径向基网络,对一系列数据点进行函数逼近
记P=-1:
0.1:
1;
录
T=[-0.9602-0.5770-0.07290.37710.64050.66000.4609...
0.1336-0.2013-0.4344-0.500-0.3930-0.1647-0.0988...
0.30720.39600.34490.1816-0.0312-0.2189-0.3201];
%绘制训练用样本的数据点
plot(P,T,'r*');
title('训练样本');
xlabel('输入向量P');
ylabel('目标向量T');
%设计一个径向基函数网络,网络有两层,隐层为径向基神经元,输出层为线性神经元
%隐层神经元的权值、阈值与径向基函数的位置和宽度有关,只要隐层神经元数目、权值、阈值
正确,可逼近任意函数
%例如
a2=radbas(p-1.5);
a3=radbas(p+2);
a4=a+a2*1.5+a3*0.5;
plot(p,a,'b',p,a2,'g',p,a3,'r',p,a4,'m--')
title('径向基传递函数权值之和')
xlabel('输入p');
ylabel('输出a');
%应用newrb()函数构建径向基网络的时候,可以预先设定均方差精度eg以及散布常数sc
eg=0.02;
2
sc=1;%其值的选取与最终网络的效果有很大关系,过小造成过适性,过大造成重叠性
net=newrb(P,T,eg,sc);%网络测试
plot(P,T,'*')
xlabel('输入');
X=-1:
.01:
1;
Y=sim(net,X);
holdon
plot(X,Y);
holdoff
legend('目标','输出')
%应用grnn进行函数逼近P=[12345678];
T=[01232121];
plot(P,T,'.','markersize',30)axis([09-14])
title('待逼近函数')
xlabel('P')
ylabel('T')
%网络设计
%对于离散数据点,散布常数spread选取比输入向量之间的距离稍小一些
spread=0.7;
net=newgrnn(P,T,spread);
3
%网络测试
A=sim(net,P);
holdon
outputline=plot(P,A,'o','markersize',10,'color',[100]);
title('检测网络')
xlabel('P')
ylabel('T和A')
%应用pnn进行变量的分类
P=[12;22;11];%输入向量
Tc=[123];%P对应的三个期望输出%绘制出输入向量及其相对应的类别plot(P(1,:
),P(2,:
),'.','markersize',30)fori=1:
3
text(P(1,i)+0.1,P(2,i),sprintf('class%g',Tc(i)))end
axis([0303]);
title('三向量及其类别')
xlabel('P(1,:
)')
ylabel('P(2,:
)')
%网络设计
T=ind2vec(Tc);
spread=1;
net=newgrnn(P,T,speard);
4
%网络测试
A=sim(net,P);
Ac=vec2ind(A);
%绘制输入向量及其相应的网络输出plot(P(1,:
),P(2,:
),'.','markersize',30)fori=1:
3
text(P(1,i)+0.1,P(2,i),sprintf('class%g',Ac(i)))
end
axis([0303]);
title('网络测试结果')
xlabel('P(1,:
)')
ylabel('P(2,:
)')
2、实验结果
第一步:
绘制训练用样本的数据点
0.8
0.6
0.4
0.2
0
-0.2
-0.4
-0.6
-0.8
-1-1-0.8-0.6-0.4-0.200.20.40.60.81
5
第二步:
设计一个径向基函数网络,网络有两层,隐层为径向基神经元,输出层为线性神经元
径向基传递函数权值之和
1.8
1.6
1.4
1.2
1
输出a0.8
0.6
0.4
0.2
0-3-2-10123
输入p
第三步:
网络测试结果(动态测试的结果)
NEWRB,neurons=0,MSE=0.175859
NEWRB,neurons=2,MSE=0.161543
NEWRB,neurons=3,MSE=0.125333
NEWRB,neurons=4,MSE=0.0273982
NEWRB,neurons=5,MSE=0.0255775
NEWRB,neurons=6,MSE=0.00133993
6
第四步:
应用grnn进行函数逼近,网络测试结果
检测网络
4
3.5
3
2.5
2
1.5T和A
1
0.5
0
-0.5
-10123456789
P
第五步:
应用pnn进行变量的分类
7
检测网络
4
3.5
3
2.5
class1class22
1.5T和A
1
0.5
0
-0.5
-10123456789
P
<1>通过本次试验,很好的熟悉了Toolbox中的函数的应用,尤其是统计工具箱里实
的一些函数。
验<2>本程序用到的是matlab的工具箱toolbox,参考了朱琳、王正林编著的《精通
MATLAB神经网络》一书的194~224页,一些功能函数的实际内容被隐藏,并不能深总
刻的理解工具箱的实际内容。
结<3>参考了《径向基函数(RBF)神经网络及其应用》一文,王炜1,吴耿锋2,张
博锋2,王媛2(1.上海市地震局,上海200062;2.上海大学计算机学院,上海
200072)
<4>对于MATLAB这一强大的工具有了更为深刻的认识,在以后的研究工作中可
以充分的利用其又是为自己的工作服务,从而提高效率
总之,通过这么课程是自己在科学计算及其仿真方面有了一些基础,为以后的研
究奠定了一定地基础,但是仅仅通过几节课的学习,还是无法掌握matlab强大的功能。
为此,还需要在以后的学习中多加以训练。
成
绩
评
定
注:
实验方案要详略得当、条理清晰,实验记录数据详实,实验总结应做高度归纳和提炼。
8
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- RBF 神经网络