title: Lightgbm early stopping not working propperly
body: <p>I'm using light gbm for some machine learning task.</p>
  
  <p>I want to use early stopping to find the optimal number of trees given a number of hyperparameters. 
  However, lgbm stops growing trees while still improving on my evaluation metric.</p>
  
  <p>Below I've attached my specifications:</p>
  
  <pre><code>params = {
  'max_bin' : [128],
  'num_leaves': [8],
  'reg_alpha' : [1.2],
  'reg_lambda' : [1.2],
  'min_data_in_leaf' : [50],
  'bagging_fraction' : [0.5],
  'learning_rate' : [0.001]
  }
  
  mdl = lgb.LGBMClassifier(n_jobs=-1, n_estimators=7000, 
                       **params)
  mdl.fit(X_train, y_train, eval_metric='auc', 
            eval_set=[(X_test, y_test)], early_stopping_rounds=2000, 
          categorical_feature=categorical_features, verbose=5)
  </code></pre>
  
  <p>After some time lightgbm gives me the following result:
  <a href="https://i.stack.imgur.com/qdZXu.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/qdZXu.png" alt="example"></a></p>
  
  <p>lgbm concludes that an auc on 0.7326 is not better than 0.70995 and stops.
  What am I doing wrong?</p>