Skip to main content

A suite of visual analysis and diagnostic tools for machine learning.

Project description

Yellowbrick

Visualizers

Yellowbrick is a suite of visual analysis and diagnostic tools designed to facilitate machine learning with scikit-learn. The library implements a new core API object, the Visualizer that is an scikit-learn estimator — an object that learns from data. Similar to transformers or models, visualizers learn from data by creating a visual representation of the model selection workflow.

Visualizer allow users to steer the model selection process, building intuition around feature engineering, algorithm selection and hyperparameter tuning. For instance, they can help diagnose common problems surrounding model complexity and bias, heteroscedasticity, underfit and overtraining, or class balance issues. By applying visualizers to the model selection workflow, Yellowbrick allows you to steer predictive models toward more successful results, faster.

The full documentation can be found at scikit-yb.org and includes a Quick Start Guide for new users.

Visualizers

Visualizers are estimators — objects that learn from data — whose primary objective is to create visualizations that allow insight into the model selection process. In scikit-learn terms, they can be similar to transformers when visualizing the data space or wrap a model estimator similar to how the ModelCV (e.g. RidgeCV, LassoCV) methods work. The primary goal of Yellowbrick is to create a sensical API similar to scikit-learn. Some of our most popular visualizers include:

Classification Visualization

  • Classification Report: a visual classification report that displays a model's precision, recall, and F1 per-class scores as a heatmap
  • Confusion Matrix: a heatmap view of the confusion matrix of pairs of classes in multi-class classification
  • Discrimination Threshold: a visualization of the precision, recall, F1-score, and queue rate with respect to the discrimination threshold of a binary classifier
  • Precision-Recall Curve: plot the precision vs recall scores for different probability thresholds
  • ROCAUC: graph the receiver operator characteristic (ROC) and area under the curve (AUC)

Clustering Visualization

  • Intercluster Distance Maps: visualize the relative distance and size of clusters
  • KElbow Visualizer: visualize cluster according to the specified scoring function, looking for the "elbow" in the curve.
  • Silhouette Visualizer: select k by visualizing the silhouette coefficient scores of each cluster in a single model

Feature Visualization

  • Manifold Visualization: high-dimensional visualization with manifold learning
  • Parallel Coordinates: horizontal visualization of instances
  • PCA Projection: projection of instances based on principal components
  • RadViz Visualizer: separation of instances around a circular plot
  • Rank Features: single or pairwise ranking of features to detect relationships

Model Selection Visualization

  • Cross Validation Scores: display the cross-validated scores as a bar chart with the average score plotted as a horizontal line
  • Feature Importances: rank features based on their in-model performance
  • Learning Curve: show if a model might benefit from more data or less complexity
  • Recursive Feature Elimination: find the best subset of features based on importance
  • Validation Curve: tune a model with respect to a single hyperparameter

Regression Visualization

  • Alpha Selection: show how the choice of alpha influences regularization
  • Cook's Distance: show the influence of instances on linear regression
  • Prediction Error Plots: find model breakdowns along the domain of the target
  • Residuals Plot: show the difference in residuals of training and test data

Target Visualization

  • Balanced Binning Reference: generate a histogram with vertical lines showing the recommended value point to the bin data into evenly distributed bins
  • Class Balance: show the relationship of the support for each class in both the training and test data by displaying how frequently each class occurs as a bar graph the frequency of the classes' representation in the dataset
  • Feature Correlation: visualize the correlation between the dependent variables and the target

Text Visualization

  • Dispersion Plot: visualize how key terms are dispersed throughout a corpus
  • PosTag Visualizer: plot the counts of different parts-of-speech throughout a tagged corpus
  • Token Frequency Distribution: visualize the frequency distribution of terms in the corpus
  • t-SNE Corpus Visualization: uses stochastic neighbor embedding to project documents
  • UMAP Corpus Visualization: plot similar documents closer together to discover clusters

... and more! Yellowbrick is adding new visualizers all the time so be sure to check out our [examples gallery]https://github.com/DistrictDataLabs/yellowbrick/tree/develop/examples) — or even the develop branch — and feel free to contribute your ideas for new Visualizers!

Affiliations

District Data Labs NumFOCUS Affiliated Project

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

yellowbrick-1.2.tar.gz (16.8 MB view details)

Uploaded Source

Built Distributions

yellowbrick-1.2-py3-none-any.whl (269.5 kB view details)

Uploaded Python 3

yellowbrick-1.2-py2-none-any.whl (269.5 kB view details)

Uploaded Python 2

File details

Details for the file yellowbrick-1.2.tar.gz.

File metadata

  • Download URL: yellowbrick-1.2.tar.gz
  • Upload date:
  • Size: 16.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.6.5

File hashes

Hashes for yellowbrick-1.2.tar.gz
Algorithm Hash digest
SHA256 380b9775c9ad1880be55fab697a5d694823f9bc972bd7c2108553a11c7c8f252
MD5 c3b19b1ad281402399d0a7d3cff21413
BLAKE2b-256 b2be7b894da1794166579bf5194fa35ecc0170293691cdc22e076df47b444bc9

See more details on using hashes here.

File details

Details for the file yellowbrick-1.2-py3-none-any.whl.

File metadata

  • Download URL: yellowbrick-1.2-py3-none-any.whl
  • Upload date:
  • Size: 269.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.6.5

File hashes

Hashes for yellowbrick-1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 5268168df9dcb6cbcd66a1061689295ad39eb30372bee7b7cc0728e61cc715f0
MD5 ab0473d6e0a7a9a7dc50ae1edd56d4a0
BLAKE2b-256 1fadae6744ddb9c7053916bed95430152b9a41b7d410e16a1cc7cd744a611d90

See more details on using hashes here.

File details

Details for the file yellowbrick-1.2-py2-none-any.whl.

File metadata

  • Download URL: yellowbrick-1.2-py2-none-any.whl
  • Upload date:
  • Size: 269.5 kB
  • Tags: Python 2
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.6.5

File hashes

Hashes for yellowbrick-1.2-py2-none-any.whl
Algorithm Hash digest
SHA256 4bd29df714cae0e09de0d7e070db169410437d2bc110e10a1c1376d6fcc074f4
MD5 024d0e1dfa9d7a673eb0d9ca1011525d
BLAKE2b-256 84507e9a94a0ddc8788fee8d2049143e896193c8ba8328f702cb3e86219d0a7f

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page