基于麻雀算法优化的深度极限学习机DLM的预测算法(Matlab代码实现)

简介: 基于麻雀算法优化的深度极限学习机DLM的预测算法(Matlab代码实现)

👨‍🎓个人主页:研学社的博客

💥💥💞💞欢迎来到本博客❤️❤️💥💥

🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。

⛳️座右铭:行百里者,半于九十。

📋📋📋本文目录如下:🎁🎁🎁

目录

💥1 概述

📚2 运行结果

🎉3 参考文献

🌈4 Matlab代码及文章讲解


image.gif

💥1 概述

根据ELM-AE的特征表示能力,将它作为深度极限学习机 DELM的基本单元。与传统深度学习算法相同,DELM也是用逐层贪婪的训练方法来训练网络,DELM每个隐藏层的输入权重都使用ELM-AE初始化执行分层无监督训练,但是与传统深度学习算法不同的是DELM不需要反向微调过程。

image.gif

DELM的思想是通过最大限度地降低重构误差使输出可以无限接近原始输入,经过每一层的训练,可以学习到原始数据的高级特征。图2描述了DELM模型的训练过程,将输入数据样本X作为第1个ELM-AE的目标输出(=X),进而求取输出权值βr﹔然后将DELM第1个隐藏层的输出矩阵H当作下1个ELM ― AE的输入与目标输出(=X),依次类推逐层训练,最后1层用ELM来训练,使用式(2)来求解DELM的最后1个隐藏层的输出权重。图2中是最后1个隐藏层的输出矩阵,T是样本标签。image.gif编辑每1层隐藏层的输入权重矩阵为

📚2 运行结果

image.gif

image.gif

image.gif

image.gif

部分代码:

%% 带初始权重的DELM训练函数

%输入-----------------------

%InputWietht:输入的初始权重

%P_train 输入数据,数据格式为N*dim,N代表数据组数,dim代表数据维度。

%T_train 输入标签数据

%ActiveF 为激活函数,如'sig','sin','hardlim','tribas'等。

%C为正则化系数

%输出: outWeight为输出权重

function OutWeight = DELMTrainWithInitial(InputWietht,P_train,T_train,ELMAEhiddenLayer,ActivF,C)

hiddenLayerSize = length(ELMAEhiddenLayer); %获取ELM-AE的层数

outWieght = {};%用于存放所有的权重

P_trainOrg = P_train;

count = 1;

%% ELM-AE提取数据特征

for i = 1:hiddenLayerSize

   Num = ELMAEhiddenLayer(i)*size(P_train,2);

   InputW = InputWietht(count:count+Num-1);

   count = count+Num;

   InputW = reshape(InputW,[ELMAEhiddenLayer(i),size(P_train,2)]);

   [~,B,Hnew] = ELM_AEWithInitial(InputW,P_train,ActivF,ELMAEhiddenLayer(i)); %获取权重

   OutWeight{i} = B';

   P_train =P_train*B'; %输入经过第一层后传递给下一层

end

%% 最后一层ELM进行监督训练

P = P_train;

N =size(P,2);

I = eye(N);

