Descriptive mAchine Learning EXplanations

Machine Learning models are widely used and have various applications in classification or regression tasks. Due to increasing computational power, availability of new data sources and new methods, ML models are more and more complex. Models created with techniques like boosting, bagging of neural networks are true black boxes. It is hard to trace the link between input variables and model outcomes. They are used because of high performance, but lack of interpretability is one of their weakest sides. In many applications we need to know, understand or prove how input variables are used in the model and what impact do they have on final model prediction. DALEX2 is a collection of tools that help to understand how complex predictive models are working. DALEX2 is a part of DrWhy universe for tools for Explanation, Exploration and Visualisation for Predictive Models.


DALEX2 0.9

  • DALEX2 forked from DALEX package. The primary goal was to reduce number of dependencies and make the architecture of the whole solution more elastic. Individual explainers are moved to separate packages while DALEX2 serves only as a factory for explainers.
  • changed names of datasets, e.g. HRTest -> HR_test (#1)

DALEX 0.2.5

  • The defaults of single_prediction() are now consistent with breakDown::broken(). Specifically, baseline is now 0 by default instead of "Intercept". The user can also specify the baseline and other arguments by passing them to single_prediction. (#39) WARNING: Change in the default value of baseline.
  • New yhat.* functions help to handle additional parameters to different predict() functions.

DALEX 0.2.4

  • New dataset HR and HRTest. Target variable is a factor with three levels. Is used in examples for classification.
  • The plot.model_performance() has now show_outliers parameter. Set it to anything >0 and observations with largest residuals will be presented in the plot. (#34)

DALEX 0.2.3

  • Small fixes in variable_response() to better support of gbm models (c8393120ffb05e2f3c70b0143c4e92dc91f6c823).
  • Better title for plot_model_performance() (e5e61d0398459b78ea38ccc980c4040fd853f449).
  • Tested with breakDown v 0.1.6.

DALEX 0.2.2

  • The single_variable() / variable_response() function uses predict_function from explainer (#17)

DALEX 0.2.1

  • The explain() function converts tibbles to data.frame when specified as data argument (#15)
  • The default generic explain.default() should help when explain() from dplyr is loaded after DALEX (#16)

DALEX 0.2.0

  • New names for some functions: model_performance(), variable_importance(), variable_response(), outlier_detection(), prediction_breakdown(). Old names are now deprecated but still working. (#12)
  • A new dataset apartments - will be used in examples
  • variable_importance() allows work on full dataset if n_sample is negative
  • plot_model_performance() uses ecdf or boxplots (depending on geom parameter).

DALEX 0.1.8

  • Function single_variable() supports factor variables as well (with the use of factorMerger package). Remember to use type='factor' when playing with factors. (#10)
  • Change in the function explain(). Old version has an argument predict.function, now it's predict_function. New name is more consistent with other arguments. (#7)
  • New vigniette for xgboost model (#11)

DALEX 0.1.1

  • Support for global model structure explainers with variable_dropout() function


  • DALEX package is now public
  • explain() function implemented
  • single_prediction() function implemented
  • single_variable() function implemented

Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.


0.9 by Przemyslaw Biecek, 2 years ago

Report a bug at

Browse source code at

Authors: Przemyslaw Biecek [aut, cre]

Documentation:   PDF Manual  

GPL license

Suggests knitr, randomForest, tibble, testthat

See at CRAN