- adding the support for calculating kernel SHAP values via
predict_parts()
function
- breaking change: change the name of
loss_yardstick()
toget_loss_yardstick()
andloss_default()
toget_loss_default()
- add
loss_one_minus_accuracy()
andget_loss_one_minus_accuracy()
(#535)
- added implementation of aSHAP (aggregated SHAP) and waterfall plot (#519)
- adding a new system for default color schemes (#541)
- added
cross_entropy
as model performance measure to multilabel settings #542
- removed the
yardstick
dependency - new vignette added 'How to use DALEX with the yardstick package?'
- new datasets from World Happiness Report:
happiness_test
andhappiness_train
(#513) - new datasets from COVID morality:
covid_summer
andcovid_spring
(#513)
- changed URLs in the DESCRIPTION as requested in (#484)
- Fix model_info documentation (#498)
- Support for yardstic metrics (#495)
- Changed default in
explain(colorize=)
according to (#473) - Added explain/yhat support for
partykit
(#438) explain()
warns if target has more than two values for classification (#418)
- The
plot.model_performance_roc
,loss_one_minus_auc
andmodel_performance_auc
functions are rewritten to handle repeated predictions (#442)
- The
plot
function works for list of explanations (if possible) (#424)
- Order of explainer labels in different plots is the same. To get to this point, orders in
plot.model_performance(..., geom = "histogram" & "boxplot")
are reversed (#400) - Fixed multiclass explainer when data has one column (#405)
- Now explainer handles R functions (#396)
predict_parts
function handles theN
argument natively (#394)
- All encouters of
nieghbour(s)
(EN-spelling) were replaced withneighbor(s)
(US-spelling) for the consistency and backword compatibility. - Fixed bug when
predict_diagnostics
raised error ifneighbor
value was higer thannrow(explainer$data)
.
- Added new parameter (
predict_function_target_column
) toexplain
function that allows specifying positive class in binary classification tasks (#250). - Fixed
model_diagnostics()
returning an error whendata
ismatrix
(#355)
- Fixed R package not working with Python Explainer (#318)
- Fixed
model_diagnostics()
returning an error wheny_hat
orresiduals
is ofarray
class (#319) - Fixed grid lines in
theme_drwhy
on Windows - Fixed logical values in y rising unnecessery warnings for classification task (#336)
plot.predict_diagnostics
now passess ellipsis toplot.ceteris_paribus_explainer
- This version requires
iBreakDown v1.3.1
andingredients v1.3.1
- Fixed
plot.predict_parts
andplot.model_profile
(#277). - Fixed
plot.model_profile
for multiple profiles (#237). - External tests for not suggested packages added to gh-actions (#237).
- Extended and refreshed documentation (#237).
- All dontrun statements changed to donttest according to CRAN policy.
- Added value for
s
parameter inyhat.glmnet
andyhat.cv.glmnet
. - Fixed
model_diagnostics
passing wrong arguments to residual_function. - Fixed aesthetic for
hist
geometry inplot.model_performance
using wrong arugments. model_performance
will not work ifmodel_info$type
isNULL
.- Corrected description of
N
inmodel_parts
(#287). - New warning messages for
y
parameter inexplain
function. - Solved bug in
yhat.ranger
causingpredicts_parts
not to plot correctly when task is multiclass. variable_effect
is now deprecated
- fixed typo in
predict_parts_oscillations_emp
- rewrite tests
- added
predict_parts
class to objects andplot.predict_parts
function - added
model_parts
class to objects andplot.model_parts
function - plot parameters added to the documentation
- Now in the
predict_profile
function one can specify how grid points shall be calculated, seevariable_splits_type
(#267). - The
predict_part
function has two new options for type:oscillations_uni
andoscillations_emp
(#267). - The
plot.model_performance
function has a newgeom="prc"
for Precision Recall curve (#273).
DALEX
now fully supports multiclass classification.explain()
will use new residual function (1 - true class probability) if multiclass classification is detected.model_performance()
now support measures for multiclass classification.- Remove
ggpubr
from suggests. lossFunction
argument is now deprecated inplot.model_performance()
. Use theloss_function
argument.model_profile
color changed tocolors_discrete_drwhy(1)
which impacts the color of the line inplot.model_profile
loss_name
attribute added to loss functions. It will be passed to plot function for objects created withmodel_parts
.
- fixed tests and WARNINGs on CRAN
model_profile
for Accumulated Local rofiles by default use centering (center = TRUE
)- deprecate
n_sample
argument inmodel_parts
(now it'sN
) (#175)
ingredients
andiBreakDown
are now imported by DALEX
- updated title for
plot.model_performance
(#160). - in
explain
removed check related to duplicated target variable (#164).
variable_profile
callsingredients::ceteris_paribus
(#131).variable_response
andfeature_response
moved tovariable_effect
and now it callsingredients::partial_dependency
(#131).prediction_breakdown
moved tovariable_attribution
and now it callsiBreakDown::break_down
(#131).- updated
variable_importance
, not it calls theingredients::variable_importance
(#131). - updated
model_performance
(#130). - added
yhat
forlrm
models fromrms
package theme_drwhy
has now left aligned title and subtitle.residuals_distribution
calculates now diagnostic plots based on residuals (#143).model_performance
calculates several metrics for classification and regression models (#146).plot.model_performance
now supports ROC charts, LIFT charts, Cummulative Gain charts, histograms, boxplots and ecdfresiduals_distributon
is nowindividual_diagnostics
and produces objects of the classindividual_diagnostics_explainers
plot.individual_diagnostics_explainers
now plots objects of the classindividual_diagnostics_explainers
yhat
for caret models now returns matrix instead of data.framemodel_diagnostics
new function that plots residuals againes selected variable- names of functions are changed to be compliant with latest version of the XAI pyramide
- updated
titanic_imputed
(#113). - added
weights
to the explainer. Note that not all explanations know how to handle weights (#118). yhat()
andmodel_info()
now support models created withgbm
package.
- new argument
colorize
in theexplain()
as requested in (#112). - new generic function
model_info()
. It will extract basic irnformation like model package nam version and task type. (#109, #110) - new functions
update_data()
andupdate_label()
. (#114))
- new dataset
titanic_imputed
as requested in (#104). - the
explain()
function now detects if target variabley
is present in thedata
as requested in (#103). - the DALEX GitHub repository is transfered from
pbiecek/DALEX
to ModelOriented/DALEX.
- Examples updated. Now they use only datasets available from DALEX.
- yhat.H2ORegressionModel and yhat.H2OBinomialModel moved to (DALEXtra) and merged into explain_h2o() function.
- yhat.WrappedModelmoved to (DALEXtra) and merged as explain_mlr() function.
- Wrapper for scikit-learn models restored in (DALEXtra) package.
- loss_one_minus_auc function added to loss_functions.R. It uses 1-auc to compute loss. Function created by Alicja Gosiewska.
- Extension for DALEX avaiable at (DALEXtra)
- the
explain()
function is more verbose. Withverbose = TRUE
(default) it prints detailed information about elements of an explainer (#95).
- new color schemes:
colors_breakdown_drwhy()
,colors_discrete_drwhy()
andcolors_diverging_drwhy()
. - in this version the
scikitlearn_model()
is removed as it is not working with python 2.7
- New support for scikit-learn models via
scikitlearn_model()
- New
yhat
functions formlr
,h2o
andcaret
packages (added by Szymon).
plot.variable_importance_explainer()
has nowdesc_sorting
argument. If FALSE then variable importance will be sorted in an increasing order (#41).
ingredients
andiBreakDown
are added to additional features (#72).feature_response()
andvariable_response()
are marked as Deprecated. It is suggested to useingredients::partial_dependency()
,ingredients::accumulated_dependency()
instead (#74).variable_importance()
is marked as Deprecated. It is suggested to useingredients::feature_importance()
instead (#75).prediction_breakdown()
is marked as Deprecated. It is suggested to useiBreakDown::break_down()
oriBreakDown::shap()
instead (#76).
- updated filenames
pdp
,factorMerger
andALEPlot
are going toSuggested
. (#60). In next releases they will be deprecated.- added
predict
function that calls thepredict_function
hidden in theexplainer
object. (#58).
- the
titanic
dataset is copied fromstablelearner
package. Some features are transformed (someNA
replaced with0
, more numeric features).
DALEX
is being prepared for tighter integration withiBreakDown
andingredients
.- temporally there is a duplicated
single_variable
andsingle_feature
- Added new
theme_drwhy()
. - New arguments in the
plot.variable_importance_explainer()
. Namelybar_width
with widths of bars andshow_baseline
if baseline shall be included in these plots. - New skin in the
plot.variable_response_explainer()
. - New skin in the
plot.prediction_breakdown_explainer()
.
- Test datasets are now named
apartments_test
andHR_test
- For binary classification we return just a second column. NOTE: this may cause some unexpected problems with code dependend on defaults for DALEX 0.2.6.
- New versions of
yhat
forranger
andsvm
models.
- Residual distribution plots for model performance are now more legible when multiple models are plotted. The styling of plot and axis titles have also been improved (@kevinykuo).
- The defaults of
single_prediction()
are now consistent withbreakDown::broken()
. Specifically,baseline
is now0
by default instead of"Intercept"
. The user can also specify thebaseline
and other arguments by passing them tosingle_prediction
(@kevinykuo, #39). WARNING: Change in the default value ofbaseline
. - New
yhat.*
functions help to handle additional parameters to differentpredict()
functions. - Updated
CITATION
info
- New dataset
HR
andHRTest
. Target variable is a factor with three levels. Is used in examples for classification. - The
plot.model_performance()
has nowshow_outliers
parameter. Set it to anything >0 and observations with largest residuals will be presented in the plot. (#34)
- Small fixes in
variable_response()
to better support ofgbm
models (c8393120ffb05e2f3c70b0143c4e92dc91f6c823). - Better title for
plot_model_performance()
(e5e61d0398459b78ea38ccc980c4040fd853f449). - Tested with
breakDown
v 0.1.6.
- The
single_variable() / variable_response()
function usespredict_function
fromexplainer
(#17)
- The
explain()
function convertstibbles
todata.frame
when specified asdata
argument (#15) - The default generic
explain.default()
should help whenexplain()
fromdplyr
is loaded afterDALEX
(#16)
- 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 ifn_sample
is negativeplot_model_performance()
uses ecdf or boxplots (depending ongeom
parameter).
- Function
single_variable()
supports factor variables as well (with the use offactorMerger
package). Remember to usetype='factor'
when playing with factors. (#10) - Change in the function
explain()
. Old version has an argumentpredict.function
, now it'spredict_function
. New name is more consistent with other arguments. (#7) - New vigniette for
xgboost
model (#11)
- Support for global model structure explainers with
variable_dropout()
function
- DALEX package is now public
explain()
function implementedsingle_prediction()
function implementedsingle_variable()
function implemented