PyTorch 1.8 发布:更新编译器和分布式训练、为移动端引入新教程
PyTorch 1.8 已发布,此版本由 1.7 发布以来的 3000 多个 commit 组成,重要更新内容包括在编译、代码优化和科学计算前端 API 方面的优化和改进,以及通过 pytorch.org 提供的二进制文件来支持 AMD ROCm。1.8 版本还为大规模训练管道、模型并行化,以及梯度压缩提供了特性改进。部分值得关注的亮点:
- 支持通过
torch.fx进行 Python 函数变换 - 添加或稳定化 API 以支持 FFTs (
torch.fft) 和线性代数函数 (torch.linalg), - 添加了对复杂张量 autograd 的支持,以及提升 hessians 和 jacobians 矩阵计算的性能
- 针对分布式培训的重大更新和改进,包括:提升 NCCL 可靠性、支持管道并行化、RPC profiling、以及通过添加梯度压缩以支持通信钩子 (communication hook)
除了 PyTorch 1.8,PyTorch 团队还发布了针对 PyTorch 库的重大更新,包括 TorchCSPRNG, TorchVision, TorchText 和 TorchAudio。点此查看关于库更新的详细消息。
PyTorch 版本中的功能分为稳定版 (Stable)、测试版 (Beta) 和原型版 (Prototype)。这篇帖子介绍了相关的定义说明。
PyTorch 在移动端方面的改进正在通过一系列新的教程进行扩展,以帮助新用户更快地在设备上启动模型,并为现有用户提供一种工具,以使 PyTorch 框架发挥更多作用。其中包括:
新演示应用程序还包括图像分割、目标检测、神经机器翻译、问题解答和视觉转换的示例。它们均支持在 iOS 和 Android 上使用:
除了在 MobileNetV3 和其他型号的 CPU 上进行性能改进之外,PyTorch 还改进了 Android GPU 后端原型,以实现更广泛的型号覆盖和更快的推理:
最后,此版本新特性还包括启动 PyTorch Mobile Lite Interpreter,该解释器可降低运行时二进制文件大小。
详细更新内容查看 发布公告。
