终于可用可拉拢函数变换库!PyTorch 1.11发布,弥补JAX短板,撑持Python 3.10

PyTorch 1.11、TorchData 和 functorch 现已推出。

近日,PyTorch 民间宣布推出 PyTorch 1.11,此版本由 1.10 版本以来的 3,300 多次 commits 组成,由 434 位贡献者完成。此外,本次 PyTorch 民间同时发布了受 JAX 启发的库 TorchData 和 functorch 的 Beta 版本。假如你是一名长期的 TensorFlow 用户,你一直想切换到 JAX 或 PyTorch,或许 1.11 版本能为你带来帮助。

图片

PyTorch地址:https://pytorch.org/blog/pytorch-1.11-released/本次亮点可总结为如下:

TorchData 是一个新的库,用于通用模块化数据加载原型,可以轻松建立灵活、高性能的数据 pipeline。

functorch 是一个向 PyTorch 增添可拉拢函数变换的库。

分布式数据并行 (DDP) 固态图优化趋于稳定。

网友也不禁感叹:终于可以安装 functorch,一套受 JAX 启发的 ops!vjp、 jvp、 vmap… 终于可用了!!!

图片

推出 TorchData TorchData Beta 版:这是一个通用模块化数据加载原型库,用于轻松建立灵活且高性能的数据 pipeline。根据社区反馈,PyTorch 民间发现现有的 DataLoader 将太多的功能捆绑在一起,难以扩展。此外,不同的用例通常必须重写相同的数据加载实用程序。TorchData 的目标是通过 Iterable-style 和 Map-style 的建立块 DataPipes 来实现可拉拢数据加载,这些建立块与 PyTorch 的 DataLoader 达到开箱即用。DataPipe 接受 Python 数据结构上一些访问函数:__iter__用于 IterDataPipe,__getitem__用于 MapDataPipe,它们会返回一个新的访问函数。你可以将多个 DataPipe 连接在一起,形成数据 pipeline,以执行必要的数据变换工作。PyTorch 民间已经实现了超过 50 个 DataPipes,它们提供了不同的核心功能,比如打开文件、解析文本、变换样本、缓存、shuffling 和批处理。那些对连接到云提供商(如谷歌 Drive 或 AWS S3)感兴趣的用户, fsspec 和 iopath DataPipes 会提供帮助。想了解更对关于 IterDataPipe 和 MapDataPipe 的研究者,可以参考民间文档。在 PyTorch1.1 版本中,一些 PyTorch 域库已经将数据集迁移到 DataPipes。在 TorchText 中提供的流行数据集是应用 DataPipes 实现的,其 SST-2 二进制文本分类教程的一部分演示了如何应用 DataPipes 为模型预处理数据。在 TorchVision 和 TorchRec 中还有其他数据集的原型实现。你可以参考民间提供的具体的示例。TorchData 文档已经上线,它包含一个教程,教程介绍了如何应用 DataPipes、将它们与 DataLoader 一起应用、如何实现自定义。推出 functorchPyTorch 民间宣布推出 functorch 的首个 beta 版本。受到 Google JAX 的极大启发,functorch 是一个向 PyTorch 增添可拉拢函数变换的库。该库旨在提供可拉拢的 vmap(向量化)和 autodiff 变换,可与 PyTorch 模块和 PyTorch autograd 一起应用,并具有良好的渴望模式(eager-mode)性能。可拉拢的函数变换可以帮助解决当前在 PyTorch 中难以实现的许多用例:

计算每样本梯度(per-sample-gradients)(或者其他每样本量)

单机运行模型集合

在 MAML 内循环中高效地批处理任务

高效地计算(批处理)雅可比矩阵(Jacobians)和黑塞矩阵(Hessians)

