Project Icon

awesome-jax

自动微分与XLA在高性能机器学习中的应用

该页面收录了JAX相关的优质库、项目和资源,旨在帮助机器学习研究人员在GPU和TPU等加速器上实现高性能计算。资源涵盖神经网络库、强化学习工具和概率编程等多个领域,并提供了详细的库介绍、学术论文和教程。用户可以找到如Flax、Haiku、Objax等知名库,以及新兴的FedJAX、BRAX等库,适用于机器学习和科研项目中使用JAX进行快速原型开发和高效计算。

Awesome JAX AwesomeJAX Logo

JAX 通过使用类似 NumPy 的 API 将自动微分和 XLA 编译器 集成在一起,以实现 GPU 和 TPU 等加速器上高性能的机器学习研究。

这是一个精心整理的 JAX 库、项目及其他资源的优秀列表。欢迎任何贡献!

目录

  • 神经网络库
    • Flax - 注重灵活性和清晰性。
    • Haiku - 由 DeepMind 的 Sonnet 作者创建,注重简单性。
    • Objax - 拥有类似于 PyTorch 的面向对象设计。
    • Elegy - JAX 中的高级深度学习 API,支持 Flax、Haiku 和 Optax。
    • Trax - 提供常见工作负载解决方案的“内置电池”深度学习库。
    • Jraph - 轻量级图神经网络库。
    • Neural Tangents - 用于指定有限和_无限_宽度神经网络的高级 API。
    • HuggingFace - 为广泛的自然语言任务提供预训练的 Transformers 生态系统(Flax)。
    • Equinox - 可调用的 PyTrees 和过滤 JIT/grad 转换 => JAX 中的神经网络。
    • Scenic - 一个用于计算机视觉研究及其扩展的 JAX 库。
  • Levanter - 具备名称张量和 JAX 的易懂、可扩展、可复制的基础模型。
  • EasyLM - 简化 LLMs 的预训练、微调、评估和服务(基于 JAX/Flax 实现)。
  • NumPyro - 基于 Pyro 库的概率编程。
  • Chex - 编写和测试高可靠性 JAX 代码的工具库。
  • Optax - 梯度处理和优化库。
  • RLax - 实现强化学习代理的库。
  • JAX, M.D. - 加速、可微分的分子动力学。
  • Coax - 将强化学习论文转化为代码,轻松实现。
  • Distrax - 重新实现 TensorFlow Probability,包含概率分布及其双射函数。
  • cvxpylayers - 构建可微分的凸优化层。
  • TensorLy - 简化张量学习。
  • NetKet - 用于量子物理的机器学习工具箱。
  • Fortuna - AWS 的深度学习不确定性量化库。
  • BlackJAX - 针对 JAX 的采样器库。

新库

