如何用pytorch将序列numpy数组转换成张量

2024-09-30 20:25:43 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试将图像标签转换为张量,但遇到一些错误请帮助我将其转换为张量: 这里是我的代码:

features_train, features_test, targets_train, targets_test = train_test_split(X,Y,test_size=0.2,
                                                                              random_state=42)
X_train = torch.from_numpy(features_train)
X_test = torch.from_numpy(features_test)

Y_train =torch.from_numpy(targets_train).type(torch.IntTensor) 
Y_test = torch.from_numpy(targets_test).type(torch.IntTensor)
train = torch.utils.data.Tensordataset(X_train,Y_train)
test = torch.utils.data.TensorDataset(X_test,Y_test)


train_loader = torch.utils.data.DataLoader(train, batch_size = train_batch_size, shuffle = False)
test_loader = torch.utils.data.DataLoader(test, batch_size = test_batch_size, shuffle = False)

我的错误是:

^{pr2}$

这里是我的数组值:

targets_train
478     1
5099    3
1203    2
5674    2
142     1
4836    2
4031    1
1553    3
4416    1
605     5
1194    3
4319    4
1498    5

Tags: fromtestnumpydatasizetype错误batch
1条回答
网友
1楼 · 发布于 2024-09-30 20:25:43

我要做的是:

import torch
import numpy as np
n = np.arange(10)
print(n) #[0 1 2 3 4 5 6 7 8 9]
t1 = torch.Tensor(n)  # as torch.float32
print(t1) #tensor([0., 1., 2., 3., 4., 5., 6., 7., 8., 9.])
t2 = torch.from_numpy(n)  # as torch.int32
print(t2) #tensor([0, 1, 2, 3, 4, 5, 6, 7, 8, 9], dtype=torch.int32)

相关问题 更多 >