Facebook推出PyTorch 1.4,支持自定义脚本构建和Java绑定
PyTorch是当今最受欢迎的机器学习框架之一。Facebook今天发布了PyTorch 1.4,对音频、视觉和文本库进行了升级。 PYTORCH 1.4PyTorch 1.4版本增加了新功能,包括为PyTorch Mobile进行细粒度构建级别自定义的功能,以及新的实验性功能,包括对模型并行训练和Java语言绑定的支持。 PyTorch Mobile-构建级别自定义在1.3版本的PyTorch Mobile开源之后,PyTorch 1.4添加了更多的移动支持,包括以细粒度级别自定义构建脚本的功能。这使移动开发人员可以通过仅包括其模型所使用的运算符来优化库的大小,并在此过程中显着减少其设备占用的空间。初步结果表明,例如,定制的MobileNetV2比预构建的PyTorch移动库小40%至50%。 用于选择性地仅编译MobileNetV2所需的运算符的示例代码段: # Dump list of operators used by MobileNetV2: import torch, yaml model = torch.jit.load('MobileNetV2.pt') ops = torch.jit.export_opnames(model) with open('MobileNetV2.yaml', 'w') as output: yaml.dump(ops, output) # Build PyTorch Android library customized for MobileNetV2: SELECTED_OP_LIST=MobileNetV2.yaml scripts/build_pytorch_android.sh arm64-v8a # Build PyTorch iOS library customized for MobileNetV2: SELECTED_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的信息,请参见下面的代码片段: Module mod = Module.load("demo-model.pt1"); Tensor data = Tensor.fromBlob( new int[] {1, 2, 3, 4, 5, 6}, // data new long[] {2, 3} // shape ); IValue result = mod.forward(IValue.from(data), IValue.from(3.0)); Tensor output = result.toTensor(); System.out.println("shape: " + Arrays.toString(output.shape())); System.out.println("data: " + Arrays.toString(output.getDataAsFloatArray())); 域库PyTorch域库(例如torchvision,torchtext和torchaudio)使用常见的数据集,模型和转换对PyTorch进行了补充。我们很高兴与PyTorch 1.4核心版本一起共享所有三个域库的新版本。 torchvision0.5torchvision 0.5的改进主要集中在增加对生产部署的支持,包括量化,TorchScript和ONNX。一些亮点包括:
torchaudio 0.4torchaudio 0.4的改进集中在增强当前可用的转换,数据集和后端支持上。重点包括:
torchtext0.5torchtext 0.5主要集中在对数据集加载器API的改进上,包括与核心PyTorch API的兼容性,但还增加了对无监督文本标记化的支持。重点包括:
(编辑:应用网_阳江站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |