PyTorch 将继续用于下周 NeurIPS 会议上展示的最新尖端研究,在引用框架的论文中,PyTorch 占了近 70%。此外,我们很高兴欢迎 Chainer 框架的维护者 Preferred Networks 加入 PyTorch 社区。他们的团队将全面转向 PyTorch,以开发其机器学习能力和服务。
这一增长巩固了 PyTorch 专注于满足研究社区需求,并日益支持从研究到生产部署的完整工作流程。为了进一步支持研究人员和开发人员,我们正在推出许多新的工具和库,用于大规模计算机视觉和弹性容错训练。在 GitHub 和我们的 NeurIPS 展位了解更多信息。
Preferred Networks 加入 PyTorch 社区
Preferred Networks, Inc. (PFN) 宣布计划将其深度学习框架从 Chainer 迁移到 PyTorch。作为此次变更的一部分,PFN 将与 PyTorch 社区和贡献者(包括来自 Facebook、微软、卡内基梅隆大学和纽约大学的人员)合作,参与 PyTorch 的开发。
PFN 开发了 Chainer,这是一种引入了即时定义(也称为 Eager Execution)概念的深度学习框架,旨在支持并加速其深度学习开发。自 2015 年以来,Chainer 一直在 PFN 使用,以利用最新的尖端技术快速解决实际问题。正如 PyTorch NeurIPS 论文所述,Chainer 也是 PyTorch 初始设计的灵感来源之一。
PFN 在 CuPy、15 分钟 ImageNet、Optuna 以及其他推动设计和工程边界的项目上取得了创新性工作。作为 PyTorch 社区的一部分,PFN 带来了创造性的工程能力和经验,以帮助推动该框架向前发展。此外,鉴于 PyTorch 在研究人员中广泛采用,PFN 迁移到 PyTorch 将使其能够高效地整合最新研究成果,加速其研发活动,并与社区合作,为 PyTorch 在正在开发的深度学习处理器 MN-Core 上添加支持。
我们很高兴欢迎 PFN 加入 PyTorch 社区,并共同努力实现深化深度学习技术的共同目标。在此处了解更多关于 PFN 迁移到 PyTorch 的信息:here。
用于弹性训练和大规模计算机视觉的工具
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 之上训练机器学习模型。该系统还与 PyTorch Elastic 上的 AWS 进行开箱即用集成,方便大规模研究,并简化了研究和生产之间的转换。
- 高性能 – 研究人员可以使用该框架在短短 15 分钟内训练 ImageNet 上的 Resnet50 等模型。
您可以在 NeurIPS Expo 多模态研究到生产研讨会中了解更多信息,或者从 PyTorch Elastic Imagenet 示例开始:此处。
来 NeurIPS 见我们
PyTorch 团队将于 12 月 8 日在 NeurIPS 产业博览会期间举办研讨会。请参加以下会议以了解更多信息,并在展会现场和海报会议期间参观 PyTorch 展位。在展位上,我们将演示 PyTorch 在 Cloud TPU 上运行快速神经风格迁移的互动演示——这里是抢先看。
我们还在发表一篇论文,详细介绍了驱动 PyTorch 实现的原则以及它们如何在 PyTorch 架构中体现。
多模态研究到生产——本次研讨会将深入探讨多种模态,例如计算机视觉(大规模图像分类和实例分割)以及翻译和语音(seq-to-seq Transformers),从将尖端研究投入生产的角度进行探讨。最后,我们还将详细介绍如何使用 PyTorch 中最新的 API,通过 Torchscript 将 Eager 模式开发模型转换为 Graph 模式,并对其进行量化,以便在服务器或移动设备上进行大规模生产部署。使用的库包括:
- 分类框架——Facebook AI 新开源的 PyTorch 框架,用于大规模图像和视频分类研究。它允许研究人员快速原型化并迭代大型分布式训练任务。基于该框架构建的模型可以无缝部署到生产环境。
- Detectron2——Facebook AI Research 计算机视觉团队最近发布的物体检测库。我们将阐明与旧版本相比的改进,包括:1) 支持最新模型和新任务;2) 增加灵活性,以支持新的计算机视觉研究;3) 可维护和可扩展,以支持生产用例。
- Fairseq – 通用序列到序列库,可用于许多应用,包括(无监督)翻译、摘要、对话和语音识别。
负责任和可复现的 AI——本次关于负责任和可复现 AI 的研讨会将深入探讨正在塑造我们如何解释、复现研究以及在考虑隐私的情况下构建 AI 的未来重要领域。我们将涵盖主要挑战,详细介绍解决方案,并通过实践教程结束每场讲座。
- 可复现性:随着提交给 arXiv 和会议的研究论文数量猛增,扩展可复现性变得困难。我们必须解决以下挑战:通过标准化代码库来帮助扩展性,通过编写与硬件无关的代码来普及论文实现,通过记录作者用于使其复杂系统正常运行的“技巧”来促进结果验证。为了提供解决方案,我们将深入研究 PyTorch Hub 和 PyTorch Lightning 等工具,这些工具被世界上一些顶尖研究人员用于复现最先进的技术。
- 可解释性:随着模型复杂性的增加和随之而来的透明度不足,模型可解释性方法变得越来越重要。模型理解既是活跃的研究领域,也是跨行业使用机器学习的实际应用领域。为了动手实践,我们将使用最近发布的 Captum 库,该库提供最先进的算法,为研究人员和开发人员提供一种简单的方法来理解神经元/层的重要性以及我们的模型所做的预测。
- 私密人工智能:通过基于云或机器学习即服务平台实现的机器学习的实际应用带来了一系列安全和隐私挑战。正在研究的技术方法包括:同态加密、安全多方计算、可信执行环境、设备端计算和差分隐私。为了提供对这些技术如何应用的身临其境的理解,我们将使用 CrypTen 项目,该项目提供了一个基于社区的研究平台,以推动私密人工智能领域的发展。
我们感谢整个 PyTorch 团队和社区为这项工作做出的所有贡献。
干杯!
PyTorch 团队