【发布时间】:2021-06-11 20:28:42
【问题描述】:
我正在使用 spacy 来获取依赖关系,这很好用。但是我在获取一对具有特定依赖关系的令牌时遇到了问题(conj 关系除外)。
当使用.dep_ 时,我可以获得每个单独令牌的依赖属性。
但是,我想为特定的依赖关系提供一对令牌。
例如,在下面的代码中,我可以得到显示的结果。
import spacy
nlp = spacy.load("en_core_web_md")
sentence = 'The Marlins were stymied by Austin Gomber and the Rockies in their 4-3 loss'
doc = nlp(sentence)
for token in doc:
print (token, token.dep_)
当前输出:
The det
Marlins nsubjpass
were auxpass
stymied ROOT
by agent
Austin compound
Gomber pobj
and cc
the det
Rockies conj
in prep
their poss
4 nummod
- punct
3 prep
loss pobj
但我渴望得到的是:
(请忽略输出样式,我只想得到一对具有特定依赖关系的token,例如,这里是pobj)
'Gomber' is a 'pobj' of 'by'
'Loss' is a 'pobj' of 'in'
换句话说,我不仅想得到当前输出的结果,我还想得到每个单词的paired标记。
对于conj的依赖关系,我只用token.conjuncts就可以得到它们,但是对于其余的其他依赖关系,比如pobj,prep,我还没有找到任何方法可以直接在 spacy 中使用。
有没有人暗示要获得这个pobj 关系?提前致谢!
【问题讨论】:
标签: python parsing nlp dependencies spacy