java 单机接口限流处理方案
253
2022-09-04
【DELM预测】基于探路者算法改进深度学习极限学习机实现数据预测附matlab代码
1 简介
人工神经网络的最大缺点是训练时间太长从而限制其实时应用范围,近年来,极限学习机(Extreme Learning Machine, ELM)的提出使得前馈神经网络的训练时间大大缩短,然而当原始数据混杂入大量噪声变量时,或者当输入数据维度非常高时,极限学习机算法的综合性能会受到很大的影响.深度学习算法的核心是特征映射,它能够摒除原始数据中的噪声,并且当向低维度空间进行映射时,能够很好的起到对数据降维的作用,因此我们思考利用深度学习的优势特性来弥补极限学习机的弱势特性从而改善极限学习机的性能.为了进一步提升DELM预测精度,本文采用探路者算法进一步优化DELM超参数,仿真结果表明,改进算法的预测精度更高。
2 部分代码
%___________________________________________________________________________%% Pathfinder Algorithm (PFA) source codes version for desing problems %% %% Developed in MATLAB R2016b %% %% Author and developer: Hamza YAPICI %% %% hyapici@erbakan.edu.tr %% This is a simple codes of PFA inspired by %% collective movements and leadership behaviours %% of animals. % %% paper: Yapici H, Cetinkaya N. %% A new meta-heuristic optimizer: % % Pathfinder algorithm. %% Applied Soft Computing. 2019. %%___________________________________________________________________________%% clear all% clc% format long;% ObjectiveFunction = @Obj_function3; % Objective Function: Obj_function-Welded Beam Design, % Obj_function2-Tension/Compression, Obj_function3-pressure vessel, % Obj_function4-cantilever beam design% initialization% = 300; % problem_size = 4;% N = pop_size;% dim = problem_size;% max_iter = 500;function [global_pop,fit_global, minc]=PFA(N ,dim ,max_iter,lb,ub,ObjectiveFunction)% pressure vesselLb=lb*ones(1,dim);Ub=ub*ones(1,dim);problem_size=dim;pop_size=N;% Welded beam% Lb=[.1 .1 .1 .1];% Ub=[2 10 10 2];% cantilever beam% Lb=[0 0 0 0 0];% Ub=[100 100 100 100 100];% Tension/Compression% Lb=[.05 .25 2];% Ub=[2 1.3 15];% first populationfor j=1:problem_size pop(:,j)=Lb(j)+(Ub(j)-Lb(j)).*rand(pop_size,1);end% calculate the fitness of first populationfor ik=1:pop_size pop_fitness(ik)=ObjectiveFunction(pop(ik,:));end% find pathfinderfitness=pop_fitness;[fit_global, index]=min(pop_fitness);pop_old=pop;global_pop=pop(index,:); path_p=global_pop;path_old=path_p;ub=Ub; lb=Lb;minc(1)=fit_global;meanc(1)=mean(pop_fitness);iter=1;% iterative loopwhile iter < max_iter iter = iter+1; % parameters of PFA u1=-1+(1-(-1)).*rand(N,1); u2=-1+(1-(-1)).*rand(1,dim); r3=rand(1,dim); eps=(1 - iter/(max_iter)).*u1; A=u2.*exp(-2.*iter/max_iter); % update pathfinder path_p(1,:) = path_p(1,:) + ... ((2).*r3(1,:)).*(path_old(1,:) - path_p(1,:)) + 1.*A(1,:); Flag4ub=path_p(1,:)>ub(1,:); % check bounds % check lower bound for pathfinder Flag4lb=path_p(1,:)Ub(j)% path_p(1,j)=Ub(j);% end% end path_old=path_p; path_fitness=ObjectiveFunction(path_p(1,:)); [fitness, index] = sort(fitness); pop=pop(index,:); if path_fitness
3 仿真结果
4 参考文献
[1]马萌萌. 基于深度学习的极限学习机算法研究[D]. 中国海洋大学, 2016.
博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,相关matlab代码问题可私信交流。
部分理论引用网络文献,若有侵权联系博主删除。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~