Adaptive Neuro Fuzzy Inference System Implementation in Python.
This project is a fork of twmeggs/anfis, with bug fixes, optimizations, and improvements so that the package can be used in further projects. All credits goes to twmeggs for the original implementation.
This ANFIS package is essentially a Python refactoring of the R code created by the team a the BioScience Data Mining Group.
As an example of an ANFIS system, this Python code works (install and run the tests.py script to see it fit the some test data) but there is much left to do in order to improve the project. Documentation and doc strings still need a large amounts of work.
All useful contributions to make this a better project will be happily received.
This package may then be installed by running:
pip install lazuardy_anfis
Install anfis and navigate to the location of lazuardy_anfis/tests.py
.
From the command line run:
python -m lazuardy_anfis.tests
This will set up and fit an ANFIS model based on the data contained in training_set.txt
, using 10 epochs. Plots of the fitting errors and the model predicted output are graphed.
Currently the implementation will support the use of three types of membership function:
gaussmf
: Gaussiangbellmf
: Generalized bellsigmf
: Sigmoid
This naming is taken from scikit-fuzzy, a fuzzy logic toolkit for SciPy.
Each input variable can have an arbitrary number and mix of these membership functions.
A user can define the number of epochs that will be run. The returned ANFIS object can plot training errors, fitted results and the current shape of its membership functions (pre or post training).
This project is licensed under MIT License.
© Lazuardy 2024. All rights reserved.
PT Inovasi Kolektif Digital.
Terms of Service | Privacy Policy