从Scikit(Python)中的管道检索中间特征

前端之家收集整理的这篇文章主要介绍了从Scikit(Python)中的管道检索中间特征前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我使用的管道非常类似于 in this example
>>> text_clf = Pipeline([('vect',CountVectorizer()),...                      ('tfidf',TfidfTransformer()),...                      ('clf',MultinomialNB()),... ])

我使用GridSearchCV在参数网格上找到最佳估算器.

但是,我想从CountVectorizer()获取get_feature_names()方法的训练集的列名.如果没有在管道外实现CountVectorizer(),这可能吗?

解决方法

使用get_params()函数,您可以访问管道的各个部分及其各自的内部参数.以下是访问“vect”的示例
text_clf = Pipeline([('vect',('tfidf',('clf',MultinomialNB())]
print text_clf.get_params()['vect']

收益率(对我来说)

CountVectorizer(analyzer=u'word',binary=False,decode_error=u'strict',dtype=<type 'numpy.int64'>,encoding=u'utf-8',input=u'content',lowercase=True,max_df=1.0,max_features=None,min_df=1,ngram_range=(1,1),preprocessor=None,stop_words=None,strip_accents=None,token_pattern=u'(?u)\\b\\w\\w+\\b',tokenizer=None,vocabulary=None)

我没有将管道安装到此示例中的任何数据,因此此时调用get_feature_names()将返回错误.

猜你在找的Python相关文章