当数据比较大时,PyTorch提供一个工具可以将数据分批进行训练。思想就是将数据放入torch中的TensorDataset数据库,再放入数据加载器,设定一批的加载个数进行加载。
官方文档解释:
import torch
import torch.utils.data as Data
BATCH_SIZE = 5 # 一批5个数据
x = torch.linspace(1, 10, 10) # 1,2,3,4,5,6,7,8,9,10
y = torch.linspace(10, 1, 10) # 10,9,8,7,6,5,4,3,2,1
torch_dataset = Data.TensorDataset(x, y) # 定义数据库
loader = Data.DataLoader( # 数据加载器
dataset=torch_dataset,
batch_size=BATCH_SIZE, # 设置每个数据段大小
shuffle=True, # 是否打乱顺序
)
for epoch in range(3): # 循环执行三次
for step, (batch_x, batch_y)