Transformer-GRU、Transformer、CNN-GRU、GRU、CNN五模型多變量回歸預測
目錄
- Transformer-GRU、Transformer、CNN-GRU、GRU、CNN五模型多變量回歸預測
- 預測效果
- 基本介紹
- 程序設計
- 參考資料
預測效果
基本介紹
Transformer-GRU、Transformer、CNN-GRU、GRU、CNN五模型多變量回歸預測
Transformer-GRU、Transformer、CNN-GRU、GRU、CNN五模型多變量回歸預測 (Matlab2023b 多輸入單輸出)
1.程序已經調試好,替換數據集后,僅運行一個main即可運行,數據格式為excel!!!
2.Transformer-GRU、Transformer、CNN-GRU、GRU、CNN五模型多變量回歸預測 (Matlab2023b 多輸入單輸出)。
3.運行環境要求MATLAB版本為2023b及其以上。
4.評價指標包括:R2、MAE、MSE、RPD、RMSE、MAPE等,圖很多,符合您的需要代碼中文注釋清晰,質量極高。
程序設計
- 完整源碼和數據獲取方式私信回復Transformer-GRU、Transformer、CNN-GRU、GRU、CNN五模型多變量回歸預測。
%% 預測
t_sim1 = predict(net, p_train);
t_sim2 = predict(net, p_test ); %% 數據反歸一化
T_sim1 = mapminmax('reverse', t_sim1, ps_output);
T_sim2 = mapminmax('reverse', t_sim2, ps_output);%% 均方根誤差
error1 = sqrt(sum((T_sim1' - T_train).^2) ./ M);
error2 = sqrt(sum((T_sim2' - T_test ).^2) ./ N);%% 相關指標計算
% R2
R1 = 1 - norm(T_train - T_sim1')^2 / norm(T_train - mean(T_train))^2;
R2 = 1 - norm(T_test - T_sim2')^2 / norm(T_test - mean(T_test ))^2;disp(['訓練集數據的R2為:', num2str(R1)])
disp(['測試集數據的R2為:', num2str(R2)])% MAE
mae1 = sum(abs(T_sim1' - T_train)) ./ M ;
mae2 = sum(abs(T_sim2' - T_test )) ./ N ;disp(['訓練集數據的MAE為:', num2str(mae1)])
disp(['測試集數據的MAE為:', num2str(mae2)])%% 平均絕對百分比誤差MAPE
MAPE1 = mean(abs((T_train - T_sim1')./T_train));
MAPE2 = mean(abs((T_test - T_sim2')./T_test));disp(['訓練集數據的MAPE為:', num2str(MAPE1)])
disp(['測試集數據的MAPE為:', num2str(MAPE2)])% MBE
mbe1 = sum(abs(T_sim1' - T_train)) ./ M ;
mbe2 = sum(abs(T_sim1' - T_train)) ./ N ;disp(['訓練集數據的MBE為:', num2str(mbe1)])
disp(['測試集數據的MBE為:', num2str(mbe2)])%均方誤差 MSE
mse1 = sum((T_sim1' - T_train).^2)./M;
mse2 = sum((T_sim2' - T_test).^2)./N;disp(['訓練集數據的MSE為:', num2str(mse1)])
disp(['測試集數據的MSE為:', num2str(mse2)])
參考資料
[1] https://blog.csdn.net/kjm13182345320/article/details/128577926?spm=1001.2014.3001.5501
[2] https://blog.csdn.net/kjm13182345320/article/details/128573597?spm=1001.2014.3001.5501