Changelog

22.4.1

Features and Improvements

  • Pipeline now accepts a min_class_instances input argument to manually specify the number of examples every class must have when doing classification. The value for min_class_instances must be at least 2.

Bug fixes

  • Fixed a bug where IPython and ipywidgets are not properly guarded as an optional dependencies which makie them required.

  • Fixed a bug introduced by last dependency update which caused fbprophet to not produce forecasts with correct index type, when fbprophet was installed manually.

22.4.0

  • New feature dependence explainers

    • Added an Accumulated Local Effects (ALE) explainer

    • ALE explanations can be computed for up to two features if at least one is not categorical.

  • New explainer (What-IF)

    • Added a What-IF explainer for classification and regression tasks

    • What-IF explanations include exploration of the behavior of an ML model on a single sample as well as on the entire dataset.

    • Sample exploration (edit a sample value and see how the model predictions changes) and relationships’ visualization (how a feature is related to predictions or other features) are supported.

  • New feature importance aggregators

    • Added ALFI (Aggregate Local Feature Importance) that gives a visual summary of multiple local explanations.

  • New local feature importance explainer

    • Added support for surrogate-based (LIME+) local feature importance explainers

Bug fixes

  • Import failure due to CUDA: The package no longer crashes when imported on a machine with CUDA installed.

  • Fixed a bug where TorchMLPClassifier would fail when trying to predict a single instance.

  • Fixed a bug where OracleAutoMLx_Forecasting.ipynb would fail if visualization packages were not already installed.

  • Fixed a bug that caused the pipeline.transform to raise an exception if a single row was passed.

  • Explanation documentation

    • Our documentation website (http://automl.oraclecorp.com/) now includes documentation for the explanation objects returned by our explainers.

  • Enhanced performance of local feature importance explainers to address long running times.

  • Improve visualization of facet for the columns with cardinality equal to 1 by selecting the bars’ width and pads properly.

22.3.0

Features and Improvements

  • New Explainer

    • Added support for KernelSHAP (a new feature importance tabulator), which provides fast approximations for the Shapley feature importance method.

  • Support ARM architecture ( aarch64 )

    • Release platform-specific wheel file for ARM machines.

Miscellaneous

  • Clarified documentation on the accepted data formats for input datasets and added a more meaningful corresponding error message.

22.2.0

Features and Improvements

  • New profiler

    • Profiler tracks CPU and memory utilization

  • Timeseries forecasting pipeline

    • Added the support for multivariate datasets

    • Added the support for exogenous variables

    • Enhanced heteroskedasticity detection technique

    • Applied Box-Cox transform-inverse_transform with params determined via MLE to handle heteroskedasticity

  • Explainers / MLX integration

    • New global text explainer

      • Added support

    • New feature importance attribution explainers

      • Added several local and global feature importance explainers, including permutation importance, exactly Shapley, and SHAP-PI.

      • Includes support for classification, regression and anomaly detection

      • Explainers can be configured to explain the importance of features to any model (explanation_type=’observational’) as well as for a particular model (explanation_type=’interventional’).

      • Observational explanations are supported for all tasks; interventional explanations are only supported for classification and regression.

    • New feature dependence explainers

      • Added a partial dependence plot (PDP) and individual conditional expectations (ICE) explainer

      • PDP explanations include vizualization support for up to 4 dimensions. PDPs in higher dimension can be returned as dataframes.

  • Unsupervised Anomaly Detection

    • Added N-1 Experts: a new experimental metric for UAD Model Selection

  • Documentation

    • Added the description of init function of the automl to documentation

    • Cleaned up documentation for more consistency among different sections and added cross-references

Bug fixes

  • Timeseries forecasting pipeline

    • Statsmodel exception for some frequencies, users are now able to pass in timeperiod as a parameter

  • Preprocessing

    • Datetime preprocessor

      • Fixed the bug regarding column expansion and None/Null/Nan values

    • Standard preprocessor refitting

      • The standard preprocessor used to first be fit on a subsample of the training set, and then re-fit at the very end of the pipeline using the full training set. This occasionaly resulted in a different number of engineered features being produced. As a result, the features identified during the model selection module could no longer exist. The standard preprocessor is now fit only once.

  • ONNX predictions inconsistency

    • Changed the ONNX conversion function to reduce the difference between the ONNX dumped model and the original pipeline object predictions

    • Improved ONNX conversion runtime

    • ONNX conversion only require now a sample from the training or test set as input. This sample is used to infer the final types and shapes

Possibly breaking changes

  • Removed matplotlib as a dependency of the AutoMLx package

    • Forecasting predictions can now instead be visualized only using plotly using the same interface as before, automl.utils.plot_forecast. The alternate visualizations that were provided with plotly using automl.utils.plot_forecast_interactive has been removed.

  • Updated the AutoMLx package dependencies

    • All dependency versions have been reviewed and updated to address all known CVEs

    • A few unneeded dependencies have also been removed.