小编Leo*_*ewk的帖子

向 pytorch 数据加载器/数据集添加自定义标签不适用于自定义数据集

我正在 Kaggle 上进行仙人掌图像竞赛,我正在尝试将 PyTorch 数据加载器用于我的 CNN。但是,我遇到了无法为训练集设置标签的问题。训练集图像在文件夹中给出,标签在 csv 文件中。这是我的代码。

 train = torchvision.datasets.ImageFolder(root='../input/train', 
 transform=transform)

 train.targets = torch.from_numpy(df['has_cactus'].values)

 train_loader = torch.utils.data.DataLoader(train, batch_size=64, shuffle=True, num_workers=2)

 for i, data in enumerate(train_loader, 0):
     print(data[1])
Run Code Online (Sandbox Code Playgroud)

此代码输出全为零的批处理张量,这显然是不正确的,因为绝大多数标签(如果您要查看数据帧)都是 1。我相信这是将标签分配给“train.targets”的问题。如果在分配其他标签之前打印“train.targets”,它会返回一个全为零的张量,这与我得到的错误结果一致。我该如何解决这个问题?

python machine-learning computer-vision pytorch

4
推荐指数
1
解决办法
6000
查看次数