如何用节找出句子中的不定式动词
例如:
doc = "I need you to find the verbes in this sentence"
en_nlp = stanza.Pipeline('en', processors='tokenize,lemma,mwt,pos,depparse', verbose=False, use_gpu=False)
processed = en_nlp(doc)
print(*[f"id: {word.id}\t word: {word.text}\t POS: {word.pos}\t head id: {word.head}\t head: {sent.words[word.head-1].text if word.head > 0 else 'root'} \t deprel: {word.deprel}" for sent in processed.sentences for word in sent.words], sep='\n')
输出:
id: 1 word: I POS: PRON head id: 2 head: need deprel: nsubj
id: 2 word: need POS: VERB head id: 0 head: root deprel: root
id: 3 word: you POS: PRON head id: 2 head: need deprel: obj
id: 4 word: to POS: PART head id: 5 head: find deprel: mark
id: 5 word: find POS: VERB head id: 2 head: need deprel: xcomp
id: 6 word: the POS: DET head id: 7 head: verbes deprel: det
id: 7 word: verbes POS: NOUN head id: 5 head: find deprel: obj
id: 8 word: in POS: ADP head id: 10 head: sentence deprel: case
id: 9 word: this POS: DET head id: 10 head: sentence deprel: det
id: 10 word: sentence POS: NOUN head id: 5 head: find deprel: obl
然而,在这方面:
id: 5 word: find POS: VERB head id: 2 head: need deprel: xcomp
我需要说它是一个不定式动词
我也问了同样的问题,不想打断标记器,结果修改了节句子
feats这个词表示如ID7中所示的动词形式,我还没有测试过它的可靠性
给这个
出于我的目的,将字符串“to verb”视为单个词汇项,并将word.text更新为“to_verb”,并将动词的字符跨度更新为匹配更为有用。这使得动词的word.lemma和word.upos作为动词保持不变,但需要减少动词和后续单词的头部和单词位置索引,以说明删除“to”的原因
deepcopy保护原始示例以供演示,如果可能,最好避免使用
OP示例:
相关问题 更多 >
编程相关推荐