主意:本说明文档针对stanford-parser-full-2014-06-16。不一样版本的parser,其功能和表示形式可能会略有不一样。但整体不会有太大差别html
Stanford parser是一款较为强大的句法解析工具,他的最第一版本是java编写的,因此JDK是必须的,这玩意怎么弄就不用我说了吧。Stanford parser支持多国语言,而且还在不断扩张中。幸运的是,因为天朝的强大,中文也早早地加入其中,下面是树状图效果展现:java
数据图是较为直观的效果展现,固然,他还有其余展现方式:express
Oneline:成分句法分析输出文件的格式为每行一句的广义表形式的树结构。上面那句话的结果:(ROOT (CP (IP (NP (DNP (NP (NP (NR 成都)) (NP (NN 小吃街))) (DEG 的)) (NP (NN 美食))) (VP (ADVP (AD 真的)) (ADVP (AD 太)) (VP (VA 好吃)))) (SP 了) (PU !)))session
Penn:成分句法分析输出文件的格式为层次化树的形式。默认选项为penn。上面那句结果: app
(ROOT工具
(CPui
(IPspa
(NP命令行
(DNP代理
(NP
(NP (NR 成都))
(NP (NN 小吃街)))
(DEG 的))
(NP (NN 美食)))
(VP
(ADVP (AD 真的))
(ADVP (AD 太))
(VP (VA 好吃))))
(SP 了) (PU !)))
latexTree:格式相似于penn Words:只给出分词格式。
wordsAndTags:给出分词文本和词性标注。
rootSymbolOnly:只给出ROOT结点。
typedDependencies:给出依存句法分析结果。如:
nn(小吃街-2, 成都-1)
assmod(美食-4, 小吃街-2)
assm(小吃街-2, 的-3)
nsubj(好吃-7, 美食-4)
advmod(好吃-7, 真的-5)
advmod(好吃-7, 太-6)
root(ROOT-0, 好吃-7)
dep(好吃-7, 了-8)
conllStyleDependencies、conll2007:conll格式(每行一词,每词4项)以下:
1 成都 NR 2
2 小吃街 NN 3
3 的 DEG 4
4 美食 NN 7
5 真的 AD 7
6 太 AD 7
7 好吃 VA 8
8 了 SP 0
9 ! PU 8
还有其余几种表示方式words,wordsAndTags, dependencies,typedDependenciesCollapsed,latex,Tree, xmlTree, collocations, semanticGraph, conllStyleDependencies。读者可自行尝试。
由于咱们想要的是词与词之间的修饰关系,咱们通常用到的就是typedDependencies,这是句法依存最直观的一种输出方式。下面给出命令行下的运行方式,由于文件夹下有个lexparser.bat文件,内容以下:
@echo off
:: Runs the English PCFG parser on one or more files, printing trees only
:: usage: lexparser fileToparse
java -mx1024m -cp "*;" edu.stanford.nlp.parser.lexparser.LexicalizedParser -outputFormat typedDependencies du/stanford/nlp/models/lexparser/chineseFactored.ser.gz %1
咱们就看最后一行,-mx也是一个参数后面直接跟分配的虚拟内存(不用空格),由于parser要求的内存比较大,小了可能运行不了。-cp是为了加载后面的类,再后面就是咱们的输出方式,最后一个比较重要,是咱们要加载的parser模型。固然毫不仅仅这几个参数,还有其余参数可自行调节。包括:
-maxLength:指定句子单词长度最大;
-escaper:字符的标准化;
-sentences:指定句子之间的边界,通常为newline,即一行为一个句子,换行从新开始。
-encoding:指定输入输出文件的字符集。
-outputFormatOptions:进一步控制各类–outputFormat选项的输出行为(能够说是–outputFormat的附加选项)。 当–outputFormat 为typedDependencies时,-outputFormatOptions可有以下选项(默认选项为collapsed dependencyies): basicDependencies:基本格式 treeDependencies:以树结构保存的压缩依存关系(去除依存图中一些边构成树)。 collapsedDependencies:压缩依存(不必定为树结构) cc(makes-11, and-12) conj(makes-11, distributes-13) 转化为: Conj_and(makes-11, distributes-13) CCPropagatedDependencies:带有连词依存传播的压缩依存。
-writeOutputFiles:产生对应于输入文件的输出文件,输出文件名同输入文件,只是增长了”.stp”的后缀。-outputFilesExtension:指定输出文件扩展名,默认为”.stp”。
-outputFilesDirectory :指定输出文件目录,默认为当前目录。
parser里面有不少模型:
咱们通常用通用的chineseFactored,这个模型比较大,若是准确性要求不是很高,却对速度要求比较高的话,能够用chinsesPCFG。运行方式:咱们cd切换到parser根目录,输入:lexparser.bat input.txt>output.txt doc界面下可能输出的是乱码,能够无视,咱们直接看output.txt就能够了,就是最后的结果。若是要获得语法树或者依存关系的话,须要强调一下的是,input文件中必须是已经分好词的语句,用空格分隔。
此外,还有个图形界面能够给咱们尝试,可是由于有些模型太大,会致使虚拟内存不足,因此提供了一个批处理文件lexparser-gui.bat。内容跟命令行差很少,主要是方便设置虚拟内存大小,直接双击该文件,就会出现命令行,选择“Load parser”,而后打开XX-models.jar,选择要导入的包便可。一样,这里输入的句子,也是要分好词的。
最后,咱们就获得了依存关系的结果,结果中有许多缩写,这里参考(http://www.hankcs.com/nlp/chinese-sentences-svo-java-extraction.html)解释一下,可能不一样版本会有更改,请自行查阅补充。
ROOT:相似于一个关键词的存在
IP:简单从句
NP:名词短语
VP:动词短语
PU:断句符,一般是句号、问号、感叹号等标点符号
LCP:方位词短语
PP:介词短语
CP:由‘的’构成的表示修饰性关系的短语
DNP:由‘的’构成的表示所属关系的短语
ADVP:副词短语
ADJP:形容词短语
DP:限定词短语
QP:量词短语
NN:经常使用名词
NR:固有名词
NT:时间名词
PN:代词
VV:动词
VC:是
CC:表示连词
VE:有
VA:表语形容词
AS:内容标记(如:了)
VRD:动补复合词
CD: 表示基数词
DT: determiner 表示限定词
EX: existential there 存在句
FW: foreign word 外来词
IN: preposition or conjunction, subordinating 介词或从属连词
JJ: adjective or numeral, ordinal 形容词或序数词
JJR: adjective, comparative 形容词比较级
JJS: adjective, superlative 形容词最高级
LS: list item marker 列表标识
MD: modal auxiliary 情态助动词
PDT: pre-determiner 前位限定词
POS: genitive marker 全部格标记
PRP: pronoun, personal 人称代词
RB: adverb 副词
RBR: adverb, comparative 副词比较级
RBS: adverb, superlative 副词最高级
RP: particle 小品词
SYM: symbol 符号
TO:”to” as preposition or infinitive marker 做为介词或不定式标记
WDT: WH-determiner WH限定词
WP: WH-pronoun WH代词
WP$: WH-pronoun, possessive WH全部格代词
WRB:Wh-adverb WH副词
关系表示
abbrev: abbreviation modifier,缩写
acomp: adjectival complement,形容词的补充;
advcl : adverbial clause modifier,状语从句修饰词
advmod: adverbial modifier状语
agent: agent,代理,通常有by的时候会出现这个
amod: adjectival modifier形容词
appos: appositional modifier,同位语
attr: attributive,属性
aux: auxiliary,助动词,如BE,HAVE SHOULD/COULD等到
auxpass: passive auxiliary 被动词
cc: coordination,并列关系,通常取第一个词
ccomp: clausal complement从句补充
complm: complementizer,引导从句的词好重聚中的主要动词
conj : conjunct,链接两个并列的词。
cop: copula。系动词(如be,seem,appear等),(命题主词与谓词间的)连系
csubj : clausal subject,从主关系
csubjpass: clausal passive subject 主从被动关系
dep: dependent依赖关系
det: determiner决定词,如冠词等
Discourse:discourse element
dobj : direct object直接宾语
expl: expletive,主要是抓取there
Goeswith:go with 主要是用来把本该连起来的词分开的状况,如‘with out’:gowith(with,out)
infmod: infinitival modifier,动词不定式
iobj : indirect object,非直接宾语,也就是因此的间接宾语;
mark: marker,主要出如今有“that” or “whether”“because”, “when”,
mwe: multi-word expression,多个词的表示,相似词组
neg: negation modifier否认词
nn: noun compound modifier名词组合形式
npadvmod: noun phrase as adverbial modifier名词做状语
nsubj : nominal subject,名词主语
nsubjpass: passive nominal subject,被动的名词主语
num: numeric modifier,数值修饰
number: element of compound number,组合数字
parataxis: parataxis: parataxis,并列关系
partmod: participial modifier动词形式的修饰
pcomp: prepositional complement,介词补充
pobj : object of a preposition,介词的宾语
poss: possession modifier,全部形式,全部格,所属
possessive: possessive modifier,这个表示全部者和那个’S的关系
preconj : preconjunct,经常是出如今 “either”, “both”, “neither”的状况下
predet: predeterminer,前缀决定,经常是表示全部
prep: prepositional modifier 前置词
prepc: prepositional clausal modifier
prt: phrasal verb particle,动词短语
punct: punctuation
purpcl : purpose clause modifier,目的从句
quantmod: quantifier phrase modifier,数量短语
rcmod: relative clause modifier相关关系
ref : referent,指示物,指代
rel : relative
root: root,最重要的词,从它开始,根节点
tmod: temporal modifier 时间修饰语
xcomp: open clausal complement 能够当作是主谓宾中缺了主语,构成的谓宾关系。
xsubj : controlling subject 掌控者
中心语为谓词
subj — 主语
nsubj — 名词性主语(nominal subject) (同步,建设)
top — 主题(topic) (是,建筑)
npsubj — 被动型主语(nominal passive subject),专指由“被”引导的被动句中的主语,通常是谓词语义上的受事 (称做,镍)
csubj — 从句主语(clausal subject),中文不存在
xsubj — x主语,通常是一个主语下面含多个从句 (完善,有些)
中心语为谓词或介词
obj — 宾语
dobj — 直接宾语 (颁布,文件)
iobj — 间接宾语(indirect object),基本不存在
range — 间接宾语为数量词,又称为与格 (成交,元)
pobj — 介词宾语 (根据,要求)
lobj — 时间介词 (来,近年)
中心语为谓词
comp — 补语
ccomp — 从句补语,通常由两个动词构成,中心语引导后一个动词所在的从句(IP) (出现,归入)
xcomp — x从句补语(xclausal complement),不存在
acomp — 形容词补语(adjectival complement)
tcomp — 时间补语(temporal complement) (遇到,之前)
lccomp — 位置补语(localizer complement) (占,以上)
— 结果补语(resultative complement)
中心语为名词
mod — 修饰语(modifier)
pass — 被动修饰(passive)
tmod — 时间修饰(temporal modifier)
rcmod — 关系从句修饰(relative clause modifier) (问题,遇到)
numod — 数量修饰(numeric modifier) (规定,若干)
ornmod — 序数修饰(numeric modifier)
clf — 类别修饰(classifier modifier) (文件,件)
nmod — 复合名词修饰(noun compound modifier) (浦东,上海)
amod — 形容词修饰(adjetive modifier) (状况,新)
advmod — 副词修饰(adverbial modifier) (作到,基本)
vmod — 动词修饰(verb modifier,participle modifier)
prnmod — 插入词修饰(parenthetical modifier)
neg — 不定修饰(negative modifier) (遇到,不)
det — 限定词修饰(determiner modifier) (活动,这些)
possm — 所属标记(possessive marker),NP
poss — 所属修饰(possessive modifier),NP
dvpm — DVP标记(dvp marker),DVP (简单,的)
dvpmod — DVP修饰(dvp modifier),DVP (采起,简单)
assm — 关联标记(associative marker),DNP (开发,的)
assmod — 关联修饰(associative modifier),NP|QP (教训,特区)
prep — 介词修饰(prepositional modifier) NP|VP|IP(采起,对)
clmod — 从句修饰(clause modifier) (由于,开始)
plmod — 介词性地点修饰(prepositional localizer modifier) (在,上)
asp — 时态标词(aspect marker) (作到,了)
partmod– 分词修饰(participial modifier) 不存在
etc — 等关系(etc) (办法,等)
中心语为实词
conj — 联合(conjunct)
cop — 系动(copula) 双指助动词????
cc — 链接(coordination),指中心词与连词 (开发,与)
其它
attr — 属性关系 (是,工程)
cordmod– 并列联合动词(coordinated verb compound) (颁布,实行)
mmod — 情态动词(modal verb) (获得,能)
ba — 把字关系
tclaus — 时间从句 (之后,积累)
— semantic dependent
cpm — 补语化成分(complementizer),通常指“的”引导的CP (振兴,的)
这里面其实不少中文是用不上的,一些关系多跑一些语料本身也能概括总结到,这里列举出来供你们查询用。