From b04b00dc9d4bc47a4135f777ca7e419854ceb140 Mon Sep 17 00:00:00 2001 From: Qingyun Wu Date: Tue, 6 Jul 2021 11:32:20 -0400 Subject: [PATCH] V0.5.6 (#128) * recover ConcurrencyLimiter * cost attribute * update notebooks Co-authored-by: Chi Wang Co-authored-by: Qingyun Wu --- flaml/automl.py | 10 +- flaml/searcher/blendsearch.py | 4 +- flaml/searcher/flow2.py | 10 +- flaml/version.py | 2 +- notebook/flaml_automl.ipynb | 664 +++++++++++++++++----------------- notebook/flaml_lightgbm.ipynb | 436 +++++++++++----------- notebook/flaml_xgboost.ipynb | 464 ++++++++++++------------ 7 files changed, 817 insertions(+), 773 deletions(-) diff --git a/flaml/automl.py b/flaml/automl.py index 359781091..782af015b 100644 --- a/flaml/automl.py +++ b/flaml/automl.py @@ -981,9 +981,15 @@ class AutoML: self._retrained_config = {} est_retrain_time = next_trial_time = 0 best_config_sig = None + # use ConcurrencyLimiter to limit the amount of concurrency when + # using a search algorithm better = True # whether we find a better model in one trial if self._ensemble: self.best_model = {} + try: + from ray.tune.suggest import ConcurrencyLimiter + except ImportError: + from .searcher.suggestion import ConcurrencyLimiter if self._hpo_method in ('cfo', 'grid'): from flaml import CFO as SearchAlgo elif 'optuna' == self._hpo_method: @@ -1056,11 +1062,13 @@ class AutoML: metric='val_loss', mode='min', space=search_space, points_to_evaluate=points_to_evaluate, ) - search_state.search_alg = algo + search_state.search_alg = ConcurrencyLimiter(algo, + max_concurrent=1) else: search_space = None if self._hpo_method in ('bs', 'cfo'): search_state.search_alg.set_search_properties( + metric=None, mode=None, config={ 'metric_target': self._state.best_loss, }, diff --git a/flaml/searcher/blendsearch.py b/flaml/searcher/blendsearch.py index fd9f35a3d..502c55096 100644 --- a/flaml/searcher/blendsearch.py +++ b/flaml/searcher/blendsearch.py @@ -133,8 +133,8 @@ class BlendSearch(Searcher): else: self._gs = None self._ls = self.LocalSearch( - init_config, metric, mode, cat_hp_cost, space, - prune_attr, min_resource, max_resource, reduction_factor, seed) + init_config, metric, mode, cat_hp_cost, space, prune_attr, + min_resource, max_resource, reduction_factor, self.cost_attr, seed) self._init_search() def set_search_properties(self, diff --git a/flaml/searcher/flow2.py b/flaml/searcher/flow2.py index ad7a9d9cc..faa6fdc3f 100644 --- a/flaml/searcher/flow2.py +++ b/flaml/searcher/flow2.py @@ -26,7 +26,6 @@ class FLOW2(Searcher): STEPSIZE = 0.1 STEP_LOWER_BOUND = 0.0001 - cost_attr = 'time_total_s' def __init__(self, init_config: dict, @@ -38,6 +37,7 @@ class FLOW2(Searcher): min_resource: Optional[float] = None, max_resource: Optional[float] = None, resource_multiple_factor: Optional[float] = 4, + cost_attr: Optional[str] = 'time_total_s', seed: Optional[int] = 20): '''Constructor @@ -73,6 +73,7 @@ class FLOW2(Searcher): prune_attr; only valid if prune_attr is not in space. resource_multiple_factor: A float of the multiplicative factor used for increasing resource. + cost_attr: A string of the attribute used for cost. seed: An integer of the random seed. ''' if mode: @@ -98,6 +99,7 @@ class FLOW2(Searcher): self.prune_attr = prune_attr self.min_resource = min_resource self.resource_multiple_factor = resource_multiple_factor or 4 + self.cost_attr = cost_attr self.max_resource = max_resource self._resource = None self._step_lb = np.Inf @@ -292,7 +294,7 @@ class FLOW2(Searcher): init_config, self.metric, self.mode, self._cat_hp_cost, unflatten_dict(self.space), self.prune_attr, self.min_resource, self.max_resource, - self.resource_multiple_factor, self._seed + 1) + self.resource_multiple_factor, self.cost_attr, self._seed + 1) flow2.best_obj = obj * self.metric_op # minimize internally flow2.cost_incumbent = cost self._seed += 1 @@ -534,7 +536,7 @@ class FLOW2(Searcher): config[self.prune_attr] = self._resource self._direction_tried = None self._configs[trial_id] = (config, self.step) - return config + return unflatten_dict(config) self._num_allowed4incumbent -= 1 move = self.incumbent.copy() if self._direction_tried is not None: @@ -553,7 +555,7 @@ class FLOW2(Searcher): self._proposed_by[trial_id] = self.incumbent self._configs[trial_id] = (config, self.step) self._num_proposedby_incumbent += 1 - best_config = flatten_dict(self.best_config) + best_config = self.best_config if self._init_phase: if self._direction_tried is None: if self._same: diff --git a/flaml/version.py b/flaml/version.py index 86716a713..a779a4426 100644 --- a/flaml/version.py +++ b/flaml/version.py @@ -1 +1 @@ -__version__ = "0.5.5" +__version__ = "0.5.6" diff --git a/notebook/flaml_automl.ipynb b/notebook/flaml_automl.ipynb index 9b98d3387..211102c2b 100644 --- a/notebook/flaml_automl.ipynb +++ b/notebook/flaml_automl.ipynb @@ -58,7 +58,7 @@ }, { "cell_type": "code", - "execution_count": 1, + "execution_count": 22, "metadata": { "slideshow": { "slide_type": "subslide" @@ -70,10 +70,7 @@ "output_type": "stream", "name": "stdout", "text": [ - "load dataset from ./openml_ds1169.pkl\n", - "Dataset name: airlines\n", - "X_train.shape: (404537, 7), y_train.shape: (404537,);\n", - "X_test.shape: (134846, 7), y_test.shape: (134846,)\n" + "load dataset from ./openml_ds1169.pkl\nDataset name: airlines\nX_train.shape: (404537, 7), y_train.shape: (404537,);\nX_test.shape: (134846, 7), y_test.shape: (134846,)\n" ] } ], @@ -134,182 +131,223 @@ "slideshow": { "slide_type": "slide" }, - "tags": [] + "tags": [ + "outputPrepend" + ] }, "outputs": [ { "output_type": "stream", "name": "stderr", "text": [ - "[flaml.automl: 05-01 16:21:30] {890} INFO - Evaluation method: holdout\n", - "[flaml.automl: 05-01 16:21:31] {596} INFO - Using StratifiedKFold\n", - "[flaml.automl: 05-01 16:21:31] {911} INFO - Minimizing error metric: 1-accuracy\n", - "[flaml.automl: 05-01 16:21:31] {929} INFO - List of ML learners in AutoML Run: ['lgbm', 'rf', 'catboost', 'xgboost', 'extra_tree', 'lrl1']\n", - "[flaml.automl: 05-01 16:21:31] {993} INFO - iteration 0, current learner lgbm\n", - "[flaml.automl: 05-01 16:21:31] {1141} INFO - at 0.6s,\tbest lgbm's error=0.3777,\tbest lgbm's error=0.3777\n", - "[flaml.automl: 05-01 16:21:31] {993} INFO - iteration 1, current learner lgbm\n", - "[flaml.automl: 05-01 16:21:31] {1141} INFO - at 0.6s,\tbest lgbm's error=0.3777,\tbest lgbm's error=0.3777\n", - "[flaml.automl: 05-01 16:21:31] {993} INFO - iteration 2, current learner lgbm\n", - "[flaml.automl: 05-01 16:21:31] {1141} INFO - at 0.7s,\tbest lgbm's error=0.3777,\tbest lgbm's error=0.3777\n", - "[flaml.automl: 05-01 16:21:31] {993} INFO - iteration 3, current learner lgbm\n", - "[flaml.automl: 05-01 16:21:31] {1141} INFO - at 0.7s,\tbest lgbm's error=0.3777,\tbest lgbm's error=0.3777\n", - "[flaml.automl: 05-01 16:21:31] {993} INFO - iteration 4, current learner lgbm\n", - "[flaml.automl: 05-01 16:21:31] {1141} INFO - at 0.8s,\tbest lgbm's error=0.3777,\tbest lgbm's error=0.3777\n", - "[flaml.automl: 05-01 16:21:31] {993} INFO - iteration 5, current learner lgbm\n", - "[flaml.automl: 05-01 16:21:31] {1141} INFO - at 0.9s,\tbest lgbm's error=0.3777,\tbest lgbm's error=0.3777\n", - "[flaml.automl: 05-01 16:21:31] {993} INFO - iteration 6, current learner lgbm\n", - "[flaml.automl: 05-01 16:21:31] {1141} INFO - at 1.0s,\tbest lgbm's error=0.3765,\tbest lgbm's error=0.3765\n", - "[flaml.automl: 05-01 16:21:31] {993} INFO - iteration 7, current learner xgboost\n", - "[flaml.automl: 05-01 16:21:31] {1141} INFO - at 1.1s,\tbest xgboost's error=0.3787,\tbest lgbm's error=0.3765\n", - "[flaml.automl: 05-01 16:21:31] {993} INFO - iteration 8, current learner lgbm\n", - "[flaml.automl: 05-01 16:21:31] {1141} INFO - at 1.3s,\tbest lgbm's error=0.3686,\tbest lgbm's error=0.3686\n", - "[flaml.automl: 05-01 16:21:31] {993} INFO - iteration 9, current learner xgboost\n", - "[flaml.automl: 05-01 16:21:32] {1141} INFO - at 1.4s,\tbest xgboost's error=0.3768,\tbest lgbm's error=0.3686\n", - "[flaml.automl: 05-01 16:21:32] {993} INFO - iteration 10, current learner lgbm\n", - "[flaml.automl: 05-01 16:21:32] {1141} INFO - at 1.5s,\tbest lgbm's error=0.3686,\tbest lgbm's error=0.3686\n", - "[flaml.automl: 05-01 16:21:32] {993} INFO - iteration 11, current learner lgbm\n", - "[flaml.automl: 05-01 16:21:32] {1141} INFO - at 1.7s,\tbest lgbm's error=0.3611,\tbest lgbm's error=0.3611\n", - "[flaml.automl: 05-01 16:21:32] {993} INFO - iteration 12, current learner extra_tree\n", - "[flaml.automl: 05-01 16:21:32] {1141} INFO - at 1.8s,\tbest extra_tree's error=0.4032,\tbest lgbm's error=0.3611\n", - "[flaml.automl: 05-01 16:21:32] {993} INFO - iteration 13, current learner extra_tree\n", - "[flaml.automl: 05-01 16:21:32] {1141} INFO - at 2.0s,\tbest extra_tree's error=0.4032,\tbest lgbm's error=0.3611\n", - "[flaml.automl: 05-01 16:21:32] {993} INFO - iteration 14, current learner extra_tree\n", - "[flaml.automl: 05-01 16:21:32] {1141} INFO - at 2.1s,\tbest extra_tree's error=0.4032,\tbest lgbm's error=0.3611\n", - "[flaml.automl: 05-01 16:21:32] {993} INFO - iteration 15, current learner lgbm\n", - "[flaml.automl: 05-01 16:21:33] {1141} INFO - at 2.4s,\tbest lgbm's error=0.3611,\tbest lgbm's error=0.3611\n", - "[flaml.automl: 05-01 16:21:33] {993} INFO - iteration 16, current learner extra_tree\n", - "[flaml.automl: 05-01 16:21:33] {1141} INFO - at 2.7s,\tbest extra_tree's error=0.3972,\tbest lgbm's error=0.3611\n", - "[flaml.automl: 05-01 16:21:33] {993} INFO - iteration 17, current learner lgbm\n", - "[flaml.automl: 05-01 16:21:33] {1141} INFO - at 2.8s,\tbest lgbm's error=0.3611,\tbest lgbm's error=0.3611\n", - "[flaml.automl: 05-01 16:21:33] {993} INFO - iteration 18, current learner rf\n", - "[flaml.automl: 05-01 16:21:33] {1141} INFO - at 3.1s,\tbest rf's error=0.4011,\tbest lgbm's error=0.3611\n", - "[flaml.automl: 05-01 16:21:33] {993} INFO - iteration 19, current learner rf\n", - "[flaml.automl: 05-01 16:21:33] {1141} INFO - at 3.3s,\tbest rf's error=0.3994,\tbest lgbm's error=0.3611\n", - "[flaml.automl: 05-01 16:21:33] {993} INFO - iteration 20, current learner lgbm\n", - "[flaml.automl: 05-01 16:21:34] {1141} INFO - at 3.7s,\tbest lgbm's error=0.3603,\tbest lgbm's error=0.3603\n", - "[flaml.automl: 05-01 16:21:34] {993} INFO - iteration 21, current learner xgboost\n", - "[flaml.automl: 05-01 16:21:34] {1141} INFO - at 3.7s,\tbest xgboost's error=0.3765,\tbest lgbm's error=0.3603\n", - "[flaml.automl: 05-01 16:21:34] {993} INFO - iteration 22, current learner lgbm\n", - "[flaml.automl: 05-01 16:21:34] {1141} INFO - at 4.0s,\tbest lgbm's error=0.3603,\tbest lgbm's error=0.3603\n", - "[flaml.automl: 05-01 16:21:34] {993} INFO - iteration 23, current learner lgbm\n", - "[flaml.automl: 05-01 16:21:34] {1141} INFO - at 4.3s,\tbest lgbm's error=0.3603,\tbest lgbm's error=0.3603\n", - "[flaml.automl: 05-01 16:21:34] {993} INFO - iteration 24, current learner rf\n", - "[flaml.automl: 05-01 16:21:35] {1141} INFO - at 4.7s,\tbest rf's error=0.3990,\tbest lgbm's error=0.3603\n", - "[flaml.automl: 05-01 16:21:35] {993} INFO - iteration 25, current learner extra_tree\n", - "[flaml.automl: 05-01 16:21:35] {1141} INFO - at 5.0s,\tbest extra_tree's error=0.3972,\tbest lgbm's error=0.3603\n", - "[flaml.automl: 05-01 16:21:35] {993} INFO - iteration 26, current learner lgbm\n", - "[flaml.automl: 05-01 16:21:35] {1141} INFO - at 5.2s,\tbest lgbm's error=0.3603,\tbest lgbm's error=0.3603\n", - "[flaml.automl: 05-01 16:21:35] {993} INFO - iteration 27, current learner lgbm\n", - "[flaml.automl: 05-01 16:21:36] {1141} INFO - at 5.6s,\tbest lgbm's error=0.3518,\tbest lgbm's error=0.3518\n", - "[flaml.automl: 05-01 16:21:36] {993} INFO - iteration 28, current learner xgboost\n", - "[flaml.automl: 05-01 16:21:36] {1141} INFO - at 5.7s,\tbest xgboost's error=0.3746,\tbest lgbm's error=0.3518\n", - "[flaml.automl: 05-01 16:21:36] {993} INFO - iteration 29, current learner xgboost\n", - "[flaml.automl: 05-01 16:21:36] {1141} INFO - at 5.7s,\tbest xgboost's error=0.3689,\tbest lgbm's error=0.3518\n", - "[flaml.automl: 05-01 16:21:36] {993} INFO - iteration 30, current learner lgbm\n", - "[flaml.automl: 05-01 16:21:36] {1141} INFO - at 6.0s,\tbest lgbm's error=0.3518,\tbest lgbm's error=0.3518\n", - "[flaml.automl: 05-01 16:21:36] {993} INFO - iteration 31, current learner lgbm\n", - "[flaml.automl: 05-01 16:21:37] {1141} INFO - at 6.7s,\tbest lgbm's error=0.3504,\tbest lgbm's error=0.3504\n", - "[flaml.automl: 05-01 16:21:37] {993} INFO - iteration 32, current learner lgbm\n", - "[flaml.automl: 05-01 16:21:37] {1141} INFO - at 7.0s,\tbest lgbm's error=0.3504,\tbest lgbm's error=0.3504\n", - "[flaml.automl: 05-01 16:21:37] {993} INFO - iteration 33, current learner xgboost\n", - "[flaml.automl: 05-01 16:21:37] {1141} INFO - at 7.1s,\tbest xgboost's error=0.3689,\tbest lgbm's error=0.3504\n", - "[flaml.automl: 05-01 16:21:37] {993} INFO - iteration 34, current learner lgbm\n", - "[flaml.automl: 05-01 16:21:41] {1141} INFO - at 10.4s,\tbest lgbm's error=0.3504,\tbest lgbm's error=0.3504\n", - "[flaml.automl: 05-01 16:21:41] {993} INFO - iteration 35, current learner xgboost\n", - "[flaml.automl: 05-01 16:21:41] {1141} INFO - at 10.5s,\tbest xgboost's error=0.3617,\tbest lgbm's error=0.3504\n", - "[flaml.automl: 05-01 16:21:41] {993} INFO - iteration 36, current learner xgboost\n", - "[flaml.automl: 05-01 16:21:41] {1141} INFO - at 10.6s,\tbest xgboost's error=0.3610,\tbest lgbm's error=0.3504\n", - "[flaml.automl: 05-01 16:21:41] {993} INFO - iteration 37, current learner catboost\n", - "[flaml.automl: 05-01 16:21:42] {1141} INFO - at 11.4s,\tbest catboost's error=0.3600,\tbest lgbm's error=0.3504\n", - "[flaml.automl: 05-01 16:21:42] {993} INFO - iteration 38, current learner catboost\n", - "[flaml.automl: 05-01 16:21:42] {1141} INFO - at 12.2s,\tbest catboost's error=0.3600,\tbest lgbm's error=0.3504\n", - "[flaml.automl: 05-01 16:21:42] {993} INFO - iteration 39, current learner catboost\n", - "[flaml.automl: 05-01 16:21:43] {1141} INFO - at 12.6s,\tbest catboost's error=0.3599,\tbest lgbm's error=0.3504\n", - "[flaml.automl: 05-01 16:21:43] {993} INFO - iteration 40, current learner lgbm\n", - "[flaml.automl: 05-01 16:21:46] {1141} INFO - at 16.1s,\tbest lgbm's error=0.3427,\tbest lgbm's error=0.3427\n", - "[flaml.automl: 05-01 16:21:46] {993} INFO - iteration 41, current learner xgboost\n", - "[flaml.automl: 05-01 16:21:46] {1141} INFO - at 16.2s,\tbest xgboost's error=0.3610,\tbest lgbm's error=0.3427\n", - "[flaml.automl: 05-01 16:21:46] {993} INFO - iteration 42, current learner extra_tree\n", - "[flaml.automl: 05-01 16:21:47] {1141} INFO - at 16.6s,\tbest extra_tree's error=0.3972,\tbest lgbm's error=0.3427\n", - "[flaml.automl: 05-01 16:21:47] {993} INFO - iteration 43, current learner lgbm\n", - "[flaml.automl: 05-01 16:21:50] {1141} INFO - at 19.7s,\tbest lgbm's error=0.3427,\tbest lgbm's error=0.3427\n", - "[flaml.automl: 05-01 16:21:50] {993} INFO - iteration 44, current learner xgboost\n", - "[flaml.automl: 05-01 16:21:50] {1141} INFO - at 19.8s,\tbest xgboost's error=0.3610,\tbest lgbm's error=0.3427\n", - "[flaml.automl: 05-01 16:21:50] {993} INFO - iteration 45, current learner extra_tree\n", - "[flaml.automl: 05-01 16:21:50] {1141} INFO - at 20.1s,\tbest extra_tree's error=0.3972,\tbest lgbm's error=0.3427\n", - "[flaml.automl: 05-01 16:21:50] {993} INFO - iteration 46, current learner xgboost\n", - "[flaml.automl: 05-01 16:21:50] {1141} INFO - at 20.2s,\tbest xgboost's error=0.3595,\tbest lgbm's error=0.3427\n", - "[flaml.automl: 05-01 16:21:50] {993} INFO - iteration 47, current learner lgbm\n", - "[flaml.automl: 05-01 16:21:55] {1141} INFO - at 24.4s,\tbest lgbm's error=0.3427,\tbest lgbm's error=0.3427\n", - "[flaml.automl: 05-01 16:21:55] {993} INFO - iteration 48, current learner xgboost\n", - "[flaml.automl: 05-01 16:21:55] {1141} INFO - at 24.5s,\tbest xgboost's error=0.3595,\tbest lgbm's error=0.3427\n", - "[flaml.automl: 05-01 16:21:55] {993} INFO - iteration 49, current learner lgbm\n", - "[flaml.automl: 05-01 16:21:57] {1141} INFO - at 26.7s,\tbest lgbm's error=0.3427,\tbest lgbm's error=0.3427\n", - "[flaml.automl: 05-01 16:21:57] {993} INFO - iteration 50, current learner rf\n", - "[flaml.automl: 05-01 16:21:57] {1141} INFO - at 27.0s,\tbest rf's error=0.3964,\tbest lgbm's error=0.3427\n", - "[flaml.automl: 05-01 16:21:57] {993} INFO - iteration 51, current learner extra_tree\n", - "[flaml.automl: 05-01 16:22:00] {1141} INFO - at 29.6s,\tbest extra_tree's error=0.3860,\tbest lgbm's error=0.3427\n", - "[flaml.automl: 05-01 16:22:00] {993} INFO - iteration 52, current learner lgbm\n", - "[flaml.automl: 05-01 16:22:05] {1141} INFO - at 34.7s,\tbest lgbm's error=0.3427,\tbest lgbm's error=0.3427\n", - "[flaml.automl: 05-01 16:22:05] {993} INFO - iteration 53, current learner rf\n", - "[flaml.automl: 05-01 16:22:05] {1141} INFO - at 34.9s,\tbest rf's error=0.3964,\tbest lgbm's error=0.3427\n", - "[flaml.automl: 05-01 16:22:05] {993} INFO - iteration 54, current learner lgbm\n", - "[flaml.automl: 05-01 16:22:07] {1141} INFO - at 36.5s,\tbest lgbm's error=0.3427,\tbest lgbm's error=0.3427\n", - "[flaml.automl: 05-01 16:22:07] {993} INFO - iteration 55, current learner lgbm\n", - "[flaml.automl: 05-01 16:22:16] {1141} INFO - at 46.3s,\tbest lgbm's error=0.3295,\tbest lgbm's error=0.3295\n", - "[flaml.automl: 05-01 16:22:16] {993} INFO - iteration 56, current learner xgboost\n", - "[flaml.automl: 05-01 16:22:17] {1141} INFO - at 46.5s,\tbest xgboost's error=0.3590,\tbest lgbm's error=0.3295\n", - "[flaml.automl: 05-01 16:22:17] {993} INFO - iteration 57, current learner lgbm\n", - "[flaml.automl: 05-01 16:22:25] {1141} INFO - at 54.8s,\tbest lgbm's error=0.3295,\tbest lgbm's error=0.3295\n", - "[flaml.automl: 05-01 16:22:25] {993} INFO - iteration 58, current learner rf\n", - "[flaml.automl: 05-01 16:22:25] {1141} INFO - at 55.0s,\tbest rf's error=0.3964,\tbest lgbm's error=0.3295\n", - "[flaml.automl: 05-01 16:22:25] {993} INFO - iteration 59, current learner xgboost\n", - "[flaml.automl: 05-01 16:22:25] {1141} INFO - at 55.1s,\tbest xgboost's error=0.3590,\tbest lgbm's error=0.3295\n", - "[flaml.automl: 05-01 16:22:25] {993} INFO - iteration 60, current learner lgbm\n", - "[flaml.automl: 05-01 16:22:39] {1141} INFO - at 68.4s,\tbest lgbm's error=0.3295,\tbest lgbm's error=0.3295\n", - "[flaml.automl: 05-01 16:22:39] {993} INFO - iteration 61, current learner xgboost\n", - "[flaml.automl: 05-01 16:22:39] {1141} INFO - at 68.7s,\tbest xgboost's error=0.3573,\tbest lgbm's error=0.3295\n", - "[flaml.automl: 05-01 16:22:39] {993} INFO - iteration 62, current learner lgbm\n", - "[flaml.automl: 05-01 16:22:42] {1141} INFO - at 71.8s,\tbest lgbm's error=0.3295,\tbest lgbm's error=0.3295\n", - "[flaml.automl: 05-01 16:22:42] {993} INFO - iteration 63, current learner xgboost\n", - "[flaml.automl: 05-01 16:22:42] {1141} INFO - at 72.1s,\tbest xgboost's error=0.3573,\tbest lgbm's error=0.3295\n", - "[flaml.automl: 05-01 16:22:42] {993} INFO - iteration 64, current learner xgboost\n", - "[flaml.automl: 05-01 16:22:43] {1141} INFO - at 72.6s,\tbest xgboost's error=0.3573,\tbest lgbm's error=0.3295\n", - "[flaml.automl: 05-01 16:22:43] {993} INFO - iteration 65, current learner lgbm\n", - "[flaml.automl: 05-01 16:23:22] {1141} INFO - at 111.8s,\tbest lgbm's error=0.3255,\tbest lgbm's error=0.3255\n", - "[flaml.automl: 05-01 16:23:22] {993} INFO - iteration 66, current learner lrl1\n", - "No init config given to FLOW2. Using random initial config.For cost-frugal search, consider providing init values for cost-related hps via 'init_config'.\n", - "/home/dmx/miniconda2/envs/blend/lib/python3.8/site-packages/sklearn/linear_model/_sag.py:328: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n", + "or=0.3575,\tbest xgboost's error=0.3575\n", + "[flaml.automl: 07-06 10:20:09] {1012} INFO - iteration 27, current learner extra_tree\n", + "[flaml.automl: 07-06 10:20:09] {1160} INFO - at 2.4s,\tbest extra_tree's error=0.4013,\tbest xgboost's error=0.3575\n", + "[flaml.automl: 07-06 10:20:09] {1012} INFO - iteration 28, current learner extra_tree\n", + "[flaml.automl: 07-06 10:20:09] {1160} INFO - at 2.4s,\tbest extra_tree's error=0.4013,\tbest xgboost's error=0.3575\n", + "[flaml.automl: 07-06 10:20:09] {1012} INFO - iteration 29, current learner extra_tree\n", + "[flaml.automl: 07-06 10:20:09] {1160} INFO - at 2.5s,\tbest extra_tree's error=0.4013,\tbest xgboost's error=0.3575\n", + "[flaml.automl: 07-06 10:20:09] {1012} INFO - iteration 30, current learner xgboost\n", + "[flaml.automl: 07-06 10:20:09] {1160} INFO - at 2.7s,\tbest xgboost's error=0.3575,\tbest xgboost's error=0.3575\n", + "[flaml.automl: 07-06 10:20:09] {1012} INFO - iteration 31, current learner xgboost\n", + "[flaml.automl: 07-06 10:20:09] {1160} INFO - at 3.0s,\tbest xgboost's error=0.3567,\tbest xgboost's error=0.3567\n", + "[flaml.automl: 07-06 10:20:09] {1012} INFO - iteration 32, current learner xgboost\n", + "[flaml.automl: 07-06 10:20:10] {1160} INFO - at 3.3s,\tbest xgboost's error=0.3567,\tbest xgboost's error=0.3567\n", + "[flaml.automl: 07-06 10:20:10] {1012} INFO - iteration 33, current learner extra_tree\n", + "[flaml.automl: 07-06 10:20:10] {1160} INFO - at 3.4s,\tbest extra_tree's error=0.3918,\tbest xgboost's error=0.3567\n", + "[flaml.automl: 07-06 10:20:10] {1012} INFO - iteration 34, current learner xgboost\n", + "[flaml.automl: 07-06 10:20:10] {1160} INFO - at 3.9s,\tbest xgboost's error=0.3505,\tbest xgboost's error=0.3505\n", + "[flaml.automl: 07-06 10:20:10] {1012} INFO - iteration 35, current learner catboost\n", + "[flaml.automl: 07-06 10:20:11] {1160} INFO - at 4.6s,\tbest catboost's error=0.3624,\tbest xgboost's error=0.3505\n", + "[flaml.automl: 07-06 10:20:11] {1012} INFO - iteration 36, current learner catboost\n", + "[flaml.automl: 07-06 10:20:12] {1160} INFO - at 5.6s,\tbest catboost's error=0.3624,\tbest xgboost's error=0.3505\n", + "[flaml.automl: 07-06 10:20:12] {1012} INFO - iteration 37, current learner extra_tree\n", + "[flaml.automl: 07-06 10:20:12] {1160} INFO - at 5.7s,\tbest extra_tree's error=0.3918,\tbest xgboost's error=0.3505\n", + "[flaml.automl: 07-06 10:20:12] {1012} INFO - iteration 38, current learner xgboost\n", + "[flaml.automl: 07-06 10:20:12] {1160} INFO - at 6.0s,\tbest xgboost's error=0.3505,\tbest xgboost's error=0.3505\n", + "[flaml.automl: 07-06 10:20:12] {1012} INFO - iteration 39, current learner xgboost\n", + "[flaml.automl: 07-06 10:20:14] {1160} INFO - at 8.0s,\tbest xgboost's error=0.3504,\tbest xgboost's error=0.3504\n", + "[flaml.automl: 07-06 10:20:14] {1012} INFO - iteration 40, current learner catboost\n", + "[flaml.automl: 07-06 10:20:15] {1160} INFO - at 8.2s,\tbest catboost's error=0.3614,\tbest xgboost's error=0.3504\n", + "[flaml.automl: 07-06 10:20:15] {1012} INFO - iteration 41, current learner xgboost\n", + "[flaml.automl: 07-06 10:20:15] {1160} INFO - at 9.0s,\tbest xgboost's error=0.3504,\tbest xgboost's error=0.3504\n", + "[flaml.automl: 07-06 10:20:15] {1012} INFO - iteration 42, current learner extra_tree\n", + "[flaml.automl: 07-06 10:20:15] {1160} INFO - at 9.0s,\tbest extra_tree's error=0.3918,\tbest xgboost's error=0.3504\n", + "[flaml.automl: 07-06 10:20:15] {1012} INFO - iteration 43, current learner lgbm\n", + "[flaml.automl: 07-06 10:20:16] {1160} INFO - at 9.2s,\tbest lgbm's error=0.3681,\tbest xgboost's error=0.3504\n", + "[flaml.automl: 07-06 10:20:16] {1012} INFO - iteration 44, current learner xgboost\n", + "[flaml.automl: 07-06 10:20:22] {1160} INFO - at 15.9s,\tbest xgboost's error=0.3504,\tbest xgboost's error=0.3504\n", + "[flaml.automl: 07-06 10:20:22] {1012} INFO - iteration 45, current learner extra_tree\n", + "[flaml.automl: 07-06 10:20:22] {1160} INFO - at 16.1s,\tbest extra_tree's error=0.3883,\tbest xgboost's error=0.3504\n", + "[flaml.automl: 07-06 10:20:22] {1012} INFO - iteration 46, current learner lgbm\n", + "[flaml.automl: 07-06 10:20:23] {1160} INFO - at 16.2s,\tbest lgbm's error=0.3681,\tbest xgboost's error=0.3504\n", + "[flaml.automl: 07-06 10:20:23] {1012} INFO - iteration 47, current learner lgbm\n", + "[flaml.automl: 07-06 10:20:23] {1160} INFO - at 16.4s,\tbest lgbm's error=0.3607,\tbest xgboost's error=0.3504\n", + "[flaml.automl: 07-06 10:20:23] {1012} INFO - iteration 48, current learner rf\n", + "[flaml.automl: 07-06 10:20:23] {1160} INFO - at 16.5s,\tbest rf's error=0.4019,\tbest xgboost's error=0.3504\n", + "[flaml.automl: 07-06 10:20:23] {1012} INFO - iteration 49, current learner lgbm\n", + "[flaml.automl: 07-06 10:20:23] {1160} INFO - at 16.7s,\tbest lgbm's error=0.3607,\tbest xgboost's error=0.3504\n", + "[flaml.automl: 07-06 10:20:23] {1012} INFO - iteration 50, current learner lgbm\n", + "[flaml.automl: 07-06 10:20:23] {1160} INFO - at 16.8s,\tbest lgbm's error=0.3607,\tbest xgboost's error=0.3504\n", + "[flaml.automl: 07-06 10:20:23] {1012} INFO - iteration 51, current learner extra_tree\n", + "[flaml.automl: 07-06 10:20:23] {1160} INFO - at 16.9s,\tbest extra_tree's error=0.3883,\tbest xgboost's error=0.3504\n", + "[flaml.automl: 07-06 10:20:23] {1012} INFO - iteration 52, current learner lgbm\n", + "[flaml.automl: 07-06 10:20:23] {1160} INFO - at 17.1s,\tbest lgbm's error=0.3591,\tbest xgboost's error=0.3504\n", + "[flaml.automl: 07-06 10:20:23] {1012} INFO - iteration 53, current learner lgbm\n", + "[flaml.automl: 07-06 10:20:24] {1160} INFO - at 17.3s,\tbest lgbm's error=0.3591,\tbest xgboost's error=0.3504\n", + "[flaml.automl: 07-06 10:20:24] {1012} INFO - iteration 54, current learner lgbm\n", + "[flaml.automl: 07-06 10:20:24] {1160} INFO - at 17.6s,\tbest lgbm's error=0.3591,\tbest xgboost's error=0.3504\n", + "[flaml.automl: 07-06 10:20:24] {1012} INFO - iteration 55, current learner lgbm\n", + "[flaml.automl: 07-06 10:20:24] {1160} INFO - at 17.7s,\tbest lgbm's error=0.3591,\tbest xgboost's error=0.3504\n", + "[flaml.automl: 07-06 10:20:24] {1012} INFO - iteration 56, current learner extra_tree\n", + "[flaml.automl: 07-06 10:20:24] {1160} INFO - at 18.0s,\tbest extra_tree's error=0.3877,\tbest xgboost's error=0.3504\n", + "[flaml.automl: 07-06 10:20:24] {1012} INFO - iteration 57, current learner lgbm\n", + "[flaml.automl: 07-06 10:20:25] {1160} INFO - at 18.3s,\tbest lgbm's error=0.3532,\tbest xgboost's error=0.3504\n", + "[flaml.automl: 07-06 10:20:25] {1012} INFO - iteration 58, current learner lgbm\n", + "[flaml.automl: 07-06 10:20:25] {1160} INFO - at 18.4s,\tbest lgbm's error=0.3532,\tbest xgboost's error=0.3504\n", + "[flaml.automl: 07-06 10:20:25] {1012} INFO - iteration 59, current learner lgbm\n", + "[flaml.automl: 07-06 10:20:25] {1160} INFO - at 18.9s,\tbest lgbm's error=0.3532,\tbest xgboost's error=0.3504\n", + "[flaml.automl: 07-06 10:20:25] {1012} INFO - iteration 60, current learner lgbm\n", + "[flaml.automl: 07-06 10:20:25] {1160} INFO - at 19.1s,\tbest lgbm's error=0.3532,\tbest xgboost's error=0.3504\n", + "[flaml.automl: 07-06 10:20:25] {1012} INFO - iteration 61, current learner lgbm\n", + "[flaml.automl: 07-06 10:20:26] {1160} INFO - at 19.9s,\tbest lgbm's error=0.3532,\tbest xgboost's error=0.3504\n", + "[flaml.automl: 07-06 10:20:26] {1012} INFO - iteration 62, current learner lgbm\n", + "[flaml.automl: 07-06 10:20:28] {1160} INFO - at 21.5s,\tbest lgbm's error=0.3476,\tbest lgbm's error=0.3476\n", + "[flaml.automl: 07-06 10:20:28] {1012} INFO - iteration 63, current learner lgbm\n", + "[flaml.automl: 07-06 10:20:29] {1160} INFO - at 22.9s,\tbest lgbm's error=0.3476,\tbest lgbm's error=0.3476\n", + "[flaml.automl: 07-06 10:20:29] {1012} INFO - iteration 64, current learner lgbm\n", + "[flaml.automl: 07-06 10:20:31] {1160} INFO - at 24.8s,\tbest lgbm's error=0.3470,\tbest lgbm's error=0.3470\n", + "[flaml.automl: 07-06 10:20:31] {1012} INFO - iteration 65, current learner lgbm\n", + "[flaml.automl: 07-06 10:20:33] {1160} INFO - at 26.2s,\tbest lgbm's error=0.3470,\tbest lgbm's error=0.3470\n", + "[flaml.automl: 07-06 10:20:33] {1012} INFO - iteration 66, current learner lgbm\n", + "[flaml.automl: 07-06 10:20:35] {1160} INFO - at 28.7s,\tbest lgbm's error=0.3470,\tbest lgbm's error=0.3470\n", + "[flaml.automl: 07-06 10:20:35] {1012} INFO - iteration 67, current learner lgbm\n", + "[flaml.automl: 07-06 10:20:36] {1160} INFO - at 29.8s,\tbest lgbm's error=0.3470,\tbest lgbm's error=0.3470\n", + "[flaml.automl: 07-06 10:20:36] {1012} INFO - iteration 68, current learner lgbm\n", + "[flaml.automl: 07-06 10:20:42] {1160} INFO - at 35.3s,\tbest lgbm's error=0.3321,\tbest lgbm's error=0.3321\n", + "[flaml.automl: 07-06 10:20:42] {1012} INFO - iteration 69, current learner lrl1\n", + "No low-cost partial config given to the search algorithm. For cost-frugal search, consider providing low-cost values for cost-related hps via 'low_cost_partial_config'.\n", + "/Users/qingyun/miniconda3/envs/py38/lib/python3.8/site-packages/sklearn/linear_model/_sag.py:328: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n", " warnings.warn(\"The max_iter was reached which means \"\n", - "[flaml.automl: 05-01 16:23:22] {1141} INFO - at 112.0s,\tbest lrl1's error=0.4339,\tbest lgbm's error=0.3255\n", - "[flaml.automl: 05-01 16:23:22] {993} INFO - iteration 67, current learner lrl1\n", - "/home/dmx/miniconda2/envs/blend/lib/python3.8/site-packages/sklearn/linear_model/_sag.py:328: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n", + "[flaml.automl: 07-06 10:20:42] {1160} INFO - at 35.5s,\tbest lrl1's error=0.4338,\tbest lgbm's error=0.3321\n", + "[flaml.automl: 07-06 10:20:42] {1012} INFO - iteration 70, current learner lrl1\n", + "/Users/qingyun/miniconda3/envs/py38/lib/python3.8/site-packages/sklearn/linear_model/_sag.py:328: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n", " warnings.warn(\"The max_iter was reached which means \"\n", - "[flaml.automl: 05-01 16:23:22] {1141} INFO - at 112.3s,\tbest lrl1's error=0.4338,\tbest lgbm's error=0.3255\n", - "[flaml.automl: 05-01 16:23:22] {993} INFO - iteration 68, current learner extra_tree\n", - "[flaml.automl: 05-01 16:23:28] {1141} INFO - at 117.6s,\tbest extra_tree's error=0.3835,\tbest lgbm's error=0.3255\n", - "[flaml.automl: 05-01 16:23:28] {993} INFO - iteration 69, current learner xgboost\n", - "[flaml.automl: 05-01 16:23:28] {1141} INFO - at 117.7s,\tbest xgboost's error=0.3573,\tbest lgbm's error=0.3255\n", - "[flaml.automl: 05-01 16:23:28] {993} INFO - iteration 70, current learner lgbm\n", - "[flaml.automl: 05-01 16:24:50] {1141} INFO - at 200.2s,\tbest lgbm's error=0.3255,\tbest lgbm's error=0.3255\n", - "[flaml.automl: 05-01 16:24:50] {993} INFO - iteration 71, current learner xgboost\n", - "[flaml.automl: 05-01 16:24:52] {1141} INFO - at 201.6s,\tbest xgboost's error=0.3569,\tbest lgbm's error=0.3255\n", - "[flaml.automl: 05-01 16:24:52] {993} INFO - iteration 72, current learner xgboost\n", - "[flaml.automl: 05-01 16:24:52] {1141} INFO - at 202.0s,\tbest xgboost's error=0.3569,\tbest lgbm's error=0.3255\n", - "[flaml.automl: 05-01 16:24:52] {993} INFO - iteration 73, current learner lgbm\n", - "[flaml.automl: 05-01 16:25:32] {1141} INFO - at 242.0s,\tbest lgbm's error=0.3255,\tbest lgbm's error=0.3255\n", - "[flaml.automl: 05-01 16:26:06] {1164} INFO - retrain lgbm for 34.1s\n", - "[flaml.automl: 05-01 16:26:06] {993} INFO - iteration 74, current learner lrl1\n", - "/home/dmx/miniconda2/envs/blend/lib/python3.8/site-packages/sklearn/linear_model/_sag.py:328: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n", + "[flaml.automl: 07-06 10:20:42] {1160} INFO - at 35.6s,\tbest lrl1's error=0.4338,\tbest lgbm's error=0.3321\n", + "[flaml.automl: 07-06 10:20:42] {1012} INFO - iteration 71, current learner lrl1\n", + "/Users/qingyun/miniconda3/envs/py38/lib/python3.8/site-packages/sklearn/linear_model/_sag.py:328: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n", " warnings.warn(\"The max_iter was reached which means \"\n", - "[flaml.automl: 05-01 16:26:06] {1141} INFO - at 276.4s,\tbest lrl1's error=0.4338,\tbest lgbm's error=0.3255\n", - "[flaml.automl: 05-01 16:26:40] {1164} INFO - retrain lrl1 for 33.8s\n", - "[flaml.automl: 05-01 16:26:40] {1187} INFO - selected model: LGBMClassifier(colsample_bytree=0.6957494744503872,\n", - " learning_rate=0.03736015062362056, max_bin=127,\n", - " min_child_samples=51, n_estimators=1254, num_leaves=199,\n", - " objective='binary', reg_alpha=0.06292808836994221,\n", - " reg_lambda=1.7855390807403162, subsample=0.9807570637220066)\n", - "[flaml.automl: 05-01 16:26:40] {944} INFO - fit succeeded\n" + "[flaml.automl: 07-06 10:20:42] {1160} INFO - at 35.8s,\tbest lrl1's error=0.4338,\tbest lgbm's error=0.3321\n", + "[flaml.automl: 07-06 10:20:42] {1012} INFO - iteration 72, current learner lgbm\n", + "[flaml.automl: 07-06 10:20:46] {1160} INFO - at 40.1s,\tbest lgbm's error=0.3321,\tbest lgbm's error=0.3321\n", + "[flaml.automl: 07-06 10:20:46] {1012} INFO - iteration 73, current learner lgbm\n", + "[flaml.automl: 07-06 10:20:55] {1160} INFO - at 48.6s,\tbest lgbm's error=0.3281,\tbest lgbm's error=0.3281\n", + "[flaml.automl: 07-06 10:20:55] {1012} INFO - iteration 74, current learner extra_tree\n", + "[flaml.automl: 07-06 10:20:55] {1160} INFO - at 48.8s,\tbest extra_tree's error=0.3875,\tbest lgbm's error=0.3281\n", + "[flaml.automl: 07-06 10:20:55] {1012} INFO - iteration 75, current learner lgbm\n", + "[flaml.automl: 07-06 10:20:58] {1160} INFO - at 51.1s,\tbest lgbm's error=0.3281,\tbest lgbm's error=0.3281\n", + "[flaml.automl: 07-06 10:20:58] {1012} INFO - iteration 76, current learner catboost\n", + "[flaml.automl: 07-06 10:20:58] {1160} INFO - at 52.0s,\tbest catboost's error=0.3614,\tbest lgbm's error=0.3281\n", + "[flaml.automl: 07-06 10:20:58] {1012} INFO - iteration 77, current learner lgbm\n", + "[flaml.automl: 07-06 10:21:34] {1160} INFO - at 88.0s,\tbest lgbm's error=0.3281,\tbest lgbm's error=0.3281\n", + "[flaml.automl: 07-06 10:21:34] {1012} INFO - iteration 78, current learner lgbm\n", + "[flaml.automl: 07-06 10:21:43] {1160} INFO - at 96.5s,\tbest lgbm's error=0.3281,\tbest lgbm's error=0.3281\n", + "[flaml.automl: 07-06 10:21:43] {1012} INFO - iteration 79, current learner catboost\n", + "[flaml.automl: 07-06 10:21:44] {1160} INFO - at 97.3s,\tbest catboost's error=0.3550,\tbest lgbm's error=0.3281\n", + "[flaml.automl: 07-06 10:21:44] {1012} INFO - iteration 80, current learner catboost\n", + "[flaml.automl: 07-06 10:21:48] {1160} INFO - at 101.7s,\tbest catboost's error=0.3550,\tbest lgbm's error=0.3281\n", + "[flaml.automl: 07-06 10:21:48] {1012} INFO - iteration 81, current learner lgbm\n", + "[flaml.automl: 07-06 10:21:54] {1160} INFO - at 107.7s,\tbest lgbm's error=0.3281,\tbest lgbm's error=0.3281\n", + "[flaml.automl: 07-06 10:21:54] {1012} INFO - iteration 82, current learner extra_tree\n", + "[flaml.automl: 07-06 10:21:54] {1160} INFO - at 108.0s,\tbest extra_tree's error=0.3875,\tbest lgbm's error=0.3281\n", + "[flaml.automl: 07-06 10:21:54] {1012} INFO - iteration 83, current learner rf\n", + "[flaml.automl: 07-06 10:21:54] {1160} INFO - at 108.0s,\tbest rf's error=0.4019,\tbest lgbm's error=0.3281\n", + "[flaml.automl: 07-06 10:21:54] {1012} INFO - iteration 84, current learner catboost\n", + "[flaml.automl: 07-06 10:21:58] {1160} INFO - at 111.4s,\tbest catboost's error=0.3488,\tbest lgbm's error=0.3281\n", + "[flaml.automl: 07-06 10:21:58] {1012} INFO - iteration 85, current learner catboost\n", + "[flaml.automl: 07-06 10:22:39] {1160} INFO - at 152.8s,\tbest catboost's error=0.3488,\tbest lgbm's error=0.3281\n", + "[flaml.automl: 07-06 10:22:39] {1012} INFO - iteration 86, current learner catboost\n", + "[flaml.automl: 07-06 10:22:44] {1160} INFO - at 157.5s,\tbest catboost's error=0.3472,\tbest lgbm's error=0.3281\n", + "[flaml.automl: 07-06 10:22:44] {1012} INFO - iteration 87, current learner rf\n", + "[flaml.automl: 07-06 10:22:44] {1160} INFO - at 157.7s,\tbest rf's error=0.4019,\tbest lgbm's error=0.3281\n", + "[flaml.automl: 07-06 10:22:44] {1012} INFO - iteration 88, current learner rf\n", + "[flaml.automl: 07-06 10:22:45] {1160} INFO - at 158.1s,\tbest rf's error=0.3922,\tbest lgbm's error=0.3281\n", + "[flaml.automl: 07-06 10:22:45] {1012} INFO - iteration 89, current learner rf\n", + "[flaml.automl: 07-06 10:22:45] {1160} INFO - at 158.5s,\tbest rf's error=0.3922,\tbest lgbm's error=0.3281\n", + "[flaml.automl: 07-06 10:22:45] {1012} INFO - iteration 90, current learner rf\n", + "[flaml.automl: 07-06 10:22:45] {1160} INFO - at 158.9s,\tbest rf's error=0.3922,\tbest lgbm's error=0.3281\n", + "[flaml.automl: 07-06 10:22:45] {1012} INFO - iteration 91, current learner rf\n", + "[flaml.automl: 07-06 10:22:46] {1160} INFO - at 159.6s,\tbest rf's error=0.3851,\tbest lgbm's error=0.3281\n", + "[flaml.automl: 07-06 10:22:46] {1012} INFO - iteration 92, current learner rf\n", + "[flaml.automl: 07-06 10:22:46] {1160} INFO - at 159.9s,\tbest rf's error=0.3851,\tbest lgbm's error=0.3281\n", + "[flaml.automl: 07-06 10:22:46] {1012} INFO - iteration 93, current learner extra_tree\n", + "[flaml.automl: 07-06 10:22:46] {1160} INFO - at 160.0s,\tbest extra_tree's error=0.3875,\tbest lgbm's error=0.3281\n", + "[flaml.automl: 07-06 10:22:46] {1012} INFO - iteration 94, current learner rf\n", + "[flaml.automl: 07-06 10:22:47] {1160} INFO - at 160.5s,\tbest rf's error=0.3851,\tbest lgbm's error=0.3281\n", + "[flaml.automl: 07-06 10:22:47] {1012} INFO - iteration 95, current learner rf\n", + "[flaml.automl: 07-06 10:22:48] {1160} INFO - at 161.2s,\tbest rf's error=0.3844,\tbest lgbm's error=0.3281\n", + "[flaml.automl: 07-06 10:22:48] {1012} INFO - iteration 96, current learner lgbm\n", + "[flaml.automl: 07-06 10:23:04] {1160} INFO - at 178.0s,\tbest lgbm's error=0.3281,\tbest lgbm's error=0.3281\n", + "[flaml.automl: 07-06 10:23:04] {1012} INFO - iteration 97, current learner extra_tree\n", + "[flaml.automl: 07-06 10:23:05] {1160} INFO - at 178.4s,\tbest extra_tree's error=0.3860,\tbest lgbm's error=0.3281\n", + "[flaml.automl: 07-06 10:23:05] {1012} INFO - iteration 98, current learner rf\n", + "[flaml.automl: 07-06 10:23:05] {1160} INFO - at 178.8s,\tbest rf's error=0.3844,\tbest lgbm's error=0.3281\n", + "[flaml.automl: 07-06 10:23:05] {1012} INFO - iteration 99, current learner extra_tree\n", + "[flaml.automl: 07-06 10:23:06] {1160} INFO - at 179.6s,\tbest extra_tree's error=0.3824,\tbest lgbm's error=0.3281\n", + "[flaml.automl: 07-06 10:23:06] {1012} INFO - iteration 100, current learner extra_tree\n", + "[flaml.automl: 07-06 10:23:06] {1160} INFO - at 180.0s,\tbest extra_tree's error=0.3824,\tbest lgbm's error=0.3281\n", + "[flaml.automl: 07-06 10:23:06] {1012} INFO - iteration 101, current learner lgbm\n", + "[flaml.automl: 07-06 10:23:11] {1160} INFO - at 184.2s,\tbest lgbm's error=0.3281,\tbest lgbm's error=0.3281\n", + "[flaml.automl: 07-06 10:23:11] {1012} INFO - iteration 102, current learner extra_tree\n", + "[flaml.automl: 07-06 10:23:12] {1160} INFO - at 185.7s,\tbest extra_tree's error=0.3824,\tbest lgbm's error=0.3281\n", + "[flaml.automl: 07-06 10:23:12] {1012} INFO - iteration 103, current learner extra_tree\n", + "[flaml.automl: 07-06 10:23:13] {1160} INFO - at 186.2s,\tbest extra_tree's error=0.3824,\tbest lgbm's error=0.3281\n", + "[flaml.automl: 07-06 10:23:13] {1012} INFO - iteration 104, current learner lgbm\n", + "[flaml.automl: 07-06 10:23:55] {1160} INFO - at 228.7s,\tbest lgbm's error=0.3281,\tbest lgbm's error=0.3281\n", + "[flaml.automl: 07-06 10:23:55] {1012} INFO - iteration 105, current learner extra_tree\n", + "[flaml.automl: 07-06 10:23:55] {1160} INFO - at 229.1s,\tbest extra_tree's error=0.3824,\tbest lgbm's error=0.3281\n", + "[flaml.automl: 07-06 10:23:55] {1012} INFO - iteration 106, current learner lgbm\n", + "[flaml.automl: 07-06 10:23:58] {1160} INFO - at 231.2s,\tbest lgbm's error=0.3281,\tbest lgbm's error=0.3281\n", + "[flaml.automl: 07-06 10:23:58] {1012} INFO - iteration 107, current learner catboost\n", + "[flaml.automl: 07-06 10:24:00] {1160} INFO - at 233.9s,\tbest catboost's error=0.3472,\tbest lgbm's error=0.3281\n", + "[flaml.automl: 07-06 10:24:00] {1012} INFO - iteration 108, current learner extra_tree\n", + "[flaml.automl: 07-06 10:24:01] {1160} INFO - at 234.1s,\tbest extra_tree's error=0.3824,\tbest lgbm's error=0.3281\n", + "[flaml.automl: 07-06 10:24:01] {1012} INFO - iteration 109, current learner lgbm\n", + "[flaml.automl: 07-06 10:24:09] {1160} INFO - at 242.2s,\tbest lgbm's error=0.3261,\tbest lgbm's error=0.3261\n", + "[flaml.automl: 07-06 10:24:09] {1012} INFO - iteration 110, current learner extra_tree\n", + "[flaml.automl: 07-06 10:24:09] {1160} INFO - at 243.0s,\tbest extra_tree's error=0.3824,\tbest lgbm's error=0.3261\n", + "[flaml.automl: 07-06 10:24:09] {1012} INFO - iteration 111, current learner extra_tree\n", + "[flaml.automl: 07-06 10:24:12] {1160} INFO - at 245.6s,\tbest extra_tree's error=0.3813,\tbest lgbm's error=0.3261\n", + "[flaml.automl: 07-06 10:24:12] {1012} INFO - iteration 112, current learner lgbm\n", + "[flaml.automl: 07-06 10:24:21] {1160} INFO - at 254.3s,\tbest lgbm's error=0.3261,\tbest lgbm's error=0.3261\n", + "[flaml.automl: 07-06 10:24:21] {1012} INFO - iteration 113, current learner extra_tree\n", + "[flaml.automl: 07-06 10:24:25] {1160} INFO - at 258.7s,\tbest extra_tree's error=0.3813,\tbest lgbm's error=0.3261\n", + "[flaml.automl: 07-06 10:24:25] {1012} INFO - iteration 114, current learner rf\n", + "[flaml.automl: 07-06 10:24:26] {1160} INFO - at 259.7s,\tbest rf's error=0.3821,\tbest lgbm's error=0.3261\n", + "[flaml.automl: 07-06 10:24:26] {1012} INFO - iteration 115, current learner lrl1\n", + "/Users/qingyun/miniconda3/envs/py38/lib/python3.8/site-packages/sklearn/linear_model/_sag.py:328: ConvergenceWarning: The max_iter was reached which means the coef_ did not converge\n", + " warnings.warn(\"The max_iter was reached which means \"\n", + "[flaml.automl: 07-06 10:24:26] {1160} INFO - at 259.9s,\tbest lrl1's error=0.4338,\tbest lgbm's error=0.3261\n", + "[flaml.automl: 07-06 10:24:26] {1012} INFO - iteration 116, current learner lgbm\n", + "[flaml.automl: 07-06 10:24:36] {1160} INFO - at 269.8s,\tbest lgbm's error=0.3261,\tbest lgbm's error=0.3261\n", + "[flaml.automl: 07-06 10:24:36] {1012} INFO - iteration 117, current learner lgbm\n", + "[flaml.automl: 07-06 10:24:42] {1160} INFO - at 276.0s,\tbest lgbm's error=0.3261,\tbest lgbm's error=0.3261\n", + "[flaml.automl: 07-06 10:24:42] {1012} INFO - iteration 118, current learner catboost\n", + "[flaml.automl: 07-06 10:24:46] {1160} INFO - at 279.5s,\tbest catboost's error=0.3472,\tbest lgbm's error=0.3261\n", + "[flaml.automl: 07-06 10:24:46] {1012} INFO - iteration 119, current learner rf\n", + "[flaml.automl: 07-06 10:24:47] {1160} INFO - at 280.3s,\tbest rf's error=0.3815,\tbest lgbm's error=0.3261\n", + "[flaml.automl: 07-06 10:24:47] {1012} INFO - iteration 120, current learner lgbm\n", + "[flaml.automl: 07-06 10:24:51] {1160} INFO - at 284.2s,\tbest lgbm's error=0.3261,\tbest lgbm's error=0.3261\n", + "[flaml.automl: 07-06 10:24:58] {1183} INFO - retrain lgbm for 7.5s\n", + "[flaml.automl: 07-06 10:24:58] {1012} INFO - iteration 121, current learner rf\n", + "[flaml.automl: 07-06 10:24:59] {1160} INFO - at 292.4s,\tbest rf's error=0.3815,\tbest lgbm's error=0.3261\n", + "[flaml.automl: 07-06 10:25:06] {1183} INFO - retrain rf for 7.5s\n", + "[flaml.automl: 07-06 10:25:06] {1206} INFO - selected model: LGBMClassifier(colsample_bytree=0.7264845266978395,\n", + " learning_rate=0.19101023272120005, max_bin=256,\n", + " min_child_samples=38, n_estimators=96, num_leaves=1176,\n", + " objective='binary', reg_alpha=0.23464496750365973,\n", + " reg_lambda=381.05540209167094, subsample=0.8560685526719122)\n", + "[flaml.automl: 07-06 10:25:06] {963} INFO - fit succeeded\n" ] } ], @@ -343,7 +381,7 @@ "output_type": "stream", "name": "stdout", "text": [ - "Best ML leaner: lgbm\nBest hyperparmeter config: {'n_estimators': 1254.0, 'num_leaves': 199.0, 'min_child_samples': 51.0, 'learning_rate': 0.03736015062362056, 'subsample': 0.9807570637220066, 'log_max_bin': 7.0, 'colsample_bytree': 0.6957494744503872, 'reg_alpha': 0.06292808836994221, 'reg_lambda': 1.7855390807403162, 'FLAML_sample_size': 364083}\nBest accuracy on validation data: 0.6745\nTraining duration of best run: 39.17 s\n" + "Best ML leaner: lgbm\nBest hyperparmeter config: {'n_estimators': 96.0, 'num_leaves': 1176.0, 'min_child_samples': 38.0, 'learning_rate': 0.19101023272120005, 'subsample': 0.8560685526719122, 'log_max_bin': 9.0, 'colsample_bytree': 0.7264845266978395, 'reg_alpha': 0.23464496750365973, 'reg_lambda': 381.05540209167094, 'FLAML_sample_size': 364083}\nBest accuracy on validation data: 0.6739\nTraining duration of best run: 8.084 s\n" ] } ], @@ -357,7 +395,7 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 23, "metadata": { "slideshow": { "slide_type": "slide" @@ -368,19 +406,19 @@ "output_type": "execute_result", "data": { "text/plain": [ - "LGBMClassifier(colsample_bytree=0.6957494744503872,\n", - " learning_rate=0.03736015062362056, max_bin=127,\n", - " min_child_samples=51, n_estimators=1254, num_leaves=199,\n", - " objective='binary', reg_alpha=0.06292808836994221,\n", - " reg_lambda=1.7855390807403162, subsample=0.9807570637220066)" + "LGBMClassifier(colsample_bytree=0.6204654035998071,\n", + " learning_rate=0.17783122919583272, max_bin=16,\n", + " min_child_samples=17, n_estimators=197, num_leaves=340,\n", + " objective='binary', reg_alpha=0.07967521254431058,\n", + " reg_lambda=6.332908973055842, subsample=0.8413048297641477)" ] }, "metadata": {}, - "execution_count": 6 + "execution_count": 23 } ], "source": [ - "automl.model" + "automl.model.estimator" ] }, { @@ -439,7 +477,7 @@ "output_type": "stream", "name": "stdout", "text": [ - "accuracy = 0.6720406982780357\nroc_auc = 0.7265069475647942\nlog_loss = 0.6023913941397441\nf1 = 0.5918638561777844\n" + "accuracy = 0.6715957462586951\nroc_auc = 0.7253027586499301\nlog_loss = 0.6034784793498795\nf1 = 0.5884386617100371\n" ] } ], @@ -479,7 +517,7 @@ "output_type": "stream", "name": "stdout", "text": [ - "{'Current Learner': 'lgbm', 'Current Sample': 10000, 'Current Hyper-parameters': {'n_estimators': 4, 'num_leaves': 4, 'min_child_samples': 20, 'learning_rate': 0.1, 'subsample': 1.0, 'log_max_bin': 8, 'colsample_bytree': 1.0, 'reg_alpha': 0.0009765625, 'reg_lambda': 1.0, 'FLAML_sample_size': 10000}, 'Best Learner': 'lgbm', 'Best Hyper-parameters': {'n_estimators': 4, 'num_leaves': 4, 'min_child_samples': 20, 'learning_rate': 0.1, 'subsample': 1.0, 'log_max_bin': 8, 'colsample_bytree': 1.0, 'reg_alpha': 0.0009765625, 'reg_lambda': 1.0, 'FLAML_sample_size': 10000}}\n{'Current Learner': 'lgbm', 'Current Sample': 40000, 'Current Hyper-parameters': {'n_estimators': 4, 'num_leaves': 4, 'min_child_samples': 20, 'learning_rate': 0.1, 'subsample': 1.0, 'log_max_bin': 8, 'colsample_bytree': 1.0, 'reg_alpha': 0.0009765625, 'reg_lambda': 1.0, 'FLAML_sample_size': 40000}, 'Best Learner': 'lgbm', 'Best Hyper-parameters': {'n_estimators': 4, 'num_leaves': 4, 'min_child_samples': 20, 'learning_rate': 0.1, 'subsample': 1.0, 'log_max_bin': 8, 'colsample_bytree': 1.0, 'reg_alpha': 0.0009765625, 'reg_lambda': 1.0, 'FLAML_sample_size': 40000}}\n{'Current Learner': 'lgbm', 'Current Sample': 40000, 'Current Hyper-parameters': {'n_estimators': 8.0, 'num_leaves': 4.0, 'min_child_samples': 26.0, 'learning_rate': 0.25676103984424165, 'subsample': 1.0, 'log_max_bin': 7.0, 'colsample_bytree': 0.8499027725496043, 'reg_alpha': 0.0015851927568202393, 'reg_lambda': 4.468020088227013, 'FLAML_sample_size': 40000}, 'Best Learner': 'lgbm', 'Best Hyper-parameters': {'n_estimators': 8.0, 'num_leaves': 4.0, 'min_child_samples': 26.0, 'learning_rate': 0.25676103984424165, 'subsample': 1.0, 'log_max_bin': 7.0, 'colsample_bytree': 0.8499027725496043, 'reg_alpha': 0.0015851927568202393, 'reg_lambda': 4.468020088227013, 'FLAML_sample_size': 40000}}\n{'Current Learner': 'lgbm', 'Current Sample': 40000, 'Current Hyper-parameters': {'n_estimators': 8.0, 'num_leaves': 12.0, 'min_child_samples': 30.0, 'learning_rate': 0.3127155723538002, 'subsample': 1.0, 'log_max_bin': 7.0, 'colsample_bytree': 0.7967145599266738, 'reg_alpha': 0.040774029561503077, 'reg_lambda': 22.553195483489322, 'FLAML_sample_size': 40000}, 'Best Learner': 'lgbm', 'Best Hyper-parameters': {'n_estimators': 8.0, 'num_leaves': 12.0, 'min_child_samples': 30.0, 'learning_rate': 0.3127155723538002, 'subsample': 1.0, 'log_max_bin': 7.0, 'colsample_bytree': 0.7967145599266738, 'reg_alpha': 0.040774029561503077, 'reg_lambda': 22.553195483489322, 'FLAML_sample_size': 40000}}\n{'Current Learner': 'lgbm', 'Current Sample': 40000, 'Current Hyper-parameters': {'n_estimators': 16.0, 'num_leaves': 17.0, 'min_child_samples': 53.0, 'learning_rate': 0.20056162642458597, 'subsample': 1.0, 'log_max_bin': 7.0, 'colsample_bytree': 0.6980216487058154, 'reg_alpha': 0.014469098513013432, 'reg_lambda': 7.806208895457607, 'FLAML_sample_size': 40000}, 'Best Learner': 'lgbm', 'Best Hyper-parameters': {'n_estimators': 16.0, 'num_leaves': 17.0, 'min_child_samples': 53.0, 'learning_rate': 0.20056162642458597, 'subsample': 1.0, 'log_max_bin': 7.0, 'colsample_bytree': 0.6980216487058154, 'reg_alpha': 0.014469098513013432, 'reg_lambda': 7.806208895457607, 'FLAML_sample_size': 40000}}\n{'Current Learner': 'lgbm', 'Current Sample': 40000, 'Current Hyper-parameters': {'n_estimators': 29.0, 'num_leaves': 30.0, 'min_child_samples': 27.0, 'learning_rate': 0.3345600006903613, 'subsample': 1.0, 'log_max_bin': 6.0, 'colsample_bytree': 0.6138481769580465, 'reg_alpha': 0.02608844295136239, 'reg_lambda': 4.068656226566239, 'FLAML_sample_size': 40000}, 'Best Learner': 'lgbm', 'Best Hyper-parameters': {'n_estimators': 29.0, 'num_leaves': 30.0, 'min_child_samples': 27.0, 'learning_rate': 0.3345600006903613, 'subsample': 1.0, 'log_max_bin': 6.0, 'colsample_bytree': 0.6138481769580465, 'reg_alpha': 0.02608844295136239, 'reg_lambda': 4.068656226566239, 'FLAML_sample_size': 40000}}\n{'Current Learner': 'lgbm', 'Current Sample': 40000, 'Current Hyper-parameters': {'n_estimators': 63.0, 'num_leaves': 69.0, 'min_child_samples': 24.0, 'learning_rate': 0.10431691413559704, 'subsample': 0.8895588746662894, 'log_max_bin': 5.0, 'colsample_bytree': 0.5793842857429541, 'reg_alpha': 0.04072860923394475, 'reg_lambda': 1.6480344418782087, 'FLAML_sample_size': 40000}, 'Best Learner': 'lgbm', 'Best Hyper-parameters': {'n_estimators': 63.0, 'num_leaves': 69.0, 'min_child_samples': 24.0, 'learning_rate': 0.10431691413559704, 'subsample': 0.8895588746662894, 'log_max_bin': 5.0, 'colsample_bytree': 0.5793842857429541, 'reg_alpha': 0.04072860923394475, 'reg_lambda': 1.6480344418782087, 'FLAML_sample_size': 40000}}\n{'Current Learner': 'lgbm', 'Current Sample': 364083, 'Current Hyper-parameters': {'n_estimators': 63.0, 'num_leaves': 69.0, 'min_child_samples': 24.0, 'learning_rate': 0.10431691413559704, 'subsample': 0.8895588746662894, 'log_max_bin': 5.0, 'colsample_bytree': 0.5793842857429541, 'reg_alpha': 0.04072860923394475, 'reg_lambda': 1.6480344418782087, 'FLAML_sample_size': 364083}, 'Best Learner': 'lgbm', 'Best Hyper-parameters': {'n_estimators': 63.0, 'num_leaves': 69.0, 'min_child_samples': 24.0, 'learning_rate': 0.10431691413559704, 'subsample': 0.8895588746662894, 'log_max_bin': 5.0, 'colsample_bytree': 0.5793842857429541, 'reg_alpha': 0.04072860923394475, 'reg_lambda': 1.6480344418782087, 'FLAML_sample_size': 364083}}\n{'Current Learner': 'lgbm', 'Current Sample': 364083, 'Current Hyper-parameters': {'n_estimators': 247.0, 'num_leaves': 194.0, 'min_child_samples': 40.0, 'learning_rate': 0.0784927400486222, 'subsample': 0.9292526044699931, 'log_max_bin': 6.0, 'colsample_bytree': 0.5754801137582828, 'reg_alpha': 0.2407021490497366, 'reg_lambda': 3.958964517957629, 'FLAML_sample_size': 364083}, 'Best Learner': 'lgbm', 'Best Hyper-parameters': {'n_estimators': 247.0, 'num_leaves': 194.0, 'min_child_samples': 40.0, 'learning_rate': 0.0784927400486222, 'subsample': 0.9292526044699931, 'log_max_bin': 6.0, 'colsample_bytree': 0.5754801137582828, 'reg_alpha': 0.2407021490497366, 'reg_lambda': 3.958964517957629, 'FLAML_sample_size': 364083}}\n" + "{'Current Learner': 'lgbm', 'Current Sample': 10000, 'Current Hyper-parameters': {'n_estimators': 4, 'num_leaves': 4, 'min_child_samples': 20, 'learning_rate': 0.1, 'subsample': 1.0, 'log_max_bin': 8, 'colsample_bytree': 1.0, 'reg_alpha': 0.0009765625, 'reg_lambda': 1.0, 'FLAML_sample_size': 10000}, 'Best Learner': 'lgbm', 'Best Hyper-parameters': {'n_estimators': 4, 'num_leaves': 4, 'min_child_samples': 20, 'learning_rate': 0.1, 'subsample': 1.0, 'log_max_bin': 8, 'colsample_bytree': 1.0, 'reg_alpha': 0.0009765625, 'reg_lambda': 1.0, 'FLAML_sample_size': 10000}}\n{'Current Learner': 'xgboost', 'Current Sample': 10000, 'Current Hyper-parameters': {'n_estimators': 4.0, 'max_leaves': 4.0, 'min_child_weight': 3.8156120279609143, 'learning_rate': 0.03859136192132085, 'subsample': 1.0, 'colsample_bylevel': 0.8148474110627004, 'colsample_bytree': 0.9777234800442423, 'reg_alpha': 0.0009765625, 'reg_lambda': 5.525802807180917, 'FLAML_sample_size': 10000}, 'Best Learner': 'xgboost', 'Best Hyper-parameters': {'n_estimators': 4.0, 'max_leaves': 4.0, 'min_child_weight': 3.8156120279609143, 'learning_rate': 0.03859136192132085, 'subsample': 1.0, 'colsample_bylevel': 0.8148474110627004, 'colsample_bytree': 0.9777234800442423, 'reg_alpha': 0.0009765625, 'reg_lambda': 5.525802807180917, 'FLAML_sample_size': 10000}}\n{'Current Learner': 'xgboost', 'Current Sample': 10000, 'Current Hyper-parameters': {'n_estimators': 4.0, 'max_leaves': 4.0, 'min_child_weight': 0.9999999999999981, 'learning_rate': 0.09999999999999995, 'subsample': 0.9266743941610592, 'colsample_bylevel': 1.0, 'colsample_bytree': 1.0, 'reg_alpha': 0.0013933617380144255, 'reg_lambda': 0.9999999999999992, 'FLAML_sample_size': 10000}, 'Best Learner': 'xgboost', 'Best Hyper-parameters': {'n_estimators': 4.0, 'max_leaves': 4.0, 'min_child_weight': 0.9999999999999981, 'learning_rate': 0.09999999999999995, 'subsample': 0.9266743941610592, 'colsample_bylevel': 1.0, 'colsample_bytree': 1.0, 'reg_alpha': 0.0013933617380144255, 'reg_lambda': 0.9999999999999992, 'FLAML_sample_size': 10000}}\n{'Current Learner': 'xgboost', 'Current Sample': 10000, 'Current Hyper-parameters': {'n_estimators': 4.0, 'max_leaves': 4.0, 'min_child_weight': 7.108570598095146, 'learning_rate': 0.3879619372390862, 'subsample': 0.8513627344387318, 'colsample_bylevel': 1.0, 'colsample_bytree': 0.946138073111236, 'reg_alpha': 0.0018311776973217071, 'reg_lambda': 1.5417906668008217, 'FLAML_sample_size': 10000}, 'Best Learner': 'xgboost', 'Best Hyper-parameters': {'n_estimators': 4.0, 'max_leaves': 4.0, 'min_child_weight': 7.108570598095146, 'learning_rate': 0.3879619372390862, 'subsample': 0.8513627344387318, 'colsample_bylevel': 1.0, 'colsample_bytree': 0.946138073111236, 'reg_alpha': 0.0018311776973217071, 'reg_lambda': 1.5417906668008217, 'FLAML_sample_size': 10000}}\n{'Current Learner': 'xgboost', 'Current Sample': 10000, 'Current Hyper-parameters': {'n_estimators': 4.0, 'max_leaves': 8.0, 'min_child_weight': 0.9999999999999981, 'learning_rate': 0.09999999999999995, 'subsample': 0.9266743941610592, 'colsample_bylevel': 0.9168331919232143, 'colsample_bytree': 1.0, 'reg_alpha': 0.0013933617380144255, 'reg_lambda': 0.9999999999999984, 'FLAML_sample_size': 10000}, 'Best Learner': 'xgboost', 'Best Hyper-parameters': {'n_estimators': 4.0, 'max_leaves': 8.0, 'min_child_weight': 0.9999999999999981, 'learning_rate': 0.09999999999999995, 'subsample': 0.9266743941610592, 'colsample_bylevel': 0.9168331919232143, 'colsample_bytree': 1.0, 'reg_alpha': 0.0013933617380144255, 'reg_lambda': 0.9999999999999984, 'FLAML_sample_size': 10000}}\n{'Current Learner': 'xgboost', 'Current Sample': 10000, 'Current Hyper-parameters': {'n_estimators': 12.0, 'max_leaves': 8.0, 'min_child_weight': 3.1718521304832716, 'learning_rate': 0.18850082505120708, 'subsample': 0.9647550813352507, 'colsample_bylevel': 1.0, 'colsample_bytree': 1.0, 'reg_alpha': 0.0010352743615901622, 'reg_lambda': 0.4380234559597813, 'FLAML_sample_size': 10000}, 'Best Learner': 'xgboost', 'Best Hyper-parameters': {'n_estimators': 12.0, 'max_leaves': 8.0, 'min_child_weight': 3.1718521304832716, 'learning_rate': 0.18850082505120708, 'subsample': 0.9647550813352507, 'colsample_bylevel': 1.0, 'colsample_bytree': 1.0, 'reg_alpha': 0.0010352743615901622, 'reg_lambda': 0.4380234559597813, 'FLAML_sample_size': 10000}}\n{'Current Learner': 'xgboost', 'Current Sample': 10000, 'Current Hyper-parameters': {'n_estimators': 23.0, 'max_leaves': 6.0, 'min_child_weight': 6.460451502502143, 'learning_rate': 0.4839966785164543, 'subsample': 1.0, 'colsample_bylevel': 0.8811171114303163, 'colsample_bytree': 0.8499027725496043, 'reg_alpha': 0.0016804960453779686, 'reg_lambda': 1.9570976003429221, 'FLAML_sample_size': 10000}, 'Best Learner': 'xgboost', 'Best Hyper-parameters': {'n_estimators': 23.0, 'max_leaves': 6.0, 'min_child_weight': 6.460451502502143, 'learning_rate': 0.4839966785164543, 'subsample': 1.0, 'colsample_bylevel': 0.8811171114303163, 'colsample_bytree': 0.8499027725496043, 'reg_alpha': 0.0016804960453779686, 'reg_lambda': 1.9570976003429221, 'FLAML_sample_size': 10000}}\n{'Current Learner': 'xgboost', 'Current Sample': 40000, 'Current Hyper-parameters': {'n_estimators': 23.0, 'max_leaves': 6.0, 'min_child_weight': 6.460451502502143, 'learning_rate': 0.4839966785164543, 'subsample': 1.0, 'colsample_bylevel': 0.8811171114303163, 'colsample_bytree': 0.8499027725496043, 'reg_alpha': 0.0016804960453779686, 'reg_lambda': 1.9570976003429221, 'FLAML_sample_size': 40000}, 'Best Learner': 'xgboost', 'Best Hyper-parameters': {'n_estimators': 23.0, 'max_leaves': 6.0, 'min_child_weight': 6.460451502502143, 'learning_rate': 0.4839966785164543, 'subsample': 1.0, 'colsample_bylevel': 0.8811171114303163, 'colsample_bytree': 0.8499027725496043, 'reg_alpha': 0.0016804960453779686, 'reg_lambda': 1.9570976003429221, 'FLAML_sample_size': 40000}}\n{'Current Learner': 'xgboost', 'Current Sample': 40000, 'Current Hyper-parameters': {'n_estimators': 74.0, 'max_leaves': 4.0, 'min_child_weight': 7.678451859748732, 'learning_rate': 0.17743258768982648, 'subsample': 1.0, 'colsample_bylevel': 0.6993908476086765, 'colsample_bytree': 0.804982542436943, 'reg_alpha': 0.0009765625, 'reg_lambda': 3.547311998768567, 'FLAML_sample_size': 40000}, 'Best Learner': 'xgboost', 'Best Hyper-parameters': {'n_estimators': 74.0, 'max_leaves': 4.0, 'min_child_weight': 7.678451859748732, 'learning_rate': 0.17743258768982648, 'subsample': 1.0, 'colsample_bylevel': 0.6993908476086765, 'colsample_bytree': 0.804982542436943, 'reg_alpha': 0.0009765625, 'reg_lambda': 3.547311998768567, 'FLAML_sample_size': 40000}}\n{'Current Learner': 'xgboost', 'Current Sample': 40000, 'Current Hyper-parameters': {'n_estimators': 135.0, 'max_leaves': 7.0, 'min_child_weight': 1.1024151666996367, 'learning_rate': 0.29597808772418305, 'subsample': 1.0, 'colsample_bylevel': 0.508550359279992, 'colsample_bytree': 0.7208090706891741, 'reg_alpha': 0.0017607866203119683, 'reg_lambda': 1.8488863473486097, 'FLAML_sample_size': 40000}, 'Best Learner': 'xgboost', 'Best Hyper-parameters': {'n_estimators': 135.0, 'max_leaves': 7.0, 'min_child_weight': 1.1024151666996367, 'learning_rate': 0.29597808772418305, 'subsample': 1.0, 'colsample_bylevel': 0.508550359279992, 'colsample_bytree': 0.7208090706891741, 'reg_alpha': 0.0017607866203119683, 'reg_lambda': 1.8488863473486097, 'FLAML_sample_size': 40000}}\n{'Current Learner': 'xgboost', 'Current Sample': 40000, 'Current Hyper-parameters': {'n_estimators': 292.0, 'max_leaves': 16.0, 'min_child_weight': 0.8072004842817196, 'learning_rate': 0.09228694613650908, 'subsample': 0.8895588746662894, 'colsample_bylevel': 0.35630670144162413, 'colsample_bytree': 0.6863451794740817, 'reg_alpha': 0.0027488949929569983, 'reg_lambda': 0.7489028833779001, 'FLAML_sample_size': 40000}, 'Best Learner': 'xgboost', 'Best Hyper-parameters': {'n_estimators': 292.0, 'max_leaves': 16.0, 'min_child_weight': 0.8072004842817196, 'learning_rate': 0.09228694613650908, 'subsample': 0.8895588746662894, 'colsample_bylevel': 0.35630670144162413, 'colsample_bytree': 0.6863451794740817, 'reg_alpha': 0.0027488949929569983, 'reg_lambda': 0.7489028833779001, 'FLAML_sample_size': 40000}}\n{'Current Learner': 'lgbm', 'Current Sample': 364083, 'Current Hyper-parameters': {'n_estimators': 29.0, 'num_leaves': 30.0, 'min_child_samples': 27.0, 'learning_rate': 0.3345600006903613, 'subsample': 1.0, 'log_max_bin': 6.0, 'colsample_bytree': 0.6138481769580465, 'reg_alpha': 0.02608844295136239, 'reg_lambda': 4.068656226566239, 'FLAML_sample_size': 364083}, 'Best Learner': 'lgbm', 'Best Hyper-parameters': {'n_estimators': 29.0, 'num_leaves': 30.0, 'min_child_samples': 27.0, 'learning_rate': 0.3345600006903613, 'subsample': 1.0, 'log_max_bin': 6.0, 'colsample_bytree': 0.6138481769580465, 'reg_alpha': 0.02608844295136239, 'reg_lambda': 4.068656226566239, 'FLAML_sample_size': 364083}}\n{'Current Learner': 'lgbm', 'Current Sample': 364083, 'Current Hyper-parameters': {'n_estimators': 32.0, 'num_leaves': 66.0, 'min_child_samples': 30.0, 'learning_rate': 0.12647892799791985, 'subsample': 0.9860465287537004, 'log_max_bin': 6.0, 'colsample_bytree': 0.6645176750515542, 'reg_alpha': 0.0018225057315840252, 'reg_lambda': 30.9118880488899, 'FLAML_sample_size': 364083}, 'Best Learner': 'lgbm', 'Best Hyper-parameters': {'n_estimators': 32.0, 'num_leaves': 66.0, 'min_child_samples': 30.0, 'learning_rate': 0.12647892799791985, 'subsample': 0.9860465287537004, 'log_max_bin': 6.0, 'colsample_bytree': 0.6645176750515542, 'reg_alpha': 0.0018225057315840252, 'reg_lambda': 30.9118880488899, 'FLAML_sample_size': 364083}}\n{'Current Learner': 'lgbm', 'Current Sample': 364083, 'Current Hyper-parameters': {'n_estimators': 125.0, 'num_leaves': 186.0, 'min_child_samples': 50.0, 'learning_rate': 0.0951684364825494, 'subsample': 1.0, 'log_max_bin': 7.0, 'colsample_bytree': 0.6606135030668829, 'reg_alpha': 0.01077083294762061, 'reg_lambda': 74.25759126075202, 'FLAML_sample_size': 364083}, 'Best Learner': 'lgbm', 'Best Hyper-parameters': {'n_estimators': 125.0, 'num_leaves': 186.0, 'min_child_samples': 50.0, 'learning_rate': 0.0951684364825494, 'subsample': 1.0, 'log_max_bin': 7.0, 'colsample_bytree': 0.6606135030668829, 'reg_alpha': 0.01077083294762061, 'reg_lambda': 74.25759126075202, 'FLAML_sample_size': 364083}}\n{'Current Learner': 'lgbm', 'Current Sample': 364083, 'Current Hyper-parameters': {'n_estimators': 164.0, 'num_leaves': 304.0, 'min_child_samples': 75.0, 'learning_rate': 0.21886405778268478, 'subsample': 0.9048064340763577, 'log_max_bin': 9.0, 'colsample_bytree': 0.632220807242231, 'reg_alpha': 0.03154355161993957, 'reg_lambda': 190.9985711118577, 'FLAML_sample_size': 364083}, 'Best Learner': 'lgbm', 'Best Hyper-parameters': {'n_estimators': 164.0, 'num_leaves': 304.0, 'min_child_samples': 75.0, 'learning_rate': 0.21886405778268478, 'subsample': 0.9048064340763577, 'log_max_bin': 9.0, 'colsample_bytree': 0.632220807242231, 'reg_alpha': 0.03154355161993957, 'reg_lambda': 190.9985711118577, 'FLAML_sample_size': 364083}}\n" ] } ], @@ -505,8 +543,8 @@ "output_type": "display_data", "data": { "text/plain": "
", - "image/svg+xml": "\n\n\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n", - "image/png": "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\n" + "image/svg+xml": "\n\n\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n", + "image/png": "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\n" }, "metadata": { "needs_background": "light" @@ -701,139 +739,117 @@ "output_type": "stream", "name": "stderr", "text": [ - "[flaml.automl: 05-01 16:27:27] {890} INFO - Evaluation method: holdout\n", - "[flaml.automl: 05-01 16:27:27] {596} INFO - Using StratifiedKFold\n", - "[flaml.automl: 05-01 16:27:27] {911} INFO - Minimizing error metric: 1-accuracy\n", - "[flaml.automl: 05-01 16:27:27] {929} INFO - List of ML learners in AutoML Run: ['RGF', 'lgbm', 'rf', 'xgboost']\n", - "[flaml.automl: 05-01 16:27:27] {993} INFO - iteration 0, current learner RGF\n", - "/home/dmx/miniconda2/envs/blend/lib/python3.8/site-packages/rgf/utils.py:225: UserWarning: Cannot find FastRGF executable files. FastRGF estimators will be unavailable for usage.\n", + "[flaml.automl: 07-06 10:25:22] {908} INFO - Evaluation method: holdout\n", + "[flaml.automl: 07-06 10:25:22] {607} INFO - Using StratifiedKFold\n", + "[flaml.automl: 07-06 10:25:22] {929} INFO - Minimizing error metric: 1-accuracy\n", + "[flaml.automl: 07-06 10:25:22] {948} INFO - List of ML learners in AutoML Run: ['RGF', 'lgbm', 'rf', 'xgboost']\n", + "[flaml.automl: 07-06 10:25:22] {1012} INFO - iteration 0, current learner RGF\n", + "/Users/qingyun/miniconda3/envs/py38/lib/python3.8/site-packages/rgf/utils.py:224: UserWarning: Cannot find FastRGF executable files. FastRGF estimators will be unavailable for usage.\n", " warnings.warn(\"Cannot find FastRGF executable files. \"\n", - "[flaml.automl: 05-01 16:27:30] {1141} INFO - at 2.8s,\tbest RGF's error=0.3840,\tbest RGF's error=0.3840\n", - "[flaml.automl: 05-01 16:27:30] {993} INFO - iteration 1, current learner RGF\n", - "[flaml.automl: 05-01 16:27:31] {1141} INFO - at 4.1s,\tbest RGF's error=0.3840,\tbest RGF's error=0.3840\n", - "[flaml.automl: 05-01 16:27:31] {993} INFO - iteration 2, current learner RGF\n", - "[flaml.automl: 05-01 16:27:32] {1141} INFO - at 5.3s,\tbest RGF's error=0.3840,\tbest RGF's error=0.3840\n", - "[flaml.automl: 05-01 16:27:32] {993} INFO - iteration 3, current learner RGF\n", - "[flaml.automl: 05-01 16:27:33] {1141} INFO - at 6.6s,\tbest RGF's error=0.3840,\tbest RGF's error=0.3840\n", - "[flaml.automl: 05-01 16:27:33] {993} INFO - iteration 4, current learner lgbm\n", - "[flaml.automl: 05-01 16:27:33] {1141} INFO - at 6.7s,\tbest lgbm's error=0.3777,\tbest lgbm's error=0.3777\n", - "[flaml.automl: 05-01 16:27:33] {993} INFO - iteration 5, current learner lgbm\n", - "[flaml.automl: 05-01 16:27:33] {1141} INFO - at 6.8s,\tbest lgbm's error=0.3777,\tbest lgbm's error=0.3777\n", - "[flaml.automl: 05-01 16:27:33] {993} INFO - iteration 6, current learner lgbm\n", - "[flaml.automl: 05-01 16:27:34] {1141} INFO - at 6.8s,\tbest lgbm's error=0.3777,\tbest lgbm's error=0.3777\n", - "[flaml.automl: 05-01 16:27:34] {993} INFO - iteration 7, current learner lgbm\n", - "[flaml.automl: 05-01 16:27:34] {1141} INFO - at 6.9s,\tbest lgbm's error=0.3777,\tbest lgbm's error=0.3777\n", - "[flaml.automl: 05-01 16:27:34] {993} INFO - iteration 8, current learner lgbm\n", - "[flaml.automl: 05-01 16:27:34] {1141} INFO - at 7.0s,\tbest lgbm's error=0.3777,\tbest lgbm's error=0.3777\n", - "[flaml.automl: 05-01 16:27:34] {993} INFO - iteration 9, current learner lgbm\n", - "[flaml.automl: 05-01 16:27:34] {1141} INFO - at 7.0s,\tbest lgbm's error=0.3777,\tbest lgbm's error=0.3777\n", - "[flaml.automl: 05-01 16:27:34] {993} INFO - iteration 10, current learner lgbm\n", - "[flaml.automl: 05-01 16:27:34] {1141} INFO - at 7.2s,\tbest lgbm's error=0.3765,\tbest lgbm's error=0.3765\n", - "[flaml.automl: 05-01 16:27:34] {993} INFO - iteration 11, current learner lgbm\n", - "[flaml.automl: 05-01 16:27:34] {1141} INFO - at 7.4s,\tbest lgbm's error=0.3686,\tbest lgbm's error=0.3686\n", - "[flaml.automl: 05-01 16:27:34] {993} INFO - iteration 12, current learner lgbm\n", - "[flaml.automl: 05-01 16:27:34] {1141} INFO - at 7.5s,\tbest lgbm's error=0.3686,\tbest lgbm's error=0.3686\n", - "[flaml.automl: 05-01 16:27:34] {993} INFO - iteration 13, current learner lgbm\n", - "[flaml.automl: 05-01 16:27:35] {1141} INFO - at 7.8s,\tbest lgbm's error=0.3611,\tbest lgbm's error=0.3611\n", - "[flaml.automl: 05-01 16:27:35] {993} INFO - iteration 14, current learner lgbm\n", - "[flaml.automl: 05-01 16:27:35] {1141} INFO - at 8.0s,\tbest lgbm's error=0.3611,\tbest lgbm's error=0.3611\n", - "[flaml.automl: 05-01 16:27:35] {993} INFO - iteration 15, current learner lgbm\n", - "[flaml.automl: 05-01 16:27:35] {1141} INFO - at 8.1s,\tbest lgbm's error=0.3611,\tbest lgbm's error=0.3611\n", - "[flaml.automl: 05-01 16:27:35] {993} INFO - iteration 16, current learner RGF\n", - "[flaml.automl: 05-01 16:27:36] {1141} INFO - at 9.2s,\tbest RGF's error=0.3840,\tbest lgbm's error=0.3611\n", - "[flaml.automl: 05-01 16:27:36] {993} INFO - iteration 17, current learner lgbm\n", - "[flaml.automl: 05-01 16:27:36] {1141} INFO - at 9.5s,\tbest lgbm's error=0.3603,\tbest lgbm's error=0.3603\n", - "[flaml.automl: 05-01 16:27:36] {993} INFO - iteration 18, current learner lgbm\n", - "[flaml.automl: 05-01 16:27:37] {1141} INFO - at 9.8s,\tbest lgbm's error=0.3603,\tbest lgbm's error=0.3603\n", - "[flaml.automl: 05-01 16:27:37] {993} INFO - iteration 19, current learner lgbm\n", - "[flaml.automl: 05-01 16:27:37] {1141} INFO - at 10.2s,\tbest lgbm's error=0.3603,\tbest lgbm's error=0.3603\n", - "[flaml.automl: 05-01 16:27:37] {993} INFO - iteration 20, current learner lgbm\n", - "[flaml.automl: 05-01 16:27:37] {1141} INFO - at 10.5s,\tbest lgbm's error=0.3603,\tbest lgbm's error=0.3603\n", - "[flaml.automl: 05-01 16:27:37] {993} INFO - iteration 21, current learner lgbm\n", - "[flaml.automl: 05-01 16:27:38] {1141} INFO - at 10.8s,\tbest lgbm's error=0.3518,\tbest lgbm's error=0.3518\n", - "[flaml.automl: 05-01 16:27:38] {993} INFO - iteration 22, current learner lgbm\n", - "[flaml.automl: 05-01 16:27:38] {1141} INFO - at 11.0s,\tbest lgbm's error=0.3518,\tbest lgbm's error=0.3518\n", - "[flaml.automl: 05-01 16:27:38] {993} INFO - iteration 23, current learner lgbm\n", - "[flaml.automl: 05-01 16:27:39] {1141} INFO - at 11.8s,\tbest lgbm's error=0.3504,\tbest lgbm's error=0.3504\n", - "[flaml.automl: 05-01 16:27:39] {993} INFO - iteration 24, current learner lgbm\n", - "[flaml.automl: 05-01 16:27:39] {1141} INFO - at 12.1s,\tbest lgbm's error=0.3504,\tbest lgbm's error=0.3504\n", - "[flaml.automl: 05-01 16:27:39] {993} INFO - iteration 25, current learner lgbm\n", - "[flaml.automl: 05-01 16:27:43] {1141} INFO - at 16.1s,\tbest lgbm's error=0.3504,\tbest lgbm's error=0.3504\n", - "[flaml.automl: 05-01 16:27:43] {993} INFO - iteration 26, current learner lgbm\n", - "[flaml.automl: 05-01 16:27:48] {1141} INFO - at 21.0s,\tbest lgbm's error=0.3427,\tbest lgbm's error=0.3427\n", - "[flaml.automl: 05-01 16:27:48] {993} INFO - iteration 27, current learner xgboost\n", - "[flaml.automl: 05-01 16:27:48] {1141} INFO - at 21.0s,\tbest xgboost's error=0.3787,\tbest lgbm's error=0.3427\n", - "[flaml.automl: 05-01 16:27:48] {993} INFO - iteration 28, current learner xgboost\n", - "[flaml.automl: 05-01 16:27:48] {1141} INFO - at 21.1s,\tbest xgboost's error=0.3768,\tbest lgbm's error=0.3427\n", - "[flaml.automl: 05-01 16:27:48] {993} INFO - iteration 29, current learner RGF\n", - "[flaml.automl: 05-01 16:27:49] {1141} INFO - at 22.3s,\tbest RGF's error=0.3762,\tbest lgbm's error=0.3427\n", - "[flaml.automl: 05-01 16:27:49] {993} INFO - iteration 30, current learner lgbm\n", - "[flaml.automl: 05-01 16:27:53] {1141} INFO - at 25.9s,\tbest lgbm's error=0.3427,\tbest lgbm's error=0.3427\n", - "[flaml.automl: 05-01 16:27:53] {993} INFO - iteration 31, current learner lgbm\n", - "[flaml.automl: 05-01 16:27:59] {1141} INFO - at 32.2s,\tbest lgbm's error=0.3427,\tbest lgbm's error=0.3427\n", - "[flaml.automl: 05-01 16:27:59] {993} INFO - iteration 32, current learner xgboost\n", - "[flaml.automl: 05-01 16:27:59] {1141} INFO - at 32.2s,\tbest xgboost's error=0.3765,\tbest lgbm's error=0.3427\n", - "[flaml.automl: 05-01 16:27:59] {993} INFO - iteration 33, current learner rf\n", - "[flaml.automl: 05-01 16:27:59] {1141} INFO - at 32.4s,\tbest rf's error=0.4052,\tbest lgbm's error=0.3427\n", - "[flaml.automl: 05-01 16:27:59] {993} INFO - iteration 34, current learner rf\n", - "[flaml.automl: 05-01 16:27:59] {1141} INFO - at 32.6s,\tbest rf's error=0.4052,\tbest lgbm's error=0.3427\n", - "[flaml.automl: 05-01 16:27:59] {993} INFO - iteration 35, current learner rf\n", - "[flaml.automl: 05-01 16:28:00] {1141} INFO - at 32.8s,\tbest rf's error=0.4012,\tbest lgbm's error=0.3427\n", - "[flaml.automl: 05-01 16:28:00] {993} INFO - iteration 36, current learner xgboost\n", - "[flaml.automl: 05-01 16:28:00] {1141} INFO - at 32.9s,\tbest xgboost's error=0.3746,\tbest lgbm's error=0.3427\n", - "[flaml.automl: 05-01 16:28:00] {993} INFO - iteration 37, current learner xgboost\n", - "[flaml.automl: 05-01 16:28:00] {1141} INFO - at 32.9s,\tbest xgboost's error=0.3689,\tbest lgbm's error=0.3427\n", - "[flaml.automl: 05-01 16:28:00] {993} INFO - iteration 38, current learner xgboost\n", - "[flaml.automl: 05-01 16:28:00] {1141} INFO - at 33.0s,\tbest xgboost's error=0.3689,\tbest lgbm's error=0.3427\n", - "[flaml.automl: 05-01 16:28:00] {993} INFO - iteration 39, current learner xgboost\n", - "[flaml.automl: 05-01 16:28:00] {1141} INFO - at 33.1s,\tbest xgboost's error=0.3617,\tbest lgbm's error=0.3427\n", - "[flaml.automl: 05-01 16:28:00] {993} INFO - iteration 40, current learner xgboost\n", - "[flaml.automl: 05-01 16:28:00] {1141} INFO - at 33.2s,\tbest xgboost's error=0.3610,\tbest lgbm's error=0.3427\n", - "[flaml.automl: 05-01 16:28:00] {993} INFO - iteration 41, current learner xgboost\n", - "[flaml.automl: 05-01 16:28:00] {1141} INFO - at 33.3s,\tbest xgboost's error=0.3610,\tbest lgbm's error=0.3427\n", - "[flaml.automl: 05-01 16:28:00] {993} INFO - iteration 42, current learner RGF\n", - "[flaml.automl: 05-01 16:28:01] {1141} INFO - at 34.5s,\tbest RGF's error=0.3762,\tbest lgbm's error=0.3427\n", - "[flaml.automl: 05-01 16:28:01] {993} INFO - iteration 43, current learner xgboost\n", - "[flaml.automl: 05-01 16:28:01] {1141} INFO - at 34.6s,\tbest xgboost's error=0.3610,\tbest lgbm's error=0.3427\n", - "[flaml.automl: 05-01 16:28:01] {993} INFO - iteration 44, current learner xgboost\n", - "[flaml.automl: 05-01 16:28:01] {1141} INFO - at 34.7s,\tbest xgboost's error=0.3595,\tbest lgbm's error=0.3427\n", - "[flaml.automl: 05-01 16:28:01] {993} INFO - iteration 45, current learner xgboost\n", - "[flaml.automl: 05-01 16:28:02] {1141} INFO - at 34.8s,\tbest xgboost's error=0.3595,\tbest lgbm's error=0.3427\n", - "[flaml.automl: 05-01 16:28:02] {993} INFO - iteration 46, current learner lgbm\n", - "[flaml.automl: 05-01 16:28:05] {1141} INFO - at 37.8s,\tbest lgbm's error=0.3427,\tbest lgbm's error=0.3427\n", - "[flaml.automl: 05-01 16:28:05] {993} INFO - iteration 47, current learner xgboost\n", - "[flaml.automl: 05-01 16:28:05] {1141} INFO - at 38.0s,\tbest xgboost's error=0.3590,\tbest lgbm's error=0.3427\n", - "[flaml.automl: 05-01 16:28:05] {993} INFO - iteration 48, current learner lgbm\n", - "[flaml.automl: 05-01 16:28:13] {1141} INFO - at 45.9s,\tbest lgbm's error=0.3427,\tbest lgbm's error=0.3427\n", - "[flaml.automl: 05-01 16:28:13] {993} INFO - iteration 49, current learner rf\n", - "[flaml.automl: 05-01 16:28:13] {1141} INFO - at 46.1s,\tbest rf's error=0.3926,\tbest lgbm's error=0.3427\n", - "[flaml.automl: 05-01 16:28:13] {993} INFO - iteration 50, current learner xgboost\n", - "[flaml.automl: 05-01 16:28:13] {1141} INFO - at 46.3s,\tbest xgboost's error=0.3590,\tbest lgbm's error=0.3427\n", - "[flaml.automl: 05-01 16:28:13] {993} INFO - iteration 51, current learner rf\n", - "[flaml.automl: 05-01 16:28:13] {1141} INFO - at 46.5s,\tbest rf's error=0.3926,\tbest lgbm's error=0.3427\n", - "[flaml.automl: 05-01 16:28:13] {993} INFO - iteration 52, current learner rf\n", - "[flaml.automl: 05-01 16:28:13] {1141} INFO - at 46.7s,\tbest rf's error=0.3926,\tbest lgbm's error=0.3427\n", - "[flaml.automl: 05-01 16:28:13] {993} INFO - iteration 53, current learner lgbm\n", - "[flaml.automl: 05-01 16:28:15] {1141} INFO - at 48.5s,\tbest lgbm's error=0.3427,\tbest lgbm's error=0.3427\n", - "[flaml.automl: 05-01 16:28:15] {993} INFO - iteration 54, current learner RGF\n", - "[flaml.automl: 05-01 16:28:16] {1141} INFO - at 49.6s,\tbest RGF's error=0.3762,\tbest lgbm's error=0.3427\n", - "[flaml.automl: 05-01 16:28:16] {993} INFO - iteration 55, current learner rf\n", - "[flaml.automl: 05-01 16:28:17] {1141} INFO - at 49.8s,\tbest rf's error=0.3926,\tbest lgbm's error=0.3427\n", - "[flaml.automl: 05-01 16:28:17] {993} INFO - iteration 56, current learner lgbm\n", - "[flaml.automl: 05-01 16:28:19] {1141} INFO - at 52.4s,\tbest lgbm's error=0.3427,\tbest lgbm's error=0.3427\n", - "[flaml.automl: 05-01 16:28:23] {1164} INFO - retrain lgbm for 3.4s\n", - "[flaml.automl: 05-01 16:28:23] {993} INFO - iteration 57, current learner rf\n", - "[flaml.automl: 05-01 16:28:23] {1141} INFO - at 56.0s,\tbest rf's error=0.3926,\tbest lgbm's error=0.3427\n", - "[flaml.automl: 05-01 16:28:26] {1164} INFO - retrain rf for 3.1s\n", - "[flaml.automl: 05-01 16:28:26] {993} INFO - iteration 58, current learner rf\n", - "[flaml.automl: 05-01 16:28:26] {1141} INFO - at 59.2s,\tbest rf's error=0.3926,\tbest lgbm's error=0.3427\n", - "[flaml.automl: 05-01 16:28:27] {1164} INFO - retrain rf for 1.0s\n", - "[flaml.automl: 05-01 16:28:27] {1187} INFO - selected model: LGBMClassifier(colsample_bytree=0.5793842857429541,\n", - " learning_rate=0.10431691413559704, max_bin=31,\n", - " min_child_samples=24, n_estimators=63, num_leaves=69,\n", - " objective='binary', reg_alpha=0.04072860923394475,\n", - " reg_lambda=1.6480344418782087, subsample=0.8895588746662894)\n", - "[flaml.automl: 05-01 16:28:27] {944} INFO - fit succeeded\n" + "[flaml.automl: 07-06 10:25:23] {1160} INFO - at 1.3s,\tbest RGF's error=0.3840,\tbest RGF's error=0.3840\n", + "[flaml.automl: 07-06 10:25:23] {1012} INFO - iteration 1, current learner RGF\n", + "[flaml.automl: 07-06 10:25:24] {1160} INFO - at 1.9s,\tbest RGF's error=0.3840,\tbest RGF's error=0.3840\n", + "[flaml.automl: 07-06 10:25:24] {1012} INFO - iteration 2, current learner RGF\n", + "[flaml.automl: 07-06 10:25:24] {1160} INFO - at 2.5s,\tbest RGF's error=0.3840,\tbest RGF's error=0.3840\n", + "[flaml.automl: 07-06 10:25:24] {1012} INFO - iteration 3, current learner lgbm\n", + "[flaml.automl: 07-06 10:25:24] {1160} INFO - at 2.5s,\tbest lgbm's error=0.3777,\tbest lgbm's error=0.3777\n", + "[flaml.automl: 07-06 10:25:24] {1012} INFO - iteration 4, current learner RGF\n", + "[flaml.automl: 07-06 10:25:25] {1160} INFO - at 3.1s,\tbest RGF's error=0.3840,\tbest lgbm's error=0.3777\n", + "[flaml.automl: 07-06 10:25:25] {1012} INFO - iteration 5, current learner lgbm\n", + "[flaml.automl: 07-06 10:25:25] {1160} INFO - at 3.2s,\tbest lgbm's error=0.3777,\tbest lgbm's error=0.3777\n", + "[flaml.automl: 07-06 10:25:25] {1012} INFO - iteration 6, current learner lgbm\n", + "[flaml.automl: 07-06 10:25:25] {1160} INFO - at 3.2s,\tbest lgbm's error=0.3777,\tbest lgbm's error=0.3777\n", + "[flaml.automl: 07-06 10:25:25] {1012} INFO - iteration 7, current learner lgbm\n", + "[flaml.automl: 07-06 10:25:25] {1160} INFO - at 3.3s,\tbest lgbm's error=0.3777,\tbest lgbm's error=0.3777\n", + "[flaml.automl: 07-06 10:25:25] {1012} INFO - iteration 8, current learner lgbm\n", + "[flaml.automl: 07-06 10:25:25] {1160} INFO - at 3.3s,\tbest lgbm's error=0.3777,\tbest lgbm's error=0.3777\n", + "[flaml.automl: 07-06 10:25:25] {1012} INFO - iteration 9, current learner lgbm\n", + "[flaml.automl: 07-06 10:25:25] {1160} INFO - at 3.5s,\tbest lgbm's error=0.3765,\tbest lgbm's error=0.3765\n", + "[flaml.automl: 07-06 10:25:25] {1012} INFO - iteration 10, current learner lgbm\n", + "[flaml.automl: 07-06 10:25:26] {1160} INFO - at 3.6s,\tbest lgbm's error=0.3765,\tbest lgbm's error=0.3765\n", + "[flaml.automl: 07-06 10:25:26] {1012} INFO - iteration 11, current learner lgbm\n", + "[flaml.automl: 07-06 10:25:26] {1160} INFO - at 3.8s,\tbest lgbm's error=0.3752,\tbest lgbm's error=0.3752\n", + "[flaml.automl: 07-06 10:25:26] {1012} INFO - iteration 12, current learner lgbm\n", + "[flaml.automl: 07-06 10:25:26] {1160} INFO - at 4.0s,\tbest lgbm's error=0.3587,\tbest lgbm's error=0.3587\n", + "[flaml.automl: 07-06 10:25:26] {1012} INFO - iteration 13, current learner lgbm\n", + "[flaml.automl: 07-06 10:25:26] {1160} INFO - at 4.2s,\tbest lgbm's error=0.3587,\tbest lgbm's error=0.3587\n", + "[flaml.automl: 07-06 10:25:26] {1012} INFO - iteration 14, current learner lgbm\n", + "[flaml.automl: 07-06 10:25:26] {1160} INFO - at 4.5s,\tbest lgbm's error=0.3519,\tbest lgbm's error=0.3519\n", + "[flaml.automl: 07-06 10:25:26] {1012} INFO - iteration 15, current learner lgbm\n", + "[flaml.automl: 07-06 10:25:27] {1160} INFO - at 4.7s,\tbest lgbm's error=0.3519,\tbest lgbm's error=0.3519\n", + "[flaml.automl: 07-06 10:25:27] {1012} INFO - iteration 16, current learner RGF\n", + "[flaml.automl: 07-06 10:25:27] {1160} INFO - at 5.3s,\tbest RGF's error=0.3840,\tbest lgbm's error=0.3519\n", + "[flaml.automl: 07-06 10:25:27] {1012} INFO - iteration 17, current learner lgbm\n", + "[flaml.automl: 07-06 10:25:27] {1160} INFO - at 5.5s,\tbest lgbm's error=0.3519,\tbest lgbm's error=0.3519\n", + "[flaml.automl: 07-06 10:25:27] {1012} INFO - iteration 18, current learner lgbm\n", + "[flaml.automl: 07-06 10:25:28] {1160} INFO - at 5.9s,\tbest lgbm's error=0.3519,\tbest lgbm's error=0.3519\n", + "[flaml.automl: 07-06 10:25:28] {1012} INFO - iteration 19, current learner lgbm\n", + "[flaml.automl: 07-06 10:25:28] {1160} INFO - at 6.2s,\tbest lgbm's error=0.3519,\tbest lgbm's error=0.3519\n", + "[flaml.automl: 07-06 10:25:28] {1012} INFO - iteration 20, current learner RGF\n", + "[flaml.automl: 07-06 10:25:29] {1160} INFO - at 6.8s,\tbest RGF's error=0.3762,\tbest lgbm's error=0.3519\n", + "[flaml.automl: 07-06 10:25:29] {1012} INFO - iteration 21, current learner lgbm\n", + "[flaml.automl: 07-06 10:25:31] {1160} INFO - at 8.6s,\tbest lgbm's error=0.3500,\tbest lgbm's error=0.3500\n", + "[flaml.automl: 07-06 10:25:31] {1012} INFO - iteration 22, current learner xgboost\n", + "[flaml.automl: 07-06 10:25:31] {1160} INFO - at 8.7s,\tbest xgboost's error=0.3787,\tbest lgbm's error=0.3500\n", + "[flaml.automl: 07-06 10:25:31] {1012} INFO - iteration 23, current learner xgboost\n", + "[flaml.automl: 07-06 10:25:31] {1160} INFO - at 8.7s,\tbest xgboost's error=0.3766,\tbest lgbm's error=0.3500\n", + "[flaml.automl: 07-06 10:25:31] {1012} INFO - iteration 24, current learner xgboost\n", + "[flaml.automl: 07-06 10:25:31] {1160} INFO - at 8.8s,\tbest xgboost's error=0.3765,\tbest lgbm's error=0.3500\n", + "[flaml.automl: 07-06 10:25:31] {1012} INFO - iteration 25, current learner rf\n", + "[flaml.automl: 07-06 10:25:31] {1160} INFO - at 8.9s,\tbest rf's error=0.4032,\tbest lgbm's error=0.3500\n", + "[flaml.automl: 07-06 10:25:31] {1012} INFO - iteration 26, current learner rf\n", + "[flaml.automl: 07-06 10:25:31] {1160} INFO - at 9.0s,\tbest rf's error=0.4032,\tbest lgbm's error=0.3500\n", + "[flaml.automl: 07-06 10:25:31] {1012} INFO - iteration 27, current learner rf\n", + "[flaml.automl: 07-06 10:25:31] {1160} INFO - at 9.0s,\tbest rf's error=0.4028,\tbest lgbm's error=0.3500\n", + "[flaml.automl: 07-06 10:25:31] {1012} INFO - iteration 28, current learner lgbm\n", + "[flaml.automl: 07-06 10:25:32] {1160} INFO - at 10.5s,\tbest lgbm's error=0.3500,\tbest lgbm's error=0.3500\n", + "[flaml.automl: 07-06 10:25:32] {1012} INFO - iteration 29, current learner lgbm\n", + "[flaml.automl: 07-06 10:25:35] {1160} INFO - at 13.0s,\tbest lgbm's error=0.3440,\tbest lgbm's error=0.3440\n", + "[flaml.automl: 07-06 10:25:35] {1012} INFO - iteration 30, current learner RGF\n", + "[flaml.automl: 07-06 10:25:36] {1160} INFO - at 13.6s,\tbest RGF's error=0.3762,\tbest lgbm's error=0.3440\n", + "[flaml.automl: 07-06 10:25:36] {1012} INFO - iteration 31, current learner RGF\n", + "[flaml.automl: 07-06 10:25:36] {1160} INFO - at 14.2s,\tbest RGF's error=0.3762,\tbest lgbm's error=0.3440\n", + "[flaml.automl: 07-06 10:25:36] {1012} INFO - iteration 32, current learner lgbm\n", + "[flaml.automl: 07-06 10:25:38] {1160} INFO - at 15.8s,\tbest lgbm's error=0.3440,\tbest lgbm's error=0.3440\n", + "[flaml.automl: 07-06 10:25:38] {1012} INFO - iteration 33, current learner lgbm\n", + "[flaml.automl: 07-06 10:25:42] {1160} INFO - at 19.9s,\tbest lgbm's error=0.3374,\tbest lgbm's error=0.3374\n", + "[flaml.automl: 07-06 10:25:42] {1012} INFO - iteration 34, current learner RGF\n", + "[flaml.automl: 07-06 10:25:43] {1160} INFO - at 20.8s,\tbest RGF's error=0.3759,\tbest lgbm's error=0.3374\n", + "[flaml.automl: 07-06 10:25:43] {1012} INFO - iteration 35, current learner lgbm\n", + "[flaml.automl: 07-06 10:25:45] {1160} INFO - at 22.7s,\tbest lgbm's error=0.3374,\tbest lgbm's error=0.3374\n", + "[flaml.automl: 07-06 10:25:45] {1012} INFO - iteration 36, current learner xgboost\n", + "[flaml.automl: 07-06 10:25:45] {1160} INFO - at 22.8s,\tbest xgboost's error=0.3757,\tbest lgbm's error=0.3374\n", + "[flaml.automl: 07-06 10:25:45] {1012} INFO - iteration 37, current learner xgboost\n", + "[flaml.automl: 07-06 10:25:45] {1160} INFO - at 22.8s,\tbest xgboost's error=0.3693,\tbest lgbm's error=0.3374\n", + "[flaml.automl: 07-06 10:25:45] {1012} INFO - iteration 38, current learner xgboost\n", + "[flaml.automl: 07-06 10:25:45] {1160} INFO - at 22.9s,\tbest xgboost's error=0.3693,\tbest lgbm's error=0.3374\n", + "[flaml.automl: 07-06 10:25:45] {1012} INFO - iteration 39, current learner xgboost\n", + "[flaml.automl: 07-06 10:25:45] {1160} INFO - at 23.0s,\tbest xgboost's error=0.3617,\tbest lgbm's error=0.3374\n", + "[flaml.automl: 07-06 10:25:45] {1012} INFO - iteration 40, current learner xgboost\n", + "[flaml.automl: 07-06 10:25:45] {1160} INFO - at 23.0s,\tbest xgboost's error=0.3589,\tbest lgbm's error=0.3374\n", + "[flaml.automl: 07-06 10:25:45] {1012} INFO - iteration 41, current learner xgboost\n", + "[flaml.automl: 07-06 10:25:45] {1160} INFO - at 23.1s,\tbest xgboost's error=0.3589,\tbest lgbm's error=0.3374\n", + "[flaml.automl: 07-06 10:25:45] {1012} INFO - iteration 42, current learner lgbm\n", + "[flaml.automl: 07-06 10:25:59] {1160} INFO - at 37.3s,\tbest lgbm's error=0.3344,\tbest lgbm's error=0.3344\n", + "[flaml.automl: 07-06 10:25:59] {1012} INFO - iteration 43, current learner xgboost\n", + "[flaml.automl: 07-06 10:25:59] {1160} INFO - at 37.4s,\tbest xgboost's error=0.3589,\tbest lgbm's error=0.3344\n", + "[flaml.automl: 07-06 10:26:05] {1183} INFO - retrain xgboost for 6.1s\n", + "[flaml.automl: 07-06 10:26:05] {1012} INFO - iteration 44, current learner xgboost\n", + "[flaml.automl: 07-06 10:26:06] {1160} INFO - at 43.6s,\tbest xgboost's error=0.3589,\tbest lgbm's error=0.3344\n", + "[flaml.automl: 07-06 10:26:06] {1012} INFO - iteration 45, current learner xgboost\n", + "[flaml.automl: 07-06 10:26:06] {1160} INFO - at 43.7s,\tbest xgboost's error=0.3589,\tbest lgbm's error=0.3344\n", + "[flaml.automl: 07-06 10:26:06] {1012} INFO - iteration 46, current learner lgbm\n", + "[flaml.automl: 07-06 10:26:15] {1160} INFO - at 53.2s,\tbest lgbm's error=0.3344,\tbest lgbm's error=0.3344\n", + "[flaml.automl: 07-06 10:26:21] {1183} INFO - retrain lgbm for 5.5s\n", + "[flaml.automl: 07-06 10:26:21] {1012} INFO - iteration 47, current learner xgboost\n", + "[flaml.automl: 07-06 10:26:21] {1160} INFO - at 58.9s,\tbest xgboost's error=0.3589,\tbest lgbm's error=0.3344\n", + "[flaml.automl: 07-06 10:26:22] {1183} INFO - retrain xgboost for 1.1s\n", + "[flaml.automl: 07-06 10:26:22] {1206} INFO - selected model: LGBMClassifier(colsample_bytree=0.6204654035998071,\n", + " learning_rate=0.17783122919583272, max_bin=16,\n", + " min_child_samples=17, n_estimators=197, num_leaves=340,\n", + " objective='binary', reg_alpha=0.07967521254431058,\n", + " reg_lambda=6.332908973055842, subsample=0.8413048297641477)\n", + "[flaml.automl: 07-06 10:26:22] {963} INFO - fit succeeded\n" ] } ], @@ -869,7 +885,7 @@ "output_type": "stream", "name": "stdout", "text": [ - "flaml accuracy = 0.6720406982780357\n" + "flaml accuracy = 0.6715957462586951\n" ] } ], @@ -1000,12 +1016,7 @@ "metadata": { "kernelspec": { "name": "python3", - "display_name": "Python 3.8.0 64-bit", - "metadata": { - "interpreter": { - "hash": "0cfea3304185a9579d09e0953576b57c8581e46e6ebc6dfeb681bc5a511f7544" - } - } + "display_name": "Python 3.8.10 64-bit ('py38': conda)" }, "language_info": { "codemirror_mode": { @@ -1017,7 +1028,10 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.8.0-final" + "version": "3.8.10" + }, + "interpreter": { + "hash": "4502d015faca2560a557f35a41b6dd402f7fdfc08e843ae17a9c41947939f10c" } }, "nbformat": 4, diff --git a/notebook/flaml_lightgbm.ipynb b/notebook/flaml_lightgbm.ipynb index deb32db43..1d45a92dc 100644 --- a/notebook/flaml_lightgbm.ipynb +++ b/notebook/flaml_lightgbm.ipynb @@ -58,7 +58,7 @@ }, { "cell_type": "code", - "execution_count": 1, + "execution_count": 2, "metadata": { "slideshow": { "slide_type": "subslide" @@ -70,7 +70,7 @@ "output_type": "stream", "name": "stdout", "text": [ - "download dataset from openml\nDataset name: houses\nX_train.shape: (15480, 8), y_train.shape: (15480,);\nX_test.shape: (5160, 8), y_test.shape: (5160,)\n" + "load dataset from ./openml_ds537.pkl\nDataset name: houses\nX_train.shape: (15480, 8), y_train.shape: (15480,);\nX_test.shape: (5160, 8), y_test.shape: (5160,)\n" ] } ], @@ -93,7 +93,7 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 3, "metadata": { "slideshow": { "slide_type": "slide" @@ -109,7 +109,7 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": 4, "metadata": { "slideshow": { "slide_type": "slide" @@ -128,7 +128,7 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 5, "metadata": { "slideshow": { "slide_type": "slide" @@ -140,78 +140,88 @@ "output_type": "stream", "name": "stderr", "text": [ - "[flaml.automl: 05-01 16:54:10] {890} INFO - Evaluation method: cv\n", - "[flaml.automl: 05-01 16:54:10] {606} INFO - Using RepeatedKFold\n", - "[flaml.automl: 05-01 16:54:10] {911} INFO - Minimizing error metric: 1-r2\n", - "[flaml.automl: 05-01 16:54:10] {929} INFO - List of ML learners in AutoML Run: ['lgbm']\n", - "[flaml.automl: 05-01 16:54:10] {993} INFO - iteration 0, current learner lgbm\n", - "[flaml.automl: 05-01 16:54:10] {1141} INFO - at 0.6s,\tbest lgbm's error=0.7383,\tbest lgbm's error=0.7383\n", - "[flaml.automl: 05-01 16:54:10] {993} INFO - iteration 1, current learner lgbm\n", - "[flaml.automl: 05-01 16:54:10] {1141} INFO - at 0.8s,\tbest lgbm's error=0.7383,\tbest lgbm's error=0.7383\n", - "[flaml.automl: 05-01 16:54:10] {993} INFO - iteration 2, current learner lgbm\n", - "[flaml.automl: 05-01 16:54:11] {1141} INFO - at 1.2s,\tbest lgbm's error=0.5538,\tbest lgbm's error=0.5538\n", - "[flaml.automl: 05-01 16:54:11] {993} INFO - iteration 3, current learner lgbm\n", - "[flaml.automl: 05-01 16:54:11] {1141} INFO - at 1.5s,\tbest lgbm's error=0.3888,\tbest lgbm's error=0.3888\n", - "[flaml.automl: 05-01 16:54:11] {993} INFO - iteration 4, current learner lgbm\n", - "[flaml.automl: 05-01 16:54:11] {1141} INFO - at 1.8s,\tbest lgbm's error=0.3888,\tbest lgbm's error=0.3888\n", - "[flaml.automl: 05-01 16:54:11] {993} INFO - iteration 5, current learner lgbm\n", - "[flaml.automl: 05-01 16:54:12] {1141} INFO - at 2.0s,\tbest lgbm's error=0.3888,\tbest lgbm's error=0.3888\n", - "[flaml.automl: 05-01 16:54:12] {993} INFO - iteration 6, current learner lgbm\n", - "[flaml.automl: 05-01 16:54:12] {1141} INFO - at 2.4s,\tbest lgbm's error=0.3017,\tbest lgbm's error=0.3017\n", - "[flaml.automl: 05-01 16:54:12] {993} INFO - iteration 7, current learner lgbm\n", - "[flaml.automl: 05-01 16:54:12] {1141} INFO - at 2.9s,\tbest lgbm's error=0.2633,\tbest lgbm's error=0.2633\n", - "[flaml.automl: 05-01 16:54:12] {993} INFO - iteration 8, current learner lgbm\n", - "[flaml.automl: 05-01 16:54:13] {1141} INFO - at 3.3s,\tbest lgbm's error=0.2633,\tbest lgbm's error=0.2633\n", - "[flaml.automl: 05-01 16:54:13] {993} INFO - iteration 9, current learner lgbm\n", - "[flaml.automl: 05-01 16:54:13] {1141} INFO - at 3.9s,\tbest lgbm's error=0.2314,\tbest lgbm's error=0.2314\n", - "[flaml.automl: 05-01 16:54:13] {993} INFO - iteration 10, current learner lgbm\n", - "[flaml.automl: 05-01 16:54:14] {1141} INFO - at 4.3s,\tbest lgbm's error=0.2314,\tbest lgbm's error=0.2314\n", - "[flaml.automl: 05-01 16:54:14] {993} INFO - iteration 11, current learner lgbm\n", - "[flaml.automl: 05-01 16:54:14] {1141} INFO - at 4.6s,\tbest lgbm's error=0.2314,\tbest lgbm's error=0.2314\n", - "[flaml.automl: 05-01 16:54:14] {993} INFO - iteration 12, current learner lgbm\n", - "[flaml.automl: 05-01 16:54:15] {1141} INFO - at 5.4s,\tbest lgbm's error=0.1954,\tbest lgbm's error=0.1954\n", - "[flaml.automl: 05-01 16:54:15] {993} INFO - iteration 13, current learner lgbm\n", - "[flaml.automl: 05-01 16:54:16] {1141} INFO - at 6.0s,\tbest lgbm's error=0.1954,\tbest lgbm's error=0.1954\n", - "[flaml.automl: 05-01 16:54:16] {993} INFO - iteration 14, current learner lgbm\n", - "[flaml.automl: 05-01 16:54:17] {1141} INFO - at 7.0s,\tbest lgbm's error=0.1933,\tbest lgbm's error=0.1933\n", - "[flaml.automl: 05-01 16:54:17] {993} INFO - iteration 15, current learner lgbm\n", - "[flaml.automl: 05-01 16:54:17] {1141} INFO - at 7.6s,\tbest lgbm's error=0.1933,\tbest lgbm's error=0.1933\n", - "[flaml.automl: 05-01 16:54:17] {993} INFO - iteration 16, current learner lgbm\n", - "[flaml.automl: 05-01 16:54:19] {1141} INFO - at 9.2s,\tbest lgbm's error=0.1799,\tbest lgbm's error=0.1799\n", - "[flaml.automl: 05-01 16:54:19] {993} INFO - iteration 17, current learner lgbm\n", - "[flaml.automl: 05-01 16:54:19] {1141} INFO - at 9.8s,\tbest lgbm's error=0.1799,\tbest lgbm's error=0.1799\n", - "[flaml.automl: 05-01 16:54:19] {993} INFO - iteration 18, current learner lgbm\n", - "[flaml.automl: 05-01 16:54:23] {1141} INFO - at 13.1s,\tbest lgbm's error=0.1799,\tbest lgbm's error=0.1799\n", - "[flaml.automl: 05-01 16:54:23] {993} INFO - iteration 19, current learner lgbm\n", - "[flaml.automl: 05-01 16:54:23] {1141} INFO - at 13.6s,\tbest lgbm's error=0.1799,\tbest lgbm's error=0.1799\n", - "[flaml.automl: 05-01 16:54:23] {993} INFO - iteration 20, current learner lgbm\n", - "[flaml.automl: 05-01 16:54:31] {1141} INFO - at 21.7s,\tbest lgbm's error=0.1799,\tbest lgbm's error=0.1799\n", - "[flaml.automl: 05-01 16:54:31] {993} INFO - iteration 21, current learner lgbm\n", - "[flaml.automl: 05-01 16:54:32] {1141} INFO - at 22.6s,\tbest lgbm's error=0.1799,\tbest lgbm's error=0.1799\n", - "[flaml.automl: 05-01 16:54:32] {993} INFO - iteration 22, current learner lgbm\n", - "[flaml.automl: 05-01 16:54:34] {1141} INFO - at 24.5s,\tbest lgbm's error=0.1722,\tbest lgbm's error=0.1722\n", - "[flaml.automl: 05-01 16:54:34] {993} INFO - iteration 23, current learner lgbm\n", - "[flaml.automl: 05-01 16:54:36] {1141} INFO - at 26.4s,\tbest lgbm's error=0.1714,\tbest lgbm's error=0.1714\n", - "[flaml.automl: 05-01 16:54:36] {993} INFO - iteration 24, current learner lgbm\n", - "[flaml.automl: 05-01 16:54:38] {1141} INFO - at 28.1s,\tbest lgbm's error=0.1714,\tbest lgbm's error=0.1714\n", - "[flaml.automl: 05-01 16:54:38] {993} INFO - iteration 25, current learner lgbm\n", - "[flaml.automl: 05-01 16:54:38] {1141} INFO - at 28.4s,\tbest lgbm's error=0.1714,\tbest lgbm's error=0.1714\n", - "[flaml.automl: 05-01 16:54:38] {993} INFO - iteration 26, current learner lgbm\n", - "[flaml.automl: 05-01 16:54:49] {1141} INFO - at 39.6s,\tbest lgbm's error=0.1582,\tbest lgbm's error=0.1582\n", - "[flaml.automl: 05-01 16:54:49] {993} INFO - iteration 27, current learner lgbm\n", - "[flaml.automl: 05-01 16:54:54] {1141} INFO - at 44.7s,\tbest lgbm's error=0.1582,\tbest lgbm's error=0.1582\n", - "[flaml.automl: 05-01 16:54:54] {993} INFO - iteration 28, current learner lgbm\n", - "[flaml.automl: 05-01 16:55:06] {1141} INFO - at 56.8s,\tbest lgbm's error=0.1582,\tbest lgbm's error=0.1582\n", - "[flaml.automl: 05-01 16:55:06] {993} INFO - iteration 29, current learner lgbm\n", - "[flaml.automl: 05-01 16:55:07] {1141} INFO - at 57.9s,\tbest lgbm's error=0.1582,\tbest lgbm's error=0.1582\n", - "[flaml.automl: 05-01 16:55:07] {993} INFO - iteration 30, current learner lgbm\n", - "[flaml.automl: 05-01 16:56:07] {1141} INFO - at 117.4s,\tbest lgbm's error=0.1582,\tbest lgbm's error=0.1582\n", - "[flaml.automl: 05-01 16:56:07] {1187} INFO - selected model: LGBMRegressor(colsample_bytree=0.7018843176351586,\n", - " learning_rate=0.05528362885527569, max_bin=255,\n", - " min_child_samples=64, n_estimators=266, num_leaves=204,\n", - " objective='regression', reg_alpha=0.005771390107656191,\n", - " reg_lambda=62.31073135366825)\n", - "[flaml.automl: 05-01 16:56:07] {944} INFO - fit succeeded\n" + "[flaml.automl: 07-06 11:07:16] {908} INFO - Evaluation method: cv\n", + "[flaml.automl: 07-06 11:07:16] {617} INFO - Using RepeatedKFold\n", + "[flaml.automl: 07-06 11:07:16] {929} INFO - Minimizing error metric: 1-r2\n", + "[flaml.automl: 07-06 11:07:16] {948} INFO - List of ML learners in AutoML Run: ['lgbm']\n", + "[flaml.automl: 07-06 11:07:16] {1012} INFO - iteration 0, current learner lgbm\n", + "[flaml.automl: 07-06 11:07:16] {1160} INFO - at 0.3s,\tbest lgbm's error=0.7385,\tbest lgbm's error=0.7385\n", + "[flaml.automl: 07-06 11:07:16] {1012} INFO - iteration 1, current learner lgbm\n", + "[flaml.automl: 07-06 11:07:16] {1160} INFO - at 0.4s,\tbest lgbm's error=0.7385,\tbest lgbm's error=0.7385\n", + "[flaml.automl: 07-06 11:07:16] {1012} INFO - iteration 2, current learner lgbm\n", + "[flaml.automl: 07-06 11:07:16] {1160} INFO - at 0.7s,\tbest lgbm's error=0.5520,\tbest lgbm's error=0.5520\n", + "[flaml.automl: 07-06 11:07:16] {1012} INFO - iteration 3, current learner lgbm\n", + "[flaml.automl: 07-06 11:07:17] {1160} INFO - at 0.9s,\tbest lgbm's error=0.3886,\tbest lgbm's error=0.3886\n", + "[flaml.automl: 07-06 11:07:17] {1012} INFO - iteration 4, current learner lgbm\n", + "[flaml.automl: 07-06 11:07:17] {1160} INFO - at 1.1s,\tbest lgbm's error=0.3886,\tbest lgbm's error=0.3886\n", + "[flaml.automl: 07-06 11:07:17] {1012} INFO - iteration 5, current learner lgbm\n", + "[flaml.automl: 07-06 11:07:17] {1160} INFO - at 1.2s,\tbest lgbm's error=0.3886,\tbest lgbm's error=0.3886\n", + "[flaml.automl: 07-06 11:07:17] {1012} INFO - iteration 6, current learner lgbm\n", + "[flaml.automl: 07-06 11:07:17] {1160} INFO - at 1.5s,\tbest lgbm's error=0.3023,\tbest lgbm's error=0.3023\n", + "[flaml.automl: 07-06 11:07:17] {1012} INFO - iteration 7, current learner lgbm\n", + "[flaml.automl: 07-06 11:07:17] {1160} INFO - at 1.9s,\tbest lgbm's error=0.2611,\tbest lgbm's error=0.2611\n", + "[flaml.automl: 07-06 11:07:17] {1012} INFO - iteration 8, current learner lgbm\n", + "[flaml.automl: 07-06 11:07:18] {1160} INFO - at 2.1s,\tbest lgbm's error=0.2611,\tbest lgbm's error=0.2611\n", + "[flaml.automl: 07-06 11:07:18] {1012} INFO - iteration 9, current learner lgbm\n", + "[flaml.automl: 07-06 11:07:18] {1160} INFO - at 2.5s,\tbest lgbm's error=0.2363,\tbest lgbm's error=0.2363\n", + "[flaml.automl: 07-06 11:07:18] {1012} INFO - iteration 10, current learner lgbm\n", + "[flaml.automl: 07-06 11:07:18] {1160} INFO - at 2.7s,\tbest lgbm's error=0.2363,\tbest lgbm's error=0.2363\n", + "[flaml.automl: 07-06 11:07:18] {1012} INFO - iteration 11, current learner lgbm\n", + "[flaml.automl: 07-06 11:07:19] {1160} INFO - at 3.0s,\tbest lgbm's error=0.2363,\tbest lgbm's error=0.2363\n", + "[flaml.automl: 07-06 11:07:19] {1012} INFO - iteration 12, current learner lgbm\n", + "[flaml.automl: 07-06 11:07:19] {1160} INFO - at 3.5s,\tbest lgbm's error=0.1953,\tbest lgbm's error=0.1953\n", + "[flaml.automl: 07-06 11:07:19] {1012} INFO - iteration 13, current learner lgbm\n", + "[flaml.automl: 07-06 11:07:19] {1160} INFO - at 3.8s,\tbest lgbm's error=0.1953,\tbest lgbm's error=0.1953\n", + "[flaml.automl: 07-06 11:07:19] {1012} INFO - iteration 14, current learner lgbm\n", + "[flaml.automl: 07-06 11:07:20] {1160} INFO - at 4.3s,\tbest lgbm's error=0.1953,\tbest lgbm's error=0.1953\n", + "[flaml.automl: 07-06 11:07:20] {1012} INFO - iteration 15, current learner lgbm\n", + "[flaml.automl: 07-06 11:07:20] {1160} INFO - at 4.6s,\tbest lgbm's error=0.1953,\tbest lgbm's error=0.1953\n", + "[flaml.automl: 07-06 11:07:20] {1012} INFO - iteration 16, current learner lgbm\n", + "[flaml.automl: 07-06 11:07:21] {1160} INFO - at 5.1s,\tbest lgbm's error=0.1953,\tbest lgbm's error=0.1953\n", + "[flaml.automl: 07-06 11:07:21] {1012} INFO - iteration 17, current learner lgbm\n", + "[flaml.automl: 07-06 11:07:21] {1160} INFO - at 5.4s,\tbest lgbm's error=0.1953,\tbest lgbm's error=0.1953\n", + "[flaml.automl: 07-06 11:07:21] {1012} INFO - iteration 18, current learner lgbm\n", + "[flaml.automl: 07-06 11:07:22] {1160} INFO - at 6.3s,\tbest lgbm's error=0.1795,\tbest lgbm's error=0.1795\n", + "[flaml.automl: 07-06 11:07:22] {1012} INFO - iteration 19, current learner lgbm\n", + "[flaml.automl: 07-06 11:07:22] {1160} INFO - at 6.5s,\tbest lgbm's error=0.1795,\tbest lgbm's error=0.1795\n", + "[flaml.automl: 07-06 11:07:22] {1012} INFO - iteration 20, current learner lgbm\n", + "[flaml.automl: 07-06 11:07:25] {1160} INFO - at 9.8s,\tbest lgbm's error=0.1795,\tbest lgbm's error=0.1795\n", + "[flaml.automl: 07-06 11:07:25] {1012} INFO - iteration 21, current learner lgbm\n", + "[flaml.automl: 07-06 11:07:26] {1160} INFO - at 10.3s,\tbest lgbm's error=0.1795,\tbest lgbm's error=0.1795\n", + "[flaml.automl: 07-06 11:07:26] {1012} INFO - iteration 22, current learner lgbm\n", + "[flaml.automl: 07-06 11:07:27] {1160} INFO - at 11.8s,\tbest lgbm's error=0.1768,\tbest lgbm's error=0.1768\n", + "[flaml.automl: 07-06 11:07:27] {1012} INFO - iteration 23, current learner lgbm\n", + "[flaml.automl: 07-06 11:07:28] {1160} INFO - at 12.5s,\tbest lgbm's error=0.1768,\tbest lgbm's error=0.1768\n", + "[flaml.automl: 07-06 11:07:28] {1012} INFO - iteration 24, current learner lgbm\n", + "[flaml.automl: 07-06 11:07:30] {1160} INFO - at 14.1s,\tbest lgbm's error=0.1768,\tbest lgbm's error=0.1768\n", + "[flaml.automl: 07-06 11:07:30] {1012} INFO - iteration 25, current learner lgbm\n", + "[flaml.automl: 07-06 11:07:30] {1160} INFO - at 14.4s,\tbest lgbm's error=0.1768,\tbest lgbm's error=0.1768\n", + "[flaml.automl: 07-06 11:07:30] {1012} INFO - iteration 26, current learner lgbm\n", + "[flaml.automl: 07-06 11:07:36] {1160} INFO - at 20.4s,\tbest lgbm's error=0.1652,\tbest lgbm's error=0.1652\n", + "[flaml.automl: 07-06 11:07:36] {1012} INFO - iteration 27, current learner lgbm\n", + "[flaml.automl: 07-06 11:07:40] {1160} INFO - at 24.2s,\tbest lgbm's error=0.1652,\tbest lgbm's error=0.1652\n", + "[flaml.automl: 07-06 11:07:40] {1012} INFO - iteration 28, current learner lgbm\n", + "[flaml.automl: 07-06 11:07:50] {1160} INFO - at 34.5s,\tbest lgbm's error=0.1642,\tbest lgbm's error=0.1642\n", + "[flaml.automl: 07-06 11:07:50] {1012} INFO - iteration 29, current learner lgbm\n", + "[flaml.automl: 07-06 11:07:52] {1160} INFO - at 36.0s,\tbest lgbm's error=0.1642,\tbest lgbm's error=0.1642\n", + "[flaml.automl: 07-06 11:07:52] {1012} INFO - iteration 30, current learner lgbm\n", + "[flaml.automl: 07-06 11:08:37] {1160} INFO - at 81.1s,\tbest lgbm's error=0.1642,\tbest lgbm's error=0.1642\n", + "[flaml.automl: 07-06 11:08:37] {1012} INFO - iteration 31, current learner lgbm\n", + "[flaml.automl: 07-06 11:08:39] {1160} INFO - at 83.8s,\tbest lgbm's error=0.1642,\tbest lgbm's error=0.1642\n", + "[flaml.automl: 07-06 11:08:39] {1012} INFO - iteration 32, current learner lgbm\n", + "[flaml.automl: 07-06 11:08:49] {1160} INFO - at 93.5s,\tbest lgbm's error=0.1642,\tbest lgbm's error=0.1642\n", + "[flaml.automl: 07-06 11:08:49] {1012} INFO - iteration 33, current learner lgbm\n", + "[flaml.automl: 07-06 11:09:00] {1160} INFO - at 104.0s,\tbest lgbm's error=0.1642,\tbest lgbm's error=0.1642\n", + "[flaml.automl: 07-06 11:09:00] {1012} INFO - iteration 34, current learner lgbm\n", + "[flaml.automl: 07-06 11:09:07] {1160} INFO - at 111.4s,\tbest lgbm's error=0.1642,\tbest lgbm's error=0.1642\n", + "[flaml.automl: 07-06 11:09:07] {1012} INFO - iteration 35, current learner lgbm\n", + "[flaml.automl: 07-06 11:09:16] {1160} INFO - at 120.8s,\tbest lgbm's error=0.1642,\tbest lgbm's error=0.1642\n", + "[flaml.automl: 07-06 11:09:16] {1206} INFO - selected model: LGBMRegressor(colsample_bytree=0.6819303877749074,\n", + " learning_rate=0.13082160708847235, max_bin=512,\n", + " min_child_samples=128, n_estimators=363, num_leaves=269,\n", + " objective='regression', reg_alpha=0.03805198795768637,\n", + " reg_lambda=18.14103139151093, subsample=0.820105567300051)\n", + "[flaml.automl: 07-06 11:09:16] {963} INFO - fit succeeded\n" ] } ], @@ -233,7 +243,7 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 6, "metadata": { "slideshow": { "slide_type": "slide" @@ -245,7 +255,7 @@ "output_type": "stream", "name": "stdout", "text": [ - "Best hyperparmeter config: {'n_estimators': 266.0, 'num_leaves': 204.0, 'min_child_samples': 64.0, 'learning_rate': 0.05528362885527569, 'subsample': 1.0, 'log_max_bin': 8.0, 'colsample_bytree': 0.7018843176351586, 'reg_alpha': 0.005771390107656191, 'reg_lambda': 62.31073135366825}\nBest r2 on validation data: 0.8418\nTraining duration of best run: 11.19 s\n" + "Best hyperparmeter config: {'n_estimators': 363.0, 'num_leaves': 269.0, 'min_child_samples': 128.0, 'learning_rate': 0.13082160708847235, 'subsample': 0.820105567300051, 'log_max_bin': 10.0, 'colsample_bytree': 0.6819303877749074, 'reg_alpha': 0.03805198795768637, 'reg_lambda': 18.14103139151093}\nBest r2 on validation data: 0.8358\nTraining duration of best run: 10.26 s\n" ] } ], @@ -258,7 +268,7 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 7, "metadata": { "slideshow": { "slide_type": "slide" @@ -269,24 +279,24 @@ "output_type": "execute_result", "data": { "text/plain": [ - "LGBMRegressor(colsample_bytree=0.7018843176351586,\n", - " learning_rate=0.05528362885527569, max_bin=255,\n", - " min_child_samples=64, n_estimators=266, num_leaves=204,\n", - " objective='regression', reg_alpha=0.005771390107656191,\n", - " reg_lambda=62.31073135366825)" + "LGBMRegressor(colsample_bytree=0.6819303877749074,\n", + " learning_rate=0.13082160708847235, max_bin=512,\n", + " min_child_samples=128, n_estimators=363, num_leaves=269,\n", + " objective='regression', reg_alpha=0.03805198795768637,\n", + " reg_lambda=18.14103139151093, subsample=0.820105567300051)" ] }, "metadata": {}, - "execution_count": 6 + "execution_count": 7 } ], "source": [ - "automl.model" + "automl.model.estimator" ] }, { "cell_type": "code", - "execution_count": 7, + "execution_count": 8, "metadata": { "slideshow": { "slide_type": "slide" @@ -300,31 +310,6 @@ " pickle.dump(automl, f, pickle.HIGHEST_PROTOCOL)" ] }, - { - "cell_type": "code", - "execution_count": 8, - "metadata": { - "slideshow": { - "slide_type": "slide" - }, - "tags": [] - }, - "outputs": [ - { - "output_type": "stream", - "name": "stdout", - "text": [ - "Predicted labels [149389.7449446 258417.92579444 137823.39715453 ... 211944.92125371\n 246243.4022559 277524.07243136]\nTrue labels [136900. 241300. 200700. ... 160900. 227300. 265600.]\n" - ] - } - ], - "source": [ - "''' compute predictions of testing dataset ''' \n", - "y_pred = automl.predict(X_test)\n", - "print('Predicted labels', y_pred)\n", - "print('True labels', y_test)" - ] - }, { "cell_type": "code", "execution_count": 9, @@ -339,7 +324,32 @@ "output_type": "stream", "name": "stdout", "text": [ - "r2 = 0.8491961402689281\nmse = 1993401806.32529\nmae = 29616.531139250474\n" + "Predicted labels [144297.78236479 237704.97318762 133286.22864409 ... 201009.77752565\n 229253.8030484 268605.21607981]\nTrue labels [136900. 241300. 200700. ... 160900. 227300. 265600.]\n" + ] + } + ], + "source": [ + "''' compute predictions of testing dataset ''' \n", + "y_pred = automl.predict(X_test)\n", + "print('Predicted labels', y_pred)\n", + "print('True labels', y_test)" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": { + "slideshow": { + "slide_type": "slide" + }, + "tags": [] + }, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "r2 = 0.8449836920253022\nmse = 2049084080.9890163\nmae = 30591.753451556997\n" ] } ], @@ -353,7 +363,7 @@ }, { "cell_type": "code", - "execution_count": 10, + "execution_count": 20, "metadata": { "slideshow": { "slide_type": "subslide" @@ -365,7 +375,7 @@ "output_type": "stream", "name": "stdout", "text": [ - "{'Current Learner': 'lgbm', 'Current Sample': 15480, 'Current Hyper-parameters': {'n_estimators': 4, 'num_leaves': 4, 'min_child_samples': 20, 'learning_rate': 0.1, 'subsample': 1.0, 'log_max_bin': 8, 'colsample_bytree': 1.0, 'reg_alpha': 0.0009765625, 'reg_lambda': 1.0}, 'Best Learner': 'lgbm', 'Best Hyper-parameters': {'n_estimators': 4, 'num_leaves': 4, 'min_child_samples': 20, 'learning_rate': 0.1, 'subsample': 1.0, 'log_max_bin': 8, 'colsample_bytree': 1.0, 'reg_alpha': 0.0009765625, 'reg_lambda': 1.0}}\n{'Current Learner': 'lgbm', 'Current Sample': 15480, 'Current Hyper-parameters': {'n_estimators': 4.0, 'num_leaves': 4.0, 'min_child_samples': 12.0, 'learning_rate': 0.25912534572860507, 'subsample': 0.9266743941610592, 'log_max_bin': 10.0, 'colsample_bytree': 1.0, 'reg_alpha': 0.0013933617380144255, 'reg_lambda': 0.18096917948292954}, 'Best Learner': 'lgbm', 'Best Hyper-parameters': {'n_estimators': 4.0, 'num_leaves': 4.0, 'min_child_samples': 12.0, 'learning_rate': 0.25912534572860507, 'subsample': 0.9266743941610592, 'log_max_bin': 10.0, 'colsample_bytree': 1.0, 'reg_alpha': 0.0013933617380144255, 'reg_lambda': 0.18096917948292954}}\n{'Current Learner': 'lgbm', 'Current Sample': 15480, 'Current Hyper-parameters': {'n_estimators': 4.0, 'num_leaves': 4.0, 'min_child_samples': 24.0, 'learning_rate': 1.0, 'subsample': 0.8513627344387318, 'log_max_bin': 10.0, 'colsample_bytree': 0.946138073111236, 'reg_alpha': 0.0018311776973217071, 'reg_lambda': 0.27901659190538414}, 'Best Learner': 'lgbm', 'Best Hyper-parameters': {'n_estimators': 4.0, 'num_leaves': 4.0, 'min_child_samples': 24.0, 'learning_rate': 1.0, 'subsample': 0.8513627344387318, 'log_max_bin': 10.0, 'colsample_bytree': 0.946138073111236, 'reg_alpha': 0.0018311776973217071, 'reg_lambda': 0.27901659190538414}}\n{'Current Learner': 'lgbm', 'Current Sample': 15480, 'Current Hyper-parameters': {'n_estimators': 11.0, 'num_leaves': 4.0, 'min_child_samples': 36.0, 'learning_rate': 1.0, 'subsample': 0.8894434216129232, 'log_max_bin': 10.0, 'colsample_bytree': 1.0, 'reg_alpha': 0.0013605736901132325, 'reg_lambda': 0.1222158118565165}, 'Best Learner': 'lgbm', 'Best Hyper-parameters': {'n_estimators': 11.0, 'num_leaves': 4.0, 'min_child_samples': 36.0, 'learning_rate': 1.0, 'subsample': 0.8894434216129232, 'log_max_bin': 10.0, 'colsample_bytree': 1.0, 'reg_alpha': 0.0013605736901132325, 'reg_lambda': 0.1222158118565165}}\n{'Current Learner': 'lgbm', 'Current Sample': 15480, 'Current Hyper-parameters': {'n_estimators': 20.0, 'num_leaves': 4.0, 'min_child_samples': 46.0, 'learning_rate': 1.0, 'subsample': 0.9814787163243813, 'log_max_bin': 9.0, 'colsample_bytree': 0.8499027725496043, 'reg_alpha': 0.0022085340760961856, 'reg_lambda': 0.546062702473889}, 'Best Learner': 'lgbm', 'Best Hyper-parameters': {'n_estimators': 20.0, 'num_leaves': 4.0, 'min_child_samples': 46.0, 'learning_rate': 1.0, 'subsample': 0.9814787163243813, 'log_max_bin': 9.0, 'colsample_bytree': 0.8499027725496043, 'reg_alpha': 0.0022085340760961856, 'reg_lambda': 0.546062702473889}}\n{'Current Learner': 'lgbm', 'Current Sample': 15480, 'Current Hyper-parameters': {'n_estimators': 20.0, 'num_leaves': 11.0, 'min_child_samples': 52.0, 'learning_rate': 1.0, 'subsample': 1.0, 'log_max_bin': 9.0, 'colsample_bytree': 0.7967145599266738, 'reg_alpha': 0.05680749758595097, 'reg_lambda': 2.756357095973371}, 'Best Learner': 'lgbm', 'Best Hyper-parameters': {'n_estimators': 20.0, 'num_leaves': 11.0, 'min_child_samples': 52.0, 'learning_rate': 1.0, 'subsample': 1.0, 'log_max_bin': 9.0, 'colsample_bytree': 0.7967145599266738, 'reg_alpha': 0.05680749758595097, 'reg_lambda': 2.756357095973371}}\n{'Current Learner': 'lgbm', 'Current Sample': 15480, 'Current Hyper-parameters': {'n_estimators': 37.0, 'num_leaves': 15.0, 'min_child_samples': 93.0, 'learning_rate': 0.6413547778096401, 'subsample': 1.0, 'log_max_bin': 9.0, 'colsample_bytree': 0.6980216487058154, 'reg_alpha': 0.020158745350617662, 'reg_lambda': 0.954042157679914}, 'Best Learner': 'lgbm', 'Best Hyper-parameters': {'n_estimators': 37.0, 'num_leaves': 15.0, 'min_child_samples': 93.0, 'learning_rate': 0.6413547778096401, 'subsample': 1.0, 'log_max_bin': 9.0, 'colsample_bytree': 0.6980216487058154, 'reg_alpha': 0.020158745350617662, 'reg_lambda': 0.954042157679914}}\n{'Current Learner': 'lgbm', 'Current Sample': 15480, 'Current Hyper-parameters': {'n_estimators': 107.0, 'num_leaves': 8.0, 'min_child_samples': 99.0, 'learning_rate': 0.23511987355535005, 'subsample': 1.0, 'log_max_bin': 7.0, 'colsample_bytree': 0.6531014185931541, 'reg_alpha': 0.006493597884251342, 'reg_lambda': 1.7292368007993142}, 'Best Learner': 'lgbm', 'Best Hyper-parameters': {'n_estimators': 107.0, 'num_leaves': 8.0, 'min_child_samples': 99.0, 'learning_rate': 0.23511987355535005, 'subsample': 1.0, 'log_max_bin': 7.0, 'colsample_bytree': 0.6531014185931541, 'reg_alpha': 0.006493597884251342, 'reg_lambda': 1.7292368007993142}}\n{'Current Learner': 'lgbm', 'Current Sample': 15480, 'Current Hyper-parameters': {'n_estimators': 186.0, 'num_leaves': 14.0, 'min_child_samples': 50.0, 'learning_rate': 0.39220715578198356, 'subsample': 1.0, 'log_max_bin': 6.0, 'colsample_bytree': 0.5689279468453852, 'reg_alpha': 0.011708252438810487, 'reg_lambda': 0.9012915451024669}, 'Best Learner': 'lgbm', 'Best Hyper-parameters': {'n_estimators': 186.0, 'num_leaves': 14.0, 'min_child_samples': 50.0, 'learning_rate': 0.39220715578198356, 'subsample': 1.0, 'log_max_bin': 6.0, 'colsample_bytree': 0.5689279468453852, 'reg_alpha': 0.011708252438810487, 'reg_lambda': 0.9012915451024669}}\n{'Current Learner': 'lgbm', 'Current Sample': 15480, 'Current Hyper-parameters': {'n_estimators': 201.0, 'num_leaves': 29.0, 'min_child_samples': 56.0, 'learning_rate': 0.14827217992006533, 'subsample': 0.9860465287537004, 'log_max_bin': 6.0, 'colsample_bytree': 0.6195974449388929, 'reg_alpha': 0.0009765625, 'reg_lambda': 6.847622848964946}, 'Best Learner': 'lgbm', 'Best Hyper-parameters': {'n_estimators': 201.0, 'num_leaves': 29.0, 'min_child_samples': 56.0, 'learning_rate': 0.14827217992006533, 'subsample': 0.9860465287537004, 'log_max_bin': 6.0, 'colsample_bytree': 0.6195974449388929, 'reg_alpha': 0.0009765625, 'reg_lambda': 6.847622848964946}}\n{'Current Learner': 'lgbm', 'Current Sample': 15480, 'Current Hyper-parameters': {'n_estimators': 76.0, 'num_leaves': 79.0, 'min_child_samples': 38.0, 'learning_rate': 0.07347198684652415, 'subsample': 1.0, 'log_max_bin': 7.0, 'colsample_bytree': 0.7057884896198299, 'reg_alpha': 0.0009765625, 'reg_lambda': 25.93865918819648}, 'Best Learner': 'lgbm', 'Best Hyper-parameters': {'n_estimators': 76.0, 'num_leaves': 79.0, 'min_child_samples': 38.0, 'learning_rate': 0.07347198684652415, 'subsample': 1.0, 'log_max_bin': 7.0, 'colsample_bytree': 0.7057884896198299, 'reg_alpha': 0.0009765625, 'reg_lambda': 25.93865918819648}}\n{'Current Learner': 'lgbm', 'Current Sample': 15480, 'Current Hyper-parameters': {'n_estimators': 266.0, 'num_leaves': 204.0, 'min_child_samples': 64.0, 'learning_rate': 0.05528362885527569, 'subsample': 1.0, 'log_max_bin': 8.0, 'colsample_bytree': 0.7018843176351586, 'reg_alpha': 0.005771390107656191, 'reg_lambda': 62.31073135366825}, 'Best Learner': 'lgbm', 'Best Hyper-parameters': {'n_estimators': 266.0, 'num_leaves': 204.0, 'min_child_samples': 64.0, 'learning_rate': 0.05528362885527569, 'subsample': 1.0, 'log_max_bin': 8.0, 'colsample_bytree': 0.7018843176351586, 'reg_alpha': 0.005771390107656191, 'reg_lambda': 62.31073135366825}}\n" + "{'Current Learner': 'lgbm', 'Current Sample': 15480, 'Current Hyper-parameters': {'n_estimators': 4, 'num_leaves': 4, 'min_child_samples': 20, 'learning_rate': 0.1, 'subsample': 1.0, 'log_max_bin': 8, 'colsample_bytree': 1.0, 'reg_alpha': 0.0009765625, 'reg_lambda': 1.0}, 'Best Learner': 'lgbm', 'Best Hyper-parameters': {'n_estimators': 4, 'num_leaves': 4, 'min_child_samples': 20, 'learning_rate': 0.1, 'subsample': 1.0, 'log_max_bin': 8, 'colsample_bytree': 1.0, 'reg_alpha': 0.0009765625, 'reg_lambda': 1.0}}\n{'Current Learner': 'lgbm', 'Current Sample': 15480, 'Current Hyper-parameters': {'n_estimators': 4.0, 'num_leaves': 4.0, 'min_child_samples': 12.0, 'learning_rate': 0.25912534572860507, 'subsample': 0.9266743941610592, 'log_max_bin': 10.0, 'colsample_bytree': 1.0, 'reg_alpha': 0.0013933617380144255, 'reg_lambda': 0.18096917948292954}, 'Best Learner': 'lgbm', 'Best Hyper-parameters': {'n_estimators': 4.0, 'num_leaves': 4.0, 'min_child_samples': 12.0, 'learning_rate': 0.25912534572860507, 'subsample': 0.9266743941610592, 'log_max_bin': 10.0, 'colsample_bytree': 1.0, 'reg_alpha': 0.0013933617380144255, 'reg_lambda': 0.18096917948292954}}\n{'Current Learner': 'lgbm', 'Current Sample': 15480, 'Current Hyper-parameters': {'n_estimators': 4.0, 'num_leaves': 4.0, 'min_child_samples': 24.0, 'learning_rate': 1.0, 'subsample': 0.8513627344387318, 'log_max_bin': 10.0, 'colsample_bytree': 0.946138073111236, 'reg_alpha': 0.0018311776973217071, 'reg_lambda': 0.27901659190538414}, 'Best Learner': 'lgbm', 'Best Hyper-parameters': {'n_estimators': 4.0, 'num_leaves': 4.0, 'min_child_samples': 24.0, 'learning_rate': 1.0, 'subsample': 0.8513627344387318, 'log_max_bin': 10.0, 'colsample_bytree': 0.946138073111236, 'reg_alpha': 0.0018311776973217071, 'reg_lambda': 0.27901659190538414}}\n{'Current Learner': 'lgbm', 'Current Sample': 15480, 'Current Hyper-parameters': {'n_estimators': 11.0, 'num_leaves': 4.0, 'min_child_samples': 36.0, 'learning_rate': 1.0, 'subsample': 0.8894434216129232, 'log_max_bin': 10.0, 'colsample_bytree': 1.0, 'reg_alpha': 0.0013605736901132325, 'reg_lambda': 0.1222158118565165}, 'Best Learner': 'lgbm', 'Best Hyper-parameters': {'n_estimators': 11.0, 'num_leaves': 4.0, 'min_child_samples': 36.0, 'learning_rate': 1.0, 'subsample': 0.8894434216129232, 'log_max_bin': 10.0, 'colsample_bytree': 1.0, 'reg_alpha': 0.0013605736901132325, 'reg_lambda': 0.1222158118565165}}\n{'Current Learner': 'lgbm', 'Current Sample': 15480, 'Current Hyper-parameters': {'n_estimators': 20.0, 'num_leaves': 4.0, 'min_child_samples': 46.0, 'learning_rate': 1.0, 'subsample': 0.9814787163243813, 'log_max_bin': 9.0, 'colsample_bytree': 0.8499027725496043, 'reg_alpha': 0.0022085340760961856, 'reg_lambda': 0.5460627024738893}, 'Best Learner': 'lgbm', 'Best Hyper-parameters': {'n_estimators': 20.0, 'num_leaves': 4.0, 'min_child_samples': 46.0, 'learning_rate': 1.0, 'subsample': 0.9814787163243813, 'log_max_bin': 9.0, 'colsample_bytree': 0.8499027725496043, 'reg_alpha': 0.0022085340760961856, 'reg_lambda': 0.5460627024738893}}\n{'Current Learner': 'lgbm', 'Current Sample': 15480, 'Current Hyper-parameters': {'n_estimators': 20.0, 'num_leaves': 11.0, 'min_child_samples': 52.0, 'learning_rate': 1.0, 'subsample': 1.0, 'log_max_bin': 9.0, 'colsample_bytree': 0.7967145599266738, 'reg_alpha': 0.05680749758595097, 'reg_lambda': 2.756357095973371}, 'Best Learner': 'lgbm', 'Best Hyper-parameters': {'n_estimators': 20.0, 'num_leaves': 11.0, 'min_child_samples': 52.0, 'learning_rate': 1.0, 'subsample': 1.0, 'log_max_bin': 9.0, 'colsample_bytree': 0.7967145599266738, 'reg_alpha': 0.05680749758595097, 'reg_lambda': 2.756357095973371}}\n{'Current Learner': 'lgbm', 'Current Sample': 15480, 'Current Hyper-parameters': {'n_estimators': 37.0, 'num_leaves': 15.0, 'min_child_samples': 93.0, 'learning_rate': 0.6413547778096401, 'subsample': 1.0, 'log_max_bin': 9.0, 'colsample_bytree': 0.6980216487058154, 'reg_alpha': 0.020158745350617662, 'reg_lambda': 0.954042157679914}, 'Best Learner': 'lgbm', 'Best Hyper-parameters': {'n_estimators': 37.0, 'num_leaves': 15.0, 'min_child_samples': 93.0, 'learning_rate': 0.6413547778096401, 'subsample': 1.0, 'log_max_bin': 9.0, 'colsample_bytree': 0.6980216487058154, 'reg_alpha': 0.020158745350617662, 'reg_lambda': 0.954042157679914}}\n{'Current Learner': 'lgbm', 'Current Sample': 15480, 'Current Hyper-parameters': {'n_estimators': 75.0, 'num_leaves': 32.0, 'min_child_samples': 83.0, 'learning_rate': 0.19997653978110663, 'subsample': 0.8895588746662894, 'log_max_bin': 7.0, 'colsample_bytree': 0.663557757490723, 'reg_alpha': 0.03147131714846291, 'reg_lambda': 0.38644069375879475}, 'Best Learner': 'lgbm', 'Best Hyper-parameters': {'n_estimators': 75.0, 'num_leaves': 32.0, 'min_child_samples': 83.0, 'learning_rate': 0.19997653978110663, 'subsample': 0.8895588746662894, 'log_max_bin': 7.0, 'colsample_bytree': 0.663557757490723, 'reg_alpha': 0.03147131714846291, 'reg_lambda': 0.38644069375879475}}\n{'Current Learner': 'lgbm', 'Current Sample': 15480, 'Current Hyper-parameters': {'n_estimators': 81.0, 'num_leaves': 66.0, 'min_child_samples': 93.0, 'learning_rate': 0.07560024606664352, 'subsample': 0.8756054034199897, 'log_max_bin': 7.0, 'colsample_bytree': 0.7142272555842307, 'reg_alpha': 0.00219854653612346, 'reg_lambda': 2.9360090402842274}, 'Best Learner': 'lgbm', 'Best Hyper-parameters': {'n_estimators': 81.0, 'num_leaves': 66.0, 'min_child_samples': 93.0, 'learning_rate': 0.07560024606664352, 'subsample': 0.8756054034199897, 'log_max_bin': 7.0, 'colsample_bytree': 0.7142272555842307, 'reg_alpha': 0.00219854653612346, 'reg_lambda': 2.9360090402842274}}\n{'Current Learner': 'lgbm', 'Current Sample': 15480, 'Current Hyper-parameters': {'n_estimators': 283.0, 'num_leaves': 171.0, 'min_child_samples': 128.0, 'learning_rate': 0.056885026855831654, 'subsample': 0.9152991332236934, 'log_max_bin': 8.0, 'colsample_bytree': 0.7103230835995594, 'reg_alpha': 0.012993197803320033, 'reg_lambda': 7.0529810054461715}, 'Best Learner': 'lgbm', 'Best Hyper-parameters': {'n_estimators': 283.0, 'num_leaves': 171.0, 'min_child_samples': 128.0, 'learning_rate': 0.056885026855831654, 'subsample': 0.9152991332236934, 'log_max_bin': 8.0, 'colsample_bytree': 0.7103230835995594, 'reg_alpha': 0.012993197803320033, 'reg_lambda': 7.0529810054461715}}\n{'Current Learner': 'lgbm', 'Current Sample': 15480, 'Current Hyper-parameters': {'n_estimators': 363.0, 'num_leaves': 269.0, 'min_child_samples': 128.0, 'learning_rate': 0.13082160708847235, 'subsample': 0.820105567300051, 'log_max_bin': 10.0, 'colsample_bytree': 0.6819303877749074, 'reg_alpha': 0.03805198795768637, 'reg_lambda': 18.14103139151093}, 'Best Learner': 'lgbm', 'Best Hyper-parameters': {'n_estimators': 363.0, 'num_leaves': 269.0, 'min_child_samples': 128.0, 'learning_rate': 0.13082160708847235, 'subsample': 0.820105567300051, 'log_max_bin': 10.0, 'colsample_bytree': 0.6819303877749074, 'reg_alpha': 0.03805198795768637, 'reg_lambda': 18.14103139151093}}\n" ] } ], @@ -380,7 +390,7 @@ }, { "cell_type": "code", - "execution_count": 11, + "execution_count": 21, "metadata": { "slideshow": { "slide_type": "slide" @@ -391,8 +401,8 @@ "output_type": "display_data", "data": { "text/plain": "
", - "image/svg+xml": "\n\n\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n", - "image/png": "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\n" + "image/svg+xml": "\n\n\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n", + "image/png": "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\n" }, "metadata": { "needs_background": "light" @@ -422,7 +432,7 @@ }, { "cell_type": "code", - "execution_count": 12, + "execution_count": 26, "metadata": { "tags": [] }, @@ -431,7 +441,7 @@ "output_type": "stream", "name": "stdout", "text": [ - "flaml r2 = 0.8491961402689281\n" + "flaml r2 = 0.8449836920253022\n" ] } ], @@ -670,7 +680,7 @@ }, { "cell_type": "code", - "execution_count": 20, + "execution_count": 24, "metadata": {}, "outputs": [], "source": [ @@ -718,7 +728,7 @@ }, { "cell_type": "code", - "execution_count": 21, + "execution_count": 25, "metadata": { "tags": [] }, @@ -727,79 +737,83 @@ "output_type": "stream", "name": "stderr", "text": [ - "[flaml.automl: 05-01 17:00:42] {890} INFO - Evaluation method: cv\n", - "[flaml.automl: 05-01 17:00:42] {606} INFO - Using RepeatedKFold\n", - "[flaml.automl: 05-01 17:00:42] {911} INFO - Minimizing error metric: 1-r2\n", - "[flaml.automl: 05-01 17:00:42] {929} INFO - List of ML learners in AutoML Run: ['my_lgbm']\n", - "[flaml.automl: 05-01 17:00:42] {993} INFO - iteration 0, current learner my_lgbm\n", - "[flaml.automl: 05-01 17:00:42] {1141} INFO - at 0.3s,\tbest my_lgbm's error=2.9883,\tbest my_lgbm's error=2.9883\n", - "[flaml.automl: 05-01 17:00:42] {993} INFO - iteration 1, current learner my_lgbm\n", - "[flaml.automl: 05-01 17:00:43] {1141} INFO - at 0.4s,\tbest my_lgbm's error=2.9883,\tbest my_lgbm's error=2.9883\n", - "[flaml.automl: 05-01 17:00:43] {993} INFO - iteration 2, current learner my_lgbm\n", - "[flaml.automl: 05-01 17:00:43] {1141} INFO - at 0.7s,\tbest my_lgbm's error=1.7530,\tbest my_lgbm's error=1.7530\n", - "[flaml.automl: 05-01 17:00:43] {993} INFO - iteration 3, current learner my_lgbm\n", - "[flaml.automl: 05-01 17:00:43] {1141} INFO - at 0.9s,\tbest my_lgbm's error=0.4472,\tbest my_lgbm's error=0.4472\n", - "[flaml.automl: 05-01 17:00:43] {993} INFO - iteration 4, current learner my_lgbm\n", - "[flaml.automl: 05-01 17:00:43] {1141} INFO - at 1.1s,\tbest my_lgbm's error=0.4472,\tbest my_lgbm's error=0.4472\n", - "[flaml.automl: 05-01 17:00:43] {993} INFO - iteration 5, current learner my_lgbm\n", - "[flaml.automl: 05-01 17:00:43] {1141} INFO - at 1.3s,\tbest my_lgbm's error=0.4472,\tbest my_lgbm's error=0.4472\n", - "[flaml.automl: 05-01 17:00:43] {993} INFO - iteration 6, current learner my_lgbm\n", - "[flaml.automl: 05-01 17:00:44] {1141} INFO - at 1.6s,\tbest my_lgbm's error=0.3146,\tbest my_lgbm's error=0.3146\n", - "[flaml.automl: 05-01 17:00:44] {993} INFO - iteration 7, current learner my_lgbm\n", - "[flaml.automl: 05-01 17:00:44] {1141} INFO - at 2.0s,\tbest my_lgbm's error=0.2722,\tbest my_lgbm's error=0.2722\n", - "[flaml.automl: 05-01 17:00:44] {993} INFO - iteration 8, current learner my_lgbm\n", - "[flaml.automl: 05-01 17:00:44] {1141} INFO - at 2.3s,\tbest my_lgbm's error=0.2722,\tbest my_lgbm's error=0.2722\n", - "[flaml.automl: 05-01 17:00:44] {993} INFO - iteration 9, current learner my_lgbm\n", - "[flaml.automl: 05-01 17:00:45] {1141} INFO - at 2.7s,\tbest my_lgbm's error=0.2060,\tbest my_lgbm's error=0.2060\n", - "[flaml.automl: 05-01 17:00:45] {993} INFO - iteration 10, current learner my_lgbm\n", - "[flaml.automl: 05-01 17:00:45] {1141} INFO - at 3.0s,\tbest my_lgbm's error=0.2060,\tbest my_lgbm's error=0.2060\n", - "[flaml.automl: 05-01 17:00:45] {993} INFO - iteration 11, current learner my_lgbm\n", - "[flaml.automl: 05-01 17:00:45] {1141} INFO - at 3.2s,\tbest my_lgbm's error=0.2060,\tbest my_lgbm's error=0.2060\n", - "[flaml.automl: 05-01 17:00:45] {993} INFO - iteration 12, current learner my_lgbm\n", - "[flaml.automl: 05-01 17:00:46] {1141} INFO - at 3.9s,\tbest my_lgbm's error=0.1864,\tbest my_lgbm's error=0.1864\n", - "[flaml.automl: 05-01 17:00:46] {993} INFO - iteration 13, current learner my_lgbm\n", - "[flaml.automl: 05-01 17:00:46] {1141} INFO - at 4.4s,\tbest my_lgbm's error=0.1864,\tbest my_lgbm's error=0.1864\n", - "[flaml.automl: 05-01 17:00:46] {993} INFO - iteration 14, current learner my_lgbm\n", - "[flaml.automl: 05-01 17:00:47] {1141} INFO - at 5.2s,\tbest my_lgbm's error=0.1864,\tbest my_lgbm's error=0.1864\n", - "[flaml.automl: 05-01 17:00:47] {993} INFO - iteration 15, current learner my_lgbm\n", - "[flaml.automl: 05-01 17:00:48] {1141} INFO - at 5.6s,\tbest my_lgbm's error=0.1864,\tbest my_lgbm's error=0.1864\n", - "[flaml.automl: 05-01 17:00:48] {993} INFO - iteration 16, current learner my_lgbm\n", - "[flaml.automl: 05-01 17:00:49] {1141} INFO - at 6.4s,\tbest my_lgbm's error=0.1856,\tbest my_lgbm's error=0.1856\n", - "[flaml.automl: 05-01 17:00:49] {993} INFO - iteration 17, current learner my_lgbm\n", - "[flaml.automl: 05-01 17:00:49] {1141} INFO - at 6.8s,\tbest my_lgbm's error=0.1856,\tbest my_lgbm's error=0.1856\n", - "[flaml.automl: 05-01 17:00:49] {993} INFO - iteration 18, current learner my_lgbm\n", - "[flaml.automl: 05-01 17:00:51] {1141} INFO - at 8.7s,\tbest my_lgbm's error=0.1724,\tbest my_lgbm's error=0.1724\n", - "[flaml.automl: 05-01 17:00:51] {993} INFO - iteration 19, current learner my_lgbm\n", - "[flaml.automl: 05-01 17:00:51] {1141} INFO - at 9.3s,\tbest my_lgbm's error=0.1724,\tbest my_lgbm's error=0.1724\n", - "[flaml.automl: 05-01 17:00:51] {993} INFO - iteration 20, current learner my_lgbm\n", - "[flaml.automl: 05-01 17:01:01] {1141} INFO - at 18.5s,\tbest my_lgbm's error=0.1724,\tbest my_lgbm's error=0.1724\n", - "[flaml.automl: 05-01 17:01:01] {993} INFO - iteration 21, current learner my_lgbm\n", - "[flaml.automl: 05-01 17:01:02] {1141} INFO - at 19.5s,\tbest my_lgbm's error=0.1724,\tbest my_lgbm's error=0.1724\n", - "[flaml.automl: 05-01 17:01:02] {993} INFO - iteration 22, current learner my_lgbm\n", - "[flaml.automl: 05-01 17:01:06] {1141} INFO - at 24.2s,\tbest my_lgbm's error=0.1696,\tbest my_lgbm's error=0.1696\n", - "[flaml.automl: 05-01 17:01:06] {993} INFO - iteration 23, current learner my_lgbm\n", - "[flaml.automl: 05-01 17:01:08] {1141} INFO - at 25.8s,\tbest my_lgbm's error=0.1696,\tbest my_lgbm's error=0.1696\n", - "[flaml.automl: 05-01 17:01:08] {993} INFO - iteration 24, current learner my_lgbm\n", - "[flaml.automl: 05-01 17:01:14] {1141} INFO - at 32.0s,\tbest my_lgbm's error=0.1696,\tbest my_lgbm's error=0.1696\n", - "[flaml.automl: 05-01 17:01:14] {993} INFO - iteration 25, current learner my_lgbm\n", - "[flaml.automl: 05-01 17:01:15] {1141} INFO - at 32.9s,\tbest my_lgbm's error=0.1696,\tbest my_lgbm's error=0.1696\n", - "[flaml.automl: 05-01 17:01:15] {993} INFO - iteration 26, current learner my_lgbm\n", - "[flaml.automl: 05-01 17:01:33] {1141} INFO - at 50.7s,\tbest my_lgbm's error=0.1607,\tbest my_lgbm's error=0.1607\n", - "[flaml.automl: 05-01 17:01:33] {993} INFO - iteration 27, current learner my_lgbm\n", - "[flaml.automl: 05-01 17:01:45] {1141} INFO - at 62.6s,\tbest my_lgbm's error=0.1607,\tbest my_lgbm's error=0.1607\n", - "[flaml.automl: 05-01 17:01:45] {993} INFO - iteration 28, current learner my_lgbm\n", - "[flaml.automl: 05-01 17:02:08] {1141} INFO - at 86.1s,\tbest my_lgbm's error=0.1607,\tbest my_lgbm's error=0.1607\n", - "[flaml.automl: 05-01 17:02:08] {993} INFO - iteration 29, current learner my_lgbm\n", - "[flaml.automl: 05-01 17:02:13] {1141} INFO - at 91.0s,\tbest my_lgbm's error=0.1607,\tbest my_lgbm's error=0.1607\n", - "[flaml.automl: 05-01 17:02:13] {993} INFO - iteration 30, current learner my_lgbm\n", - "[flaml.automl: 05-01 17:02:32] {1141} INFO - at 109.7s,\tbest my_lgbm's error=0.1607,\tbest my_lgbm's error=0.1607\n", - "[flaml.automl: 05-01 17:02:32] {1187} INFO - selected model: LGBMRegressor(colsample_bytree=0.6261496118517905,\n", - " learning_rate=0.08869510109538115, max_bin=127,\n", - " min_child_samples=79, n_estimators=493, num_leaves=282,\n", - " objective=,\n", - " reg_alpha=0.023427326819484437, reg_lambda=3.676068046341948,\n", - " subsample=0.9152991332236934)\n", - "[flaml.automl: 05-01 17:02:32] {944} INFO - fit succeeded\n" + "[flaml.automl: 07-06 11:11:09] {908} INFO - Evaluation method: cv\n", + "[flaml.automl: 07-06 11:11:09] {617} INFO - Using RepeatedKFold\n", + "[flaml.automl: 07-06 11:11:09] {929} INFO - Minimizing error metric: 1-r2\n", + "[flaml.automl: 07-06 11:11:09] {948} INFO - List of ML learners in AutoML Run: ['my_lgbm']\n", + "[flaml.automl: 07-06 11:11:09] {1012} INFO - iteration 0, current learner my_lgbm\n", + "[flaml.automl: 07-06 11:11:09] {1160} INFO - at 0.2s,\tbest my_lgbm's error=2.9888,\tbest my_lgbm's error=2.9888\n", + "[flaml.automl: 07-06 11:11:09] {1012} INFO - iteration 1, current learner my_lgbm\n", + "[flaml.automl: 07-06 11:11:09] {1160} INFO - at 0.4s,\tbest my_lgbm's error=2.9888,\tbest my_lgbm's error=2.9888\n", + "[flaml.automl: 07-06 11:11:09] {1012} INFO - iteration 2, current learner my_lgbm\n", + "[flaml.automl: 07-06 11:11:09] {1160} INFO - at 0.6s,\tbest my_lgbm's error=1.7536,\tbest my_lgbm's error=1.7536\n", + "[flaml.automl: 07-06 11:11:09] {1012} INFO - iteration 3, current learner my_lgbm\n", + "[flaml.automl: 07-06 11:11:10] {1160} INFO - at 0.8s,\tbest my_lgbm's error=0.4529,\tbest my_lgbm's error=0.4529\n", + "[flaml.automl: 07-06 11:11:10] {1012} INFO - iteration 4, current learner my_lgbm\n", + "[flaml.automl: 07-06 11:11:10] {1160} INFO - at 1.0s,\tbest my_lgbm's error=0.4529,\tbest my_lgbm's error=0.4529\n", + "[flaml.automl: 07-06 11:11:10] {1012} INFO - iteration 5, current learner my_lgbm\n", + "[flaml.automl: 07-06 11:11:10] {1160} INFO - at 1.2s,\tbest my_lgbm's error=0.4529,\tbest my_lgbm's error=0.4529\n", + "[flaml.automl: 07-06 11:11:10] {1012} INFO - iteration 6, current learner my_lgbm\n", + "[flaml.automl: 07-06 11:11:10] {1160} INFO - at 1.5s,\tbest my_lgbm's error=0.3159,\tbest my_lgbm's error=0.3159\n", + "[flaml.automl: 07-06 11:11:10] {1012} INFO - iteration 7, current learner my_lgbm\n", + "[flaml.automl: 07-06 11:11:11] {1160} INFO - at 1.8s,\tbest my_lgbm's error=0.2717,\tbest my_lgbm's error=0.2717\n", + "[flaml.automl: 07-06 11:11:11] {1012} INFO - iteration 8, current learner my_lgbm\n", + "[flaml.automl: 07-06 11:11:11] {1160} INFO - at 2.1s,\tbest my_lgbm's error=0.2717,\tbest my_lgbm's error=0.2717\n", + "[flaml.automl: 07-06 11:11:11] {1012} INFO - iteration 9, current learner my_lgbm\n", + "[flaml.automl: 07-06 11:11:11] {1160} INFO - at 2.5s,\tbest my_lgbm's error=0.2073,\tbest my_lgbm's error=0.2073\n", + "[flaml.automl: 07-06 11:11:11] {1012} INFO - iteration 10, current learner my_lgbm\n", + "[flaml.automl: 07-06 11:11:12] {1160} INFO - at 2.8s,\tbest my_lgbm's error=0.2073,\tbest my_lgbm's error=0.2073\n", + "[flaml.automl: 07-06 11:11:12] {1012} INFO - iteration 11, current learner my_lgbm\n", + "[flaml.automl: 07-06 11:11:12] {1160} INFO - at 3.0s,\tbest my_lgbm's error=0.2073,\tbest my_lgbm's error=0.2073\n", + "[flaml.automl: 07-06 11:11:12] {1012} INFO - iteration 12, current learner my_lgbm\n", + "[flaml.automl: 07-06 11:11:12] {1160} INFO - at 3.6s,\tbest my_lgbm's error=0.1883,\tbest my_lgbm's error=0.1883\n", + "[flaml.automl: 07-06 11:11:12] {1012} INFO - iteration 13, current learner my_lgbm\n", + "[flaml.automl: 07-06 11:11:13] {1160} INFO - at 4.0s,\tbest my_lgbm's error=0.1883,\tbest my_lgbm's error=0.1883\n", + "[flaml.automl: 07-06 11:11:13] {1012} INFO - iteration 14, current learner my_lgbm\n", + "[flaml.automl: 07-06 11:11:14] {1160} INFO - at 4.7s,\tbest my_lgbm's error=0.1883,\tbest my_lgbm's error=0.1883\n", + "[flaml.automl: 07-06 11:11:14] {1012} INFO - iteration 15, current learner my_lgbm\n", + "[flaml.automl: 07-06 11:11:14] {1160} INFO - at 5.1s,\tbest my_lgbm's error=0.1883,\tbest my_lgbm's error=0.1883\n", + "[flaml.automl: 07-06 11:11:14] {1012} INFO - iteration 16, current learner my_lgbm\n", + "[flaml.automl: 07-06 11:11:15] {1160} INFO - at 5.9s,\tbest my_lgbm's error=0.1878,\tbest my_lgbm's error=0.1878\n", + "[flaml.automl: 07-06 11:11:15] {1012} INFO - iteration 17, current learner my_lgbm\n", + "[flaml.automl: 07-06 11:11:15] {1160} INFO - at 6.2s,\tbest my_lgbm's error=0.1878,\tbest my_lgbm's error=0.1878\n", + "[flaml.automl: 07-06 11:11:15] {1012} INFO - iteration 18, current learner my_lgbm\n", + "[flaml.automl: 07-06 11:11:17] {1160} INFO - at 7.7s,\tbest my_lgbm's error=0.1878,\tbest my_lgbm's error=0.1878\n", + "[flaml.automl: 07-06 11:11:17] {1012} INFO - iteration 19, current learner my_lgbm\n", + "[flaml.automl: 07-06 11:11:17] {1160} INFO - at 8.0s,\tbest my_lgbm's error=0.1878,\tbest my_lgbm's error=0.1878\n", + "[flaml.automl: 07-06 11:11:17] {1012} INFO - iteration 20, current learner my_lgbm\n", + "[flaml.automl: 07-06 11:11:20] {1160} INFO - at 10.9s,\tbest my_lgbm's error=0.1878,\tbest my_lgbm's error=0.1878\n", + "[flaml.automl: 07-06 11:11:20] {1012} INFO - iteration 21, current learner my_lgbm\n", + "[flaml.automl: 07-06 11:11:20] {1160} INFO - at 11.4s,\tbest my_lgbm's error=0.1878,\tbest my_lgbm's error=0.1878\n", + "[flaml.automl: 07-06 11:11:20] {1012} INFO - iteration 22, current learner my_lgbm\n", + "[flaml.automl: 07-06 11:11:21] {1160} INFO - at 12.6s,\tbest my_lgbm's error=0.1751,\tbest my_lgbm's error=0.1751\n", + "[flaml.automl: 07-06 11:11:21] {1012} INFO - iteration 23, current learner my_lgbm\n", + "[flaml.automl: 07-06 11:11:22] {1160} INFO - at 13.1s,\tbest my_lgbm's error=0.1751,\tbest my_lgbm's error=0.1751\n", + "[flaml.automl: 07-06 11:11:22] {1012} INFO - iteration 24, current learner my_lgbm\n", + "[flaml.automl: 07-06 11:11:23] {1160} INFO - at 14.6s,\tbest my_lgbm's error=0.1751,\tbest my_lgbm's error=0.1751\n", + "[flaml.automl: 07-06 11:11:23] {1012} INFO - iteration 25, current learner my_lgbm\n", + "[flaml.automl: 07-06 11:11:24] {1160} INFO - at 14.9s,\tbest my_lgbm's error=0.1751,\tbest my_lgbm's error=0.1751\n", + "[flaml.automl: 07-06 11:11:24] {1012} INFO - iteration 26, current learner my_lgbm\n", + "[flaml.automl: 07-06 11:11:30] {1160} INFO - at 21.2s,\tbest my_lgbm's error=0.1660,\tbest my_lgbm's error=0.1660\n", + "[flaml.automl: 07-06 11:11:30] {1012} INFO - iteration 27, current learner my_lgbm\n", + "[flaml.automl: 07-06 11:11:33] {1160} INFO - at 24.5s,\tbest my_lgbm's error=0.1660,\tbest my_lgbm's error=0.1660\n", + "[flaml.automl: 07-06 11:11:33] {1012} INFO - iteration 28, current learner my_lgbm\n", + "[flaml.automl: 07-06 11:11:41] {1160} INFO - at 32.3s,\tbest my_lgbm's error=0.1660,\tbest my_lgbm's error=0.1660\n", + "[flaml.automl: 07-06 11:11:41] {1012} INFO - iteration 29, current learner my_lgbm\n", + "[flaml.automl: 07-06 11:11:42] {1160} INFO - at 33.5s,\tbest my_lgbm's error=0.1660,\tbest my_lgbm's error=0.1660\n", + "[flaml.automl: 07-06 11:11:42] {1012} INFO - iteration 30, current learner my_lgbm\n", + "[flaml.automl: 07-06 11:12:15] {1160} INFO - at 66.4s,\tbest my_lgbm's error=0.1634,\tbest my_lgbm's error=0.1634\n", + "[flaml.automl: 07-06 11:12:15] {1012} INFO - iteration 31, current learner my_lgbm\n", + "[flaml.automl: 07-06 11:12:20] {1160} INFO - at 71.1s,\tbest my_lgbm's error=0.1634,\tbest my_lgbm's error=0.1634\n", + "[flaml.automl: 07-06 11:12:20] {1012} INFO - iteration 32, current learner my_lgbm\n", + "[flaml.automl: 07-06 11:12:48] {1160} INFO - at 99.2s,\tbest my_lgbm's error=0.1611,\tbest my_lgbm's error=0.1611\n", + "[flaml.automl: 07-06 11:12:48] {1206} INFO - selected model: LGBMRegressor(colsample_bytree=0.7688482528052621,\n", + " learning_rate=0.1733433791081217, max_bin=512,\n", + " min_child_samples=98, n_estimators=1516, num_leaves=26,\n", + " objective=,\n", + " reg_alpha=0.026256980419803243, reg_lambda=1.5567350977212402,\n", + " subsample=0.94353743444674)\n", + "[flaml.automl: 07-06 11:12:48] {963} INFO - fit succeeded\n" ] } ], @@ -818,7 +832,7 @@ }, { "cell_type": "code", - "execution_count": 22, + "execution_count": 27, "metadata": { "tags": [] }, @@ -827,15 +841,15 @@ "output_type": "stream", "name": "stdout", "text": [ - "Best hyperparmeter config: {'n_estimators': 493.0, 'num_leaves': 282.0, 'min_child_samples': 79.0, 'learning_rate': 0.08869510109538115, 'subsample': 0.9152991332236934, 'log_max_bin': 7.0, 'colsample_bytree': 0.6261496118517905, 'reg_alpha': 0.023427326819484437, 'reg_lambda': 3.676068046341948}\n", - "Best r2 on validation data: 0.8393\n", - "Training duration of best run: 17.8 s\n", - "Predicted labels [145117.75593607 248133.51648268 134326.11799226 ... 197406.17210771\n", - " 245758.5509811 267784.87515589]\n", + "Best hyperparmeter config: {'n_estimators': 1516.0, 'num_leaves': 26.0, 'min_child_samples': 98.0, 'learning_rate': 0.1733433791081217, 'subsample': 0.94353743444674, 'log_max_bin': 10.0, 'colsample_bytree': 0.7688482528052621, 'reg_alpha': 0.026256980419803243, 'reg_lambda': 1.5567350977212402}\n", + "Best r2 on validation data: 0.8389\n", + "Training duration of best run: 28.05 s\n", + "Predicted labels [139034.72098791 254152.8814857 154250.52168576 ... 203253.92751711\n", + " 231764.04026937 282262.87207539]\n", "True labels [136900. 241300. 200700. ... 160900. 227300. 265600.]\n", - "r2 = 0.8467399586261989\n", - "mse = 2025868859.4366\n", - "mae = 29981.366220545584\n" + "r2 = 0.8468233449743118\n", + "mse = 2024766616.448606\n", + "mae = 30028.40209024503\n" ] } ], @@ -858,12 +872,7 @@ "metadata": { "kernelspec": { "name": "python3", - "display_name": "Python 3.8.0 64-bit", - "metadata": { - "interpreter": { - "hash": "0cfea3304185a9579d09e0953576b57c8581e46e6ebc6dfeb681bc5a511f7544" - } - } + "display_name": "Python 3.8.10 64-bit ('py38': conda)" }, "language_info": { "codemirror_mode": { @@ -875,7 +884,10 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.8.0-final" + "version": "3.8.10" + }, + "interpreter": { + "hash": "4502d015faca2560a557f35a41b6dd402f7fdfc08e843ae17a9c41947939f10c" } }, "nbformat": 4, diff --git a/notebook/flaml_xgboost.ipynb b/notebook/flaml_xgboost.ipynb index 4ff75da9d..6c2c35daf 100644 --- a/notebook/flaml_xgboost.ipynb +++ b/notebook/flaml_xgboost.ipynb @@ -58,7 +58,7 @@ }, { "cell_type": "code", - "execution_count": 1, + "execution_count": 19, "metadata": { "slideshow": { "slide_type": "subslide" @@ -139,62 +139,66 @@ "output_type": "stream", "name": "stderr", "text": [ - "[flaml.automl: 05-02 07:56:06] {890} INFO - Evaluation method: cv\n", - "[flaml.automl: 05-02 07:56:06] {606} INFO - Using RepeatedKFold\n", - "[flaml.automl: 05-02 07:56:06] {911} INFO - Minimizing error metric: 1-r2\n", - "[flaml.automl: 05-02 07:56:06] {929} INFO - List of ML learners in AutoML Run: ['xgboost']\n", - "[flaml.automl: 05-02 07:56:06] {993} INFO - iteration 0, current learner xgboost\n", - "[flaml.automl: 05-02 07:56:07] {1141} INFO - at 0.5s,\tbest xgboost's error=2.1267,\tbest xgboost's error=2.1267\n", - "[flaml.automl: 05-02 07:56:07] {993} INFO - iteration 1, current learner xgboost\n", - "[flaml.automl: 05-02 07:56:07] {1141} INFO - at 0.8s,\tbest xgboost's error=2.1267,\tbest xgboost's error=2.1267\n", - "[flaml.automl: 05-02 07:56:07] {993} INFO - iteration 2, current learner xgboost\n", - "[flaml.automl: 05-02 07:56:07] {1141} INFO - at 1.1s,\tbest xgboost's error=0.8485,\tbest xgboost's error=0.8485\n", - "[flaml.automl: 05-02 07:56:07] {993} INFO - iteration 3, current learner xgboost\n", - "[flaml.automl: 05-02 07:56:08] {1141} INFO - at 1.3s,\tbest xgboost's error=0.3799,\tbest xgboost's error=0.3799\n", - "[flaml.automl: 05-02 07:56:08] {993} INFO - iteration 4, current learner xgboost\n", - "[flaml.automl: 05-02 07:56:08] {1141} INFO - at 1.5s,\tbest xgboost's error=0.3799,\tbest xgboost's error=0.3799\n", - "[flaml.automl: 05-02 07:56:08] {993} INFO - iteration 5, current learner xgboost\n", - "[flaml.automl: 05-02 07:56:08] {1141} INFO - at 1.7s,\tbest xgboost's error=0.3799,\tbest xgboost's error=0.3799\n", - "[flaml.automl: 05-02 07:56:08] {993} INFO - iteration 6, current learner xgboost\n", - "[flaml.automl: 05-02 07:56:08] {1141} INFO - at 2.1s,\tbest xgboost's error=0.2992,\tbest xgboost's error=0.2992\n", - "[flaml.automl: 05-02 07:56:08] {993} INFO - iteration 7, current learner xgboost\n", - "[flaml.automl: 05-02 07:56:09] {1141} INFO - at 2.5s,\tbest xgboost's error=0.2992,\tbest xgboost's error=0.2992\n", - "[flaml.automl: 05-02 07:56:09] {993} INFO - iteration 8, current learner xgboost\n", - "[flaml.automl: 05-02 07:56:09] {1141} INFO - at 2.7s,\tbest xgboost's error=0.2992,\tbest xgboost's error=0.2992\n", - "[flaml.automl: 05-02 07:56:09] {993} INFO - iteration 9, current learner xgboost\n", - "[flaml.automl: 05-02 07:56:09] {1141} INFO - at 3.1s,\tbest xgboost's error=0.2513,\tbest xgboost's error=0.2513\n", - "[flaml.automl: 05-02 07:56:09] {993} INFO - iteration 10, current learner xgboost\n", - "[flaml.automl: 05-02 07:56:10] {1141} INFO - at 3.4s,\tbest xgboost's error=0.2513,\tbest xgboost's error=0.2513\n", - "[flaml.automl: 05-02 07:56:10] {993} INFO - iteration 11, current learner xgboost\n", - "[flaml.automl: 05-02 07:56:10] {1141} INFO - at 3.7s,\tbest xgboost's error=0.2513,\tbest xgboost's error=0.2513\n", - "[flaml.automl: 05-02 07:56:10] {993} INFO - iteration 12, current learner xgboost\n", - "[flaml.automl: 05-02 07:56:10] {1141} INFO - at 4.0s,\tbest xgboost's error=0.2113,\tbest xgboost's error=0.2113\n", - "[flaml.automl: 05-02 07:56:10] {993} INFO - iteration 13, current learner xgboost\n", - "[flaml.automl: 05-02 07:56:11] {1141} INFO - at 4.3s,\tbest xgboost's error=0.2113,\tbest xgboost's error=0.2113\n", - "[flaml.automl: 05-02 07:56:11] {993} INFO - iteration 14, current learner xgboost\n", - "[flaml.automl: 05-02 07:56:11] {1141} INFO - at 5.1s,\tbest xgboost's error=0.2090,\tbest xgboost's error=0.2090\n", - "[flaml.automl: 05-02 07:56:11] {993} INFO - iteration 15, current learner xgboost\n", - "[flaml.automl: 05-02 07:56:12] {1141} INFO - at 5.9s,\tbest xgboost's error=0.2090,\tbest xgboost's error=0.2090\n", - "[flaml.automl: 05-02 07:56:12] {993} INFO - iteration 16, current learner xgboost\n", - "[flaml.automl: 05-02 07:56:13] {1141} INFO - at 7.3s,\tbest xgboost's error=0.1919,\tbest xgboost's error=0.1919\n", - "[flaml.automl: 05-02 07:56:13] {993} INFO - iteration 17, current learner xgboost\n", - "[flaml.automl: 05-02 07:56:14] {1141} INFO - at 7.8s,\tbest xgboost's error=0.1919,\tbest xgboost's error=0.1919\n", - "[flaml.automl: 05-02 07:56:14] {993} INFO - iteration 18, current learner xgboost\n", - "[flaml.automl: 05-02 07:56:19] {1141} INFO - at 13.2s,\tbest xgboost's error=0.1797,\tbest xgboost's error=0.1797\n", - "[flaml.automl: 05-02 07:56:19] {993} INFO - iteration 19, current learner xgboost\n", - "[flaml.automl: 05-02 07:56:21] {1141} INFO - at 15.2s,\tbest xgboost's error=0.1797,\tbest xgboost's error=0.1797\n", - "[flaml.automl: 05-02 07:56:21] {993} INFO - iteration 20, current learner xgboost\n", - "[flaml.automl: 05-02 07:56:40] {1141} INFO - at 33.4s,\tbest xgboost's error=0.1797,\tbest xgboost's error=0.1797\n", - "[flaml.automl: 05-02 07:56:40] {993} INFO - iteration 21, current learner xgboost\n", - "[flaml.automl: 05-02 07:56:42] {1141} INFO - at 36.3s,\tbest xgboost's error=0.1797,\tbest xgboost's error=0.1797\n", - "[flaml.automl: 05-02 07:56:42] {993} INFO - iteration 22, current learner xgboost\n", - "[flaml.automl: 05-02 07:56:49] {1141} INFO - at 43.0s,\tbest xgboost's error=0.1782,\tbest xgboost's error=0.1782\n", - "[flaml.automl: 05-02 07:56:49] {993} INFO - iteration 23, current learner xgboost\n", - "[flaml.automl: 05-02 07:56:53] {1141} INFO - at 46.8s,\tbest xgboost's error=0.1782,\tbest xgboost's error=0.1782\n", - "[flaml.automl: 05-02 07:56:53] {993} INFO - iteration 24, current learner xgboost\n", - "[flaml.automl: 05-02 07:57:05] {1141} INFO - at 58.7s,\tbest xgboost's error=0.1782,\tbest xgboost's error=0.1782\n", - "[flaml.automl: 05-02 07:57:05] {1187} INFO - selected model: \n", - "[flaml.automl: 05-02 07:57:05] {944} INFO - fit succeeded\n" + "[flaml.automl: 07-06 10:17:07] {908} INFO - Evaluation method: cv\n", + "[flaml.automl: 07-06 10:17:07] {617} INFO - Using RepeatedKFold\n", + "[flaml.automl: 07-06 10:17:07] {929} INFO - Minimizing error metric: 1-r2\n", + "[flaml.automl: 07-06 10:17:07] {948} INFO - List of ML learners in AutoML Run: ['xgboost']\n", + "[flaml.automl: 07-06 10:17:07] {1012} INFO - iteration 0, current learner xgboost\n", + "[flaml.automl: 07-06 10:17:07] {1160} INFO - at 0.1s,\tbest xgboost's error=2.1267,\tbest xgboost's error=2.1267\n", + "[flaml.automl: 07-06 10:17:07] {1012} INFO - iteration 1, current learner xgboost\n", + "[flaml.automl: 07-06 10:17:08] {1160} INFO - at 0.3s,\tbest xgboost's error=2.1267,\tbest xgboost's error=2.1267\n", + "[flaml.automl: 07-06 10:17:08] {1012} INFO - iteration 2, current learner xgboost\n", + "[flaml.automl: 07-06 10:17:08] {1160} INFO - at 0.4s,\tbest xgboost's error=0.8485,\tbest xgboost's error=0.8485\n", + "[flaml.automl: 07-06 10:17:08] {1012} INFO - iteration 3, current learner xgboost\n", + "[flaml.automl: 07-06 10:17:08] {1160} INFO - at 0.5s,\tbest xgboost's error=0.4320,\tbest xgboost's error=0.4320\n", + "[flaml.automl: 07-06 10:17:08] {1012} INFO - iteration 4, current learner xgboost\n", + "[flaml.automl: 07-06 10:17:08] {1160} INFO - at 0.6s,\tbest xgboost's error=0.4320,\tbest xgboost's error=0.4320\n", + "[flaml.automl: 07-06 10:17:08] {1012} INFO - iteration 5, current learner xgboost\n", + "[flaml.automl: 07-06 10:17:08] {1160} INFO - at 0.8s,\tbest xgboost's error=0.4320,\tbest xgboost's error=0.4320\n", + "[flaml.automl: 07-06 10:17:08] {1012} INFO - iteration 6, current learner xgboost\n", + "[flaml.automl: 07-06 10:17:08] {1160} INFO - at 0.9s,\tbest xgboost's error=0.2992,\tbest xgboost's error=0.2992\n", + "[flaml.automl: 07-06 10:17:08] {1012} INFO - iteration 7, current learner xgboost\n", + "[flaml.automl: 07-06 10:17:09] {1160} INFO - at 1.2s,\tbest xgboost's error=0.2801,\tbest xgboost's error=0.2801\n", + "[flaml.automl: 07-06 10:17:09] {1012} INFO - iteration 8, current learner xgboost\n", + "[flaml.automl: 07-06 10:17:09] {1160} INFO - at 1.4s,\tbest xgboost's error=0.2801,\tbest xgboost's error=0.2801\n", + "[flaml.automl: 07-06 10:17:09] {1012} INFO - iteration 9, current learner xgboost\n", + "[flaml.automl: 07-06 10:17:09] {1160} INFO - at 1.6s,\tbest xgboost's error=0.2336,\tbest xgboost's error=0.2336\n", + "[flaml.automl: 07-06 10:17:09] {1012} INFO - iteration 10, current learner xgboost\n", + "[flaml.automl: 07-06 10:17:09] {1160} INFO - at 1.8s,\tbest xgboost's error=0.2336,\tbest xgboost's error=0.2336\n", + "[flaml.automl: 07-06 10:17:09] {1012} INFO - iteration 11, current learner xgboost\n", + "[flaml.automl: 07-06 10:17:09] {1160} INFO - at 2.0s,\tbest xgboost's error=0.2336,\tbest xgboost's error=0.2336\n", + "[flaml.automl: 07-06 10:17:09] {1012} INFO - iteration 12, current learner xgboost\n", + "[flaml.automl: 07-06 10:17:10] {1160} INFO - at 2.3s,\tbest xgboost's error=0.2071,\tbest xgboost's error=0.2071\n", + "[flaml.automl: 07-06 10:17:10] {1012} INFO - iteration 13, current learner xgboost\n", + "[flaml.automl: 07-06 10:17:10] {1160} INFO - at 2.5s,\tbest xgboost's error=0.2071,\tbest xgboost's error=0.2071\n", + "[flaml.automl: 07-06 10:17:10] {1012} INFO - iteration 14, current learner xgboost\n", + "[flaml.automl: 07-06 10:17:10] {1160} INFO - at 3.0s,\tbest xgboost's error=0.1999,\tbest xgboost's error=0.1999\n", + "[flaml.automl: 07-06 10:17:10] {1012} INFO - iteration 15, current learner xgboost\n", + "[flaml.automl: 07-06 10:17:11] {1160} INFO - at 3.5s,\tbest xgboost's error=0.1999,\tbest xgboost's error=0.1999\n", + "[flaml.automl: 07-06 10:17:11] {1012} INFO - iteration 16, current learner xgboost\n", + "[flaml.automl: 07-06 10:17:12] {1160} INFO - at 4.4s,\tbest xgboost's error=0.1941,\tbest xgboost's error=0.1941\n", + "[flaml.automl: 07-06 10:17:12] {1012} INFO - iteration 17, current learner xgboost\n", + "[flaml.automl: 07-06 10:17:12] {1160} INFO - at 4.8s,\tbest xgboost's error=0.1941,\tbest xgboost's error=0.1941\n", + "[flaml.automl: 07-06 10:17:12] {1012} INFO - iteration 18, current learner xgboost\n", + "[flaml.automl: 07-06 10:17:16] {1160} INFO - at 9.0s,\tbest xgboost's error=0.1862,\tbest xgboost's error=0.1862\n", + "[flaml.automl: 07-06 10:17:16] {1012} INFO - iteration 19, current learner xgboost\n", + "[flaml.automl: 07-06 10:17:18] {1160} INFO - at 10.2s,\tbest xgboost's error=0.1862,\tbest xgboost's error=0.1862\n", + "[flaml.automl: 07-06 10:17:18] {1012} INFO - iteration 20, current learner xgboost\n", + "[flaml.automl: 07-06 10:17:35] {1160} INFO - at 27.4s,\tbest xgboost's error=0.1862,\tbest xgboost's error=0.1862\n", + "[flaml.automl: 07-06 10:17:35] {1012} INFO - iteration 21, current learner xgboost\n", + "[flaml.automl: 07-06 10:17:37] {1160} INFO - at 30.1s,\tbest xgboost's error=0.1862,\tbest xgboost's error=0.1862\n", + "[flaml.automl: 07-06 10:17:37] {1012} INFO - iteration 22, current learner xgboost\n", + "[flaml.automl: 07-06 10:17:44] {1160} INFO - at 36.4s,\tbest xgboost's error=0.1843,\tbest xgboost's error=0.1843\n", + "[flaml.automl: 07-06 10:17:44] {1012} INFO - iteration 23, current learner xgboost\n", + "[flaml.automl: 07-06 10:17:47] {1160} INFO - at 39.6s,\tbest xgboost's error=0.1843,\tbest xgboost's error=0.1843\n", + "[flaml.automl: 07-06 10:17:47] {1012} INFO - iteration 24, current learner xgboost\n", + "[flaml.automl: 07-06 10:17:57] {1160} INFO - at 49.6s,\tbest xgboost's error=0.1843,\tbest xgboost's error=0.1843\n", + "[flaml.automl: 07-06 10:17:57] {1012} INFO - iteration 25, current learner xgboost\n", + "[flaml.automl: 07-06 10:17:58] {1160} INFO - at 50.7s,\tbest xgboost's error=0.1843,\tbest xgboost's error=0.1843\n", + "[flaml.automl: 07-06 10:17:58] {1012} INFO - iteration 26, current learner xgboost\n", + "[flaml.automl: 07-06 10:18:10] {1160} INFO - at 63.0s,\tbest xgboost's error=0.1755,\tbest xgboost's error=0.1755\n", + "[flaml.automl: 07-06 10:18:10] {1206} INFO - selected model: \n", + "[flaml.automl: 07-06 10:18:10] {963} INFO - fit succeeded\n" ] } ], @@ -228,7 +232,7 @@ "output_type": "stream", "name": "stdout", "text": [ - "Best hyperparmeter config: {'n_estimators': 222.0, 'max_leaves': 62.0, 'min_child_weight': 7.5054716192185795, 'learning_rate': 0.04623175582706431, 'subsample': 0.8756054034199897, 'colsample_bylevel': 0.44768367042684304, 'colsample_bytree': 0.7352307811741962, 'reg_alpha': 0.0009765625, 'reg_lambda': 0.6207832675443758}\nBest r2 on validation data: 0.8218\nTraining duration of best run: 6.742 s\n" + "Best hyperparmeter config: {'n_estimators': 1430.0, 'max_leaves': 160.0, 'min_child_weight': 66.34713625314276, 'learning_rate': 0.03478685333241491, 'subsample': 0.9152991332236934, 'colsample_bylevel': 0.5185440993287367, 'colsample_bytree': 0.5812293817391292, 'reg_alpha': 0.007546483534701107, 'reg_lambda': 6.663009697009309}\nBest r2 on validation data: 0.8245\nTraining duration of best run: 12.28 s\n" ] } ], @@ -241,7 +245,7 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 18, "metadata": { "slideshow": { "slide_type": "slide" @@ -252,15 +256,15 @@ "output_type": "execute_result", "data": { "text/plain": [ - "" + "" ] }, "metadata": {}, - "execution_count": 6 + "execution_count": 18 } ], "source": [ - "automl.model" + "automl.model.estimator" ] }, { @@ -293,7 +297,7 @@ "output_type": "stream", "name": "stdout", "text": [ - "Predicted labels [146973.44 249425.19 153984.38 ... 231542.02 240381.16 264131.75]\nTrue labels [136900. 241300. 200700. ... 160900. 227300. 265600.]\n" + "Predicted labels [145392.75 233295.77 143450.25 ... 212370.64 206201.98 259638.22]\nTrue labels [136900. 241300. 200700. ... 160900. 227300. 265600.]\n" ] } ], @@ -318,7 +322,7 @@ "output_type": "stream", "name": "stdout", "text": [ - "r2 = 0.831184063859627\nmse = 2231494556.1660414\nmae = 31958.22036624879\n" + "r2 = 0.834848817994438\nmse = 2183051979.6623774\nmae = 31703.565776972806\n" ] } ], @@ -344,7 +348,7 @@ "output_type": "stream", "name": "stdout", "text": [ - "{'Current Learner': 'xgboost', 'Current Sample': 15480, 'Current Hyper-parameters': {'n_estimators': 4, 'max_leaves': 4, 'min_child_weight': 1, 'learning_rate': 0.1, 'subsample': 1.0, 'colsample_bylevel': 1.0, 'colsample_bytree': 1.0, 'reg_alpha': 0.0009765625, 'reg_lambda': 1.0}, 'Best Learner': 'xgboost', 'Best Hyper-parameters': {'n_estimators': 4, 'max_leaves': 4, 'min_child_weight': 1, 'learning_rate': 0.1, 'subsample': 1.0, 'colsample_bylevel': 1.0, 'colsample_bytree': 1.0, 'reg_alpha': 0.0009765625, 'reg_lambda': 1.0}}\n{'Current Learner': 'xgboost', 'Current Sample': 15480, 'Current Hyper-parameters': {'n_estimators': 4.0, 'max_leaves': 4.0, 'min_child_weight': 0.2620811530815948, 'learning_rate': 0.25912534572860507, 'subsample': 0.9266743941610592, 'colsample_bylevel': 1.0, 'colsample_bytree': 1.0, 'reg_alpha': 0.0013933617380144255, 'reg_lambda': 0.18096917948292954}, 'Best Learner': 'xgboost', 'Best Hyper-parameters': {'n_estimators': 4.0, 'max_leaves': 4.0, 'min_child_weight': 0.2620811530815948, 'learning_rate': 0.25912534572860507, 'subsample': 0.9266743941610592, 'colsample_bylevel': 1.0, 'colsample_bytree': 1.0, 'reg_alpha': 0.0013933617380144255, 'reg_lambda': 0.18096917948292954}}\n{'Current Learner': 'xgboost', 'Current Sample': 15480, 'Current Hyper-parameters': {'n_estimators': 4.0, 'max_leaves': 4.0, 'min_child_weight': 1.8630223791107017, 'learning_rate': 1.0, 'subsample': 0.8513627344387318, 'colsample_bylevel': 1.0, 'colsample_bytree': 0.946138073111236, 'reg_alpha': 0.0018311776973217071, 'reg_lambda': 0.27901659190538414}, 'Best Learner': 'xgboost', 'Best Hyper-parameters': {'n_estimators': 4.0, 'max_leaves': 4.0, 'min_child_weight': 1.8630223791107017, 'learning_rate': 1.0, 'subsample': 0.8513627344387318, 'colsample_bylevel': 1.0, 'colsample_bytree': 0.946138073111236, 'reg_alpha': 0.0018311776973217071, 'reg_lambda': 0.27901659190538414}}\n{'Current Learner': 'xgboost', 'Current Sample': 15480, 'Current Hyper-parameters': {'n_estimators': 11.0, 'max_leaves': 4.0, 'min_child_weight': 5.909231502320304, 'learning_rate': 1.0, 'subsample': 0.8894434216129232, 'colsample_bylevel': 1.0, 'colsample_bytree': 1.0, 'reg_alpha': 0.0013605736901132325, 'reg_lambda': 0.1222158118565165}, 'Best Learner': 'xgboost', 'Best Hyper-parameters': {'n_estimators': 11.0, 'max_leaves': 4.0, 'min_child_weight': 5.909231502320304, 'learning_rate': 1.0, 'subsample': 0.8894434216129232, 'colsample_bylevel': 1.0, 'colsample_bytree': 1.0, 'reg_alpha': 0.0013605736901132325, 'reg_lambda': 0.1222158118565165}}\n{'Current Learner': 'xgboost', 'Current Sample': 15480, 'Current Hyper-parameters': {'n_estimators': 11.0, 'max_leaves': 11.0, 'min_child_weight': 8.517629386811171, 'learning_rate': 1.0, 'subsample': 0.9233328006239466, 'colsample_bylevel': 1.0, 'colsample_bytree': 0.9468117873770695, 'reg_alpha': 0.034996420228767956, 'reg_lambda': 0.6169079461473819}, 'Best Learner': 'xgboost', 'Best Hyper-parameters': {'n_estimators': 11.0, 'max_leaves': 11.0, 'min_child_weight': 8.517629386811171, 'learning_rate': 1.0, 'subsample': 0.9233328006239466, 'colsample_bylevel': 1.0, 'colsample_bytree': 0.9468117873770695, 'reg_alpha': 0.034996420228767956, 'reg_lambda': 0.6169079461473819}}\n{'Current Learner': 'xgboost', 'Current Sample': 15480, 'Current Hyper-parameters': {'n_estimators': 20.0, 'max_leaves': 15.0, 'min_child_weight': 43.62419686983011, 'learning_rate': 0.6413547778096401, 'subsample': 1.0, 'colsample_bylevel': 1.0, 'colsample_bytree': 0.8481188761562112, 'reg_alpha': 0.01241885232679939, 'reg_lambda': 0.21352682817916652}, 'Best Learner': 'xgboost', 'Best Hyper-parameters': {'n_estimators': 20.0, 'max_leaves': 15.0, 'min_child_weight': 43.62419686983011, 'learning_rate': 0.6413547778096401, 'subsample': 1.0, 'colsample_bylevel': 1.0, 'colsample_bytree': 0.8481188761562112, 'reg_alpha': 0.01241885232679939, 'reg_lambda': 0.21352682817916652}}\n{'Current Learner': 'xgboost', 'Current Sample': 15480, 'Current Hyper-parameters': {'n_estimators': 58.0, 'max_leaves': 8.0, 'min_child_weight': 51.84874392377363, 'learning_rate': 0.23511987355535005, 'subsample': 1.0, 'colsample_bylevel': 0.8182737361783602, 'colsample_bytree': 0.8031986460435498, 'reg_alpha': 0.00400039941928546, 'reg_lambda': 0.3870252968100477}, 'Best Learner': 'xgboost', 'Best Hyper-parameters': {'n_estimators': 58.0, 'max_leaves': 8.0, 'min_child_weight': 51.84874392377363, 'learning_rate': 0.23511987355535005, 'subsample': 1.0, 'colsample_bylevel': 0.8182737361783602, 'colsample_bytree': 0.8031986460435498, 'reg_alpha': 0.00400039941928546, 'reg_lambda': 0.3870252968100477}}\n{'Current Learner': 'xgboost', 'Current Sample': 15480, 'Current Hyper-parameters': {'n_estimators': 101.0, 'max_leaves': 14.0, 'min_child_weight': 7.444058088783045, 'learning_rate': 0.39220715578198356, 'subsample': 1.0, 'colsample_bylevel': 0.6274332478496758, 'colsample_bytree': 0.7190251742957809, 'reg_alpha': 0.007212902167942765, 'reg_lambda': 0.20172056689658158}, 'Best Learner': 'xgboost', 'Best Hyper-parameters': {'n_estimators': 101.0, 'max_leaves': 14.0, 'min_child_weight': 7.444058088783045, 'learning_rate': 0.39220715578198356, 'subsample': 1.0, 'colsample_bylevel': 0.6274332478496758, 'colsample_bytree': 0.7190251742957809, 'reg_alpha': 0.007212902167942765, 'reg_lambda': 0.20172056689658158}}\n{'Current Learner': 'xgboost', 'Current Sample': 15480, 'Current Hyper-parameters': {'n_estimators': 205.0, 'max_leaves': 30.0, 'min_child_weight': 5.450621032615104, 'learning_rate': 0.12229148765139466, 'subsample': 0.8895588746662894, 'colsample_bylevel': 0.47518959001130784, 'colsample_bytree': 0.6845612830806885, 'reg_alpha': 0.01126059820390593, 'reg_lambda': 0.08170816686602438}, 'Best Learner': 'xgboost', 'Best Hyper-parameters': {'n_estimators': 205.0, 'max_leaves': 30.0, 'min_child_weight': 5.450621032615104, 'learning_rate': 0.12229148765139466, 'subsample': 0.8895588746662894, 'colsample_bylevel': 0.47518959001130784, 'colsample_bytree': 0.6845612830806885, 'reg_alpha': 0.01126059820390593, 'reg_lambda': 0.08170816686602438}}\n{'Current Learner': 'xgboost', 'Current Sample': 15480, 'Current Hyper-parameters': {'n_estimators': 222.0, 'max_leaves': 62.0, 'min_child_weight': 7.5054716192185795, 'learning_rate': 0.04623175582706431, 'subsample': 0.8756054034199897, 'colsample_bylevel': 0.44768367042684304, 'colsample_bytree': 0.7352307811741962, 'reg_alpha': 0.0009765625, 'reg_lambda': 0.6207832675443758}, 'Best Learner': 'xgboost', 'Best Hyper-parameters': {'n_estimators': 222.0, 'max_leaves': 62.0, 'min_child_weight': 7.5054716192185795, 'learning_rate': 0.04623175582706431, 'subsample': 0.8756054034199897, 'colsample_bylevel': 0.44768367042684304, 'colsample_bytree': 0.7352307811741962, 'reg_alpha': 0.0009765625, 'reg_lambda': 0.6207832675443758}}\n" + "{'Current Learner': 'xgboost', 'Current Sample': 15480, 'Current Hyper-parameters': {'n_estimators': 4, 'max_leaves': 4, 'min_child_weight': 1, 'learning_rate': 0.1, 'subsample': 1.0, 'colsample_bylevel': 1.0, 'colsample_bytree': 1.0, 'reg_alpha': 0.0009765625, 'reg_lambda': 1.0}, 'Best Learner': 'xgboost', 'Best Hyper-parameters': {'n_estimators': 4, 'max_leaves': 4, 'min_child_weight': 1, 'learning_rate': 0.1, 'subsample': 1.0, 'colsample_bylevel': 1.0, 'colsample_bytree': 1.0, 'reg_alpha': 0.0009765625, 'reg_lambda': 1.0}}\n{'Current Learner': 'xgboost', 'Current Sample': 15480, 'Current Hyper-parameters': {'n_estimators': 4.0, 'max_leaves': 4.0, 'min_child_weight': 0.2620811530815948, 'learning_rate': 0.25912534572860507, 'subsample': 0.9266743941610592, 'colsample_bylevel': 1.0, 'colsample_bytree': 1.0, 'reg_alpha': 0.0013933617380144255, 'reg_lambda': 0.18096917948292954}, 'Best Learner': 'xgboost', 'Best Hyper-parameters': {'n_estimators': 4.0, 'max_leaves': 4.0, 'min_child_weight': 0.2620811530815948, 'learning_rate': 0.25912534572860507, 'subsample': 0.9266743941610592, 'colsample_bylevel': 1.0, 'colsample_bytree': 1.0, 'reg_alpha': 0.0013933617380144255, 'reg_lambda': 0.18096917948292954}}\n{'Current Learner': 'xgboost', 'Current Sample': 15480, 'Current Hyper-parameters': {'n_estimators': 4.0, 'max_leaves': 4.0, 'min_child_weight': 1.8630223791107017, 'learning_rate': 1.0, 'subsample': 0.8513627344387318, 'colsample_bylevel': 1.0, 'colsample_bytree': 0.946138073111236, 'reg_alpha': 0.0018311776973217071, 'reg_lambda': 0.27901659190538414}, 'Best Learner': 'xgboost', 'Best Hyper-parameters': {'n_estimators': 4.0, 'max_leaves': 4.0, 'min_child_weight': 1.8630223791107017, 'learning_rate': 1.0, 'subsample': 0.8513627344387318, 'colsample_bylevel': 1.0, 'colsample_bytree': 0.946138073111236, 'reg_alpha': 0.0018311776973217071, 'reg_lambda': 0.27901659190538414}}\n{'Current Learner': 'xgboost', 'Current Sample': 15480, 'Current Hyper-parameters': {'n_estimators': 11.0, 'max_leaves': 4.0, 'min_child_weight': 5.909231502320304, 'learning_rate': 1.0, 'subsample': 0.8894434216129232, 'colsample_bylevel': 1.0, 'colsample_bytree': 1.0, 'reg_alpha': 0.0013605736901132325, 'reg_lambda': 0.1222158118565165}, 'Best Learner': 'xgboost', 'Best Hyper-parameters': {'n_estimators': 11.0, 'max_leaves': 4.0, 'min_child_weight': 5.909231502320304, 'learning_rate': 1.0, 'subsample': 0.8894434216129232, 'colsample_bylevel': 1.0, 'colsample_bytree': 1.0, 'reg_alpha': 0.0013605736901132325, 'reg_lambda': 0.1222158118565165}}\n{'Current Learner': 'xgboost', 'Current Sample': 15480, 'Current Hyper-parameters': {'n_estimators': 20.0, 'max_leaves': 4.0, 'min_child_weight': 12.035965728320873, 'learning_rate': 1.0, 'subsample': 0.9814787163243813, 'colsample_bylevel': 0.8811171114303163, 'colsample_bytree': 0.8499027725496043, 'reg_alpha': 0.0022085340760961856, 'reg_lambda': 0.5460627024738893}, 'Best Learner': 'xgboost', 'Best Hyper-parameters': {'n_estimators': 20.0, 'max_leaves': 4.0, 'min_child_weight': 12.035965728320873, 'learning_rate': 1.0, 'subsample': 0.9814787163243813, 'colsample_bylevel': 0.8811171114303163, 'colsample_bytree': 0.8499027725496043, 'reg_alpha': 0.0022085340760961856, 'reg_lambda': 0.5460627024738893}}\n{'Current Learner': 'xgboost', 'Current Sample': 15480, 'Current Hyper-parameters': {'n_estimators': 20.0, 'max_leaves': 11.0, 'min_child_weight': 17.34876952205098, 'learning_rate': 1.0, 'subsample': 1.0, 'colsample_bylevel': 0.9088550158793876, 'colsample_bytree': 0.7967145599266738, 'reg_alpha': 0.05680749758595097, 'reg_lambda': 2.756357095973371}, 'Best Learner': 'xgboost', 'Best Hyper-parameters': {'n_estimators': 20.0, 'max_leaves': 11.0, 'min_child_weight': 17.34876952205098, 'learning_rate': 1.0, 'subsample': 1.0, 'colsample_bylevel': 0.9088550158793876, 'colsample_bytree': 0.7967145599266738, 'reg_alpha': 0.05680749758595097, 'reg_lambda': 2.756357095973371}}\n{'Current Learner': 'xgboost', 'Current Sample': 15480, 'Current Hyper-parameters': {'n_estimators': 37.0, 'max_leaves': 15.0, 'min_child_weight': 88.85408165928673, 'learning_rate': 0.6413547778096401, 'subsample': 1.0, 'colsample_bylevel': 0.9528676738644739, 'colsample_bytree': 0.6980216487058154, 'reg_alpha': 0.020158745350617662, 'reg_lambda': 0.954042157679914}, 'Best Learner': 'xgboost', 'Best Hyper-parameters': {'n_estimators': 37.0, 'max_leaves': 15.0, 'min_child_weight': 88.85408165928673, 'learning_rate': 0.6413547778096401, 'subsample': 1.0, 'colsample_bylevel': 0.9528676738644739, 'colsample_bytree': 0.6980216487058154, 'reg_alpha': 0.020158745350617662, 'reg_lambda': 0.954042157679914}}\n{'Current Learner': 'xgboost', 'Current Sample': 15480, 'Current Hyper-parameters': {'n_estimators': 107.0, 'max_leaves': 8.0, 'min_child_weight': 105.60589895284807, 'learning_rate': 0.23511987355535005, 'subsample': 1.0, 'colsample_bylevel': 0.7711414100428341, 'colsample_bytree': 0.6531014185931541, 'reg_alpha': 0.006493597884251339, 'reg_lambda': 1.7292368007993169}, 'Best Learner': 'xgboost', 'Best Hyper-parameters': {'n_estimators': 107.0, 'max_leaves': 8.0, 'min_child_weight': 105.60589895284807, 'learning_rate': 0.23511987355535005, 'subsample': 1.0, 'colsample_bylevel': 0.7711414100428341, 'colsample_bytree': 0.6531014185931541, 'reg_alpha': 0.006493597884251339, 'reg_lambda': 1.7292368007993169}}\n{'Current Learner': 'xgboost', 'Current Sample': 15480, 'Current Hyper-parameters': {'n_estimators': 186.0, 'max_leaves': 14.0, 'min_child_weight': 15.162111689318957, 'learning_rate': 0.39220715578198356, 'subsample': 1.0, 'colsample_bylevel': 0.5803009217141496, 'colsample_bytree': 0.5689279468453852, 'reg_alpha': 0.011708252438810483, 'reg_lambda': 0.9012915451024682}, 'Best Learner': 'xgboost', 'Best Hyper-parameters': {'n_estimators': 186.0, 'max_leaves': 14.0, 'min_child_weight': 15.162111689318957, 'learning_rate': 0.39220715578198356, 'subsample': 1.0, 'colsample_bylevel': 0.5803009217141496, 'colsample_bytree': 0.5689279468453852, 'reg_alpha': 0.011708252438810483, 'reg_lambda': 0.9012915451024682}}\n{'Current Learner': 'xgboost', 'Current Sample': 15480, 'Current Hyper-parameters': {'n_estimators': 378.0, 'max_leaves': 30.0, 'min_child_weight': 11.101864586090514, 'learning_rate': 0.12229148765139466, 'subsample': 0.8895588746662894, 'colsample_bylevel': 0.4280572638757817, 'colsample_bytree': 0.5344640556302928, 'reg_alpha': 0.018278623959341735, 'reg_lambda': 0.3650737309296021}, 'Best Learner': 'xgboost', 'Best Hyper-parameters': {'n_estimators': 378.0, 'max_leaves': 30.0, 'min_child_weight': 11.101864586090514, 'learning_rate': 0.12229148765139466, 'subsample': 0.8895588746662894, 'colsample_bylevel': 0.4280572638757817, 'colsample_bytree': 0.5344640556302928, 'reg_alpha': 0.018278623959341735, 'reg_lambda': 0.3650737309296021}}\n{'Current Learner': 'xgboost', 'Current Sample': 15480, 'Current Hyper-parameters': {'n_estimators': 409.0, 'max_leaves': 62.0, 'min_child_weight': 15.287199215046616, 'learning_rate': 0.04623175582706431, 'subsample': 0.8756054034199897, 'colsample_bylevel': 0.4005513442913169, 'colsample_bytree': 0.5851335537238005, 'reg_alpha': 0.0012769216236275891, 'reg_lambda': 2.7736721098234782}, 'Best Learner': 'xgboost', 'Best Hyper-parameters': {'n_estimators': 409.0, 'max_leaves': 62.0, 'min_child_weight': 15.287199215046616, 'learning_rate': 0.04623175582706431, 'subsample': 0.8756054034199897, 'colsample_bylevel': 0.4005513442913169, 'colsample_bytree': 0.5851335537238005, 'reg_alpha': 0.0012769216236275891, 'reg_lambda': 2.7736721098234782}}\n" ] } ], @@ -370,8 +374,8 @@ "output_type": "display_data", "data": { "text/plain": "
", - "image/svg+xml": "\n\n\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n", - "image/png": "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\n" + "image/svg+xml": "\n\n\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n", + "image/png": "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\n" }, "metadata": { "needs_background": "light" @@ -410,7 +414,7 @@ "output_type": "stream", "name": "stdout", "text": [ - "flaml (60s) r2 = 0.831184063859627\n" + "flaml (60s) r2 = 0.834848817994438\n" ] } ], @@ -502,152 +506,158 @@ "output_type": "stream", "name": "stderr", "text": [ - "[flaml.automl: 05-02 07:57:08] {890} INFO - Evaluation method: holdout\n", - "[flaml.automl: 05-02 07:57:08] {606} INFO - Using RepeatedKFold\n", - "[flaml.automl: 05-02 07:57:08] {911} INFO - Minimizing error metric: 1-r2\n", - "[flaml.automl: 05-02 07:57:08] {929} INFO - List of ML learners in AutoML Run: ['my_xgb1', 'my_xgb2']\n", - "[flaml.automl: 05-02 07:57:08] {993} INFO - iteration 0, current learner my_xgb1\n", - "[flaml.automl: 05-02 07:57:08] {1141} INFO - at 0.1s,\tbest my_xgb1's error=53750617.1059,\tbest my_xgb1's error=53750617.1059\n", - "[flaml.automl: 05-02 07:57:08] {993} INFO - iteration 1, current learner my_xgb1\n", - "[flaml.automl: 05-02 07:57:08] {1141} INFO - at 0.1s,\tbest my_xgb1's error=260718.5183,\tbest my_xgb1's error=260718.5183\n", - "[flaml.automl: 05-02 07:57:08] {993} INFO - iteration 2, current learner my_xgb1\n", - "[flaml.automl: 05-02 07:57:08] {1141} INFO - at 0.2s,\tbest my_xgb1's error=260718.5183,\tbest my_xgb1's error=260718.5183\n", - "[flaml.automl: 05-02 07:57:08] {993} INFO - iteration 3, current learner my_xgb1\n", - "[flaml.automl: 05-02 07:57:08] {1141} INFO - at 0.2s,\tbest my_xgb1's error=260718.5183,\tbest my_xgb1's error=260718.5183\n", - "[flaml.automl: 05-02 07:57:08] {993} INFO - iteration 4, current learner my_xgb2\n", - "[flaml.automl: 05-02 07:57:09] {1141} INFO - at 0.3s,\tbest my_xgb2's error=4.1611,\tbest my_xgb2's error=4.1611\n", - "[flaml.automl: 05-02 07:57:09] {993} INFO - iteration 5, current learner my_xgb1\n", - "[flaml.automl: 05-02 07:57:09] {1141} INFO - at 0.3s,\tbest my_xgb1's error=40726.5769,\tbest my_xgb2's error=4.1611\n", - "[flaml.automl: 05-02 07:57:09] {993} INFO - iteration 6, current learner my_xgb1\n", - "[flaml.automl: 05-02 07:57:09] {1141} INFO - at 0.4s,\tbest my_xgb1's error=1918.9637,\tbest my_xgb2's error=4.1611\n", - "[flaml.automl: 05-02 07:57:09] {993} INFO - iteration 7, current learner my_xgb1\n", - "[flaml.automl: 05-02 07:57:09] {1141} INFO - at 0.4s,\tbest my_xgb1's error=1918.9637,\tbest my_xgb2's error=4.1611\n", - "[flaml.automl: 05-02 07:57:09] {993} INFO - iteration 8, current learner my_xgb1\n", - "[flaml.automl: 05-02 07:57:09] {1141} INFO - at 0.5s,\tbest my_xgb1's error=1918.9637,\tbest my_xgb2's error=4.1611\n", - "[flaml.automl: 05-02 07:57:09] {993} INFO - iteration 9, current learner my_xgb1\n", - "[flaml.automl: 05-02 07:57:09] {1141} INFO - at 0.5s,\tbest my_xgb1's error=1918.9637,\tbest my_xgb2's error=4.1611\n", - "[flaml.automl: 05-02 07:57:09] {993} INFO - iteration 10, current learner my_xgb2\n", - "[flaml.automl: 05-02 07:57:09] {1141} INFO - at 0.6s,\tbest my_xgb2's error=4.1611,\tbest my_xgb2's error=4.1611\n", - "[flaml.automl: 05-02 07:57:09] {993} INFO - iteration 11, current learner my_xgb2\n", - "[flaml.automl: 05-02 07:57:09] {1141} INFO - at 0.6s,\tbest my_xgb2's error=4.1611,\tbest my_xgb2's error=4.1611\n", - "[flaml.automl: 05-02 07:57:09] {993} INFO - iteration 12, current learner my_xgb2\n", - "[flaml.automl: 05-02 07:57:09] {1141} INFO - at 0.7s,\tbest my_xgb2's error=4.1603,\tbest my_xgb2's error=4.1603\n", - "[flaml.automl: 05-02 07:57:09] {993} INFO - iteration 13, current learner my_xgb2\n", - "[flaml.automl: 05-02 07:57:09] {1141} INFO - at 0.7s,\tbest my_xgb2's error=4.1603,\tbest my_xgb2's error=4.1603\n", - "[flaml.automl: 05-02 07:57:09] {993} INFO - iteration 14, current learner my_xgb1\n", - "[flaml.automl: 05-02 07:57:09] {1141} INFO - at 0.8s,\tbest my_xgb1's error=93.9115,\tbest my_xgb2's error=4.1603\n", - "[flaml.automl: 05-02 07:57:09] {993} INFO - iteration 15, current learner my_xgb2\n", - "[flaml.automl: 05-02 07:57:09] {1141} INFO - at 0.8s,\tbest my_xgb2's error=4.1603,\tbest my_xgb2's error=4.1603\n", - "[flaml.automl: 05-02 07:57:09] {993} INFO - iteration 16, current learner my_xgb1\n", - "[flaml.automl: 05-02 07:57:09] {1141} INFO - at 0.9s,\tbest my_xgb1's error=93.9115,\tbest my_xgb2's error=4.1603\n", - "[flaml.automl: 05-02 07:57:09] {993} INFO - iteration 17, current learner my_xgb2\n", - "[flaml.automl: 05-02 07:57:09] {1141} INFO - at 1.0s,\tbest my_xgb2's error=3.8476,\tbest my_xgb2's error=3.8476\n", - "[flaml.automl: 05-02 07:57:09] {993} INFO - iteration 18, current learner my_xgb1\n", - "[flaml.automl: 05-02 07:57:09] {1141} INFO - at 1.0s,\tbest my_xgb1's error=12.3445,\tbest my_xgb2's error=3.8476\n", - "[flaml.automl: 05-02 07:57:09] {993} INFO - iteration 19, current learner my_xgb1\n", - "[flaml.automl: 05-02 07:57:09] {1141} INFO - at 1.1s,\tbest my_xgb1's error=12.3445,\tbest my_xgb2's error=3.8476\n", - "[flaml.automl: 05-02 07:57:09] {993} INFO - iteration 20, current learner my_xgb1\n", - "[flaml.automl: 05-02 07:57:09] {1141} INFO - at 1.1s,\tbest my_xgb1's error=12.3445,\tbest my_xgb2's error=3.8476\n", - "[flaml.automl: 05-02 07:57:09] {993} INFO - iteration 21, current learner my_xgb1\n", - "[flaml.automl: 05-02 07:57:09] {1141} INFO - at 1.2s,\tbest my_xgb1's error=4.1558,\tbest my_xgb2's error=3.8476\n", - "[flaml.automl: 05-02 07:57:09] {993} INFO - iteration 22, current learner my_xgb2\n", - "[flaml.automl: 05-02 07:57:10] {1141} INFO - at 1.3s,\tbest my_xgb2's error=0.3645,\tbest my_xgb2's error=0.3645\n", - "[flaml.automl: 05-02 07:57:10] {993} INFO - iteration 23, current learner my_xgb2\n", - "[flaml.automl: 05-02 07:57:10] {1141} INFO - at 1.4s,\tbest my_xgb2's error=0.3645,\tbest my_xgb2's error=0.3645\n", - "[flaml.automl: 05-02 07:57:10] {993} INFO - iteration 24, current learner my_xgb1\n", - "[flaml.automl: 05-02 07:57:10] {1141} INFO - at 1.5s,\tbest my_xgb1's error=2.4948,\tbest my_xgb2's error=0.3645\n", - "[flaml.automl: 05-02 07:57:10] {993} INFO - iteration 25, current learner my_xgb2\n", - "[flaml.automl: 05-02 07:57:10] {1141} INFO - at 1.6s,\tbest my_xgb2's error=0.3139,\tbest my_xgb2's error=0.3139\n", - "[flaml.automl: 05-02 07:57:10] {993} INFO - iteration 26, current learner my_xgb2\n", - "[flaml.automl: 05-02 07:57:10] {1141} INFO - at 1.7s,\tbest my_xgb2's error=0.3139,\tbest my_xgb2's error=0.3139\n", - "[flaml.automl: 05-02 07:57:10] {993} INFO - iteration 27, current learner my_xgb2\n", - "[flaml.automl: 05-02 07:57:10] {1141} INFO - at 1.8s,\tbest my_xgb2's error=0.3139,\tbest my_xgb2's error=0.3139\n", - "[flaml.automl: 05-02 07:57:10] {993} INFO - iteration 28, current learner my_xgb1\n", - "[flaml.automl: 05-02 07:57:10] {1141} INFO - at 1.8s,\tbest my_xgb1's error=2.4948,\tbest my_xgb2's error=0.3139\n", - "[flaml.automl: 05-02 07:57:10] {993} INFO - iteration 29, current learner my_xgb1\n", - "[flaml.automl: 05-02 07:57:10] {1141} INFO - at 1.9s,\tbest my_xgb1's error=2.4948,\tbest my_xgb2's error=0.3139\n", - "[flaml.automl: 05-02 07:57:10] {993} INFO - iteration 30, current learner my_xgb1\n", - "[flaml.automl: 05-02 07:57:10] {1141} INFO - at 2.0s,\tbest my_xgb1's error=1.4151,\tbest my_xgb2's error=0.3139\n", - "[flaml.automl: 05-02 07:57:10] {993} INFO - iteration 31, current learner my_xgb2\n", - "[flaml.automl: 05-02 07:57:10] {1141} INFO - at 2.1s,\tbest my_xgb2's error=0.2254,\tbest my_xgb2's error=0.2254\n", - "[flaml.automl: 05-02 07:57:10] {993} INFO - iteration 32, current learner my_xgb1\n", - "[flaml.automl: 05-02 07:57:10] {1141} INFO - at 2.1s,\tbest my_xgb1's error=1.4151,\tbest my_xgb2's error=0.2254\n", - "[flaml.automl: 05-02 07:57:10] {993} INFO - iteration 33, current learner my_xgb2\n", - "[flaml.automl: 05-02 07:57:10] {1141} INFO - at 2.2s,\tbest my_xgb2's error=0.2254,\tbest my_xgb2's error=0.2254\n", - "[flaml.automl: 05-02 07:57:10] {993} INFO - iteration 34, current learner my_xgb2\n", - "[flaml.automl: 05-02 07:57:11] {1141} INFO - at 2.5s,\tbest my_xgb2's error=0.2254,\tbest my_xgb2's error=0.2254\n", - "[flaml.automl: 05-02 07:57:11] {993} INFO - iteration 35, current learner my_xgb2\n", - "[flaml.automl: 05-02 07:57:11] {1141} INFO - at 2.5s,\tbest my_xgb2's error=0.2254,\tbest my_xgb2's error=0.2254\n", - "[flaml.automl: 05-02 07:57:11] {993} INFO - iteration 36, current learner my_xgb2\n", - "[flaml.automl: 05-02 07:57:11] {1141} INFO - at 2.7s,\tbest my_xgb2's error=0.2254,\tbest my_xgb2's error=0.2254\n", - "[flaml.automl: 05-02 07:57:11] {993} INFO - iteration 37, current learner my_xgb1\n", - "[flaml.automl: 05-02 07:57:11] {1141} INFO - at 2.8s,\tbest my_xgb1's error=1.4151,\tbest my_xgb2's error=0.2254\n", - "[flaml.automl: 05-02 07:57:11] {993} INFO - iteration 38, current learner my_xgb2\n", - "[flaml.automl: 05-02 07:57:11] {1141} INFO - at 2.9s,\tbest my_xgb2's error=0.2254,\tbest my_xgb2's error=0.2254\n", - "[flaml.automl: 05-02 07:57:11] {993} INFO - iteration 39, current learner my_xgb2\n", - "[flaml.automl: 05-02 07:57:11] {1141} INFO - at 3.2s,\tbest my_xgb2's error=0.2254,\tbest my_xgb2's error=0.2254\n", - "[flaml.automl: 05-02 07:57:11] {993} INFO - iteration 40, current learner my_xgb1\n", - "[flaml.automl: 05-02 07:57:12] {1141} INFO - at 3.3s,\tbest my_xgb1's error=1.4151,\tbest my_xgb2's error=0.2254\n", - "[flaml.automl: 05-02 07:57:12] {993} INFO - iteration 41, current learner my_xgb2\n", - "[flaml.automl: 05-02 07:57:12] {1141} INFO - at 3.4s,\tbest my_xgb2's error=0.2254,\tbest my_xgb2's error=0.2254\n", - "[flaml.automl: 05-02 07:57:12] {993} INFO - iteration 42, current learner my_xgb2\n", - "[flaml.automl: 05-02 07:57:12] {1141} INFO - at 3.8s,\tbest my_xgb2's error=0.1900,\tbest my_xgb2's error=0.1900\n", - "[flaml.automl: 05-02 07:57:12] {993} INFO - iteration 43, current learner my_xgb2\n", - "[flaml.automl: 05-02 07:57:12] {1141} INFO - at 4.1s,\tbest my_xgb2's error=0.1900,\tbest my_xgb2's error=0.1900\n", - "[flaml.automl: 05-02 07:57:12] {993} INFO - iteration 44, current learner my_xgb1\n", - "[flaml.automl: 05-02 07:57:12] {1141} INFO - at 4.2s,\tbest my_xgb1's error=1.4151,\tbest my_xgb2's error=0.1900\n", - "[flaml.automl: 05-02 07:57:12] {993} INFO - iteration 45, current learner my_xgb2\n", - "[flaml.automl: 05-02 07:57:13] {1141} INFO - at 4.5s,\tbest my_xgb2's error=0.1900,\tbest my_xgb2's error=0.1900\n", - "[flaml.automl: 05-02 07:57:13] {993} INFO - iteration 46, current learner my_xgb1\n", - "[flaml.automl: 05-02 07:57:13] {1141} INFO - at 4.5s,\tbest my_xgb1's error=1.4151,\tbest my_xgb2's error=0.1900\n", - "[flaml.automl: 05-02 07:57:13] {993} INFO - iteration 47, current learner my_xgb1\n", - "[flaml.automl: 05-02 07:57:13] {1141} INFO - at 4.7s,\tbest my_xgb1's error=1.4151,\tbest my_xgb2's error=0.1900\n", - "[flaml.automl: 05-02 07:57:13] {993} INFO - iteration 48, current learner my_xgb2\n", - "[flaml.automl: 05-02 07:57:13] {1141} INFO - at 4.7s,\tbest my_xgb2's error=0.1900,\tbest my_xgb2's error=0.1900\n", - "[flaml.automl: 05-02 07:57:13] {993} INFO - iteration 49, current learner my_xgb1\n", - "[flaml.automl: 05-02 07:57:13] {1141} INFO - at 4.8s,\tbest my_xgb1's error=1.4151,\tbest my_xgb2's error=0.1900\n", - "[flaml.automl: 05-02 07:57:13] {993} INFO - iteration 50, current learner my_xgb1\n", - "[flaml.automl: 05-02 07:57:13] {1141} INFO - at 4.9s,\tbest my_xgb1's error=1.0011,\tbest my_xgb2's error=0.1900\n", - "[flaml.automl: 05-02 07:57:13] {993} INFO - iteration 51, current learner my_xgb1\n", - "[flaml.automl: 05-02 07:57:13] {1141} INFO - at 5.1s,\tbest my_xgb1's error=1.0011,\tbest my_xgb2's error=0.1900\n", - "[flaml.automl: 05-02 07:57:13] {993} INFO - iteration 52, current learner my_xgb1\n", - "[flaml.automl: 05-02 07:57:13] {1141} INFO - at 5.2s,\tbest my_xgb1's error=1.0011,\tbest my_xgb2's error=0.1900\n", - "[flaml.automl: 05-02 07:57:13] {993} INFO - iteration 53, current learner my_xgb2\n", - "[flaml.automl: 05-02 07:57:14] {1141} INFO - at 6.1s,\tbest my_xgb2's error=0.1900,\tbest my_xgb2's error=0.1900\n", - "[flaml.automl: 05-02 07:57:14] {993} INFO - iteration 54, current learner my_xgb1\n", - "[flaml.automl: 05-02 07:57:14] {1141} INFO - at 6.2s,\tbest my_xgb1's error=1.0011,\tbest my_xgb2's error=0.1900\n", - "[flaml.automl: 05-02 07:57:14] {993} INFO - iteration 55, current learner my_xgb1\n", - "[flaml.automl: 05-02 07:57:15] {1141} INFO - at 6.5s,\tbest my_xgb1's error=1.0011,\tbest my_xgb2's error=0.1900\n", - "[flaml.automl: 05-02 07:57:15] {993} INFO - iteration 56, current learner my_xgb2\n", - "[flaml.automl: 05-02 07:57:15] {1141} INFO - at 6.6s,\tbest my_xgb2's error=0.1900,\tbest my_xgb2's error=0.1900\n", - "[flaml.automl: 05-02 07:57:15] {993} INFO - iteration 57, current learner my_xgb1\n", - "[flaml.automl: 05-02 07:57:15] {1141} INFO - at 6.7s,\tbest my_xgb1's error=1.0011,\tbest my_xgb2's error=0.1900\n", - "[flaml.automl: 05-02 07:57:15] {993} INFO - iteration 58, current learner my_xgb2\n", - "[flaml.automl: 05-02 07:57:17] {1141} INFO - at 8.3s,\tbest my_xgb2's error=0.1865,\tbest my_xgb2's error=0.1865\n", - "[flaml.automl: 05-02 07:57:17] {993} INFO - iteration 59, current learner my_xgb1\n", - "[flaml.automl: 05-02 07:57:17] {1141} INFO - at 8.4s,\tbest my_xgb1's error=1.0011,\tbest my_xgb2's error=0.1865\n", - "[flaml.automl: 05-02 07:57:17] {993} INFO - iteration 60, current learner my_xgb2\n", - "[flaml.automl: 05-02 07:57:17] {1141} INFO - at 9.2s,\tbest my_xgb2's error=0.1790,\tbest my_xgb2's error=0.1790\n", - "[flaml.automl: 05-02 07:57:17] {993} INFO - iteration 61, current learner my_xgb2\n", - "[flaml.automl: 05-02 07:57:19] {1141} INFO - at 10.8s,\tbest my_xgb2's error=0.1790,\tbest my_xgb2's error=0.1790\n", - "[flaml.automl: 05-02 07:57:19] {993} INFO - iteration 62, current learner my_xgb1\n", - "[flaml.automl: 05-02 07:57:19] {1141} INFO - at 11.0s,\tbest my_xgb1's error=1.0011,\tbest my_xgb2's error=0.1790\n", - "[flaml.automl: 05-02 07:57:19] {993} INFO - iteration 63, current learner my_xgb2\n", - "[flaml.automl: 05-02 07:57:19] {1141} INFO - at 11.2s,\tbest my_xgb2's error=0.1790,\tbest my_xgb2's error=0.1790\n", - "[flaml.automl: 05-02 07:57:19] {993} INFO - iteration 64, current learner my_xgb2\n", - "[flaml.automl: 05-02 07:57:25] {1141} INFO - at 16.4s,\tbest my_xgb2's error=0.1707,\tbest my_xgb2's error=0.1707\n", - "[flaml.automl: 05-02 07:57:25] {993} INFO - iteration 65, current learner my_xgb1\n", - "[flaml.automl: 05-02 07:57:25] {1141} INFO - at 16.5s,\tbest my_xgb1's error=1.0011,\tbest my_xgb2's error=0.1707\n", - "[flaml.automl: 05-02 07:57:25] {993} INFO - iteration 66, current learner my_xgb1\n", - "[flaml.automl: 05-02 07:57:25] {1141} INFO - at 17.0s,\tbest my_xgb1's error=1.0011,\tbest my_xgb2's error=0.1707\n", - "[flaml.automl: 05-02 07:57:25] {993} INFO - iteration 67, current learner my_xgb2\n", - "[flaml.automl: 05-02 07:57:28] {1141} INFO - at 19.3s,\tbest my_xgb2's error=0.1707,\tbest my_xgb2's error=0.1707\n", - "[flaml.automl: 05-02 07:57:33] {1164} INFO - retrain my_xgb2 for 5.8s\n", - "[flaml.automl: 05-02 07:57:33] {993} INFO - iteration 68, current learner my_xgb1\n", - "[flaml.automl: 05-02 07:57:33] {1141} INFO - at 25.1s,\tbest my_xgb1's error=1.0011,\tbest my_xgb2's error=0.1707\n", - "[flaml.automl: 05-02 07:57:39] {1164} INFO - retrain my_xgb1 for 5.4s\n", - "[flaml.automl: 05-02 07:57:39] {1187} INFO - selected model: \n", - "[flaml.automl: 05-02 07:57:39] {944} INFO - fit succeeded\n" + "[flaml.automl: 07-06 10:18:13] {908} INFO - Evaluation method: holdout\n", + "[flaml.automl: 07-06 10:18:13] {617} INFO - Using RepeatedKFold\n", + "[flaml.automl: 07-06 10:18:13] {929} INFO - Minimizing error metric: 1-r2\n", + "[flaml.automl: 07-06 10:18:13] {948} INFO - List of ML learners in AutoML Run: ['my_xgb1', 'my_xgb2']\n", + "[flaml.automl: 07-06 10:18:13] {1012} INFO - iteration 0, current learner my_xgb1\n", + "[flaml.automl: 07-06 10:18:13] {1160} INFO - at 0.0s,\tbest my_xgb1's error=53750617.1059,\tbest my_xgb1's error=53750617.1059\n", + "[flaml.automl: 07-06 10:18:13] {1012} INFO - iteration 1, current learner my_xgb1\n", + "[flaml.automl: 07-06 10:18:13] {1160} INFO - at 0.1s,\tbest my_xgb1's error=260718.5183,\tbest my_xgb1's error=260718.5183\n", + "[flaml.automl: 07-06 10:18:13] {1012} INFO - iteration 2, current learner my_xgb1\n", + "[flaml.automl: 07-06 10:18:13] {1160} INFO - at 0.1s,\tbest my_xgb1's error=260718.5183,\tbest my_xgb1's error=260718.5183\n", + "[flaml.automl: 07-06 10:18:13] {1012} INFO - iteration 3, current learner my_xgb1\n", + "[flaml.automl: 07-06 10:18:13] {1160} INFO - at 0.1s,\tbest my_xgb1's error=260718.5183,\tbest my_xgb1's error=260718.5183\n", + "[flaml.automl: 07-06 10:18:13] {1012} INFO - iteration 4, current learner my_xgb2\n", + "[flaml.automl: 07-06 10:18:13] {1160} INFO - at 0.1s,\tbest my_xgb2's error=4.1611,\tbest my_xgb2's error=4.1611\n", + "[flaml.automl: 07-06 10:18:13] {1012} INFO - iteration 5, current learner my_xgb1\n", + "[flaml.automl: 07-06 10:18:13] {1160} INFO - at 0.2s,\tbest my_xgb1's error=40726.5668,\tbest my_xgb2's error=4.1611\n", + "[flaml.automl: 07-06 10:18:13] {1012} INFO - iteration 6, current learner my_xgb1\n", + "[flaml.automl: 07-06 10:18:14] {1160} INFO - at 0.2s,\tbest my_xgb1's error=1918.9374,\tbest my_xgb2's error=4.1611\n", + "[flaml.automl: 07-06 10:18:14] {1012} INFO - iteration 7, current learner my_xgb1\n", + "[flaml.automl: 07-06 10:18:14] {1160} INFO - at 0.2s,\tbest my_xgb1's error=1918.9374,\tbest my_xgb2's error=4.1611\n", + "[flaml.automl: 07-06 10:18:14] {1012} INFO - iteration 8, current learner my_xgb1\n", + "[flaml.automl: 07-06 10:18:14] {1160} INFO - at 0.2s,\tbest my_xgb1's error=1918.9374,\tbest my_xgb2's error=4.1611\n", + "[flaml.automl: 07-06 10:18:14] {1012} INFO - iteration 9, current learner my_xgb2\n", + "[flaml.automl: 07-06 10:18:14] {1160} INFO - at 0.3s,\tbest my_xgb2's error=4.1611,\tbest my_xgb2's error=4.1611\n", + "[flaml.automl: 07-06 10:18:14] {1012} INFO - iteration 10, current learner my_xgb2\n", + "[flaml.automl: 07-06 10:18:14] {1160} INFO - at 0.3s,\tbest my_xgb2's error=4.1611,\tbest my_xgb2's error=4.1611\n", + "[flaml.automl: 07-06 10:18:14] {1012} INFO - iteration 11, current learner my_xgb2\n", + "[flaml.automl: 07-06 10:18:14] {1160} INFO - at 0.3s,\tbest my_xgb2's error=4.1603,\tbest my_xgb2's error=4.1603\n", + "[flaml.automl: 07-06 10:18:14] {1012} INFO - iteration 12, current learner my_xgb2\n", + "[flaml.automl: 07-06 10:18:14] {1160} INFO - at 0.3s,\tbest my_xgb2's error=4.1603,\tbest my_xgb2's error=4.1603\n", + "[flaml.automl: 07-06 10:18:14] {1012} INFO - iteration 13, current learner my_xgb2\n", + "[flaml.automl: 07-06 10:18:14] {1160} INFO - at 0.4s,\tbest my_xgb2's error=4.1603,\tbest my_xgb2's error=4.1603\n", + "[flaml.automl: 07-06 10:18:14] {1012} INFO - iteration 14, current learner my_xgb1\n", + "[flaml.automl: 07-06 10:18:14] {1160} INFO - at 0.4s,\tbest my_xgb1's error=1918.9374,\tbest my_xgb2's error=4.1603\n", + "[flaml.automl: 07-06 10:18:14] {1012} INFO - iteration 15, current learner my_xgb2\n", + "[flaml.automl: 07-06 10:18:14] {1160} INFO - at 0.4s,\tbest my_xgb2's error=3.8476,\tbest my_xgb2's error=3.8476\n", + "[flaml.automl: 07-06 10:18:14] {1012} INFO - iteration 16, current learner my_xgb1\n", + "[flaml.automl: 07-06 10:18:14] {1160} INFO - at 0.5s,\tbest my_xgb1's error=93.8630,\tbest my_xgb2's error=3.8476\n", + "[flaml.automl: 07-06 10:18:14] {1012} INFO - iteration 17, current learner my_xgb2\n", + "[flaml.automl: 07-06 10:18:14] {1160} INFO - at 0.5s,\tbest my_xgb2's error=0.4196,\tbest my_xgb2's error=0.4196\n", + "[flaml.automl: 07-06 10:18:14] {1012} INFO - iteration 18, current learner my_xgb2\n", + "[flaml.automl: 07-06 10:18:14] {1160} INFO - at 0.6s,\tbest my_xgb2's error=0.4196,\tbest my_xgb2's error=0.4196\n", + "[flaml.automl: 07-06 10:18:14] {1012} INFO - iteration 19, current learner my_xgb2\n", + "[flaml.automl: 07-06 10:18:14] {1160} INFO - at 0.6s,\tbest my_xgb2's error=0.2990,\tbest my_xgb2's error=0.2990\n", + "[flaml.automl: 07-06 10:18:14] {1012} INFO - iteration 20, current learner my_xgb1\n", + "[flaml.automl: 07-06 10:18:14] {1160} INFO - at 0.6s,\tbest my_xgb1's error=93.8630,\tbest my_xgb2's error=0.2990\n", + "[flaml.automl: 07-06 10:18:14] {1012} INFO - iteration 21, current learner my_xgb1\n", + "[flaml.automl: 07-06 10:18:14] {1160} INFO - at 0.6s,\tbest my_xgb1's error=12.3010,\tbest my_xgb2's error=0.2990\n", + "[flaml.automl: 07-06 10:18:14] {1012} INFO - iteration 22, current learner my_xgb2\n", + "[flaml.automl: 07-06 10:18:14] {1160} INFO - at 0.7s,\tbest my_xgb2's error=0.2990,\tbest my_xgb2's error=0.2990\n", + "[flaml.automl: 07-06 10:18:14] {1012} INFO - iteration 23, current learner my_xgb2\n", + "[flaml.automl: 07-06 10:18:14] {1160} INFO - at 0.7s,\tbest my_xgb2's error=0.2990,\tbest my_xgb2's error=0.2990\n", + "[flaml.automl: 07-06 10:18:14] {1012} INFO - iteration 24, current learner my_xgb1\n", + "[flaml.automl: 07-06 10:18:14] {1160} INFO - at 0.8s,\tbest my_xgb1's error=12.3010,\tbest my_xgb2's error=0.2990\n", + "[flaml.automl: 07-06 10:18:14] {1012} INFO - iteration 25, current learner my_xgb2\n", + "[flaml.automl: 07-06 10:18:14] {1160} INFO - at 0.8s,\tbest my_xgb2's error=0.2377,\tbest my_xgb2's error=0.2377\n", + "[flaml.automl: 07-06 10:18:14] {1012} INFO - iteration 26, current learner my_xgb2\n", + "[flaml.automl: 07-06 10:18:14] {1160} INFO - at 0.9s,\tbest my_xgb2's error=0.2377,\tbest my_xgb2's error=0.2377\n", + "[flaml.automl: 07-06 10:18:14] {1012} INFO - iteration 27, current learner my_xgb2\n", + "[flaml.automl: 07-06 10:18:14] {1160} INFO - at 1.0s,\tbest my_xgb2's error=0.2377,\tbest my_xgb2's error=0.2377\n", + "[flaml.automl: 07-06 10:18:14] {1012} INFO - iteration 28, current learner my_xgb1\n", + "[flaml.automl: 07-06 10:18:14] {1160} INFO - at 1.0s,\tbest my_xgb1's error=12.3010,\tbest my_xgb2's error=0.2377\n", + "[flaml.automl: 07-06 10:18:14] {1012} INFO - iteration 29, current learner my_xgb1\n", + "[flaml.automl: 07-06 10:18:14] {1160} INFO - at 1.0s,\tbest my_xgb1's error=4.1454,\tbest my_xgb2's error=0.2377\n", + "[flaml.automl: 07-06 10:18:14] {1012} INFO - iteration 30, current learner my_xgb1\n", + "[flaml.automl: 07-06 10:18:14] {1160} INFO - at 1.0s,\tbest my_xgb1's error=2.4944,\tbest my_xgb2's error=0.2377\n", + "[flaml.automl: 07-06 10:18:14] {1012} INFO - iteration 31, current learner my_xgb2\n", + "[flaml.automl: 07-06 10:18:14] {1160} INFO - at 1.1s,\tbest my_xgb2's error=0.2377,\tbest my_xgb2's error=0.2377\n", + "[flaml.automl: 07-06 10:18:14] {1012} INFO - iteration 32, current learner my_xgb1\n", + "[flaml.automl: 07-06 10:18:14] {1160} INFO - at 1.1s,\tbest my_xgb1's error=2.4944,\tbest my_xgb2's error=0.2377\n", + "[flaml.automl: 07-06 10:18:14] {1012} INFO - iteration 33, current learner my_xgb1\n", + "[flaml.automl: 07-06 10:18:14] {1160} INFO - at 1.2s,\tbest my_xgb1's error=2.4944,\tbest my_xgb2's error=0.2377\n", + "[flaml.automl: 07-06 10:18:14] {1012} INFO - iteration 34, current learner my_xgb2\n", + "[flaml.automl: 07-06 10:18:15] {1160} INFO - at 1.2s,\tbest my_xgb2's error=0.2212,\tbest my_xgb2's error=0.2212\n", + "[flaml.automl: 07-06 10:18:15] {1012} INFO - iteration 35, current learner my_xgb1\n", + "[flaml.automl: 07-06 10:18:15] {1160} INFO - at 1.3s,\tbest my_xgb1's error=1.4150,\tbest my_xgb2's error=0.2212\n", + "[flaml.automl: 07-06 10:18:15] {1012} INFO - iteration 36, current learner my_xgb2\n", + "[flaml.automl: 07-06 10:18:15] {1160} INFO - at 1.3s,\tbest my_xgb2's error=0.2212,\tbest my_xgb2's error=0.2212\n", + "[flaml.automl: 07-06 10:18:15] {1012} INFO - iteration 37, current learner my_xgb1\n", + "[flaml.automl: 07-06 10:18:15] {1160} INFO - at 1.3s,\tbest my_xgb1's error=1.4150,\tbest my_xgb2's error=0.2212\n", + "[flaml.automl: 07-06 10:18:15] {1012} INFO - iteration 38, current learner my_xgb2\n", + "[flaml.automl: 07-06 10:18:15] {1160} INFO - at 1.6s,\tbest my_xgb2's error=0.2107,\tbest my_xgb2's error=0.2107\n", + "[flaml.automl: 07-06 10:18:15] {1012} INFO - iteration 39, current learner my_xgb2\n", + "[flaml.automl: 07-06 10:18:15] {1160} INFO - at 1.8s,\tbest my_xgb2's error=0.2107,\tbest my_xgb2's error=0.2107\n", + "[flaml.automl: 07-06 10:18:15] {1012} INFO - iteration 40, current learner my_xgb1\n", + "[flaml.automl: 07-06 10:18:15] {1160} INFO - at 1.8s,\tbest my_xgb1's error=1.4150,\tbest my_xgb2's error=0.2107\n", + "[flaml.automl: 07-06 10:18:15] {1012} INFO - iteration 41, current learner my_xgb2\n", + "[flaml.automl: 07-06 10:18:16] {1160} INFO - at 3.1s,\tbest my_xgb2's error=0.2107,\tbest my_xgb2's error=0.2107\n", + "[flaml.automl: 07-06 10:18:16] {1012} INFO - iteration 42, current learner my_xgb2\n", + "[flaml.automl: 07-06 10:18:17] {1160} INFO - at 3.4s,\tbest my_xgb2's error=0.2107,\tbest my_xgb2's error=0.2107\n", + "[flaml.automl: 07-06 10:18:17] {1012} INFO - iteration 43, current learner my_xgb1\n", + "[flaml.automl: 07-06 10:18:17] {1160} INFO - at 3.4s,\tbest my_xgb1's error=1.4150,\tbest my_xgb2's error=0.2107\n", + "[flaml.automl: 07-06 10:18:17] {1012} INFO - iteration 44, current learner my_xgb1\n", + "[flaml.automl: 07-06 10:18:17] {1160} INFO - at 3.4s,\tbest my_xgb1's error=1.4150,\tbest my_xgb2's error=0.2107\n", + "[flaml.automl: 07-06 10:18:17] {1012} INFO - iteration 45, current learner my_xgb2\n", + "[flaml.automl: 07-06 10:18:17] {1160} INFO - at 3.7s,\tbest my_xgb2's error=0.2107,\tbest my_xgb2's error=0.2107\n", + "[flaml.automl: 07-06 10:18:17] {1012} INFO - iteration 46, current learner my_xgb1\n", + "[flaml.automl: 07-06 10:18:17] {1160} INFO - at 3.7s,\tbest my_xgb1's error=1.4150,\tbest my_xgb2's error=0.2107\n", + "[flaml.automl: 07-06 10:18:17] {1012} INFO - iteration 47, current learner my_xgb1\n", + "[flaml.automl: 07-06 10:18:17] {1160} INFO - at 3.8s,\tbest my_xgb1's error=1.4150,\tbest my_xgb2's error=0.2107\n", + "[flaml.automl: 07-06 10:18:17] {1012} INFO - iteration 48, current learner my_xgb2\n", + "[flaml.automl: 07-06 10:18:17] {1160} INFO - at 3.9s,\tbest my_xgb2's error=0.2107,\tbest my_xgb2's error=0.2107\n", + "[flaml.automl: 07-06 10:18:17] {1012} INFO - iteration 49, current learner my_xgb1\n", + "[flaml.automl: 07-06 10:18:17] {1160} INFO - at 3.9s,\tbest my_xgb1's error=1.4150,\tbest my_xgb2's error=0.2107\n", + "[flaml.automl: 07-06 10:18:17] {1012} INFO - iteration 50, current learner my_xgb1\n", + "[flaml.automl: 07-06 10:18:17] {1160} INFO - at 4.0s,\tbest my_xgb1's error=1.0006,\tbest my_xgb2's error=0.2107\n", + "[flaml.automl: 07-06 10:18:17] {1012} INFO - iteration 51, current learner my_xgb1\n", + "[flaml.automl: 07-06 10:18:17] {1160} INFO - at 4.0s,\tbest my_xgb1's error=1.0006,\tbest my_xgb2's error=0.2107\n", + "[flaml.automl: 07-06 10:18:17] {1012} INFO - iteration 52, current learner my_xgb1\n", + "[flaml.automl: 07-06 10:18:17] {1160} INFO - at 4.1s,\tbest my_xgb1's error=1.0006,\tbest my_xgb2's error=0.2107\n", + "[flaml.automl: 07-06 10:18:17] {1012} INFO - iteration 53, current learner my_xgb2\n", + "[flaml.automl: 07-06 10:18:18] {1160} INFO - at 4.7s,\tbest my_xgb2's error=0.2107,\tbest my_xgb2's error=0.2107\n", + "[flaml.automl: 07-06 10:18:18] {1012} INFO - iteration 54, current learner my_xgb1\n", + "[flaml.automl: 07-06 10:18:18] {1160} INFO - at 4.7s,\tbest my_xgb1's error=1.0006,\tbest my_xgb2's error=0.2107\n", + "[flaml.automl: 07-06 10:18:18] {1012} INFO - iteration 55, current learner my_xgb1\n", + "[flaml.automl: 07-06 10:18:18] {1160} INFO - at 4.9s,\tbest my_xgb1's error=1.0006,\tbest my_xgb2's error=0.2107\n", + "[flaml.automl: 07-06 10:18:18] {1012} INFO - iteration 56, current learner my_xgb1\n", + "[flaml.automl: 07-06 10:18:18] {1160} INFO - at 5.0s,\tbest my_xgb1's error=1.0006,\tbest my_xgb2's error=0.2107\n", + "[flaml.automl: 07-06 10:18:18] {1012} INFO - iteration 57, current learner my_xgb1\n", + "[flaml.automl: 07-06 10:18:18] {1160} INFO - at 5.1s,\tbest my_xgb1's error=1.0006,\tbest my_xgb2's error=0.2107\n", + "[flaml.automl: 07-06 10:18:18] {1012} INFO - iteration 58, current learner my_xgb2\n", + "[flaml.automl: 07-06 10:18:18] {1160} INFO - at 5.1s,\tbest my_xgb2's error=0.2107,\tbest my_xgb2's error=0.2107\n", + "[flaml.automl: 07-06 10:18:18] {1012} INFO - iteration 59, current learner my_xgb1\n", + "[flaml.automl: 07-06 10:18:19] {1160} INFO - at 5.2s,\tbest my_xgb1's error=1.0006,\tbest my_xgb2's error=0.2107\n", + "[flaml.automl: 07-06 10:18:19] {1012} INFO - iteration 60, current learner my_xgb2\n", + "[flaml.automl: 07-06 10:18:20] {1160} INFO - at 6.8s,\tbest my_xgb2's error=0.1919,\tbest my_xgb2's error=0.1919\n", + "[flaml.automl: 07-06 10:18:20] {1012} INFO - iteration 61, current learner my_xgb2\n", + "[flaml.automl: 07-06 10:18:21] {1160} INFO - at 7.4s,\tbest my_xgb2's error=0.1860,\tbest my_xgb2's error=0.1860\n", + "[flaml.automl: 07-06 10:18:21] {1012} INFO - iteration 62, current learner my_xgb1\n", + "[flaml.automl: 07-06 10:18:21] {1160} INFO - at 7.4s,\tbest my_xgb1's error=1.0006,\tbest my_xgb2's error=0.1860\n", + "[flaml.automl: 07-06 10:18:21] {1012} INFO - iteration 63, current learner my_xgb2\n", + "[flaml.automl: 07-06 10:18:22] {1160} INFO - at 9.1s,\tbest my_xgb2's error=0.1860,\tbest my_xgb2's error=0.1860\n", + "[flaml.automl: 07-06 10:18:22] {1012} INFO - iteration 64, current learner my_xgb2\n", + "[flaml.automl: 07-06 10:18:23] {1160} INFO - at 9.2s,\tbest my_xgb2's error=0.1860,\tbest my_xgb2's error=0.1860\n", + "[flaml.automl: 07-06 10:18:23] {1012} INFO - iteration 65, current learner my_xgb2\n", + "[flaml.automl: 07-06 10:18:25] {1160} INFO - at 12.0s,\tbest my_xgb2's error=0.1728,\tbest my_xgb2's error=0.1728\n", + "[flaml.automl: 07-06 10:18:25] {1012} INFO - iteration 66, current learner my_xgb1\n", + "[flaml.automl: 07-06 10:18:26] {1160} INFO - at 12.3s,\tbest my_xgb1's error=1.0006,\tbest my_xgb2's error=0.1728\n", + "[flaml.automl: 07-06 10:18:26] {1012} INFO - iteration 67, current learner my_xgb2\n", + "[flaml.automl: 07-06 10:18:30] {1160} INFO - at 16.6s,\tbest my_xgb2's error=0.1728,\tbest my_xgb2's error=0.1728\n", + "[flaml.automl: 07-06 10:18:30] {1012} INFO - iteration 68, current learner my_xgb2\n", + "[flaml.automl: 07-06 10:18:33] {1160} INFO - at 20.1s,\tbest my_xgb2's error=0.1728,\tbest my_xgb2's error=0.1728\n", + "[flaml.automl: 07-06 10:18:33] {1012} INFO - iteration 69, current learner my_xgb1\n", + "[flaml.automl: 07-06 10:18:33] {1160} INFO - at 20.2s,\tbest my_xgb1's error=1.0006,\tbest my_xgb2's error=0.1728\n", + "[flaml.automl: 07-06 10:18:33] {1012} INFO - iteration 70, current learner my_xgb2\n", + "[flaml.automl: 07-06 10:18:38] {1160} INFO - at 25.2s,\tbest my_xgb2's error=0.1728,\tbest my_xgb2's error=0.1728\n", + "[flaml.automl: 07-06 10:18:41] {1183} INFO - retrain my_xgb2 for 2.7s\n", + "[flaml.automl: 07-06 10:18:41] {1012} INFO - iteration 71, current learner my_xgb1\n", + "[flaml.automl: 07-06 10:18:41] {1160} INFO - at 28.0s,\tbest my_xgb1's error=1.0006,\tbest my_xgb2's error=0.1728\n", + "[flaml.automl: 07-06 10:18:44] {1183} INFO - retrain my_xgb1 for 2.9s\n", + "[flaml.automl: 07-06 10:18:44] {1206} INFO - selected model: \n", + "[flaml.automl: 07-06 10:18:44] {963} INFO - fit succeeded\n" ] } ], @@ -707,14 +717,14 @@ "output_type": "stream", "name": "stdout", "text": [ - "Best hyperparmeter config: {'n_estimators': 810.0, 'max_leaves': 148.0, 'min_child_weight': 79.26376930785436, 'learning_rate': 0.05793074143079168, 'subsample': 1.0, 'colsample_bylevel': 0.8662229421401874, 'colsample_bytree': 0.7851677398738949, 'reg_alpha': 0.00738292823760415, 'reg_lambda': 1.2202619267865558}\n", - "Best r2 on validation data: 0.8293\n", - "Training duration of best run: 5.254 s\n", - "Predicted labels [141967.81 241199.84 138144. ... 194218.06 226530.98 261889.88]\n", + "Best hyperparmeter config: {'n_estimators': 1349.0, 'max_leaves': 88.0, 'min_child_weight': 25.104070096431194, 'learning_rate': 0.04855713895005341, 'subsample': 1.0, 'colsample_bylevel': 0.6398245537905194, 'colsample_bytree': 0.7241421702750391, 'reg_alpha': 0.029936792254518507, 'reg_lambda': 0.08484133558855533}\n", + "Best r2 on validation data: 0.8272\n", + "Training duration of best run: 2.813 s\n", + "Predicted labels [151654.97 238153.92 152878.81 ... 204228.64 210192.14 277021.62]\n", "True labels [136900. 241300. 200700. ... 160900. 227300. 265600.]\n", - "r2 = 0.842873933929261\n", - "mse = 2076971932.1823325\n", - "mae = 29342.21334408309\n" + "r2 = 0.843576000520939\n", + "mse = 2067691660.3477309\n", + "mae = 29060.49894622093\n" ] } ], @@ -744,12 +754,7 @@ "metadata": { "kernelspec": { "name": "python3", - "display_name": "Python 3.8.0 64-bit", - "metadata": { - "interpreter": { - "hash": "0cfea3304185a9579d09e0953576b57c8581e46e6ebc6dfeb681bc5a511f7544" - } - } + "display_name": "Python 3.8.10 64-bit ('py38': conda)" }, "language_info": { "codemirror_mode": { @@ -761,7 +766,10 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.8.0-final" + "version": "3.8.10" + }, + "interpreter": { + "hash": "4502d015faca2560a557f35a41b6dd402f7fdfc08e843ae17a9c41947939f10c" } }, "nbformat": 4,