如何使用StanfordNLP Python包进行依赖关系解析?

时间:2019-03-11 02:52:03

标签: parsing nlp stanford-nlp

我试图在here使用新的基于NN的解析器来查找句子中的所有形容词短语(例如good中的extremely goodThe weather is extremely good),但是,它非常缺乏文档,因此无法正常工作。我当前的代码是

import stanfordnlp
nlp = stanfordnlp.Pipeline()
doc = nlp("The weather is extremely good")
doc.sentences[0].print_dependencies()

这给了我

('The', '2', 'det')
('weather', '5', 'nsubj')
('is', '5', 'cop')
('extremely', '5', 'advmod')
('good', '0', 'root')

但是目前尚不清楚如何提取所需的信息,因为这似乎不是树结构。有人有主意吗?

2 个答案:

答案 0 :(得分:0)

目前,您不希望Python支持选区分析。这只是返回依赖项解析(一种不同类型的解析)。

您可以使用stanfordnlp与Java服务器通信并以这种方式获取选区解析。

以下是用于访问选区分析的示例代码:

https://stanfordnlp.github.io/stanfordnlp/corenlp_client.html

答案 1 :(得分:0)

输出中指定的每个单词的数字索引表示总督单词(该单词的头部)的索引。

例如,单词"Good"是单词"Good"的子代(索引为5,因为"Good"是实际句子中的第五个单词),因此它将其州长(头)索引,这里是5(<http://corenlp.run/>)。

您可以从{{1}}获取依赖项结构表示形式,并将其与基于我的描述的表示形式进行比较,以便更好地进行说明。