机器之心报道
机器之心编辑部
广受人们欢迎的深度学习框架 PyTorch 刚刚更新了 1.10 正式版 , 在 CUDA Graphs API 等方面进行了诸多改进 。PyTorch 是一个开源的 Python 机器学习库 , 基于 Torch , 底层由 C++ 实现 , 主要应用于人工智能领域 , 如自然语言处理 , 它最初由 Facebook 的人工智能研究团队开发 。 由于 PyTorch 定义网络结构简单等特点 , 自发布以来便受到众多研究人的青睐 。
经过研究者的不断努力 , 现在 ,PyTorch 更新到 PyTorch 1.10 版本 。 此版本由 1.9 版本以来的 3,400 多次 commits 组成 , 由 426 位贡献者完成 。
【稳定版|PyTorch 1.10正式版上线:Android NNAPI支持来了】此次PyTorch 1.10 的更新侧重于改进 PyTorch 的训练和性能以及开发人员的可用性 。 亮点包括以下:
- 集成了 CUDA Graphs API 以减少 CUDA 工作负载的 CPU 开销;
- FX、torch.special 和 nn.ModuleParametrization 等几个前端 API 已从测试版变为稳定版;
- 除了 GPU 之外 , JIT Compiler 中对自动融合的支持扩展到 CPU;
- Android NNAPI 支持现已推出测试版 。
PyTorch 1.10 最新特性
前端 API
使用 FX 进行 Python 代码转换(稳定版):FX 提供了一个用于转换和降低 PyTorch 程序的 python 化平台 , 它是一个工具包 , 在 1.10 版本中 , FX 趋于稳定 , 用户可以使用 torch.fx 实现程序转换 。
torch.special(稳定版):torch.special 模块 , 类似于 SciPy 的特殊模块 , 现在稳定版可用 。 该模块有 30 种运算 , 包括 gamma、Bessel 和(高斯)误差函数 。
nn.Module 参数化(稳定版):允许用户在不修改 nn.Module 本身的情况下参数化任何参数等 , 在稳定版中可用 。 此版本增加了权重归一化 (weight_norm)、正交参数化(矩阵约束和部分剪枝) , 用户在创建自己的参数化时更加灵活 。
CUDA Graphs API 集成(测试版):PyTorch 现在集成了 CUDA Graphs API 以减少 CUDA 工作负载的 CPU 开销 。
CUDA Graphs 大大降低了 CPU 绑定 cuda(CPU-bound cuda)工作负载的 CPU 开销 , 从而通过提高 GPU 利用率来提高性能 。 对于分布式工作负载 , CUDA Graphs 还可以减少抖动 , 并且由于并行工作负载必须等待最慢的工作负载 , 因此减少抖动可以提高整体并行效率 。
推荐阅读
- 功能|小米 Watch S1图赏:商务气质新系列,稳步入场不急切
- 新机|快准稳,捕捉每个高光瞬间! 刘衡分享EOS R5拍摄体验
- 制造业|稳健前行开新局 制造业未来五年转型升级迎来“加速度”
- 何由|2021年,奔向星辰大海的脚步更稳更远!
- 榜首|[原]K8s稳居容器榜首,Docker冲顶技术热词,微服务应用热度不减,2021云原生开发者现状
- 月球|【年终报道?2021留声机】筑梦太空 中国人探索浩瀚宇宙的步伐越迈越稳健
- 股票|获取更稳健的收益:趋势策略与因子选股的结合
- 稳定版|【品牌】雷军小米正式宣布对标苹果 | MIUI13详细机型适配计划
- 旗舰|小米第三代高端稳了! 小米12系列自研技术全面突破,未来五年超1000亿投入研发
- 市场|对标苹果,小米12快,更稳;卖旧再换新,转转回收:快,更省!