当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python PyTorch MapDataPipe用法及代码示例


本文简要介绍python语言中 torchdata.datapipes.map.MapDataPipe 的用法。

用法:

class torchdata.datapipes.map.MapDataPipe(*args, **kwds)

Map-style 数据管道。

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

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

注意

DataLoader 默认构造一个产生整数索引的索引采样器。为了使其与具有非整数索引/键的 map-style 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]]

相关用法


注:本文由纯净天空筛选整理自pytorch.org大神的英文原创作品 torchdata.datapipes.map.MapDataPipe。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。