У меня есть быстрый вопрос о том, как использовать модуль SMOTE в библиотеке imblearn для несбалансированного набора данных:
У меня есть набор данных для обучения моей модели DNN. Он имеет 12442 сэмпла, и каждый сэмпл представляет собой массив 650 * 5:
X.shape # (12442, 650, 5)
y.shape # (12442, 1)
Набор данных хорошо работает с моей моделью DNN, созданной с помощью API tf.keras.
Однако, когда я пытался добавить сверхвыборку с помощью SMOTE, она возвращает ошибку:
from imblearn.over_sampling import SMOTE
sm = SMOTE()
X, y = sm.fit_sample(X, y)
ValueError: Found array with dim 3. Estimator expected <= 2.
Неужели SMOTE в пакете imblearn принимает только 1d данные? Есть ли способ или другой способ обойти это?