0

为什么它不起作用:

from sklearn.metrics import log_loss
y_true = [0, 0, 0, 0]
y_pred = [0.5, 0.5, 0.5, 0.5]
log_loss(y_true, y_pred, eps=1e-15)
Error: ValueError: Unknown label type: ((0.5, 0.5, 0.5, 0.5),)
4

1 回答 1

2

log_loss不知道(无法推断)有哪些标签,因为您的示例中只有一个唯一标签。

from sklearn.metrics import log_loss

y_true = [0] * 4
y_pred = [0.5] * 4
log_loss(y_true, y_pred, labels=[0, 1]) # 0.6931471805599453

或者,如果 中存在多个唯一标签,则可以推断标签y_true

from sklearn.metrics import log_loss

y_true = [0, 0, 0, 0, 1]
y_pred = [0.2, 0.4, 0.3, 0.7, 0.99]
log_loss(y_true, y_pred) # 0.46093345183967405
于 2021-02-14T19:07:23.363 回答