缺少 spacy en_core_web_lg 中的停用词
missing stop words from spacy en_core_web_lg
我下载了 en_core_web_lg(en_core_web_lg-2.0.0) 但是当我加载它并在 spacy 上使用它时。但它似乎遗漏了很多基本的常见停用词,例如 "be"、"a" 等。我是否遗漏了正确的版本?
import nltk
n = nltk.corpus.stopwords.words('english')
"be" in n
O/P:正确
import spacy
nlp = spacy.load("en_core_web_lg")
nlp.vocab["be"].is_stop
O/P: 错误
英语停用词在 this 文件中定义,如您所见,be 属于它们。
您可以导入英文停用词集,然后检查您的词是否属于它。
可能有更简单的方法,但以下代码肯定可以实现您正在寻找的内容:
from spacy.lang.en import STOP_WORDS
import spacy
nlp = spacy.load('en')
doc = nlp("be amazing")
for token in doc:
if (token.text in STOP_WORDS):
print(token.text)
您可能 运行 遇到过这个错误:
https://github.com/explosion/spaCy/issues/1574
en_core_web_md 和 en_core_web_lg 模型缺少停用词,但您的代码将按预期使用 en_core_web_sm。
我下载了 en_core_web_lg(en_core_web_lg-2.0.0) 但是当我加载它并在 spacy 上使用它时。但它似乎遗漏了很多基本的常见停用词,例如 "be"、"a" 等。我是否遗漏了正确的版本?
import nltk
n = nltk.corpus.stopwords.words('english')
"be" in n
O/P:正确
import spacy
nlp = spacy.load("en_core_web_lg")
nlp.vocab["be"].is_stop
O/P: 错误
英语停用词在 this 文件中定义,如您所见,be 属于它们。
您可以导入英文停用词集,然后检查您的词是否属于它。 可能有更简单的方法,但以下代码肯定可以实现您正在寻找的内容:
from spacy.lang.en import STOP_WORDS
import spacy
nlp = spacy.load('en')
doc = nlp("be amazing")
for token in doc:
if (token.text in STOP_WORDS):
print(token.text)
您可能 运行 遇到过这个错误:
https://github.com/explosion/spaCy/issues/1574
en_core_web_md 和 en_core_web_lg 模型缺少停用词,但您的代码将按预期使用 en_core_web_sm。