欢迎使用 PyTorch 教程¶ PyTorch 教程中有哪些新增功能 编译的 Autograd:为 torch.compile 捕获更大的向后图 通过区域编译减少 torch.compile 冷启动编译时间 TorchRec 简介 (原型)用于调试卡住作业的飞行记录器 (原型)如何在 Windows CPU 上使用 TorchInductor (原型)在 CPU 上使用 max-autotune 编译以获得更好的性能 (原型)自动加载树外扩展 了解基础知识 熟悉 PyTorch 概念和模块。阅读此快速入门指南,了解如何加载数据、构建深度神经网络、训练和保存模型。 开始使用 PyTorch PyTorch 功能示例 一口大小、随时可部署的 PyTorch 代码示例。 探索示例 All 了解基础知识 使用 PyTorch 构建完整 ML 工作流的分步指南。 开始使用 YouTube 上的 PyTorch 简介 介绍如何使用 PyTorch 构建完整的 ML 工作流。关注 YouTube 上的 PyTorch 初学者系列。 开始使用 通过示例学习 PyTorch 本教程通过自包含示例介绍 PyTorch 的基本概念。 开始使用 torch.nn 到底是什么? 使用 torch.nn 创建和训练神经网络。 开始使用 使用 TensorBoard 可视化模型、数据和训练 学习使用 TensorBoard 可视化数据和模型训练。 可解释性,入门,TensorBoard 在 PyTorch 中很好地使用 'non_blocking' 和 'pin_memory()' 有关将数据从 CPU 复制到 GPU 的最佳实践的指南。 开始使用 TorchVision 对象检测微调教程 微调预先训练的 Mask R-CNN 模型。 图片/视频 计算机视觉迁移学习教程 使用迁移学习训练卷积神经网络以进行图像分类。 图片/视频 优化 Vision Transformer 模型 将基于注意力的尖端 transformer 模型应用于计算机视觉任务。 图片/视频 对抗性示例生成 使用迁移学习训练卷积神经网络以进行图像分类。 图片/视频 DCGAN 教程 训练生成式对抗网络 (GAN) 以生成新的名人。 图片/视频 Spatial Transformer 网络教程 了解如何使用视觉注意机制增强您的网络。 图片/视频 使用 TIAToolbox 对整个载玻片图像进行推理 了解如何使用 TIAToolbox 对整个幻灯片图像执行推理。 图片/视频 基于 USB 的半监督学习教程 了解如何使用 USB 和 PyTorch 训练半监督学习算法(基于自定义数据)。 图片/视频 音频 IO 了解如何使用 torchaudio 加载数据。 音频 音频重采样 学习使用 torchaudio 对音频波形进行重新采样。 音频 音频数据增强 学习使用 torchaudio 应用数据增强。 音频 音频特征提取 学习使用 torchaudio 提取特征。 音频 音频特征增强 了解如何使用 torchaudio 增强功能。 音频 音频数据集 了解如何使用 torchaudio 数据集。 音频 在 torchaudio 中使用 Wav2Vec2 进行自动语音识别 了解如何使用 torchaudio 的预训练模型构建语音识别应用程序。 音频 语音命令分类 了解如何正确设置音频数据集的格式,然后在数据集上训练/测试音频分类器网络。 音频 使用 torchaudio 的文本转语音 了解如何使用 torchaudio 的预训练模型构建文本转语音应用程序。 音频 在 torchaudio 中使用 Wav2Vec2 强制对齐 了解如何使用 torchaudio 的 Wav2Vec2 预训练模型将文本与语音对齐 音频 从头开始的 NLP:使用字符级 RNN 对名称进行分类 构建和训练一个基本的字符级 RNN,以便在不使用 torchtext 的情况下从头开始对单词进行分类。三个教程系列中的第一个。 自然语言处理 从头开始的 NLP:使用字符级 RNN 生成名称 使用字符级 RNN 对名称进行分类后,了解如何从语言生成名称。三个教程系列中的第二个教程。 自然语言处理 从头开始的 NLP:使用 Sequence-to-sequence Network 和 Attention 进行翻译 这是关于“从头开始进行 NLP”的第三个也是最后一个教程,在这个教程中,我们编写自己的类和函数来预处理数据以完成我们的 NLP 建模任务。 自然语言处理 (可选)使用 TorchDynamo 后端将 PyTorch 模型导出到 ONNX 并使用 ONNX 运行时运行它 在 PyTorch 中构建图像分类器模型并将其转换为 ONNX,然后再使用 ONNX 运行时进行部署。 生产、ONNX、后端 ONNX 注册中心简介 演示如何使用 ONNX Registry 解决不支持的运算符。 生产、ONNX、后端 强化学习 (DQN) 了解如何使用 PyTorch 在 OpenAI Gym 的 CartPole-v0 任务上训练深度 Q 学习 (DQN) 代理。 强化学习 使用 TorchRL 的强化学习 (PPO) 了解如何使用 PyTorch 和 TorchRL 在 Gym 的倒摆任务上训练近端策略优化代理。 强化学习 训练玩马里奥的 RL 代理 使用 PyTorch 训练 Double Q-learning 代理来玩 Mario。 强化学习 复发性 DQN 使用 TorchRL 训练循环策略 强化学习 编写 DDPG 丢失代码 使用 TorchRL 编写 DDPG 损失代码 强化学习 编写环境和转换 使用 TorchRL 编写 Pendulum 代码 强化学习 使用 Flask 通过 REST API 在 Python 中部署 PyTorch 使用 Flask 部署 PyTorch 模型,并使用检测图像的预训练 DenseNet 121 模型示例公开用于模型推理的 REST API。 生产 TorchScript 简介 TorchScript 简介,PyTorch 模型的中间表示形式(nn.Module),然后可以在 C++ 等高性能环境中运行。 生产,TorchScript 在 C++ 中加载 TorchScript 模型 了解 PyTorch 如何从现有的 Python 模型转变为序列化表示形式,该表示形式可以完全从 C++ 加载和执行,而不依赖于 Python。 生产,TorchScript (可选)使用 TorchScript 后端将 PyTorch 模型导出到 ONNX 并使用 ONNX 运行时运行它 将 PyTorch 中定义的模型转换为 ONNX 格式,然后使用 ONNX 运行时运行它。 生产,ONNX 分析 PyTorch 了解如何分析 PyTorch 应用程序 分析 _static/img/thumbnails/default.png 分析 PyTorch 整体痕量分析简介 分析 _static/img/thumbnails/default.png 分析 PyTorch 使用 Holistic Trace Analysis 进行 Trace Diff 分析 _static/img/thumbnails/default.png 在 FX 中构建卷积/Batch Norm 定影器 构建一个简单的 FX 通道,将 batch norm 融合到卷积中,以提高推理过程中的性能。 外汇 使用 FX 构建简单的性能分析器 构建一个简单的 FX 解释器来记录 op、module 和 function 调用的运行时间并报告统计信息 外汇 (测试版)PyTorch 中的通道上次内存格式 大致了解 Channels Last 内存格式,并了解如何使用它来对内存保留维度中的 NCHW 张量进行排序。 内存格式,最佳实践,前端 API 使用 PyTorch C++ 前端 通过训练 DCGAN(一种生成模型)来生成 MNIST 数字的图像,演练使用 C++ 前端训练模型的端到端示例。 前端 API,C++ PyTorch 自定义运算符登录页面 这是与 PyTorch 中的自定义运算符相关的所有内容的登录页面。 扩展-PyTorch,前端-API,C++,CUDA 自定义 Python 运算符 在 Python 中创建自定义运算符。用于对 Python 函数进行黑盒处理以用于 torch.compile。 扩展-PyTorch,前端-API,C++,CUDA 编译的 Autograd: 为 ''torch.compile'' 捕获更大的反向图 了解如何使用编译后的 autograd 捕获更大的反向图形。 模型优化,CUDA 自定义 C++ 和 CUDA 运算符 如何使用自定义 C++ 和 CUDA 运算符扩展 PyTorch。 扩展-PyTorch,前端-API,C++,CUDA 自定义 C++ 和 CUDA 扩展 使用 numpy 创建无参数的神经网络层。然后使用 scipy 创建一个具有可学习权重的神经网络层。 扩展-PyTorch,前端-API,C++,CUDA 使用自定义 C++ 运算符扩展 TorchScript 在 C++ 中实现自定义 TorchScript 运算符,如何将其构建到共享库中,如何在 Python 中使用它来定义 TorchScript 模型,最后如何将其加载到 C++ 应用程序中以用于推理工作负载。 扩展-PyTorch,前端-API,TorchScript,C++ 使用自定义 C++ 类扩展 TorchScript 这是自定义运算符教程的延续,介绍了我们构建的用于将 C++ 类同时绑定到 TorchScript 和 Python 的 API。 扩展-PyTorch,前端-API,TorchScript,C++ TorchScript 中的动态并行性 本教程介绍了在 TorchScript 中执行 *动态互操作并行性* 的语法。 前端 API,TorchScript,C++ Raspberry Pi 4 上的实时推理 本教程介绍如何在 Raspberry Pi 4 上以 30 fps 的速度运行量化和融合模型。 TorchScript,模型优化,图片/视频,量化 C++ 前端中的 autograd autograd 软件包有助于构建灵活且动态的 nerural netorks。在本教程中,探讨了在 PyTorch C++ 前端执行 autograd 的几个示例 前端 API,C++ 在 C++ 中注册 Dispatched 运算符 dispatcher 是 PyTorch 的一个内部组件,它负责确定当你调用像 torch::add 这样的函数时,实际应该运行哪些代码。 扩展-PyTorch,前端-API,C++ 在 C++ 中为新后端扩展 Dispatcher 了解如何扩展调度程序以添加位于 pytorch/pytorch 存储库之外的新设备,并维护它以与本机 PyTorch 设备保持同步。 扩展-PyTorch,前端-API,C++ 通过 PrivateUse1 促进新的后端集成 了解如何集成位于 pytorch/pytorch 存储库之外的新后端,并对其进行维护以与本机 PyTorch 后端保持同步。 扩展-PyTorch,前端-API,C++ 自定义函数教程:向后重复 了解如何编写支持 double backward 的自定义 autograd Function。 扩展-PyTorch,前端-API 自定义函数教程:融合卷积和 Batch Norm 了解如何创建自定义 autograd 函数,将 batch norm 融合到卷积中以提高内存使用率。 扩展-PyTorch,前端-API 正向模式自动微分 了解如何使用前向模式自动微分。 前端 API 雅可比矩阵、黑森矩阵、hvp、vhp 等 了解如何使用 torch.func 计算高级 autodiff 量 前端 API 模型集成 了解如何使用 torch.vmap 集成模型 前端 API 每个样本的梯度 了解如何使用 torch.func 计算每个样本的梯度 前端 API 神经切线内核 了解如何使用 torch.func 计算神经切线内核 前端 API PyTorch 中的性能分析 了解如何使用 PyTorch Profiler 对模块的性能进行基准测试。 模型优化,最佳实践,分析 TensorBoard 中的性能分析 了解如何使用 TensorBoard 插件来分析和分析模型的性能。 模型优化,最佳实践,性能分析,TensorBoard 超参数优化教程 了解如何使用 Ray Tune 为您的模型查找性能最佳的超参数集。 模型优化,最佳实践 参数化教程 了解如何使用 torch.nn.utils.parametrize 对参数进行约束(例如,使它们正交、对称正定、低秩...... 模型优化,最佳实践 修剪教程 了解如何使用 torch.nn.utils.prune 来稀疏化您的神经网络,以及如何扩展它以实现您自己的自定义修剪技术。 模型优化,最佳实践 如何通过将优化器步骤融合到向后传递中来节省内存 通过使用内存快照将优化器步骤融合到向后传递中,了解一种节省内存的技术。 模型优化,最佳实践,CUDA,前端-API (测试版)通过半结构化稀疏性加速 BERT 训练 BERT,将其修剪为 2:4 稀疏,然后加速它,以使用半结构化稀疏和 torch.compile 实现 2 倍的推理加速。 文本,模型优化 (测试版)LSTM Word 语言模型上的动态量化 将动态量化(最简单的量化形式)应用于基于 LSTM 的下一个单词预测模型。 文本,量化,模型优化 (测试版)BERT 上的动态量化 在 BERT (Bidirectional Embedding Representations from Transformers) 模型上应用动态量化。 文本,量化,模型优化 (测试版)用于计算机视觉的量化迁移学习教程 使用量化模型扩展了计算机视觉的迁移学习教程。 图像/视频,量化,模型优化 (测试版)PyTorch 中 Eager 模式的静态量化 本教程介绍如何进行训练后静态量化。 量化 Grokking PyTorch Intel CPU 性能的首要原则 使用 Intel® Extension for PyTorch 优化的 TorchServe 推理框架的案例研究。 模型优化,生产 Grokking PyTorch Intel CPU 性能(第 2 部分) 使用英特尔® Extension for PyTorch 优化的 TorchServe 推理框架案例研究(第 2 部分)。 模型优化,生产 使用 Ax 进行多目标神经架构搜索 了解如何使用 Ax 搜索架构,在准确性和延迟之间找到最佳权衡。 模型优化,最佳实践,Ax,TorchX torch.compile 教程 使用最新的 PyTorch 编译器解决方案 torch.compile 以最少的代码更改加速您的模型。 模型优化 电感器 CPU 后端调试和分析 了解使用 Inductor CPU 后端的 ''torch.compile'' 的使用、调试和性能分析。 模型优化 (测试版)使用 SCALED DOT PRODUCT ATTENTION 实现高性能变压器 本教程探讨了新 torch.nn.functional.scaled_dot_product_attention 以及如何使用它来构造 Transformer 组件。 模型优化,注意力,Transformer 卷积神经网络中的知识蒸馏 了解如何使用更强大的模型作为教师来提高轻量级模型的准确性。 模型优化,图片/视频 通过替换 nn.具有嵌套张量和 torch.compile() 的转换器 本教程介绍了使用原生 PyTorch 实现 Transformer 的推荐最佳实践。 变压器 PyTorch 分布式概述 简要介绍一下分布式包中的所有概念和功能。使用本文档查找最适合您的应用程序的分布式训练技术。 并行和分布式训练 PyTorch 中的分布式数据并行 - 视频教程 本系列视频教程将引导您通过 DDP 在 PyTorch 中进行分布式训练。 并行和分布式训练 单机模型并行最佳实践 了解如何实现模型并行,这是一种分布式训练技术,可将单个模型拆分到不同的 GPU 上,而不是在每个 GPU 上复制整个模型 并行和分布式训练 Distributed Data Parallel 入门 了解何时使用分布式数据比对付与数据并行的基础知识,并通过示例进行设置。 并行和分布式训练 使用 PyTorch 编写分布式应用程序 设置 PyTorch 的分布式包,使用不同的通信策略,并了解包的一些内部结构。 并行和分布式训练 使用 Tensor Parallel 进行大规模 Transformer 模型训练 了解如何使用 Tensor Parallel 包训练大型模型。 并行和分布式训练 使用 cpp 扩展自定义进程组后端 使用自定义集体通信实现扩展 ProcessGroup。 并行和分布式训练 分布式 RPC 框架入门 了解如何使用 torch.distributed.rpc 包构建分布式训练。 并行和分布式训练 使用分布式 RPC 框架实现 Parameter Server 演练使用 PyTorch 的分布式 RPC 框架实现参数服务器的简单示例。 并行和分布式训练 分布式管道并行性简介 演示如何使用 torch.distributed.pipelining 实现管道并行 并行和分布式训练 使用异步执行实现批处理 RPC 处理 了解如何使用 rpc.functions.async_execution 实现批处理 RPC 并行和分布式训练 将 Distributed DataParallel 与 Distributed RPC 框架相结合 通过一个简单的示例来了解如何将分布式数据并行与分布式模型并行相结合。 并行和分布式训练 全分片数据并行 (FSDP) 入门 了解如何使用 Fully Sharded Data Parallel 包训练模型。 并行和分布式训练 使用全分片数据并行 (FSDP) 的高级模型训练 探索使用 Fully Sharded Data Parallel 软件包进行高级模型训练。 并行和分布式训练 Libuv TCPStore 后端介绍 TCPStore 现在使用新的服务器后端来实现更快的连接和更好的可扩展性。 并行和分布式训练 导出到 ExecuTorch 教程 了解如何使用 ExecuTorch,这是一个统一的 ML 堆栈,用于将 PyTorch 模型降低到边缘设备。 边缘 在 C++ 中运行 ExecuTorch 模型教程 了解如何在 C++ 中加载和执行 ExecuTorch 模型 边缘 使用 ExecuTorch SDK 对模型进行性能分析 探索如何使用 ExecuTorch SDK 对 ExecuTorch 模型进行性能分析、调试和可视化 边缘 构建 ExecuTorch iOS 演示应用程序 探索如何设置 ExecuTorch iOS 演示应用程序,该应用程序使用 MobileNet v3 模型处理实时摄像机图像,利用三个不同的后端:XNNPACK、Core ML 和 Metal Performance Shaders (MPS)。 边缘 构建 ExecuTorch Android 演示应用程序 了解如何使用 DeepLab v3 模型和 XNNPACK FP32 后端设置 ExecuTorch Android 演示应用程序以执行图像分割任务。 边缘 将 Model 作为 Delegate 降低 学习如何使用 ExecuTorch 加速您的程序,通过三种方法应用委托:降低整个模块、将其与另一个模块组合以及对模块的各个部分进行分区。 边缘 TorchRec 简介 TorchRec是一个PyTorch域库,旨在提供大规模推荐系统所需的常见稀疏性和并行性基元。 TorchRec,推荐器 探索 TorchRec 分片 本教程介绍了使用 and API 嵌入表的分片方案。EmbeddingPlannerDistributedModelParallel TorchRec,推荐器 TorchMultimodal 简介 TorchMultimodal 是一个库,提供用于训练多模态任务的模型、基元和示例 Torch多模态 其他资源¶ PyTorch 示例 在 Vision, Text, Reinforcement Learning 中围绕 PyTorch 的一组示例,您可以将其合并到现有工作中。 查看示例 PyTorch 作弊表 基本 PyTorch 元素的快速概述。 打开 GitHub 上的教程 从 GitHub 访问 PyTorch 教程。 转到 GitHub 在 Google Colab 上运行教程 了解如何将教程数据复制到 Google Drive,以便您可以在 Google Colab 上运行教程。 打开