取Dataset子集(pytorch)

取Dataset子集--pytorch

  • [1. why](#1. why)
  • [2. how](#2. how)
  • [3. example](#3. example)

1. why

我们在调试深度学习代码时,常常会遇到数据集太大,导致调试浪费时间的情况,这种情况下,将数据集中的一个子集拿出来用于调试代码,调试成功在用完整的数据集运行代码成为一个可行的方案。

2. how

pytorch中Torch.utils.data.Subset()函数提供了一个简便的方式,函数如下,indices表示取子集中样本在dataset中的序号。

indices可以由以下的形式输入:

python 复制代码
indices = range(0, 10)    # or
indices = [x for x in range(10)]

3. example

python 复制代码
trainset = torchvision.datasets.CIFAR10(root='./data', train=True,
                                        download=True, transform=transform)
trainset = torch.utils.data.Subset(trainset,[0,1,2,3,4,5,6,7,8,9,10,11])
trainloader = torch.utils.data.DataLoader(trainset, batch_size=4,
                                          shuffle=True, num_workers=2)

testset = torchvision.datasets.CIFAR10(root='./data', train=False,
                                       download=True, transform=transform)
testset = torch.utils.data.Subset(testset,[1,2,3,4])
testloader = torch.utils.data.DataLoader(testset, batch_size=4,
                                         shuffle=False, num_workers=2)
相关推荐
haiyu_y4 分钟前
Day 58 经典时序模型 2(ARIMA / 季节性 / 残差诊断)
人工智能·深度学习·ar
IT=>小脑虎5 分钟前
2026版 Python零基础小白学习知识点【基础版详解】
开发语言·python·学习
我想吃烤肉肉9 分钟前
Playwright中page.locator和Selenium中find_element区别
爬虫·python·测试工具·自动化
rabbit_pro13 分钟前
Java使用Mybatis-Plus封装动态数据源工具类
java·python·mybatis
peixiuhui17 分钟前
突破边界!RK3576边缘计算网关:为工业智能注入“芯”动力
人工智能·物联网·边缘计算·rk3588·iot·rk3568·rk3576
Learner25 分钟前
Python运算符
开发语言·python
想你依然心痛26 分钟前
鲲鹏+昇腾:开启 AI for Science 新范式——基于PINN的流体仿真加速实践
人工智能·鲲鹏·昇腾
蓝眸少年CY27 分钟前
SpringAI+Deepseek大模型应用实战
人工智能
程序员欣宸29 分钟前
LangChain4j实战之十二:结构化输出之三,json模式
java·人工智能·ai·json·langchain4j
极小狐29 分钟前
智谱上市!当 GLM-4.7 遇上 CodeRider :演示何为「1+1>2」的巅峰效能
人工智能·ai编程