跳转到主要内容
公告社区

改进深度学习工作流程:PyTorch 生态系统工具

作者: 2024年5月11日2025年4月30日无评论

欢迎来到蓬勃发展的 PyTorch 生态系统,这里汇集了大量专为提升您作为开发人员或研究人员在深度学习方面的体验而打造的工具和库。生态系统工具页面汇集了来自学术界、工业界、应用程序开发和机器学习领域的专家们的众多项目。

最初,PyTorch 的目标是建立一个蓬勃发展的社区,使开发人员能够相互访问工具、进行有意义的讨论,并探索社区内可用的丰富资源。

如今,PyTorch 生态系统已发展到包含 100 多个根据您的需求量身定制的项目,提供强大的支持、增强的速度以及与 PyTorch 的轻松集成。如果您的项目符合我们的使命,我们邀请您提交它并加入这个充满活力的生态系统。

本月新增,我们已将所有生态系统博客迁移到我们的 PyTorch.org 网站,以便为我们的社区提供一个空间,展示与用户相关的最新创新。继续阅读以了解生态系统中的最新项目!

探索生态系统中的最新工具和框架

随着我们进入 2024 年,我们很高兴展示一系列令人印象深刻的生态系统工具,它们极大地丰富了 PyTorch 社区。这些工具涵盖了广泛的领域,包括姿态估计、性能分析,甚至量子计算。让我们逐一探讨,亲身体验它们如何重塑 PyTorch 格局,为开发人员开启令人兴奋的可能性。

Anomalib

Anomalib 是一个深度学习库,旨在收集最先进的异常检测算法,用于在公共和私人数据集上进行基准测试。Anomalib 提供了文献中描述的几种即用型异常检测算法实现,以及一套有助于开发和实现自定义模型的工具。该库非常注重基于图像的异常检测,其算法目标是识别数据集中的异常图像或图像中的异常像素区域。Anomalib 不断更新最新的算法和训练/推理扩展。

Diffusers

Diffusers 是最先进的预训练扩散模型的首选库,用于生成图像、音频,甚至是分子的 3D 结构。无论您是寻求简单的推理解决方案还是训练自己的扩散模型,Diffusers 都是一个模块化工具箱,同时支持这两种需求。

Pomegranate

Pomegranate 是一个多功能机器学习库,与 PyTorch 无缝集成。它提供了广泛的概率模型和用于概率建模任务的工具。Pomegranate 允许用户构建复杂的模型,例如隐马尔可夫模型 (HMM)、贝叶斯网络和高斯混合模型 (GMM)。通过结合 PyTorch 和 Pomegranate 的优势,开发人员可以利用深度学习和概率建模的力量来解决各种机器学习挑战。

PyPose

PyPose 是一个基于 PyTorch 的库,专为姿态估计任务设计。使用 PyPose,开发人员可以有效地训练和部署用于人体姿态估计的模型,这是一个基本的计算机视觉问题。通过利用 PyTorch 的灵活性和性能,PyPose 简化了构建准确姿态估计模型的过程。其直观的 API 和预训练模型使其成为研究人员和开发人员探索人体姿态估计应用的绝佳选择。

PyPOTS

一个用于对 PyTorch 部分观测时间序列进行数据挖掘的 Python 工具箱/库,包括支持不完整(不规则采样)多元时间序列中缺失值进行插补、分类、聚类和预测任务的 SOTA 模型。

OctoML Profiler

OctoML Profiler 是一种性能分析工具,有助于优化 PyTorch 模型。该工具可帮助开发人员识别深度学习模型中的性能瓶颈和效率低下问题。通过提供内存使用、计算时间和数据移动的见解,OctoML Profiler 使开发人员能够微调模型以提高效率。有了这些宝贵的反馈,开发人员可以优化其模型,以便在各种硬件平台上进行部署。

Open Compass

OpenCompass 是一个大型模型评估的一站式平台,旨在为大型模型评估提供一个公平、开放和可复现的基准。其主要特点包括:全面支持模型和数据集、高效的分布式评估、多样化的评估范式、高可扩展性的模块化设计以及实验管理和报告机制。

