分批训练数据

分批训练数据用于数据量较多时。

import torch
import torch.utils.data as Data
BATCH_SIZE=5
x=torch.linspace(1,10,10)
y=torch.linspace(10,1,10)
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) in enumerate(loader):
        print("Epoch:",epoch,
              '|Step:',step,
              '|batch_x:',batch_x.numpy(),
              '|batch_y:', batch_y.numpy(),)

运行结果为:

其中:

epoch为训练次数,本实例中训练了3次,每次将数据分为两组,即batch_x和batch_y

posted @ 2018-12-26 15:28  小小小小小码农  阅读(821)  评论(0编辑  收藏  举报