跳转到主要内容

为PyTorch提供的可组合数据加载模块

项目描述

TorchData (请参阅下面对当前状态的说明)

什么是TorchData? | 有状态数据加载器 | 安装指南 | 贡献 | 许可证

:warning: 2024年6月状态更新:移除DataPipes和DataLoader V2

我们正在将torchdata仓库的重心转向对torch.utils.data.DataLoader的迭代式增强。我们不再计划继续开发或维护[DataPipes]和[DataLoaderV2]解决方案,并将从torchdata仓库中移除它们。我们还将重新审视pytorch/pytorch中的DataPipes引用。在torchdata==0.8.0(2024年7月)版本中,它们将被标记为已弃用,并在0.9.0(2024年10月)版本中删除。建议现有用户在迁移完成之前将版本锁定在torchdata==0.8.0或更早版本。后续版本将不会包含DataPipes或DataLoaderV2。旧版本的README文件可在此处找到。如有建议或意见,请提出(请使用#1196进行反馈)。

什么是TorchData?

TorchData项目是对PyTorch的torch.utils.data.DataLoader以及torch.utils.data.Dataset/IterableDataset的迭代式增强,以使其成为可扩展、高性能的数据加载解决方案。我们将在torchdata仓库下对这些增强进行迭代。

我们的第一个更改是从torch.utils.data.DataLoader中添加检查点功能,这可以在stateful_dataloader中找到,它是torch.utils.data.DataLoader的替代品,通过定义load_state_dictstate_dict方法,使中期epoch检查点成为可能,并为用户提供API以跟踪自定义迭代进度,以及其他自定义状态,如token缓冲区和/或RNG状态。

有状态的数据加载器

torchdata.stateful_dataloader.StatefulDataLoader是torch.utils.data.DataLoader的替代品,它提供了state_dict和load_state_dict功能。有关更多信息示例,请参阅有状态数据加载器主页。还可以查看此Colab笔记本中的示例。

安装

版本兼容性

以下是相应的torchdata版本和支持的Python版本。

torch torchdata python
master / nightly main / nightly >=3.8, <=3.11
2.0.0 0.6.0 >=3.8, <=3.11
1.13.1 0.5.1 >=3.7, <=3.10
1.12.1 0.4.1 >=3.7, <=3.10
1.12.0 0.4.0 >=3.7, <=3.10
1.11.0 0.3.0 >=3.7, <=3.10

本地pip或conda

首先,设置一个环境。我们将安装PyTorch二进制文件以及torchdata。如果你使用conda,创建一个conda环境

conda create --name torchdata
conda activate torchdata

如果你希望使用venv而不是

python -m venv torchdata-env
source torchdata-env/bin/activate

安装torchdata

使用pip

pip install torchdata

使用conda

conda install -c pytorch torchdata

从源

pip install .

如果在从源构建TorchData失败的情况下,请按照贡献页面中提供的链接安装PyTorch的nightly版本。

从nightly

TorchData的nightly版本也提供,并从主分支每天更新。

使用pip

pip install --pre torchdata --extra-index-url https://download.pytorch.org/whl/nightly/cpu

使用conda

conda install torchdata -c pytorch-nightly

贡献

我们欢迎PR!请参阅CONTRIBUTING文件。

beta使用和反馈

我们很高兴听到早期采用者的意见,并与他们合作完善我们的设计。如果你对使用此工具对项目感兴趣,请提出问题。

许可证

TorchData采用BSD许可,如LICENSE文件中所述。

项目详情


下载文件

下载适用于您平台的文件。如果您不确定该选择哪个,请了解更多关于安装软件包的信息。

源代码发行版

此版本中没有可用的源代码发行版文件。请参阅生成发行版存档的教程

编译后的发行版

torchdata-0.8.0-cp312-cp312-win_amd64.whl (1.3 MB 查看哈希值)

上传时间 CPython 3.12 Windows x86-64

torchdata-0.8.0-cp312-cp312-manylinux1_x86_64.whl (2.7 MB 查看哈希值)

上传时间 CPython 3.12

torchdata-0.8.0-cp312-cp312-macosx_11_0_arm64.whl (4.9 MB 查看哈希值)

上传时间 CPython 3.12 macOS 11.0+ ARM64

torchdata-0.8.0-cp311-cp311-win_amd64.whl (1.3 MB 查看哈希值)

上传时间 CPython 3.11 Windows x86-64

torchdata-0.8.0-cp311-cp311-manylinux1_x86_64.whl (2.7 MB 查看哈希值)

上传时间 CPython 3.11

torchdata-0.8.0-cp311-cp311-macosx_11_0_arm64.whl (4.9 MB 查看哈希值)

上传时间 CPython 3.11 macOS 11.0+ ARM64

torchdata-0.8.0-cp310-cp310-win_amd64.whl (1.3 MB 查看哈希值)

上传时间 CPython 3.10 Windows x86-64

torchdata-0.8.0-cp310-cp310-manylinux1_x86_64.whl (2.7 MB 查看哈希值)

上传时间 CPython 3.10

torchdata-0.8.0-cp310-cp310-macosx_11_0_arm64.whl (4.9 MB 查看哈希值)

上传时间 CPython 3.10 macOS 11.0+ ARM64

torchdata-0.8.0-cp39-cp39-win_amd64.whl (1.3 MB 查看哈希值)

上传时间 CPython 3.9 Windows x86-64

torchdata-0.8.0-cp39-cp39-manylinux1_x86_64.whl (2.7 MB 查看哈希值)

上传时间 CPython 3.9

torchdata-0.8.0-cp39-cp39-macosx_11_0_arm64.whl (4.9 MB 查看哈希值)

上传时间 CPython 3.9 macOS 11.0+ ARM64

torchdata-0.8.0-cp38-cp38-win_amd64.whl (1.3 MB 查看哈希值)

上传时间 CPython 3.8 Windows x86-64

torchdata-0.8.0-cp38-cp38-manylinux1_x86_64.whl (2.7 MB 查看哈希值)

上传时间 CPython 3.8

torchdata-0.8.0-cp38-cp38-macosx_11_0_arm64.whl (4.9 MB 查看哈希值)

上传时间 CPython 3.8 macOS 11.0+ ARM64

支持者