MPX-JAX 的混合精度训练-计算机科学-神经网络训练-深度学习.pdfVIP

MPX-JAX 的混合精度训练-计算机科学-神经网络训练-深度学习.pdf

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

MPX:JAX的混合精度训练

11

AlexanderGräfeandSebastianTrimpe

1InstituteforDataScienceinMechanicalEngineering(DSME),RWTHAachenUniversity

混合精度训练近年来已成为提高神经网络训练效率不可或缺的工具。同时,JAX作为一

款多功能机器学习工具箱,也越来越受欢迎。然而,它目前缺乏对混合精度训练的强大支

持。我们提出了MPX,这是一个用于JAX的混合精度训练工具箱,它可以简化和加速大

规模神经网络的训练,同时保持模型准确性。MPX无缝集成到诸如Equinox和Flax等

流行工具箱中,允许用户只需进行少量修改即可将全精度管道转换为混合精度版本。通

过将输入和输出都转换为半精度,并引入动态损失缩放机制,MPX缓解了在半精度计算

中常见的梯度欠流和溢出问题。其设计继承了JAX类型提升行为中的关键特性,确保操

本作以正确的精度进行,并允许根据需要选择性地强制执行全精度(例如,求和、均值或

译softmax)。此外,MPX还提供了自动创建和管理混合精度梯度及优化器的封装程序,从而

中可以轻松集成到现有的JAX训练管道中。MPX的源代码、文档和使用示例可在github.

com/Data-Science-in-Mechanical-Engineering/mixed_precision_for_JAX获取。

2

v

2Githubmixed_precision_for_JAX

1

3

3

0

7.1介绍

0

5

2近年来,JAX(DeepMindetal.,2020)作为训练神经网络的流行工具崭露头角。JAX的一个突出特

:点是其即时编译功能,这显著加速了在GPU和TPU等硬件加速器上的代码执行速度。此外,通过

v

i

x用户友好且高效的分片机制,JAX支持跨计算集群的大规模多设备和多节点训练。

r

a为了扩展JAX的功能,已经开发了几个库,包括Equinox、Flax和Optax(DeepMindetal.,2020;

Heeketal.,2024;KidgerandGarcia,2021).尽管有了这些进步,JAX在支持混合精度训练方面

仍然存在不足,这是一种处理大型模型时非常重要的方法(Micikeviciusetal.,2017).虽然之前有

JMP(jmp)可用于此目的,但它已不再维护,并且无法处理现代神经网络工具箱中常用的任意JAX

PyTrees。

混合精度训练通过在半精度浮点格式(16bit)中执行前向和后向传递,在优化大型模型训练性能方

面发挥着关键作用。该技术显著减少了中间激活的内存需求,并通过最小化内存传输开销来加速训

练,同时利用专门的半精度张量核心(当硬件支持时),并且不会影响准确度(Micikeviciusetal.,

2017)。

为了简化在JAX中实现混合精度训练,我们引入了MPX,一个专为JAX设计的混合精度训练工具

箱。MPX基于JMP的实现,并利用Equinox的灵活性来克服处理任意PyTrees相关的限制。它还

引入了梯度变换和优化器封装,使得从全精度管道转换到混合精度的过程变得无缝且修改量最小。

MPX的源代码、文档和使用示例可在/Data-Science-in-Mechanical-Engineering/

mixed_precision_for_JAX获取。

©2025InstituteforDataScienceinMechanicalEngineering(DSME),RWTHAache

文档评论(0)

zikele + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档