1
xgboostの実行時間を制限する方法(たとえば、クラスタに1時間の計算予算があります)?ラウンド数でxgboostを制限することも可能ですか?xgboost実行時間を制限する方法は?
xgboostの実行時間を制限する方法(たとえば、クラスタに1時間の計算予算があります)?ラウンド数でxgboostを制限することも可能ですか?xgboost実行時間を制限する方法は?
で使用されているxgboost.train
関数を直接呼び出すことは可能です。この関数には、実行時間を確認し、必要に応じてEarlyStopException
を呼び出すために使用できるパラメータnum_boost_round
(昇圧ラウンド数を制限する)とcallbacks
パラメータがあります。もちろん、反復の途中で停止することはできませんが、time_limit - delta
分です。
残念ながら、XGBModel
(およびそれに対応XGBRegressor
とXGBClassifier
)APIを使用すると、低レベルのAPIにコードをリファクタリングする必要がありますので、コールバックを通過することはできません:
params = {'eval_metric': True, ...}
trainDmatrix = DMatrix(X, label=y)
train(params, trainDmatrix, num_boost_round=10, callbacks=[callback])
明確にするために、あなたはそれらを実行するのにかかる時間に基づいてラウンドの数を設定しようとしていますか? –
@dataprincessいいえ、それは別の質問です。 – mrgloom