from collections import OrderedDict from scipy.optimize import ( Bounds ) def get_gbt_regressor_model_contraints(): """ return gbt regressor model contraints """ constraints = OrderedDict() constraints['learning_rate'] = Bounds(lb=1e-6, ub=0.1) constraints['n_estimators'] = Bounds(lb=5, ub=200) constraints['subsample'] = Bounds(lb=0.3, ub=1.0) constraints['min_samples_split'] = Bounds(lb=2, up=100) constraints['min_samples_leaf'] = Bounds(lb=1, up=100) constraints['min_weight_fraction_leaf'] = Bounds(lb=1, ub=100) constraints['max_depth'] = Bounds(lb=1, ub=5) constraints['min_impurity_decrease'] = Bounds(lb=0.0, ub=3) constraints['alpha'] = Bounds(lb=0.0, ub=1.0) constraints['max_leaf_nodes'] = Bounds(lb=2, ub=10e3) constraints['tol'] = Bounds(lb=1e-6, ub=1) return constraints