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.4.tar.gz (65.9 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.4-py3-none-any.whl (73.3 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for zuffy-0.4.tar.gz
Algorithm Hash digest
SHA256 ec2e16bea7dcecbcc2a5e63161d565b85bfa7adf0bfafa69d33117a48201e816
MD5 59f06d49c1fc13d5ca8c4b1eb86cb941
BLAKE2b-256 54e6b832e560c08161ae84264fc46a0f1fabd4371150267d07b4bfc7d9bc33f2

See more details on using hashes here.

File details

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

File metadata

  • Download URL: zuffy-0.4-py3-none-any.whl
  • Upload date:
  • Size: 73.3 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.4-py3-none-any.whl
Algorithm Hash digest
SHA256 b5a6e1f7db519f7fefa993ec330fdf68d7b115accf12cb1e2b429e4689528a6c
MD5 6d66e9256ee0fb41a53a575c10995888
BLAKE2b-256 4adc7d3f98f58757d32b0de72b16c8b6338f97adad87455971b338b0e10f1505

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