炼数成金 门户 商业智能 深度学习 查看内容

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

2019-5-5 10:59| 发布者: 炼数成金_小数| 查看: 16828| 评论: 0|原作者: 琥珀|来自: AI科技大本营

摘要: 时隔半年不到,PyTorch 已经从之前的 1.0 升级到 1.1 版本了。刚刚,Facebook 在年度开发者大会 F8 上宣布正式发布 PyTorch 1.1 版本,这是对 PyTorch 1.0 的一次大的功能升级。PyTorch 产品经理 Joe Spisak 接受外 ...

网络 工具 模型 神经网络 GPU

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

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 的 Caff2、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/

声明:本文版权归原作者所有,文章收集于网络,为传播信息而发,如有侵权,请联系小编及时处理,谢谢!

欢迎加入本站公开兴趣群
商业智能与数据分析群
兴趣范围包括:各种让数据产生价值的办法,实际应用案例分享与讨论,分析工具,ETL工具,数据仓库,数据挖掘工具,报表系统等全方位知识
QQ群:81035754

鲜花

握手

雷人

路过

鸡蛋

相关阅读

最新评论

热门频道

  • 大数据
  • 商业智能
  • 量化投资
  • 科学探索
  • 创业

即将开课

 

GMT+8, 2019-6-25 02:39 , Processed in 0.112224 second(s), 25 queries .