机器学习-如何从管道中提取特征

问题描述 投票:0回答:2

我是该领域的新手,目前我很困。这是我想要的和我做的:

我有一个数据框,它在训练和测试数据集中是单独的。培训功能是Twitter消息,为标签分配了类别。我设置了一个令牌生成器(称为clean_text),该令牌生成器仅保留相关的单词并将消息剥离为核心信息。该模型包括一个网格搜索,如下所示:

def build_model():
   pipeline = Pipeline([
        ('vectorizer', CountVectorizer(tokenizer=clean_text)),
        ('tfidf', TfidfTransformer()),
        ('clf', MultiOutputClassifier(
                RandomForestClassifier()
                ))      
        ])

    # parameters to grid search
    parameters = { 'vectorizer__max_features' : [50],#, 72, 144, 288, 576, 1152],
            'clf__estimator__n_estimators' : [100]}#, 100] }

    # initiating GridSearchCV method
    model = GridSearchCV(pipeline, param_grid=parameters, cv = 5)

    return model

拟合效果很好,评估也不错。我不确定,是否正确设置了模型,功能是否是消息中使用最多的标记(在上述情况下为50),或者是否有错误。

现在的问题是:有没有办法打印出50个功能并查看它们是否正确?

最佳费利克斯

python nlp classification feature-extraction
2个回答
0
投票

没有示例信息,这是最佳猜测。请检查以下项目是否有效。如果您有样本数据,我们可以为您提供更好的帮助。

print(vectorizer.vocabulary_)

0
投票

这应该可行,或共享示例数据框

model.estimator.named_steps['vectorizer'].get_feature_names()
© www.soinside.com 2019 - 2024. All rights reserved.