蟒蛇3.6中有一个比NLTK更快的雪球词干吗?

时间:2018-02-14 14:01:03

标签: python python-3.x nlp nltk stemming

我目前正在使用NLTK的SnowballStemmer来阻止我的文档中的单词,当我有68个文档时,这工作正常。现在我有4000个文件,这太慢了。我读了另一个帖子,其中有人建议使用PyStemmer,但这不是在Python 3.6上提供的。还有其他软件包可以解决这个问题吗?或者也许我可以在代码中做些什么来加快这个过程。

代码:

eng_stemmer = nltk.stem.SnowballStemmer('english')
...
class StemmedCountVectorizer(CountVectorizer):
    def build_analyzer(self):
        analyzer = super(StemmedCountVectorizer, self).build_analyzer()
        return lambda doc: ([eng_stemmer.stem(w) for w in analyzer(doc)])

1 个答案:

答案 0 :(得分:1)

PyStemmer并没有说它在文档中使用python 3.6但实际上确实如此。安装与python 3.6兼容的适当Visual Studio C ++ Build,您可以在此处找到: http://landinghub.visualstudio.com/visual-cpp-build-tools

然后尝试pip install pystemmer

如果这不起作用,请确保您完全按照此处的说明手动安装:https://github.com/snowballstem/pystemmer