1 内容介绍
在本文中,基于有限增量进化和基于距离的剪枝对在线模型动态系统开发了一种进化一般回归神经网络。此外,建议使用基于方差的方法来调整 GRNN 中的平滑参数以适应在线应用。将所提出的模型与不同类型的动态神经网络进行了比较。比较中使用了具有高斯白噪声的非线性基准测试动态离散系统。在预测误差和适应所需时间方面对结果进行了比较,比较结果表明,所提出的模型比任何其他模型都更准确、更快。
2 部分代码
clc
clear all
close all
%%
%please cite the paper https://doi.org/10.1109/SSCI.2018.8628909
%%
%initilaization
steps=1000;
y=zeros(1,steps);
yd=y;
yg=y;
dt=0.05;
t=0;
net1=newgrnn(1,1,0.1);
%%
%%hyper-parameters set by the user
Mse_thresold=0.001;% the MSE threshold to start the evolution
size_limit=10;% the maximum allowed size of GRNN's hidden layer
% plot(e_b_pruning(1:k));
end
tt(k+1)=t;
yg(k+1)=net1([yd(k)]);
e(k)=mse(yg(k+1),y(k+1));
t=t+dt;
end
%%
%Visualization part
figure(1)
plot(tt,yg,'-.','LineWidth',1.5);
hold on
plot(tt,y,'LineWidth',1.5);
legend('Estimated output','Actual output');
xlabel('Times(sec)');
ylabel('y');
title('LEIV-GRNN');
set(gca,'fontsize',15)
figure(2)
plot(tt(2:end),sig,'LineWidth',1.5);
xlabel('Times(sec)');
ylabel('\sigma');
title('Sigma \sigma adapation');
set(gca,'fontsize',15)
figure(3)
plot(tt(2:end),e,'LineWidth',2);
xlabel('Times(sec)');
ylabel('MSE');
title('MSE limited Incremmental evolution of GRNN');
set(gca,'fontsize',15)
ylim([-1 8]);
figure(4)
plot(tt(2:end),noise,'LineWidth',1.5);
xlabel('Times(sec)');
ylabel('Noise');
title('Gaussian noise with zero mean');
set(gca,'fontsize',15)
RMSE=sqrt(mse(y,yg));
function netn = d_ev_in(net1,yd,y)
% input distance evolution
din=dist(net1.IW{1},yd);
[~,dd2]=max(din);
net1.IW{1}(dd2)=yd;
net1.LW{2,1}(dd2)=y;
netn=net1;
end
function netn = d_ev_out(net1,yd,y)
% output distance evolution
dout=dist(net1.LW{2,1},y);
[~,dd3]=max(dout);
net1.IW{1}(dd3)=yd;
net1.LW{2,1}(dd3)=y;
netn=net1;
end
3 运行结果
4 参考文献
[1]谷志红, 牛东晓, 王会青. 广义回归神经网络模型在短期电力负荷预测中的应用研究[J]. 中国电力, 2006, 39(004):11-14.
[2]陈其红, 阚树林, 秦臻. 基于广义回归神经网络(GRNN)的设备可靠性预测[C]// 2011年全国机械行业可靠性技术学术交流会暨第四届可靠性工程分会第三次全体委员大会论文集. 中国机械工程学会, 2011.