BP神经网络对水质问题进行预测(Matlab代码实现)
💥💥💞💞欢迎来到本博客❤️❤️💥💥
🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。
⛳️座右铭:行百里者,半于九十。
📋📋📋本文目录如下:🎁🎁🎁
目录
💥1 概述
在大数据、人工智能的背景下,神经网络算法被广泛的应用和普及,风险预测问题成为人们关注的热点,BP神经网络算法是用于解决预测问题效果最好的算法之一,但传统的BP神经网络算法在隐含层权值选择过程具有一定的局限性,会影响算法预测的效率和精度。针对这种情况,提出了改进的BP神经网络算法,利用遗传算法和BP神经网络算法相结合,提升算法的预测效率和预测精度。首先,分析传统BP神经网络算法流程及不足;其次,利用遗传算法优化BP神经网络算法;最后,提出改进的BP神经网络算法执行流程,并以食品价格数据进行对比分析。通过实验分析结果可知,相对于传统的BP神经网络算法,该方法在预测过程中可以提高预测效率、提升预测精度。本文章采用BP算法并训练使用的数据集404个水质数据对水质问题进行预测。
📚2 运行结果
部分代码:
clc
clear all
load out2.mat
load train.mat
outrec = outrec';
ml = [2.35500000000000,0.110000000000000,6.50000000000000,323.500000000000];
mm = [10.9945239746905,69.0063006300631,-6.66869763899466,-0.319387271030040];
for j = 1:4
for i = 1:404
outrec(i,j) = outrec(i,j)*ml(j)+mm(j);
end
end
for j = 1:4
for i = 1:404
traind_s(i,j) = traind_s(i,j)*ml(j)+mm(j);
end
end
xunlian = 250;
yuce = 152;
a = 1:xunlian;
b = xunlian+1:xunlian+yuce;
figure(1)
%% 拟合曲线
title('fitted');
zzl = 1;
subplot(2,2,zzl);
plot(a,traind_s(1:xunlian,zzl),'b');
hold on
plot(a+10,outrec(1:xunlian,zzl),'r');
hold off
xlabel('time');
ylabel('temperature');
legend('measured value','fitted value');
zzl =2;
subplot(2,2,zzl);
plot(a,traind_s(1:xunlian,zzl),'b');
hold on
plot(a+10,outrec(1:xunlian,zzl),'r');
hold off
xlabel('time');
ylabel('pH');
legend('measured value','fitted value');
zzl = 3;
subplot(2,2,zzl);
plot(a,traind_s(1:xunlian,zzl),'b');
hold on
plot(a+10,outrec(1:xunlian,zzl),'r');
hold off
xlabel('time');
ylabel('Do');
legend('measured value','fitted value');
zzl = 4;
subplot(2,2,zzl);
plot(a,traind_s(1:xunlian,zzl),'b');
hold on
plot(a+10,outrec(1:xunlian,zzl),'r');
hold off
xlabel('time');
ylabel('ORP');
legend('measured value','fitted value');
%% 预测曲线
figure(2)
zzl = 1;
subplot(2,2,zzl);
plot(b,traind_s(xunlian+1:xunlian+yuce,zzl),'b');
hold on
plot(b+10,outrec(xunlian+1:xunlian+yuce,zzl),'r');
hold off
xlabel('time');
ylabel('temperature');
legend('measured value','predicted value');
zzl = 2;
subplot(2,2,zzl);
plot(b,traind_s(xunlian+1:xunlian+yuce,zzl),'b');
hold on
plot(b+10,outrec(xunlian+1:xunlian+yuce,zzl),'r');
hold off
xlabel('time');
ylabel('pH');
legend('measured value','predicted value');
zzl = 3;
subplot(2,2,zzl);
plot(b,traind_s(xunlian+1:xunlian+yuce,zzl),'b');
hold on
plot(b+10,outrec(xunlian+1:xunlian+yuce,zzl),'r');
hold off
xlabel('time');
ylabel('DO');
legend('measured value','predicted value');
zzl = 4;
subplot(2,2,zzl);
plot(b,traind_s(xunlian+1:xunlian+yuce,zzl),'b');
hold on
plot(b+10,outrec(xunlian+1:xunlian+yuce,zzl),'r');
hold off
xlabel('time');
ylabel('ORP');
legend('measured value','predicted value');
🎉3 参考文献
部分理论来源于网络,如有侵权请联系删除。
[1]刘红梅,徐英岚,张博,李荣.基于最小二乘支持向量回归的水质预测[J].计算机与现代化,2019(09):31-34.
[2]邬希可.改进的神经网络算法在预测方法中研究与应用[J].计算机与数字工程,2022,50(10):2276-2279+2344.
🌈4 Matlab代码实现
相关文章
- matlab求两向量夹角_MATLAB基础练习(一)
- matlab 求矩阵秩,求Matlab中矩阵的秩和迹 | 学步园[通俗易懂]
- matlab griddata nan,请教Matlab的griddata的用法
- 【嵌入式案例分享】使用Matlab生成可供TMS320C6748开发板使用的算法
- MATLAB画图使用不同的颜色
- matlab中错误使用fmincon,MATLAB中fmincon 函数问题
- matlab fir带通滤波,基于Matlab的FIR带通滤波器设计与实现
- 遗传算法经典实例matlab_蚁群算法matlab实例
- matlab保存图片函数后突变分辨变化,MATLAB总结 – 图片保存「建议收藏」
- matlab使用长短期记忆(LSTM)神经网络对序列数据进行分类|附代码数据
- 香农编码的 matlab 实现「建议收藏」
- 利用matlab画三维图像_使用变身卡进行擂台切磋
- matlab循环读取txt文件
- matlab实现人脸识别gui界面_神经网络实现人脸识别
- 近场动力学matlab程序_一阶惯性环节matlab
- Matlab循环语句_matlab中if语句的用法
- Matlab 计算均方误差MSE的三种方法
- Matlab函数定义_matlab子函数
- Matlab马尔可夫链蒙特卡罗法(MCMC)估计随机波动率(SV,Stochastic Volatility) 模型|附代码数据
- matlab科研绘图模板,直接奉上源代码!