dask_ml.metrics.log_loss
dask_ml.metrics.log_loss¶
- dask_ml.metrics.log_loss(y_true, y_pred, eps=1e-15, normalize=True, sample_weight=None, labels=None)[源代码]¶
对数损失,又称逻辑损失或交叉熵损失。
这是在(多项式)逻辑回归及其扩展如神经网络中使用的损失函数,定义为返回训练数据
y_true
的y_pred
概率的逻辑模型的负对数似然。对数损失仅定义为两个或更多标签。对于一个真实标签为 \(y \in \{0,1\}\) 且概率估计为 \(p = \operatorname{Pr}(y = 1)\) 的单个样本,对数损失为:\[L_{\log}(y, p) = -(y \log (p) + (1 - y) \log (1 - p))\]在 用户指南 中了解更多。
- 参数
- y_true类似数组或标签指示矩阵
n_samples 样本的地面真值(正确)标签。
- y_pred类似数组的浮点数,形状为 (n_samples, n_classes) 或 (n_samples,)
预测的概率,由分类器的 predict_proba 方法返回。如果
y_pred.shape = (n_samples,)
,则提供的概率被假定为正类的概率。y_pred
中的标签假定为按字母顺序排列,如LabelBinarizer
所做的那样。y_pred 的值被裁剪到 [eps, 1-eps] 范围内,其中 eps 是 y_pred 数据类型的机器精度。
- 规范化bool, 默认=True
如果为真,返回每个样本的平均损失。否则,返回每个样本损失的总和。
- sample_weight类似数组的形状 (n_samples,),默认=None
样本权重。
- 标签类似数组,默认=None
如果没有提供,标签将从 y_true 中推断。如果
labels
是None
并且y_pred
的形状是 (n_samples,),则假设标签是二元的,并从y_true
中推断。0.18 新版功能.
- 返回
- 损失浮动
对数损失,又称逻辑损失或交叉熵损失。
注释
所使用的对数是自然对数(以e为底)。
参考文献
C.M. Bishop (2006). 模式识别与机器学习。Springer, p. 209.
示例
>>> from sklearn.metrics import log_loss >>> log_loss(["spam", "ham", "ham", "spam"], ... [[.1, .9], [.9, .1], [.8, .2], [.35, .65]]) 0.21616...