beta = pinv((P'*P+I/C))*P'*T_train;

OutWeight{hiddenLayerSize + 1} = beta; %存储最后一层ELM的信息。

end

🎉3 参考文献

部分理论来源于网络,如有侵权请联系删除。

[1]张文帅,王占刚.基于改进麻雀算法优化深度极限学习机的缺失数据预测[J].电子测量技术,2022,45(15):63-67.DOI:10.19651/j.cnki.emt.2209216.

🌈4 Matlab代码及文章讲解

链接:https://pan.baidu.com/s/1rjShcvq-OozdKoVLJvmg_g 

提取码:9ksb

--来自百度网盘超级会员V3的分享

相关文章
|
7天前
|
算法
分享一些提高二叉树遍历算法效率的代码示例
这只是简单的示例代码,实际应用中可能还需要根据具体需求进行更多的优化和处理。你可以根据自己的需求对代码进行修改和扩展。
|
10天前
|
算法 数据挖掘 数据安全/隐私保护
基于FCM模糊聚类算法的图像分割matlab仿真
本项目展示了基于模糊C均值(FCM)算法的图像分割技术。算法运行效果良好,无水印。使用MATLAB 2022a开发,提供完整代码及中文注释,附带操作步骤视频。FCM算法通过隶属度矩阵和聚类中心矩阵实现图像分割,适用于灰度和彩色图像,广泛应用于医学影像、遥感图像等领域。
|
11天前
|
算法 调度
基于遗传模拟退火混合优化算法的车间作业最优调度matlab仿真,输出甘特图
车间作业调度问题(JSSP)通过遗传算法(GA)和模拟退火算法(SA)优化多个作业在并行工作中心上的加工顺序和时间,以最小化总完成时间和机器闲置时间。MATLAB2022a版本运行测试,展示了有效性和可行性。核心程序采用作业列表表示法,结合遗传操作和模拟退火过程,提高算法性能。
|
11天前
|
机器学习/深度学习 算法 芯片
基于GSP工具箱的NILM算法matlab仿真
基于GSP工具箱的NILM算法Matlab仿真,利用图信号处理技术解析家庭或建筑内各电器的独立功耗。GSPBox通过图的节点、边和权重矩阵表示电气系统,实现对未知数据的有效分类。系统使用MATLAB2022a版本,通过滤波或分解技术从全局能耗信号中提取子设备的功耗信息。
|
11天前
|
机器学习/深度学习 算法 5G
基于MIMO系统的SDR-AltMin混合预编码算法matlab性能仿真
基于MIMO系统的SDR-AltMin混合预编码算法通过结合半定松弛和交替最小化技术,优化大规模MIMO系统的预编码矩阵,提高信号质量。Matlab 2022a仿真结果显示,该算法能有效提升系统性能并降低计算复杂度。核心程序包括预编码和接收矩阵的设计,以及不同信噪比下的性能评估。
27 3
|
11天前
|
人工智能 算法 大数据
Linux内核中的调度算法演变:从O(1)到CFS的优化之旅###
本文深入探讨了Linux操作系统内核中进程调度算法的发展历程,聚焦于O(1)调度器向完全公平调度器(CFS)的转变。不同于传统摘要对研究背景、方法、结果和结论的概述,本文创新性地采用“技术演进时间线”的形式,简明扼要地勾勒出这一转变背后的关键技术里程碑,旨在为读者提供一个清晰的历史脉络,引领其深入了解Linux调度机制的革新之路。 ###
|
3月前
|
安全
【2023高教社杯】D题 圈养湖羊的空间利用率 问题分析、数学模型及MATLAB代码
本文介绍了2023年高教社杯数学建模竞赛D题的圈养湖羊空间利用率问题,包括问题分析、数学模型建立和MATLAB代码实现,旨在优化养殖场的生产计划和空间利用效率。
199 6
【2023高教社杯】D题 圈养湖羊的空间利用率 问题分析、数学模型及MATLAB代码
|
3月前
|
存储 算法 搜索推荐
【2022年华为杯数学建模】B题 方形件组批优化问题 方案及MATLAB代码实现
本文提供了2022年华为杯数学建模竞赛B题的详细方案和MATLAB代码实现,包括方形件组批优化问题和排样优化问题,以及相关数学模型的建立和求解方法。
128 3
【2022年华为杯数学建模】B题 方形件组批优化问题 方案及MATLAB代码实现
|
3月前
|
数据采集 存储 移动开发
【2023五一杯数学建模】 B题 快递需求分析问题 建模方案及MATLAB实现代码
本文介绍了2023年五一杯数学建模竞赛B题的解题方法,详细阐述了如何通过数学建模和MATLAB编程来分析快递需求、预测运输数量、优化运输成本,并估计固定和非固定需求,提供了完整的建模方案和代码实现。
90 0
【2023五一杯数学建模】 B题 快递需求分析问题 建模方案及MATLAB实现代码
|
6月前
|
数据安全/隐私保护
耐震时程曲线,matlab代码,自定义反应谱与地震波,优化源代码,地震波耐震时程曲线
地震波格式转换、时程转换、峰值调整、规范反应谱、计算反应谱、计算持时、生成人工波、时频域转换、数据滤波、基线校正、Arias截波、傅里叶变换、耐震时程曲线、脉冲波合成与提取、三联反应谱、地震动参数、延性反应谱、地震波缩尺、功率谱密度