我正在使用 CNN 进行二进制分类,并且数据不平衡,其中阳性医学图像:阴性医学图像 = 0.4:0.6。所以我想在训练前使用 SMOTE 对阳性医学图像数据进行过采样。但是,数据的维度是 4D (761,64,64,3) 这会导致错误
Found array with dim 4. Estimator expected <= 2
所以,我重塑了我的 train_data:
X_res, y_res = smote.fit_sample(X_train.reshape(X_train.shape[0], -1), y_train.ravel())
它工作正常。在将其提供给 CNN 之前,我通过以下方式对其进行重塑:
X_res = X_res.reshape(X_res.shape[0], 64, 64, 3)
现在,我不确定它是否是过采样的正确方法,并且 reshape 操作符会改变图像的结构吗?