clc
clear
close all
x = -2*pi:pi/500:2*pi;
y = abs(sin(x));
num = [x' y'];
rand('state',0)
n = randperm(length(num));
m = 1000;
input_train=num(n(1:m),1)';%训练数据的输入数据
output_train=num(n(1:m),2)';%训练数据的输出数据
input_test=num((1:end),1)';%测试数据的输入数据
output_test=num((1:end),2)'; %测试数据的输出数据
%选连样本输入输出数据归一化
[inputn,inputps]=mapminmax(input_train,-1,1);%训练数据的输入数据的归一化
[outputn,outputps]=mapminmax(output_train,-1,1);%训练数据的输出数据的归一化de
%% BP网络训练
% %初始化网络结构
%trainc traincgb traincgf traincgp traingda traingdx trainlm
%trainoss trainr trainrp trains trainscg
net=newff(minmax(inputn),[50,1],{'logsig','tansig'},'trainlm');
%net.trainParam.showWindow = false;%关闭训练窗口
%net.trainParam.max_fail = 9;
net.trainParam.epochs=5000;%最大迭代次数
net.trainParam.lr=0.1;%学习率
net.trainParam.goal=0.00001;%学习目标
%网络训练
net=train(net,inputn,outputn);
%% BP网络预测
%预测数据归一化
inputn_test=mapminmax('apply',input_test,inputps);
outputn_test=mapminmax('apply',output_test,outputps);
%网络预测输出
an=sim(net,inputn_test);
an(an<-1) = -1;
[MSE ,RMSE, MBE ,MAE ,MAPE] =MSE_RMSE_MBE_MAE(outputn_test,an)
R2 = R_2(outputn_test,an)
%网络输出反归一化
BPoutput=(mapminmax('reverse',an,outputps));
%% 结果分析
figure
plot(BPoutput,'r-')%预测的结果数据画图-代表虚线,O代表圆圈标识,r代表红色
hold on
plot(output_test,'k--');%期望数据,即真实的数据画图,-代表实现,*就是代表*的标识,k代表黑色
legend('BP神经网络仿真值','真实值','Location','northeast')%标签
title('BP神经网络','fontsize',12)%标题 字体大小为12
xlabel('样本','fontsize',12)%X轴
set(gca,'fontsize',12)
%预测误差
error=BPoutput-output_test;
% numm =[output_test' BPoutput' error' ];
% xlswrite('jieguo.xlsx', numm)
figure
plot(error,'-*')
title('BP网络预测误差','fontsize',12)
ylabel('误差','fontsize',12)
xlabel('样本','fontsize',12)
set(gca,'fontsize',12)
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
基于MATLAB编程,基于BP神经网络的多输入单输出预测,多输入单输出BP神经网络,代码完整,包含数据,有注释,方便扩展应用 1,如有疑问,不会运行,可以私信, 2,需要创新,或者修改可以扫描二维码联系博主, 3,本科及本科以上可以下载应用或者扩展, 4,内容不完全匹配要求或需求,可以联系博主扩展。
资源推荐
资源详情
资源评论
收起资源包目录
代码和图.rar (11个子文件)
MSE_RMSE_MBE_MAE.m 424B
2.jpg 16KB
mainbp2.m 2KB
6.jpg 32KB
1.jpg 17KB
R_2.m 312B
main.m 766B
5.jpg 25KB
fun.m 1KB
3.jpg 23KB
4.jpg 22KB
共 11 条
- 1
资源评论
神经网络机器学习智能算法画图绘图
- 粉丝: 2416
- 资源: 583
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功