如何将SMOTE用于顺序数据

时间:2018-04-18 20:42:28

标签: python machine-learning rnn

我正在训练关于序列数据的LSTM RNN。

我有~2000个类的不平衡数据集。 我想使用过采样/欠采样的组合。

我对更多代表类进行了下采样,并希望使用SMOTE的python实现来过滤少数类。但是,对于RNN,我的输入是矢量列表,而不是单个矢量。我尝试使用SMOTE的基本示例执行任务,生成错误:

ValueError:找到带有暗淡的数组3.预期估算值<= 2。

有没有办法以这种方式使用SMOTE?这是我目前的代码:

all_vector_inputs = [vector_pair[0] for vector_pair in all_user_vectors]
all_vector_targets = [vector_pair[1] for vector_pair in all_user_vectors]

inputs_res, targets_res = SMOTE(kind='svm').fit_sample(
    all_vector_inputs, 
    all_vector_targets
)

Python中的任何SMOTE替换建议也欢迎。

0 个答案:

没有答案