Error Characteristic curves are a generalization of ROC curves. On the x axis of the plot there is an error tolerance and on the y axis there is a percentage of observations predicted within the given tolerance.

plot_rec(object, ...)

plotREC(object, ...)

## Arguments

object An object of class 'auditor_model_residual' created with model_residual function. Other 'auditor_model_residual' objects to be plotted together.

A ggplot object.

## Details

REC curve estimates the Cumulative Distribution Function (CDF) of the error

Area Over the REC Curve (REC) is a biased estimate of the expected error

## References

Bi J., Bennett K.P. (2003). Regression error characteristic curves, in: Twentieth International Conference on Machine Learning (ICML-2003), Washington, DC.

plot_roc, plot_rroc

## Examples

dragons <- DALEX::dragons[1:100, ]

# fit a model
model_lm <- lm(life_length ~ ., data = dragons)

# use DALEX package to wrap up a model into explainer
exp_lm <- DALEX::explain(model_lm, data = dragons, y = dragons$life_length)#> Preparation of a new explainer is initiated #> -> model label : lm (default) #> -> data : 100 rows 8 cols #> -> target variable : 100 values #> -> predict function : yhat.lm will be used (default) #> -> predicted values : numerical, min = 585.8311 , mean = 1347.787 , max = 2942.307 #> -> residual function : difference between y and yhat (default) #> -> residuals : numerical, min = -88.41755 , mean = -1.489291e-13 , max = 77.92805 #> A new explainer has been created! # validate a model with auditor library(auditor) mr_lm <- model_residual(exp_lm) plot_rec(mr_lm)plot(mr_lm, type = "rec") library(randomForest) model_rf <- randomForest(life_length~., data = dragons) exp_rf <- DALEX::explain(model_rf, data = dragons, y = dragons$life_length)#> Preparation of a new explainer is initiated
#>   -> model label       :  randomForest  (default)
#>   -> data              :  100  rows  8  cols
#>   -> target variable   :  100  values
#>   -> predict function  :  yhat.randomForest  will be used (default)
#>   -> predicted values  :  numerical, min =  770.8553 , mean =  1343.446 , max =  2465.784
#>   -> residual function :  difference between y and yhat (default)
#>   -> residuals         :  numerical, min =  -207.8857 , mean =  4.341221 , max =  432.6363
#> A new explainer has been created!mr_rf <- model_residual(exp_rf)
plot_rec(mr_lm, mr_rf)plot(mr_lm, mr_rf, type = "rec")