目录
效果一览
基本介绍
1.Matlab基于Transformer多变量时间序列多步预测;
2.多变量时间序列数据集(负荷数据集),采用前96个时刻预测的特征和负荷数据预测未来96个时刻的负荷数据;
3.excel数据方便替换,运行环境matlab2023及以上,展示最后96个时间步的预测对比图,评价指标MAE、MAPE、RMSE、MSE、R2;
注:程序和数据放在一个文件夹。
4.程序语言为matlab,程序可出预测效果图,指标图;
5.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。
程序设计
- 完整程序和数据获取方式私信博主回复Matlab基于Transformer多变量时间序列多步预测。
python
在单 GPU 上训练。
|============================================================|
| 轮 | 迭代 | 经过的时间 | 小批量 RMSE | 小批量损失 | 基础学习率 |
| | | (hh:mm:ss) | | | |
|============================================================|
| 1 | 1 | 00:00:00 | 5.52 | 15.2 | 0.0010 |
| 10 | 50 | 00:00:02 | 4.55 | 10.4 | 0.0010 |
| 20 | 100 | 00:00:04 | 1.57 | 1.2 | 0.0010 |
| 30 | 150 | 00:00:07 | 1.54 | 1.2 | 0.0010 |
| 40 | 200 | 00:00:09 | 0.81 | 0.3 | 0.0010 |
| 50 | 250 | 00:00:11 | 1.19 | 0.7 | 0.0010 |
|============================================================|
训练结束: 已完成最大轮数。
历时 12.257705 秒。
1.均方差(MSE):76636.1226
2.根均方差(RMSE):276.8323
3.平均绝对误差(MAE):226.3397
4.平均相对百分误差(MAPE):5.2361%
5.R2:90.0432%
MAE MAPE MSE RMSE R^2
______ ________ _____ ______ _______
Transformer 226.34 0.052361 76636 276.83 0.90043
%% Set the hyper parameters for unet training
options0 = trainingOptions('adam', ... % 优化算法Adam
'MaxEpochs', 150, ... % 最大训练次数
'GradientThreshold', 1, ... % 梯度阈值
'InitialLearnRate', 0.01, ... % 初始学习率
'LearnRateSchedule', 'piecewise', ... % 学习率调整
'LearnRateDropPeriod',100, ... % 训练100次后开始调整学习率
'LearnRateDropFactor',0.01, ... % 学习率调整因子
'L2Regularization', 0.001, ... % 正则化参数
'ExecutionEnvironment', 'cpu',... % 训练环境
'Verbose', 1, ... % 关闭优化过程
'Plots', 'none'); % 画出曲线
参考资料
[2] https://download.csdn.net/download/kjm13182345320/87568090?spm=1001.2014.3001.5501
[3] https://blog.csdn.net/kjm13182345320/article/details/129433463?spm=1001.2014.3001.5501