收藏 分销(赏)

Grnn神经网络实现程序(基于Matlab).doc

上传人:Fis****915 文档编号:552171 上传时间:2023-12-06 格式:DOC 页数:3 大小:17.50KB
下载 相关 举报
Grnn神经网络实现程序(基于Matlab).doc_第1页
第1页 / 共3页
Grnn神经网络实现程序(基于Matlab).doc_第2页
第2页 / 共3页
Grnn神经网络实现程序(基于Matlab).doc_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

1、% 注本程序代码主体部分引自MATLAB神经网络30个案例分析% 为大家使用方便,本人在文件读入和输出部分做了修改,同时对关键语句进行了注释% 清空环境变量clc;clear allclose allnntwarn off;% 载入数据%建模数据_训练样本load D:NNSin.txt load D:NNSout.txt%检验数据_测试样本load D:NNStestin.txtload D:NNStestout.txt% 载入数据并将数据分成训练和预测两类p_train=in;t_train=out;p_test=testin;t_test=testout;% 交叉验证desired_sp

2、read=;mse_max=10e20;desired_input=;desired_output=;result_perfp=;indices = crossvalind(Kfold,length(p_train),4);%交叉验证函数,这里的4表示4折,即将length(p_train)个样本分成4组。h = waitbar(0,正在寻找最优化参数.) %进度条,h为句柄k=1;for i = 1:4 %这里4是将元数据分为4份,其中3/4用来训练,1/4用来检验 perfp=; disp(以下为第,num2str(i),次交叉验证结果) %disp:显示函数,num2srt:数字转字符

3、test = (indices = i); train = test; %为test及train赋值,注意这里的test及train均为逻辑值 p_cv_train=p_train(train,:); %通过逻辑值实现数据调取,从建模数据中选取 t_cv_train=t_train(train,:); %通过逻辑值实现数据调取,从建模数据中选取 p_cv_test=p_train(test,:); %通过逻辑值实现数据调取,从建模数据中选取 t_cv_test=t_train(test,:); %通过逻辑值实现数据调取,从建模数据中选取 p_cv_train=p_cv_train; %转置 t

4、_cv_train=t_cv_train; %转置 p_cv_test= p_cv_test; %转置 t_cv_test= t_cv_test; %转置 p_cv_train,minp,maxp,t_cv_train,mint,maxt=premnmx(p_cv_train,t_cv_train); %premnmx():将网络的输入数据或输出数据进行归一化,归一化后的数据将分布在-1,1区间内。 p_cv_test=tramnmx(p_cv_test,minp,maxp); %tramnmx():使网络所用的新数据和样本数据接受相同的预处理。 for spread=0.1:0.1:2; n

5、et=newgrnn(p_cv_train,t_cv_train,spread); waitbar(k/80,h); disp(当前spread值为, num2str(spread); test_Out=sim(net,p_cv_test); test_Out=postmnmx(test_Out,mint,maxt); %postmnmx()依照预处理的最大值最小值反向归一化。 error=t_cv_test-test_Out; disp(当前网络的mse为,num2str(mse(error) %mse()为均方函数。 perfp=perfp mse(error); if mse(error

6、)mse_max mse_max=mse(error); desired_spread=spread; desired_input=p_cv_train; desired_output=t_cv_train; end k=k+1; end result_perfp(i,:)=perfp;end;close(h)disp(最佳spread值为,num2str(desired_spread)disp(此时最佳输入值为)desired_input;disp(此时最佳输出值为)desired_output;% 采用最佳方法建立GRNN网络net=newgrnn(desired_input,desire

7、d_output,desired_spread);p_test=p_test;p_test=tramnmx(p_test,minp,maxp); %依照预定最大值及最小值进行归一化。grnn_prediction_result=sim(net,p_test); %利用已经建立的网络模型进行预测。grnn_prediction_result=postmnmx(grnn_prediction_result,mint,maxt); grnn_prediction_result = grnn_prediction_result; %转置预测结果。grnn_error=t_test-grnn_predi

8、ction_result; %模拟与实测误差。disp(GRNN神经网络三项流量预测的误差为,num2str(mse(grnn_error)% 预测结果导出模块save D:OUTgrnn_desired_input.txt desired_input -ascii; %导出优化建模数据-输入save D:OUTgrnn_desired_output.txt desired_output -ascii; %导出优化建模数据-输出save D:OUTgrnn_ p_test.txt p_test -ascii; %导出预测输入数据% 可对比save D:OUTgrnn_t_test.txt t_test -ascii; %导出实测数据save D:OUTgrnn_prediction_result.txt ninhao grnn_prediction_result -ascii; %导出预测数据

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 教育专区 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服