欢迎来到繁荣的 PyTorch 生态系统,这里有许多工具和库等待您,专为提升您作为开发者或研究者在深度学习中的体验而设计。生态系统工具页面汇集了许多来自学术界、工业界、应用开发和机器学习专家的项目。
最初,PyTorch 的目标是建立一个繁荣的社区,让开发者能够访问彼此的工具,参与有意义的讨论,并探索社区内丰富的资源。
现在,PyTorch 生态系统已经发展到拥有超过 100 个针对您需求的项目,提供强大的支持、增强的速度以及与 PyTorch 的无缝集成。如果您的项目与我们的使命相符,我们邀请您提交项目并加入这个充满活力的生态系统。
本月新举措,我们将所有生态系统博客迁移至 PyTorch.org 网站,为我们的社区提供一个展示最新创新成果给用户的空间。继续阅读,了解生态系统中的最新项目!
探索生态系统中的最新工具和框架
随着我们迈向 2024 年,我们非常高兴展示一系列令人印象深刻的生态系统工具,这些工具极大地丰富了 PyTorch 社区。这些工具涵盖了广泛的领域,包括姿态估计、性能分析,甚至量子计算。让我们逐一探索,亲身体验这些工具如何重塑 PyTorch 的格局,为开发者打开令人兴奋的可能性。
Anomalib
Anomalib 是一个深度学习库,旨在收集最新的异常检测算法,用于在公共和私有数据集上进行基准测试。Anomalib 提供了最近文献中描述的异常检测算法的几个现成实现,以及一套便于开发自定义模型的工具。该库在基于图像的异常检测方面有很强的重点,算法的目标是识别数据集中的异常图像或图像中的异常像素区域。Anomalib 不断更新最新的算法和训练/推理扩展。
Diffusers
Diffusers 是生成图像、音频甚至分子 3D 结构的最新预训练扩散模型的首选库。无论是寻找简单的推理解决方案还是训练自己的扩散模型,Diffusers 都是一个模块化工具箱,支持这两者。
石榴
石榴是一个灵活的机器学习库,可以无缝集成到 PyTorch 中。它提供了一系列概率模型和工具,用于概率建模任务。石榴使用户能够构建复杂的模型,如隐马尔可夫模型(HMM)、贝叶斯网络和高斯混合模型(GMM)。通过结合 PyTorch 和石榴的优势,开发者可以利用深度学习和概率建模的力量来解决各种机器学习挑战。
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 生态系统的工具吗?如果您能回答以下问题,我们非常乐意您提交您的工具进行审查。
- 您的项目是否补充了 PyTorch,增强了用户体验,引入了新功能,或加速了训练和推理过程?
- 例如,可视化工具、内核库或位于其上的框架,以促进特定领域(如 NLP)的研究。
- 项目是否已准备好供广大开发者使用?
- 例如,该项目是否稳定,是否会得到维护,以及是否有足够的支持基础设施、文档和技术支持,以便开发者能够成功使用它?
感谢我们生态系统中的所有贡献者和合作者!祝 2024 年一切顺利。