数学建模实验四:Matlab神经网络以及应用于汽油辛烷值预测

实验四:Matlab神经网络以及应用于汽油辛烷值预测
专业年级: 2014级信息与计算科学1班
姓名:  黄志锐  学号:0110
一、实验目的
1. 掌握MATLAB创建BP神经网络并应用于拟合非线性函数
2. 掌握MATLAB创建REF神经网络并应用于拟合非线性函数
3. 掌握MATLAB创建BP神经网络和REF神经网络解决实际问题
4. 了解MATLAB神经网络并行运算
、实验内容
1. 建立BP神经网络拟合非线性函数
第一步  数据选择和归一化
根据非线性函数方程随机得到该函数的2000组数据,将数据存贮在文件中(下载后拷贝到Matlab当前目录),其中input是函数输入数据,output是函数输出数据。从输入输出数据中随机选取1900中数据作为网络训练数据,100组作为网络测试数据,并对数据进行归一化处理。
第二步  建立和训练BP神经网络
构建BP神经网络,用训练数据训练,使网络对非线性函数输出具有预测能力。
第三步  BP神经网络预测
用训练好的BP神经网络预测非线性函数输出。
第四步 结果分析
通过BP神经网络预测输出和期望输出分析BP神经网络的拟合能力。
详细MATLAB代码如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
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神经网络
BP神经网络构建
net = newff(inputn, outputn, 5);
% 网络参数配置(迭代次数,学习率,目标)
= 100;
= ;
= ;
% 网络训练,并记录训练时间
tic; % start time record
net = train(net, inputn, outputn);
t1 = toc; % (end-start) time record
disp(['神经网络的训练时间为', num2str(t1), '']);
%% 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(' BP神经网络预测误差百分比');
errorsum = sum(abs(error));

本文发布于:2024-09-22 09:39:20,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/1/361742.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:数据   神经网络   预测   训练   输出   函数   网络
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议