gpt4 book ai didi

nlp - 我们如何从句子中提取主要动词?

转载 作者:行者123 更新时间:2023-12-02 04:46:13 27 4
gpt4 key购买 nike

例如,“鹦鹉不会游泳。”这里的主要动词是“游泳”。我们如何通过语言处理提取它?是否有用于此目的的任何已知算法?

最佳答案

您可以运行 dependency parsing算法对句子和查找 root 关系的从属关系。例如,通过 Stanford Parser online demo 运行句子“Parrots do not swim” ,我得到以下依赖项:

nsubj(swim-4, Parrots-1)
aux(swim-4, do-2)
neg(swim-4, not-3)
root(ROOT-0, swim-4)

每一行都提供有关句子中两个词之间不同语法关系的信息(见下文)。您需要最后一行,它表示 swim 是句子的词根,即主要动词。所以要提取主要动词,先进行依赖解析,找到读作root(ROOT-0, X)的依赖。 X 将成为主要动词。

有几个现成的依赖解析器,例如 Stanford CoreNLP 可用的依赖解析器。或 Malt parser .我更喜欢 Stanford,因为它在准确性方面相当,但有更好的文档并支持多线程解析(如果你有很多文本)。 Stanford 解析器输出 XML,因此您必须对其进行解析以获取上述依赖信息。


为了完整起见,对其余输出进行简要说明。第一行说 parrots,句子中的第一个词,是 swim 的主题,第 4 个词。第二行说do是与swim相关的助动词,第三行说not否定swim .有关每个依赖项含义的更详细解释,请参阅 Stanford typed dependency manual .


编辑:根据您定义 main verb 的方式,一些句子可能有多个主要动词,例如我喜欢猫,讨厌蛇。此依赖项解析包含依赖项:

root(ROOT-0, like-2)
conj(like-2, hate-5)

一起说根据解析器主要动词是 like,但是 hate 是连在一起的。出于您的目的,您可能希望将 likehate 都视为主要内容。

关于nlp - 我们如何从句子中提取主要动词?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19751230/

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