👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆下载资源链接👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆
《《《《《《《《更多资源还请持续关注本专栏》》》》》》》
论文与完整源程序_电网论文源程序的博客-CSDN博客https://blog.csdn.net/liang674027206/category_12531414.html
深度极限学习机DELM,还有优化算法优化DELM的,回归预测(matlab代码)
基于麻雀算法优化的深度极限学习机DLM的预测算法 深度极限学习机(DELM)原理 根据ELM-AE的特征表示能力,将它作为深度极限学习机 DELM的基本单元。与传统深度学习算法相同,DELM 也是用逐层贪婪的训练方法来训练网络,DELM每个隐藏层的输入权重都使用ELM-AE初始化,执行分层无监督训练,但是与传统深度学习算法不同的是DELM不需要反向微调过程。
优势:可用于风电预测、光伏预测、负荷预测
附带说明文档:
部分代码展示:
%% 带初始权重的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
效果展示:
143号资源-源程序:《深度极限学习机DELM预测》本人博客有解读资源-CSDN文库https://download.csdn.net/download/LIANG674027206/89621300👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆下载资源链接👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆
《《《《《《《《更多资源还请持续关注本专栏》》》》》》》
论文与完整源程序_电网论文源程序的博客-CSDN博客https://blog.csdn.net/liang674027206/category_12531414.html