使用不平衡学习过采样后仅检索重采样实例的索引?
Retrieve the indices for only the resampled instances after oversampling using imbalanced-learn?
对于数据不平衡的二进制文本分类问题,我使用 imbalanced-learn 库的函数 RandomOverSampler
来平衡 类。
现在,我只想检索从原始数据中过采样(复制)的实例。例如,如果 "item_1" 是原始数据,项目 2 到 4 是 "item_1" 的副本,我只需要 "item_2"、"item_3"、[=33= 的索引] 进行进一步处理并省略 "item_1" 的索引。
- item_1
- item_2
- item_3
- item_4
这是我的代码:
from imblearn.over_sampling import RandomOverSampler
ros = RandomOverSampler(random_state=42)
X_listed = []
for eachTrainInstance in X_train:
X_listed.append([eachTrainInstance])
X_tr_resampled, y_tr_resampled = ros.fit_sample(X_listed, y_train)
似乎所有过采样实例(当然还有它们相应的索引)都连接在经过过采样的原始数据的末尾。
oversampled_instances = y_tr_resampled[len(y_train):]
对于数据不平衡的二进制文本分类问题,我使用 imbalanced-learn 库的函数 RandomOverSampler
来平衡 类。
现在,我只想检索从原始数据中过采样(复制)的实例。例如,如果 "item_1" 是原始数据,项目 2 到 4 是 "item_1" 的副本,我只需要 "item_2"、"item_3"、[=33= 的索引] 进行进一步处理并省略 "item_1" 的索引。
- item_1
- item_2
- item_3
- item_4
这是我的代码:
from imblearn.over_sampling import RandomOverSampler
ros = RandomOverSampler(random_state=42)
X_listed = []
for eachTrainInstance in X_train:
X_listed.append([eachTrainInstance])
X_tr_resampled, y_tr_resampled = ros.fit_sample(X_listed, y_train)
似乎所有过采样实例(当然还有它们相应的索引)都连接在经过过采样的原始数据的末尾。
oversampled_instances = y_tr_resampled[len(y_train):]