Skip to main content

eazyml-counterfactual from EazyML family for counterfactual explanations, prescriptive analytics, and actionable insights to optimize predictive outcomes.

Project description

EazyML Responsible-AI: Counterfactual

Python PyPI package Code Style

EazyML

eazyml-counterfactual is a python package that helps users optimize predictive outcomes by generating counterfactual explanations. EazyML revolutionizes machine learning by introducing counterfactual inference, automating the process of identifying optimal changes to variables that shift outcomes from unfavorable to favorable. This approach overcomes the limitations of manual "what-if" analysis, enabling models to provide actionable, prescriptive insights alongside their predictions.

Designed for post-prediction analysis, this package answers questions like:

  • "What minimal changes to input features can reverse an unfavorable prediction?"
  • "How can I achieve a desired outcome by tweaking feature values?"

Features

  • Prescriptive Insights: Automatically recommend actionable steps to achieve desired outcomes by identifying optimal feature modifications.
  • Outcome Optimization: Calculates the likelihood of favorable outcomes and determines optimal adjustments to improve predictions while respecting user-defined constraints.
  • Flexible Feature Selection: Allows users to manually specify relevant features from the training dataset for counterfactual inference.
  • Custom Model Integration: Accepts pre-trained machine learning models and user-defined preprocessing steps for seamless inference.
  • Classification and Regression Support: Handles both classification and regression problems.

eazyml-counterfactual is ideal for scenarios like loan approvals, customer churn prevention, and healthcare treatment planning.`

Installation

User installation

The easiest way to install counterfactual package is using pip:

pip install -U eazyml-counterfactual

Dependencies

EazyML Counterfactual requires :

  • pandas
  • eazyml-automl
  • openpyxl
  • scikit-learn
  • scipy

Usage

Counterfactual inference can be applied by initializing the EazyML framework and obtaining actionable insights for new test data.

from eazyml_counterfactual import ez_init, ez_cf_inference

# Initialization: Sets up book-keeping and API access if required
_ = ez_init()

selected_features = ['feature1', 'feature2', 'feature3']
model_info = b"acacxaca"

variants = ['feature1', 'feature2']

# Configurable parameters for counterfactual inference
options = {
    "variants": variants,
    "outcome_ordinality": "1", 
    "train_data": train_file,   
}

# Selecting test record for inference
test_index_no = 0
# `pred_df` contains the test dataset with predicted probabilities
test_data = pred_df.loc[[test_index_no]]

result, optimal_transition_df = ez_cf_inference(
    test_data=test_data,
    outcome='outcome_column_name',
    selected_features=selected_features,
    model_info=model_info,  
    options=options
)

You can find more information in the documentation.

Useful links, other packages from EazyML family

  • Documentation

  • Homepage

  • If you have questions or would like to discuss a use case, please contact us here

  • Here are the other packages from EazyML suite:

    • eazyml-automl: eazyml-automl provides a suite of APIs for training, optimizing and validating machine learning models with built-in AutoML capabilities, hyperparameter tuning, and cross-validation.
    • eazyml-data-quality: eazyml-data-quality provides APIs for comprehensive data quality assessment, including bias detection, outlier identification, and drift analysis for both data and models.
    • eazyml-counterfactual: eazyml-counterfactual provides APIs for optimal prescriptive analytics, counterfactual explanations, and actionable insights to optimize predictive outcomes to align with your objectives.
    • eazyml-insight: eazyml-insight provides APIs to discover patterns, generate insights, and mine rules from your datasets.
    • eazyml-xai: eazyml-xai provides APIs for explainable AI (XAI), offering human-readable explanations, feature importance, and predictive reasoning.
    • eazyml-xai-image: eazyml-xai-image provides APIs for image explainable AI (XAI).

License

This project is licensed under the Proprietary License.


Maintained by EazyML
© 2025 EazyML. All rights reserved.

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

eazyml_counterfactual-0.0.56.tar.gz (8.8 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

eazyml_counterfactual-0.0.56-py2.py3-none-any.whl (9.2 MB view details)

Uploaded Python 2Python 3

File details

Details for the file eazyml_counterfactual-0.0.56.tar.gz.

File metadata

  • Download URL: eazyml_counterfactual-0.0.56.tar.gz
  • Upload date:
  • Size: 8.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.10.12

File hashes

Hashes for eazyml_counterfactual-0.0.56.tar.gz
Algorithm Hash digest
SHA256 20ec6efa1e9db91943ba331d8312753825bc2d7f0a23b02e816b4676acee52ad
MD5 65e01c5f383b7b3fcda1913366a7bdc7
BLAKE2b-256 7ac4a33bc0157a2f5b8d9ab140fd0a46900bf2852d2526a0e553d7f53c023632

See more details on using hashes here.

File details

Details for the file eazyml_counterfactual-0.0.56-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for eazyml_counterfactual-0.0.56-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 d02069b43d4fe794c1321e2deab99753f62070bfdf37861a0df04cca2d7fc398
MD5 e96126b4bce9a6ce49d4333881129828
BLAKE2b-256 38f9021eccee31a2e6dbf556be85963e4a305ff8090eaa1d372f2de2219b7b95

See more details on using hashes here.

Supported by

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