基于负相关误差函数的4集成BP神经网络matlab建模与仿真

news/2024/10/6 2:05:22/文章来源:https://www.cnblogs.com/matlabworld/p/18288659

1.算法运行效果图预览

(完整程序运行后无水印)

 

 

 

2.算法运行软件版本

MATLAB2022a

 

3.部分核心程序

while(Index<=Max_iteration)   Indexjj=1;     error2 = zeros(Len,KER);while(jj<=Len)         for k=1:No;d(k)=T(jj);  endfor i=1:NI;x(i)=P(jj,i);end%集成多个BP神经网络for bpj = 1:KER      for j=1:Nh%BP前向            net=0;              for i=1:NI                net=net+x(i)*W0(i,j,bpj); %加权和∑X(i)V(i)            endy(j)=1/(1+exp(-net));               endfor k=1:No             net=0;              for j=1:Nh                  net=net+y(j)*W(j,k,bpj);             end%输出值o(k)=1/(1+exp(-net));              endRRR(jj,1) = round(o);%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%errortmp=0.0;         for k=1:No              errortmp=errortmp+(d(k)-(o(k)))^2;%传统的误差计算方法end%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%error2(jj,bpj)=0.5*errortmp/No;         for k=1:No%BP反向计算          yitao(k)=(d(k)-o(k))*o(k)*(1-o(k));%偏导      endfor j=1:Nh         tem=0.0;         for k=1:No             tem=tem+yitao(k)*W(j,k,bpj);       endyitay(j)=tem*y(j)*(1-y(j));%偏导    endfor j=1:Nh%权值更新         for k=1:No              deltaW(j,k,bpj) = Learning_Rate*yitao(k)*y(j);            W(j,k,bpj)      = W(j,k,bpj)+deltaW(j,k,bpj);            endendfor i=1:NI         for j=1:Nh              deltaW0(i,j,bpj) = Learning_Rate*yitay(j)*x(i);            W0(i,j,bpj)      = W0(i,j,bpj)+deltaW0(i,j,bpj);             endendendjj=jj+1; end%BP训练结束     error = sum(mean(error2));  Index = Index+1;ERR   = [ERR,error]; 
end

  

 

4.算法理论概述

       基于负相关误差函数(Negative Correlation Learning, NCL)的集成学习方法应用于BP(Backpropagation)神经网络,旨在通过训练多个相互独立且在预测上具有负相关的模型,提高整体模型的泛化能力和稳定性。这种方法结合了神经网络的强大表达能力和集成学习的思想,以提高预测精度和鲁棒性。

 

       集成学习是机器学习领域的一种重要策略,它通过组合多个弱学习器来构建一个强学习器。NCL在集成学习框架下的应用,特别是与BP神经网络结合时,其核心思想是促使每个神经网络模型学习到不同的模式,从而减少整体模型之间的错误相关性。当模型间的预测错误呈现负相关时,即一个模型在某些样本上犯错时,其他模型能在这些样本上正确预测,整个集成系统的错误率会显著降低。

 

      负相关误差函数的公式:

 

 

 

       可知,当λ=0时,后面的惩罚项为0,相当于是网络单独训练,也就是传统的集成方式,当λ取大于0的值时为负相关集成,所以,以下对λ取值分别为0和其他值进行比较.

 

       基于负相关误差函数的集成BP神经网络,通过鼓励模型间预测的负相关性,有效提升了模型的泛化能力。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/739824.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

9、flask-会话-cookie

Cookie 客户端的会话技术: - cookie本身由浏览器保存,通过response将cookie写道浏览器上、下一次访问时、浏览器会根据不同的规则携带cookie过来特点: - 客户端的会话技术、浏览器的会话技术 - 数据全都是存储在客户端中 - 存储使用的键值对结构进行的存储 - 特性:- 支持过…

# Day02

