人工智能导论实验

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

人工智能导论实验指导书

实验二

一、实验名称:神经网络实验

二、实验日期:实际上机日期

三、参考资料:《人工智能导论实验指导书》

四、实验目的:

1.熟悉Matlab的应用开发环境

2.了解Matlab语言中常量、变量的表示方法

3.在Matlab环境下,进行神经网络建模解决函数拟合问题。

五、实验内容(步骤):

目标函数位:z=(cos (6*a*pi*x) + 2*(y.^2) + 1 + a*x*y)/2.5-0.6 (a=0.1)

%%%%%%%%%%%

%question.m

% Function recognition by a nerual network

%%%%%%%%%%%

clear all;

close all;

t=-1:0.22:1;

[x,y] = meshgrid(t,t);

P=[x(:)';y(:)'];

tt=-0.89:0.22:0.89;

[xx,yy] = meshgrid(tt,tt);

PP=[xx(:)';yy(:)'];

a=0.1;

z=(cos (6*a*pi*x) + 2*(y.^2) + 1 + a*x*y)/2.5-0.6; % The target results for training T=z(:)';

zz=(cos (6*a*pi*xx) + 2*(yy.^2) + 1 + a*xx*yy)/2.5-0.6; % The actual results of test set TT=zz(:)';

net=newff([-1 1; -1 1],[5,1],{'tansig','purelin'},'traingdx');

net.trainParam.lr=0.01; % The learning rate

net=init(net); %initialize

net.trainParam.epochs=1000; % set epochs

net=train(net,P,T); % Train the ANN

RR=sim(net,PP); % Get the approximate result

Erms=mean((RR(:)-zz(:)).^2,1); % Mean Square Error fprintf('\nErms is %f \n',Erms);

figure('name','true and estimate 3d plot');

plot3(xx(:),yy(:),zz(:),'b'); hold on;

plot3(xx(:),yy(:),RR(:),'r'); hold off;

figure('name','true and estimate 3d surface');

surf(xx,yy,zz); hold on;

surf(xx,yy,reshape(RR(:),9,9)); hold off;

相关文档
最新文档