h2oai / h2o-3

H2O is an Open Source, Distributed, Fast & Scalable Machine Learning Platform: Deep Learning, Gradient Boosting (GBM) & XGBoost, Random Forest, Generalized Linear Modeling (GLM with Elastic Net), K-Means, PCA, Generalized Additive Models (GAM), RuleFit, Support Vector Machine (SVM), Stacked Ensembles, Automatic Machine Learning (AutoML), etc.
http://h2o.ai
Apache License 2.0
6.79k stars 1.99k forks source link

implement better (not strict Cartesian) hyperparameter search #14762

Open exalate-issue-sync[bot] opened 1 year ago

exalate-issue-sync[bot] commented 1 year ago

My plans: For Phase 1 I'm doing random with (essentially unlimited) explicit values, which can approximate true random with distributions. Stopping criteria will be: max_models, max_time_ms, and "metric of my choice hasn't improved more than 0.05 in the last 5 models". For Phase 2 I will add learning optimization with Gaussian Process Models. For Phase 3 I will add explicit hyperparameter lists (an ask from Mark). For Phase 4 I will add distributions for random and GP.

exalate-issue-sync[bot] commented 1 year ago

Arno Candel commented: Yes, let the user specify bounds on parameters, and let the black box sample from it

Example:

INPUT: Nsamples = 25

hidden=new int[]{100,100} // this is fixed in this example train_samples_per_iteration = 100 //fixed as well

// these are to be varied l1 in [0,1e-4] l2 in [0,1e-5] activation in {Tanh,TanhDropout,Rectifier} epochs in [1,100]

OUTPUT: 25 models with l1/l2/activation/epochs sampled (uniformly) from the above space, remaining parameters either fixed by user or default.

exalate-issue-sync[bot] commented 1 year ago

Prithvi Prabhu commented: RandomDiscrete settings are in Flow 0.4.15

DinukaH2O commented 1 year ago

JIRA Issue Migration Info

Jira Issue: PUBDEV-1798 Assignee: Raymond Peck Reporter: Raymond Peck State: Open Fix Version: N/A Attachments: N/A Development PRs: N/A