gpt4 book ai didi

python - 如何使用 python nltk 获取解析树?

转载 作者:太空狗 更新时间:2023-10-29 23:57:28 24 4
gpt4 key购买 nike

给定以下句子:

The old oak tree from India fell down.

如何使用 python NLTK 获得句子的以下解析树表示?

(ROOT (S (NP (NP (DT The) (JJ old) (NN oak) (NN tree)) (PP (IN from) (NP (NNP India)))) (VP (VBD fell) (PRT (RP down)))))

我需要一个在网上找不到的完整示例!


编辑

我已经经历了this book chapter了解使用 NLTK 进行解析,但问题是,我需要一种语法来解析我没有的句子或短语。我找到了 this stackoverflow post这也询问了语法分析,但那里没有令人信服的答案。

所以,我正在寻找一个完整的答案,它可以给我一个句子的解析树。

最佳答案

这是使用 StanfordCoreNLP 而不是 nltk 的替代解决方案。很少有库构建在 StanfordCoreNLP 之上,我个人使用 pycorenlp来解析句子。

首先你必须下载stanford-corenlp-full *.jar 文件所在的文件夹。并在文件夹内运行服务器(默认端口为 9000)。

export CLASSPATH="`find . -name '*.jar'`"
java -mx4g -cp "*" edu.stanford.nlp.pipeline.StanfordCoreNLPServer [port?] # run server

然后在 Python 中,您可以运行以下命令来标记句子。

from pycorenlp import StanfordCoreNLP
nlp = StanfordCoreNLP('http://localhost:9000')

text = "The old oak tree from India fell down."

output = nlp.annotate(text, properties={
'annotators': 'parse',
'outputFormat': 'json'
})

print(output['sentences'][0]['parse']) # tagged output sentence

关于python - 如何使用 python nltk 获取解析树?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42322902/

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