Skip to content

Commit 9830525

Browse files
MathijsdeBoerKumoLiuMathijs de Boer
authored
Add __repr__ and __str__ to Metrics baseclass (#7487)
### Description When training a model using MONAI metrics for experiment tracking, I tend to log which metrics I am using. Unfortunately, just sending the metrics objects to Tensorboard will result in a list like [CustomMetric1, CustomMetric2, <monai.metrics.Metric ...>, etc.] Adding `__repr__` and `__str__` methods to the base class will solve this small annoyance. The current implementation will only return the class name, but if a certain metric would wish to report more data for its `__repr__` string, this can be easily overridden in any subclass. ### Types of changes <!--- Put an `x` in all the boxes that apply, and remove the not applicable items --> - [x] Non-breaking change (fix or new feature that would not break existing functionality). - [ ] Breaking change (fix or new feature that would cause existing functionality to change). - [ ] New tests added to cover the changes. - [ ] Integration tests passed locally by running `./runtests.sh -f -u --net --coverage`. - [ ] Quick tests passed locally by running `./runtests.sh --quick --unittests --disttests`. - [ ] In-line docstrings updated. - [ ] Documentation updated, tested `make html` command in the `docs/` folder. --------- Signed-off-by: YunLiu <55491388+KumoLiu@users.noreply.github.com> Signed-off-by: Mathijs de Boer <m.deboer-41@umcutrecht.nl> Co-authored-by: YunLiu <55491388+KumoLiu@users.noreply.github.com> Co-authored-by: Mathijs de Boer <m.deboer-41@umcutrecht.nl>
1 parent 7cfa2c9 commit 9830525

File tree

1 file changed

+3
-0
lines changed

1 file changed

+3
-0
lines changed

monai/metrics/metric.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,9 @@ def __call__(self, *args: Any, **kwargs: Any) -> Any:
3737
"""
3838
raise NotImplementedError(f"Subclass {self.__class__.__name__} must implement this method.")
3939

40+
def __str__(self):
41+
return self.__class__.__name__
42+
4043

4144
class IterationMetric(Metric):
4245
"""

0 commit comments

Comments
 (0)