log_loss
- sklearn.metrics.log_loss(y_true, y_proba=None, *, normalize=True, sample_weight=None, labels=None, y_pred='deprecated')[исходный код]
-
Log loss, также называемая логистической потерей или потерей перекрёстной энтропии.
Эта функция потерь используется в (мультиномиальной) логистической регрессии и её расширениях, таких как нейронные сети. Она определяется как отрицательное логарифмическое правдоподобие логистической модели, возвращающей вероятности
y_probaдля обучающих данныхy_true. Log loss определена только для двух или более меток. Для одного образца с истинной меткой \(y \in \{0,1\}\) и оценкой вероятности \(p = \operatorname{Pr}(y = 1)\) значение log loss равно:\[L_{\log}(y, p) = -(y \log (p) + (1 - y) \log (1 - p))\]Подробнее см. в руководстве пользователя.
- Параметры:
-
- y_truearray-like или матрица-индикатор меток
-
Истинные (правильные) метки для n_samples образцов.
- y_probaarray-like с числами с плавающей точкой, форма = (n_samples, n_classes) или (n_samples,)
-
Предсказанные вероятности, возвращаемые методом predict_proba классификатора. Если
y_proba.shape = (n_samples,)предполагается, что переданные вероятности относятся к положительному классу. Предполагается, что метки вy_probaупорядочены в алфавитном порядке, как и вLabelBinarizer.Значения
y_probaограничиваются диапазоном[eps, 1-eps], гдеeps— машинная точность для типа данныхy_proba.Добавлено в версии 1.9:
y_predпереименован вy_proba. - normalizebool, по умолчанию=True
-
Если значение истинно, возвращается средняя потеря на образец. В противном случае возвращается сумма потерь по отдельным образцам.
- sample_weightarray-like формы (n_samples,), по умолчанию=None
-
Веса образцов.
- labelsarray-like, по умолчанию=None
-
Если не указаны, метки будут определены по y_true. Если
labelsравенNoneиy_predимеет форму (n_samples,), предполагается, что метки бинарные, и они определяются поy_true.Добавлено в версии 0.18.
- y_predarray-like с числами с плавающей точкой, форма = (n_samples, n_classes) или (n_samples,)
-
Предсказанные вероятности, возвращаемые методом predict_proba классификатора. Если
y_pred.shape = (n_samples,)предполагается, что переданные вероятности относятся к положительному классу. Предполагается, что метки вy_predупорядочены в алфавитном порядке, как и вLabelBinarizer.Значения
y_predограничиваются диапазоном[eps, 1-eps], гдеeps— машинная точность для типа данныхy_pred.Устарел начиная с версии 1.9: В версии 1.9
y_predбыл объявлен устаревшим в пользуy_probaи будет удалён в версии 1.11.
- Возвращает:
-
- lossfloat
-
Log loss, также называемая логистической потерей или потерей перекрёстной энтропии.
Примечания
Используется натуральный логарифм (с основанием e).
Литература
C.M. Bishop (2006). Распознавание образов и машинное обучение. Springer, с. 209.
Примеры
>>> from sklearn.metrics import log_loss >>> log_loss(["spam", "ham", "ham", "spam"], ... [[.1, .9], [.9, .1], [.8, .2], [.35, .65]]) 0.21616
Примеры из галереи
© 2007–2026 The scikit-learn developers
Licensed under the 3-clause BSD License.
https://scikit-learn.org/1.9/modules/generated/sklearn.metrics.log_loss.html