当重采样方法不适用于文本时,如何为文本分类创建SMOTE管道步骤?

问题描述 投票:1回答:1

我有一个带有大类不平衡问题的多标签分类问题,因此我想使用SMOTE创建流水线步骤,但是由于X基本上是文本,而Y则是所述标签的1和0的数组,所以我不能仅以这种方式插入SMOTE(),因为它既需要拟合又需要转换。

pipeline = Pipeline([
    ('smote', SMOTE()), 
    ('vect', CountVectorizer()),
    ('tfidf', TfidfTransformer()), 
    ('ss', StandardScaler(with_mean=False)), 
    ('clf', model),
])
python scikit-learn pipeline text-classification topic-modeling
1个回答
0
投票

当前版本的不平衡学习带有其自己的pipeline。您应该能够将其合并到sklearn管道中。您只需在导入sklearn之后添加此行,并像使用sklearn管道一样使用它即可。

from imblearn.pipeline import Pipeline
© www.soinside.com 2019 - 2024. All rights reserved.