diff --git a/R-package/R/xgb.cv.R b/R-package/R/xgb.cv.R index 2dee9d9f8..cc0e42a93 100644 --- a/R-package/R/xgb.cv.R +++ b/R-package/R/xgb.cv.R @@ -196,7 +196,7 @@ xgb.cv <- function(params=list(), data, nrounds, nfold, label = NULL, missing = bestScore = score bestInd = i } else { - if (i-bestInd>early_stop_round) { + if (i-bestInd>=early_stop_round) { earlyStopflag = TRUE cat('Stopping. Best iteration:',bestInd) break diff --git a/R-package/R/xgb.train.R b/R-package/R/xgb.train.R index f6e60e23d..8ed0099a2 100644 --- a/R-package/R/xgb.train.R +++ b/R-package/R/xgb.train.R @@ -187,7 +187,7 @@ xgb.train <- function(params=list(), data, nrounds, watchlist = list(), bestScore = score bestInd = i } else { - if (i-bestInd>early_stop_round) { + if (i-bestInd>=early_stop_round) { earlyStopflag = TRUE cat('Stopping. Best iteration:',bestInd) break diff --git a/R-package/demo/early_Stopping.R b/R-package/demo/early_Stopping.R index 692b413aa..34dfebc0b 100644 --- a/R-package/demo/early_Stopping.R +++ b/R-package/demo/early_Stopping.R @@ -34,6 +34,6 @@ print ('start training with early Stopping setting') # training with customized objective, we can also do step by step training # simply look at xgboost.py's implementation of train bst <- xgb.train(param, dtrain, num_round, watchlist, logregobj, evalerror, maximize = FALSE, - earlyStopRound = 3) + early.stop.round = 3) bst <- xgb.cv(param, dtrain, num_round, nfold=5, obj=logregobj, feval = evalerror, - maximize = FALSE, earlyStopRound = 3) + maximize = FALSE, early.stop.round = 3)