您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > AI人工智能 > 《神经网络技术与应用》程序题答案
《神经网络技术与应用》试题1.人工神经网络常用的学习方法有哪些?各有哪些特点?(10分)2.简述感知器的网络结构、工作原理及主要应用领域。(10分)3.试推导三层前馈网络BP算法权值修改公式,并用BP算法学习如下函数:xexxxxf25sin2cos)(,55x基本步骤如下:(1)在区间]55[,上均匀选取N个点(N自行设定),计算)(xf的实际值,并由此组成网络的样本集;(2)自行构造前馈网络结构,用BP算法和样本集训练网络,使网络误差小于某个很小的正数;(3)在区间]55[,上随机选取M个点(NM,最好为非样本点),用学习后的网络计算这些点的输出值,并与这些点的理想输出值比较,绘制误差曲线;(4)说明不同的N、值对网络学习效果的影响。(15分)4.简述CMAC网络的结构及特点。(10分)5.试用RBF网络学习一下函数(步骤可参看第3题):2121222132312157623xxxxxxxx)x,x(f其中:551x,552x。若输入信号的分辨率不同时,对算法的收敛过程有何影响。(15分)6.用Hopfield网络对如下字符进行识别:字符“0”字符“1”字符“2”字符“3”字符“4”字符“6”字符“”字符“9”(1)试确定网络结构和网络权值;(2)将污染率为10%字符“0”、“1”、“2”、“3”(随机设定)输入网络,给出网络收敛后的结果。(3)将污染率为20%字符“4”、“6”、“9”(随机设定)输入网络,给出网络收敛后的结果。(20分)7.简述ART-1网络的结构和工作过程。(10分)8.结合自己的研究方向,谈谈如何应用神经网络理论和知识解决面临的实际问题,要求给出实例。(10分)3.程序如下x=-5:0.001:5;y=cos(x)+2*sin(x)+5*x+exp(2*x);net=newff(minmax(x),[8,1],{'tansig','purelin'},'trainlm');net.trainparam.epochs=10000;net.trainparam.goal=0.01;[net,tr]=train(net,x,y);plot(x,y)title('标准输出');holdoffy4=sim(net,x);plot(x,y4)plot(x,y4,'b')plot(x,y4,'g')title('样本不变情况下训练后输出');y1=cos(x1)+2*sin(x1)+5*x1+exp(2*x1);x1=-5:0.0009:5;y1=cos(x1)+2*sin(x1)+5*x1+exp(2*x1);plot(x1,y1,'r');title('样本改变后标准输出');y2=sim(net,x1);plot(x1,y2,'g');title('样本改变后训练输出');err=y2-y1;plot(x1,err,'b');title('误差曲线');N越大,训练次数越少,网络性能越好,学习效果变好,但是N太大会导致计算机单步计算时间变长;越大,训练次数越少,训练时间减少,网络性能变差,学习效果变坏;总体上说,N越大,越小,学习效果会越好。但是会牺牲时间,有时候系统可能会达不到的训练要求。5.clearx=rand(2,1000);x=(x-0.5)*10;x1=x(1,:);x2=x(2,:);y=x1.^3+x2.^3+3*x1.^2+6*x1+7*x2+5*x1.*x2;net=newrb(x,y);NEWRB,neurons=0,MSE=9868.38NEWRB,neurons=25,MSE=136.414NEWRB,neurons=1000,MSE=1.41658e-010[i,j]=meshgrid(-5:0.1:5);row=size(i);tx1=i(:);tx1=tx1';tx2=j(:);tx2=tx2';tx=[tx1;tx2];ty=sim(net,tx);v=reshape(ty,row);figuremesh(i,j,v);zlim([-200,600]);title('rbf网络');[x1,x2]=meshgrid(-5:0.05:5);y=x1.^3+x2.^3+3*x1.^2+6*x1+7*x2+5*x1.*x2;mesh(x1,x2,y)title('函数曲面图');mesh(x1,x2,v-y);title('误差曲面效果图')输入信号分辨率越高,学习速率越低,需要更多时间才能完成rbf网络的训练,算法收敛过程变慢,学习效果变好;过大的分辨率可能会导致计算机内存溢出而崩溃。6.程序如下:zero=[-1-1-1-1-1-1-1-1-1-1;-1-1-11111-1-1-1;-1-1111111-1-1;-1111-1-1111-1;-1111-1-1111-1;-1111-1-1111-1;-1111-1-1111-1;-1111-1-1111-1;-1111-1-1111-1;-1-1111111-1-1;-1-1-11111-1-1-1;-1-1-1-1-1-1-1-1-1-1];.....one=-1*one;zero=-1*zero;two=-1*two;I=[zero;one;two;three]';subplot(3,4,1);imshow(imresize(zero,20));title('标准字符0');subplot(3,4,2);imshow(imresize(one,20));title('标准字符1');subplot(3,4,3);imshow(imresize(two,20));title('标准字符2');subplot(3,4,4);imshow(imresize(three,20));title('标准字符3');net=newhop(I)rand('state',0);fori=1:120a=rand;ifa=0.3one(i)=-1*one(i);zero(i)=-1*zero(i);two(i)=-1*two(i);three(i)=-1*three(i);endendno0=zero;no1=one;no2=two;no3=three;subplot(3,4,5);imshow(imresize(zero,20));title('污染后字符0');subplot(3,4,6);imshow(imresize(one,20));title('污染后字符1');subplot(3,4,7);imshow(imresize(two,20));title('污染后字符2');subplot(3,4,8);imshow(imresize(three,20));title('污染后字符3');noise0={(no0)'};tu0=sim(net,{12,10},{},noise0);subplot(3,4,9);imshow(imresize(tu0{10}',20));title('收敛后字符0');noise1={(no1)'};tu1=sim(net,{12,10},{},noise1);subplot(3,4,10);imshow(imresize(tu1{10}',20));title('收敛后字符1');noise2={(no2)'};tu2=sim(net,{12,10},{},noise2);subplot(3,4,11);imshow(imresize(tu2{10}',20));title('收敛后字符2');noise3={(no3)'};tu3=sim(net,{12,10},{},noise3);subplot(3,4,12);imshow(imresize(tu3{10}',20));title('收敛后字符3');four=[1-1-11111-1-11;1-1-11111-1-11;1-1-11111-1-11;1-1-11111-1-11;1-1-11111-1-11;1-1-1-1-1-1-1-1-11;1-1-1-1-1-1-1-1-11;1111111-1-11;1111111-1-11;1111111-1-11;1111111-1-11;1111111-1-11;];......subplot(3,3,1);imshow(imresize(four,1));title('标准字符4');subplot(3,3,2);imshow(imresize(six,1));title('标准字符6');subplot(3,3,3);imshow(imresize(nine,1));title('标准字符9');k=10;I=[four;six;nine]';net=newhop(I)rand('state',0);fori=1:120a=rand;ifa=0.2four(i)=-1*four(i);six(i)=-1*six(i);nine(i)=-1*nine(i);endendno4=four;no6=six;no9=nine;subplot(3,3,4);imshow(imresize(four,1));title('污染后字符4');subplot(3,3,5);imshow(imresize(six,1));title('污染后字符6');subplot(3,3,6);imshow(imresize(nine,1));title('污染后字符9');noise4={(no4)'};tu4=sim(net,{12,k},{},noise4);subplot(3,3,7);imshow(imresize(tu4{k}',1));title('收敛后字符4');noise6={(no6)'};tu6=sim(net,{12,k},{},noise6);subplot(3,3,8);imshow(imresize(tu6{k}',1));title('收敛后字符6');noise9={(no9)'};tu9=sim(net,{12,k},{},noise9);subplot(3,3,9);imshow(imresize(tu9{k}',1));title('收敛后字符9');
本文标题:《神经网络技术与应用》程序题答案
链接地址:https://www.777doc.com/doc-7290119 .html