Renate

Renate 是一个基于 PyTorch 的神经网络架构搜索 (NAS) 库。它简化了自动搜索针对特定任务量身定制的最佳神经网络架构的过程。Renate 利用强化学习和进化算法等技术来有效地探索架构空间。通过使用 Renate,开发人员可以节省大量时间和资源,同时发现高性能模型。

RoMa

RoMa 是一个独立的库,用于使用 PyTorch 处理旋转表示(旋转矩阵、四元数、旋转向量等)。它旨在实现鲁棒性、易用性和效率。

Substra

Substra 是一款开源的联邦学习 (FL) 软件。它支持在分布式数据集上训练和验证机器学习模型。它提供了一个灵活的 Python 接口和一个 Web 应用程序,可以大规模运行联邦学习训练。Substra 的主要用途是在生产环境中。它已部署并被医院和生物技术公司使用。Substra 也可以在单机上用于执行 FL 模拟和调试代码。

TorchQuantum

TorchQuantum 是一个强大的库,它将 PyTorch 框架与量子计算概念相结合。它使开发人员能够探索量子机器学习算法并构建混合经典-量子模型。通过将量子计算原理集成到 PyTorch 中,TorchQuantum 为解决传统深度学习方法可能难以解决的复杂问题开辟了新的可能性。

TIAToolbox

TIAToolbox(文本图像增强工具箱)是一个 PyTorch 库,旨在增强深度学习任务的文本和图像数据。它提供了一整套数据增强工具,包括转换、噪声注入和图像/文本合成。通过应用 TIAToolbox,开发人员可以丰富其训练数据集,提高模型泛化能力,并增强其深度学习模型的鲁棒性。

torchdistill

torchdistill 是一个基于 PyTorch 的无代码框架,用于可复现的深度学习和知识蒸馏研究。该框架旨在让用户通过声明性 PyYAML 配置文件设计实验,并支持高级模块抽象。

TorchOpt

TorchOpt 是一个 PyTorch 库,专注于深度学习的优化算法。它提供了一系列最先进的优化技术,例如随机梯度下降 (SGD) 变体、自适应学习率方法和优化调度。TorchOpt 使开发人员能够有效地微调模型,更快地收敛,并在各种深度学习任务中实现更好的性能。

USB

USB,即统一语音到文本基准,是一个基于 PyTorch 的工具包,用于训练和评估语音识别模型。它提供标准化数据集和评估指标,以便在不同语音识别架构之间进行公平准确的比较。通过使用 USB,研究人员和开发人员可以将其模型与最先进的系统进行基准测试,并推动自动语音识别领域的发展。

Zeus

Zeus 是目前深度学习能耗测量和优化方面的最先进技术。它具有监视组件,允许用户测量 GPU 能耗,以及优化器组件,可根据监视组件的测量结果自动优化 DNN 或 GPU 参数。

成为我们生态系统的一部分

我们多样化的生态系统工具是 PyTorch 成功的关键。它们为姿态估计、概率建模、性能分析、模型可解释性、语音识别、量子计算、数据增强、优化和神经网络架构搜索等任务提供了基本支持。

利用这些工具,开发人员和研究人员可以加速他们的深度学习工作流程,并在人工智能领域开辟新的可能性。

您是否有适合 PyTorch 生态系统的工具?如果您能回答以下问题,我们非常乐意邀请您提交您的工具以供审查

  1. 您的项目是否与 PyTorch 互补,增强用户体验,引入新功能,或加速训练和推理过程?
    • 示例可能包括可视化工具、内核库或一个在顶层运行的框架,以便在特定领域(如自然语言处理)进行研究。
  2. 该项目是否已准备好供广大开发人员使用?
    • 例如,该项目是否稳定,是否会得到维护,以及是否有足够的配套基础设施、文档和技术支持,以允许开发人员成功使用它?

感谢我们生态系统中的所有贡献者和合作者!祝 2024 年一切顺利。