Set threshold of prediction object for classification or multilabel classification.
Creates corresponding discrete class response for the newly set threshold.
For binary classification: The positive class is predicted if the probability value exceeds the threshold.
For multiclass: Probabilities are divided by corresponding thresholds and the class with maximum resulting value is selected.
The result of both are equivalent if in the multi-threshold case the values are greater than 0 and sum to 1.
For multilabel classification: A label is predicted (with entry
TRUE) if a probability matrix entry
exceeds the threshold of the corresponding label.
(Prediction) with changed threshold and corresponding response.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
# create task and train learner (LDA) task = makeClassifTask(data = iris, target = "Species") lrn = makeLearner("classif.lda", predict.type = "prob") mod = train(lrn, task) # predict probabilities and compute performance pred = predict(mod, newdata = iris) performance(pred, measures = mmce) head(as.data.frame(pred)) # adjust threshold and predict probabilities again threshold = c(setosa = 0.4, versicolor = 0.3, virginica = 0.3) pred = setThreshold(pred, threshold = threshold) performance(pred, measures = mmce) head(as.data.frame(pred))
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.