重磅!Facebook更新PyTorch 1.1,打算跨GPU分割神经网络

时隔半年不到,PyTorch 已经从以前的 1.0 升级到 1.1 版本了。刚刚,Facebook 在年度开发者大会 F8 上宣布正式发布 PyTorch 1.1 版本,这是对 PyTorch 1.0 的一次大的功能升级。node

做者 | 琥珀git

出品 | AI科技大本营(ID:rgznai100)github

PyTorch 产品经理 Joe Spisak 接受外媒 ZDNet 采访时,谈及了新推出的训练 AI 系统时”跨 GPU 分割神经网络“功能,他表示:“(神经网络)模型愈来愈大,它们真得很是大,并且训练一个模型的成本也很是高。在不少状况下,其 GPU 占比超过 16GB。例如,咱们内部最新开发的神经网络模型超过 10GB,其参数数量基本超过 10 亿个。“算法

虽然 BERT 效果惊人,但其所须要的计算量也很是大。例如,BERT-Large 模型有 24 层、2014 个隐藏单元,它们在有 33 亿词量的数据集上须要训练 40 个 Epoch。微信

为了解决这类问题,PyTorch 1.1 增长了跨 GPU 分割神经网络的能力,成为”分片 “(sharding)模型。此前,PyTorch 容许开发人员将不一样处理器中的训练数据分割,这在并行处理计算领域称为” 数据并行 “(data parallelism)。神经网络分割使得” 指令并行“成为可能,所以神经网络能够实现多指令、多数据的模式。网络

”通常来说,这些模型均位于一个 GPU 中,开发人员处理分布式并行数据,这意味着,他们能够对数据集进行分割,而后在系统上复制模型。一旦训练这种较大规模的模型,模型自己就必须切分。能够将某个模型层或子图神经网络放在一个节点上,而后将另外一个子图神经网络切换到另外一个计算单元上。“架构

分片完成后,PyTorch 中的算法在模型训练时会将其结合起来。框架

实际上,跨 GPU 分割模型仅是 PyTorch 这次升级的其中一项新功能。机器学习

PyTorch 1.1 有什么新功能?分布式

该框架主要有四大更新,总结起来以下:

  • 提供 TensorBoard 官方支持:

使用 TensorBoard 进行一级原生的可视化和模型调试。TensorBoard 是一个用于检查和理解训练脚本、张量和图神经网络的 Web 应用程序套件。PyTorch 如今经过一个简单的 “from torch.utils.tensorboard import SummaryWriter” 命令原生支持 TensorBoard。

  • 升级 JIT 编译器:

对即时(JIT)编译进行改进。这些改进包括修复各类 bug 一级 TorchScript 中的扩展功能,例如对字典、用户类和属性的支持。

  • 新 API:

支持布尔张量,更好地支持自定义递归神经网络(RNN)。

  • 分布式训练:

改进了 CNN 等场景模型的性能,增长了对多设备模块的支持,包括在使用分布式数据并行(DDP,Distributed Data Parallel)的同时跨 GPU 分割模型的能力,并支持在每次迭代中不适用全部参数的模块(例如控制流程,如自适应 softmax 等)。

值得注意的是,PyTorch 1.1 再也不支持 CUDA 8.0。

生态的深度支持

PyTorch 升级新框架都不开生态社区的支持。

例如,在 2018 年 5 月在 F8 开发者大会上首次公布的 PyTorch 1.0 ,就与 Facebook 的 Caff二、ONNX 进行了更深刻的整合。

而这次,Facebook 表示:还将继续与社区合做,开发共同项目和工具,旨在支持 ML 工程师知足从改进模型理解到使用 AutoML 方法进行自动调整等各类需求。其中包括已经在生产规模部署的 Facebook 开源资源,以及与 Google 等公司合做的产品和服务,主要有四方面:

  • BoTorch

BoTorch 是一个创建在 PyTorch 之上的贝叶斯优化库。

  • Ax

Ax 是一个用于管理自适应实验的机器学习平台,它使研究人员和工程师可以系统地探索大型配置空间,以优化机器学习模型、基础架构和产品。

  • PyTorch-BigGraph

PBG 是一个分布式系统,用于建立具备数十亿实体和数万亿边的很是大的图神经网络的嵌入。(AI 科技大本营此前报道

  • Google AI Platform Notebooks

Google AI Platform Notebooks 是 Google Cloud Platform 提供的全新托管的 JupyterLab 服务。数据科学家能够快速建立运行 JupyterLab 的虚拟机,并预装最新版本的 PyTorch。它还与 BigQuery、Cloud Dataproc、Cloud Dataflow 和 AI Factory 等 GCP 服务紧密集成,能够在不离开 JupyterLab 的状况下轻松执行完整的机器学习构建。

此外,Facebook 将与 fast.ai 展开更紧密的合做。

去年,双方联合发布了 fastai 1.0,一个基于 PyTorch 构建的开源深度学习库。目前,包括斯坦福 NLP、加州伯克大学 CV 课程正基于 PyTorch 进行授课。今年,Facebook 表示,将在牛津大学 Andrew Trask 和 OpenMined 推出深度学习入门课程的基础上,赞助新的 Udacity 课程。Facebook 还将提供奖学金,以支持学生在 Udacity 完整的 Nanodegree 课程中继续接受教育。

相关连接:

https://pytorch.org/

https://github.com/pytorch/pytorch/releases

https://ai.facebook.com/blog/pytorch-adds-new-dev-tools-as-it-hits-production-scale/

(本文为AI科技大本营原创文章,转载请微信联系 1092722531)


CTA核心技术及应用峰会

5月25-27日,由中国IT社区CSDN与数字经济人才发展中心联合主办的第一届CTA核心技术及应用峰会将在杭州国际博览中心隆重召开,峰会将围绕人工智能领域,邀请技术领航者,与开发者共同探讨机器学习和知识图谱的前沿研究及应用。

更多重磅嘉宾请识别海报二维码查看,目前会议早鸟票发售中(原票价1099元),点击阅读原文即刻抢购。添加小助手微信15101014297,备注“CTA”,了解票务以及会务详情。