目录

地图样式的 DataPipes

Map 风格的 DataPipe 是实现 and 协议的 DataPipe,它表示一个 map from (可能是非整数的) indices/keys to data samples.__getitem__()__len__()

例如,当使用 进行访问时,可以读取第 --个图像及其 磁盘上文件夹中的相应标签。mapdatapipe[idx]idx

torchdata.datapipes.map。MapDataPipe*args**kwds)

Map-style DataPipe 的 DataPipe 方法。

表示从键到数据样本的映射的所有数据集都应该子类化 this。 子类应该覆盖 ,支持获取 给定唯一键的数据示例。子类还可以选择覆盖 ,预计许多实现和默认选项会返回数据集的大小 之。__getitem__()__len__()SamplerDataLoader

可以通过两种方式调用这些 DataPipe,使用类构造函数或应用它们的 功能形式添加到现有的 MapDataPipe 上(推荐,适用于大多数但不是所有 DataPipe)。

注意

DataLoader默认情况下,构造一个索引 sampler 生成整数索引。使其使用地图样式 DataPipe 替换为非整型索引/键,则必须提供自定义采样器。

>>> from torchdata.datapipes.map import SequenceWrapper, Mapper
>>> dp = SequenceWrapper(range(10))
>>> map_dp_1 = dp.map(lambda x: x + 1)  # Using functional form (recommended)
>>> list(map_dp_1)
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
>>> map_dp_2 = Mapper(dp, lambda x: x + 1)  # Using class constructor
>>> list(map_dp_2)
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
>>> batch_dp = map_dp_1.batch(batch_size=2)
>>> list(batch_dp)
[[1, 2], [3, 4], [5, 6], [7, 8], [9, 10]]

以下是可用的 Map 样式 DataPipe 的列表:

数据管道

Batcher (批处理器)

创建小批量数据(函数名称:)。batch

连接

连接多个 Map DataPipes(函数名称:)。concat

IterToMap转换器

延迟加载数据以构造 a 和 (function name: ) 生成的键值对。IterDataPipeMapDataPipekey_value_fnto_map_datapipe

映射

将输入函数应用于源 DataPipe 中的每个项目(函数名称:)。map

序列包装器

将序列对象包装到 MapDataPipe 中。

洗牌机

通过其索引(函数名称:)对输入 DataPipe 进行随机排序。shuffle

拉链

将每个输入 DataPipes 的元素聚合到一个元组中(函数名称:)。zip

文档

访问 PyTorch 的全面开发人员文档

查看文档

教程

获取面向初学者和高级开发人员的深入教程

查看教程

资源

查找开发资源并解答您的问题

查看资源