1. #盘符转换 2. #查看当前目录下的所有文件 dir 3. #切换目录 cd change directory 4. #返回上一级 cd.. 5. #进入目录下的一级文件 先用第二步查看目录下的文件 然后cd+空格+一级文件名称 6 .#进入一级文件下的二级文件 方法同第五步 7. #清理屏幕 cls (简记clear screen) 8.…

dotnet WinUI3 Win2D 翻转图片

本文将告诉大家如何在 WinUI3 里面使用 Win2D 进行图片的翻转,本文的方法也适用于 UWP 框架图片的翻转在 Win2D 里面,可以使用 Transform2DEffect 特效来辅助实现,核心逻辑就是通过缩放矩阵当成2D翻转矩阵,将缩放的 X 和 Y 传入负数即可分别实现对应方向的翻转。比如左右水…

UWP WinUI 制作一个路径矢量图标按钮样式入门

本文将告诉大家如何在 UWP 或 WinUI3 或 UNO 里,如何制作一个路径按钮。路径按钮就是使用几何路径轮廓表示内容的按钮,常见于各种图标按钮,或 svg 系贴图矢量图按钮在网上有非常多矢量图库,其中免费的图库也非常多,比如 https://www.iconfont.cn/ 等等。在咱的应用程序里面…

【攻防技术系列+代理转发】工具--netcat

【需求】现在想要实现两个不同网段的私网之间相互通信,我们该如何做呢?🔴实验环境:【kali(攻击端)】:192.168.10.131 【centos7(跳板机)】:192.168.10.39;172.16.80.130 【win7】:172.16.80.131 工具:netcat【kali】: 开启监听【centos7】:【kali】: 获得对方的…

基于FPGA的A律压缩解压缩verilog实现,包含testbench

1.算法仿真效果 VIVADO2019.2仿真结果如下(完整代码运行后无水印):RTL图如下所示:2.算法涉及理论知识概要A律压缩是一种广泛应用于语音编码的非均匀量化技术,尤其在G.711标准中被欧洲和中国等国家采纳。该技术的核心目的是在有限的带宽下高效传输语音信号,同时保持较高的…

LFU算法实现

LFU (Least Frequently Used) 是一种用于缓存管理的算法。它通过跟踪每个缓存项被访问的频率来决定哪些项应该被移除。LFU算法倾向于保留那些使用频率较高的项,而移除那些使用频率较低的项。以下是LFU算法的详细介绍: 工作原理计数器:每个缓存项都有一个计数器,用于记录该项…

灰色预测GM(1,1)模型的理论原理

灰色预测是对时间有关的灰色过程进行预测。通过建立相应的微分方程模型,从而预测事物未来发展趋势的状况。 由于笔者的水平不足,本章只是概括性地介绍GM(1,1)模型的理论原理,便于对初学者的初步理解 目录一、灰色系统二、GM(1,1)灰色预测模型1.生成累加数据与紧临均值生成…

JMonkeyEngine——材质文件备注

默认J3M编辑器不支持编辑纹理参数的Mag/Min滤波选项,只能配置Flip和Wrap模式,但是可以单独编辑J3M源码,如下: 添加你需要的Mag/Min滤波选项,参考源码的解析,就是Mag/Min+拼接对应的Filter值。 虽然打开J3M编辑器会报错: 但实际进游戏时并不会报错,而且一切正常,如下:…

04-JS中的面向对象ES5

JS面向对象基础01 JS对象中key的类型02 创建对象的方法03 对象的常见操作 3.1 访问对象的属性 <!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="I…

程序员的AI工作流

AI 工具在日常工作中的应用逐渐成为程序员必备利器。本文介绍了作者常用的一些 AI 工具及使用方式,涵盖需求文档分析、技术文档编写、编程、PR/CR 和技术调研等工作内容,为提升工作效率提供了有力支持。作为一名程序员, 我现在已经深刻的体会到了AI带来的巨大的工作提升 本文…