From 5c7613dff8ba5fb6aae9a4dadbf21bad10a7b526 Mon Sep 17 00:00:00 2001 From: A-H-Mansoury Date: Sun, 26 Mar 2023 17:39:21 +0330 Subject: [PATCH 1/2] MAINT Parameters validation for sklearn.metrics.d2_tweedie_score --- sklearn/metrics/_regression.py | 11 +++++++++++ sklearn/tests/test_public_functions.py | 1 + 2 files changed, 12 insertions(+) diff --git a/sklearn/metrics/_regression.py b/sklearn/metrics/_regression.py index d4337cad59984..535dd84ff5465 100644 --- a/sklearn/metrics/_regression.py +++ b/sklearn/metrics/_regression.py @@ -1229,6 +1229,17 @@ def mean_gamma_deviance(y_true, y_pred, *, sample_weight=None): return mean_tweedie_deviance(y_true, y_pred, sample_weight=sample_weight, power=2) +@validate_params( + { + "y_true": ["array-like"], + "y_pred": ["array-like"], + "sample_weight": ["array-like", None], + "power": [ + Interval(Real, None, 0, closed="right"), + Interval(Real, 1, None, closed="left"), + ], + } +) def d2_tweedie_score(y_true, y_pred, *, sample_weight=None, power=0): """D^2 regression score function, fraction of Tweedie deviance explained. diff --git a/sklearn/tests/test_public_functions.py b/sklearn/tests/test_public_functions.py index cf830c79ad0f7..51a28079d7fa9 100644 --- a/sklearn/tests/test_public_functions.py +++ b/sklearn/tests/test_public_functions.py @@ -157,6 +157,7 @@ def _check_function_param_validation( "sklearn.metrics.confusion_matrix", "sklearn.metrics.coverage_error", "sklearn.metrics.d2_pinball_score", + "sklearn.metrics.d2_tweedie_score", "sklearn.metrics.dcg_score", "sklearn.metrics.det_curve", "sklearn.metrics.f1_score", From 364b61ded07338d3037543c2d43b9453cca3f475 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9r=C3=A9mie=20du=20Boisberranger?= <34657725+jeremiedbb@users.noreply.github.com> Date: Mon, 27 Mar 2023 16:01:06 +0200 Subject: [PATCH 2/2] Update _regression.py --- sklearn/metrics/_regression.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sklearn/metrics/_regression.py b/sklearn/metrics/_regression.py index b139359b554bc..b19fc2e7f3f70 100644 --- a/sklearn/metrics/_regression.py +++ b/sklearn/metrics/_regression.py @@ -1268,7 +1268,7 @@ def d2_tweedie_score(y_true, y_pred, *, sample_weight=None, power=0): y_pred : array-like of shape (n_samples,) Estimated target values. - sample_weight : array-like of shape (n_samples,), optional + sample_weight : array-like of shape (n_samples,), default=None Sample weights. power : float, default=0