批量训练网络
""" 如果整个数据库中图片的数量不是每批数据图片数量的整数倍,体统会将剩余的图片放入最后一批 """ import torch import torch.utils.data as Data torch.manual_seed(1) # reproducible BATCH_SIZE = 5 x = torch.linspace(1, 10, 10) y = torch.linspace(10, 1, 10) # 定义一个数据库 torch_dataset = Data.TensorDataset(data_tensor=x, target_tensor=y) # 将数据库中的数据变成多批数据集 loader = Data.DataLoader( dataset=torch_dataset, # TensorDataset数据集 batch_size=BATCH_SIZE, # 每批数据的大小 shuffle=True, # 打乱顺序 num_workers=2, # 加载数据的进程数 ) for epoch in range(3): for step, (batch_x, batch_y) in enumerate(loader): # 这个部分为训练数据 print('Epoch: ', epoch, '| Step: ', step, '| batch x: ', batch_x.numpy(), '| batch y: ', batch_y.numpy())