Invalid training data. Sequence responses must have the same sequence length as the corresponding predictors.
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
my data is n*1, I apply LSTM to analysis,,,,choose:
k =3; %滑动窗口设置为1 具体设多少需要衡量
for i = 1:size(dataTrainStandardized)-k+1
XTrain(:,i) = dataTrainStandardized(i:i+k-1,:); %将其分为101个序列,每个序列长度500,特征5个
YTrain(:,i)= dataTrainStandardized(i+k-1,:);
end
inputsize= 3;
outputsize = 1;
numHiddenUnits = 20;
layers = [sequenceInputLayer(inputsize)
lstmLayer(numHiddenUnits)
dropoutLayer(0.5)%防止过拟合
fullyConnectedLayer(outputsize)
regressionLayer];
options = trainingOptions('adam', ...
'MaxEpochs',500,...
'MiniBatchSize',16, ...
'GradientThreshold',1, ...%梯度下降阈值
'InitialLearnRate',0.005, ...
'LearnRateSchedule','piecewise', ...
'LearnRateDropPeriod',250, ...%
'LearnRateDropFactor',0.5, ...
'ValidationData',{XTrain,YTrain}, ...
'ValidationFrequency',1, ...
'Verbose',1, ...
'Plots','training-progress');
%% Train LSTM Network
[net tr] = trainNetwork(XTrain,YTrain,layers,options);
but error is Invalid training data. Sequence responses must have the same sequence length as the corresponding predictors.
look for help!!!!thank you
0 Kommentare
Antworten (0)
Siehe auch
Kategorien
Mehr zu 时序、序列和文本深度学习 finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!