【预测模型-DELM分类】基于风驱动算法改进深度学习极限学习机实现数据分类附matlab代码

本文涉及的产品
交互式建模 PAI-DSW,每月250计算时 3个月
模型训练 PAI-DLC,5000CU*H 3个月
模型在线服务 PAI-EAS,A10/V100等 500元 1个月
简介: 【预测模型-DELM分类】基于风驱动算法改进深度学习极限学习机实现数据分类附matlab代码

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

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

🍊个人信条:格物致知。

更多Matlab仿真内容点击👇

智能优化算法  神经网络预测雷达通信 无线传感器

信号处理图像处理路径规划元胞自动机无人机

⛄ 内容介绍

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

⛄ 部分代码


%-------------------------------------------------------------------------


tic;  

clear;  

close all;  

clc;  

format long g;

delete('WDOoutput.txt');  

delete('WDOpressure.txt');  

delete('WDOposition.txt');

fid=fopen('WDOoutput.txt','a');

%--------------------------------------------------------------


% User defined WDO parameters:

param.popsize = 20; % population size.

param.npar = 5; % Dimension of the problem.

param.maxit = 500; % Maximum number of iterations.

param.RT = 3; % RT coefficient.

param.g = 0.2; % gravitational constant.

param.alp = 0.4; % constants in the update eq.

param.c = 0.4; % coriolis effect.

maxV = 0.3; % maximum allowed speed.

dimMin =  -5; % Lower dimension boundary.

dimMax= 5; % Upper dimension boundary.

%---------------------------------------------------------------


% Initialize WDO population, position and velocity:

% Randomize population in the range of [-1, 1]:

pos = 2*(rand(param.popsize,param.npar)-0.5);

% Randomize velocity:

vel = maxV * 2 * (rand(param.popsize,param.npar)-0.5);  


%---------------------------------------------------------------


% Evaluate initial population: (Sphere Function)

for K=1:param.popsize,

x = (dimMax - dimMin) * ((pos(K,:)+1)./2) + dimMin;

    pres(K,:) = sum (x.^2);

end

%----------------------------------------------------------------


% Finding best air parcel in the initial population :

[globalpres,indx] = min(pres);

globalpos = pos(indx,:);

minpres(1) = min(pres); % minimum pressure

%-----------------------------------------------------------------


% Rank the air parcels:

[sorted_pres rank_ind] = sort(pres);

% Sort the air parcels:

pos = pos(rank_ind,:);

keepglob(1) = globalpres;

%-----------------------------------------------------------------


% Start iterations :

iter = 1;   % iteration counter

for ij = 2:param.maxit,

    % Update the velocity:

    for i=1:param.popsize

% choose random dimensions:

a = randperm(param.npar);        

% choose velocity based on random dimension:

    velot(i,:) = vel(i,a);

        vel(i,:) = (1-param.alp)*vel(i,:)-(param.g*pos(i,:))+ ...

   abs(1-1/i)*((globalpos-pos(i,:)).*param.RT)+ ...

   (param.c*velot(i,:)/i);

    end

   

        % Check velocity:

        vel = min(vel, maxV);

        vel = max(vel, -maxV);

% Update air parcel positions:

    pos = pos + vel;

        pos = min(pos, 1.0);

        pos = max(pos, -1.0);

% Evaluate population: (Pressure)

for K=1:param.popsize,

x = (dimMax - dimMin) * ((pos(K,:)+1)./2) + dimMin;

    pres(K,:) = sum (x.^2);

end


    %----------------------------------------------------

    % Finding best particle in population

    [minpres,indx] = min(pres);

    minpos = pos(indx,:);           % min location for this iteration

    %----------------------------------------------------

    % Rank the air parcels:

    [sorted_pres rank_ind] = sort(pres);

    % Sort the air parcels position, velocity and pressure:

    pos = pos(rank_ind,:);

    vel = vel(rank_ind,:);

    pres = sorted_pres;  

   

    % Updating the global best:

    better = minpres < globalpres;

    if better

        globalpres = minpres             % initialize global minimum

        globalpos = minpos;

  end

% Keep a record of the progress:

    keepglob(ij) = globalpres;

    save WDOposition.txt pos -ascii -tabs;

end

%Save values to the final file.

    pressure = transpose(keepglob);

    save WDOpressure.txt pressure -ascii -tabs;

       

       % Plot the pressure function progress over iterations:

       semilogy(keepglob, 'k' ,'LineWidth',2)

       title(['Global Best Pressure is " ',num2str(keepglob(1,param.maxit)),' ".'])

       xlabel('Number of Iterations')

       ylabel('Global Pressure (i.e. fitness) in log scale')

       grid on

       xlim([0, param.maxit])

       

       

    %END

%-----------------------------------------------------


⛄ 运行结果

⛄ 参考文献

