国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

時(shí)序預(yù)測 | MATLAB實(shí)現(xiàn)WOA-GRU鯨魚算法優(yōu)化門控循環(huán)單元時(shí)間序列預(yù)測

這篇具有很好參考價(jià)值的文章主要介紹了時(shí)序預(yù)測 | MATLAB實(shí)現(xiàn)WOA-GRU鯨魚算法優(yōu)化門控循環(huán)單元時(shí)間序列預(yù)測。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

時(shí)序預(yù)測 | MATLAB實(shí)現(xiàn)WOA-GRU鯨魚算法優(yōu)化門控循環(huán)單元時(shí)間序列預(yù)測

預(yù)測效果

時(shí)序預(yù)測 | MATLAB實(shí)現(xiàn)WOA-GRU鯨魚算法優(yōu)化門控循環(huán)單元時(shí)間序列預(yù)測
時(shí)序預(yù)測 | MATLAB實(shí)現(xiàn)WOA-GRU鯨魚算法優(yōu)化門控循環(huán)單元時(shí)間序列預(yù)測
時(shí)序預(yù)測 | MATLAB實(shí)現(xiàn)WOA-GRU鯨魚算法優(yōu)化門控循環(huán)單元時(shí)間序列預(yù)測
時(shí)序預(yù)測 | MATLAB實(shí)現(xiàn)WOA-GRU鯨魚算法優(yōu)化門控循環(huán)單元時(shí)間序列預(yù)測

基本介紹

MATLAB實(shí)現(xiàn)WOA-GRU鯨魚算法優(yōu)化門控循環(huán)單元時(shí)間序列預(yù)測
基于鯨魚算法優(yōu)化門控循環(huán)單元(WOA-GRU)的時(shí)間序列預(yù)測。
優(yōu)化參數(shù)為學(xué)習(xí)率,隱藏層節(jié)點(diǎn)個(gè)數(shù),正則化參數(shù),要求2020b及以上版本,matlab代碼。
評價(jià)指標(biāo)包括:MAE、MSE、RMSE等,代碼質(zhì)量極高,方便學(xué)習(xí)和替換數(shù)據(jù)。

程序設(shè)計(jì)

  • 完整程序和數(shù)據(jù)下載方式1(資源處直接下載):MATLAB實(shí)現(xiàn)WOA-GRU鯨魚算法優(yōu)化門控循環(huán)單元時(shí)間序列預(yù)測
  • 完整程序和數(shù)據(jù)下載方式2(訂閱《GRU門控循環(huán)單元》專欄,同時(shí)可閱讀《GRU門控循環(huán)單元》專欄收錄的所有內(nèi)容,數(shù)據(jù)訂閱后私信我獲取):MATLAB實(shí)現(xiàn)WOA-GRU鯨魚算法優(yōu)化門控循環(huán)單元時(shí)間序列預(yù)測
  • 完整程序和數(shù)據(jù)下載方式3(訂閱《智能學(xué)習(xí)》專欄,同時(shí)獲取《智能學(xué)習(xí)》專欄收錄程序6份,數(shù)據(jù)訂閱后私信我獲取):MATLAB實(shí)現(xiàn)WOA-GRU鯨魚算法優(yōu)化門控循環(huán)單元時(shí)間序列預(yù)測
