d2_pinball_score
- sklearn.metrics.d2_pinball_score(y_true, y_pred, *, sample_weight=None, alpha=0.5, multioutput='uniform_average')[source]
-
Функция оценки регрессии \(D^2\), доля объяснённой потери пинбол.
Наилучшее возможное значение — 1,0, и оно может быть отрицательным (потому что модель может быть произвольно хуже). Модель, которая всегда использует эмпиричный альфа-квантиль
y_trueв качестве постоянного прогноза, игнорируя входные признаки, получает оценку \(D^2\) равную 0,0.Подробнее см. в Руководстве пользователя.
Добавлена в версии 1.1.
- Параметры:
-
- y_trueмассив-подобный формы (n_samples,) или (n_samples, n_outputs)
-
Истинные (правильные) целевые значения.
- y_predмассив-подобный формы (n_samples,) или (n_samples, n_outputs)
-
Оценённые целевые значения.
- sample_weightмассив-подобный формы (n_samples,), по умолчанию=None
-
Веса выборок.
- alphafloat, по умолчанию=0.5
-
Наклон отклонения пинбол. Он определяет уровень квантиля альфа, для которого отклонение пинбол, а также D2, оптимальны. Значение по умолчанию
alpha=0.5эквивалентноd2_absolute_error_score. - multioutput{‘raw_values’, ‘uniform_average’} или массив-подобный формы (n_outputs,), по умолчанию=’uniform_average’
-
Определяет агрегирование значений нескольких выходных данных. Массив-подобное значение определяет веса, используемые для усреднения оценок.
- ‘raw_values’ :
-
Возвращает полный набор ошибок в случае многомерного входного сигнала.
- ‘uniform_average’ :
-
Оценки всех выходных данных усредняются с равным весом.
- Возвращает:
-
- scorefloat или массив float
-
Оценка \(D^2\) с отклонением пинбол или массив оценок, если
multioutput='raw_values'.
Примечания
Как и \(R^2\), оценка \(D^2\) может быть отрицательной (она не обязательно должна быть квадратом величины D).
Эта метрика не определена для одной точки и вернёт значение NaN, если n_samples меньше двух.
Ссылки
[1]Формула (7) из Koenker, Roger; Machado, José A. F. (1999). “Goodness of Fit and Related Inference Processes for Quantile Regression”
[2]Формула (3.11) из Hastie, Trevor J., Robert Tibshirani and Martin J. Wainwright. “Statistical Learning with Sparsity: The Lasso and Generalizations.” (2015). https://hastie.su.domains/StatLearnSparsity/
Примеры
>>> from sklearn.metrics import d2_pinball_score >>> y_true = [1, 2, 3] >>> y_pred = [1, 3, 3] >>> d2_pinball_score(y_true, y_pred) np.float64(0.5) >>> d2_pinball_score(y_true, y_pred, alpha=0.9) np.float64(0.772...) >>> d2_pinball_score(y_true, y_pred, alpha=0.1) np.float64(-1.045...) >>> d2_pinball_score(y_true, y_true, alpha=0.1) np.float64(1.0)
© 2007–2025 The scikit-learn developers
Licensed under the 3-clause BSD License.
https://scikit-learn.org/1.6/modules/generated/sklearn.metrics.d2_pinball_score.html