0
点赞
收藏
分享

微信扫一扫

基于松鼠算法改进深度学习极限学习机实现数据回归预测附matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。

🍎个人主页:Matlab科研工作室

🍊个人信条:格物致知。​

⛄ 内容介绍

人工时间的最大缺点是训练太长,因为它在应用神经网络的时间范围内,持续不断地限制神经网络,最大限度地限制学习机(Extreme Learning Machine)大量的噪声噪声,或者当输入数据时的维度算法非常高时,极限学习时的综合性能会受到极大的影响。进行空间映射时的有效对数据维的维度的预测,因此我们认为利用深度学习的预测精度来最大学习机的特性,可以很好地改善极限学习机的特性。本文采用松鼠算法进一步优化DELM超参数,仿真结果表明,改进的预测精度更高。

基于松鼠算法改进深度学习极限学习机实现数据回归预测附matlab代码_神经网络

基于松鼠算法改进深度学习极限学习机实现数据回归预测附matlab代码_神经网络_02

基于松鼠算法改进深度学习极限学习机实现数据回归预测附matlab代码_深度学习_03

基于松鼠算法改进深度学习极限学习机实现数据回归预测附matlab代码_神经网络_04

基于松鼠算法改进深度学习极限学习机实现数据回归预测附matlab代码_深度学习_05

⛄ 部分代码

function[output,B,Hnew]=ELM_AE(X,ActivF,number_neurons)

% ELM-AE:the function  create an auto-encoder based ELM. 

% number_neurons:number of neurons in hidden layer.

% X: the training set.

% prefomance: RMSE of training.

alpha=size(X);

% 1:generate a random input weights

input_weights=rand(number_neurons,alpha(2))*2-1;

% input_weightsTemp = orth(input_weights);%正交化

% if sum(size(input_weightsTemp)) == sum(size(input_weights))

%     input_weights = input_weightsTemp;

% end

% 2:calculating the hidden layer

tempH=input_weights*X';

% activation function

switch lower(ActivF)

    case {'sig','sigmoid'}

        %%%%%%%% Sigmoid 

        H = 1 ./ (1 + exp(-tempH));

    case {'sin','sine'}

        %%%%%%%% Sine

        H = sin(tempH);    

    case {'hardlim'}

        %%%%%%%% Hard Limit

        H = double(hardlim(tempH));

    case {'tribas'}

        %%%%%%%% Triangular basis function

        H = tribas(tempH);

    case {'radbas'}

        %%%%%%%% Radial basis function

        H = radbas(tempH);

        %%%%%%%% More activation functions can be added here                

end

% 3: calculate the output weights beta

B=pinv(H') * X ; %Moore-Penrose pseudoinverse of matrix

% calculate the output : Unlike other networks the AEs uses the same weight

% beta as an input weigth for coding and output weights for decoding

% we will no longer use the old input weights:input_weights. 

Hnew=X*B';

output=Hnew*pinv(B');

% 4:calculate the prefomance

prefomance=sqrt(mse(X-output));

end

⛄ 运行结果

基于松鼠算法改进深度学习极限学习机实现数据回归预测附matlab代码_深度学习_06

基于松鼠算法改进深度学习极限学习机实现数据回归预测附matlab代码_深度学习_07

基于松鼠算法改进深度学习极限学习机实现数据回归预测附matlab代码_数据_08

基于松鼠算法改进深度学习极限学习机实现数据回归预测附matlab代码_数据_09

⛄ 参考文献

[1]马萌萌. 基于深度学习的极限学习机算法研究[D]. 中国海洋大学, 2016.

❤️ 关注我领取海量matlab电子书和数学建模资料
❤️部分理论引用网络文献,若有侵权联系博主删除



举报

相关推荐

0 条评论