Skip to content

Releases: catalyst-team/catalyst

Catalyst 22.04

29 Apr 04:45
e99f906
Compare
Choose a tag to compare

[22.04] - 2022-04-29

Added

  • catalyst-tune for Config API added #1411
  • tests for python 3.9 and 3.10 #1414

Fixed

  • catalyst compatibility with python 3.10 #1409

Catalyst 22.02.1

27 Feb 17:51
2553ce8
Compare
Choose a tag to compare

[22.02.1] - 2022-02-27

"Few fixes and Config API v22 MVP".

Added

  • catalyst-run for Config API support added #1406

Fixed

  • Logger API naming #1405

Catalyst 22.02

13 Feb 09:27
f390239
Compare
Choose a tag to compare

[22.02] - 2022-02-13

Tl;dr

Added

  • Additional tests for different hardware accelerators setups. Please check out the tests/pipelines folder for more information.
  • BackwardCallback and BackwardCallbackOrder as an abstraction on top of loss.backward. Now you could easily log model gradients or transform them before OptimizerCallback.
  • CheckpointCallbackOrder for ICheckpointCallback.

Changed

  • Minimal python version moved to 3.7, minimal PyTorch version moved to 1.4.0.
  • Engines were rewritten on top of Accelerate. First, we found these two abstractions very close to each other. Second, Accelerate provides additional user-friendly API and more stable API for "Nvidia APEX" and "Facebook Fairscale" - it does not support them.
  • SelfSupervisedRunner moved to the examples folder from the Catalyst API. The only Runners API, that will be supported in the future: IRunner, Runner, ISupervisedRunner, SupervisedRunner due to their consistency. If you are interested in any other Runner API - feel free to write your own CustomRunner and use SelfSupervisedRunner as an example.
  • Runner.{global/stage}_{batch/loader/epoch}_metrics renamed to Runner.{batch/loader/epoch}_metrics
  • CheckpointCallback rewritten from scratch.
  • Catalyst registry moved to full-imports-paths only.
  • Logger API changed to receive IRunner for all log_* methods.
  • Metric API: topk_args renamed to topk.
  • Contrib API: init imports from catalyst.contrib - removed, use from catalyst.contrib.{smth} import {smth}. Could be change to full-imports-only in future versions for stability.
  • All quickstarts, minimal examples, notebooks, and pipelines moved to the new version.
  • Codestyle moved to 89 right margin. Honestly speaking, it's much easier to maintain Catalyst with 89 right margin on MBP'16.

Removed

  • ITrial removed.
  • Stages support removed. While we embrace stages in deep learning experiments, current hardware accelerators are not prepared well for such setups. Additionally, ~95% of dl pipelines are single-stage. Multi-stage runner support is under review. For multi-stage support, please define a CustomRunner with rewritten API.
  • Config/Hydra API support removed. Config API is under review. For now, you could write your own Config API with hydra-slayer if needed.
  • catalyst-dl scripts removed. Without Config API we don't need them anymore.
  • Nvidia Apex, Fairscale, Albumentations, Nifti, Hydra requiremets removed.
  • OnnxCallback, PruningCallback, QuantizationCallback, TracingCallback removed from callbacks API. These callbacks are under review now.

If you have any questions on the Catalyst 22 edition updates, please join Catalyst slack for discussion.

Catalyst 22.02rc0

07 Feb 06:10
Compare
Choose a tag to compare
Catalyst 22.02rc0 Pre-release
Pre-release

[22.02rc0] - 2022-02-07

Tl;dr

Beta version of Catalyst 22 edition.

  • core architecture moved to Animus-like (stages were removed)
  • engines moved to Accelerate
  • config/hydra APIs deprecated in favor of hydra-slayer-custom config runners
  • dl-based scripts removed from the API
  • self-supervised runner moved to examples - it's better to have custom still
  • contrib and utils - truncated
  • requirements - simplified
  • codestyle moved to -l 89 (better view on 16'' screen ;) )

Catalyst 21.12

28 Dec 04:11
e0d71c6
Compare
Choose a tag to compare

[21.12] - 2021-12-28

Tl;dr

Distributed engines update (multi-node support) and many other improvements.

