将数据加载器张量转换为numpy数组时,Pytorch张量数据受到干扰

问题描述 投票:0回答:1

我正在使用简单的训练循环执行回归任务。为了确保回归底值与我在训练循环中期望的值相同,我决定绘制每批数据。但是,我看到当我将数据加载器的张量转换为numpy数组并将其绘制时,它会受到干扰。我正在使用myTensor.data.cpu()。numpy()进行转换。

我的代码如下:

train_ds = TensorDataset(x_train, y_train)
train_dl = DataLoader(train_ds, batch_size = 32, shuffle = True, num_workers = 0, drop_last = True)


for epoch in range(epochs):
  model.train()
for i, (x, y) in enumerate(train_dl):
  x = x.cuda()
  y = y.cuda()
  yy = y.data.cpu().numpy()
  pyplot.plot(yy[0: 32, 0])
  pyplot.show()

enter image description here

python numpy pytorch dataloader
1个回答
0
投票

我认为这是因为我在数据加载器中设置了shuffle = True。如果将其设置为false,就可以了。但是,如果我随后在数据加载器中设置shuffle = False,那么如何在每个时期之后对训练批次进行随机排序?

© www.soinside.com 2019 - 2024. All rights reserved.