当前位置: 首页 > news >正文

四川手机网站南京网站开发招聘

四川手机网站,南京网站开发招聘,阿里云大使wordpress,烟台做网站基于WIN10的64位系统演示 一、写在前面 这一期#xff0c;我们使用Matlab进行GRNN模型的构建。 使用的数据如下#xff1a; 采用《PLoS One》2015年一篇题目为《Comparison of Two Hybrid Models for Forecasting the Incidence of Hemorrhagic Fever with Renal Syndrom…基于WIN10的64位系统演示 一、写在前面 这一期我们使用Matlab进行GRNN模型的构建。 使用的数据如下 采用《PLoS One》2015年一篇题目为《Comparison of Two Hybrid Models for Forecasting the Incidence of Hemorrhagic Fever with Renal Syndrome in Jiangsu Province, China》文章的公开数据做演示。数据为江苏省2004年1月至2012年12月肾综合症出血热月发病率。运用2004年1月至2011年12月的数据预测2012年12个月的发病率数据。 由于Matlab语言用的不多了。所以直接上我封装好的Matlab小程序即可。 二、GRNN模型简单介绍 GRNN广义回归神经网络Generalized Regression Neural Network是一种基于径向基函数Radial Basis Function, RBF的神经网络。GRNN 可以用于回归分析它提供了一种简单但强大的方法来估计给定输入的连续输出。 1GRNN 的基本结构和工作流程如下 输入层与输入数据的特征数相同的神经元数量。 模式层与训练数据的样本数相同的神经元数量。每个神经元与一个训练样本相关联。 径向基函数在模式层中每个神经元都使用一个RBF。RBF度量输入样本与相应的训练样本之间的距离并根据这个距离生成一个激活值。常用的RBF包括高斯函数。 输出层基于模式层神经元的激活值和相关权重计算的预测输出。在GRNN中输出是所有模式层神经元输出的加权平均。 GRNN的一个关键参数是平滑因子spread, 它决定了径向基函数的宽度。平滑因子对模型的性能有很大影响需要通过交叉验证等技术来确定。 2GRNN的优势 非参数性GRNN不假定数据的分布使其对各种数据分布都很鲁棒。 实时学习由于GRNN的直观结构新的样本可以在不重新训练整个模型的情况下轻松地加入。 只有一个主要超参数与其他神经网络相比GRNN仅有平滑因子作为主要超参数使其调优相对简单。 三、GRNN模型简单介绍 1.模型方法 运用时间序列的前N个数值来预测第N1个数值。首先将原始数据分为训练集和测试集通过逐步测试N值和spread值的方法来获取最优模型即模型的测试误差最小。然后用最优模型来预测所需要预测的数值。 2.界面介绍 如图一所示界面分为寻找最优模型参数界面和最优模型预测界面。 2.1寻找最优模型参数 2.1.1输入窗口 训练集 输入训练集数据。 测试集 输入测试集数据。 N值取值范围 输入N值的最大值以及最小值步长默认为1。其中最小值大于等于1最大值小于等于训练集数据个数。 光滑因子取值范围 输入光滑因子的最大最小值以及步长。该参数的取值范围越宽步长越小则程序运行的时间越长。为提升工作效率应合理取值。 测试集数据个数 输入测试数据的数目。 2.2.2输出窗口 最优N值 输出最优模型的N值。 最优光滑因子 输出最优模型的spread值。 以上两组输出窗口由 寻找 按钮实现。 拟合误差 MAE 输入模型拟合的平均绝对误差 MAPE 输出模型拟合的平均相对误差 MSE 输出模型拟合的均方误差 RMSE 输出模型拟合的均方根误差。 拟合效果图左一显示拟合值以及真实值曲线。 以上两组输出窗口由 拟合 按钮实现。 预测误差 MAE 输出模型预测的平均绝对误差 MAPE 输出模型预测的平均相对误差 MSE 输出模型预测的均方误差 RMSE 输出模型预测的均方根误差。 预测效果图右一显示预测值以及真实值曲线。 以上两组输出窗口由 预测 按钮实现。 2.2最优模型预测 2.2.1输入窗口 输入值 输入所有原始数据包括上一个界面的训练集和测试集。 最优N值 输入最优模型的N值。 最优光滑因子 输入最优模型的spread值。 预测个数 输入需要预测的数据的数目。 2.2.2输出窗口 预测值 输出预测值。点击 预测 按钮实现。 2.3重置 清空所有窗口进行下一组数据操作。 图一 单因素GRNN模型图形用户界面GUI 3.实例演示 这里我们采用《PLoS One》2015年一篇题目为《Comparison of Two Hybrid Models for Forecasting the Incidence of Hemorrhagic Fever with Renal Syndrome in Jiangsu Province, China》文章的公开数据做演示。数据为江苏省2004年1月至2012年12月肾综合症出血热月发病率。运用2004年1月至2011年12月的数据预测2012年12个月的发病率数据。 3.1构建最优模型 将数据拆分为训练集和测试集。其中将2004年1月至2011年10月的数据纳入训练集2011年11月和12月的数据纳入测试集。测试数据个数为2。N值取值范围选取1到94。光滑因子取值范围选取0.1到3步长为0.1。如图二所示点击 寻找。 弹出读条窗口说明程序开始运行运行时间取决于需要测试的N值和光滑因子的数目。 如图四所示程序运行完毕。显示最优N值和最优光滑因子分别为60和0.1。如果需要进一步精确光滑因子可以进行第二次程序寻优。例如将光滑因子范围选取0.01到0.2步长选择0.01N值范围选取60到60。进一步寻找更精确的最优光滑因子。这里不进行演示。 如图五所示点击 拟合 和 预测 按钮分别显示拟合效果以及测试效果的四种误差值和曲线图。 3.2最优模型预测 如图六所示输入全部原始数据即2004年1月至2011年12月的月发病率数据。最优N值输入60最优spread值输入0.1预测个数输入12。点击 预测如图七所示得出最终预测值。预测值以列的形式显示方便复制到Excel进行一步操作。 3.3预测效果 如表1所示模型预测效果精度较高。平均绝对误差为0.00767稍优于文章中ARIMA-GRNN模型的0.0078稍劣于文章中的ARIMA-NARNN模型的0.0074。 表1 单因素GRNN模型预测数值 时间 实际值 预测值 绝对误差 2012年1月 0.02659 0.03447 0.00788 2012年2月 0.01519 0.01710 0.00191 2012年3月 0.01519 0.01344 0.00176 2012年4月 0.03038 0.01731 0.01307 2012年5月 0.01772 0.02476 0.00703 2012年6月 0.02659 0.02647 0.00011 2012年7月 0.01013 0.01681 0.00668 2012年8月 0.00253 0.01132 0.00879 2012年9月 0.00760 0.01476 0.00717 2012年10月 0.02912 0.04103 0.01191 2012年11月 0.06457 0.07078 0.00621 2012年12月 0.07469 0.05523 0.01947 图二 寻找最优模型参数 图三 程序正在寻找最优模型参数 图四 显示最优N值以及最优spread值 图五 显示拟合效果以及预测效果误差值和曲线图 图六 输入原始数据和模型参数进行预测 图七 显示最终预测值以列显示 四、小软件安装在此处 1. 双击MCRInstaller.exe安装 2. 自动解压 3. 无脑点击下一步 4.安装完成。 四、底层代码 可能有需要我就贴上吧 function varargout GRNN3(varargin) gui_Singleton 1; gui_State struct(gui_Name, mfilename, ...gui_Singleton, gui_Singleton, ...gui_OpeningFcn, GRNN3_OpeningFcn, ...gui_OutputFcn, GRNN3_OutputFcn, ...gui_LayoutFcn, [] , ...gui_Callback, []); if nargin ischar(varargin{1})gui_State.gui_Callback str2func(varargin{1}); end if nargout[varargout{1:nargout}] gui_mainfcn(gui_State, varargin{:}); elsegui_mainfcn(gui_State, varargin{:}); end function GRNN3_OpeningFcn(hObject, eventdata, handles, varargin) handles.output hObject; guidata(hObject, handles); function varargout GRNN3_OutputFcn(hObject, eventdata, handles) varargout{1} handles.output; function xunlianji_Callback(hObject, eventdata, handles) input str2num(get(hObject,String)); guidata(hObject,handles); function xunlianji_CreateFcn(hObject, eventdata, handles) if ispc isequal(get(hObject,BackgroundColor), get(0,defaultUicontrolBackgroundColor))set(hObject,BackgroundColor,white); end function ceshiji_Callback(hObject, eventdata, handles) input str2num(get(hObject,String)); if (isempty(input))set(hObject,String,0) end guidata(hObject,handles); function ceshiji_CreateFcn(hObject, eventdata, handles) if ispc isequal(get(hObject,BackgroundColor), get(0,defaultUicontrolBackgroundColor))set(hObject,BackgroundColor,white); end function nmin_Callback(hObject, eventdata, handles) input str2num(get(hObject,String)); if (isempty(input))set(hObject,String,0) end guidata(hObject,handles); function nmin_CreateFcn(hObject, eventdata, handles) if ispc isequal(get(hObject,BackgroundColor), get(0,defaultUicontrolBackgroundColor))set(hObject,BackgroundColor,white); end function nmax_Callback(hObject, eventdata, handles) input str2num(get(hObject,String)); if (isempty(input))set(hObject,String,0) end guidata(hObject,handles); function nmax_CreateFcn(hObject, eventdata, handles) if ispc isequal(get(hObject,BackgroundColor), get(0,defaultUicontrolBackgroundColor))set(hObject,BackgroundColor,white); end function spreadmin_Callback(hObject, eventdata, handles) input str2num(get(hObject,String)); if (isempty(input))set(hObject,String,0) end guidata(hObject,handles); function spreadmin_CreateFcn(hObject, eventdata, handles) if ispc isequal(get(hObject,BackgroundColor), get(0,defaultUicontrolBackgroundColor))set(hObject,BackgroundColor,white); end function spreadmax_Callback(hObject, eventdata, handles) input str2num(get(hObject,String)); if (isempty(input))set(hObject,String,0) end guidata(hObject,handles); function spreadmax_CreateFcn(hObject, eventdata, handles) if ispc isequal(get(hObject,BackgroundColor), get(0,defaultUicontrolBackgroundColor))set(hObject,BackgroundColor,white); endfunction buchang_Callback(hObject, eventdata, handles) input str2num(get(hObject,String)); if (isempty(input))set(hObject,String,0) end guidata(hObject,handles); function buchang_CreateFcn(hObject, eventdata, handles) if ispc isequal(get(hObject,BackgroundColor), get(0,defaultUicontrolBackgroundColor))set(hObject,BackgroundColor,white); end function zuiyounzhi_Callback(hObject, eventdata, handles) function zuiyounzhi_CreateFcn(hObject, eventdata, handles) if ispc isequal(get(hObject,BackgroundColor), get(0,defaultUicontrolBackgroundColor))set(hObject,BackgroundColor,white); end function ss_Callback(hObject, eventdata, handles) function ss_CreateFcn(hObject, eventdata, handles) if ispc isequal(get(hObject,BackgroundColor), get(0,defaultUicontrolBackgroundColor))set(hObject,BackgroundColor,white); end function edit10_Callback(hObject, eventdata, handles) function edit10_CreateFcn(hObject, eventdata, handles) if ispc isequal(get(hObject,BackgroundColor), get(0,defaultUicontrolBackgroundColor))set(hObject,BackgroundColor,white); end function xunzhao_Callback(hObject, eventdata, handles) global A B C D E F G spread L n U A str2num(get(handles.xunlianji,String)); B str2num(get(handles.ceshiji,String)); C str2num(get(handles.nmin,String)); D str2num(get(handles.nmax,String)); E str2num(get(handles.spreadmin,String)); F str2num(get(handles.spreadmax,String)); G str2num(get(handles.buchang,String)); U str2num(get(handles.ceshixulie,String)); nlength(A); AA(:); UU(:); test[]; v waitbar(0,ÇëÉԵȡ¤¡¤¡¤) for L C:DA_nzeros(L1,n-L);for i1:n-LA_n(:,i)A(i:iL);endtrainxA_n(1:L,:);trainyA_n(L1,:);for spread E:G:Fnetnewgrnn(trainx,trainy,spread);aaA(end-L1:end);yesU;presim(net,aa);while length(pre)Baa[aa(2:end);pre(end)];yysim(net,aa);pre[pre;yy]; waitbar(spread/F) endmse2 mse(yes - pre);test[test;L spread mse2];end end for k 1:size(test,1)if test (k,3) min (test(:,3))L test(k,1);spread test(k,2);end end set(handles.zuiyou,String,num2str(spread)); set(handles.zuiyounzhi,String,num2str(L)); guidata(hObject,handles);function mae_Callback(hObject, eventdata, handles) function mae_CreateFcn(hObject, eventdata, handles) if ispc isequal(get(hObject,BackgroundColor), get(0,defaultUicontrolBackgroundColor))set(hObject,BackgroundColor,white); end function mape_Callback(hObject, eventdata, handles) function mape_CreateFcn(hObject, eventdata, handles) if ispc isequal(get(hObject,BackgroundColor), get(0,defaultUicontrolBackgroundColor))set(hObject,BackgroundColor,white); end function rmse_Callback(hObject, eventdata, handles) function rmse_CreateFcn(hObject, eventdata, handles) if ispc isequal(get(hObject,BackgroundColor), get(0,defaultUicontrolBackgroundColor))set(hObject,BackgroundColor,white); end function mse_Callback(hObject, eventdata, handles) function mse_CreateFcn(hObject, eventdata, handles) if ispc isequal(get(hObject,BackgroundColor), get(0,defaultUicontrolBackgroundColor))set(hObject,BackgroundColor,white); end function mae2_Callback(hObject, eventdata, handles) function mae2_CreateFcn(hObject, eventdata, handles) if ispc isequal(get(hObject,BackgroundColor), get(0,defaultUicontrolBackgroundColor))set(hObject,BackgroundColor,white); end function mape2_Callback(hObject, eventdata, handles) function mape2_CreateFcn(hObject, eventdata, handles) if ispc isequal(get(hObject,BackgroundColor), get(0,defaultUicontrolBackgroundColor))set(hObject,BackgroundColor,white); end function rmse2_Callback(hObject, eventdata, handles) function rmse2_CreateFcn(hObject, eventdata, handles) if ispc isequal(get(hObject,BackgroundColor), get(0,defaultUicontrolBackgroundColor))set(hObject,BackgroundColor,white); end function mse2_Callback(hObject, eventdata, handles) function mse2_CreateFcn(hObject, eventdata, handles) if ispc isequal(get(hObject,BackgroundColor), get(0,defaultUicontrolBackgroundColor))set(hObject,BackgroundColor,white); end function shuruzhi_Callback(hObject, eventdata, handles) input str2num(get(hObject,String)); guidata(hObject,handles); function shuruzhi_CreateFcn(hObject, eventdata, handles) if ispc isequal(get(hObject,BackgroundColor), get(0,defaultUicontrolBackgroundColor))set(hObject,BackgroundColor,white); end function zuiyounzhi2_Callback(hObject, eventdata, handles) input str2num(get(hObject,String)); guidata(hObject,handles); function zuiyounzhi2_CreateFcn(hObject, eventdata, handles) if ispc isequal(get(hObject,BackgroundColor), get(0,defaultUicontrolBackgroundColor))set(hObject,BackgroundColor,white); end function zuiyouguanghuayinzi2_Callback(hObject, eventdata, handles) input str2num(get(hObject,String)); guidata(hObject,handles); function zuiyouguanghuayinzi2_CreateFcn(hObject, eventdata, handles) if ispc isequal(get(hObject,BackgroundColor), get(0,defaultUicontrolBackgroundColor))set(hObject,BackgroundColor,white); end function yucezhi_Callback(hObject, eventdata, handles) function yucezhi_CreateFcn(hObject, eventdata, handles) if ispc isequal(get(hObject,BackgroundColor), get(0,defaultUicontrolBackgroundColor))set(hObject,BackgroundColor,white); end function yuce_Callback(hObject, eventdata, handles) global A H I B L A str2num(get(handles.shuruzhi,String)); H str2num(get(handles.zuiyounzhi2,String)); I str2num(get(handles.zuiyouguanghuayinzi2,String)); B str2num(get(handles.number,String)); nlength(A); AA(:); L H;A_nzeros(L1,n-L);for i1:n-LA_n(:,i)A(i:iL);endtrainxA_n(1:L,:);trainyA_n(L1,:);spread I;netnewgrnn(trainx,trainy,spread);aaA(end-L1:end);presim(net,aa);while length(pre)Baa[aa(2:end);pre(end)];yysim(net,aa);pre[pre;yy];end set (handles.yucezhi,String,num2str(pre),Max,2); guidata(hObject,handles); function edit23_Callback(hObject, eventdata, handles) function edit23_CreateFcn(hObject, eventdata, handles) if ispc isequal(get(hObject,BackgroundColor), get(0,defaultUicontrolBackgroundColor))set(hObject,BackgroundColor,white); end function zuiyou_Callback(hObject, eventdata, handles) function zuiyou_CreateFcn(hObject, eventdata, handles) if ispc isequal(get(hObject,BackgroundColor), get(0,defaultUicontrolBackgroundColor))set(hObject,BackgroundColor,white); end function ceshi_Callback(hObject, eventdata, handles) global A H I U B L A str2num(get(handles.xunlianji,String)); H str2num(get(handles.zuiyounzhi,String)); I str2num(get(handles.zuiyou,String)); U str2num(get(handles.ceshixulie,String)); B str2num(get(handles.ceshiji,String)); nlength(A); AA(:); UU(:); L H;A_nzeros(L1,n-L);for i1:n-LA_n(:,i)A(i:iL);endtrainxA_n(1:L,:);trainyA_n(L1,:);spread I;netnewgrnn(trainx,trainy,spread);aaA(end-L1:end);yesU;presim(net,aa);while length(pre)Baa[aa(2:end);pre(end)];yysim(net,aa);pre[pre;yy];end MAE mean(abs(yes - pre)); MAPE mean(abs(yes - pre)./yes); MSE mse(yes - pre); RMSE sqrt(MSE); set (handles.mae2,String,num2str(round(MAE*1e4)/1e4)); set (handles.mape2,String,num2str(round(MAPE*1e4)/1e4)); set (handles.mse2,String,num2str(round(MSE*1e4)/1e4)); set (handles.rmse2,String,num2str(round(RMSE*1e4)/1e4)); axes(handles.axes2) plot(yes,r,LineWidth,2); hold on plot(pre,k--,LineWidth,1.5); xlim([1,B]) title(Ô¤²âЧ¹ûÄâºÏÇúÏß) legend(ʵ¼ÊÖµ,Ô¤²âÖµ,Location,NorthWest) hold off guidata(hObject,handles); function ceshixulie_Callback(hObject, eventdata, handles) function ceshixulie_CreateFcn(hObject, eventdata, handles) if ispc isequal(get(hObject,BackgroundColor), get(0,defaultUicontrolBackgroundColor))set(hObject,BackgroundColor,white); end function number_Callback(hObject, eventdata, handles) function number_CreateFcn(hObject, eventdata, handles) if ispc isequal(get(hObject,BackgroundColor), get(0,defaultUicontrolBackgroundColor))set(hObject,BackgroundColor,white); end function pushbutton4_Callback(hObject, eventdata, handles) global A H I U B L A str2num(get(handles.xunlianji,String)); H str2num(get(handles.zuiyounzhi,String)); I str2num(get(handles.zuiyou,String)); U str2num(get(handles.ceshixulie,String)); B str2num(get(handles.ceshiji,String)); nlength(A); AA(:); L H;A_nzeros(L1,n-L);for i1:n-LA_n(:,i)A(i:iL);endtrainxA_n(1:L,:);trainyA_n(L1,:);spread I;netnewgrnn(trainx,trainy,spread);yysim(net,trainx); mse3 yy - trainy; MAE mean(abs(mse3)); MAPE mean(abs(yy - trainy)./trainy); MSE mse (mse3); RMSE sqrt(mse(mse3)); set (handles.mae,String,num2str(round(MAE*1e4)/1e4)); set (handles.mape,String,num2str(round(MAPE*1e4)/1e4)); set (handles.mse,String,num2str(round(MSE*1e4)/1e4)); set (handles.rmse,String,num2str(round(RMSE*1e4)/1e4)); axes(handles.axes1) plot(trainy,r,LineWidth,2); hold on plot(yy,k--,LineWidth,1.5); xlim([1,n-L]) title(ÄâºÏЧ¹ûÄâºÏÇúÏß) legend(ʵ¼ÊÖµ,Ô¤²âÖµ,Location,NorthWest) hold off guidata(hObject,handles); function pushbutton5_Callback(hObject, eventdata, handles) set(handles.zuiyou,String,[]); set(handles.zuiyounzhi,String,[]); set(handles.xunlianji,String,[]); set(handles.ceshiji,String,[]); set(handles.nmin,String,[]); set(handles.nmax,String,[]); set(handles.spreadmin,String,[]); set(handles.spreadmax,String,[]); set(handles.buchang,String,[]); set(handles.ceshixulie,String,[]); set(handles.mae2,String,[]); set(handles.mape2,String,[]); set(handles.mse2,String,[]); set(handles.rmse2,String,[]); cla(handles.axes2); set(handles.mae,String,[]); set(handles.mape,String,[]); set(handles.mse,String,[]); set(handles.rmse,String,[]); cla(handles.axes1); set(handles.shuruzhi,String,[]); set(handles.zuiyounzhi2,String,[]); set(handles.zuiyouguanghuayinzi2,String,[]); set(handles.number,String,[]); set(handles.yucezhi,String,[]); function pushbutton6_Callback(hObject, eventdata, handles) close GRNN3 main 五、软件和数据 链接https://pan.baidu.com/s/16hcDdFTtxfBsQ-9S53LiDw?pwdjfj6 提取码jfj6
http://www.w-s-a.com/news/24056/

