【发布时间】:2021-02-26 11:25:59
【问题描述】:
我正在处理多标签图像分类。这是我的数据框:
您可以看到标有 26 个特征的图像。 “1”表示存在,“0”表示不存在。
我的问题是许多标签的数据不平衡。例如:
[1] train_df.value_counts('Eyeglasses')
Output:
Eyeglasses
0 54735
1 1265
dtype: int64
[2] train_df.value_counts('Double_Chin')
Output:
Double_Chin
0 55464
1 536
dtype: int64
如何将训练数据和验证数据两者平衡地拆分?
[更新]
我试过
from imblearn.over_sampling import SMOTE
smote = SMOTE()
from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3,
random_state=42)
X_train_smote, y_train_smote = smote.fit_sample(X_train, y_train)
ValueError: Imbalanced-learn 当前支持二进制、多类和 二进制编码的多类目标。多标签和多输出 不支持目标。
【问题讨论】:
标签: python machine-learning scikit-learn data-analysis imbalanced-data