Added

  • MNIST dataset for SSL banchmark (#1368)
  • MoveiLens 20M dataset #1336
  • logger property for logging customization (#1372)
  • MacridVAE example (#1363)
  • SSL benchmark results (#1374)
  • Neptune example (#1377)
  • multi-node support for engines (#1364)

Changed

  • RL examples update to last version (#1370)
  • DDPLoaderWrapper updated to new version (#1385)
  • num_classes for classification metrics became optional (#1379)
  • colab ci/cd update to new verion

Removed

Fixed

  • requests requirements for catalyst[cv] added (#1371)
  • loader step counter (#1374)
  • detection example data preprocessing (#1369)
  • gradient clipping with fp16 runs (#1378)
  • config API fix for DDP runs (#1383)
  • checkpoint creation for fp16 engines (#1382)

Contributors ❤️

@bagxi @ditwoo @MrNightSky @Nimrais @y-ksenia @sergunya17 @Thiefwerty @zkid18

Catalyst 21.11

30 Nov 07:36
Compare
Choose a tag to compare

[21.11] - 2021-11-30

Tl;dr

Framework architecture simplification and speedup + SSL & RecSys extensions.

Added

  • MultiVAE RecSys example (#1340)`
  • Returned resume support - resolved #1193 (#1349)
  • Smoothing dice loss to contrib (#1344)
  • profile flag for runner.train (#1348)
  • MultiDAE RecSys example (#1356)
  • SETTINGS.log_batch_metrics, SETTINGS.log_epoch_metrics, SETTINGS.compute_per_class_metrics for framework-wise Metric & Logger APIs specification (#1357)
  • log_batch_metrics and log_epoch_metrics options for all available Loggers (#1357)
  • compute_per_class_metrics option for all available multiclass/label metrics (#1357)
  • pytorch benchmark script and simplified MNIST (#1360)

Changed

  • A few framework simplifications were made (#1346):
    • catalyst-contrib scripts reduced to collect-env and project-embeddings only
    • catalyst-dl scripts recuded to run and tune only
    • transforms. prefix deprecated for Catalyst-based transforms
    • catalyst.tools moved to catalyst.extras
    • task-dependent extensions from catalyst.data moved to catalyst.contrib.data
    • catalyst.data.transforms moved to catalyst.contrib.data.transforms
    • Normalize, ToTensor transforms renamed to NormalizeImage, ImageToTensor
    • metric learning extensions moved to catalyst.contrib.data
    • catalyst.contrib moved to code-as-a-documentation development
    • catalyst[cv] and catalyst[ml] extensions moved to flatten architecture design; examples: catalyst.contrib.data.dataset_cv, catalyst.contrib.data.dataset_ml
    • catalyst.contrib moved to flatten architecture design; exampels: catalyst.contrib.data, catalyst.contrib.datasets, catalyst.contrib.layers, catalyst.contrib.models, catalyst.contrib.optimizers, catalyst.contrib.schedulers
    • internal functionality moved to ***._misc modules
    • catalyst.utils.mixup moved to catalyst.utils.torch
    • catalyst.utils.numpy moved to catalyst.contrib.utils.numpy
  • default logging logic moved from "batch & epoch" to "epoch"-only to save computation time during logging; to respecify, please use:
    • SETTINGS.log_batch_metrics=True/False or os.environ["CATALYST_LOG_BATCH_METRICS"]
    • SETTINGS.log_epoch_metrics=True/False or os.environ["CATALYST_LOG_EPOCH_METRICS"]
  • default metrics computation moved from "per-class & aggregations" to "aggregations"-only to save computation time during logging; to respecify, please use:
    • SETTINGS.compute_per_class_metrics=True/False or os.environ["CATALYST_COMPUTE_PER_CLASS_METRICS"]
  • no transformations required for MNIST contrib dataset (#1360

Removed

  • A few framework simplifications were made (#1346):
    • catalyst.contrib.pandas
    • catalyst.contrib.parallel
    • catalyst.contrib.models.cv
    • a few catalyst.utils.misc functions
    • catalyst.extras removed from the public documentation

Fixed

  • documentation search error (21.10 only) (#1346)
  • docs examples (#1362)
  • Self-Supervised benchmark: (#1365), (#1361)

Contributors ❤️

@asteyo @Dokholyan @Nimrais @y-ksenia @sergunya17

Catalyst 21.10

30 Oct 07:39
7edd6f9
Compare
Choose a tag to compare

[21.10] - 2021-10-30

Tl;dr

Readmes and tutorials with a few ddp fixes.

Added

  • RSquareLoss (#1313)
  • Self-Supervised example updates: (#1305), (#1322), (#1325), (#1335)
  • Albert training example (#1326)
  • YOLO-X (new) detection example and refactoring (#1324)
  • TopKMetric asbtraction (#1330)

Changed

  • simlified readme (#1312)
  • improved DDP tutorial (#1327)
  • CMCMetric renamed from <prefix>cmc<suffix><k> to <prefix>cmc<k><suffix> (#1330)

Removed

Fixed

  • Zero seed error (#1329)
  • updated codestyle issues (#1331)
  • TopK metrics: (#1330), (#1334), (#1339)
  • --expdir param for catalyst-dl run (#1338)
  • ControlFlowCallback for distributed setup (#1341)

Catalyst 21.09

30 Sep 07:15
3f18d6b
Compare
Choose a tag to compare

[21.09] - 2021-09-30

Added

  • CometLogger support (#1283)
  • CometLogger examples (#1287)
  • XLA docs (#1288)
  • Contarstive loss functions: NTXentLoss (#1278), SupervisedContrastiveLoss (#1293)
  • Self supervised learning: ISelfSupervisedRunner, SelfSupervisedConfigRunner, SelfSupervisedRunner, SelfSupervisedDatasetWrapper (#1278)
  • SimCLR example (#1278)
  • Superivised Contrastive example (#1293)
  • extra warnings for runner-callbacks interaction (#1295)
  • CategoricalRegressionLoss and QuantileRegressionLoss to the contrib (#1295)
  • R2 score metric (#1274)

Changed

  • Improved WandbLogger to support artifacts and fix logging steps (#1309)
  • full Runner cleanup, with callbacks and loaders destruction, moved to PipelineParallelFairScaleEngine only (#1295)
  • HuberLoss renamed to HuberLossV0 for the PyTorch compatibility (#1295)
  • codestyle update (#1298)
  • BalanceBatchSampler - deprecated (#1303)

Removed

Fixed

Contributors ❤️

@asteyo @AyushExel @bagxi @DN6 @gr33n-made @Nimrais @Podidiving @y-ksenia

Catalyst 21.09rc1 - release wheels update check 2.0

27 Sep 19:02
20a1db0
Compare
Choose a tag to compare
v21.09rc1

Update __version__.py

Catalyst 21.09rc0 - release wheels update check

27 Sep 06:21
185b892
Compare
Choose a tag to compare

Hi guys, nice project!

This is the test case release to check out our updated infrastructure.