Skip to main content

AI Verify Fairness Metrics Toolbox (FMT) for Regression contains a list of fairness metrics used to measure how resources (e.g. opportunities, food, loan, medical help) are allocated among the demographic groups (e.g. married male, married female) given a set of sensitive feature(s) (e.g. gender, marital status). This plugin is developed for regression models.

Project description

Algorithm - Fairness Metrics Toolbox for Regression

Description

  • The Fairness Metrics Toolbox (FMT) for Regression contains a list of fairness metrics used to measure how resources (e.g. opportunities, food, loan, medical help) are allocated among the demographic groups (e.g. married male, married female) given a set of sensitive feature(s) (e.g. gender, marital status). This plugin is developed for regression models.

License

  • Licensed under Apache Software License 2.0

Developers:

  • AI Verify

Installation

Each test algorithm can now be installed via pip and run individually.

pip install aiverify-fairness-metrics-toolbox-for-regression

Example Usage:

Run the following bash script to execute the plugin

#!/bin/bash

root_path="<PATH_TO_FOLDER>/aiverify/stock-plugins/user_defined_files"
python -m aiverify_fairness_metrics_toolbox_for_regression \
  --data_path $root_path/data/sample_reg_pipeline_data.sav \
  --model_path $root_path/pipeline/regression_tabular_donation \
  --ground_truth_path $root_path/data/sample_reg_pipeline_ytest_data.sav \
  --ground_truth donation \
  --model_type REGRESSION \
  --run_pipeline \
  --sensitive_features_list gender

If the algorithm runs successfully, the results of the test will be saved in an output folder.

Develop plugin locally

Assuming aiverify-test-engine has already been installed in the virtual environment, run the following bash script to install the plugin and execute a test:

#!/bin/bash

# setup virtual environment
python3 -m venv .venv
source .venv/bin/activate

# install plugin
cd aiverify/stock-plugins/aiverify.stock.fairness-metrics-toolbox-for-regression/algorithms/fairness_metrics_toolbox_for_regression/
pip install .

python -m aiverify_fairness_metrics_toolbox_for_regression --data_path  <data_path> --model_path <model_path> --ground_truth_path <ground_truth_path> --ground_truth <str> --model_type REGRESSION --run_pipeline --sensitive_features_list <list[str]>

Build Plugin

cd aiverify/stock-plugins/aiverify.stock.fairness-metrics-toolbox-for-regression/algorithms/fairness_metrics_toolbox_for_regression/
hatch build

Tests

Pytest is used as the testing framework.

Run the following steps to execute the unit and integration tests inside the tests/ folder

cd aiverify/stock-plugins/aiverify.stock.fairness-metrics-toolbox-for-regression/algorithms/fairness_metrics_toolbox_for_regression/
pytest .

Run using Docker

In the aiverify root directory, run the below command to build the docker image

docker build -t aiverify-fairness-metrics-toolbox-for-regression -f stock-plugins/aiverify.stock.fairness-metrics-toolbox-for-regression/algorithms/fairness_metrics_toolbox_for_regression/Dockerfile .

Run the below bash script to run the algorithm

#!/bin/bash
docker run \
    -v $(pwd)/stock-plugins/user_defined_files:/input \
    -v $(pwd)/stock-plugins/aiverify.stock.fairness-metrics-toolbox-for-regression/algorithms/fairness_metrics_toolbox_for_regression/output:/app/aiverify/output \
  aiverify-fairness-metrics-toolbox-for-regression \
  --data_path /input/data/sample_reg_pipeline_data.sav \
  --model_path /input/pipeline/regression_tabular_donation \
  --ground_truth_path /input/data/sample_reg_pipeline_ytest_data.sav \
  --ground_truth donation \
  --model_type REGRESSION \
  --run_pipeline \
  --sensitive_features_list gender

If the algorithm runs successfully, the results of the test will be saved in an output folder in the algorithm directory.

Tests

Pytest is used as the testing framework.

Run the following steps to execute the unit and integration tests inside the tests/ folder

docker run \
  --entrypoint python3 \
  -w /app/aiverify/stock-plugins/aiverify.stock.fairness-metrics-toolbox-for-regression/algorithms/fairness_metrics_toolbox_for_regression \
  aiverify-fairness-metrics-toolbox-for-regression \
  -m pytest .

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

Built Distribution

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

File details

Details for the file aiverify_fairness_metrics_toolbox_for_regression-2.2.0.tar.gz.

File metadata

File hashes

Hashes for aiverify_fairness_metrics_toolbox_for_regression-2.2.0.tar.gz
Algorithm Hash digest
SHA256 0b97cd879e648b808003bab485a67ca4155a56d19db7f94bf84a4a436f6eb501
MD5 050e28596ad0f3aba09d79a5398d49ea
BLAKE2b-256 047c1dc3abddf94057b0410522dd687512a2f56d45d74105a448b8ceac1fc14a

See more details on using hashes here.

File details

Details for the file aiverify_fairness_metrics_toolbox_for_regression-2.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for aiverify_fairness_metrics_toolbox_for_regression-2.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 095181b162c7558a630e74d3851dd59f907c4775a6130b24c4c2baf4d7d24c4f
MD5 e5ac87441bba7f3215a1a08fc2d55f49
BLAKE2b-256 550daff7b27135ebf3b8cb129cbf50bd04f9765ac90207bc45028902b5b04e76

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