作者 | 琥珀

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

责编 | 胡巍巍

时隔半年不到,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/

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

【END】

作为码一代,想教码二代却无从下手:

听说少儿编程很火,可它有哪些好处呢?

孩子多大开始学习比较好呢?又该如何学习呢?

最新的编程教育政策又有哪些呢?

下面给大家介绍CSDN新成员:极客宝宝(ID:geek_baby)

戳他了解更多↓↓↓

 热 文 推 荐 

☞苏州到底有没有互联网?

☞41 岁蚂蚁金服总裁助理去世; 华为首款 5G 手机欧洲上市;库克首谈 5G iPhone | 极客头条

☞消失的手机玩家

☞真の硬核粉丝!小学生也参加杨超越杯,作品优秀!

☞ 阿里半跪过,任正非差点跳楼,京东被骗光钱:成年人的生活哪有容易二字?

不改变比特币, 如何扩容?

☞强推!盘点阿里巴巴 15 款开发者工具 | 程序员硬核评测

☞17篇论文入选CVPR 2019,百度AI都在关注什么?(附论文地址)

☞ 她说:为啥程序员都特想要机械键盘?这答案我服!

System.out.println("点个在看吧!");
console.log("点个在看吧!");
print("点个在看吧!");
printf("点个在看吧!\n");
cout << "点个在看吧!" << endl;
Console.WriteLine("点个在看吧!");
Response.Write("点个在看吧!");
alert("点个在看吧!")
echo "点个在看吧!"

你点的每个“在看”,我都认真当成了喜欢

重磅!Facebook 更新 PyTorch 1.1,打算跨 GPU 分割神经网络 | 技术头条相关推荐

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

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

  2. Facebook更新PyTorch 1.1,深度学习CPU抢GPU饭碗?

    在一年一度的开发者大会F8上,Facebook放出PyTorch的1.1版本,直指TensorFlow"腹地". 不仅宣布支持TensorFlow的可视化工具TensorBoard ...

  3. 争论不休的TF 2.0与PyTorch,到底现在战局如何了? | 技术头条

    点击上方↑↑↑蓝字关注我们~ 「2019 Python开发者日」全日程揭晓,请扫码咨询 ↑↑↑ 作者 | Jeff Hale 译者 | Jackey 编辑 | Jane 出品 | AI科技大本营(id ...

  4. 重磅!Facebook公布PyTorch 1.0预览版!

    作者 | 琥珀 出品 | AI科技大本营(公众号ID:rgznai100) 今日,Facebook 宣布发布深度学习框架 PyTorch 1.0 开发者预览版,包括一些列工具和集成,使其与 Googl ...

  5. Facebook 发布 PyTorch Hub:一行代码实现经典模型调用!

    作者 | Team PyTorch 译者 | Monanfei 责编 | 夕颜 出品 | AI科技大本营(ID: rgznai100) 6月11日,Facebook PyTorch 团队推出了全新 A ...

  6. Facebook开源图嵌入“神器”:无需GPU,高效处理数十亿级实体图形 | 极客头条...

    点击上方↑↑↑蓝字关注我们~ 「2019 Python开发者日」全日程揭晓,请扫码咨询 ↑↑↑ 编译 | Major.一一 出品 | AI科技大本营(ID: rgznai100) 有效处理大规模图对于 ...

  7. 微软Silverlight==跨浏览器、跨客户平台的技术

    silverlight 微软Silverlight是一个跨浏览器.跨客户平台的技术,能够设计.开发和发布有多媒体体验与富交互(RIA,Rich Interface Application)的网络交互程 ...

  8. 跨端架构的技术选型 2022

    1. 跨端架构的意义 在<The Pragmatic Programmer>(中文翻译为<程序员修炼之道>)中,作者提了一个 DRY(Don't Repeat Yourself ...

  9. PyTorch之LeNet-5:利用PyTorch实现最经典的LeNet-5卷积神经网络对手写数字图片识别CNN

    PyTorch之LeNet-5:利用PyTorch实现最经典的LeNet-5卷积神经网络对手写数字图片识别CNN 目录 训练过程 代码设计 训练过程 代码设计 #PyTorch:利用PyTorch实现 ...

最新文章

  1. 安卓收藏功能怎么实现_收藏!微信群接龙功能怎么操作?
  2. How do I open an editor on something that is not a file?
  3. Python 技术篇-使用opencv库读取中文路径图片报错解决办法
  4. ecshop $user
  5. 如何判断Linux load的值是否过高
  6. 外部系统调用PO的webservice服务,往SAP系统发送数据,用的XISOAPAdapter的方式,出现错误
  7. 计组之总线:4、总线标准
  8. 浅谈Fluent Ribbon 中的SplitButton
  9. 任天堂的好日子還會繼續嗎﹖
  10. php 数组对,PHP数组游标实现对数组的各种操作详解
  11. Pytorch框架实战——102类花卉分类
  12. java 一个数组key一个数组value_在各种语言中,使用key在map中获取value 和 使用下标获取数组中的数据 相比哪个更快?...
  13. activiti并行网关
  14. 顶尖的语音识别软件――Nuance Recognizer_语音识别_CTI论坛
  15. 什么是运营?与产品的关系是怎样的?
  16. 黑苹果hidp显示不清楚_bigsur 黑苹果开启HIDPI失败解决方法
  17. java 修改request中的参数_springcloud 中 zuul 修改请求参数信息的方法
  18. 阿里大厂面试:2亿条数据需要缓存,如何设计这个存储方案?
  19. (附源码)springboot社区疫苗接种管理系统 毕业设计 281442
  20. 量子前沿英雄谱|IonQ联合创始人兼首席技术官Jungsang Kim

热门文章

  1. [Python] pip 清除缓存
  2. 生成对抗网络GAN损失函数loss的简单理解
  3. 剑指Offer之平衡二叉树
  4. flask 允许内网访问
  5. Dart基础知识之main()函数介绍
  6. 中国1,3丁二醇市场趋势报告、技术动态创新及市场预测
  7. 2021-2025年中国宠物美容台行业市场供需与战略研究报告
  8. 2021年中国宠物玩具与训练市场趋势报告、技术动态创新及2027年市场预测
  9. php a文件怎么继承b文件的类,php 如何将存在a文件中图片移到b文件中
  10. 从 Windows 切换到 Mac,这些不能错过的 Tips