Releases: oegedijk/explainerdashboard
Releases · oegedijk/explainerdashboard
v0.4.1: minor bug fixes
Version 0.4.1
New Features
- added routes_pathname_prefix:str=None, requests_pathname_prefix:str=None, to ExplainerDashboard to help running the dashboard on e.g. Sagemaker
Bug Fixes
- Bug with plotly showticklabels=False changed to tickfont=dict(color="rgba(0, 0, 0, 0)")
- Imports now comply with dtreeviz v2 API
v0.4.0: bootstrap5, pipeline support and drops python 3.7, 3.8
Version 0.4.0: upgrade bootstrap5, drop python 3.6 and 3.7 support and improved pipeline support
- Upgrades the dashboard to
bootstrap5
anddash-bootstrap-components
v1
(which is also based on bootstrap5), this
may break older custom dashboards that included bootstrap5 components fromdash-bootstrap-components<1
- Support terminated for python
3.6
and3.7
as the latest version ofscikit-learn
(1.1) dropped support as well
and explainerdashboard depends on the improved pipeline feature naming inscikit-learn>=1.1
New Features
- Better support for large datasets through dynamic server-side index dropdown option selection. This means that not all indexes have to be stored client side in the browser, but
get rather automatically updated as you start typing. This should help especially with large datasets with large number of indexes.
This new server-side dynamic index dropdowns get activated if the number of rows >max_idxs_in_dropdown
(defaults to 1000). - Both sklearn and imblearn Pipelines are now supported with automated feature names generated, as long as all the transformers have a
.get_feature_names_out()
method - Adds
shap_kwargs
parameter to the explainers that allow you to pass additional kwargs to the shap values generating call, e.g.shap_kwargs=dict(check_addivity=False)
- Can now specify absolute path with
explainerfile_absolute_path
when dumpingdashboard.yaml
withdb.to_yaml(...)
Bug Fixes
- Suppresses warnings when extracting final model from pipeline that was not fitted on a dataframe.
Improvements
- No longer limiting werkzeug version due to upstream bug fixes of
dash
andjupyter-dash
Other Changes
- Some dropdowns now better aligned.
v0.3.8.2: reverses set_shap_values bug introduced in 0.3.8.1
Update __init__.py
v0.3.8.1: pipeline support + bugfixes
New Features
- Adds support for sklearn Pipelines that add new features (such as those including OneHotEncoder) as long as they support the new get_features_out() method. Not all estimators and transformers have this method implemented yet, but if all estimators in your pipeline do, then explainerdashboard will extract the final dataframe and the model from your pipelines. For now this does result in a lot of "this model was fitted on a numpy array but you provided a dataframe" warnings.
Bug Fixes
- Fixes a bug with sorting pdp features
- Pins werkzeug<=2.0.3 due to some new features that broke JupyterDash
- Changes use of pd.append that will be deprecated soon and is currently generated warnings.
v0.3.8: fixes pandas 1.40 and dash 2.0 compatibility
changes to dash v2 style imports
v0.3.7: set external shap values
Version 0.3.7
Breaking Changes
- downgrades dash-bootstrap-components to <1 due to a long list of breaking changes in dbc v1
New Features
- Export your ExplainerHub to static html with
hub.to_html()
andhub.save_html()
methods - Export your ExplainerHub to a zip file with static html exports with
to_zip()
method - Manually add pre-calculated shap values with
explainer.set_shap_values()
- Manually add pre-calculated shap interaction values with
explainer.set_shap_interaction_values()
Bug Fixes
- Fixed bug with What if tab components static html export (missing
</div>
)
v0.3.6.2: bump dash requirement to 1.20
Bumps dash requirement to 1.20 which introduced the new dcc.Download component used to download the static html from the dashboard.
v0.3.6: static html export!
Version 0.3.6:
New Features
- Static html export! You can export a static version of the dashboard using the default values
that you specified in the components or through kwargs withdashboard.to_html()
.- for custom components you need to define your own custom
to_html()
methods, see the documentation.
- for custom components you need to define your own custom
- A toggle is added to the dashboard header that allows you to download a static export
of the current live state of the dashboard. - adds a new toggle and parameter to the ConfusionmatrixComponent to either average
the percentage over the entire matrix, over the rows or over the columns.
Set normalize='all', normalize='true', or normalize='pred'. - also adds a
save_html(filename)
method to allExplainerComponents
andExplainerDashboard
ExplainerHub
adds a new parameterindex_to_base_route
:
Dispatches Hub to/base_route/index
instead of the default/
and/index
.
Useful when the host root is not reserved for the ExplainerHub
v0.3.6: static html export!
Version 0.3.6:
New Features
- Static html export! You can export a static version of the dashboard using the default values
that you specified in the components or through kwargs withdashboard.to_html()
.- for custom components you need to define your own custom
to_html()
methods, see the documentation.
- for custom components you need to define your own custom
- A toggle is added to the dashboard header that allows you to download a static export
of the current live state of the dashboard. - adds a new toggle and parameter to the ConfusionmatrixComponent to either average
the percentage over the entire matrix, over the rows or over the columns.
Set normalize='all', normalize='true', or normalize='pred'. - also adds a
save_html(filename)
method to allExplainerComponents
andExplainerDashboard
ExplainerHub
adds a new parameterindex_to_base_route
:
Dispatches Hub to/base_route/index
instead of the default/
and/index
.
Useful when the host root is not reserved for the ExplainerHub
v0.3.5: skorch support, simplified dashboard and feature descriptions
New Features
- adds support for
PyTorch
Neural Networks! (as long as they are wrapped byskorch
) - adds
SimplifiedClassifierComposite
andSimplifiedRegressionComposite
toexplainerdashboard.custom
- adds flag
simple=True
to load these simplified one page dashboards:ExplainerDashboard(explainer, simple=True)
- adds support for visualizing trees of
ExtraTreesClassifier
andExtraTreesRegressor
- adds
FeatureDescriptionsComponent
toexplainerdashboard.custom
and the Importances tab - adds possibility to dynamically add new dashboards to running ExplainerHub using
/add_dashboard
route
withadd_dashboard_route=True
(will only work if you're running the Hub as a single worker/node though!)
Improvements
ExplainerDashboard.to_yaml("dashboards/dashboard.yaml", dump_explainer=True)
will now dump the explainer in the correct subdirectory (and also default
to explainer.joblib)- Interactions tab automatically excluded for linear models