%% 使用优化后的权值和阈值测试结果

%% 使用优化后的权值和阈值

inputnum=size(P,1);%输入层神经元个数

outputnum=size(T,1);%输出层神经元个数

N=size(P_test,2);

M=size(P,2);

%% 新建BP

net=newff(P,T,9);

%% 设置网络参数:训练次数1000,训练目标0.001,学习速率00.1

net.trainParam.epochs =3000;

net.trainParam.goal = 1e-6;

net.trainParam.lr = 0.01;

%% BP初始权值和阈值

w1num=inputnum*hiddennum;%输入层到隐含层的权值个数

w2num=outputnum*hiddennum;%隐含层到输入层的权值个数

w1=bestX(1:w1num);%初始输入层到隐含层的权值

B1=bestX(w1num+1:w1num+hiddennum);

w2=bestX(w1num+hiddennum+1:w1num+hiddennum+w2num);%初始隐含层到输出层的权值

B2=bestX(w1num+hiddennum+w2num+1:w1num+hiddennum+w2num+outputnum);%输出层阈值

net.iw{1,1}=reshape(w1,hiddennum,inputnum);

net.lw{2,1}=reshape(w2,outputnum,hiddennum);

net.b{1}=reshape(B1,hiddennum,1);

net.b{2}=reshape(B2,outputnum,1);

%% 训练网络

net=train(net,P,T);

%% 测试网络

t_sim_P= sim(net,P);

t_sim_P_test= sim(net,P_test);

%% 反归一化

T=mapminmax('reverse',T,ps_output);

T_sim_P= mapminmax('reverse',t_sim_P,ps_output);

T_sim_P_test = mapminmax('reverse',t_sim_P_test,ps_output);

%% 相对误差

error_P=abs(T_sim_P-T)./T;

error_P_test=abs(T_sim_P_test-T_test)./T_test;

%% 相关系数

R2_P= (M * sum(T_sim_P .* T) - sum(T_sim_P) * sum(T))^2 / ((M * sum((T_sim_P).^2) - (sum(T_sim_P))^2) * (M * sum((T).^2) - (sum(T))^2));

R2_P_test = (N * sum(T_sim_P_test .* T_test) - sum(T_sim_P_test) * sum(T_test))^2 / ((N * sum((T_sim_P_test).^2) - (sum(T_sim_P_test))^2) * (N * sum((T_test).^2) - (sum(T_test))^2));

%% 结果对比

