mlr3measures (version 0.3.1)

logloss: Log Loss

Description

Classification measure defined as $$ -\frac{1}{n} \sum_{i=1}^n \log \left( p_i \right ) $$ where \(p_i\) is the probability for the true class of observation \(i\).

Usage

logloss(truth, prob, eps = 1e-15, ...)

Arguments

truth

(factor()) True (observed) labels. Must have the same levels and length as response.

prob

(matrix()) Matrix of predicted probabilities, each column is a vector of probabilities for a specific class label. Columns must be named with levels of truth.

eps

(numeric(1)) Probabilities are clipped to max(eps, min(1 - eps, p)). Otherwise the measure would be undefined for probabilities p = 0 and p = 1.

...

(any) Additional arguments. Currently ignored.

Value

Performance value as numeric(1).

Meta Information

  • Type: "classif"

  • Range: \([0, \infty)\)

  • Minimize: TRUE

  • Required prediction: prob

See Also

Other Classification Measures: acc(), bacc(), ce(), mauc_aunu(), mbrier()

Examples

Run this code
# NOT RUN {
set.seed(1)
lvls = c("a", "b", "c")
truth = factor(sample(lvls, 10, replace = TRUE), levels = lvls)
prob = matrix(runif(3 * 10), ncol = 3, dimnames = list(NULL, lvls))
prob = t(apply(prob, 1, function(x) x / sum(x)))
logloss(truth, prob)
# }

Run the code above in your browser using DataLab