我是靠谱客的博主 无奈野狼,最近开发中收集的这篇文章主要介绍pytorch随机采样的方法SubsetRandomSampler()这篇文章记录一个采样器都随机地从原始的数据集中抽样数据。抽样数据采用permutation。 生成任意一个下标重排,从而利用下标来提取dataset中的数据的方法需要的库使用方法代码详解,觉得挺不错的,现在分享给大家,希望可以做个参考。
概述
这篇文章记录一个采样器都随机地从原始的数据集中抽样数据。抽样数据采用permutation。 生成任意一个下标重排,从而利用下标来提取dataset中的数据的方法
需要的库
import torch
使用方法
这里以MNIST举例
train_dataset = dsets.MNIST(root='./data', #文件存放路径
train=True, #提取训练集
transform=transforms.ToTensor(), #将图像转化为Tensor
download=True)
sample_size = len(train_dataset)
sampler1 = torch.utils.data.sampler.SubsetRandomSampler(
np.random.choice(range(len(train_dataset)), sample_size))
代码详解
np.random.choice()
#numpy.random.choice(a, size=None, replace=True, p=None)
#从a(只要是ndarray都可以,但必须是一维的)中随机抽取数字,并组成指定大小(size)的数组
#replace:True表示可以取相同数字,False表示不可以取相同数字
#数组p:与数组a相对应,表示取数组a中每个元素的概率,默认为选取每个元素的概率相同。
那么这里就相当于抽取了一个全排列
torch.utils.data.sampler.SubsetRandomSampler
# 会根据后面给的列表从数据集中按照下标取元素
# class torch.utils.data.SubsetRandomSampler(indices):无放回地按照给定的索引列表采样样本元素。
所以就可以了
最后
以上就是无奈野狼为你收集整理的pytorch随机采样的方法SubsetRandomSampler()这篇文章记录一个采样器都随机地从原始的数据集中抽样数据。抽样数据采用permutation。 生成任意一个下标重排,从而利用下标来提取dataset中的数据的方法需要的库使用方法代码详解的全部内容,希望文章能够帮你解决pytorch随机采样的方法SubsetRandomSampler()这篇文章记录一个采样器都随机地从原始的数据集中抽样数据。抽样数据采用permutation。 生成任意一个下标重排,从而利用下标来提取dataset中的数据的方法需要的库使用方法代码详解所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复