MapSampler

class MapSampler(dataset, batch_size=1, drop_last=False, num_samples=None, world_size=None, rank=None, seed=None)[源代码]

字典数据集的采样器。

参数
  • dataset – 待采样的目标数据集。

  • batch_size – 使用 batch 方法时指定 batch 大小。

  • drop_last – 如果batch大小不能整除数据集大小时,为 True 则放弃最后一个不完整的batch; 为 False 则最后一个batch可能比较小。默认:False

  • num_samples – 分配给一个进程的样本数。

  • world_size – 进程数。

  • rank – 进程号,在0与 world_size 范围内的非负整数。

  • seed – 随机种子。

batch()[源代码]

Batch 方法提供了一个 batch 索引生成器。

返回类型

Iterator[List[Any]]

sample()[源代码]

返回一个列表,包含了所有样本的索引。

scatter(indices)[源代码]

Scatter 方法用于将索引拆分为子集,每个子​​集将分配给一个等级。默认情况下,索引是均分的。如果需要自定义索引分配方法,请重写此方法。

返回类型

List