There is a newer version of the record available.

Published February 19, 2022 | Version 1.4
Software Open

Yellowbrick v1.4

Description

Yellowbrick is an open source, pure Python project that extends the scikit-learn API with visual analysis and diagnostic tools. The Yellowbrick API also wraps matplotlib to create publication-ready figures and interactive data explorations while still allowing developers fine-grain control of figures. For users, Yellowbrick can help evaluate the performance, stability, and predictive value of machine learning models and assist in diagnosing problems throughout the machine learning workflow.

This version primarily repairs the dependency issues we faced with scipy 1.6, scikit-learn 0.24 and Python 3.6 (or earlier). As part of the rapidly changing Python library landscape, we’ve been forced to react quickly to dependency changes, even where those libraries have been responsibly issuing future and deprecation warnings.

Major Changes:

  • Upgrade dependencies to support sklearn v1.0, Numpy 1.20+, Scipy 1.6, nltk 3.6.7, and Matplotlib 3.4.1

  • Implement new set_params and get_params on ModelVisualizers to ensure wrapped estimator is being correctly accessed via the new Estimator methods.

  • Fix the test dependencies to prevent variability in CI (must periodically review dependencies to ensure we’re testing what our users are experiencing).

  • Change model param to estimator param to ensure that Visualizer arguments match their property names so that inspect works with get and set params and other scikit-learn utility functions.

Minor Changes:

  • Improved argmax handling in DiscriminationThreshold Visualizer

  • Improved error handling in FeatureImportances Visualizer

  • Gave option to remove colorer from ClassificationReport Visualizer

  • Allowed for more flexible KElbow colors that use default palette by default

  • Import scikit-learn private API _safe_indexing without error.

  • Remove any calls to set_params in Visualizer __init__ methods.

  • Modify test fixtures and baseline images to accommodate new sklearn implementation

  • Temporarily set the numpy dependency to be less than 1.20 because this is causing Pickle issues with joblib and umap

  • Add shuffle=True argument to any CV class that uses a random seed.

  • Set our CI matrix to Python and Miniconda 3.7 and 3.8

Bugs:

  • Fixed score label display in PredictionError Visualizer

  • Fixed axes limit in PredictionError Visualizer

  • Fixed KElbowVisualizer to handle null cluster encounters

  • Fixed broken url to pytest fixtures

  • Fixed random_state to be in sync with PCA transformer

  • Fixed the inability to place FeatureCorrelations into subplots

  • Fixed hanging printing impacting model visualizers

  • Fixed error handling when decision function models encounter binary data

  • Fixed missing code in README.md

Infrastructure/Housekeeping/documentation

  • Updated status badges for build result and code coverage

  • Removed deprecated pytest-runner from testing

  • Replaced Travis with Github Actions

  • Changed our master branch to the main branch

  • Created a release issue template

  • Updated our CI to test Python 3.8 and 3.9

  • Managed test warnings

  • Adds .gitattributes to fix handle white space changes

  • Updated to use add_css_file for documentation because of deprecation of add_stylesheet

  • Added a Sphinx build to GitHub Actions for ensuring that the docs build correctly

  • Switched to a YB-specific data lake for datasets storage

Files

yellowbrick-1.4.zip

Files (59.6 MB)

Name Size Download all
md5:a7e282a2cc3da60dda8edad77a49fa22
29.5 MB Download
md5:0596dc4006c6ec940724a13c87e3ebd5
30.1 MB Preview Download

Additional details