多維時序 | Matlab實現(xiàn)LSTM-Adaboost和LSTM多變量時間序列預(yù)測對比
預(yù)測效果
基本介紹
多維時序 | Matlab實現(xiàn)LSTM-Adaboost和LSTM多變量時間序列預(yù)測對比
模型描述
Matlab實現(xiàn)LSTM-Adaboost和LSTM多變量時間序列預(yù)測對比(完整程序和數(shù)據(jù))
1.輸入多個特征,輸出單個變量;
2.考慮歷史特征的影響,多變量時間序列預(yù)測;
4.csv數(shù)據(jù),方便替換;
5.運行環(huán)境Matlab2018b及以上;
6.輸出誤差對比圖。文章來源:http://www.zghlxwxcb.cn/news/detail-683356.html
程序設(shè)計
- 完整程序和數(shù)據(jù)獲取方式1:同等價值程序兌換;
- 完整程序和數(shù)據(jù)獲取方式2:私信博主回復(fù)Matlab實現(xiàn)LSTM-Adaboost和LSTM多變量時間序列預(yù)測對比獲取
- 完整程序和數(shù)據(jù)獲取方式3(直接下載):Matlab實現(xiàn)LSTM-Adaboost和LSTM多變量時間序列預(yù)測對比。
(32,'OutputMode',"last",'Name','bil4','RecurrentWeightsInitializer','He','InputWeightsInitializer','He')
dropoutLayer(0.25,'Name','drop2')
% 全連接層
fullyConnectedLayer(numResponses,'Name','fc')
regressionLayer('Name','output') ];
layers = layerGraph(layers);
layers = connectLayers(layers,'fold/miniBatchSize','unfold/miniBatchSize');
%-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
%% 訓(xùn)練選項
if gpuDeviceCount>0
mydevice = 'gpu';
else
mydevice = 'cpu';
end
options = trainingOptions('adam', ...
'MaxEpochs',MaxEpochs, ...
'MiniBatchSize',MiniBatchSize, ...
'GradientThreshold',1, ...
'InitialLearnRate',learningrate, ...
'LearnRateSchedule','piecewise', ...
'LearnRateDropPeriod',56, ...
'LearnRateDropFactor',0.25, ...
'L2Regularization',1e-3,...
'GradientDecayFactor',0.95,...
'Verbose',false, ...
'Shuffle',"every-epoch",...
'ExecutionEnvironment',mydevice,...
'Plots','training-progress');
%% 模型訓(xùn)練
rng(0);
net = trainNetwork(XrTrain,YrTrain,layers,options);
%-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
%% 測試數(shù)據(jù)預(yù)測
% 測試集預(yù)測
YPred = predict(net,XrTest,"ExecutionEnvironment",mydevice,"MiniBatchSize",numFeatures);
YPred = YPred';
% 數(shù)據(jù)反歸一化
YPred = sig.*YPred + mu;
YTest = sig.*YTest + mu;
————————————————
版權(quán)聲明:本文為CSDN博主「機器學(xué)習(xí)之心」的原創(chuàng)文章,遵循CC 4.0 BY-SA版權(quán)協(xié)議,轉(zhuǎn)載請附上原文出處鏈接及本聲明。
參考資料
[1] http://t.csdn.cn/pCWSp
[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文章來源地址http://www.zghlxwxcb.cn/news/detail-683356.html
到了這里,關(guān)于多維時序 | Matlab實現(xiàn)LSTM-Adaboost和LSTM多變量時間序列預(yù)測對比的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!