本文介绍两种英文句法树可视化的方法。 其中用到的spacy
、nltk
库等需要提前安装。 如果安装有问题或需要一些包的话,可以在文章下留言,看到了就会回复的。
1.nltk + stanfordcorenlp对句法树进行可视化
from nltk.tree import Tree
from stanfordcorenlp import StanfordCoreNLP
sentence = 'it is fast booting up , shutting down, and connection with the internet.'
with StanfordCoreNLP(r'E:\tools\coreNLP\stanford-corenlp-full-2018-10-05(1)', lang='en') as nlp:
Tree.fromstring(nlp.parse(sentence)).draw()
2.使用spacy进行可视化
import spacy
from spacy import displacy
nlp = spacy.load('en_core_web_md')
doc = nlp( "great product, very easy to use and great graphics." )
displacy.serve(doc, style='dep')
代码运行后,在浏览器中输入 http://localhost:5000
即可显示依存结构。
依存关系 依存关系是一个中心词与其从属之间的二元非对称关系,一个句子的中心词通常是动词(Verb
),所有其他词要么依赖于中心词,要么通过依赖路径与它关联。从该解析树中可以看出依存结构是加标签的有向图,箭头从中心词指向从属词,即箭头是从head
指向child
,每个Token
只有一个Head
。
关系标签含义
标签表示从属的语法功能,名词性的标签是:
- root:中心词,通常是动词
- dobj:直接宾语(direct object)
- nsubj:名词性主语(nominal subject)
- prep:介词
- pobj:介词宾语
- cc:连词
其他常用的标签:
- compound:复合词
- advmod:状语
- det:限定词
- amod:形容词修饰语