├── .github └── workflows │ └── python-package.yml ├── .gitignore ├── .readthedocs.yaml ├── CONTRIBUTING.md ├── LICENSE.txt ├── Makefile ├── Pipfile ├── Pipfile.lock ├── README.rst ├── docs ├── .gitignore ├── Makefile ├── _static │ └── css │ │ └── project-template.css ├── _templates │ ├── class.rst │ └── function.rst ├── api.rst ├── conf.py ├── img │ ├── plot_drift_values.png │ └── plot_prediction_drift.png ├── index.rst ├── make.bat ├── model_support.rst ├── plot_api.rst └── quickstart.rst ├── examples ├── .gitignore ├── amesHousing_LinearRegression_ModelDriftExplainer.ipynb ├── boston_CatBoost_ModelDriftExplainer.ipynb ├── boston_OutputDriftDetector.ipynb ├── boston_XGBoost_ModelDriftExplainer.ipynb ├── breast_cancer_CatBoost_ModelDriftExplainer.ipynb ├── breast_cancer_LogisticRegression_ModelDriftExplainer.ipynb ├── breast_cancer_OutputDriftDetector.ipynb ├── breast_cancer_XGBoost_ModelDriftExplainer.ipynb ├── ieee_fraud_no_data_drift.ipynb ├── ieee_fraud_simulated_concept_drift_card6.ipynb ├── ieee_fraud_simulated_covariate_shift_card6.ipynb ├── iris_CatBoost_ModelDriftExplainer.ipynb ├── iris_LogisticRegression_ModelDriftExplainer.ipynb ├── iris_OutputDriftDetector.ipynb └── iris_XGBoost_ModelDriftExplainer.ipynb ├── pyproject.toml ├── setup.py └── src └── cinnamon ├── __init__.py ├── common ├── __init__.py ├── constants.py ├── dev_utils.py ├── logging.py ├── math_utils.py └── stat_utils.py ├── drift ├── __init__.py ├── abstract_drift_explainer.py ├── adversarial_drift_explainer.py ├── drift_utils.py ├── model_drift_explainer.py ├── output_drift_detector.py ├── tests │ ├── __init__.py │ ├── test_LinearRegression_ModelDriftExplainer.py │ ├── test_LogisticRegression_ModelDriftExplainer.py │ ├── test_adversarial_drift_explainer.py │ ├── test_catboost_model_drift_explainer.py │ ├── test_output_drift_detector.py │ └── test_xgboost_model_drift_explainer.py └── tree_ensemble_drift_explainer.py ├── model_parser ├── __init__.py ├── abstract_model_parser.py ├── abstract_tree_ensemble_parser.py ├── catboost_parser.py ├── model_agnostic_model_parser.py ├── single_tree.py ├── tests │ └── .gitignore └── xgboost_parser.py ├── plot ├── __init__.py └── drift │ ├── __init__.py │ ├── plot_drift.py │ ├── plot_drift_importance.py │ ├── plot_tree_drift.py │ └── plot_utils.py └── report ├── __init__.py ├── drift_report_generator.py ├── drift_report_template.pmd └── i_report_generator.py /.github/workflows/python-package.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/.github/workflows/python-package.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/.gitignore -------------------------------------------------------------------------------- /.readthedocs.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/.readthedocs.yaml -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/CONTRIBUTING.md -------------------------------------------------------------------------------- /LICENSE.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/LICENSE.txt -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/Makefile -------------------------------------------------------------------------------- /Pipfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/Pipfile -------------------------------------------------------------------------------- /Pipfile.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/Pipfile.lock -------------------------------------------------------------------------------- /README.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/README.rst -------------------------------------------------------------------------------- /docs/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/docs/.gitignore -------------------------------------------------------------------------------- /docs/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/docs/Makefile -------------------------------------------------------------------------------- /docs/_static/css/project-template.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/docs/_static/css/project-template.css -------------------------------------------------------------------------------- /docs/_templates/class.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/docs/_templates/class.rst -------------------------------------------------------------------------------- /docs/_templates/function.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/docs/_templates/function.rst -------------------------------------------------------------------------------- /docs/api.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/docs/api.rst -------------------------------------------------------------------------------- /docs/conf.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/docs/conf.py -------------------------------------------------------------------------------- /docs/img/plot_drift_values.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/docs/img/plot_drift_values.png -------------------------------------------------------------------------------- /docs/img/plot_prediction_drift.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/docs/img/plot_prediction_drift.png -------------------------------------------------------------------------------- /docs/index.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/docs/index.rst -------------------------------------------------------------------------------- /docs/make.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/docs/make.bat -------------------------------------------------------------------------------- /docs/model_support.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/docs/model_support.rst -------------------------------------------------------------------------------- /docs/plot_api.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/docs/plot_api.rst -------------------------------------------------------------------------------- /docs/quickstart.rst: -------------------------------------------------------------------------------- 1 | .. include:: ../README.rst 2 | -------------------------------------------------------------------------------- /examples/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/examples/.gitignore -------------------------------------------------------------------------------- /examples/amesHousing_LinearRegression_ModelDriftExplainer.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/examples/amesHousing_LinearRegression_ModelDriftExplainer.ipynb -------------------------------------------------------------------------------- /examples/boston_CatBoost_ModelDriftExplainer.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/examples/boston_CatBoost_ModelDriftExplainer.ipynb -------------------------------------------------------------------------------- /examples/boston_OutputDriftDetector.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/examples/boston_OutputDriftDetector.ipynb -------------------------------------------------------------------------------- /examples/boston_XGBoost_ModelDriftExplainer.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/examples/boston_XGBoost_ModelDriftExplainer.ipynb -------------------------------------------------------------------------------- /examples/breast_cancer_CatBoost_ModelDriftExplainer.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/examples/breast_cancer_CatBoost_ModelDriftExplainer.ipynb -------------------------------------------------------------------------------- /examples/breast_cancer_LogisticRegression_ModelDriftExplainer.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/examples/breast_cancer_LogisticRegression_ModelDriftExplainer.ipynb -------------------------------------------------------------------------------- /examples/breast_cancer_OutputDriftDetector.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/examples/breast_cancer_OutputDriftDetector.ipynb -------------------------------------------------------------------------------- /examples/breast_cancer_XGBoost_ModelDriftExplainer.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/examples/breast_cancer_XGBoost_ModelDriftExplainer.ipynb -------------------------------------------------------------------------------- /examples/ieee_fraud_no_data_drift.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/examples/ieee_fraud_no_data_drift.ipynb -------------------------------------------------------------------------------- /examples/ieee_fraud_simulated_concept_drift_card6.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/examples/ieee_fraud_simulated_concept_drift_card6.ipynb -------------------------------------------------------------------------------- /examples/ieee_fraud_simulated_covariate_shift_card6.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/examples/ieee_fraud_simulated_covariate_shift_card6.ipynb -------------------------------------------------------------------------------- /examples/iris_CatBoost_ModelDriftExplainer.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/examples/iris_CatBoost_ModelDriftExplainer.ipynb -------------------------------------------------------------------------------- /examples/iris_LogisticRegression_ModelDriftExplainer.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/examples/iris_LogisticRegression_ModelDriftExplainer.ipynb -------------------------------------------------------------------------------- /examples/iris_OutputDriftDetector.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/examples/iris_OutputDriftDetector.ipynb -------------------------------------------------------------------------------- /examples/iris_XGBoost_ModelDriftExplainer.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/examples/iris_XGBoost_ModelDriftExplainer.ipynb -------------------------------------------------------------------------------- /pyproject.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/pyproject.toml -------------------------------------------------------------------------------- /setup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/setup.py -------------------------------------------------------------------------------- /src/cinnamon/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/src/cinnamon/__init__.py -------------------------------------------------------------------------------- /src/cinnamon/common/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/cinnamon/common/constants.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/src/cinnamon/common/constants.py -------------------------------------------------------------------------------- /src/cinnamon/common/dev_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/src/cinnamon/common/dev_utils.py -------------------------------------------------------------------------------- /src/cinnamon/common/logging.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/src/cinnamon/common/logging.py -------------------------------------------------------------------------------- /src/cinnamon/common/math_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/src/cinnamon/common/math_utils.py -------------------------------------------------------------------------------- /src/cinnamon/common/stat_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/src/cinnamon/common/stat_utils.py -------------------------------------------------------------------------------- /src/cinnamon/drift/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/src/cinnamon/drift/__init__.py -------------------------------------------------------------------------------- /src/cinnamon/drift/abstract_drift_explainer.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/src/cinnamon/drift/abstract_drift_explainer.py -------------------------------------------------------------------------------- /src/cinnamon/drift/adversarial_drift_explainer.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/src/cinnamon/drift/adversarial_drift_explainer.py -------------------------------------------------------------------------------- /src/cinnamon/drift/drift_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/src/cinnamon/drift/drift_utils.py -------------------------------------------------------------------------------- /src/cinnamon/drift/model_drift_explainer.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/src/cinnamon/drift/model_drift_explainer.py -------------------------------------------------------------------------------- /src/cinnamon/drift/output_drift_detector.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/src/cinnamon/drift/output_drift_detector.py -------------------------------------------------------------------------------- /src/cinnamon/drift/tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/cinnamon/drift/tests/test_LinearRegression_ModelDriftExplainer.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/src/cinnamon/drift/tests/test_LinearRegression_ModelDriftExplainer.py -------------------------------------------------------------------------------- /src/cinnamon/drift/tests/test_LogisticRegression_ModelDriftExplainer.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/src/cinnamon/drift/tests/test_LogisticRegression_ModelDriftExplainer.py -------------------------------------------------------------------------------- /src/cinnamon/drift/tests/test_adversarial_drift_explainer.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/src/cinnamon/drift/tests/test_adversarial_drift_explainer.py -------------------------------------------------------------------------------- /src/cinnamon/drift/tests/test_catboost_model_drift_explainer.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/src/cinnamon/drift/tests/test_catboost_model_drift_explainer.py -------------------------------------------------------------------------------- /src/cinnamon/drift/tests/test_output_drift_detector.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/src/cinnamon/drift/tests/test_output_drift_detector.py -------------------------------------------------------------------------------- /src/cinnamon/drift/tests/test_xgboost_model_drift_explainer.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/src/cinnamon/drift/tests/test_xgboost_model_drift_explainer.py -------------------------------------------------------------------------------- /src/cinnamon/drift/tree_ensemble_drift_explainer.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/src/cinnamon/drift/tree_ensemble_drift_explainer.py -------------------------------------------------------------------------------- /src/cinnamon/model_parser/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/cinnamon/model_parser/abstract_model_parser.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/src/cinnamon/model_parser/abstract_model_parser.py -------------------------------------------------------------------------------- /src/cinnamon/model_parser/abstract_tree_ensemble_parser.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/src/cinnamon/model_parser/abstract_tree_ensemble_parser.py -------------------------------------------------------------------------------- /src/cinnamon/model_parser/catboost_parser.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/src/cinnamon/model_parser/catboost_parser.py -------------------------------------------------------------------------------- /src/cinnamon/model_parser/model_agnostic_model_parser.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/src/cinnamon/model_parser/model_agnostic_model_parser.py -------------------------------------------------------------------------------- /src/cinnamon/model_parser/single_tree.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/src/cinnamon/model_parser/single_tree.py -------------------------------------------------------------------------------- /src/cinnamon/model_parser/tests/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !.gitignore -------------------------------------------------------------------------------- /src/cinnamon/model_parser/xgboost_parser.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/src/cinnamon/model_parser/xgboost_parser.py -------------------------------------------------------------------------------- /src/cinnamon/plot/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/cinnamon/plot/drift/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/cinnamon/plot/drift/plot_drift.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/src/cinnamon/plot/drift/plot_drift.py -------------------------------------------------------------------------------- /src/cinnamon/plot/drift/plot_drift_importance.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/src/cinnamon/plot/drift/plot_drift_importance.py -------------------------------------------------------------------------------- /src/cinnamon/plot/drift/plot_tree_drift.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/src/cinnamon/plot/drift/plot_tree_drift.py -------------------------------------------------------------------------------- /src/cinnamon/plot/drift/plot_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/src/cinnamon/plot/drift/plot_utils.py -------------------------------------------------------------------------------- /src/cinnamon/report/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/cinnamon/report/drift_report_generator.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/src/cinnamon/report/drift_report_generator.py -------------------------------------------------------------------------------- /src/cinnamon/report/drift_report_template.pmd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/src/cinnamon/report/drift_report_template.pmd -------------------------------------------------------------------------------- /src/cinnamon/report/i_report_generator.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zelros/cinnamon/HEAD/src/cinnamon/report/i_report_generator.py --------------------------------------------------------------------------------