Skip to main content

Zuffy is a sklearn compatible open source python library that uses GP to induce Fuzzy Pattern Trees

Project description

Zuffy Logo

Zuffy - Fuzzy Pattern Trees with Genetic Programming

An open source scikit-learn compatible library for introducing FPTs as an Explainability Tool


Zuffy is a python package for exploring Fuzzy Pattern Trees and it is compatible with scikit-learn.

It aims to provide a simple set of tools for the exploration of FPTs that are induced using genetic programming (GP) techniques. The GP functionality is provided by the gplearn library and the author is grateful to its creator, Trevor Stephens, for his work on this.

Refer to the documentation for further information.

Setup

Zuffy has been developed and tested with Python 3.11 and these library versions:

Library Version
sklearn 1.5.2*
numpy 1.26.4
pandas 2.2.1
matplotlib 3.9.2
gplearn 0.4.2

Note that Scikit-learn version 1.6+ modified the API around its "tags" and, until the authors update all their estimators, Zuffy will not run with version 1.6+. The gplearn library, upon which Zuffy has a dependency, has not been updated since 2023.

To display the FPT you will need to install graphviz.

Zuffy Installation

Use pip:

pip install zuffy

or clone the repository:

git clone https://github.com/pxom/zuffy.git

and install the required dependencies:

pip install -r requirements.txt

Resources

  • Documentation <https://zuffy.readthedocs.io/en/latest/?badge=latest>
  • Source Code <https://github.com/zuffy-dev/zuffy/>
  • Installation <https://github.com/zuffy-dev/zuffy#installation>

Examples

A collection of examples illustrating Zuffy features are available here.

How to cite Zuffy

Authors of scientific papers including results generated using Zuffy are asked to cite the following paper:

@article{ZUFFY_1, 
    author    = "PXOM",
    title     = { {Zuffy}: Induction of Fuzzy Pattern Trees through Genetic Programming },
    pages    = { 0--0 },
    volume    = { 1 },
    month     = { Jul },
    year      = { 2025 }
}

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

zuffy-0.5.tar.gz (67.2 kB view details)

Uploaded Source

Built Distribution

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

zuffy-0.5-py3-none-any.whl (74.6 kB view details)

Uploaded Python 3

File details

Details for the file zuffy-0.5.tar.gz.

File metadata

  • Download URL: zuffy-0.5.tar.gz
  • Upload date:
  • Size: 67.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.9

File hashes

Hashes for zuffy-0.5.tar.gz
Algorithm Hash digest
SHA256 53dee1cdd14901cbcf074f2cab589b1bf05fcf1fa2e4a807de6aad94f7c8fc9e
MD5 6607731664cdc74853a494350009d48a
BLAKE2b-256 121908ef0ad71bc9470489d46db8118131cb086781bbe78f1ea069782ee035ea

See more details on using hashes here.

File details

Details for the file zuffy-0.5-py3-none-any.whl.

File metadata

  • Download URL: zuffy-0.5-py3-none-any.whl
  • Upload date:
  • Size: 74.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.9

File hashes

Hashes for zuffy-0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 49c33650c67a5bf0dab3753b15a5c4f4c2a42c4e110e7265ac76e4ffbaf54dc1
MD5 e12d46bbe694570edb4c6bb3b17554c6
BLAKE2b-256 4eb412ffcce0b4f1e44b5eb47fc451494daf9f8025d4a915fbe65238d009244b

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