3

このコードを使用して、GPU で xgboost モデルをトレーニングしています

問題は、GPU (NVIDIA 1050) と CPU コアの両方が同時に使用されていることです。NVIDIA システム モニターは 85 ~ 90% の使用率を示し、Linux システム モニターはすべてのコアが動作していることを示します。

ここには2つの問題があります

1.定義されたtree_methodが「gpu_hist」の場合、xgb_cvが両方を使用するのはなぜですか

  1. モデルが「gpu_hist」ではなく「hist」でトレーニングされると、CPU コアのみを使用して半分の時間で終了します

ありがとう

model_xgb = XGBClassifier(verbose= 1,objective = 'multi:softmax',num_classes=3,tree_method='gpu_hist',predictor = 'gpu_predictor')

xgb_cv    = GridSearchCV(model_xgb, 
                      {"colsample_bytree":[0.8,0.6]
                        ,"min_child_weight":[0,5 ]
                        ,'max_depth': [3,4,] 
                        ,'n_estimators': [500]
                        ,'learning_rate' :[0.01, 0.1]},cv = 2,verbose = 1)





## Fit with cross validation
start_time = time.time()
xgb_cv.fit(X_train,Y_train,verbose = 1)   
duration = (time.time() - start_time)/60                    
print("XGBOOST HyperParameter Tuning  %s minutes ---" % + duration)
4

0 に答える 0