% 預(yù)設(shè)鯨魚優(yōu)化算法的參數(shù) 
popsize = 5; %種群數(shù)量
maxgen = 20;  % WOA最大的迭代次數(shù)
dim = 3; % 優(yōu)化的自變量個(gè)數(shù) ,依次為GRU的第一和第二隱含層節(jié)點(diǎn)數(shù),最大訓(xùn)練代數(shù),初始學(xué)習(xí)率

   %輸入輸出數(shù)據(jù)
    L = size(output, 1); %樣本總數(shù)
    %     testNumber = round(L*0.2); %設(shè)置四個(gè)樣本測試
    testNumber =20; %設(shè)置四個(gè)樣本測試
    trainNumber = L - testNumber; %訓(xùn)練樣本數(shù)量
 
    % 劃分訓(xùn)練集和測試集
    p_train = input(1:trainNumber, :)';
    t_train = output(1:trainNumber, :)';
    % 測試集 
    p_test = input(trainNumber+1:trainNumber+testNumber,:)';
    t_test = output(trainNumber+1:trainNumber+testNumber,:)';
        %% 歸一化和元胞數(shù)組處理
    [pn_train ,ps]= mapminmax(p_train);
    [tn_train, ts] = mapminmax(t_train);
    %測試集的歸一化
    pn_test = mapminmax('apply', p_test, ps);
    tn_test = mapminmax('apply', t_test, ts);

     for i = 1:length(t_train)
        P_train{i,1} =  pn_train(:,i);
    end
    for i = 1:length(t_test)
        P_test{i,1} =  pn_test(:,i);
    end

    %% 歸一化和元胞數(shù)組處理p 4; % 優(yōu)化的自變量個(gè)數(shù) ,依次為GRU的第一和第二隱含層節(jié)點(diǎn)數(shù),最大訓(xùn)練代數(shù),初始學(xué)習(xí)率
    lb = [1, 1, 0.001]; % 下限
    ub = [10,20, 0.01]; % 上限

    % initialize position vector and score for the leader,初始化位置向量和領(lǐng)導(dǎo)者得分
    Leader_pos=zeros(1,dim);
    Leader_score=inf; %change this to -inf for maximization problems,將此更改為-inf以獲得最大化問題,Inf無窮大


    %Initialize the positions of search agents
    Positions=initialization(popsize,dim,ub,lb);%Positions,存放數(shù)個(gè)個(gè)體的多維位置。

    Convergence_curve=zeros(1,maxgen);%Convergence_curve收斂曲線

    t=1;% Loop counter

    % Main loop
    while t<maxgen+1   % 首先  迭代次數(shù)的while循環(huán)   為2  也就是鯨魚群體會(huì)進(jìn)化2disp(['current iteration is: ', num2str(t)])
        

        for i=1:size(Positions,1)%對每個(gè)個(gè)體一個(gè)一個(gè)檢查是否越界  % 種群規(guī)模是2  所以嵌套了2次訓(xùn)練

            % Return back the search agents that go beyond the boundaries of
            % the search space,返回超出搜索空間邊界的搜索代理
            Flag4ub=Positions(i,:)>ub;
            Flag4lb=Positions(i,:)<lb;
            Positions(i,:)=(Positions(i,:).*(~(Flag4ub+Flag4lb)))+ub.*Flag4ub+lb.*Flag4lb;%超過最大值的設(shè)置成最大值,超過最小值的設(shè)置成最小值


            % 評估個(gè)體適應(yīng)度,會(huì)調(diào)用func.m子函數(shù),把個(gè)體位置坐標(biāo)賦給GRU參數(shù)中,執(zhí)行的訓(xùn)練
            % Calculate objective function for each search agent,目標(biāo)函數(shù)值的計(jì)算
            [fitness,net]=func(Positions(i,:),p_train,P_train,P_test, tn_train,ts,t_train,t_test);
            if fitness<Leader_score % Change this to > for maximization problem
                Leader_score=fitness; % Update alpha
                Leader_pos=Positions(i,:);
                net1 = net;
            end

        end
        a=2-t*((2)/maxgen); % a decreases linearly fron 2 to 0 in Eq. (2.3)
        % a2 linearly dicreases from -1 to -2 to calculate t in Eq. (3.12),有疑問?
        a2=-1+t*((-1)/maxgen);

        % Update the Position of search agents,參數(shù)更新
        for i=1:size(Positions,1)
            r1=rand(); % r1 is a random number in [0,1]
            r2=rand(); % r2 is a random number in [0,1]

            A=2*a*r1-a;  % Eq. (2.3) in the paper 
            C=2*r2;      % Eq. (2.4) in the paper

            b=1;               %  parameters in Eq. (2.5)
            l=(a2-1)*rand+1;   %  parameters in Eq. (2.5)

            p = rand();        % p in Eq. (2.6)
            for j=1:size(Positions,2)%對每一個(gè)個(gè)體地多維度進(jìn)行循環(huán)運(yùn)算

                if p<0.5%收縮包圍機(jī)制

參考資料

[1] https://blog.csdn.net/article/details/126072792?spm=1001.2014.3001.5502
[2] https://blog.csdn.net/article/details/126044265?spm=1001.2014.3001.5502
[3] https://blog.csdn.net/article/details/126043107?spm=1001.2014.3001.5502文章來源地址http://www.zghlxwxcb.cn/news/detail-426528.html

到了這里,關(guān)于時(shí)序預(yù)測 | MATLAB實(shí)現(xiàn)WOA-GRU鯨魚算法優(yōu)化門控循環(huán)單元時(shí)間序列預(yù)測的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包