此部分包含制作精良且实用的库,但不一定经过大量用户严格测试。

  • 神经网络库
  • FedJAX - 基于Optax和Haiku在JAX中的联邦学习。
  • Equivariant MLP - 构建等变神经网络层。
  • jax-resnet - 实现和检查点在Flax中的ResNet变体。
  • Parallax - JAX中不可变的Torch模块。
  • jax-unirep - 实现了用于蛋白质机器学习应用的UniRep模型的库。
  • jax-flows - JAX中的归一化流。
  • sklearn-jax-kernels - 使用JAX的scikit-learn核矩阵。
  • jax-cosmo - 微分宇宙学库。
  • efax - JAX中的指数家族。
  • mpi4jax - 在CPU和GPU上将MPI操作与Jax代码结合。
  • imax - 图像增强和变换。
  • FlaxVision - TorchVision的Flax版本。
  • Oryx - 基于程序转换的概率编程语言。
  • Optimal Transport Tools - 解决优化传输问题的工具箱。
  • delta PV - 具有自动微分功能的光伏模拟器。
  • jaxlie - 刚体转换和优化的李理论库。
  • BRAX - 可微物理引擎,用于模拟环境以及训练这些环境的代理学习算法。
  • flaxmodels - 适用于Jax/Flax的预训练模型。
  • CR.Sparse - 用于稀疏表示和压缩感知的XLA加速算法。
  • exojax - 自动可微的系外行星/棕矮星光谱建模库,兼容JAX。
  • JAXopt - JAX中的硬件加速(GPU/TPU)、可批处理和可微优化器。
  • PIX - JAX中的图像处理库,为JAX而生。
  • bayex - 由JAX驱动的贝叶斯优化库。
  • JaxDF - 具有任意离散化的微分模拟框架。
  • tree-math - 将操作数组的函数转换为操作PyTrees的函数。
  • jax-models - 实现最初没有代码或用其他框架编写的研究论文。
  • PGMax - 一个用于构建离散概率图模型(PGM)并在JAX中进行推理的框架。
  • EvoJAX - 硬件加速的神经进化库。
  • evosax - 基于JAX的进化策略。
  • SymJAX - 符号CPU/GPU/TPU编程。
  • mcx - 表达和编译概率程序以实现高效推理。
  • Einshape - 基于DSL的JAX和其他框架的重构库。
  • ALX - 使用交替最小二乘法进行分布式矩阵分解的开源库,更多信息见ALX: Large Scale Matrix Factorization on TPUs
  • Diffrax - JAX中的数值微分方程求解器。
  • tinygp - JAX中“最小”的高斯过程库。
  • gymnax - 具有知名gym API的强化学习环境。
  • Mctx - 原生JAX中的蒙特卡洛树搜索算法。
  • KFAC-JAX - 用于神经网络的近似曲率二阶优化。
  • TF2JAX - 将函数/图转换为JAX函数。
  • jwave - 用于可微分声学模拟的库。
  • GPJax - JAX中的高斯过程。
  • Jumanji - 一套行业驱动的硬件加速强化学习环境,使用JAX编写。
  • Eqxvision - Torchvision的Equinox版本。
  • JAXFit - 用于非线性最小二乘问题的加速曲线拟合库(见arXiv论文)。
  • econpizza - 使用JAX求解具有异质代理的宏观经济模型。
  • SPU - 一个特定领域的编译器和运行时套件,用于使用JAX代码进行MPC(安全多方计算)。
  • jax-tqdm - 为JAX扫描和循环添加tqdm进度条。
  • safejax - 使用🤗safetensors序列化JAX、Flax、Haiku或Objax模型参数。
  • Kernex - JAX中的可微分矩阵装饰器。
  • MaxText - 一个使用纯Python/JAX编写的简单、高性能和可扩展的JAX大语言模型,面向Google Cloud TPU。
  • Pax - 一个基于JAX的大规模模型训练机器学习框架。
  • Praxis - Pax的层库,旨在供其他JAX基础的机器学习项目使用。
  • purejaxrl - JAX中的可向量化端到端强化学习算法。
  • Lorax - 自动将LoRA应用于JAX模型(Flax、Haiku等)。
  • SCICO - JAX中的科学计算成像。
  • Spyx - 用于神经形态硬件机器学习的JAX尖峰神经网络。
  • BrainPy - 用Python编写的大脑动态编程。
  • OTT-JAX - JAX中的最优传输工具。
  • QDax - JAX中的质量多样性优化。
  • JAX Toolbox - 使用T5x、Paxml和Transformer Engine等库在NVIDIA GPU上优化的JAX例子和夜间CI。
  • Pgx - 带有AlphaZero示例的强化学习向量化棋盘游戏环境。
  • EasyDeL - EasyDeL 🔮是一个开源库,使您的训练更快、更优化,并提供用于JAX中训练和服务(Llama、MPT、Mixtral、Falcon等)的酷选项。
  • XLB - Python中用于基于物理的机器学习的可微分大规模并行格子Boltzmann库。
  • dynamiqs - JAX中高性能和可微分的量子系统模拟。

模型和项目

JAX

Flax

Haiku

Trax

  • Reformer - 高效 Transformer 架构 Reformer 的实现。

NumPyro

视频

论文

此部分包含围绕 JAX 的论文(例如基于 JAX 的库白皮书、JAX 研究等)。使用 JAX 实现的论文见 Models/Projects 章节。

教程和博文

书籍

  • Jax 实战 - 一本关于使用 JAX 进行深度学习和其他数学密集型应用的实践指南。

社区

贡献

欢迎贡献!请先阅读 贡献指南

项目侧边栏1项目侧边栏2
推荐项目
Project Cover

豆包MarsCode

豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。

Project Cover

AI写歌

Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。

Project Cover

白日梦AI

白日梦AI提供专注于AI视频生成的多样化功能,包括文生视频、动态画面和形象生成等,帮助用户快速上手,创造专业级内容。

Project Cover

有言AI

有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。

Project Cover

Kimi

Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。

Project Cover

讯飞绘镜

讯飞绘镜是一个支持从创意到完整视频创作的智能平台,用户可以快速生成视频素材并创作独特的音乐视频和故事。平台提供多样化的主题和精选作品,帮助用户探索创意灵感。

Project Cover

讯飞文书

讯飞文书依托讯飞星火大模型,为文书写作者提供从素材筹备到稿件撰写及审稿的全程支持。通过录音智记和以稿写稿等功能,满足事务性工作的高频需求,帮助撰稿人节省精力,提高效率,优化工作与生活。

Project Cover

阿里绘蛙

绘蛙是阿里巴巴集团推出的革命性AI电商营销平台。利用尖端人工智能技术,为商家提供一键生成商品图和营销文案的服务,显著提升内容创作效率和营销效果。适用于淘宝、天猫等电商平台,让商品第一时间被种草。

Project Cover

AIWritePaper论文写作

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号