%% 双隐含层BP神经网络
%% 清空环境变量
clc
clear
%% 训练数据预测数据提取及归一化
%下载输入输出数据
load data input output
%从1到2000间随机排序
k=rand(1,2000);
[m,n]=sort(k);
%找出训练数据和预测数据
input_train=input(n(1:1900),:)';
output_train=output(n(1:1900));
input_test=input(n(1901:2000),:)';
output_test=output(n(1901:2000));
%选连样本输入输出数据归一化
[inputn,inputps]=mapminmax(input_train);
[outputn,outputps]=mapminmax(output_train);
%% BP网络训练
% %初始化网络结构
net=newff(inputn,outputn,[5 5]);
net.trainParam.epochs=100;
net.trainParam.lr=0.1;
net.trainParam.goal=0.00004;
%网络训练
net=train(net,inputn,outputn);
%% BP网络预测
%预测数据归一化
inputn_test=mapminmax('apply',input_test,inputps);
%网络预测输出
an=sim(net,inputn_test);
%网络输出反归一化
BPoutput=mapminmax('reverse',an,outputps);
%% 结果分析
figure(1)
plot(BPoutput,':og')
hold on
plot(output_test,'-*');
legend('预测输出','期望输出')
title('BP网络预测输出','fontsize',12)
ylabel('函数输出','fontsize',12)
xlabel('样本','fontsize',12)
%预测误差
error=BPoutput-output_test;
figure(2)
plot(error,'-*')
title('BP网络预测误差','fontsize',12)
ylabel('误差','fontsize',12)
xlabel('样本','fontsize',12)
figure(3)
plot((output_test-BPoutput)./BPoutput,'-*');
title('神经网络预测误差百分比')
errorsum=sum(abs(error))
Matlab仿真实验室
- 粉丝: 4w+
- 资源: 2435
最新资源
- (完美运营版)最新微信抓娃娃游戏完整开源版源码-微信夹娃娃抓猴子游戏
- 员工商业保险管理办法.doc
- 商业保险告知书(员工版).doc
- 【生日会】员工生日晚会费用预算清单.xlsx
- 员工生日管理规定.docx
- 员工生日福利制度.doc
- Docker可视化管理面板
- 圣诞树的python代码
- 【必备知识】社保与商保区别.pptx
- 房产公司筹划方案.doc
- 【必备知识】社会保险与公积金基本知识教程.ppt不可不知的五险一金解读.pptx
- 单位员工社保公积金登记表.xlsx
- 公司年度社保支出结算图表模板.xlsx
- 公司社保福利费用结构分析表(含住房公积金).xlsx
- 企业可不为员工缴纳社保的5种合法情形!.docx
- 社会保险缴费基数可视化统计表.xlsx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