Releases: Lightning-AI/torchmetrics
Minor compatibility patch
[1.5.1] - 2024-10-22
Fixed
- Changing
_modules
dict type in Pytorch 2.5 preventing to fail collections metrics (#2793)
Key Contributors
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
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 toBERTScore
(#2776)
Changed
- Tracker higher is better integration (#2649)
- Updated
InfoLM
class to dynamically sethigher_is_better
(#2674)
Deprecated
- Deprecated
num_outputs
inR2Score
(#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
- @kalekundert made their first contribution in #2543
- @lgienapp made their first contribution in #2392
- @sweber1 made their first contribution in #2634
- @gxy-gxy made their first contribution in #2347
- @Astraightrain made their first contribution in #2605
- @ndrwrbgs made their first contribution in #2640
- @grahamannett made their first contribution in #2674
- @petertheprocess made their first contribution in #2721
- @rittik9 made their first contribution in #2726
- @vkinakh made their first contribution in #2698
- @likawind made their first contribution in #2732
- @veera-puthiran-14082 made their first contribution in #2753
- @GPPassos made their first contribution in #2727
Full Changelog: v1.4.0...v1.5.0
Minor patch release
[1.4.3] - 2024-10-10
Fixed
- Fixed for Pearson changes inputs (#2765)
- Fixed bug in
PESQ
metric whereNoUtterancesError
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
[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 inMultitaskWrapper
(#2722) - Fixed flakiness in tests related to
torch.unique
withdim=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
[1.4.1] - 2024-08-02
Changed
- Calculate the text color of
ConfusionMatrix
plot based on luminance (#2590) - Updated
_safe_divide
to allowAccuracy
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 andcompute
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
andMetricCollection
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
Full Changelog: v1.4.0...v1.4.0.post0
Metrics for segmentation
In Torchmetrics v1.4, we are happy to introduce a new domain of metrics to the library: segmentation metrics. Segmentation metrics are used to evaluate how well segmentation algorithms are performing, e.g., algorithms that take in an image and pixel-by-pixel decide what kind of object it is. These kind of algorithms are necessary in applications such as self driven cars. Segmentations are closely related to classification metrics, but for now, in Torchmetrics, expect the input to be formatted differently; see the documentation for more info. For now, MeanIoU
and GeneralizedDiceScore
have been added to the subpackage, with many more to follow in upcoming releases of Torchmetrics. We are happy to receive any feedback on metrics to add in the future or the user interface for the new segmentation metrics.
Torchmetrics v1.3 adds new metrics to the classification and image subpackage and has multiple bug fixes and other quality-of-life improvements. We refer to the changelog for the complete list of changes.
[1.4.0] - 2024-05-03
Added
- Added
SensitivityAtSpecificity
metric to classification subpackage (#2217) - Added
QualityWithNoReference
metric to image subpackage (#2288) - Added a new segmentation metric:
- Added support for calculating segmentation quality and recognition quality in
PanopticQuality
metric (#2381) - Added
pretty-errors
for improving error prints (#2431) - Added support for
torch.float
weighted networks for FID and KID calculations (#2483) - Added
zero_division
argument to selected classification metrics (#2198)
Changed
- Made
__getattr__
and__setattr__
ofClasswiseWrapper
more general (#2424)
Fixed
- Fix getitem for metric collection when prefix/postfix is set (#2430)
- Fixed axis names with Precision-Recall curve (#2462)
- Fixed list synchronization with partly empty lists (#2468)
- Fixed memory leak in metrics using list states (#2492)
- Fixed bug in computation of
ERGAS
metric (#2498) - Fixed
BootStrapper
wrapper not working withkwargs
provided argument (#2503) - Fixed warnings being suppressed in
MeanAveragePrecision
when requested (#2501) - Fixed corner-case in
binary_average_precision
when only negative samples are provided (#2507)
Key Contributors
@baskrahmer, @Borda, @ChristophReich1996, @daniel-code, @furkan-celik, @i-aki-y, @jlcsilva, @NielsRogge, @oguz-hanoglu, @SkafteNicki, @ywchan2005
New Contributors since 1.3.0
- @eamonn-zh made their first contribution in #2345
- @nsmlzl made their first contribution in #2346
- @fschlatt made their first contribution in #2364
- @JonasVerbickas made their first contribution in #2358
- @AtomicVar made their first contribution in #2391
- @JDongian made their first contribution in #2400
- @daniel-code made their first contribution in #2390
- @baskrahmer made their first contribution in #2457
- @ChristophReich1996 made their first contribution in #2381
- @lukazso made their first contribution in #2491
- @S-aiueo32 made their first contribution in #2499
- @dominicgkerr made their first contribution in #2493
- @Shoumik-Gandre made their first contribution in #2482
- @randombenj made their first contribution in #2511
- @NielsRogge made their first contribution in #1236
- @i-aki-y made their first contribution in #2198
If we forgot someone due to not matching commit email with GitHub account, let us know :]
Full Changelog: v1.3.0...v1.4.0
Minor patch release
[1.3.2] - 2024-03-18
Fixed
- Fixed negative variance estimates in certain image metrics (#2378)
- Fixed dtype being changed by deepspeed for certain regression metrics (#2379)
- Fixed plotting of metric collection when prefix/postfix is set (#2429)
- Fixed bug when
top_k>1
andaverage="macro"
for classification metrics (#2423) - Fixed case where label prediction tensors in classification metrics were not validated correctly (#2427)
- Fixed how auc scores are calculated in
PrecisionRecallCurve.plot
methods (#2437)
Full Changelog: v1.3.1...v1.3.2
Key Contributors
If we forgot someone due to not matching commit email with GitHub account, let us know :]
Minor patch release
[1.3.1] - 2024-02-12
Fixed
- Fixed how backprop is handled in
LPIPS
metric (#2326) - Fixed
MultitaskWrapper
not being able to be logged in lightning when using metric collections (#2349) - Fixed high memory consumption in
Perplexity
metric (#2346) - Fixed cached network in
FeatureShare
not being moved to the correct device (#2348) - Fix naming of statistics in
MeanAveragePrecision
with custom max det thresholds (#2367) - Fixed custom aggregation in retrieval metrics (#2364)
- Fixed initialize aggregation metrics with default floating type (#2366)
- Fixed plotting of confusion matrices (#2358)
Full Changelog: v1.3.0...v1.3.1
Key Contributors
@Borda, @fschlatt, @JonasVerbickas, @nsmlzl, @SkafteNicki
If we forgot someone due to not matching commit email with GitHub account, let us know :]
Minor release patch
Full Changelog: v1.3.0...v1.3.0.post0