如何在 spacy 中使用引理获取 adj 或副词的基本形式

How to get the base form of an adj or adverb using lemma in spacy

对于一个项目,如果有使用NLP的,我希望能够得到形容词或副词的名词形式。 例如,"deathly" 会 return "death" 而 "dead" 会 return "death"。 "lively" 会 return "life".

我试过使用 spacy 词形还原器,但它无法获得基本部首形式。 例如,如果我这样做:

import spacy
nlp = spacy.load('en_core_web_sm')
z = nlp("deathly lively")
for token in z:
    print(token.lemma_)

它会 return: >>> deathly lively 代替: >>> death life

有人有什么想法吗? 任何答案表示赞赏。

据我目前所见,SpaCy 没有super-great做你想让它做的事。相反,我正在使用一个名为 pyinflect 的第三方库,它旨在用作 SpaCy 的扩展。

虽然它并不完美,但我认为它会比您当前的方法更有效。

我也在考虑另一个名为 inflect 的第 3 方库,它可能也值得一试。