Learn R Programming

MLPUGS (version 0.2.0)

validate_pugs: Assess multi-label prediction accuracy

Description

Computes a variety of accuracy metrics for multi-label predictions.

Usage

validate_pugs(object, y)

Arguments

object
A PUGS object generated by predict.ECC.
y
A matrix of the same form as the one used with ecc.

Value

A variety of multi-label classification accuracy measurements.

Examples

Run this code
x <- movies_train[, -(1:3)]
y <- movies_train[, 1:3]

model_glm <- ecc(x, y, m = 1, .f = glm.fit, family = binomial(link = "logit"))

predictions_glm <- predict(model_glm, movies_test[, -(1:3)],
.f = function(glm_fit, newdata) {

  # Credit for writing the prediction function that works
  # with objects created through glm.fit goes to Thomas Lumley
  
  eta <- as.matrix(newdata) %*% glm_fit$coef
  output <- glm_fit$family$linkinv(eta)
  colnames(output) <- "1"
  return(output)
  
}, n.iters = 10, burn.in = 0, thin = 1)

validate_pugs(predictions_glm, movies_test[, 1:3])

## Not run: 
# 
# model_c50 <- ecc(x, y, .f = C50::C5.0)
# predictions_c50 <- predict(model_c50, movies_test[, -(1:3)],
#                            n.iters = 10, burn.in = 0, thin = 1,
#                            .f = C50::predict.C5.0, type = "prob")
# validate_pugs(predictions_c50, movies_test[, 1:3])
#   
# model_rf <- ecc(x, y, .f = randomForest::randomForest)
# predictions_rf <- predict(model_rf, movies_test[, -(1:3)],
#                           n.iters = 10, burn.in = 0, thin = 1,
#                           .f = function(rF, newdata){
#                             randomForest:::predict.randomForest(rF, newdata, type = "prob")
#                           })
# validate_pugs(predictions_rf, movies_test[, 1:3])
# ## End(Not run)

Run the code above in your browser using DataLab