ML for reasonable results in a reasonable amount of time
Project description
Fast AutoML
Most autoML packages aim for exceptional performance but need to train for an exceptional amount of time. Fast-autoML aims for reasonable performance in a reasonable amount of time.
Fast-autoML includes additional utilities, such as tools for comparing model performance by repeated cross-validation.
Installation
$ pip install fast-automl
Quickstart
from fast_automl.automl import AutoClassifier
from sklearn.datasets import load_digits
from sklearn.model_selection import cross_val_score, train_test_split
X, y = load_digits(return_X_y=True)
X_train, X_test, y_train, y_test = train_test_split(X, y, shuffle=True, stratify=y)
clf = AutoClassifier(ensemble_method='stepwise', n_jobs=-1, verbose=True).fit(X_train, y_train)
print('CV score: {:.4f}'.format(cross_val_score(clf.best_estimator_, X_train, y_train).mean()))
print('Test score: {:.4f}'.format(clf.score(X_test, y_test)))
This runs for about 6-7 minutes and typically achieves a test accuracy of 96-99% and ROC AUC above .999.
from fast_automl.automl import AutoRegressor
from sklearn.datasets import load_diabetes
from sklearn.model_selection import cross_val_score, train_test_split
X, y = load_diabetes(return_X_y=True)
X_train, X_test, y_train, y_test = train_test_split(X, y, shuffle=True)
reg = AutoRegressor(n_jobs=-1, verbose=True).fit(X_train, y_train)
print('CV score: {:.4f}'.format(cross_val_score(reg.best_estimator_, X_train, y_train).mean()))
print('Test score: {:.4f}'.format(reg.score(X_test, y_test)))
This runs for about 30 seconds and typically achieves a test R-squared of .47-.53.
Citation
@software{bowen2021fast-automl,
author = {Dillon Bowen},
title = {Fast-AutoML},
url = {https://dsbowen.github.io/fast-automl/},
date = {2021-02-05},
}
License
Users must cite this package in any publications which use it.
It is licensed with the MIT License.
Acknowledgments
This package and its documentation draw heavily on scikit-learn.
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
Hashes for fast_automl-0.0.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a63f9655533816b0d1afb2ca654c64b0a2a06c6514116d8f57e1ad3e48d6cec6 |
|
MD5 | 47f55a5041f3253d9792437999e6c30d |
|
BLAKE2b-256 | 841f26c8c79a102e4f65b09eddccbf2f42eb347566027fbed23fa98b3335b5b8 |