PyTorch之torch.utils.data.DataLoader解读

torch.utils.data.DataLoader 参数介绍:

1、dataset,这个就是PyTorch已有的数据读取接口(比如torchvision.datasets.ImageFolder)或者自定义的数据接口的输出,该输出要么是torch.utils.data.Dataset类的对象,要么是继承自torch.utils.data.Dataset类的自定义类的对象。

2、batch_size,根据具体情况设置即可。

3、shuffle,一般在训练数据中会采用。

4、collate_fn,是用来处理不同情况下的输入dataset的封装,一般采用默认即可,除非你自定义的数据读取输出非常少见。

5、batch_sampler,从注释可以看出,其和batch_size、shuffle等参数是互斥的,一般采用默认。

6、sampler,从代码可以看出,其和shuffle是互斥的,一般默认即可。

7、num_workers,从注释可以看出这个参数必须大于等于0,0的话表示数据导入在主进程中进行,其他大于0的数表示通过多个进程来导入数据,可以加快数据导入速度。

8、pin_memory,注释写得很清楚了: pin_memory (bool, optional): If True, the data loader will copy tensors into CUDA pinned memory before returning them. 也就是一个数据拷贝的问题。

9、timeout,是用来设置数据读取的超时时间的,但超过这个时间还没读取到数据的话就会报错。

例如:

参考:

https://github.com/pytorch/pytorch/blob/master/torch/utils/data/dataloader.py

https://blog.csdn.net/u014380165/article/details/79058479

原文地址:https://www.cnblogs.com/sbj123456789/p/9237428.html

时间: 2024-07-31 02:21:26

PyTorch之torch.utils.data.DataLoader解读的相关文章

PyTorch源码解读之torch.utils.data.DataLoader(转)

原文链接 https://blog.csdn.net/u014380165/article/details/79058479 写得特别好!最近正好在学习pytorch,学习一下! PyTorch中数据读取的一个重要接口是torch.utils.data.DataLoader,该接口定义在dataloader.py脚本中,只要是用PyTorch来训练模型基本都会用到该接口,该接口主要用来将自定义的数据读取接口的输出或者PyTorch已有的数据读取接口的输入按照batch size封装成Tensor

PyTorch基础-torch

一.张量数据类型 1.1 pytorch与python数据类型对比 python pytorch Int IntTensor of size() float FloatTensor of size() Int array IntTensor of size [d1,d2,-] Float array FloatTensor of size [d1,d2,-] string ont-hot or Embedding(Word2Vec,glove) 由于PyTorch不是一个完备的语言库,它是面向数

Windows版pytorch,torch简明安装

pytorch是facebook开发的深度学习库,其目标是想成为深度学习领域整合gpu加速的numpy.笔者研究的re-id领域最近有不少基于pytoch的代码,跟进一下.因为编程时一直远程到工作站上不太方便,本地开发用的是windows(笔记本对ubuntu的支持不佳),无奈pytoch目前还没有对windows的官方支持(计划0.4版本开始支持,目前是0.3.1),.所幸的是知乎用户蒲嘉宸一直在提供适合windows的包. 首先,我们根据自己的环境下载对应包:https://pan.baid

pyTorch进阶-torch

一.Broadcast自动扩展 Expand和unsquee的结合,习惯性行是高维度,列是低维度 example: 小维度指定,大维度随意 二.拼接与拆分 Cat Stack:增加新的维度 Split(按照长度进行拆分) Chunk(按照数量进行拆分) torch.stack torch.stack(sequence, dim=0) 参数: sqequence (Sequence) – 待连接的张量序列 dim (int) – 插入的维度.必须介于 0 与 待连接的张量序列数之间. 沿着一个新维

『Pytorch』torch基本操作

Tensor基础操作 import torch as t Tensor基础操作 # 构建张量空间,不初始化 x = t.Tensor(5,3) x """ -2.4365e-20 -1.4335e-03 -2.4290e+25 -1.0283e-13 -2.8296e-07 -2.0769e+22 -1.3816e-33 -6.4672e-32 1.4497e-32 1.6020e-19 6.2625e+22 4.7428e+30 4.0095e-08 1.1943e-32

[深度学习] Pytorch学习(二)—— torch.nn 实践:训练分类器(含多GPU训练CPU加载预测的使用方法)

Learn From: Pytroch 官方Tutorials Pytorch 官方文档 环境:python3.6 CUDA10 pytorch1.3 vscode+jupyter扩展 #%% #%% # 1.Loading and normalizing CIFAR10 import torch import torchvision import torchvision.transforms as transforms batch_size = 16 transform = transform

Vgg Net Pytorch实现+论文解读

论文为VERY DEEP CONVOLUTIONAL NETWORKS FOR LARGE-SCALE IMAGE RECOGNITION,主要讨论了在大规模图片识别中,卷积神经网络的深度对准确率的影响.本篇论文提出的vgg网络在2014年的ImageNet比赛中分别在定位和分类中获得了第一和第二的成绩. 改进创新点 VGGNet对2012年的AlexNet模型主要提出了两种改进思路: 小卷积核(kernal size = 3x3)+小步幅(stride = 1) 多尺度:使用多尺度图片来训练和

深度之眼PyTorch训练营第二期 ---5、Dataloader与Dataset

一.人民币二分类 描述:输入人民币,通过模型判定类别并输出. 数据:四个子模块 数据收集 -> img,label 原始数据和标签 数据划分 -> train训练集 valid验证集 test测试集 数据读取 -> DataLoader ->(1)Sampler(生成index) (2)Dataset(读取Img,Label) 数据预处理 -> transforms 1.DataLoader torch.utils.data.DataLoader  功能:构建可迭代的数据装载

pytorch实现VAE

一.VAE的具体结构 二.VAE的pytorch实现 1加载并规范化MNIST import相关类: from __future__ import print_function import argparse import torch import torch.utils.data import torch.nn as nn import torch.optim as optim from torch.autograd import Variable from torchvision impor