数据加载器,结合了数据集和取样器,并且可以提供多个线程处理数据集。
    在训练模型时使用到此函数,用来把训练数据分成多个小组,此函数每次抛出一组数据。直至把所有的数据都抛出。就是做一个数据的初始化。

    python——torch.utils.data.DataLoader - 图1

    生成迭代数据非常方便,请看如下示例:

    “”” 批训练,把数据变成一小批一小批数据进行训练。
    DataLoader 就是用来包装所使用的数据,每次抛出一批数据

    1. import torch import torch.utils.data as Data
    2. BATCH_SIZE = 5 x = torch.linspace(1, 10, 10)
    3. y = torch.linspace(10, 1, 10) # 把数据放在数据库中
    4. torch_dataset = Data.TensorDataset(x, y)
    5. loader = Data.DataLoader( # 从数据库中每次抽出batch size个样本
    6. dataset=torch_dataset,
    7. batch_size=BATCH_SIZE,
    8. shuffle=True,
    9. num_workers=2,
    10. ) def show_batch(): for epoch in range(3): for step, (batch\_x, batch\_y) in enumerate(loader): # training
    11. print("steop:{}, batch_x:{}, batch_y:{}".format(step, batch_x, batch_y)) if __name__ == '__main__':
    12. show_batch()

    结果:

    python——torch.utils.data.DataLoader - 图2

    我们来看一下变量类型:

    python——torch.utils.data.DataLoader - 图3
    https://www.cnblogs.com/demo-deng/p/10623334.html