我正在寻找XGBRegressor使用 GridSearchCV 的最佳超参数。这是代码:
from xgboost import XGBRegressor
from sklearn.model_selection import GridSearchCV, KFold
param_grid_xgb_b1 = {
'num_leaves': np.arange(20, 500, 5),
'max_depth': np.arange(5, 50, 2),
'reg_alpha': np.arange(0.01, 0.5, 0.01),
'min_data_in_leaf': np.arange(50, 1_000, 10),
'colsample_bytree': [0.65, 0.75, 0.85, 0.95, 1],
'subsample': [0.65, 0.75, 0.85, 0.95, 1]
}
kfold_xgb_b1 = KFold(n_splits=5, shuffle=True, random_state=42).split(X=X_train, y=y_train)
grid_search_xgb_b1 = GridSearchCV(estimator=XGBRegressor(learning_rate=0.01, n_estimators=20_000, random_state=0,
tree_method='gpu_hist', subsample_freq=5),
param_grid=param_grid_xgb_b1,
scoring=rmse_score, cv=kfold_xgb_b1)
grid_search_xgb_b1.fit(X=X_train, y=y_train, verbose=3)
我正在使用带有 GPU 的 Google Colab。机器是具有 12.72GB RAM 的双核 CPU。GPU 是 CUDA 版本 10.1 的 Tesla T4。
如何防止崩溃和搜索超参数?
编辑 1:
崩溃类型:RAM 已满;
数据大小:300,000 行和 40 列。