Catalog PyPI
Back to packageRELEASE DETAILS

0.0.4

PyPI

affectlog

Trustworthy Machine Learning Assessment

Published7 Jul 2024
Direct dependencies16
Transitive dependenciesNot calculated

README

Version 0.0.4 documentation

AffectLog

AffectLog: Trustworthy Machine Learning Assessment

Python-check Supported Python
versions PyPI version Downloads

Overview

Unverified black box models are destined for failure. Lack of transparency breeds distrust, leading to neglect and eventual rejection.

The 'affectlog' package offers a suite of tools to dissect and explain the behavior of any predictive model. The central component, the Explainer object, wraps around the model, facilitating detailed exploration and comparison through various model-level and prediction-level explanations. Additionally, 'affectlog' provides methods for assessing fairness and interactive dashboards for comprehensive analysis.

Installation

The affectlog package is available on PyPI and conda-forge.

pip install affectlog -U

conda install -c conda-forge affectlog

One can install optional dependencies for all additional features using pip install affectlog[full].

Resources: https://affectlog.com/research.html
API reference: https://affectlog.com/research/api

## Authors
The authors of the affectlog package are:

AffectLog Developer Team
We welcome contributions: start by opening an issue on GitHub.

## Citation
If you use affectlog, please cite our research:
@article{AffectLog360,
  author  = {AffectLog Developer Team},
  title   = {AffectLog: Trustworthy Machine Learning
             with Interactive Explainability and Fairness in Python},
  journal = {Research- AffectLog360°},
  year    = {n.d.},
  url     = {https://affectlog.com/research.html}
}

Changelog

v0.0.2 (2024-02-28)

  • Dependencies:
    • Increased the dependencies to python>=3.8, pandas>=1.5.0, numpy>=1.23.3.
    • Added python==3.11 to CI.
  • TensorFlow/Keras Compatibility:
    • Added keras.src.models.sequential.Sequential to classes with a known predict_function; this fixes changes in keras==3.0.0 and tensorflow==2.16.0.
    • Turned off verbose in the predict method of tensorflow/keras models to address changes in tensorflow>=2.9.0.
  • Warnings and Errors:
    • Updated the warning occurring when specifying variable_splits.
    • Fixed an error occurring in predict_profile() when a DataFrame has MultiIndex in pandas>=1.3.0.
    • Fixed Gaussian norm() calculation in model_profile() from pi*sqrt(2) to sqrt(2*pi).
    • Fixed a warning (future error) between prepare_numerical_categorical() and prepare_x() with pandas==2.1.0.
    • Fixed a warning (future error) concerning the default value of numeric_only in pandas.DataFrame.corr() in affectlog.aspect.calculate_assoc_matrix().
  • Explainer Enhancements:
    • Improved Explainer object to better handle new dependencies and compatibility issues.

v0.0.1 (2023-12-16)

  • Precision and Recall Functions:
    • Added handling for ZeroDivisionError in precision and recall functions to prevent crashes.
  • Warnings and Alerts:
    • Added a warning to calculate_depend_matrix() when there is a variable with only one value to notify users of potential issues.
  • Exploratory Data Analysis (EDA) Plots:
    • Fixed missing EDA plots in the AL360 module, enhancing the visualization and analysis capabilities.
  • Predict Parts Explanations:
    • Fixed baseline positions in the subplots of the predict parts explanations: BreakDown, Shap, ensuring accurate visual representation.
  • Model and Predict Enhancements:
    • Improved model and predict functionalities to align with the latest updates and user feedback.

Downloads & popularity

Awaiting observations

No metric observations yet

Download counts and popularity will appear here as the collector receives them.

Declared dependencies 16

Native requirements
16 direct targetsNot calculated transitive count
Package / targetRequirementRelationship
setuptools
Environment
{
  "extras": "",
  "marker": null,
  "requires_python": ">=3.8",
  "evaluation": "NOT_EVALUATED"
}
setuptoolsruntime
pandas
Environment
{
  "extras": "",
  "marker": null,
  "requires_python": ">=3.8",
  "evaluation": "NOT_EVALUATED"
}
pandas>=1.5.0runtime
numpy
Environment
{
  "extras": "",
  "marker": null,
  "requires_python": ">=3.8",
  "evaluation": "NOT_EVALUATED"
}
numpy>=1.23.3runtime
scipy
Environment
{
  "extras": "",
  "marker": null,
  "requires_python": ">=3.8",
  "evaluation": "NOT_EVALUATED"
}
scipy>=1.6.3runtime
plotly
Environment
{
  "extras": "",
  "marker": null,
  "requires_python": ">=3.8",
  "evaluation": "NOT_EVALUATED"
}
plotly>=5.1.0runtime
tqdm
Environment
{
  "extras": "",
  "marker": null,
  "requires_python": ">=3.8",
  "evaluation": "NOT_EVALUATED"
}
tqdm>=4.61.2runtime
lime
Environment
{
  "extras": "",
  "marker": "extra == \"full\"",
  "requires_python": ">=3.8",
  "evaluation": "NOT_EVALUATED"
}
lime>=0.2.0.1; extra == "full"runtime
scikit-learn
Environment
{
  "extras": "",
  "marker": "extra == \"full\"",
  "requires_python": ">=3.8",
  "evaluation": "NOT_EVALUATED"
}
scikit-learn>=0.22.0; extra == "full"runtime
statsmodels
Environment
{
  "extras": "",
  "marker": "extra == \"full\"",
  "requires_python": ">=3.8",
  "evaluation": "NOT_EVALUATED"
}
statsmodels>=0.11.1; extra == "full"runtime
shap
Environment
{
  "extras": "",
  "marker": "extra == \"full\"",
  "requires_python": ">=3.8",
  "evaluation": "NOT_EVALUATED"
}
shap>=0.35.0; extra == "full"runtime
flask
Environment
{
  "extras": "",
  "marker": "extra == \"full\"",
  "requires_python": ">=3.8",
  "evaluation": "NOT_EVALUATED"
}
flask>=1.1.2; extra == "full"runtime
flask-cors
Environment
{
  "extras": "",
  "marker": "extra == \"full\"",
  "requires_python": ">=3.8",
  "evaluation": "NOT_EVALUATED"
}
flask-cors>=3.0.8; extra == "full"runtime
requests
Environment
{
  "extras": "",
  "marker": "extra == \"full\"",
  "requires_python": ">=3.8",
  "evaluation": "NOT_EVALUATED"
}
requests>=2.24.0; extra == "full"runtime
kaleido
Environment
{
  "extras": "",
  "marker": "extra == \"full\"",
  "requires_python": ">=3.8",
  "evaluation": "NOT_EVALUATED"
}
kaleido>=0.2.1; extra == "full"runtime
ppscore
Environment
{
  "extras": "",
  "marker": "extra == \"full\"",
  "requires_python": ">=3.8",
  "evaluation": "NOT_EVALUATED"
}
ppscore>=1.2.0; extra == "full"runtime
ipywidgets
Environment
{
  "extras": "",
  "marker": "extra == \"full\"",
  "requires_python": ">=3.8",
  "evaluation": "NOT_EVALUATED"
}
ipywidgets>=7.6.3; extra == "full"runtime

Distribution files

2 collected
affectlog-0.0.4-py3-none-any.whl

bdist_wheel · 6,012.16 KB · Python py3

Source file
affectlog-0.0.4.tar.gz

sdist · 5,957.41 KB · Python source

Source file

Repository

PENDING
affectlog360/affectlog

Shared repository data · GitHub

License detected in repository
Not collected

Metadata history

Meaningful changes
Current collected state Current

Observed since 20 Oct, 21:03 UTC

No superseded metadata states collected. Unchanged observations do not create new revisions.

Record identity

package_version:fe0184efd783ae16ad28c9fa43cbcd11ea63ff9eeffc0fc5a7e5effe94fa44d0

Other collected versions

View all collected versions →