Skip to content

My_AutoML v0.2.0 Support for ray.tune

Compare
Choose a tag to compare
@PanyiDong PanyiDong released this 09 Apr 02:44
· 384 commits to master since this release

New Features

Previously, the model selection and hyperparameter optimization is achieved by HyperOpt, and now, the automation is achieved by ray.tune, which contains more features, plentiful interaction between different packages and better visualization for training process.

However, the HyperOpt version is still workable through legacy archives. The hyperopt pipelines can be accessed through:

from My_AutoML._legacy import AutoTabular, AutoTabularClassifier, AutoTabularRegressor

For the model. due to conflicting hyperparameter space construction process, which described in #1 , leads to a re-construction of entire default hyperparameter space. Now, both grid search/random search and hyperopt search are available for model selection and hyperparameter optimization.

Key features for ray.tune optimization procedure:

  1. search algorithms

RandomSearch, GridSearch, BayesOptSearch, AxSearch, BOHB, BlendSearch, CFO, DragonflySearch, HEBO, HyperOpt, Nevergrad, Optuna, SigOpt, Scikit-Optimize, ZOOpt, Reapter, ConcurrencyLimiter

  1. search scheduler

FIFOScheduler, ASHAScheduler, HyperBandScheduler, MedianStoppingRule, PopulationBasedTraining, PopulationBasedTrainingReplay, PB2, HyperBandForBOHB

  1. progress reporter

CLIReporter, JupyterNotebookReporter

Smaller Changes

  1. Basic support for ray.tune using Grid Search. All temp workings stored in temp folders. 979a440

  2. add few more classification/regression models from sklearn #3

List of new models:

  1. LinearRegression
  2. Lasso
  3. Ridge
  4. ElasticNet
  5. BayesianRidge
  6. LogisticRegression
  7. ComplementNB
  8. HistGradientBoostingClassifier
  9. HistGradientBoostingRegressor
  1. change the logic of legacy structure, so legacy can still work when later changes (even structure level changes) come. 960c5f0

Future Plan

  1. Use MLP for Tabular classification/regression, RNN structure for text processing (partial code ready)

  2. More imputation methods/ balancing methods/ scaling methods/ feature selection/ regression, classification models to evaluation