from bayes_opt import BayesianOptimization
def rf_cv(n_estimators, min_samples_split, max_features, max_depth):
val = cross_val_score(
RandomForestClassifier(n_estimators=int(n_estimators),
min_samples_split=int(min_samples_split),
max_features=min(max_features, 0.999),
max_depth=int(max_depth),
random_state=2
),
train_X,train_y, scoring='roc_auc', cv=2
).mean()
return val
rf_bo = BayesianOptimization(
rf_cv,
{
'n_estimators': (50, 60),
'min_samples_split': (2, 5),
'max_features': (0.1, 0.2),
'max_depth': (5, 7)
}
)
rf_bo.maximize()
rf_bo.res['max']
贝叶斯优化包使用
猜你喜欢
转载自blog.csdn.net/qq_44785318/article/details/122386839
今日推荐
周排行