catalyst  by catalyst-team

PyTorch framework for accelerated deep learning R&D

created 7 years ago
3,361 stars

Top 14.8% on sourcepulse

GitHubView on GitHub
Project Summary

Catalyst is a PyTorch framework designed to accelerate deep learning research and development by providing a robust, reproducible, and reusable codebase. It aims to eliminate boilerplate code for training loops, metrics, and other common DL tasks, allowing researchers and engineers to focus on innovation.

How It Works

Catalyst employs a runner-based architecture that abstracts away the complexities of the training loop. Users define their models, optimizers, and data loaders, then configure the runner with callbacks for metrics, logging, and checkpointing. This modular design promotes code reuse and simplifies experimentation, enabling rapid iteration on model architectures and training strategies.

Quick Start & Requirements

  • Install via pip: pip install -U catalyst
  • Specialized installs: pip install catalyst[ml], pip install catalyst[cv], pip install catalyst[optuna]
  • Requirements: Python 3.7+, PyTorch 1.4+. Compatible with Linux, macOS, and Windows.
  • Documentation: https://catalyst-team.github.io/catalyst/

Highlighted Details

  • Supports a wide range of ML tasks including classification, segmentation, GANs, and RL.
  • Offers a flexible Config API for defining experiments via YAML files.
  • Integrates with Optuna for hyperparameter optimization and pruning.
  • Provides utilities for model post-processing like ONNX export and quantization.

Maintenance & Community

  • Active development with a significant number of contributors.
  • Community channels available via Slack and Telegram.
  • Regular releases and extensive documentation.
  • Twitter
  • Slack

Licensing & Compatibility

  • MIT License. Permissive for commercial use and integration with closed-source projects.

Limitations & Caveats

  • While extensive, the framework has a learning curve due to its comprehensive nature and abstraction layers. Some advanced features require installing optional dependencies (e.g., catalyst[ml]).
Health Check
Last commit

1 month ago

Responsiveness

Inactive

Pull Requests (30d)
0
Issues (30d)
0
Star History
19 stars in the last 90 days

Explore Similar Projects

Starred by Jeff Hammerbacher Jeff Hammerbacher(Cofounder of Cloudera) and Stas Bekman Stas Bekman(Author of Machine Learning Engineering Open Book; Research Engineer at Snowflake).

InternEvo by InternLM

1.0%
402
Lightweight training framework for model pre-training
created 1 year ago
updated 1 week ago
Starred by Stas Bekman Stas Bekman(Author of Machine Learning Engineering Open Book; Research Engineer at Snowflake) and Travis Fischer Travis Fischer(Founder of Agentic).

lingua by facebookresearch

0.1%
5k
LLM research codebase for training and inference
created 9 months ago
updated 2 weeks ago
Feedback? Help us improve.