【发布时间】:2015-07-20 16:04:03
【问题描述】:
我正在使用来自 sklearn 的 CountVectorizer...希望提供停用词列表并为 (1,3) 的 ngram_range 应用计数向量器。
据我所知,如果一个词 - 说“我” - 在停用词列表中,那么它不会被更高的 ngram 看到,即“告诉我”不会是一个特征。有没有一种方法可以指定诸如“仅当 ngram 为 1 时才考虑停用词”?
【问题讨论】:
标签: python nlp scikit-learn
我正在使用来自 sklearn 的 CountVectorizer...希望提供停用词列表并为 (1,3) 的 ngram_range 应用计数向量器。
据我所知,如果一个词 - 说“我” - 在停用词列表中,那么它不会被更高的 ngram 看到,即“告诉我”不会是一个特征。有没有一种方法可以指定诸如“仅当 ngram 为 1 时才考虑停用词”?
【问题讨论】:
标签: python nlp scikit-learn
您至少有 2 个选项:
将2种特征与FeatureUnion结合:一种用于 ngram_range of (1,1) 带有停用词和一个用于 ngram_range 的 (2,3) 没有停用词
(更高效,但更难实现和使用)实现您自己的分析器,它将在停止时检查是否存在 单词列表仅适用于 unigrams;请参阅this answer 中的示例代码示例。
【讨论】: