鲸鱼算法(WOA)优化的BP神经网络预测,WOA-BP回归预测,多输入单输出模型。
%% 清空环境变量
warning off % 关闭报警信息
close all % 关闭开启的图窗
clear % 清空变量
clc % 清空命令行
restoredefaultpath
%% 导入数据
P_train = xlsread('data','training set','B2:G191')';
T_train= xlsread('data','training set','H2:H191')';
% 测试集——44个样本
P_test=xlsread('data','test set','B2:G45')';
T_test=xlsread('data','test set','H2:H45')';
%% 划分训练集和测试集
M = size(P_train, 2);
N = size(P_test, 2);
%% 数据归一化
[p_train, ps_input] = mapminmax(P_train,0,1);
p_test = mapminmax('apply',P_test,ps_input);
[t_train, ps_output] = mapminmax(T_train,0,1);
t_test = mapminmax('apply',T_test,ps_output);
%% 节点个数
inputnum = size(p_train, 1); % 输入层节点数
hiddennum = 15; % 隐藏层节点数
outputnum = size(t_train, 1); % 输出层节点数
%% 构建网络
net = newff(p_train, t_train, hiddennum);
%% 设置训练参数
net.trainParam.epochs = 50; % 训练次数
net.trainParam.goal = 1e-4; % 目标误差
net.trainParam.lr = 0.01; % 学习率
net.trainParam.showWindow = 0; % 关闭窗口
%% 参数设置
fun = @getObjValue; % 目标函数
dim = inputnum * hiddennum + hiddennum * outputnum + ...
hiddennum + outputnum; % 优化参数个数
lb = -1 * ones(1, dim); % 优化参数目标下限
ub = 1 * ones(1, dim); % 优化参数目标上限
pop = 30; % 数量
Max_iteration = 20; % 最大迭代次数
%% 优化算法
[Best_score,Best_pos,curve] = WOA(pop, Max_iteration, lb, ub, dim, fun);
%% 把最优初始阀值权值赋予网络预测
w1 = Best_pos(1 : inputnum * hiddennum);
B1 = Best_pos(inputnum * hiddennum + 1 : inputnum * hiddennum + hiddennum);
w2 = Best_pos(inputnum * hiddennum + hiddennum + 1 : inputnum * hiddennum + hiddennum + hiddennum*outputnum);
B2 = Best_pos(inputnum * hiddennum + hiddennum + hiddennum * outputnum + 1 : ...
鲸鱼算法(WOA)优化的BP神经网络预测,WOA-BP回归预测,多输入单输出模型。相关推荐
- 粒子群算法(PSO)优化最小二乘支持向量机回归预测,PSO-LSSVM回归预测,多输入单输出模型。
%% 清空环境变量 warning off % 关闭报警信息 close all % 关闭开启的图窗 clear ...
- 量子遗传算法优化BP神经网络的预测和分类,多输入单输出,多输 入多输出
量子遗传算法优化BP神经网络的预测和分类,多输入单输出,多输 入多输出 93499615192034876最爱matlab
- 提高bp神经网络预测精度,bp神经网络收敛速度慢
1.如何提高bp神经网络的预测精度啊 跟你的预测对象有很大关系. 1. 根据你的预测对象的特性选取合适的输入层.输出层和隐层神经元数目. 2. 选择合适的神经网络训练函数. 3. 保证足够的训练样本数 ...
- 提高bp神经网络预测精度,bp神经网络数据预处理
bp神经网络对输入数据和输出数据有什么要求 p神经网络的输入数据越多越好,输出数据需要反映网络的联想记忆和预测能力.BP网络能学习和存贮大量的输入-输出模式映射关系,而无需事前揭示描述这种映射关系的数 ...
- BP神经网络预测回归-BP多输入多输出预测-Matlab
一.前言 之前发布了BP神经网络多数入单输出预测,那个代码不能直接用于多输出.今天搞一下BP的多输入多输出预测,随意设置多少个输出都行.话不多说,上才艺! 二.结果展示 (1)根据经验公式,通过输入输 ...
- 灰狼算法(GWO)优化长短期记忆神经网络的数据回归预测,GWO-LSTM回归预测,多输入单输出模型。
clear all; close all; clc; %% 导入数据 P_train = xlsread('data','training set','B2:G191')'; T_train= xl ...
- 鲸鱼算法(WOA)优化xgboost的分类预测模型,多输入单输出模型,WOA-xgboost分类预测。
%% 清空环境变量 warning off % 关闭报警信息 close all % 关闭开启的图窗 clear ...
- 鲸鱼算法(WOA)优化支持向量机的数据回归预测,WOA-SVM回归预测,多输入单输出模型。
%% 清空环境变量 warning off % 关闭报警信息 close all % 关闭开启的图窗 clear ...
- 粒子群算法(PSO)优化最小二乘支持向量机分类预测,PSO-LSSVM分类预测,多输入单输出模型。
%% 清空环境变量 warning off % 关闭报警信息 close all % 关闭开启的图窗 clear ...
最新文章
- 计算机程序是怎样运行的-hello world程序运行原理
- C语言指针实现计算平均分等功能
- 合作伙伴说 | 一人行快,众人行远,与网易共建万亿新生态
- notepad++怎么换行命令_命令注入新玩法:巧借环境攻击目标
- 学习笔记----周志华《机器学习》第五章(神经网络)(二)
- 内联函数和宏定义的相关区别
- JNDI学习总结(2)——JNDI数据源的配置
- linux远程连接交换机,思科:路由器、交换机 ssh远程连接
- 面试官:这货一听就是一个水货...
- 动态添加SqlParameter
- LTE系统信息 --- MIB、SIB
- 关于前端一个用于设置渐变色的css代码网站
- 高德地图定位,搜索,导航功能
- 信息学奥赛知识点(一)—计算机基础知识【转载】
- 梦行扫码付(收银台条码支付 微信钱包条码支付 支付宝二维码支付 手机APP钱包支付 PHP扫码支付 )
- 14期《未来,我来》1月刊
- docker快速安装可道云
- Jackknife,Bootstrap, bagging, boosting, AdaBoost, Rand forest 和 gradient boosting的区别
- 国网对计算机二级科目要求,今起!计算机等级考试可以网报,二级部分科目获证条件调整...
- python lambda函数for 字符串_Python Lambda