Transformer四模型回歸打包(內含NRBO-Transformer-GRU、Transformer-GRU、Transformer、GRU模型)
目錄
- Transformer四模型回歸打包(內含NRBO-Transformer-GRU、Transformer-GRU、Transformer、GRU模型)
- 預測效果
- 基本介紹
- 程序設計
- 參考資料
預測效果
基本介紹
1.【JCR一區級】Matlab實現NRBO-Transformer-GRU多變量回歸預測,牛頓-拉夫遜算法優化Transformer-GRU組合模型(程序可以作為JCR一區級論文代碼支撐,目前尚未發表);
2.優化參數為:學習率,隱含層節點,正則化參數,運行環境為Matlab2023b及以上;
3.data為數據集,輸入多個特征,輸出單個變量,多變量回歸預測,main.m為主程序,運行即可,所有文件放在一個文件夾;
4.命令窗口輸出R2、MSE、RMSE、MAE、MAPE、MBE等多指標評價。
程序設計
- 完整源碼和數據獲取方式:私信博主回復Transformer四模型回歸打包(內含NRBO-Transformer-GRU、Transformer-GRU、Transformer、GRU模型)。
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
%% 清空環境變量
warning off % 關閉報警信息
close all % 關閉開啟的圖窗
clear % 清空變量
clc % 清空命令行%% 導入數據
res = xlsread('data.xlsx');%% 數據分析
num_size = 0.7; % 訓練集占數據集比例
outdim = 1; % 最后一列為輸出
num_samples = size(res, 1); % 樣本個數
res = res(randperm(num_samples), :); % 打亂數據集(不希望打亂時,注釋該行)
num_train_s = round(num_size * num_samples); % 訓練集樣本個數
f_ = size(res, 2) - outdim; % 輸入特征維度%% 劃分訓練集和測試集
P_train = res(1: num_train_s, 1: f_)';
T_train = res(1: num_train_s, f_ + 1: end)';
M = size(P_train, 2);P_test = res(num_train_s + 1: end, 1: f_)';
T_test = res(num_train_s + 1: end, f_ + 1: end)';
N = size(P_test, 2);
%% 數據歸一化
[P_train, ps_input] = mapminmax(P_train, 0, 1);
P_test = mapminmax('apply', P_test, ps_input);[t_train, ps_output] = mapminmax(T_train, 0, 1);
t_test = mapminmax('apply', T_test, ps_output);%% 參數設置
options = trainingOptions('adam', ... % ADAM 梯度下降算法'MiniBatchSize', 30, ... % 批大小,每次訓練樣本個數30'MaxEpochs', 100, ... % 最大訓練次數 100'InitialLearnRate', 1e-2, ... % 初始學習率為0.01'LearnRateSchedule', 'piecewise', ... % 學習率下降'LearnRateDropFactor', 0.5, ... % 學習率下降因子'LearnRateDropPeriod', 50, ... % 經過100次訓練后 學習率為 0.01 * 0.5'Shuffle', 'every-epoch', ... % 每次訓練打亂數據集'Plots', 'training-progress', ... % 畫出曲線'Verbose', false);
參考資料
[1] https://blog.csdn.net/kjm13182345320/category_11003178.html?spm=1001.2014.3001.5482
[2] https://blog.csdn.net/kjm13182345320/article/details/117378431
[3] https://blog.csdn.net/kjm13182345320/article/details/118253644