[1]吴丁杰, 温立书. 一种基于哈里斯鹰算法优化的核极限学习机[J]. 信息通信, 2021(034-011).

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

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


相关文章
|
1月前
|
机器学习/深度学习 人工智能 算法
基于深度学习的地面垃圾识别分类技术
AI垃圾分类系统结合深度学习和计算机视觉技术,实现高效、精准的垃圾识别与自动分类。系统集成高精度图像识别、多模态数据分析和实时处理技术,适用于市政环卫、垃圾处理厂和智能回收设备,显著提升管理效率,降低人工成本。
基于深度学习的地面垃圾识别分类技术
|
2月前
|
机器学习/深度学习 数据处理 数据库
基于Django的深度学习视频分类Web系统
基于Django的深度学习视频分类Web系统
57 4
基于Django的深度学习视频分类Web系统
|
3月前
|
机器学习/深度学习 人工智能 算法
【新闻文本分类识别系统】Python+卷积神经网络算法+人工智能+深度学习+计算机毕设项目+Django网页界面平台
文本分类识别系统。本系统使用Python作为主要开发语言,首先收集了10种中文文本数据集("体育类", "财经类", "房产类", "家居类", "教育类", "科技类", "时尚类", "时政类", "游戏类", "娱乐类"),然后基于TensorFlow搭建CNN卷积神经网络算法模型。通过对数据集进行多轮迭代训练,最后得到一个识别精度较高的模型,并保存为本地的h5格式。然后使用Django开发Web网页端操作界面,实现用户上传一段文本识别其所属的类别。
101 1
【新闻文本分类识别系统】Python+卷积神经网络算法+人工智能+深度学习+计算机毕设项目+Django网页界面平台
|
2月前
|
机器学习/深度学习 PyTorch 算法框架/工具
深度学习入门案例:运用神经网络实现价格分类
深度学习入门案例:运用神经网络实现价格分类
|
2月前
|
机器学习/深度学习 传感器 监控
深度学习之动作识别与分类
基于深度学习的动作识别与分类是指通过深度学习模型从视频或传感器数据中自动识别和分类人类动作的过程。这项技术广泛应用于视频监控、安全监控、体育分析、医疗康复、虚拟现实(VR)和增强现实(AR)等领域。
78 1
|
3月前
|
机器学习/深度学习 数据采集 数据可视化
深度学习实践:构建并训练卷积神经网络(CNN)对CIFAR-10数据集进行分类
本文详细介绍如何使用PyTorch构建并训练卷积神经网络(CNN)对CIFAR-10数据集进行图像分类。从数据预处理、模型定义到训练过程及结果可视化,文章全面展示了深度学习项目的全流程。通过实际操作,读者可以深入了解CNN在图像分类任务中的应用,并掌握PyTorch的基本使用方法。希望本文为您的深度学习项目提供有价值的参考与启示。
|
4月前
|
机器学习/深度学习 人工智能 算法框架/工具
深入浅出:使用深度学习进行图像分类
【8月更文挑战第31天】在本文中,我们将一起探索如何利用深度学习技术对图像进行分类。通过简明的语言和直观的代码示例,我们将了解构建和训练一个简单卷积神经网络(CNN)模型的过程。无论你是初学者还是有一定基础的开发者,这篇文章都将为你提供清晰的指导和启发性的见解,帮助你理解并应用深度学习解决实际问题。
|
3月前
|
机器学习/深度学习 数据挖掘 TensorFlow
解锁Python数据分析新技能,TensorFlow&PyTorch双引擎驱动深度学习实战盛宴
在数据驱动时代,Python凭借简洁的语法和强大的库支持,成为数据分析与机器学习的首选语言。Pandas和NumPy是Python数据分析的基础,前者提供高效的数据处理工具,后者则支持科学计算。TensorFlow与PyTorch作为深度学习领域的两大框架,助力数据科学家构建复杂神经网络,挖掘数据深层价值。通过Python打下的坚实基础,结合TensorFlow和PyTorch的强大功能,我们能在数据科学领域探索无限可能,解决复杂问题并推动科研进步。
68 0
|
4月前
|
机器学习/深度学习 API 计算机视觉
如何使用深度学习实现图像分类
深度学习在图像分类中扮演着核心角色,通过卷积神经网络(CNN)自动提取图像特征并分类。本文介绍深度学习原理及其实现流程,包括数据准备、构建CNN模型、训练与评估模型,并讨论如何在阿里云上部署模型及其实用场景。
|
4月前
|
机器学习/深度学习 TensorFlow 算法框架/工具
深度学习中的图像分类:从理论到实践
【8月更文挑战第31天】 本文将带你深入了解深度学习在图像分类领域的应用。我们将从理论基础出发,逐步过渡到实际的代码实现,让你能够亲手构建一个简单的图像分类模型。无论你是初学者还是有一定基础的开发者,都能从中获得启发和收获。

热门文章

最新文章