Pytorch教程[02]DataLoader与Dataset

简介: Pytorch教程[02]DataLoader与Dataset

机器学习模型训练步骤


image.png

image.png

一.DataLoader


torch.utils.data.DataLoader()

功能:构建可迭代的数据装载器

• dataset: Dataset类,决定数据从哪读取

及如何读取

• batchsize : 批大小

• num_works: 是否多进程读取数据

• shuffle: 每个epoch是否乱序

• drop_last:当样本数不能被batchsize整除时,是否舍弃最后一批数据

DataLoader( dataset,
      batch_size=1,
      shuffle=False,
      sampler=None,
      batch_sampler=None,
      num_workers=0,
      collate_fn=None,
      pin_memory=False,
      drop_last=False,
      timeout=0,
      worker_init_fn=None,
      multiprocessing_context=None)

[Epoch、Epoch、Batch]三者之间的关系

Epoch: 所有训练样本都已输入到模型中,称为一个Epoch

Iteration:一批样本输入到模型中,称之为一个Iteration

Batchsize:批大小,决定一个Epoch有多少个Iteration

例:

样本总数:80, Batchsize:8

1 Epoch = 10 Iteration

样本总数:87, Batchsize:8

1 Epoch = 10 Iteration ? drop_last = True

1 Epoch = 11 Iteration ? drop_last = False

二、Dataset


torch.utils.data.Dataset()

功能:Dataset抽象类,所有自定义的

Dataset需要继承它,并且复写

__getitem__()
getitem #接收一个索引,返回一个样本
class Dataset(object):
  def __getitem__(self, index):
    raise NotImplementedError
  def __add__(self, other):
    return ConcatDataset([self, other])

image.png

image.png

相关文章
|
19天前
|
Android开发 PyTorch 算法框架/工具
PyTorch 2.2 中文官方教程(二十)(2)
PyTorch 2.2 中文官方教程(二十)
44 0
PyTorch 2.2 中文官方教程(二十)(2)
|
19天前
|
iOS开发 PyTorch 算法框架/工具
PyTorch 2.2 中文官方教程(二十)(1)
PyTorch 2.2 中文官方教程(二十)
46 0
PyTorch 2.2 中文官方教程(二十)(1)
|
PyTorch 算法框架/工具 并行计算
PyTorch 2.2 中文官方教程(十九)(4)
PyTorch 2.2 中文官方教程(十九)
28 0
|
19天前
|
机器学习/深度学习 PyTorch 算法框架/工具
PyTorch 2.2 中文官方教程(十八)(4)
PyTorch 2.2 中文官方教程(十八)
54 1
|
19天前
|
机器学习/深度学习 PyTorch 算法框架/工具
PyTorch 2.2 中文官方教程(十八)(3)
PyTorch 2.2 中文官方教程(十八)
28 1
PyTorch 2.2 中文官方教程(十八)(3)
|
19天前
|
并行计算 PyTorch 算法框架/工具
PyTorch 2.2 中文官方教程(十七)(4)
PyTorch 2.2 中文官方教程(十七)
25 2
PyTorch 2.2 中文官方教程(十七)(4)
|
19天前
|
PyTorch 算法框架/工具 机器学习/深度学习
PyTorch 2.2 中文官方教程(十七)(2)
PyTorch 2.2 中文官方教程(十七)
38 1
PyTorch 2.2 中文官方教程(十七)(2)
|
19天前
|
机器学习/深度学习 PyTorch 算法框架/工具
PyTorch 2.2 中文官方教程(十五)(1)
PyTorch 2.2 中文官方教程(十五)
47 1
|
机器学习/深度学习 PyTorch 算法框架/工具
PyTorch 2.2 中文官方教程(十四)(4)
PyTorch 2.2 中文官方教程(十四)
67 1
PyTorch 2.2 中文官方教程(十四)(4)
|
19天前
|
机器学习/深度学习 PyTorch 算法框架/工具
PyTorch 2.2 中文官方教程(十四)(2)
PyTorch 2.2 中文官方教程(十四)
51 1