新版PyTorch发布!新增TorchScript API,扩展ONNX导出……4大功能更新值得关注

PyTorch 1.2.0 版本发布,引入多项重大改进,包括增强 TorchScript 支持,扩展 ONNX 导出,新增 Transformer 模块,及 TensorBoard 的直接集成。此外,还更新了 torchvision、torchaudio 和 torchtext 库。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

铜灵 发自 凹非寺
量子位 出品 | 公众号 QbitAI

今天,PyTorch 1.2.0版正式发布。

官方表示,和1.1版本相比,新版本在使用体验上又往前迈进了一大步。主要新增/改动的功能包括:

  • 完善TorchScript环境,提供了新的将模型编译为TorchScrip的API

  • 扩展ONNX模型的导出的支持

  • 增强对Transformer架构的模块级支持

  • 此外,TensorBoard现在也能快速开始使用了

对于这一系列的更新,Reddit网友开心得不得了。

有网友评价,Transformer层非常棒,此前需要用自己的自定义图层,现在终于不用去维护它了。

640?wx_fmt=png

TensorBoard不再是一个实验性的功能了。RIP,浏览器。

640?wx_fmt=png

总之,1.2.0版本的PyTorch更方便更好用了。一起围观下具体更新。

640?wx_fmt=jpeg

四大更新

TorchScript编译器

TorchScript编译器最早是在1.0版本出现的,可以将PyTorch模型转换为静态图表征,可用于Python不可用的受限环境中的优化和执行。

新版本中扩展了TorchScript对PyTorch模型中使用的Python子集的支持,提供了一种新的、更易于使用的API,用于将模型编译为TorchScript。

此前,TorchScript编译器将模型逐步转换为TorchScript,将编译后的代码与Python无缝混合。有了新的API,能将nn.Modules 转换为ScriptModules。

看一下示例用法:

640?wx_fmt=png

扩展ONNX导出

作为开源的模型交换格式,让不同的框架以相同格式存储模型数据并交互,ONNX的出现为开发人员节约了不少时间。

在PyTorch最新版中,开发者进一步扩展了ONNX导出。

主要包括:

  • 支持多种Opset,包括在Opset 10中导出dropout、slice、flip和interpolate

  • 改进ScriptModule,支持多个Tensor factory和tuples作为输入和输出

  • 新支持了十几个额外的PyTorch operator,还能对其进行自定义

  • 改进bug~

nn.Transformer模块

在PyTorch 1.2.0版本中,包含了一个标准的nn.Transformer模块,这个模块完全依赖于注意机制来理清输入和输出之间的全局依赖关系。其中的各个组件可以独立使用。

  • 例如,nn.TransformerEncoder可以单独使用,不需要更大nn.Transformer。新API包括:

  • nn.Transformer

  • nn.TransformerEncoder和nn.TransformerEncoderLayer

  • nn.TransformerDecoder和nn.TransformerDecoderLayer

Tensorboard

此外还有一处更新。现在输入from torch.utils.tensorboard import SummaryWriter即可直接使用了。

只要安装了TensorBoard,这些实用程序就可以将PyTorch模型和标准记录到目录中,用户可在TensorBoard UI中进行可视化。

更新×3

这次更新的不止PyTorch 1.2,还有torchvision 0.4,torchaudio 0.3和torchtext 0.4。

torchvision 0.4版本,包含了:

可用于读/写视频和音频文件的IO原语(I/O primitives),支持任意编码和格式。

一个标准视频数据集,兼容torch.utils.data.Dataset和torch.utils.data.DataLoader。

基于Kinetics-400数据集构建的预训练模型,可用于视频(训练脚本)的动作分类。

用于训练你自己视频模型的参考训练脚本

torchaudio 0.3主要针对让机器解释音波,新版本中围绕标准化、复数(complex number)、转换(重新采样)进行改进,还更新了torchaudio的转换接口。

torchtext 0.4针对的时NLP研究,可以用于处理基于原始文本的数据。

此次更新的版本中,包含了很多流行监督学习带“one-command”数据加载的baseline,此外,还更新了如何用新数据集进行文本分类分析的教程。

传送门

PyTorch介绍:
https://pytorch.org/blog/pytorch-1.2-and-domain-api-release/

GitHub地址:
https://github.com/pytorch/pytorch/releases


加入社群 | 与优秀的人交流

640?wx_fmt=png

小程序 | 全类别AI学习教程

640?wx_fmt=jpeg


640?wx_fmt=jpeg

量子位 QbitAI · 头条号签约作者

վ'ᴗ' ի 追踪AI技术和产品新动态

喜欢就点「好看」吧 !



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值