vmap(向量化)、vjp(反向模式 AD)和 jvp(前向模式 AD)变换的拉拢使得用户毫不费劲地表达上述内容,无需为每个变换设计单独的库。分布式训练:稳定的 DDP 固态图DDP 固态图假设用户的模型在每次迭代中都应用相同的一组已应用 / 未应用的参数,因此它可以确定地了解相关状态,例如哪些钩子(hook)将触发、钩子将触发多少次以及第一次迭代后的梯度计算就绪顺序。 固态图在第一次迭代中缓存这些状态,因此它可以撑持 DDP 在以往版本中无法撑持的功能,例如无论是否有未应用的参数,在相同参数上撑持多个激活检查点。当存在未应用的参数时,固态图功能也会应用性能优化,例如避免遍历图在每次迭代中搜索未应用的参数,并启动动态分桶(bucketing)顺序。DDP 固态图中的这些优化为一些推荐模型带来了 10% 的 QPS 增益。要启动固态图,只需在 DDP API 中设置 static_graph=True ,如下代码所示:ddp_model = DistributedDataParallel(model, static_graph=True)PyTorch 1.11一些更新在 Python API 方面:修复了 python deepcopy 以正确复制 Tensor 对象上的所有属性,此更改可确保 Tensor 上的 deepcopy 操作能正确复制所有属性(而不仅仅是普通的 Tensor 属性)。

图片

在 torch.linspace 和 torch.logspace 中,steps 参数不再是可选的。此参数在 PyTorch 1.10.2 中默认为 100,但已被弃用。在 PyTorch 1.11 中,它不再是可选的。

图片

在 CUDA 方面,删除了 THCeilDiv 函数和相应的 THC/THCDeviceUtils.cuh header;删除 THCudaCheck;删除 THCudaMalloc(), THCudaFree(), THCThrustAllocator.cuh。

增添复数撑持 Adagrad 和 Adadelta 优化器;

增添 torch.nn.utils.rnn.{unpack_sequence,unpad_sequence}函数;

为 GPU 上的 CSR 张量增添了 torch.sparse.sampled_addmm;

基础设施撑持:

增添了对 ROCm 4.3.1 的撑持

增添了对 ROCm 4.5.2 的撑持 

增添了对 CUDA 11.5 的撑持 

增添了对启动 CUDA 的 Bazel 建立的撑持 

增添了对 Python 3.10 的撑持

更多内容请参考:https://github.com/pytorch/pytorch/releases/tag/v1.11.0网友评论PyTorch 1.11 的发布,给用户带来了一些惊喜。有网友表示,我都转到 JAX 了,这波是要诱惑我回归 PyTorch 啊。

图片

更有网友认为,PyTorch 1.11 将成为游戏改变者(game-changer)。

图片

还有网友对首个 beta 版本的 functorch 库表示了肯定,有了它,终于补足了与 JAX 相比的一块短板。

图片

原创文章,作者:机器之心,如若转载,请注明出处:https://www.iaiol.com/news/zhong-yu-ke-yong-ke-la-long-han-shu-bian-huan-ku-pytorch111/

(0)
上一篇 2022年 3月 10日 下午2:14
下一篇 2022年 3月 15日 下午2:30

