我正在使用 Python 和 scikit-learn 进行文本分类。
现在,我使用 TfidfVectorizer 作为向量器(用于将原始文本转换为特征向量)和 MultinomialNB 作为分类器。我使用参数 ngram_range = (1,2) (参见http://scikit-learn.org/stable/modules/generated/sklearn.feature_extraction.text.TfidfVectorizer.html),例如我使用一个词和二元组。
在测试集和 CV 集中分类和测试我的算法后,我想提高准确性。我看到了最多信息的特征(由于问题如何为 scikit-learn 分类器获取最多信息的特征?)。而且我看到,在集合中信息量最大的特征中,我有单词(ngram=1),它们对分类没有影响,但是在二元组(单词搭配)中它们会产生很大的影响。
所以,我不能使用 stop_words,因为 Tfidfvectorizer 不会在搭配中考虑这个词,我也不能使用预处理器。问题:如何在 tfidfvectorizer 中排除某些单词,但将这些单词保存在不同的搭配中?