plotD3_rroc {auditor} | R Documentation |
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.
plotD3_rroc(object, ..., scale_plot = FALSE)
object |
An object of class 'auditor_model_residual' created with |
... |
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. |
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}
.
a 'r2d3' object
Hernández-Orallo, José. 2013. "ROC Curves for Regression". Pattern Recognition 46 (12): 3395–3411.
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)