资源行业动态Facebook推出PyTorch 1.4,支持自定义脚本构建和Java绑定

Facebook推出PyTorch 1.4,支持自定义脚本构建和Java绑定

2020-01-18 | |  80 |   0

原标题:Facebook推出PyTorch 1.4,支持自定义脚本构建和Java绑定

来源:AI人工智能          链接:http://www.atyun.com/49969.html


PyTorch是当今最受欢迎的机器学习框架之一。Facebook今天发布了PyTorch 1.4,对音频、视觉和文本库进行了升级。

PYTORCH 1.4

PyTorch 1.4版本增加了新功能,包括为PyTorch Mobile进行细粒度构建级别自定义的功能,以及新的实验性功能,包括对模型并行训练和Java语言绑定的支持。

PyTorch Mobile-构建级别自定义

在1.3版本的PyTorch Mobile开源之后,PyTorch 1.4添加了更多的移动支持,包括以细粒度级别自定义构建脚本的功能。这使移动开发人员可以通过仅包括其模型所使用的运算符来优化库的大小,并在此过程中显着减少其设备占用的空间。初步结果表明,例如,定制的MobileNetV2比预构建的PyTorch移动库小40%至50%。

用于选择性地仅编译MobileNetV2所需的运算符的示例代码段:

1# Dump list of operators used by MobileNetV2:
2import torch, yaml
3model = torch.jit.load('MobileNetV2.pt')
4ops = torch.jit.export_opnames(model)
5with open('MobileNetV2.yaml','w') as output:
1    yaml.dump(ops, output)
2# Build PyTorch Android library customizedfor MobileNetV2:
3SELECTED_OP_LIST=MobileNetV2.yaml scripts/build_pytorch_android.sh arm64-v8a
4
5# Build PyTorch iOS library customizedfor MobileNetV2:
6SELECTED_OP_LIST=MobileNetV2.yaml BUILD_PYTORCH_MOBILE=1 IOS_ARCH=arm64 scripts/build_ios.sh

分布式模型并行训练(实验性)

随着模型的规模(例如RoBERTa)不断增加到数十亿个参数,模型并行训练对于帮助研究人员突破极限变得越来越重要。此版本提供了分布式RPC框架,以支持分布式模型并行训练。它允许远程运行功能和引用远程对象,而无需复制实际数据,并提供autograd和Optimizer API以透明地向后运行并跨RPC边界更新参数。

Java绑定(实验性)

除了支持Python和C ++,此版本还增加了对Java绑定的实验性支持。基于PyTorch Mobile中为Android开发的界面,新的绑定使你可以从任何Java程序调用TorchScript模型。请注意,Java绑定仅可用于此版本的Linux,并且仅用于推断。有关如何在Java中使用PyTorch的信息,请参见下面的代码片段:

01Module mod = Module.load("demo-model.pt1");
02Tensor data =
03    Tensor.fromBlob(
04        new int[] {1,2,3,4,5,6},// data
05        new long[] {2,3}// shape
06        );
07IValue result = mod.forward(IValue.from(data), IValue.from(3.0));
08Tensor output = result.toTensor();
09System.out.println("shape: " + Arrays.toString(output.shape()));
10System.out.println("data: " + Arrays.toString(output.getDataAsFloatArray()));

域库

PyTorch域库(例如torchvision,torchtext和torchaudio)使用常见的数据集,模型和转换对PyTorch进行了补充。我们很高兴与PyTorch 1.4核心版本一起共享所有三个域库的新版本。

torchvision0.5

torchvision 0.5的改进主要集中在增加对生产部署的支持,包括量化,TorchScript和ONNX。一些亮点包括:

  • 现在,torchvision中的所有模型都可以使用torchscript编写,从而使其更易于移植到非Python生产环境中

  • ResNets,MobileNet,ShuffleNet,GoogleNet和InceptionV3现在已经具有经过预先训练的模型的量化对象,并且还包括用于进行量化意识训练的脚本。

  • 与Microsoft团队合作,我们增加了对所有型号的ONNX支持,包括Mask R-CNN。

torchaudio 0.4

torchaudio 0.4的改进集中在增强当前可用的转换,数据集和后端支持上。重点包括:

  • SoX现在是可选的,并且新的可扩展后端分派机制公开了SoundFile作为SoX的替代方法。

  • 数据集的界面已统一。这样可以添加两个大型数据集:LibriSpeech和Common Voice。

  • 现在提供了新的滤波器(例如双二阶),数据增强(例如时间和频率屏蔽),变换(例如MFCC),增益和抖动以及新的特征计算(例如增量)。

  • 转换现在支持批处理并且是jitable。

  • 具有语音活动检测功能的交互式语音识别演示可用于实验。

torchtext0.5

torchtext 0.5主要集中在对数据集加载器API的改进上,包括与核心PyTorch API的兼容性,但还增加了对无监督文本标记化的支持。重点包括:

  • 为SentencePiece添加了绑定,以实现无监督的文本标记化。

  • 添加了一个新的无监督学习数据集-enwik9。

  • 对PennTreebank,WikiText103,WikiText2,IMDb进行了修订,以使其与torch.utils.data兼容。

THE END

免责声明:本文来自互联网新闻客户端自媒体,不代表本网的观点和立场。

合作及投稿邮箱:E-mail:editor@tusaishared.com

上一篇:人工智能已将目光投向招聘行业,找饭碗要看机器人脸色了?

下一篇:简介神经网络与符号AI结合的方法

用户评价
全部评价

热门资源

  • 国内人才报告:机...

    近日,BOSS 直聘职业科学实验室 &BOSS 直聘研究院...

  • AI使物联网更智能...

    看到微软对物联网和人工智能的结合感兴趣是一个明...

  • 推荐一批学习自然...

    这里推荐一批学习自然语言处理相关的书籍,当然,...

  • 安防智能化大势下...

    大部分传统安防设备不仅拍摄视野有限,而且无法事...

  • 20亿创业基金、10...

    近日,杭州举办了建设国家新一代人工智能创新发展...