PyTorch 1.3 发布
PyTorch 1.3 已经发布了,新的版本不仅能支持 Android/iOS 移动端部署,甚至还能让用户去对手 Google 的 Colab 上调用云 TPU。此外还有一大波新工具,涉及可解释性、加密、以及关于图像语音的诸多功能。PyTorch 1.3 带来了三个实验性的新功能:
命名张量
允许用户给张量维度命名,从而让张量更易用,这样就可以直接喊他们的名字,不用根据位置来跟踪张量维度。
升级之前,你需要在代码里写注释来给张量命名:
# Tensor[N, C, H, W] images = torch.randn(32, 3, 56, 56) images.sum(dim=1) images.select(dim=1, index=0)
升级之后,就直接能在代码里写了,这样可读性大大提高:
NCHW = [‘N’, ‘C’, ‘H’, ‘W’] images = torch.randn(32, 3, 56, 56, names=NCHW) images.sum('C') images.select('C', index=0)
另外,这项功能还能自动检查 API 是否被正确的使用,提升了安全性,还可以直接用名字来重新排列尺寸。
量化支持
开发 ML 应用程序时,有效利用服务器端和设备上的计算资源非常重要。
为了支持在服务器和边缘设备上进行更有效的部署,PyTorch 1.3 现在支持用 eager 模式进行 8 位模型量化。所谓量化,是指降低精度执行计算和存储的技术。
当前处于实验性的量化功能包括对后训练量化(post-training quantization)、动态量化(dynamic quantization)和量化感知训练(quantization-aware training)的支持。它分别利用了 x86 和 ARM CPU 的 FBGEMM 和 QNNPACK 最新的量化内核后端,这些后端与 PyTorch 集成在一起,并且现在共享一个通用 API。
移动端
另外,为了在边缘设备上高效的运行机器学习,PyTorch 1.3 支持端到端的工作流,从 Python 到部署在 iOS 和安卓端。
当然,这个功能还是早期实验版本,针对端到端做了优化,新版本重点在:
- 大小优化,根据用户需要构建级别优化和选择性编译。
- 提升了移动 CPU 和 GPU 上的性能。
- 高级 API:扩展移动原生 API,覆盖常用预处理、将机器学习合并到移动应用需要的集成任务,比如计算机视觉或者 NLP 的任务。
新工具
- 可解释性工具 Captum:Captum 可以帮助使用 PyTorch 的开发者了解为什么他们的模型生成某个特定输出。Captum 提供了先进的工具来理解特定神经元和层如何影响模型做出的预测。下面的案例展示了如何在预训练的ResNet模型上应用模型可解释性算法,然后通过将每个像素的属性叠加在图像上,使其可视化:
noise_tunnel = NoiseTunnel(integrated_gradients) attributions_ig_nt, delta = noise_tunnel.attribute(input, n_samples=10, nt_type='smoothgrad_sq', target=pred_label_idx) _ = viz.visualize_image_attr_multiple(["original_image", "heat_map"], ["all", "positive"], np.transpose(attributions_ig_nt.squeeze().cpu().detach().numpy(), (1,2,0)), np.transpose(transformed_img.squeeze().cpu().detach().numpy(), (1,2,0)), cmap=default_cmap, show_colorbar=True)
-
加密工具 Cryp Ten:这是一个新的基于社区的研究平台,用于推动隐私保护 ML 领域的发展。
多模 AI 系统工具
- Detectron2:Detectron2 是在 PyTorch 中实现的目标检测库。它以增强的灵活性帮助计算机视觉研究,并改善可维护性和可伸缩性,以支持在生产中的用
-
Fairseq 的语音扩展:语言翻译和音频处理是系统和应用程序(例如搜索,翻译,语音和助手)中的关键组件。由于变压器等新架构的发展以及大规模的预训练方法的发展,最近在这些领域取得了巨大的进步。
云端支持
- 谷歌云 TPU:在 Facebook、Google 和 Salesforce 的工程师共同努力下,新版的 PyTorch 加入对了云 TPU 支持,包括对超级计算机云 TPU Pods 的实验性支持。谷歌 Colab 还提供了对云 TPU 的 PyTorch 支持。
-
阿里云:阿里云的集成涉及 PyTorch 1.x 的一键式解决方案,数据科学 Workshop notebook 服务,使用 Gloo/NCCL 进行的分布式训练,以及与阿里巴巴 IaaS(如 OSS、ODPS 和 NAS)的无缝集成。
-
硬件生态扩展:除了主要的 GPU 和 CPU 合作伙伴之外,PyTorch 生态系统还支持专用的机器学习加速器。比如英特尔不久前推出的 NNP-I 推理芯片、Habana Labs 的 AI 处理器
参考:量子位
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Zotero 5.0.75 发布,文献管理工具
Zotero 是一个免费易用的 Firefox 扩展与客户端软件,可以协助我们收集、管理及引用研究资源,包括期刊、书籍等各类文献和网页、图片等。5.0.75版本内容有: 添加或更改功能 添加视图菜单:包括以前首选项中的用户界面选项、各种窗口的切换以及一个新的“Display Items from Subcollections””选项 添加“Convert Linked Files to Stored Files”菜单选项 [Mac]MacOS Catalina 中非 Retina 显示上小文本可读性的改进 修复bug 修复了当彩色标签包含前导/尾端空格时标签选择器损坏的问题 修复只读库中的标签选择 修复冲突解决过程中可能出现的“getNote() can only be called on notes and attachments”错误 修复潜在的“attachmentSyncedModificationTime must be a number”同步错误 发布说明: https://www.zotero.org/support/changelog
- 下一篇
Node 8.16.2 发布,服务器端的 JavaScript 运行环境
Node 8.16.2发布了,内容有: deps:将 OpenSSL 源升级到 1.0.2s Node.js 是一个基于Chrome V8 引擎的 JavaScript 运行时。 Node.js 使用高效、轻量级的事件驱动、非阻塞 I/O 模型。Node.js 的生态系统是目前最大的开源包管理系统。 发布说明: https://nodejs.org/en/blog/release/v8.16.2/
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- CentOS7,CentOS8安装Elasticsearch6.8.6
- CentOS6,CentOS7官方镜像安装Oracle11G
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- CentOS8编译安装MySQL8.0.19
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Windows10,CentOS7,CentOS8安装Nodejs环境