【torch】数据加载器DataLoader()

DataLoader是PyTorch用于创建数据加载器的函数,它处理训练和测试数据集,分批加载并可能进行数据打乱。用户可定制批量大小、是否洗牌、使用子进程的数量以及数据处理方式。此外,还可以选择是否将数据存储在CUDA内存中以提高效率,并决定是否丢弃不完整的小批量。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、简介

torch.utils.data.DataLoader() 函数是 PyTorch 中用于创建数据加载器(data loader)的函数。数据加载器用于加载训练和测试数据集,并将数据划分为小批量进行处理。它们是数据处理流程中的关键组件,可以方便地进行数据批量处理、乱序加载和并行读取。

2、函数原型&参数含义

torch.utils.data.DataLoader(dataset, batch_size=1, shuffle=False, num_workers=0, collate_fn=None, pin_memory=False, drop_last=False) 的参数含义如下:

  • dataset:数据集对象,可以是自定义的 Dataset 类对象或 PyTorch 提供的预定义数据集,如 torchvision.datasets.MNIST
  • batch_size:批量大小,即每个小批量的样本数量。默认值是 1。
  • shuffle:是否在每个 epoch 重新洗牌(随机打乱数据)。默认值是 False。
  • num_workers:用于数据加载的子进程数量。默认值是 0,即在主进程中进行数据加载。
  • collate_fn:用于将样本列表转换为小批量数据张量的函数。默认值是 None,表示使用默认的数据处理方式。
  • pin_memory:是否将数据存储在 CUDA 固定内存中,以加速数据传输。默认值是 False。
  • drop_last:当样本数不能被批量大小整除时,是否删除最后一个小于批量大小的小批量。默认值是 False,即保留部分小于批量大小的样本。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值