EmJ*_*EmJ 5 python classification machine-learning scikit-learn
我有一个高度不平衡的数据集,我想执行二进制分类。
在阅读一些帖子时,我发现sklearn提供class_weight="balanced"了不平衡的数据集。所以,我的分类器代码如下。
clf=RandomForestClassifier(random_state = 42, class_weight="balanced")
Run Code Online (Sandbox Code Playgroud)
然后我使用上面的分类器进行了 10 折交叉验证,如下所示。
k_fold = KFold(n_splits=10, shuffle=True, random_state=42)
new_scores = cross_val_score(clf, X, y, cv=k_fold, n_jobs=1)
print(new_scores.mean())
Run Code Online (Sandbox Code Playgroud)
但是,我不确定是否class_weight="balanced"通过 10 倍交叉验证反映出来。我做错了吗?如果是这样,在 sklearn 中是否有更好的方法来做到这一点?
如果需要,我很乐意提供更多详细信息。
| 归档时间: |
|
| 查看次数: |
1948 次 |
| 最近记录: |