下面我有代码,其中我试图在 R 中训练一个 XGBoost 模型,该模型在给定轮数后提前停止early_stopping_rounds
而没有改进。
watchlist <- list(train=dtrain, test=dtest)
param <- list(
objective = "binary:logistic",
eta = 0.3,
max_depth = 8,
eval_metric="logloss"
)
xgb.train(params = param, data = dtrain, nrounds = 1000, watchlist = watchlist, early_stopping_rounds = 3)
但是,我不想固定轮数,而是传递一个min_delta
值,因此当轮数之间的差异低于给定的容差时,提前停止就会启动。
其他人(此处和此处)已针对 Python 提出了此问题。然而,不久前的进步已经为 Python 实现了这个选项。
但是我如何在 R 中解决这个问题?有没有类似的东西?