Skip to content

Releases: Lightning-AI/torchmetrics

Minor patch release

03 Mar 11:25
Compare
Choose a tag to compare

[1.6.2] - 2024-02-28

Added

  • Added zero_division argument to DiceScore in segmentation package (#2860)
  • Added cache_session to DNSMOS metric to control caching behavior (#2974)
  • Added disable option to nan_strategy in basic aggregation metrics (#2943)

Changed

  • Make num_classes optional for classification in case of micro averaging (#2841)
  • Enhance Clip_Score to calculate similarities between same modalities (#2875)

Fixed

  • Fixed DiceScore when there is zero overlap between predictions and targets (#2860)
  • Fixed MeanAveragePrecision for average="micro" when 0 label is not present (#2968)
  • Fixed corner-case in PearsonCorrCoef when input is constant (#2975)
  • Fixed MetricCollection.update gives identical results (#2944)
  • Fixed missing kwargs in PIT metric for permutation wise mode (#2977)
  • Fixed multiple errors in the _final_aggregation function for PearsonCorrCoef (#2980)
  • Fixed incorrect CLIP-IQA type hints (#2952)

Key Contributors

@baskrahmer, @czmrand, @rbedyakin, @rittik9, @SkafteNicki, @wooseopkim

If we forgot someone due to not matching commit email with GitHub account, let us know :]


Full Changelog: v1.6.1...v1.6.2

Minor patch release

25 Dec 23:50
Compare
Choose a tag to compare

[1.6.1] - 2024-12-25

Changed

  • Enabled specifying weights path for FID (#2867)
  • Delete Device2Host caused by comm with device and host (#2840)

Fixed

  • Fixed plotting of multilabel confusion matrix (#2858)
  • Fixed issue with shared state in metric collection when using dice score (#2848)
  • Fixed top_k for multiclassf1score with one-hot encoding (#2839)
  • Fixed slow calculations of classification metrics with MPS (#2876)

Key Contributors

@Isalia20, @nkaenzig, @podgorki, @rittik9, @yuvalkirstain, @zhaozheng09

If we forgot someone due to not matching commit email with GitHub account, let us know :]


Full Changelog: v1.6.0...v1.6.1

More metrics

12 Nov 19:29
Compare
Choose a tag to compare

The latest release of TorchMetrics introduces several significant enhancements and new features that will greatly benefit users across various domains. This update includes the addition of new metrics and methods that enhance the library's functionality and usability.

One of the key additions is the NISQA audio metric, which provides advanced capabilities for evaluating audio quality. In the classification domain, the new LogAUC and NegativePredictiveValue metrics offer improved tools for assessing model performance, particularly in imbalanced datasets. For regression tasks, the NormalizedRootMeanSquaredError metric has been introduced, providing a normalized measure of prediction accuracy that is less sensitive to outliers.

In the field of image segmentation, the new Dice metric enhances the evaluation of segmentation models by providing a robust measure of overlap between predicted and ground truth masks. Additionally, the merge_state method has been added to the Metric class, allowing for more efficient state management and aggregation across multiple devices or processes.

Furthermore, this release includes support for the propagation of the autograd graph in Distributed Data-Parallel (DDP) settings, enabling more efficient and scalable training of models across multiple GPUs. These enhancements collectively make TorchMetrics a more powerful and versatile tool for machine learning practitioners, enabling more accurate and efficient model evaluation across a wide range of applications.

[1.6.0] - 2024-11-12

Added

  • Added audio metric NISQA (#2792)
  • Added classification metric LogAUC (#2377)
  • Added classification metric NegativePredictiveValue (#2433)
  • Added regression metric NormalizedRootMeanSquaredError (#2442)
  • Added segmentation metric Dice (#2725)
  • Added method merge_state to Metric (#2786)
  • Added support for propagation of the autograd graph in DDP setting (#2754)

Changed

  • Changed naming and input order arguments in KLDivergence (#2800)

Deprecated

  • Deprecated Dice from classification metrics (#2725)

Removed

  • Changed minimum supported Pytorch version to 2.0 (#2671)
  • Dropped support for Python 3.8 (#2827)
  • Removed num_outputs in R2Score (#2800)

Fixed

  • Fixed segmentation Dice + GeneralizedDice for 2d index tensors (#2832)
  • Fixed mixed results of rouge_score with accumulate='best' (#2830)

Key Contributors

@Borda, @cw-tan, @philgzl, @rittik9, @SkafteNicki

New Contributors since 1.5.0

Full Changelog: v1.5.0...v1.6.0

Minor patch release

08 Nov 10:35
Compare
Choose a tag to compare

[1.5.2] - 2024-11-07

Changed

  • Re-adding numpy 2+ support (#2804)

Fixed

  • Fixed iou scores in detection for either empty predictions/targets leading to wrong scores (#2805)
  • Fixed MetricCollection compatibility with torch.jit.script (#2813)
  • Fixed assert in PIT (#2811)
  • Patched np.Inf for numpy 2.0+ (#2826)

Key Contributors

@adamjstewart, @Borda, @SkafteNicki, @StalkerShurik, @yurithefury

If we forgot someone due to not matching commit email with GitHub account, let us know :]


Full Changelog: v1.5.1...v1.5.2

Minor compatibility patch

23 Oct 07:05
Compare
Choose a tag to compare

[1.5.1] - 2024-10-22

Fixed

  • Changing _modules dict type in Pytorch 2.5 preventing to fail collections metrics (#2793)

Key Contributors

@bfolie

If we forgot someone due to not matching commit email with GitHub account, let us know :]


Full Changelog: v1.5.0...v1.5.1

Shape metric

18 Oct 19:35
Compare
Choose a tag to compare

Shape metrics are quantitative methods used to assess and compare the geometric properties of objects, often in datasets that represent shapes. One such metric is the Procrustes Disparity, which measures the sum of the squared differences between two datasets after applying a Procrustes transformation. This transformation involves scaling, rotating, and translating the datasets to achieve optimal alignment. The Procrustes Disparity is particularly useful when comparing datasets that are similar in structure but not perfectly aligned, allowing for more meaningful comparison by minimizing differences due to orientation or size.

[1.5.0] - 2024-10-18

Added

  • Added segmentation metric HausdorffDistance (#2122)
  • Added audio metric DNSMOS (#2525)
  • Added shape metric ProcrustesDistance (#2723)
  • Added MetricInputTransformer wrapper (#2392)
  • Added input_format argument to segmentation metrics (#2572)
  • Added multi-output support for MAE metric (#2605)
  • Added truncation argument to BERTScore (#2776)

Changed

  • Tracker higher is better integration (#2649)
  • Updated InfoLM class to dynamically set higher_is_better (#2674)

Deprecated

  • Deprecated num_outputs in R2Score (#2705)

Fixed

  • Fixed corner case in IoU metric for single empty prediction tensors (#2780)
  • Fixed PSNR calculation for integer type input images (#2788)

Key Contributors

@Astraightrain, @grahamannett, @lgienapp, @matsumotosan, @quancs, @SkafteNicki

New Contributors since 1.4.0

Full Changelog: v1.4.0...v1.5.0

Minor patch release

10 Oct 12:04
Compare
Choose a tag to compare

[1.4.3] - 2024-10-10

Fixed

  • Fixed for Pearson changes inputs (#2765)
  • Fixed bug in PESQ metric where NoUtterancesError prevented calculating on a batch of data (#2753)
  • Fixed corner case in MatthewsCorrCoef (#2743)

Key Contributors

@Borda, @SkafteNicki, @veera-puthiran-14082

If we forgot someone due to not matching commit email with GitHub account, let us know :]


Full Changelog: v1.4.2...v1.4.3

Minor patch release

13 Sep 20:01
Compare
Choose a tag to compare

[1.4.2] - 2022-09-12

Added

  • Re-adding Chrf implementation (#2701)

Fixed

  • Fixed wrong aggregation in segmentation.MeanIoU (#2698)
  • Fixed handling zero division error in binary IoU (Jaccard index) calculation (#2726)
  • Corrected the padding related calculation errors in SSIM (#2721)
  • Fixed compatibility of audio domain with new scipy (#2733)
  • Fixed how prefix/postfix works in MultitaskWrapper (#2722)
  • Fixed flakiness in tests related to torch.unique with dim=None (#2650)

Key Contributors

@Borda, @petertheprocess, @rittik9, @SkafteNicki, @vkinakh

If we forgot someone due to not matching commit email with GitHub account, let us know :]


Full Changelog: v1.4.1...v1.4.2

Minor patch release

03 Aug 11:32
Compare
Choose a tag to compare

[1.4.1] - 2024-08-02

Changed

  • Calculate the text color of ConfusionMatrix plot based on luminance (#2590)
  • Updated _safe_divide to allow Accuracy to run on the GPU (#2640)
  • Improved better error messages for intersection detection metrics for wrong user input (#2577)

Removed

  • Dropped Chrf implementation due to licensing issues with the upstream package (#2668)

Fixed

  • Fixed bug in MetricCollection when using compute groups and compute is called more than once (#2571)
  • Fixed class order of panoptic_quality(..., return_per_class=True) output (#2548)
  • Fixed BootstrapWrapper not being reset correctly (#2574)
  • Fixed integration between ClasswiseWrapper and MetricCollection with custom _filter_kwargs method (#2575)
  • Fixed BertScore calculation: pred target misalignment (#2347)
  • Fixed _cumsum helper function in multi-gpu (#2636)
  • Fixed bug in MeanAveragePrecision.coco_to_tm (#2588)
  • Fixed missed f-strings in exceptions/warnings (#2667)

Key Contributors

@Borda, @gxy-gxy, @i-aki-y, @ndrwrbgs, @relativityhd, @SkafteNicki

If we forgot someone due to not matching commit email with GitHub account, let us know :]


Full Changelog: v1.4.0...v1.4.1

Minor dependency correction

15 May 11:24
Compare
Choose a tag to compare