【问题标题】:How to create a Pytorch Dataset from .pt files?如何从 .pt 文件创建 Pytorch 数据集?
【发布时间】:2019-04-16 14:57:19
【问题描述】:

我已将 MNIST 图像转换为 .pt 文件并保存在 Google 驱动器的文件夹中。我正在 Colab 中编写我的 Pytorch 代码。

我想使用这些文件,并创建一个将这些图像存储为张量的数据集。我该怎么做?

在训练期间转换图像花费的时间太长。因此,转换它们并将它们全部保存为 .pt 文件。我只想将它们作为数据集加载回来并在我的模型中使用。

【问题讨论】:

    标签: python computer-vision pytorch mnist dcgan


    【解决方案1】:

    您所采用的保存图像的方法确实是个好主意。在这种情况下,您可以简单地编写自己的 Dataset 类来加载图像。

    from torch.utils.data import Dataset, DataLoader
    from torch.utils.data.sampler import RandomSampler
    
    class ReaderDataset(Dataset):
        def __init__(self, filename):
            # load the images from file
    
        def __len__(self):
            # return total dataset size
    
        def __getitem__(self, index):
            # write your code to return each batch element
    

    然后你可以如下创建Dataloader。

    train_dataset = ReaderDataset(filepath)
    train_sampler = RandomSampler(train_dataset)
    train_loader = DataLoader(
        train_dataset,
        batch_size=args.batch_size,
        sampler=train_sampler,
        num_workers=args.data_workers,
        collate_fn=batchify,
        pin_memory=args.cuda,
        drop_last=args.parallel
    )
    # args is a dictionary containing parameters
    # batchify is a custom function that prepares each mini-batch
    

    【讨论】:

    • 文件路径可以是包含所有文件的Dropbox url吗?
    • 在这种情况下,您需要在__init__()中编写代码以从URL下载数据。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-10-08
    • 1970-01-01
    • 1970-01-01
    • 2021-06-21
    • 2020-05-21
    • 1970-01-01
    相关资源
    最近更新 更多