当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python sklearn log_loss用法及代码示例


本文简要介绍python语言中 sklearn.metrics.log_loss 的用法。

用法:

sklearn.metrics.log_loss(y_true, y_pred, *, eps=1e-15, normalize=True, sample_weight=None, labels=None)

对数损失,又称逻辑损失或 cross-entropy 损失。

这是(多项)逻辑回归及其扩展(例如神经网络)中使用的损失函数,定义为为其训练数据 y_true 返回 y_pred 概率的逻辑模型的负对数似然。对数损失仅针对两个或多个标签定义。对于具有真实标签 和概率估计 的单个样本,对数损失为:

在用户指南中阅读更多信息。

参数

y_true类似数组或标签指示矩阵

n_samples 个样本的真实(正确)标签。

y_pred类似浮点数的数组,形状 = (n_samples, n_classes) 或 (n_samples,)

预测概率,由分类器的 predict_proba 方法返回。如果y_pred.shape = (n_samples,) 提供的概率被假定为正类的概率。 y_pred 中的标签假定按字母顺序排列,正如 preprocessing.LabelBinarizer 所做的那样。

eps浮点数,默认=1e-15

对于 p=0 或 p=1,对数损失未定义,因此概率被限制为 max(eps, min(1 - eps, p))。

normalize布尔,默认=真

如果为真,则返回每个样本的平均损失。否则,返回per-sample 损失的总和。

sample_weight形状类似数组 (n_samples,),默认=None

样本权重。

labels类似数组,默认=无

如果未提供,将从 y_true 推断标签。如果 labelsNone 并且 y_pred 具有形状 (n_samples,),则假定标签是二进制的,并且是从 y_true 推断出来的。

返回

loss浮点数

注意

使用的对数是自然对数 (base-e)。

参考

厘米。主教(2006 年)。模式识别和机器学习。斯普林格,第209.

例子

>>> from sklearn.metrics import log_loss
>>> log_loss(["spam", "ham", "ham", "spam"],
...          [[.1, .9], [.9, .1], [.8, .2], [.35, .65]])
0.21616...

相关用法


注:本文由纯净天空筛选整理自scikit-learn.org大神的英文原创作品 sklearn.metrics.log_loss。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。