Catalyst Versions Save

Accelerated deep learning R&D

v21.08

2 years ago

[21.08] - 2021-08-31

Added

  • RecSys loss functions: AdaptiveHingeLoss, BPRLoss, HingeLoss, LogisticLoss, RocStarLoss, WARPLoss (#1269, #1282)
  • object detection examples (#1271)
  • SklearnModelCallback (#1261)
  • Barlow Twins example (#1261)
  • TPU/XLA support (#1275)
  • native sync_bn support for all available engines (#1275)
    • Torch, AMP, Apex, FairScale

Changed

  • Registry moved to hydra-slayer (#1264))
  • (#1275)
    • batch metrics sync removed from ddp-runs to speedup training process
    • AccumulationMetric renamed to AccumulativeMetric
      • moved from catalyst.metrics._metric to catalyst.metrics._accumulative
      • accululative_fields renamed to keys

Removed

Fixed

  • PeriodicLoaderCallback docsting (#1279)
  • matplotlib issue (#1272)
  • sample counter for the loader (#1285)

Contributors ❤️

@bagxi @Casyfill @ditwoo @Nimrais @penguinflys @sergunya17 @zkid18

v21.07

2 years ago

[21.07] - 2021-07-29

Added

  • added pre-commit hook to run codestyle checker on commit (#1257)
  • on publish github action for docker and docs added (#1260)
  • MixupCallback and utils.mixup_batch (#1241)
  • Barlow twins loss (#1259)
  • BatchBalanceClassSampler (#1262)

Changed

Removed

Fixed

  • make expdir in catalyst-dl run optional (#1249)
  • Bump neptune-client from 0.9.5 to 0.9.8 in requirements-neptune.txt (#1251)
  • automatic merge for master (with Mergify) fixed (#1250)
  • Evaluate loader custom model bug was fixed (#1254)
  • BatchPrefetchLoaderWrapper issue with batch-based PyTorch samplers (#1262)
  • Adapted MlflowLogger for new config hierarchy (#1263)

Contributors ❤️

@AlekseySh @bagxi @Casyfill @Dokholyan @leoromanovich @Nimrais @y-ksenia

v21.06

2 years ago

[21.06] - 2021-06-29

Added

  • (#1230)
    • FairScale support
    • DeepSpeed support
    • utils.ddp_sync_run function for synchronous ddp run
    • CIFAR10 and CIFAR100 datasets from torchvision (no cv-based requirements)
    • Catalyst Engines demo
  • dataset_from_params support in config API (#1231)
  • transform from params support for config API added (#1236)
  • samplers from params support for config API added (#1240)
  • recursive registry.get_from_params added (#1241)
  • albumentations integration (#1238)
  • Profiler callback (#1226)

Changed

  • (#1230)
    • loaders creation now wrapper with utils.ddp_sync_run for utils.ddp_sync_run data preparation
    • runner support stage cleanup: loaders and callbacks will be deleted on the stage end
    • Apex-based engines now support both APEXEngine and ApexEngine registry names

Fixed

  • multiprocessing in minimal tests hotfix (#1232)
  • Tracing callback hotfix (#1234)
  • Engine hotfix for predict_loader (#1235)
  • (#1230)
    • Hydra hotfix due to 1.1.0 version changes
  • HuberLoss name conflict for pytorch 1.9 hotfix (#1239)

Contributors ❤️

@bagxi @y-ksenia @ditwoo @BorNick @Inkln

v21.05

2 years ago

[21.05] - 2021-05-31

Added

  • Reinforcement learning tutorials (#1205)
  • customization demo (#1207)
  • FAQ docs: multiple input and output keys, engine tutorial (#1202)
  • minimal Config API example (#1215)
  • Distributed RL example (Catalyst.RL 2.0 concepts) (#1224)
  • SklearnCallback as integration of sklearn metrics (#1198)

Changed

  • tests moved to tests folder (#1208)
  • pipeline tests moved to tests/pipelines (#1215)
  • updated NeptuneLogger docstrings (#1223)

Removed

Fixed

  • customizing what happens in train() notebook (#1203)
  • transforms imports under catalyst.data (#1211)
  • change layerwise to layerwise_params (#1210)
  • add torch metrics support (#1195)
  • add Config API support for BatchTransformCallback (#1209)

BONUS: Catalyst workshop videos!

v21.04.2

3 years ago

[21.04.2] - 2021-04-30

Added

  • Weights and Biases Logger (WandbLogger) (#1176)
  • Neptune Logger (NeptuneLogger) (#1196)
  • log_artifact method for logging arbitrary files like audio, video, or model weights to ILogger and IRunner (#1196)

v21.04.1

3 years ago
  • a small hotfix for catalyst.contrib module

v21.04

3 years ago

[21.04] - 2021-04-17

Added

  • Nifti Reader (NiftiReader) (#1151)
  • CMC score and callback for ReID task (ReidCMCMetric and ReidCMCScoreCallback) (#1170)
  • Market1501 metric learning datasets (Market1501MLDataset and Market1501QGDataset) (#1170)
  • extra kwargs support for Engines (#1156)
  • engines exception for unknown model type (#1174)
  • a few docs to the supported loggers (#1174)

Changed

  • TensorboardLogger switched from global_batch_step counter to global_sample_step one (#1174)
  • TensorboardLogger logs loader metric on_loader_end rather than on_epoch_end (#1174)
  • prefix renamed to metric_key for MetricAggregationCallback (#1174)
  • micro, macro and weighted aggregations renamed to _micro, _macro and _weighted (#1174)
  • BatchTransformCallback updated (#1153)

Removed

  • auto torch.sigmoid usage for metrics.AUCMetric and metrics.auc (#1174)

Fixed

  • hitrate calculation issue (#1155)
  • ILoader wrapper usage issue with Runner (#1174)
  • counters for ddp case (#1174)

v21.03.2

3 years ago

Fixed

  • minimal requirements issue (#1147)

v21.03.1

3 years ago

[21.03.1] - 2021-03-28

Added

  • Additive Margin SoftMax(AMSoftmax)(#1125)
  • Generalized Mean Pooling(GeM)(#1084)
  • Key-value support for CriterionCallback (#1130)
  • Engine configuration through cmd (#1134)
  • Extra utils for thresholds (#1134)
  • Added gradient clipping function to optimizer callback (1124)
  • FactorizedLinear to contrib (1142)
  • Extra init params for ConsoleLogger (1142)
  • Tracing, Quantization, Onnx, Pruninng Callbacks (1127)
  • _key_value for schedulers in case of multiple optimizers fixed (#1146)

Changed

  • CriterionCallback now inherits from BatchMetricCallback #1130)
    • united metrics computation logic

Removed

  • Config API deprecated parsings logic (1142) (1138)

Fixed

v21.03

3 years ago

The v20 is dead, long live the v21!

[21.03] - 2021-03-13 (#1095)

Added

  • Engine abstraction to support various hardware backends and accelerators: CPU, GPU, multi GPU, distributed GPU, TPU, Apex, and AMP half-precision training.
  • Logger abstraction to support various monitoring tools: console, tensorboard, MLflow, etc.
  • Trial abstraction to support various hyperoptimization tools: Optuna, Ray, etc.
  • Metric abstraction to support various of machine learning metrics: classification, segmentation, RecSys and NLP.
  • Full support for Hydra API.
  • Full DDP support for Python API.
  • MLflow support for metrics logging.
  • United API for model post-processing: tracing, quantization, pruning, onnx-exporting.
  • United API for metrics: classification, segmentation, RecSys, and NLP with full DDP and micro/macro/weighted/etc aggregations support.

Changed

  • Experiment abstraction merged into Runner one.
  • Runner, SupervisedRunner, ConfigRunner, HydraRunner architectures and dependencies redesigned.
  • Internal settings and registry mechanisms refactored to be simpler, user-friendly and more extendable.
  • Bunch of Config API test removed with Python API and pytest.
  • Codestyle now supports up to 99 symbols per line :)
  • All callbacks/runners moved for contrib to the library core if was possible.
  • Runner abstraction simplified to store only current state of the experiment run: all validation logic was moved to the callbacks (by this way, you could easily select best model on various metrics simultaneously).
  • Runner.input and Runner.output merged into united Runner.batch storage for simplicity.
  • All metric moved from catalyst.utils.metrics to catalyst.metrics.
  • All metrics now works on scores/metric-defined-input rather that logits (!).
  • Logging logic moved from Callbacks to appropriate Loggers.
  • KorniaCallbacks refactored to BatchTransformCallback.

Removed

  • Lots of unnecessary contrib extensions.
  • Transforms configuration support through Config API (could be returned in next releases).
  • Integrated Python cmd command for model pruning, swa, etc (should be returned in next releases).
  • CallbackOrder.Validation and CallbackOrder.Logging
  • All 2020 year backward compatibility fixes and legacy support.

Fixed

  • Docs rendering simplified.
  • LrFinderCallback.

Release docs, Python API minimal examples, Config/Hydra API example.