【发布时间】:2020-04-18 17:55:29
【问题描述】:
我尝试使用 spaCy 进行错字更正,为此我需要知道词汇中是否存在单词。如果不是,则想法是将单词分成两部分,直到所有片段都存在。例如,“ofthe”不存在,“of”和“the”存在。所以我首先需要知道词汇中是否存在一个单词。这就是问题开始的地方。我试试:
for token in nlp("apple"):
print(token.lemma_, token.lemma, token.is_oov, "apple" in nlp.vocab)
apple 8566208034543834098 True True
for token in nlp("andshy"):
print(token.lemma_, token.lemma, token.is_oov, "andshy" in nlp.vocab)
andshy 4682930577439079723 True True
很明显,这没有任何意义,在这两种情况下,“is_oov”都是 True,并且它在词汇表中。我正在寻找像
这样简单的东西"andshy" in nlp.vocab = False, "andshy".is_oov = True
"apple" in nlp.vocab = True, "apple".is_oov = False
在下一步中,还有一些单词校正方法。我可以使用拼写检查库,但这与 spaCy vocab 不一致
这个问题似乎是一个常见问题,欢迎提出任何建议(代码)。
谢谢,
阿赫
【问题讨论】:
-
这里好像没有问题。
-
问题是:“你是怎么做到的”?概括这个问题比编写大量不起作用的代码更有意义(恕我直言)。
-
我仍然不知道“这个”是什么。你的问题是什么?提问方式请参考this page。
-
问题是:“我如何在 spaCy 中找到一个词”词汇。很抱歉造成了混乱和矛盾
标签: spacy vocabulary