使用准确性以外的指标进行 OOB 评估,例如 F1 或 AUC

OOB evaluation with metrics other than accuracy, e.g., F1 or AUC

我正在不平衡数据集上训练随机森林,准确率无法提供信息。我想避免交叉验证,而是使用袋外 (OOB) 评估。是否有可能在 sklearn 中(或通常在 python 中)评估袋外(OOB)F1 或 AUC 而不是 OOB 准确性?

我在这些页面上找不到执行此操作的方法:

https://scikit-learn.org/stable/auto_examples/ensemble/plot_ensemble_oob.html#sphx-glr-auto-examples-ensemble-plot-ensemble-oob-py https://scikit-learn.org/stable/modules/generated/sklearn.ensemble.RandomForestClassifier.html

或者我应该只为 oob_decision_function_ 中的平均预测(或分类的多数投票)计算 f1 和 AUC?

the source可以看出,准确度计算是hard-coded,所以你不能通过设置一些参数来得到另一个分数。

但是,正如您所说,oob 预测是可用的,因此自己进行最终计算并不困难。