我尝试在不平衡的数据集(~1:4)上运行随机林分类器。在
我使用imblearn的方法如下:
from imblearn.ensemble import BalancedRandomForestClassifier
rf=BalancedRandomForestClassifier(n_estimators=1000,random_state=42,class_weight='balanced',sampling_strategy='not minority')
rf.fit(train_features,train_labels)
predictions=rf.predict(test_features)
训练和测试集的分割是在交叉验证方法中使用scikit learn中的RepeatedStratifiedKFold
来执行的。在
然而,我想知道测试集是否也需要平衡,以获得合理的准确度分数(敏感性、特异性等)。我希望你能帮我。在
非常感谢!在
从imblearndocs:
如果你可以用随机欠采样作为平衡方法,那么分类器就是在“幕后”为你做这件事。事实上,这就是使用imblearn首先处理类不平衡的要点。如果你使用的是直接的随机森林,比如sklearn的开箱即用版本,那么我会更关心在前端处理类不平衡。在
相关问题 更多 >
编程相关推荐