plotD3_rroc: Regression Receiver Operating Characteristic (RROC) in D3...

View source: R/plotD3_rroc.R

plotD3_rrocR Documentation

Regression Receiver Operating Characteristic (RROC) in D3 with r2d3 package.

Description

The basic idea of the ROC curves for regression is to show model asymmetry. The RROC is a plot where on the x-axis we depict total over-estimation and on the y-axis total under-estimation.

Usage

plotD3_rroc(object, ..., scale_plot = FALSE)

Arguments

object

An object of class 'auditor_model_residual' created with model_residual function.

...

Other 'auditor_model_residual' objects to be plotted together.

scale_plot

Logical, indicates whenever the plot should scale with height. By default it's FALSE.

Details

For RROC curves we use a shift, which is an equivalent to the threshold for ROC curves. For each observation we calculate new prediction: \hat{y}'=\hat{y}+s where s is the shift. Therefore, there are different error values for each shift: e_i = \hat{y_i}' - y_i

Over-estimation is calculated as: OVER= \sum(e_i|e_i>0).

Under-estimation is calculated as: UNDER = \sum(e_i|e_i<0).

The shift equals 0 is represented by a dot.

The Area Over the RROC Curve (AOC) equals to the variance of the errors multiplied by frac{n^2}{2}.

Value

a 'r2d3' object

References

Hernández-Orallo, José. 2013. "ROC Curves for Regression". Pattern Recognition 46 (12): 3395–3411.

See Also

plotD3_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
lm_audit <- audit(model_lm, data = dragons, y = dragons$life_length)

# validate a model with auditor
mr_lm <- model_residual(lm_audit)

# plot results
plotD3_rroc(mr_lm)

library(randomForest)
model_rf <- randomForest(life_length~., data = dragons)
rf_audit <- audit(model_rf, data = dragons, y = dragons$life_length)
mr_rf <- model_residual(rf_audit)
plotD3_rroc(mr_lm, mr_rf)


auditor documentation built on Nov. 2, 2023, 6:13 p.m.