Online Automated Machine Learning for river
Project description
EvO AutoML is a Python library for Evolution based Online AutoML. EvO AutoML ambition is to enable hyperparameter optimization for online machine learning pipelines build on river.
EvO AutoML
EvO AutoML is a Python library for Evolution based Online AutoML.
💈 Installation
Use the package manager pip to install EvoAutoML.
pip install evoautoml
You can install the latest development version from GitHub as so:
pip install https://github.com/kulbachcedric/EvOAutoML//archive/refs/heads/master.zip
🍫 Quickstart
Classification
>>> from river import datasets, ensemble, evaluate, metrics, compose, optim
>>> from river import preprocessing, neighbors, naive_bayes, tree, linear_model
>>> from EvOAutoML import classification, pipelinehelper
>>> dataset = datasets.Phishing()
>>> model_pipeline = compose.Pipeline(
... ('Scaler', pipelinehelper.PipelineHelperTransformer([
... ('StandardScaler', preprocessing.StandardScaler()),
... ('MinMaxScaler', preprocessing.MinMaxScaler()),
... ('MinAbsScaler', preprocessing.MaxAbsScaler()),
... ])),
... ('Classifier', pipelinehelper.PipelineHelperClassifier([
... ('HT', tree.HoeffdingTreeClassifier()),
... ('LR', linear_model.LogisticRegression()),
... ('GNB', naive_bayes.GaussianNB()),
... ('KNN', neighbors.KNNClassifier()),
... ])))
>>> model = classification.EvolutionaryBaggingClassifier(
... model=model_pipeline,
... param_grid={
... 'Scaler': model_pipeline.steps['Scaler'].generate({}),
... 'Classifier': model_pipeline.steps['Classifier'].generate({
... 'HT__max_depth': [10, 30, 60, 10, 30, 60],
... 'HT__grace_period': [10, 100, 200, 10, 100, 200],
... 'HT__max_size': [5, 10],
... 'LR__l2': [.0,.01,.001],
... 'KNN__n_neighbors': [1, 5, 20],
... 'KNN__window_size': [100, 500, 1000],
... 'KNN__weighted': [True, False],
... 'KNN__p': [1, 2],
... })
... },
... seed=42
... )
>>> metric = metrics.F1()
>>> for x, y in dataset:
... y_pred = model.predict_one(x) # make a prediction
... metric = metric.update(y, y_pred) # update the metric
... model = model.learn_one(x,y) # make the model learn
📚 Cite
@inproceedings{DBLP:conf/pakdd/KulbachMBHB22,
author = {Cedric Kulbach and
Jacob Montiel and
Maroua Bahri and
Marco Heyden and
Albert Bifet},
editor = {Jo{\~{a}}o Gama and
Tianrui Li and
Yang Yu and
Enhong Chen and
Yu Zheng and
Fei Teng},
title = {Evolution-Based Online Automated Machine Learning},
booktitle = {Advances in Knowledge Discovery and Data Mining - 26th Pacific-Asia
Conference, {PAKDD} 2022, Chengdu, China, May 16-19, 2022, Proceedings,
Part {I}},
series = {Lecture Notes in Computer Science},
volume = {13280},
pages = {472--484},
publisher = {Springer},
year = {2022},
url = {https://doi.org/10.1007/978-3-031-05933-9\_37},
doi = {10.1007/978-3-031-05933-9\_37},
timestamp = {Tue, 17 May 2022 15:53:17 +0200},
biburl = {https://dblp.org/rec/conf/pakdd/KulbachMBHB22.bib},
bibsource = {dblp computer science bibliography, https://dblp.org}
}
🏫 Affiliations
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
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file EvOAutoML-0.0.14.tar.gz.
File metadata
- Download URL: EvOAutoML-0.0.14.tar.gz
- Upload date:
- Size: 14.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.16
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9819ab5f18cb734d6177ef272b3e4746cde2ec48bd4ee506736f02b1c191d958
|
|
| MD5 |
f4292e91198bdfd769aed40b8c5b01da
|
|
| BLAKE2b-256 |
86c0c34a3b58846a409cf5b155fd7339e6c87550060f6c2a6a78648f8c6318e1
|
File details
Details for the file EvOAutoML-0.0.14-py3-none-any.whl.
File metadata
- Download URL: EvOAutoML-0.0.14-py3-none-any.whl
- Upload date:
- Size: 18.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.16
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bba1f2d0153a9429a5bb5138b9b5c43b11c14b11105e660c4e1c433e86ac0378
|
|
| MD5 |
043711d519e759d254a6a2a603334557
|
|
| BLAKE2b-256 |
177858445ef5bf64b0d2d2318e57687f212c8cc0cd8c92bc1c1bd23bd7fecf6f
|