result = [T_test' T_sim_P_test' abs(T_test-T_sim_P_test)']

result=[T' T_sim_P' abs(T-T_sim_P)']

天牛须matlab,基于天牛须搜索算法(BAS)优化BP神经网络的权值阈值代码相关推荐

  1. matlab麻雀搜索算法(SSA)优化BP神经网络,权值和阈

    matlab麻雀搜索算法(SSA)优化BP神经网络,权值和阈值,一个压缩包共三个文件,包括有数据和代码,放入自己的数据即可得出仿真图形 ID:296679013048817MATLAB

  2. 【Matlab风电功率预测】遗传算法优化BP神经网络风电功率预测【含源码 760期】

    一.代码运行视频(哔哩哔哩) [Matlab风电功率预测]遗传算法优化BP神经网络风电功率预测[含源码 760期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1 ...

  3. 基于蝙蝠算法优化BP神经网络的数据分类算法及其MATLAB实现-附代码

    基于蝙蝠算法优化BP神经网络的数据分类算法及其MATLAB实现-附代码 文章目录 基于蝙蝠算法优化BP神经网络的数据分类算法及其MATLAB实现-附代码 1 蝙蝠算法与BP神经网络分类模型 1.1 蝙 ...

  4. 【回归预测-BP预测】基于灰狼算法优化BP神经网络实现数据回归预测附matlab代码

    1 内容介绍 Mirjalili 等在 2014 年 提 出 了 灰 狼 优 化 ( Grey Wolf Optimizer,GWO) 算法,是一种新型群智能优化算法,通过模拟自然界中灰狼寻找.包围和 ...

  5. 基于MATLAB编程的粒子群算法优化BP神经网络风电功率预测,基于PSO-BP的风电功率预测

    目录 摘要 BP神经网络的原理 BP神经网络的定义 BP神经网络的基本结构 BP神经网络的神经元 BP神经网络的激活函数, BP神经网络的传递函数 粒子群算法的原理及步骤 基于粒子群算法改进优化BP神 ...

  6. BP神经网络优化 | MATLAB基于遗传算法优化BP神经网络(GA-BP)的预测模型(含完整代码)

    文章目录 前言 一.遗传算法描述 二.优化思路 三.完整代码 预测结果 前言 首先需要安装一下遗传算法工具箱,可参考这篇博客 MATLAB遗传算法工具箱安装包及安装方法(图解)_周杰伦今天喝奶茶了吗的 ...

  7. BP神经网络优化 | MATLAB基于飞蛾扑火算法优化BP神经网络(MFO-BP)的预测模型(完整代码在文末)

    飞蛾扑火( Moth-flame optimization algorithm,MFO) 是Seyedali Mirjalili等于2015年提出的一种新型智能优化算法.该算法具有并行优化能力强,全局 ...

  8. 【BP预测】基于布谷鸟算法优化BP神经网络数据回归预测含Matlab源码

    1 简介 锂电池健康状态(SOH)的预测是电动汽车锂电池管理系统的最重要的关键技术之一;传统的误差逆向传播(BP)神经网络容易使权值和阈值陷入局部最优,从而导致预测结果不精确;结合布谷鸟搜索算法(CS ...

  9. gadecod matlab,【预测模型】基于遗传算法优化BP神经网络房价预测matlab源码

    一.简介 1 遗传算法概述 遗传算法(Genetic Algorithm,GA)是进化计算的一部分,是模拟达尔文的遗传选择和自然淘汰的生物进化过程的计算模型,是一种通过模拟自然进化过程搜索最优解的方法 ...

最新文章

  1. jquery选中checkbox
  2. Go中线程和协程的区别
  3. 更改jenkins的默认工作空间并迁移插件和配置数据
  4. mariadb mysql表_mysql/mariadb学习记录——创建删除数据库、表的基本命令
  5. opencv14-自定义线性滤波
  6. 要不要选 qt tool_小户型儿童房要不要做高低床?优劣都告诉你,自己选
  7. 超强!MDETR:基于Transformer的端到端目标检测神器!开源!
  8. 未来无限可能 戴尔易安信开启中国新征程
  9. 软件人员kpi制定模板_软件科技公司绩效考核办法模板
  10. 勾股定理,西方称为毕达哥拉斯定理,它所对应的三角形现在称为:直角三角形。 已知直角三角形的斜边是某个整数,并且要求另外两条边也必须是整数。 求满足这个条件的不同直角三角形的个数。
  11. Unity高质量场景打光参考资料
  12. MyBatis Plus Generator 代码生成器 v3.5.x 案例,含校验、MapStruct、Swagger、QO、VO,自定义 FreeMarker 模板引擎
  13. 电脑手机硬件测试软件,手机硬件检测:Z-DeviceTest
  14. 2020移动apn接入点哪个快_手机资讯:5G 网络和现在 iPhone 使用的 Wi-Fi 有什么区别速度会更快吗...
  15. Java数据类型和变量
  16. WinSCP 以预设密码进行验证 拒绝访问
  17. 了解你的windows目录和系统文件(转)
  18. 肖秀荣真的是“yyds”吗?会被反押题吗?今年还会押中原题吗
  19. 计算机科学应用论文题目,比较好写的计算机科学与应用论文题目 计算机科学与应用论文题目怎么取...
  20. Scratch入门教程:第二节 简单的交互

热门文章

  1. java基础----IO打印流PrintStream
  2. leetcode 205. 同构字符串
  3. 【SQL Join】两个字段关联到同一个表,如何使用left join
  4. dart系列之:dart语言中的特殊操作符
  5. java并发Exchanger的使用
  6. rateLimiter令牌桶限流算法
  7. git gui怎么拉取项目代码_Git可视化极简易教程 —— Git GUI使用方法
  8. fastjson 过滤不需要的字段或者只要某些字段
  9. Java的io类的使用场景
  10. C/C++数组指针和指针数组