我有高度不平衡的数据集。我正在使用 XGBoost,在没有平衡数据集的情况下得到了以下结果:
Precision: 0.87
Recall: 0.79
F1: 0.83
我的参数是:
xgb_model=xgb.XGBClassifier(
objective = "binary:logistic",
n_estimators=500,
max_depth=8,
verbosity=2,
random_state=42)
xgb_model.fit(X_train,y_train, eval_metric='aucpr', eval_set=eval_set)
如果我通过 SMOTE 平衡我的数据集,我会得到以下结果:
Precision: 0.81
Recall: 0.80
F1: 0.81
如果我使用不平衡的数据集,如何提高召回率(通过精度权衡)?