Size of predictions and targets must match.

21 views (last 30 days)
Bahadir
Bahadir on 24 Nov 2025 at 12:32
Commented: Chuguang Pan on 25 Nov 2025 at 8:15
Dear sir,
I make a LSTM regression. LSTM will take 50x28 input and predict 1x2 output.
50 input sample with 28 channel will equal to 1 output samples with 2 channel.
My dataset is OK. I want this dataset.
XTrain= 838985x1 cell inside 50x28 double
TTrain=838985x1 cell inside 1x2 double
layers = [
sequenceInputLayer(28)
bilstmLayer(200,'OutputMode','sequence')
dropoutLayer(0.2)
bilstmLayer(200,'OutputMode','sequence')
dropoutLayer(0.2)
fullyConnectedLayer(2)];
net = trainnet(XTrain,TTrain,layers,"mse",options);
How can ı solve this unshape station?
Error using trainnet (line 46)
Size of predictions and targets must match.
Size of predictions:
2(C) × 128(B) × 50(T)
Size of targets:
2(C) × 128(B) × 1(T)

Accepted Answer

Chuguang Pan
Chuguang Pan on 24 Nov 2025 at 13:52
Moved: Matt J on 24 Nov 2025 at 15:26
@Bahadir. As indicated by the error message, the size of prediction and the target must be equal. I think you should reduce the T dimension before predicting, you can use bilstmLayer with "last" Output mode to reduce T dimension.
  2 Comments
Bahadir
Bahadir on 25 Nov 2025 at 7:09
Dear @Matt J
ı want that 50 sampling size of prediction will equal to 1 sampling size of target.
LSTM will take 50 sampling point from sensors, after that LSTM will predict 1 sampling point for controller.
is it possible?
Chuguang Pan
Chuguang Pan on 25 Nov 2025 at 8:15
@Bahadir. For the one time step prediction problem, you can preprocess the input multivariable time series as tensor and the output as tensor, where every observation is the one time step target.

Sign in to comment.

More Answers (0)

Products


Release

R2024a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!