相关文章:

  • 微网站怎么用在线crm管理系统
  • 中国城乡建设部人力网站首页如何利用某个软件做一个网站
  • 个人承接网站建设wordpress editor
  • 建站主机 wordpress专业的菏泽网站建设公司
  • 网站响应时间 标准网站建设色调的
  • 网站开发的合同网站建设 设计
  • 网站开发设置网页端口申请免费个人网站空间
  • 制作广告网站的步骤云服务器做网站
  • ipv6可以做网站吗东莞网站建站推广
  • 注册功能的网站怎么做做网站容易还是编程容易
  • wordpress建立目录seo编辑培训
  • 网站怎么群发广州现在可以正常出入吗
  • 微信有网站开发吗多语种网站
  • 深圳网站设计 建设首选深圳市室内设计公司排名前50
  • 上海网站建设 觉策动力wordpress接口开发
  • 网站建设服务器的选择方案小型视频网站建设
  • 江宁做网站价格扬州立扬计算机培训网站建设怎么样
  • 手表网站背景开发新客户的十大渠道
  • 定制网站设计wordpress写的网站
  • p2p网站建设公司排名成都装饰公司
  • 网站被k怎么恢复wordpress缓存类
  • 做外贸有哪些网站平台最近文章 wordpress
  • joomla网站模板一个人做网站的swot
  • 南京建设网站需要多少钱深圳专业网站建设制作价格
  • 天河建网站装修公司线上推广方式
  • 超市网站怎么做的目前最流行的拓客方法
  • 做文字logo的网站贵阳商城网站开发
  • 沧州有没有做网站的中国建筑设计
  • 建设网站 系统占用空间在线代理浏览网站
  • 做海报有什么参考的网站网站建设验收合同