Metadata-Version: 2.1
Name: genens
Version: 0.1.16
Summary: A genetic AutoML system for ensemble methods
Home-page: https://github.com/gabrielasuchopar/genens
Author: Gabriela Suchoparova
Author-email: gabi.suchoparova@gmail.com
License: UNKNOWN
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.6
Description-Content-Type: text/markdown
Requires-Dist: deap
Requires-Dist: joblib
Requires-Dist: openml
Requires-Dist: matplotlib
Requires-Dist: numpy
Requires-Dist: scikit-learn (>=0.22)
Requires-Dist: seaborn
Requires-Dist: stopit
Requires-Dist: pyyaml

# genens
genens is an AutoML system for pipeline optimization based on developmental genetic programming.

## Installation
Clone the repository.
```
git clone https://github.com/gabrielasuchopar/genens.git
pip install genens
```


-----
## Using genens
As for now, the GenensClassifier is ready to be used. It has an interface similar to other scikit-learn estimators. When `fit()` is called, the evolutionary optimization is run. After it finishes, `predict()` produces a prediction with the best of optimized pipelines. Alternatively, you can call `get_best_pipelines()` to get pipelines from the pareto front.

```
from genens import GenensClassifier
from sklearn.datasets import load_iris()

iris = load_iris()
train_X, test_X, train_y, test_y = train_test_split(iris.data, iris.target, test_size=0.25)

clf = GenensClassifier()
clf.fit(train_X, train_y)
... # process of evolution

pred = clf.predict(test_X)
```

## Tests
Directory ./genens/tests contains scripts for running dataset tests and produce data about evolution process along with pickle files of best optimized pipelines. 
Sample config files are included in ``./genens/tests/config``.

- Run genEns on a dataset specified in the config file.

``python ./genens/tests/run_datasets.py --out OUT_DIR config CONFIG``

- Runs genEns on the [OpenML-CC18 benchmarking suite](https://www.openml.org/s/99)

``python ./genens/tests/run_openml.py --out OUT_DIR --config CONFIG``

More tests are to be included in later releases.


