我需要重复一个实验。这个实验是在Python 2.7和spacy 1.8.2的环境下进行的。下面的代码片段产生了不同的输出结果:
for raw_doc in spam + ham: doc = self.nlp(raw_doc) docs.append(' '.join( [token.lemma_ for token in doc if (token.is_alpha and not (token.is_oov or token.is_stop))]))
在Python 3.7环境中,token.is_oov
始终为True
,导致选择为空。而spacy 1.8.2则给出了合理的结果。这里词汇表对于重复实验的重要性不言而喻。
现在我想在Python 3.7和spacy 2.3的环境下重复这个实验。请问我现在该怎么办?
我得承认我的问题提得不够好。我在安装spacy的语言包时犯了错误。这个链接(https://github.com/explosion/spacy-models)是一个很好的参考资料。
回答:
尝试从https://github.com/explosion/spacy-models获取旧版本的en_core_web_sm模型1.2.0,该模型与旧版spacy库一起使用。所有旧版spacy模型和en_core..模型都存档在那里。