catalyst-team/catalyst

Accelerated deep learning R&D

What it solves

Catalyst 旨在消除与 PyTorch 训练循环相关的重复样板代码。它让研究人员和开发者能够以最少的代码实现完整的深度学习流水线——包括指标、提前停止和模型检查点——专注于实验而非基础设施。

How it works

它提供一个构建在 PyTorch 之上的高级框架,抽象化训练过程。用户可以使用 SupervisedRunner 处理标准任务,或创建 CustomRunner 来定义特定的 batch 处理和模型推理步骤。框架集成了用于跟踪指标(如 accuracy、precision、recall)的 callbacks,并提供模型后处理的实用函数,例如量化、剪枝和 ONNX 导出。

Who it’s for

它面向希望通过可复现且可重用的代码库,加速 PyTorch 模型的训练、评估和预测研发周期的深度学习研究者和开发者。

Highlights

  • Boilerplate Reduction: 用结构化的 train 方法取代手动 for 循环。
  • Integrated Metrics: 内置 callbacks 支持常见指标,如 Accuracy、F1-score、AUC。
  • Model Optimization: 提供模型追踪、量化、剪枝与导出至 ONNX 的工具。
  • Flexible Architecture: 同时支持高层的 supervised runner 和完全可定制的 runner,以应对复杂逻辑。