我读过 SMOTE 包是为二进制分类实现的。在 n 个类的情况下,它会为最小的类创建额外的示例。我可以通过运行算法 n-1 次来平衡所有类吗?
SMOTE 和多类过采样
数据挖掘
Python
阶级失衡
采样
打击
2021-10-02 06:15:24
3个回答
我很确定 python 中的 SMOTE 包也可以用于多类。
只是你可以检查它的 iris 数据集的实现-
http://contrib.scikit-learn.org/imbalanced-learn/stable/auto_examples/plot_ratio_usage.html
- 如果我错了,请纠正我。
python中提供的SMOTE实现imbalanced-learn也可以用于多类问题。
查看文档中可用的以下图表:
此外,以下代码段:
from imblearn.over_sampling import SMOTE, ADASYN
X_resampled, y_resampled = SMOTE().fit_resample(X, y)
print(sorted(Counter(y_resampled).items()))
[(0, 4674), (1, 4674), (2, 4674)]

