首页 > 编程知识 正文

android api版本(android打开api文档)

时间:2023-05-04 07:24:54 阅读:642 作者:4672

机器心脏报告

机器智信编辑部

流行的深度学习框架PyTorch刚刚更新了1.10正式版,在CUDA Graphs API等方面做了很多改进。

PyTorch是一个开源的Python机器学习库,基于Torch,底层由c实现,主要用于人工智能领域,如自然语言处理。它最初是由脸书的人工智能研究团队开发的。由于PyTorch定义的简单网络结构,自发表以来受到了众多研究者的青睐。

在研究人员的不断努力下,PyTorch现已更新为PyTorch 1.10的1.10版本,该版本自1.9版本以来提交了3400多份承诺,由426位贡献者完成。

PyTorch 1.10的更新侧重于提高PyTorch的培训和性能以及开发人员的可用性。重点包括以下内容:

集成了CUDA图形API,降低了CUDA工作负载的CPU开销;几个前端API,比如FX,torch.special,nn。模块化,已经从测试版变成了稳定版;除了GPU,JIT编译器中对自动融合的支持也扩展到了CPU。安卓NNAPI支持现已测试版。(注:从PyTorch的1.6版本来看,Pytorch的功能可以分为稳定版、Beta版和原型版。

PyTorch 1.10的最新功能

前端API

使用FX进行python代码转换(稳定版):FX提供了一个用于转换和还原Python程序的Python平台,是一个工具包。在1.10版本中,FX趋于稳定,用户可以使用torch.fx实现程序转换。

Torch.special(稳定版):torch.special模块,类似于SciPy的special模块,现提供稳定版。该模块有30个操作,包括伽马、贝塞尔和(高斯)误差函数。

神经网络的参数化。模块(稳定版本):允许用户在不修改nn的情况下参数化任何参数。模块本身,可以在稳定版本中使用。该版本增加了权重归一化(weight_norm)和正交参数化(矩阵约束和部分剪枝),使得用户在创建自己的参数化时更加灵活。

CUDA grapes API集成(测试版):PyTorch现在集成了CUDA grapes API,减少了CUDA工作负载的CPU开销。

Cugraphs大大降低了CPU绑定cuda(CPU绑定cuda)工作负载的CPU开销,从而通过提高GPU的利用率来提升性能。CUDA Graphs还可以减少分布式工作负载的抖动,并且由于并行工作负载必须等待最慢的工作负载,因此减少抖动可以提高整体并行效率。

分布式培训

在1.10版本中,分布式包中有许多从测试版过渡到稳定版的特性,包括:

远程模块(稳定版):该功能允许用户远程操作模块,就像使用本地模块一样,其中RPC对用户透明;DDP通信钩子(稳定版):该功能允许用户覆盖DDP如何跨进程同步梯度;ZeroRedundancyOptimizer(稳定版):这个函数可以和DistributedDataParallel结合使用,减少每个进程优化器状态的大小。性能优化和工具

(beta) TorchScript严格要求源代码必须有类型注释才能成功编译。长期以来,用户只能重复

试验来添加缺失或不正确的类型注解,效率低下,耗时长。现在,PyTorch 1.10 利用 MonkeyType 等现有工具为 torch.jit.script 启用了配置文件定向输入,这使得该过程变得更容易、更快和更高效。

(测试版)CPU 融合:PyTorch 1.10 为 CPU 添加了一个基于 LLVM 的 JIT 编译器,可以将 Torch 库调用序列融合在一起以提高性能。虽然此前的版本在 GPU 上拥有此功能已有一段时间了,但 1.10 版本是第一次将编译引入 CPU。

PyTorch Profiler

(测试版)PyTorch Profiler 的目标是针对时间或内存成本最高的执行步骤,并可视化 GPU 和 CPU 之间的工作负载分布。PyTorch 1.10 包括以下主要功能:

增强型内存视图:这有助于用户更好地了解内存使用;增强型内核视图:附加列显示网格和块大小以及每个线程共享内存使用和寄存器的情况;分布式训练:Gloo 现在支持分布式训练工作;TensorCore:该工具显示 Tensor Core(TC) 的使用,并为数据科学家和框架开发人员提供建议;NVTX:对 NVTX markers 的支持是从旧版 autograd profiler 移植过来的;支持移动设备分析:PyTorch profiler 现在与 TorchScript 、移动后端能够更好的集成,支持移动工作负载的跟踪收集。

支持 Android NNAPI

去年,PyTorch 官方发布了对 Android Neural Networks API (NNAPI) 的原型支持。PyTorch1.10 版本增加了更多的操作,包括在加载时对形状的支持,以及在主机上运行模型进行测试的能力。

此外,迁移学习已经添加到对象检测示例中。

对于此次 PyTorch 的更新,网友也不仅赞叹:「PyTorch 团队的出色工作,融合和 profiler 工作,非常酷!」

关于 PyTorch1.10 版本的更新,更多信息请参考:

Github: https://github.com/pytorch/pytorch/releases/tag/v1.10.0

参考链接:

https://pytorch.org/blog/pytorch-1.10-released/

https://www.marktechpost.com/2021/10/21/pytorch-releases-version-1-10-with-updates-on-cuda-graphs-apis/

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。