niaclass 0.2.4
Python framework for building classifiers using nature-inspired algorithms
License: MIT
Requires Python: <3.14,>=3.9
Keywords: classification, machine learning, NiaPy, nature-inspired algorithms, optimization

<p align="center">
    <img src=".github/images/niaclass_logo.png" alt="NiaClass" title="NiaClass"/>
</p>

<p align="center">
    <a href="https://pypi.python.org/pypi/niaclass">
        <img alt="PyPI Version" src="https://img.shields.io/pypi/v/niaclass.svg" />
    </a>
    <img alt="PyPI - Python Version" src="https://img.shields.io/pypi/pyversions/niaclass.svg" />
    <img alt="PyPI - Downloads" src="https://img.shields.io/pypi/dm/niaclass.svg" />
    <a href="https://github.com/lukapecnik/niaclass/blob/master/LICENSE">
        <img alt="GitHub license" src="https://img.shields.io/github/license/lukapecnik/niaclass.svg">
    </a>
</p>

<p align="center">
    <img alt="GitHub commit activity" src="https://img.shields.io/github/commit-activity/w/lukapecnik/niaclass.svg" />
    <a href="http://isitmaintained.com/project/lukapecnik/niaclass">
        <img alt="Average time to resolve an issue" src="http://isitmaintained.com/badge/resolution/lukapecnik/niaclass.svg" />
    </a>
    <a href="http://isitmaintained.com/project/lukapecnik/niaclass">
        <img alt="Percentage of issues still open" src="http://isitmaintained.com/badge/open/lukapecnik/niaclass.svg" />
    </a>
    <img alt="GitHub contributors" src="https://img.shields.io/github/contributors/lukapecnik/niaclass.svg" />
</p>

<p align="center">
    <a href="#-installation">📦 Installation</a> •
    <a href="#-functionalities">✨ Functionalities</a> •
    <a href="#-examples">🚀 Examples</a> •
    <a href="#-reference-papers">📝 Reference papers</a> •
    <a href="#-license">🔑 License</a> •
    <a href="#-cite-us">📄 Cite us</a>
</p>

NiaClass is a framework for solving classification tasks using nature-inspired algorithms. The framework is written fully in Python. Its goal is to find the best possible set of classification rules for the input data using the <a href="https://github.com/NiaOrg/NiaPy">NiaPy framework</a>, which is a popular Python collection of nature-inspired algorithms. The NiaClass classifier supports numerical and categorical features.

* **Free software:** MIT license
* **Documentation:** https://niaclass.readthedocs.io/en/latest
* **Python versions:** 3.9, 3.10, 3.11, 3.12

<p align="center"><img src=".github/images/niaclass.png" alt="NiaClass" title="NiaClass"/></p>

## 📦 Installation

### pip3

To install NiaClass with pip3, use:

```sh
pip3 install niaclass
```

In case you would like to try out the latest pre-release version of the framework, install it using:

```sh
pip3 install niaclass --pre
```

### Fedora Linux

To install NiaClass on Fedora, use:

```sh
$ dnf install python-niaclass
```

## ✨ Functionalities

- Binary classification,
- Multi-class classification,
- Support for numerical and categorical features.

## 🚀 Examples

Usage examples can be found [here](examples).

## 📝 Reference papers

[1] Iztok Fister Jr., Iztok Fister, Dušan Fister, Grega Vrbančič, Vili Podgorelec. [On the potential of the nature-inspired algorithms for pure binary classification](http://www.iztok-jr-fister.eu/static/publications/267.pdf). In. Computational science - ICCS 2020 : 20th International Conference, Proceedings. Part V. Cham: Springer, pp. 18-28. Lecture notes in computer science, 12141, 2020

## 🔑 License

This package is distributed under the MIT License. This license can be found online at <http://www.opensource.org/licenses/MIT>.

## Disclaimer

This framework is provided as-is, and there are no guarantees that it fits your purposes or that it is bug-free. Use it at your own risk!

## 📄 Cite us

Pečnik L., Fister I., Fister Jr. I. (2021) [NiaClass: Building Rule-Based Classification Models Using Nature-Inspired Algorithms](https://iztok-jr-fister.eu/static/publications/291.pdf). In: Tan Y., Shi Y. (eds) Advances in Swarm Intelligence. ICSI 2021. Lecture Notes in Computer Science, vol 12690. Springer, Cham.