Gene Programming Rules (GPR) implementation
Project description
An implementation of an extremely simple classifier (GPR) that consists of highly interpretable fuzzy metarules and is suitable for many applications. GPR is effective in accuracy and area under the receiver operating characteristic (ROC) curve. We provide a Python implementation of the GPR algorithm to enable the use of the algorithm without using commercial software tools and open access to the research community. We also added enhancements to facilitate the reading and interpretation of the rules.
Example usage
import numpy as np
from gpr_algorithm import GPR
feature_names = ['weight', 'height']
target_names = ['sick', 'healthy']
cls = GPR(
feature_names=feature_names,
target_names=target_names,
max_n_of_rules=2, max_n_of_ands=2, n_generations=10, n_populations=10,
verbose=False
)
attributes = np.array([
[.9, .1], # sick
[1., .9], # sick
[0., .9],
[.1, .1]
])
labels = np.array([
0, # sick
0, # sick
1,
1
])
cls.fit(attributes, labels)
pred_labels = cls.predict(attributes)
assert np.all(labels == pred_labels)
rules = cls.rules
assert rules == ['IF weight is Low THEN healthy | Support: 0.9500', 'ELSE sick']
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file gpr-algorithm-1.0.0.tar.gz
.
File metadata
- Download URL: gpr-algorithm-1.0.0.tar.gz
- Upload date:
- Size: 5.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.13 CPython/3.8.6 Windows/10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 45407fbad155008e82a30d665144ce8f3534ed30478f844d71fb02bbbd94e645 |
|
MD5 | 68ab257d866c6a035b4566044db57aec |
|
BLAKE2b-256 | 6c4ee7aef95a62d694fdb3c2527acb475feb11e4fa52c33463a4f291329ec686 |
File details
Details for the file gpr_algorithm-1.0.0-py3-none-any.whl
.
File metadata
- Download URL: gpr_algorithm-1.0.0-py3-none-any.whl
- Upload date:
- Size: 5.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.13 CPython/3.8.6 Windows/10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 05eb3f618f9798294d60c089d0595d7880427ac571669de50b9ff2a566eee605 |
|
MD5 | 62f59c1c26174ff1f4c1fe60f2222704 |
|
BLAKE2b-256 | d41d30f9ccd783cef0f558d5cf792215a4d5e301012fb98e818691e4e0741d37 |