相关推荐

  • 万字长文:上海交大校友、宾大直博博士细说五年读博经验

    一个「别人家的孩子」,读博时却被导师严厉批评:「你有认真地思考吗?」「你进组曾经半年了,你学到了什么东西?」伴随着这种压力,他顺利完成了自己的博士论文,并收获了导师的赞许。在这篇长文中,本科上海交大的宾夕法尼亚大学博士Zhenbang Dai介绍了自己五年的读博经验,希望让人们了解到博士生们的歇息是什么样子的,从而对博士生们多一份明白,也希望给即将或正在读博的同学一些鼓励或安慰,让他们能够更理智地看待读博并制定相应的计划。前言2022 年 7 月 29 日,在跟我的导师 Andrew 和组里的其他人道别后,我在宾大

    2022年 8月 11日
  • WAIC开发者日Workshop预告:华为昇思MindSpore基础模型创新试验

    昇思 MindSpore 是华为开源的新一代全场景 AI 框架,支持端、边、云全场景灵活部署,开创全新的 AI 编程范式,降低 AI 开发门槛,旨在实现开发友好、运行高效、部署灵活三大目标,同时着力构筑面向全球的人工智能开源社区,推动人工智能软硬件应用生态繁荣发展。昇思 MindSpore 原生支持大模型,联合合作伙伴推出了四大领域创新模型。鹏城实验室鉴于昇思 MindSpore 先后推出了业界首个 2000 亿参数中文预训练语言模型鹏程,盘古和面向生物医学领域的鹏程,神农大模型、中科院自动化所鉴于昇思 MindS

    2022年 9月 1日
  • 现在入行CV还有前途吗?来听AI年青学者怎么说

    为了推动 AI 技能的运用创新,促进人工智能范畴的学术交流、人才培养,打造人工智能的人才交流平台与产业生态圈,中国人工智能学会联合杭州市余杭区人民政府联合发起了首届全球人工智能技能创新大赛,并得到了阿里云、OPPO 等头部科技企业的积极参与和支持。阿里云天池平台为本次大赛提供平台和算力支撑。AI年青说是大赛主办方为提升年青开发者对 AI 的认识而主办的系列运动,该运动邀请知名年青学者,探讨理论研讨与运用实践中的热点话题。4月29日,AI年青说将迎来第三期直播运动,中心为「将来五年的计算机视觉」。2012 年,Ale

    2021年 4月 28日
  • 他发明了通用数据压缩算法:Jacob Ziv获2021 IEEE名誉勋章

    今年的 IEEE 名誉勋章,颁给了一位 90 岁老人:Jacob Ziv。

    2021年 1月 19日
  • 第一!科大讯飞再度革新Cityscapes世界纪录

    近日,科大讯飞凭借在道路方向检测领域多年的技巧索求,革新了Cityscapes 3D方向检测任务的全球最好成绩,得到检测分数(DS)42.9,取得了该项评测的第一名。此次也是科大讯飞继2017年、2018年参与测评之后,再一次革新Cityscapes的世界纪录。此次评测,科大讯飞借鉴了已在都会交通出行场景下应用的Anchor-Free车辆检测技巧,将2D方向检测技巧升级至3D,并连系3D到2D重投影的特殊先验信息进行算法迁移。通过连系语义、上下文信息、位置先验信息以及方向形状先验信息等,提取准确的3D方向检测框,构

    2021年 8月 22日
  • 华玉通软与TTTech Auto开启深度合作,推动DDS+TSN在智能汽车使用落地

    华玉通软(下称“华玉”)今天宣布将与全球领先的汽车保险平安软件技术领导者TTTech Auto进行深度合作,推动实现国内首个完全自主研发的DDS——“雨燕”通讯中间件(SWIFT DDS)与TTTech TSN及Slate调动工具的集成和落地。该方案利用DDS与TSN的天然互补性,将进一步满足智能汽车对及时性和保险平安性的需求,为新一代E/E架构供给坚实的下层支撑。随着智能驾驭的发展,高级驾驭辅助系统和主动驾驭系统等解决方案对于保险平安性能和及时性能的要求

    2022年 9月 14日
  • MIT 10年研究总结数字化转型:仅15%用数字化创建新商业模式;一线职工是转型最大推动者

    2014年,《麻省理工斯隆办理评论》发表了名为《数字化转型的九大因素》的一篇文章,在业界引起轩然大波,不少企业就此认识到数字化转型的重要性。 6年后,数字化转型需求的技巧和方法都发生了很大的变化,作家经过大量的调研更新了数字化转型的因素,使之更契合时代状况,更具有实操性。 本篇文章将数字化转型分为客户体会转型、运营转型、商业模式转型、数字化平台转型,覆盖到企业运作的方方面面。文章表示,数字化转型并不仅仅是技巧上的,还有构造和商业模式上的,尤其强调一线职工在转型中的重要作用。文章同时也提到了大量优

    2020年 12月 18日
  • 技术博客丨原来模型训练可以不用标注?一文全解四大机械进修法子

    本文将用通俗的方式,为大家介绍耳熟能详却分辨不清的四个机械进修核心概念:监视式进修、半监视进修、非监视进修和自监视进修,并将用实例简介它们试图解决的问题。

    2022年 1月 11日
  • 纯PyTorch语音工具包SpeechBrain开源,Kaldi:我压力有点大

    距离 Mirco Ravanelli 宣布打造新的语音工具包过去了一年多,SpeechBrain 真的如期而至。

    2021年 3月 16日

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

评论列表(1条)

  • 開立binance帳戶
    開立binance帳戶 2024年 4月 13日 下午10:48

    Thanks for sharing. I read many of your blog posts, cool, your blog is very good.