基于LSTM的发电量多步预测(matlab源码)

 1、结果展示

 

 

 

 

2、部分代码

%%基于LSTM的发电量多步预测(matlab源码)
clc
clear
load Generation_data.mat;                                                           % load data from hard drive to workspace
IrradiationData=readtable('Irradiation data.xlsx');
TrainIp=table2array(IrradiationData(1028:2927,4));                          % read data from workspace
TestIp=table2array(generationdata_table_dt(1005:2904,4));
XTrainIp = input(1:numTimeStepsTrain+1);                                     % training input data points
XTestIp = target(1:numTimeStepsTrain+1);                                     % training target data points

YTrainIp = input(numTimeStepsTrain+1:end);                                  % testing input data points
YTestIp = target(numTimeStepsTrain+1:end);

numFeatures = 2;                                                            % number of inputs=2
numResponses = 1;                                                           % number of output=1
numHiddenUnits = 200;                                                       % number of hidden unites

rmsepred=[];
rmseupdat=[];
maepred=[];
maeupdat=[];
mapepred=[];
mapeupdat=[];

layers = [ ...
    sequenceInputLayer(numFeatures)
    lstmLayer(numHiddenUnits)
    fullyConnectedLayer(numResponses)
    regressionLayer]; 

options = trainingOptions('adam', ...
    'MaxEpochs',250, ...
    'GradientThreshold',1, ...
    'InitialLearnRate',0.005, ...
    'MiniBatchSize',50, ...
    'LearnRateSchedule','piecewise', ...
    'LearnRateDropPeriod',90, ...
    'LearnRateDropFactor',0.2, ...
    'Verbose',false, ...
    'Plots','training-progress');                                           % LSTM other options
%     'ValidationData',{XTestIp,YTestIp},...
%     'ValidationFrequency',30, ...

你可能感兴趣的:(深度学习,预测,matlab,深度学习)