Skip to main content

highFIS is a comprehensive Python package for training and evaluating high-dimensional TSK fuzzy systems, built on PyTorch and compatible with the scikit-learn API.

Project description

highFIS

CI Documentation DOI PyPI - Python Version PyPI - Version PyPI - License

highFIS is a PyTorch-based framework for high-dimensional Takagi–Sugeno–Kang (TSK) fuzzy systems. It brings differentiable fuzzy inference, numerical stability, and sklearn-compatible estimators to both classification and regression workflows.

🚀 Quick Start

Install from PyPI:

pip install highfis

Run a classifier:

from highfis import HTSKClassifierEstimator

clf = HTSKClassifierEstimator(
    n_mfs=4,
    mf_init="kmeans",
    epochs=150,
    learning_rate=1e-3,
    random_state=42,
)
clf.fit(X_train, y_train)
print(f"Test accuracy: {clf.score(X_test, y_test):.4f}")

highFIS works with sklearn.pipeline.Pipeline, GridSearchCV, and cross_val_score.

🔧 What’s Included

Core models

  • HTSKClassifier, HTSKRegressor
  • TSKClassifier, TSKRegressor
  • DombiTSKClassifier, DombiTSKRegressor
  • AdaTSKClassifier, AdaTSKRegressor
  • FSREAdaTSKClassifier, FSREAdaTSKRegressor
  • LogTSKClassifier, LogTSKRegressor

Estimator wrappers

  • HTSKClassifierEstimator, HTSKRegressorEstimator
  • TSKClassifierEstimator, TSKRegressorEstimator
  • LogTSKClassifierEstimator, LogTSKRegressorEstimator
  • AdaTSKClassifierEstimator, AdaTSKRegressorEstimator
  • FSREAdaTSKClassifierEstimator, FSREAdaTSKRegressorEstimator

Building blocks

  • Memberships: GaussianMF, TriangularMF, TrapezoidalMF, BellMF, SigmoidalMF
  • Defuzzifiers: SoftmaxLogDefuzzifier, SumBasedDefuzzifier, LogSumDefuzzifier
  • T-norms: prod, min, gmean, dombi
  • Rule base strategies: cartesian, coco, en, custom

📚 Documentation

The published documentation is available at https://dcruzf.github.io/highFIS.

Key reference pages:

🤝 Contributing & Development

See the published contribution guide at contributing.

📄 License

Distributed under the GPLv3.

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

highfis-0.6.0.tar.gz (47.0 kB view details)

Uploaded Source

Built Distribution

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

highfis-0.6.0-py3-none-any.whl (48.3 kB view details)

Uploaded Python 3

File details

Details for the file highfis-0.6.0.tar.gz.

File metadata

  • Download URL: highfis-0.6.0.tar.gz
  • Upload date:
  • Size: 47.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for highfis-0.6.0.tar.gz
Algorithm Hash digest
SHA256 bd63d847484102a51eb2b27e7220039aa98eef602955fb7d0cbc7c6460329339
MD5 28d458650b5962e43741be6c3b2b0268
BLAKE2b-256 fde02747d00e099bb58fcd1bc9690489b6f1b3484e8af071941efc07c22256e2

See more details on using hashes here.

File details

Details for the file highfis-0.6.0-py3-none-any.whl.

File metadata

  • Download URL: highfis-0.6.0-py3-none-any.whl
  • Upload date:
  • Size: 48.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for highfis-0.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 41fdb537b44099f4f6628b9fe9970034202e6652a158b9f33093a9d2d222384b
MD5 f0ad78576d7d9ca77c883e95a4511991
BLAKE2b-256 8d591f887a96db2e9a5edd112a0156706735da3d2f710d02c880beaa2c4d9faf

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