PyTorch 1.0 正式发布,支持 eager 和 graph 模式无缝转换

出处丨AI前线

随着 PyTorch 生态系统和社区不断为开发者提供越来越多有趣的新项目和教育资源,今天在 NeurIPS 大会上,PyTorch 1.0 稳定版正式发布啦!1.0 预览版已经在 10 月份的 PyTorch 开发者大会期间亮过相,其中包括生产就绪的功能和主要云平台的支持。

研究人员和工程师现在就可以完全使用这个开源深度学习框架的新功能,包括可在 eager 和 graph 执行模式之间无缝转换的混合前端、改进的分布式训练、一个用于高性能研究的纯 C++ 前端,以及与云平台的深度集成。

PyTorch 1.0 加快了将 AI 从研究原型设计到生产部署的工作流程。在过去的几个月里,我们看到初学者通过广泛的教育新计划迅速入门 PyTorch,专家们构建了一些创新项目对框架进行了扩展,并进入到自然语言处理、概率编程等领域。


不断发展的 PyTorch 社区

PyTorch 于 2017 年初首次推出,并迅速成为人工智能研究人员的热门选择。由于其灵活、动态的编程环境和对用户友好的接口,研究人员发现它非常适合用于进行快速实验。从那时起,社区就开始迅速发展起来。PyTorch 现在是 GitHub 上增长速度第二快的开源项目,在过去 12 个月中,贡献者增长了 2.8 倍。

我们对 PyTorch 社区的发展感到非常兴奋,并感谢为代码库做出贡献、提供指导和反馈、使用该框架构建前沿项目的每一个人。为此,我们希望开发人员能够通过新的教育计划更轻松地学习如何使用 PyTorch 构建、训练和部署机器学习模型。

教育课程将 AI 开发人员聚集在一起

上个月,Udacity 和 Facebook 推出了一个新课程——PyTorch 深度学习简介,以及 PyTorch 挑战计划——为人工智能教育提供奖学金。在最初几周,我们看到成千上万的学生积极参与在线课程。更重要的是,这些教育课程开始将全世界的开发者社区更加紧密地聚集在一起。


现在,Udacity 网站免费向所有人提供完整的课程,开发人员很快就可以通过更高级的 AI Nanodegree 计划继续他们的 PyTorch 教育课程。

除了在线教育课程之外,像 fast.ai 这样的组织还提供了一些软件库来支持开发人员学习如何使用 PyTorch 构建神经网络。fastai 是一个用于简化神经网络训练的库,自两个月前发布以来,已经在 GitHub 上获得了 10000 颗星。

一些开发人员已经使用这个库成功开发了一些项目。例如,Santhosh Shetty 使用 fastai 将灾后损伤等级分类的最佳准确率提高了一倍,Alena Harley 将肿瘤正常测序的假阳性率降低了 7 倍。此外,Jason Antic 创建了一个名为DeOldify的项目,使用深度学习来着色和恢复旧图像。


PyTorch 的扩展项目

PyTorch 已经被应用在图像识别和机器翻译等领域。因此,我们看到了来自开发者社区的各种项目,其中一些项目包括:

Horovod——一个分布式训练框架,让开发人员能够在多个 GPU 上快速训单 GPU 程序。PyTorch Geometry—— PyTorch 的几何计算机视觉库,提供了一组例程和可区分的模块。TensorBoardX——用于将 PyTorch 模型记录到 TensorBoard 的模块,开发人员可以使用可视化工具进行模型训练。

此外,来自 Facebook 的团队还在为 PyTorch 构建和开源其他项目,例如Translate,一个基于 Facebook 机器翻译系统的序列到序列模型训练库。

对于希望在特定领域开展工作的 AI 开发人员而言,整个生态系统有助于他们了解业界的一些最新的前沿研究。随着 PyTorch 的不断发展,我们期待看到社区中会出现更多的新项目。

云集成

为了更易于访问 PyTorch,我们继续深化与云平台和服务(如 Amazon Web Services、Google Cloud Platform 和微软 Azure)的集成。最近,AWS 推出了支持 PyTorch 的 Amazon SageMaker Neo,允许开发人员在 PyTorch 中构建机器学习模型,训练一次即可在云端或边缘的任何地方部署,性能提升高达 2 倍。开发人员现在还可以通过创建新的 Deep Learning VM 实例在 Google Cloud Platform 上试用 PyTorch 1.0。

此外,微软的 Azure 机器学习服务现已普遍可用,数据科学家可以在 Azure 上无缝地训练、管理和部署 PyTorch 模型。通过使用该服务提供的 Python SDK,PyTorch 开发人员可以利用按需分布式计算功能,并使用 PyTorch 1.0 大规模地训练模型,加速应用到生产环境中。

AI 开发人员可以通过云合作伙伴或在本地安装开始使用 PyTorch 1.0,并按照PyTorch 网站上提供的分步教程来执行一些任务,例如使用混合前端部署序列到序列模型、训练简单的聊天机器人,等等。最新的发行说明也可以在 PyTorch GitHub 上获得。

英文原文:https://code.fb.com/ai-research/pytorch-developer-ecosystem-expands-1-0-stable-release/