【Transformer-BIGRU回归预测】Transformer-BIGRU多变量回归预测,基于Transformer-BIGRU多变量输入模型。matlab代码,2023b及其以上。

评价指标包括:R2、MAE、MSE、RMSE和MAPE等,代码质量极高,方便学习和替换数据。参数可方便更改,程序和excel数据放在一个文件夹,注释明细。

Transformer 作为一种创新的神经网络结构,深受欢迎。采用 Transformer 编码器对光伏、负荷数据特征间的复杂关系以及时间序列中的长短期依赖关系进行挖掘,可以提高光伏功率、负荷预测的准确性。

%% 划分训练集和测试集

P_train = res(1: num_train_s, 1: f_)';

T_train = res(1: num_train_s, f_ + 1: end)';

P_test = res(num_train_s + 1: end, 1: f_)';

T_test = res(num_train_s + 1: end, f_ + 1: end)';

%% 划分训练集和测试集

M = size(P_train, 2);

N = size(P_test, 2);

or_dim = size(P_train,1) ; % 记录特征数据维度

n_out = 1 ; % % 预测步长

% 数据归一化

[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);

%% 数据平铺

for i = 1:size(p_train,2)

trainD{i,:} = (reshape(p_train(:,i),or_dim,[]));

end

for i = 1:size(p_test,2)

testD{i,:} = (reshape(p_test(:,i),or_dim,[]));

end

targetD = t_train';

targetD_test = t_test';

智能算法及其模型预测

更多推荐