Parsing 如何从解析的句子中提取关系
自然语言分析器(例如)输出一个句子的句法树,可能还有一个词性标记词列表和一个依赖项列表。例如这句话: 总部位于洛杉矶的贝尔公司生产和销售电子、计算机和建筑产品 斯坦福大学的研究表明,“制造”的主体是“贝尔”,客体是“产品”,而“电子”、“计算机”、“建筑”都是“产品”的修饰语。与“分发”类似。下一步自然是使用这些信息构建一个关系列表,如下所示:Parsing 如何从解析的句子中提取关系,parsing,nlp,stanford-nlp,Parsing,Nlp,Stanford Nlp,自然语言分析器(例如)输出一个句子的句法树,可能还有一个词性标记词列表和一个依赖项列表。例如这句话: 总部位于洛杉矶的贝尔公司生产和销售电子、计算机和建筑产品 斯坦福大学的研究表明,“制造”的主体是“贝尔”,客体是“产品”,而“电子”、“计算机”、“建筑”都是“产品”的修饰语。与“分发”类似。下一步自然是使用这些信息构建一个关系列表,如下所示: 贝尔制造电子产品 贝尔制造电脑产品 贝尔制造建筑产品 贝尔经销电子产品 。。。还有一些。更一般地说,我想要一个如下形式的关系列表: 主体-行动-客体
- 贝尔制造电子产品
- 贝尔制造电脑产品
- 贝尔制造建筑产品
- 贝尔经销电子产品
因此,我想人们已经做过很多次了。不幸的是,我找不到任何接近的东西 斯坦福解析器是一种流行编程语言的库。至少,我知道Java是一种流行的编程语言。如果您需要其他流行编程语言中的包装器,上有一个列表。另外,如果Python在您的流行列表中,请看,我已经在使用Stanford解析器和NLTK了,这是一个关于解析器输出后处理的问题。编辑了这个问题-希望它现在更有意义。投票重新开始。这个问题绝对不是小事。反对使用工具的指导方针旨在防止懒惰的问题和固执己见的答案,而不是阻止人们寻找解决复杂问题的工具。我认为,通过崩溃的CC处理依赖关系,你可以得到很多你想要的东西。试着在CoreNLP演示中输入您的示例语句,并查看最后一个可视化(标记为“折叠的CC处理”):您可以尝试的另一件事是OpenIE(),甚至只是简单的规则(例如,“{$}=verb?>/advmod/{}=adv>/nsubj(pass)?/{}=subject>/prep-*/{}=object”表示“主语动词prep-object”,或“{$}=verb>/.subj./{}=主语>/.obj/{}=object”表示“主语动词宾语”。