0

我正在探索 spacy nlp python 库。我有这个:

text='Daniel is a smart clever professor.'

spacy_doc = nlp(text)

token_pos=[token.pos_ for token in spacy_doc]
token_tag=[token.tag_ for token in spacy_doc]
token_dep=[token.dep_ for token in spacy_doc]

token_pos
Out[105]: ['PROPN', 'VERB', 'DET', 'ADJ', 'ADJ', 'NOUN', 'PUNCT']

token_tag
Out[106]: ['NNP', 'VBZ', 'DT', 'JJ', 'JJ', 'NN', '.']

token_dep
Out[107]: ['nsubj', 'ROOT', 'det', 'amod', 'amod', 'attr', 'punct']

spacy.explain('attr')
Out[108]: 'attribute'

def to_nltk_tree(node):
    if node.n_lefts + node.n_rights > 0:
        return Tree(node.orth_, [to_nltk_tree(child) for child in node.children])
    else:
        return node.orth_


[to_nltk_tree(sent.root).pretty_print() for sent in spacy_doc.sents]
            is                 
   _________|______             
  |     |      professor       
  |     |    ______|_______     
Daniel  .   a    smart   clever

Spacy 解释说,“professor”是“is”的一个属性('attr')。

  1. 究竟什么是属性?

  2. 我在哪里可以找到此类信息?

  3. 在不同的语法上下文中是否还有其他“attr”示例?

4

1 回答 1

3

属性是一个依赖关系的标签,现在似乎已经过时了。请参阅本手册第 23 页:https ://nlp.stanford.edu/software/dependencies_manual.pdf

斯坦福手册对 ATTR 的看法

这种依赖关系似乎被用来在定语结构中将系词动词与其 NP 参数联系起来,例如 Daniel 是 -> 教授,她是 -> 聪明。请参阅http://www.mathcs.emory.edu/~choi/doc/cu-2012-choi.pdf的第 27 页

CLEAR 式手册对 ATTR 的解释

有趣的是,当前通用依赖的注释指南对属性结构的注释完全不同:涉及一个cop标签,而且令人惊讶的是,属性 NP/AdjP 直接链接到它的“主题”。

https://universaldependencies.org/v2/copula.html

UD 2.0 对 copula 的定义

所以,我相信这些标签将来很可能会改变。

于 2020-07-15T06:55:10.530 回答