gpt4 book ai didi

python - 带spacy的名词短语

转载 作者:IT老高 更新时间:2023-10-28 20:31:36 28 4
gpt4 key购买 nike

如何使用 spacy 从文本中提取名词短语?
我不是指词性标签。在文档中,我找不到任何关于名词短语或常规解析树的信息。

最佳答案

如果您想要基本 NP,即没有协调、介词短语或关系从句的 NP,您可以在 Doc 和 Span 对象上使用 noun_chunks 迭代器:

>>> from spacy.en import English
>>> nlp = English()
>>> doc = nlp(u'The cat and the dog sleep in the basket near the door.')
>>> for np in doc.noun_chunks:
>>> np.text
u'The cat'
u'the dog'
u'the basket'
u'the door'

如果您需要其他内容,最好的方法是遍历句子中的单词并考虑句法上下文以确定单词是否支配您想要的短语类型。如果是,则生成它的子树:

from spacy.symbols import *

np_labels = set([nsubj, nsubjpass, dobj, iobj, pobj]) # Probably others too
def iter_nps(doc):
for word in doc:
if word.dep in np_labels:
yield word.subtree

关于python - 带spacy的名词短语,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33289820/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com