I start with X being the input and y being the ground truth:
print(X.shape)
for i in range(len(X)):
  print(X[i], y[i])

(6, 3, 1)
[[10]
 [20]
 [30]] 40
[[20]
 [30]
 [40]] 50
[[30]
 [40]
 [50]] 60
[[40]
 [50]
 [60]] 70
[[50]
 [60]
 [70]] 80
[[60]
 [70]
 [80]] 90

where [6,3,1]=[batch_size, seq_len, channels]. Then I permute the dimensions of X:
x_train = torch.FloatTensor(X).permute(0,2,1) 
print(x_train.shape)
print(x_train)

torch.Size([6, 1, 3])
tensor([[[10., 20., 30.]],

        [[20., 30., 40.]],

        [[30., 40., 50.]],

        [[40., 50., 60.]],

        [[50., 60., 70.]],

        [[60., 70., 80.]]])

Then:
train = data.TensorDataset(x_train, y_train)
trainloader = data.DataLoader(train, batch_size=len(x_train), shuffle=False)

Is there something I’m missing?