OptimalFlow is an Omni-ensemble Automated Machine Learning toolkit to help data scientists building optimal model in easy way, and automate Machine Learning workflow with simple code.
Project description
OptimalFlow
Author: Tony Dong
OptimalFlow is a high-level API toolkit to help data scientists building models in ensemble way, and automating Machine Learning workflow with simple codes.
Comparing other popular "AutoML or Automated Machine Learning" APIs, OptimalFlow is designed as an omni-ensembled ML workflow optimizer with higher-level API targeting to avoid manual repetitive train-along-evaluate experiments in general pipeline building.
To achieve that, OptimalFlow applies Pipeline Cluster Traversal Experiments algorithm to assemble all cross-matching pipelines covering major tasks of Machine Learning workflow, and apply traversal-experiment to search the optimal baseline model.
Besides, by modularizing all key pipeline components in reuseable packages, it allows all components to be custom tunable along with high scalability.
The core concept in OptimalFlow is Pipeline Cluster Traversal Experiments, which is a theory, first raised by Tony Dong during Genpact 2020 GVector Conference, to optimize and automate Machine Learning Workflow using ensemble pipelines algorithm.
Comparing other automated or classic machine learning workflow's repetitive experiments using single pipeline, Pipeline Cluster Traversal Experiments is more powerful, with larger coverage scope, to find the best model without manual intervention, and also more flexible with elasticity to cope with unseen data due to its ensemble designs in each component.
In summary, OptimalFlow shares a few useful properties for data scientists:
-
Easy & less coding - High-level APIs to implement Pipeline Cluster Traversal Experiments, and each ML component is highly automated and modularized;
-
Well ensembled - Each key component is ensemble of popular algorithms w/ optimal hyperparameters tuning included;
-
Omni-Coverage - Using Pipeline Cluster Traversal Experiments, to cross-experiment with combined permutated input datasets, feature selection, and model selection;
-
Scalable - Each module could add new algorithms easily due to its ensemble and reuseable coding design;
-
Adaptable - Pipeline Cluster Traversal Experiments makes it easier to adapt unseen datasets with the right pipeline;
-
Custom Modify Welcomed - Support custom settings to add/remove algorithms or modify hyperparameters for elastic requirements.
Documentation: https://Optimal-Flow.readthedocs.io/
Installation
pip install OptimalFlow
Core Modules:
- autoPP for feature preprocessing
- autoFS for classification/regression features selection
- autoCV for classification/regression model selection and evaluation
- autoPipe for Pipeline Cluster Traversal Experiments
- autoViz for pipeline cluster visualization. Current available: Model retrieval diagram
- autoFlow for logging & tracking.
Notebook Demo:
Updates on 8/20/2020
- Add Dynamic Table for Pipeline Cluster Model Evaluation Report in autoViz module
Updates on 8/14/2020
- Add fastClassifier, and fastRegressor class which are both random parameter search based
- Modify the display settings when using dynaClassifier in non in_pipeline mode
Updates on 8/10/2020
- Stable 0.1.0 version release on Pypi
Updates on 8/7/2020
- Add estimators: HuberRegressor, RidgeCV, LassoCV, SGDRegressor, and HistGradientBoostingRegressor
- Modify parameters.json, and reset_parameters.json for the added estimators
- Add autoViz for classification problem model retrieval diagram
License:
MIT
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 optimalflow-0.1.3-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e43a6a4caa2be47d390cc691250f2eca3ea17fcc20d2d6f8a8eb26f506ed9186 |
|
MD5 | d05763fc9d67adf3ee232c1685f89918 |
|
BLAKE2b-256 | 0f9c6e9d21c149a8de3f30099719ebfd3e0df229d54867c3fbba1529da3303ff |