gpt4 book ai didi

python - 我们如何在 SMOTE 中设置比率以使正样本多于负样本?

转载 作者:行者123 更新时间:2023-12-04 17:33:08 26 4
gpt4 key购买 nike

我正在尝试使用 SMOTE 来处理二进制分类中的不平衡类数据,我所知道的是:如果我们使用,例如

sm = SMOTE(ratio = 1.0, random_state=10)

Before OverSampling, counts of label '1': [78]
Before OverSampling, counts of label '0': [6266]

After OverSampling, counts of label '1': 6266
After OverSampling, counts of label '0': 6266

对于第 1 类是少数的情况,它将导致第 0 类和第 1 类的数量为 50:50

sm = SMOTE(ratio = 0.5, random_state=10)

Before OverSampling, counts of label '1': [78]
Before OverSampling, counts of label '0': [6266]

After OverSampling, counts of label '1': 3133
After OverSampling, counts of label '0': 6266

将导致 1 类的大小为 0 类的一半。

我的问题:

我们如何设置比率以获得比 0 类更多的 1 类,例如 75:25?

最佳答案

尝试使用字典。

smote_on_1 = 18798 
#(In your case 18798 is thrice of 6266)

smt = SMOTE(sampling_strategy={1: smote_on_1})
X_train, y_train = smt.fit_sample(X_train, y_train)

关于python - 我们如何在 SMOTE 中设置比率以使正样本多于负样本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57839023/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com