torch.utils.data
class torch.utils.data.Dataset
表示 的抽象类。
所有其他数据集都应该进行子类化。所以子类应该覆写 __len__
和__getitem__
,前者提供了数据集的大小,后者支持整数索引,范围从 到 。
class torch.utils.data.TensorFataset(data_tensor, target_tensor)
包装数据和目标张量的数据集。
通过沿着第一个维度索引两个张量来恢复每个样本。
参数:
data_tensor(Tensor)
:包含样本数据。target_tensor(Tensor)
:包含样本标签。
class torch.utils.data.DataLoader(dataset, batch_size=1, shuffle=False, sampler=None,
num_workers=0, collate_fn=<function default_collate>,
pin_memory=False, drop_last=False)
数据加载器。组合数据集合采样器,并在数据集上提供单进程或多进程迭代器。
参数:
-
dataset
():加载的数据集。 -
batch_size
():每个 加载多少个样本(默认:1)。 -
shuffle
():设置为 时会在每个 重新打乱数据(默认:)。 -
sample
():定义从数据集中提取样本的策略。如果指定,则忽略shuffle
参数。 -
num_workers
():用多少个子进程加载数据。 表示数据将在主进程中加载(默认:)。 -
collate_fn
() -
pin_memory
() -
drop_last
():如果数据集大小不能被 整除,则设置为 后可删除最后一个不完整的 。如果设为 并且数据集大小不能被 整除,则最后一个 将更小。(默认:)。
class torch.utils.data.sampler.Sampler(data_source)
所有采样器的基础类。
每个采样器子类必须提供一个 __iter__
方法,提供一种迭代数据集元素的索引的方法,以及返回迭代器长度的 __len__
方法。
class torch.utils.data.sampler.SequentialSampler(data_source)
样本元素顺序排列,始终以相同的顺序。
参数:
data_source
():采样的数据集。
class torch.utils.data.sampler.RandomSampler(data_source)
样本元素随机,没有替换。
参数:
data_source
():采样的数据集。
class torch.utils.data.sampler.SubsetRandomSampler(indices)
样本元素从指定的索引列表中随机抽取,没有替换。
参数:
indices
():索引的列表。
class torch.utils.data.sampler.WeightedRandomSampler(weights,
num_samples,
replacement=True)
样本元素来自于 ,给定概率()。
参数:
weights
(): 权重列表。没必要加起来为1 - num_samples (int) – 抽样数量
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)