Elman神经网络

newelm()函数:

clear ; close all; clc
%原始数据
data=[0.4413,0.4707,0.6953,0.8133;...
      0.4379,0.4677,0.6981,0.8002;...
      0.4517,0.4725,0.7006,0.8201;...
      0.4557,0.4790,0.7019,0.8211;...
      0.4601,0.4811,0.7101,0.8298;...
      0.4612,0.4845,0.7188,0.8312;...
      0.4615,0.4891,0.7201,0.8330];
net=[];
for i=1:4
    P=[data(1:3,i),data(2:4,i),data(3:5,i)];%拟合输入函数矩阵,3个样本  每个样本12个变量
    T=[data(4,i),data(5,i),data(6,i)];%拟合目标函数矩阵
    
    th1=[0,1;0,1;0,1];
    th2=[0,1];
    net{i}=newelm(th1,th2,[20,1],{'tansig','purelin'});%创建Elman网络
    net{i}.trainParam.epochs=1000;%设置迭代次数
    net{i}=init(net{i});%初始化
    net{i}=train(net{i},P,T);%训练
    
    %测试
    test.P{i}=data(4:6,i);
    y(i)=sim(net{i},test.P{i});%仿真
end
fprintf('真实值:\n');
disp(data(7,:));
fprintf('预测值:\n');
disp(y);
fprintf('误差:\n');
disp((y-data(7,:))./y);

elmannet()函数------------------------效果好一点

% 初始化
clear ; close all; clc
%原始数据
data=[0.4413,0.4707,0.6953,0.8133;...
      0.4379,0.4677,0.6981,0.8002;...
      0.4517,0.4725,0.7006,0.8201;...
      0.4557,0.4790,0.7019,0.8211;...
      0.4601,0.4811,0.7101,0.8298;...
      0.4612,0.4845,0.7188,0.8312;...
      0.4615,0.4891,0.7201,0.8330];
net=[];
for i=1:4
    P=[data(1:3,i),data(2:4,i),data(3:5,i)];%拟合输入函数矩阵,3个样本  每个样本12个变量
    T=[data(4,i),data(5,i),data(6,i)];%拟合目标函数矩阵
    
    th1=[0,1;0,1;0,1];
    th2=[0,1];
%     net{i}=newelm(th1,th2,[20,1]);%创建Elman网络
    net{i}=elmannet(1:3,20);
    net{i}=init(net{i});%初始化
    net{i}=train(net{i},P,T);%训练
    
    %测试
    test.P{i}=data(4:6,i);
    y(i)=sim(net{i},test.P{i});%仿真
end
fprintf('真实值:\n');
disp(data(7,:));
fprintf('预测值:\n');
disp(y);
fprintf('误差:\n');
disp((y-data(7,:))./y);
fprintf('平均误差mse:\n');
disp(mean(abs(y-data(7,:))))

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值