PyTorch 将继续用于下周 NeurIPS 会议上展示的最新尖端研究,在引用框架的论文中,PyTorch 占了近 70%。此外,我们很高兴欢迎 Chainer 框架的维护者 Preferred Networks 加入 PyTorch 社区。他们的团队将全面转向 PyTorch,以开发其机器学习能力和服务。
这一增长是 PyTorch 专注于满足研究社区需求的基础,并且越来越多地支持从研究到生产部署的完整工作流程。为了进一步支持研究人员和开发人员,我们正在推出许多新的工具和库,用于大规模计算机视觉和弹性容错训练。如需了解更多信息,请访问 GitHub 和我们的 NeurIPS 展位。
Preferred Networks 加入 PyTorch 社区
Preferred Networks, Inc. (PFN) 宣布计划将其深度学习框架从 Chainer 迁移到 PyTorch。作为此次变更的一部分,PFN 将与 PyTorch 社区和贡献者(包括来自 Facebook、Microsoft、CMU 和 NYU 的人员)合作,参与 PyTorch 的开发。
PFN 开发了 Chainer,这是一种深度学习框架,引入了 define-by-run(也称为 eager execution)的概念,以支持并加速其深度学习开发。自 2015 年以来,PFN 一直使用 Chainer,利用最新尖端技术快速解决实际问题。Chainer 也是 PyTorch 初始设计灵感之一,正如 PyTorch NeurIPS 论文中所述。
PFN 在 CuPy、15 分钟 ImageNet、Optuna 和其他突破设计和工程界限的项目中推动了创新工作。作为 PyTorch 社区的一部分,PFN 将带来创新的工程能力和经验,以帮助推动框架向前发展。此外,PFN 迁移到 PyTorch 将使其能够高效地整合最新的研究成果,以加速其研发活动,鉴于 PyTorch 在研究人员中的广泛采用,并与社区合作,为正在开发的深度学习处理器 MN-Core 添加 PyTorch 支持。
我们很高兴欢迎 PFN 加入 PyTorch 社区,并共同努力实现推动深度学习技术进步的共同目标。如需了解有关 PFN 迁移到 PyTorch 的更多信息,请访问 此处。
弹性训练和大规模计算机视觉工具
PyTorch Elastic(实验性)
随着 BERT 等架构的出现以及模型参数数量增长到数十亿甚至数百亿,大规模模型训练变得司空见惯。为了在合理的时间内实现这种规模的收敛,需要使用分布式训练。
当前的 PyTorch 分布式数据并行 (DDP) 模块支持数据并行训练,其中每个进程训练相同的模型,但使用不同的数据分片。它支持机器学习训练的批量同步、多主机、多 GPU/CPU 执行。然而,DDP 存在一些缺点;例如,作业在未获取所有请求节点之前无法启动;作业在节点因错误或临时问题而失败后无法继续;作业无法合并稍后加入的节点;最后,在存在慢速/卡顿节点的情况下,无法取得进展。
PyTorch Elastic 的重点是解决这些问题并为 PyTorch 构建一个通用框架/API,以实现这些数据并行训练工作负载的可靠和弹性执行,它使用弹性分布式数据并行。与纯 DDP 相比,它将提供更好的可编程性、更高的容错性、更高的效率和更大规模的训练。
在这种情况下,“弹性”意味着两方面:1) 作业在节点故障后能够继续(通过使用更少的节点和/或合并新主机并向其传输状态);2) 由于资源可用性变化或瓶颈而动态添加/移除节点的能力。
虽然此功能仍处于实验阶段,但您可以按照 此处 的说明在 AWS EC2 上试用。此外,PyTorch 分布式团队正与 AWS 各团队紧密合作,以支持 Amazon Sagemaker 和 Elastic Kubernetes Service (EKS) 等服务中的 PyTorch Elastic 训练。敬请关注近期发布的更多更新。
新分类框架
图像和视频分类是内容理解的核心。为此,您现在可以利用一个新的端到端框架,用于大规模训练最先进的图像和视频分类模型。它允许研究人员快速原型化和迭代大规模分布式训练作业,其规模可达数十亿张图像。优点包括:
- 易用性 – 该框架具有模块化、灵活的设计,任何人都可以使用非常简单的抽象在 PyTorch 之上训练机器学习模型。该系统还与 AWS 上的 PyTorch Elastic 开箱即用集成,促进了大规模研究,并简化了研究与生产之间的转换。
- 高性能 – 研究人员可以使用该框架在 ImageNet 上训练 Resnet50 等模型,最短只需 15 分钟。
您可以在 NeurIPS Expo 多模态研究到生产研讨会上了解更多信息,或从 此处 的 PyTorch Elastic Imagenet 示例开始。
来 NeurIPS 见我们
PyTorch 团队将于 12 月 8 日在 NeurIPS 产业博览会期间举办研讨会。请参加以下会议以了解更多信息,并在展会现场和海报会议期间参观 PyTorch 展位。在展位上,我们将进行一个 PyTorch 在 Cloud TPU 上运行快速神经风格迁移的交互式演示 – 此处 是一个先睹为快。
我们还发表了一篇 论文,详细阐述了驱动 PyTorch 实现的原则以及它们如何反映在 PyTorch 的架构中。
多模态研究到生产 – 本次研讨会将从将尖端研究投入生产的角度,深入探讨计算机视觉(大规模图像分类和实例分割)以及翻译和语音(seq-to-seq Transformers)等多种模态。最后,我们还将详细介绍如何使用 PyTorch 中最新的 API,通过 Torchscript 将 eager 模式开发模型转换为图模式,并对其进行量化,以便在服务器或移动设备上进行大规模生产部署。使用的库包括:
- 分类框架 – 由 Facebook AI 开发的新开源 PyTorch 框架,用于大规模图像和视频分类研究。它允许研究人员快速原型化和迭代大型分布式训练作业。在该框架上构建的模型可以无缝部署到生产环境。
- Detectron2 – 由 Facebook AI Research 计算机视觉团队最近发布的目标检测库。我们将阐明与以前版本相比的改进,包括:1) 支持最新模型和新任务;2) 提高灵活性,以实现新的计算机视觉研究;3) 可维护和可扩展,以支持生产用例。
- Fairseq – 通用序列到序列库,可用于许多应用程序,包括(无监督)翻译、摘要、对话和语音识别。
负责任和可重现的 AI – 本次关于负责任和可重现 AI 的研讨会将深入探讨正在塑造我们如何解释、重现研究以及构建注重隐私的 AI 的重要领域。我们将涵盖主要挑战,详细介绍解决方案,并通过动手教程结束每次演讲。
- 可重现性:随着提交给 arXiv 和会议的研究论文数量猛增,扩展可重现性变得困难。我们必须解决以下挑战:通过标准化代码库来帮助可扩展性,通过编写与硬件无关的代码来普及论文实现,通过记录作者用于使其复杂系统运行的“技巧”来促进结果验证。为了提供解决方案,我们将深入探讨 PyTorch Hub 和 PyTorch Lightning 等工具,这些工具被世界上一些顶级研究人员用于重现最先进的技术。
- 可解释性:随着模型复杂性的增加和随之而来的透明度缺失,模型可解释性方法变得越来越重要。模型理解既是一个活跃的研究领域,也是跨行业使用机器学习的实际应用领域。为了动手实践,我们将使用最近发布的 Captum 库,该库提供最先进的算法,为研究人员和开发人员提供一种简单的方法来理解神经元/层的重要性以及我们的模型所做的预测。
- 私有 AI:通过基于云或机器学习即服务平台进行的机器学习实际应用带来了一系列安全和隐私挑战。正在研究许多技术方法,包括:同态加密、安全多方计算、可信执行环境、设备上计算和差分隐私。为了提供对这些技术如何应用的身临其境的理解,我们将使用 CrypTen 项目,该项目提供了一个基于社区的研究平台,以推动私有 AI 领域的发展。
我们感谢整个 PyTorch 团队和社区为这项工作做出的所有贡献。
干杯!
PyTorch 团队